[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-2221":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":16,"stars30d":16,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":10,"pushedAt":10,"updatedAt":26,"readmeContent":27,"aiSummary":28,"trendingCount":16,"starSnapshotCount":16,"syncStatus":13,"lastSyncTime":29,"discoverSource":30},2221,"Evosmash","yanpeigong\u002FEvosmash","yanpeigong","[National College Student Software Innovation Competition]  🏸AI-powered badminton analysis, coaching, and tactical evolution agent","",null,"Python",14,2,3,1,0,41.43,"MIT License",false,"main",true,[23,24,25],"agent","deep-learning","software","2026-06-12 04:00:13","[中文](.\u002FREADME.md) | [English](.\u002FREADME.en.md)\n\n\u003Cdiv align=\"center\">\n\n\u003Cimg src=\"assets\u002Fpic\u002Flogo-banner.svg\" alt=\"EvoSmash Banner Logo\" width=\"780\" \u002F>\n\n### AI-Driven Badminton Analysis & Tactical Evolution Platform\n\n`Open-Source Competition Edition` · `Vision + Physics + Tactics + LLM` · `Interactive HUD Experience`\n\n\u003Cp>\n  \u003Cimg src=\"assets\u002Fpic\u002Fbadge-frontend.svg\" alt=\"Frontend Badge\" \u002F>\n  \u003Cimg src=\"assets\u002Fpic\u002Fbadge-backend.svg\" alt=\"Backend Badge\" \u002F>\n  \u003Cimg src=\"assets\u002Fpic\u002Fbadge-focus.svg\" alt=\"Focus Badge\" \u002F>\n\u003C\u002Fp>\n\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"assets\u002Fpic\u002Fposter.jpg\" alt=\"EvoSmash Poster\" width=\"96%\" \u002F>\n\u003C\u002Fdiv>\n\n\u003Cp align=\"center\">\n  \u003Csub>海报由 GPT Image 2 生成\u003C\u002Fsub>\n\u003C\u002Fp>\n\n> 真正决定胜负的，往往不是某一次击球本身，而是它前后那些未被看见的选择。  \n> EvoSmash 试图记录这些转瞬即逝的瞬间，把经验从直觉变成可以被理解、被解释、也可以继续进化的认知。\n\n---\n\n## Milestones\n\n- **2026-02-10**：🎉 Congratulations！EvoSmash 成功进入 **[全国大学生软件创新大赛-华东区域赛复赛](https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002Fa9V7zMQrNaWmitfzfeiZVQ)** 🚀\n- **2026-04-20**：🎉 Congratulations！EvoSmash 更进一步，成功进入 **[全国大学生软件创新大赛-全国复赛](https:\u002F\u002Fmp.weixin.qq.com\u002Fs\u002Fh6ggng0PPaO2icyPuNPayg)** 🏆\n\n\u003Cp align=\"center\">\n  \u003Csub>Every round of progress matters. Every milestone makes the project more alive. ✨\u003C\u002Fsub>\n\u003C\u002Fp>\n\n---\n\n## Project Snapshot\n\n**EvoSmash** 是一个面向羽毛球训练与比赛分析场景的多模态智能系统。  \n它将 **计算机视觉**、**物理推理**、**自动裁判逻辑**、**战术检索** 与 **LLM 教练建议** 串联成一条完整分析链路，把普通回合视频转化为可读、可解释、可演化的智能反馈。\n\n它希望回答的不只是“发生了什么”，还包括：\n\n- 球是如何飞行的\n- 这一分为什么会这样发生\n- 当前战术为什么值得推荐\n- 下一次应该如何更稳定地完成调整\n\n---\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"assets\u002Fpic\u002F羽毛球赛场实拍.png\" alt=\"Badminton Court Live Photo\" width=\"92%\" \u002F>\n\u003C\u002Fdiv>\n\n\u003Cp align=\"center\">\n  \u003Csub>从真实赛场出发，让速度、判断、对抗与调整，都能被转译成更可理解的智能反馈。\u003C\u002Fsub>\n\u003C\u002Fp>\n\n---\n\n## Why EvoSmash\n\n很多运动分析项目停留在“检测”或“分类”层面，而 **EvoSmash** 更关注一条完整、连续、可解释的分析链路。\n\n它把一次回合视为从感知、推理、判定、检索到反馈的连续过程，因此它更像一个轻量级、可交互、可扩展的 **Badminton Intelligence System**，而不只是一个视觉演示 Demo。\n\n---\n\n## Core Capabilities\n\n| Capability | Description |\n| --- | --- |\n| Vision Perception | 追踪羽毛球轨迹、识别场地结构、分析球员姿态与动作反馈 |\n| Physics & Referee Reasoning | 完成坐标映射、速度估计、落点判断、轨迹质量评估与自动裁判解释 |\n| Tactical Memory | 基于语义匹配、上下文压力、连续性与 Bayesian 记忆完成战术检索与演化 |\n| AI Coaching | 输出简洁、可执行、适合前端展示的建议、摘要与战术解释 |\n| Product Experience | 使用移动优先 HUD 风格呈现结果，适合答辩、演示与产品化延展 |\n\n---\n\n## Intelligence Pipeline\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"assets\u002Fpic\u002F架构分析图.png\" alt=\"EvoSmash Architecture\" width=\"92%\" \u002F>\n\u003C\u002Fdiv>\n\n\u003Cp align=\"center\">\n  \u003Csub>从视频输入到视觉感知、物理推理、裁判逻辑、战术记忆与教练生成的分层智能链路。\u003C\u002Fsub>\n\u003C\u002Fp>\n\n这条链路并不追求单一模块“看起来很强”，而是强调每一层都能为下一层提供稳定、可解释的信号：\n\n1. **Video Input**  \n   输入短回合视频或连续比赛片段。\n\n2. **Vision Perception**  \n   完成羽毛球追踪、球员姿态估计与场地检测。\n\n3. **Physics Engine**  \n   将视觉坐标映射到球场空间，估计球速、落点与轨迹质量。\n\n4. **Referee Logic**  \n   输出结构化判定结果，并给出可信度与解释依据。\n\n5. **Tactical Retrieval & Evolution**  \n   检索最相关战术，综合风险、连续性、压力状态进行排序，并根据结果更新策略先验。\n\n6. **Coach Agent & Frontend HUD**  \n   将复杂分析压缩成更适合人理解与执行的摘要、战术卡片、回放报告与建议。\n\n---\n\n## Product Highlights\n\n### 1. Multi-Rally Tactical Memory\n\n- 不只分析当前这一拍，而是回看最近若干回合的战术漂移与压力变化\n- 输出更适合前端展示的 `sequence memory`\n- 让“为什么现在推荐这一策略”拥有连续上下文支撑\n\n### 2. Tactical Duel Projection\n\n- 针对当前推荐战术，预测对手更可能的回应方式\n- 给出 `why_this_tactic` 与 `risk_note`\n- 帮助结果页从“推荐列表”升级为“对抗推演卡片”\n\n### 3. Replay Storyboard\n\n- 将回合分析组织成更易浏览的 `replay story`\n- 展示 turning points、adaptation cycles、critical rallies 与 closing state\n\n### 4. Human-Centered Explainability\n\n- 即使自动判定不够稳定，系统仍会保留诊断信息与中间信号\n- 方便调试、复盘与人工修正\n- 保证系统不是“只给结论”，而是“给出 reasoning trail”\n\n---\n\n## Interface Preview\n\n\u003Ctable align=\"center\">\n  \u003Ctr>\n    \u003Ctd align=\"center\" width=\"25%\">\n      \u003Cimg src=\"assets\u002Fpic\u002Fui演示1.png\" alt=\"Arena HUD Preview 1\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\" width=\"25%\">\n      \u003Cimg src=\"assets\u002Fpic\u002Fui演示2.png\" alt=\"Arena HUD Preview 2\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\" width=\"25%\">\n      \u003Cimg src=\"assets\u002Fpic\u002Fui演示3.png\" alt=\"Arena HUD Preview 3\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n    \u003Ctd align=\"center\" width=\"25%\">\n      \u003Cimg src=\"assets\u002Fpic\u002Fui演示4.png\" alt=\"Arena HUD Preview 4\" width=\"100%\" \u002F>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n\u003Cp align=\"center\">\n  \u003Csub>实时 HUD 结果页、多回合记忆、战术对抗推演、可回放分析报告与 AI 教练反馈。\u003C\u002Fsub>\n\u003C\u002Fp>\n\n---\n\n\u003C!-- ## Tech Stack\n\n### Frontend\n\n- React 19\n- Vite\n- React Router\n- Framer Motion\n- Recharts\n- Capacitor\n- Lucide React\n\n### Backend\n\n- FastAPI\n- PyTorch\n- OpenCV\n- Ultralytics YOLO\n- ChromaDB\n- OpenAI-compatible API -->\n\n\u003C!-- ### Core Directions\n\n- Shuttle trajectory tracking\n- Pose analysis and motion feedback\n- Physics-based rally interpretation\n- Auto referee reasoning\n- Tactical retrieval and Bayesian evolution\n- LLM-generated coaching advice\n\n--- -->\n\n## Quick Start\n\n### 1. Start Backend\n\n```bash\ncd backend\npython -m venv venv\n```\n\nWindows:\n\n```bash\n.\\venv\\Scripts\\activate\n```\n\nmacOS \u002F Linux:\n\n```bash\nsource venv\u002Fbin\u002Factivate\n```\n\nInstall dependencies and run:\n\n```bash\npip install -r requirements.txt\npython main.py\n```\n\n### 2. Prepare Checkpoints\n\n将模型文件放入 `backend\u002Fcheckpoints\u002F`：\n\n```text\nTrackNet_best.pt\nInpaintNet_best.pt\nyolov8n-pose.pt\n```\n\n### 3. Start Frontend\n\n```bash\nnpm install\nnpm run dev\n```\n\nOpen:\n\n```text\nhttp:\u002F\u002Flocalhost:5173\n```\n\n### 4. Build for Android\n\n```bash\nnpm run build\nnpx cap sync\nnpx cap open android\n```\n\n---\n\n## API Surface\n\n### `POST \u002Fanalyze_rally`\n\n分析短回合视频，并返回：\n\n- 球速与事件类型\n- 自动判定结果\n- 战术推荐与解释摘要\n- AI 教练输出\n- 回合摘要与诊断信息\n\n### `POST \u002Fanalyze_match`\n\n分析更长的视频片段，自动切分多个回合并返回结构化时间线结果。\n\n### `POST \u002Ffeedback`\n\n提交人工反馈，用于后续战术修正与策略更新。\n\n---\n\n## Project Structure\n\n```text\nEvoSmash\u002F\n├─ src\u002F\n│  ├─ components\u002F\n│  ├─ context\u002F\n│  ├─ pages\u002F\n│  ├─ styles\u002F\n│  └─ utils\u002F\n├─ backend\u002F\n│  ├─ core\u002F\n│  │  ├─ vision\u002F\n│  │  ├─ physics\u002F\n│  │  ├─ memory\u002F\n│  │  ├─ agent\u002F\n│  │  └─ utils\u002F\n│  ├─ services\u002F\n│  ├─ schemas\u002F\n│  ├─ checkpoints\u002F\n│  ├─ db\u002F\n│  └─ main.py\n├─ android\u002F\n├─ assets\u002F\n│  └─ pic\u002F\n└─ README.md\n```\n\n---\n\n## Roadmap\n\n- 整场比赛时间线可视化\n- 更深入的生物力学分析\n- 更完整的 AR 覆盖与回放体验\n- 个性化长期球员画像\n- 多设备与云端部署支持\n\n---\n\n## Contributors\n\n感谢每一位让这个仓库更完整的人，也感谢每一次认真对待“为什么这一分会这样发生”的追问。✨\n\n- [yanpeigong](https:\u002F\u002Fgithub.com\u002Fyanpeigong)\n- [PM_Liu](https:\u002F\u002Fgithub.com\u002FPM-Liu)\n- [Serendipity985](https:\u002F\u002Fgithub.com\u002FSerendipity985)\n- [Severus-C](https:\u002F\u002Fgithub.com\u002FSeverus-C)\n\n---\n\n## Acknowledgements\n\nThanks to everyone exploring how AI, computer vision, reasoning systems, and interactive design can create better sports training tools. 💙\n\nIf this project helps you think about sports not only as competition, but also as perception, judgment, and evolution, then EvoSmash has already done something meaningful.\n","EvoSmash 是一个基于 AI 的羽毛球分析、教练和战术演化平台。该项目利用计算机视觉、物理推理、自动裁判逻辑、战术检索及 LLM 教练建议等技术，将普通比赛视频转化为可读、可解释的智能反馈。其核心功能包括追踪羽毛球轨迹、识别场地结构、分析球员姿态与动作、完成坐标映射、速度估计、落点判断、轨迹质量评估与自动裁判解释，并提供战术检索与演化以及简洁的教练建议。EvoSmash 适用于羽毛球训练和比赛分析场景，帮助运动员和教练理解比赛中的细微变化，从而优化战术选择和提高竞技水平。","2026-06-11 02:48:55","CREATED_QUERY"]