# 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() ```