YOLOv9 实现多目标跟踪

YOLOv9项目结合了YOLOv9的快速目标检测能力和DeepSORT的稳定跟踪能力,实现了对视频流中多个对象的实时、准确检测和跟踪。在具体应用中,该项目能够对视频中的行人、车辆或其他物体进行实时定位、识别和持续跟踪,即使在复杂环境、对象互相遮挡或出现短暂消失的情况下也能保持较好的跟踪性能。这样的技术在智能监控、自动驾驶、无人机导航、体育赛事分析等多个领域都有着广泛的应用潜力。

安装:

1.克隆此存储库:

复制代码
cd YOLOv9_DeepSORT

2.创造新环境 使用conda

复制代码
conda env create -f conda.yml conda activate yolov9-deepsort

使用点

复制代码
python3 -m virtualenv -p python3.11 yolov9-deepsort source yolov9-deepsort/bin/activate pip install -r requirements.txt

3.克隆 YOLOv9 存储库:

复制代码
pip install -r requirements.txt mv ../object_tracking.py ../yolov9

4.下载模型重量

复制代码
mkdir weights

用法

  1. 准备视频文件:

    • 将视频文件放置在所需位置。
    • 更新video视频文件路径中的标志或将其设置为0使用网络摄像头作为输入。
  2. 下载YOLOv9模型:

    • 确保对应的模型权重可用。
  3. 配置输出视频:

    • 更新output代码中的标志以指定输出视频文件的路径和文件名。
  4. 设置置信度阈值:

    • 调整conf代码中的标志以设置对象检测的置信度阈值。置信度低于此阈值的对象将被过滤掉。
  5. 如果您想检测并跟踪视频中的某些对象

    • 修改class_id代码中的flag,指定检测的类ID。该标志的默认值设置为 None。如果您只想检测和跟踪人员,请将其设置为 0,或参考 coco.names 文件了解其他选项。
  6. 如果您想在跟踪时模糊某些对象

    • 修改bulr_id代码中的flag,指定检测的类ID。该标志的默认值设置为 None。
  7. 运行代码:

    用法

  8. 准备视频文件:

    • 将视频文件放置在所需位置。
    • 更新video视频文件路径中的标志或将其设置为0使用网络摄像头作为输入。
  9. 下载YOLOv9模型:

    • 确保对应的模型权重可用。 (YOLOv9-S/YOLOv9-M/ YOLOv9-C / YOLOv9-E )
  10. 配置输出视频:

    • 更新output代码中的标志以指定输出视频文件的路径和文件名。
  11. 设置置信度阈值:

    • 调整conf代码中的标志以设置对象检测的置信度阈值。置信度低于此阈值的对象将被过滤掉。
  12. 如果您想检测并跟踪视频中的某些对象

    • 修改class_id代码中的flag,指定检测的类ID。该标志的默认值设置为 None。如果您只想检测和跟踪人员,请将其设置为 0,或参考 coco.names 文件了解其他选项。
  13. 如果您想在跟踪时模糊某些对象

    • 修改bulr_id代码中的flag,指定检测的类ID。该标志的默认值设置为 None。
  14. 运行代码:

    Run object tracking

    python object_tracking.py --video ./data/test.mp4 --output ./output/output.mp4

    Run object tracking on webcam (set video flag to 0)

    python object_tracking.py --video 0 --output ./output/webcam.mp4

    Run person tracking (set class_id flag to 0 for person)

    python object_tracking.py --video ./data/test.mp4 --output ./output/output.mp4 --class_id 0

相关推荐
蒋星熠12 分钟前
反爬虫机制深度解析:从基础防御到高级对抗的完整技术实战
人工智能·pytorch·爬虫·python·深度学习·机器学习·计算机视觉
星期天要睡觉3 小时前
计算机视觉(opencv)——疲劳检测
人工智能·opencv·计算机视觉
格林威5 小时前
常规的变焦镜头有哪些类型?能做什么?
人工智能·数码相机·opencv·计算机视觉·视觉检测·机器视觉·工业镜头
却道天凉_好个秋6 小时前
OpenCV(二):加载图片
人工智能·opencv·计算机视觉
格林威7 小时前
机器视觉的工业镜头有哪些?能做什么?
人工智能·深度学习·数码相机·算法·计算机视觉·视觉检测·工业镜头
小刘摸鱼中8 小时前
OpenCV 库函数
人工智能·opencv·计算机视觉
民乐团扒谱机10 小时前
【微实验】激光测径系列(四)关于硬件上的一些实验
计算机视觉·matlab·激光测径
星期天要睡觉12 小时前
计算机视觉(opencv)——嘴部表情检测
人工智能·opencv·计算机视觉
迈火19 小时前
PuLID_ComfyUI:ComfyUI中的图像生成强化插件
开发语言·人工智能·python·深度学习·计算机视觉·stable diffusion·语音识别
星期天要睡觉1 天前
计算机视觉(opencv)——基于 dlib 人脸对齐
人工智能·opencv·计算机视觉