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

相关推荐
HPC_fac130520678161 小时前
以科学计算为切入点:剖析英伟达服务器过热难题
服务器·人工智能·深度学习·机器学习·计算机视觉·数据挖掘·gpu算力
小陈phd3 小时前
OpenCV从入门到精通实战(九)——基于dlib的疲劳监测 ear计算
人工智能·opencv·计算机视觉
如若1238 小时前
主要用于图像的颜色提取、替换以及区域修改
人工智能·opencv·计算机视觉
Evand J10 小时前
集合卡尔曼滤波(Ensemble Kalman Filter),用于二维滤波(模拟平面上的目标跟踪),MATLAB代码
matlab·平面·目标跟踪
加密新世界10 小时前
优化 Solana 程序
人工智能·算法·计算机视觉
WeeJot嵌入式14 小时前
OpenCV:计算机视觉的瑞士军刀
计算机视觉
思通数科多模态大模型14 小时前
10大核心应用场景,解锁AI检测系统的智能安全之道
人工智能·深度学习·安全·目标检测·计算机视觉·自然语言处理·数据挖掘
学不会lostfound14 小时前
三、计算机视觉_05MTCNN人脸检测
pytorch·深度学习·计算机视觉·mtcnn·p-net·r-net·o-net
Mr.谢尔比15 小时前
李宏毅机器学习课程知识点摘要(1-5集)
人工智能·pytorch·深度学习·神经网络·算法·机器学习·计算机视觉
思通数科AI全行业智能NLP系统15 小时前
六大核心应用场景,解锁AI检测系统的智能安全之道
图像处理·人工智能·深度学习·安全·目标检测·计算机视觉·知识图谱