原文:YOLOv8目标跟踪deepsort - 知乎 (zhihu.com)
一、YOLOV8 tracking
参考文章:
Ctrl CV:YoloV5 + DeepSort1 赞同 · 0 评论文章
二、行人重识别(ReID) ——Market-1501 数据集
2.1、数据集简介
Market-1501 数据集在清华大学校园中采集,夏天拍摄,在 2015 年构建并公开。它包括由 6 个摄像头(其中 5 个高清摄像头和 1 个低清摄像头)拍摄到的 1501 个行人、32668 个检测到的行人矩形框。每个行人至少由 2 个摄像头捕获到,并且在一个摄像头中可能具有多张图像。训练集有 751 人,包含 12,936 张图像,平均每个人有 17.2 张训练数据;测试集有 750 人,包含 19,732 张图像,平均每个人有 26.3 张测试数据。3368 张查询图像的行人检测矩形框是人工绘制的,而 gallery 中的行人检测矩形框则是使用 DPM 检测器检测得到的。该数据集提供的固定数量的训练集和测试集均可以在 single-shot 或 multi-shot测试设置下使用。
2.2、目录结构
2.3、目录介绍
1)“bounding_box_test”——用于测试集的 750 人,包含 19,732 张图像,前缀为 0000表示在提取这 750 人的过程中 DPM 检测错的图(可能与 query 是同一个人),-1 表示检测出来其他人的图(不在这 750 人中)
2) “bounding_box_train”——用于训练集的 751 人,包含 12,936 张图像
3) “query”——为 750 人在每个摄像头中随机选择一张图像作为 query,因此一个人的query 最多有 6 个,共有 3,368 张图像
4) “gt_query”——matlab 格式,用于判断一个 query 的哪些图片是好的匹配(同一个人不同摄像头的图像)和不好的匹配(同一个人同一个摄像头的图像或非同一个人的图像)5) “gt_bbox”——手工标注的 bounding box,用于判断 DPM 检测的 bounding box 是不是一个好的 box
2.4、命名规则
以 0001_c1s1_000151_01.jpg 为例
1) 0001 表示每个人的标签编号,从 0001 到 1501;
2) c1 表示第一个摄像头(camera1),共有 6 个摄像头;
3) s1 表示第一个录像片段(sequece1),每个摄像机都有数个录像段;
4) 000151 表示 c1s1 的第 000151 帧图片,视频帧率 25fps;
5) 01 表示 c1s1_001051 这一帧上的第 1 个检测框,由于采用 DPM 检测器,对于每一帧上的行人可能会框出好几个 bbox。00 表示手工标注框。
2.5、整理行人 ReID 数据集
最终格式如下:
2.6、训练行人 ReID 网络
在 deep 路径下执行:
python train.py --data-dir ./Market-1501