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_trackingpip 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, 640x384视频,每帧处理时间0.2s
Yolov8s, osnet_x0_25_market1501, 1280x736视频, 每帧处理时间1.2s
Yolov8n, osnet_x0_25_market1501, 1280x736视频,每帧处理时间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外观特征有区别,不能完全说明问题。
来源地址:https://blog.csdn.net/weixin_44238733/article/details/129024558