RL-PowerTracking/README.md

75 lines
1.9 KiB
Markdown
Raw Normal View History

# RL-PowerTracking
基于强化学习的电力目标跟踪系统
## 项目结构
- `src/` - 核心代码
- `docs/` - 文档
- `tests/` - 测试用例
- `examples/` - 使用示例
- `data/` - 数据集
- `models/` - 模型保存目录
- `tensorboard_logs/` - TensorBoard日志
## 目录自动创建
为确保项目运行时所需目录存在,新增了`create_directories.py`脚本。在运行训练前,请先执行:
```bash
python create_directories.py
```
## 安装依赖
```bash
pip install -r requirements.txt
```
## 最新优化
1. 环境注册问题已修复,自定义环境正确注册为`CartesianSpace-v0`
2. 训练速度优化使用MlpPolicy、较大的batch_size=1024、use_sde=True提升CPU利用率
3. 解决了向量化环境观测值解包问题
4. 环境包装器嵌套顺序优化Monitor包裹RecordEpisodeStatistics
## 系统功能增强
1. **机械臂控制**
- 新增笛卡尔空间运动规划功能,支持路径移动和抓取放置操作
- 支持手眼标定功能,实现相机坐标系与机械臂坐标系的转换
2. **视觉识别**
- 增强电力设备检测算法使用HSV颜色空间提升检测准确性
- 添加多目标跟踪功能,支持持续跟踪电力设备
## 使用示例
### 机械臂控制示例
```python
from src.robot_control.arm_controller import RoboticArmController
# 创建控制器实例
arm = RoboticArmController()
# 连接机械臂
arm.connect()
# 移动到指定位置
arm.move_to_position([0.3, 0.2, 0.1])
# 执行抓取和放置操作
arm.perform_pick_and_place([0.3, 0.2, 0.0], [0.1, 0.4, 0.0])
# 断开连接
arm.disconnect()
```
### 目标跟踪示例
```python
from src.vision.target_tracker import TargetTracker
# 创建目标追踪器
tracker = TargetTracker()
# 获取当前帧
frame = tracker.get_frame()
# 检测电力设备
boxes = tracker.detect_power_equipment(frame)
# 释放资源
tracker.release()
```