Yolov8的多目标跟踪实现

Yolov8_tracking
2023年2月,Yolov5发展到yolov8,这世界变得真快哦。Yolov8由ultralytics公司发布,yolov6-美团,yolov7-Alexey Bochkovskiy和Chien-Yao Wang,其各有高招,对yolov5均有提升。mikel-brostrom在github上不断更新多目标跟踪方法,deepsort升级到StrongSort,检测用yolov8,tracker除了StrongSort外,还有 ocsort和bytetrack,眼花缭乱。
来体验一下mikel-brostrom提供的yolov8_tracking。
克隆yolov8_tracking

git clone --recurse-submodules https://github.com/mikel-brostrom/yolov8_tracking.git

安装

cd yolov8_tracking
pip install -r requirements.txt  

安装python和pytorch时要解决各包间的版本依赖关系,这往往要花费时间,因为不同的硬件平台,linux版本,python版本,python调试工具各不相同。

下载yolov8和REID权重
yolov8在这里可找到
https://github.com/ultralytics/ultralytics/blob/main/README.zh-CN.md

下载,将yolov8n.pt和yolov8s.pt放到目录 yolov8_tracking/yolov8/weights。Reid特征识别用osnet,在安装目录yolov8_tracking/trackers/strongsort/deep/checkpoint下已有如下REID权重:
osnet_x0_25_market1501.pth
osnet_x0_25_msmt17.pth
osnet_x1_0_msmt17.pth
yolov8_tracking只支持后缀为pt的REID权重文件,这里选择osnet_x0_25_market1501.pth,修改后缀为pt。
命令行

track.py --yolo-weight yolov8/yolov8n.pt \
       --tracking-method strongsort    \
       --source MOT16-13-raw.mp4   \
       --img 640     \
       --reid-weights trackers/strongsort/deep/checkpoint/osnet_x0_25_market1501.pt   \
       --classes 0 2   \

试验过程没有遇到问题。本人用lenovo thinkpad E560,没有nvidia显卡支持,只能用device=cpu方式运行跟踪推理过程,运行速度比较慢,实际运行结果如下:
Yolov8n, osnet_x0_25_market1501, 640×384视频,每帧处理时间0.2s
Yolov8s, osnet_x0_25_market1501, 1280×736视频, 每帧处理时间1.2s
Yolov8n, osnet_x0_25_market1501, 1280×736视频,每帧处理时间0.5s
运行效果,yolov8略好于yolov5,Strongsort略好于deepsort。
试验视频, MOT16-13-raw.mp4,与原来的REID模型ckpt.t7比较,osnet_x0_25, osnet_x1_0均不及ckpt.t7。
注:以上试验视频中跟踪目标类型为car,而非person,ckpt.t7和osnet模型都以person为训练集,与car外观特征有区别,不能完全说明问题。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2023年3月9日
下一篇 2023年3月9日

相关推荐