Skip to content

gyqingning/ML-for-sky

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

光遇自动收集蜡烛 AI

基于分层架构的光遇自动收集蜡烛程序,采用 YOLOv8 视觉识别 + PPO 强化学习决策,

🏗️ 项目架构

┌─────────────────────────────────────────────────────────┐
│  策略层                                                 │
│  - 策略机:探索 → 导航 → 收集 → 返回                      │
│  - 目标选择:最近蜡烛/最高价值                            │
└─────────────────┬───────────────────────────────────────┘
                  │
┌─────────────────┼───────────────────────────────────────┐
│  行为层                                                  │
│  - 导航行为:PPO 学习路径规划                             │
│  - 收集行为:规则控制精细移动                             |
│  - 飞行行为:高度/能量管理                                │
└─────────────────┬───────────────────────────────────────┘
                  │
┌─────────────────┼───────────────────────────────────────┐
│  执行层                                                 |
│  - 行走控制器:虚拟输入  PID 控制                         │
│  - 飞行控制器:起飞/降落/滑翔                             │
└─────────────────┬───────────────────────────────────────┘
                  │
┌─────────────────┼───────────────────────────────────────┐
│  感知层                                                  │
│  - YOLOv8:蜡烛检测                                      │
│  - 深度估计:单目距离估算 (未来)                           │
│  - 地图构建:位置记忆,里程计,地图解包(也许?) (未来)      │
└─────────────────────────────────────────────────────────┘

📊 当前进度

功能 状态 说明
📸 蜡烛检测 ✅ 已完成 持续采集训练数据中
⌨️ 键鼠控制 ❌ 待开发 参考国服电脑键位
🎮 屏幕捕获 ✅ 已完成 mss + win32gui
📹 数据录制 ✅ 已完成 30FPS 视频 + 键鼠同步录制
🧠 RL 环境 ⚠️ 待测试 Gymnasium 封装
🧠 策略机 ❌ 待开发 状态机/行为树
🛸 飞行支持 ❌ 待开发 高度/能量管理
⚡ 性能优化 ❌ 待开发 C++ 关键模块

🚧 开发路线

Phase 1: 地面蜡烛收集 (进行中)

  • 蜡烛检测模型训练
  • 键鼠控制实现
  • 录制工具开发
  • PPO 导航训练
  • 简单状态机实现

Phase 2: 飞行支持 (计划)

  • 飞行控制器
  • 高度感知
  • 能量管理系统
  • 3D 路径规划

Phase 3: 性能优化 (计划)

  • C++ 关键模块
  • DirectX 捕获优化
  • 实时性提升

📁 项目结构

src/
├── capture.py      # 屏幕捕获
├── detect.py       # YOLOv8 检测
├── control.py      # 键盘控制
├── env.py          # RL 环境
└── agent.py        # PPO Agent

tools/
├── collect.py      # 图片采集
├── label.py        # 标注工具
├── split_dataset.py # 数据集划分
└── record.py       # 键鼠录制

data/
├── images/         # 原始图片
├── labels/         # YOLO 标注
└── candles/        # 训练格式数据

🛠️ 依赖

pip install -r requirements.txt

🤝 跪求大佬捞捞😭

欢迎提交 Issue 和 Pull Request!

📄 License

MIT

About

机器学习玩光遇的尝试

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%