yehengchen/Object-Detection-and-Tracking
Multi-Object Tracking via DeepSORT
解决的问题
本项目旨在解决图像和视频中目标检测与追踪的挑战,重点关注实时性能以及与机器人系统的集成。它将流行的单阶段检测器(如 YOLO 和 SSD)和双阶段检测器(如 R-CNN 变体)整合到一个实用的工具包中,以便您可以在自定义数据上训练模型,并在实时摄像头画面或基于 ROS 的机器人上运行。
工作原理
该仓库按单阶段和双阶段检测方法进行组织。对于单阶段,它提供了结合 YOLOv3/YOLOv4 与追踪算法(SORT 和 Deep SORT)的现成流水线,用于行人或车辆计数,甚至测量社交距离。它还包括用于将 YOLOv3 与 ROS 结合进行抓取检测的 Darknet_ROS,以及用于火星车模拟中追踪岩石的 DeepLabv3+ ROS 版本。双阶段部分涵盖了基于区域的 CNN(Fast R-CNN, Faster R-CNN, Mask R-CNN),并提供了在您自己的图像上训练 Mask R-CNN 的说明。为了支持自定义训练,仓库解释了如何准备 COCO 或 Pascal VOC 格式的数据集并将其转换为 YOLO 格式。
适用人群
本项目面向已经具备一定深度学习基础的机器人和计算机视觉开发者。环境配置要求 Ubuntu 16.04/18.04、ROS Kinetic 或 Melodic、特定的 NVIDIA GPU(GTX 1080Ti 或 RTX 2080Ti)以及 Python 2.7/3.6。如果您想将目标检测与追踪功能构建到自己的 ROS 机器人中,或者需要实用的示例流水线,本合集提供了分步链接和经过测试的配置。
亮点
- 在一处整合了多种检测架构(YOLO, SSD, R-CNN 系列)
- 实时追踪选项:用于计数和监控的 SORT 和 Deep SORT
- 用于机器人感知的 ROS 集成,包括抓取检测和火星车示例
- 在自定义数据集上训练 YOLO 和 Mask R-CNN 的指南
- 包含数据集转换工具(COCO 转 YOLO, VOC 转 YOLO)
- 提供解释 mAP 和 IoU 等关键概念的教育资源链接
相关
- 项目
- 项目
- 项目
- 项目