1。 参考视频效果
https://www.bilibili.com/video/av59547404/?spm_id_from=333.788.b_7265636f5f6c697374.14
People Tracking and Counting [ VIDEO ]: TownCentreXVID_OUTPUT_20FPS [ MODEL ]: YOLOv3 + DeepSORT [ GITHUB ]:
代码:
https://github.com/yehengchen/Object-Detection-and-Tracking/tree/master/OneStage, tensorflow-gpu版本
中文博客:
https://blog.csdn.net/weixin_38107271/article/details/96741706
算法:
yolov3 目标检测+deep_sort 目标追踪
deep_sort是在sort目标追踪基础上的改进版本,加入了行人重识别数据集上训练的深度学习模型,在实时目标追踪过程和总,提取目标的表观特征进行最近邻匹配,提高了目标追踪的鲁棒性。
step1: 读取当前帧目标检测框的位置及各检测框图像块的深度特征,这个用的是yolov3的检测模型,模型的训练可以参考yolo官网
step2: 根据置信度(confidence)对检测框进行过滤,删除置信度不够高的检测框
step3:对所有检测框进行非最大值抑制(non-maximum suppression),消除置信度得分(confidence score)低的检测框,留下最佳的目标检测框
step4: 使用kalman滤波预测目标在当前帧的位置
step5: 更新kalman追踪器参数及特征集,另外进行目标消失,新目标出现的判断
step6: 用到一个深度卷积网络,提取检测目标的128维特征,类似于人脸识别,网络训练可参考,训练用的数据集为mars
https://github.com/nwojke/cosine_metric_learning
也成为multiple target tracking (MTT),常涉及到的术语有:
目标:在一幅图像中,明显区别于周围环境的闭合区域往往被称为目标,比如“人”。
检测:给出目标在图像中的位置的过程称为检测。
跟踪:在连续图像序列中完成对目标的检测,并把物理意义下的同一目标相关联的过程。
基于目标检测的跟踪,在视频每帧中先检测出来所有感兴趣的目标物体,然后将其与前一帧中检测出来的目标进行关联来实现跟踪的效果,这种方式的优点是可以在整个视频中跟踪随时出现的新目标,当然这种方式要求你前提得有一个好的‘目标检测‘算法。
无论是离线方式的多目标跟踪还是在线方式的多目标跟踪算法,学习检测结果的特征并计算匹配相似度或者距离度量都是多目标跟踪算法的关键步骤。利用深度神经网络学习目标检测的表观特征是简单有效的提升多目标跟踪算法的方法。例如利用图像识别或者行人重识别任务中学习到的深度特征直接替换现有多目标跟踪算法框架中的表观特征。采用深度学习提升多目标跟踪算法更加直接的方法是学习检测之间的相似性。比如设计深度网络计算不同检测的距离函数,相同目标的检测距离小,不同目标的检测距离大,从而构造关于检测距离的代价函数。
person re-id全称是person re-identification,又称为行人重检测或行人再识别,简称为ReID,是利用计算机视觉技术判断图像或者视频序列中是否存在特定行人的技术,指通过穿着,体态,发型等在不确定的场景中能够再次识别是同一个人,并以此描绘出个体行进轨迹的AI视觉技术。给定一张切好块的行人图像,从一大堆切好快的图像中找到同一身份的人的图像的过程。
事实上,可以把 re-id技术视为人脸识别技术的进阶版,因为同样是多媒体内容检索,从方法轮来说是通用的,但比人脸识别计数更优挑战性,跨摄像头场景下复杂姿态,严重遮挡,多变的光照条件等等不利因素都是要考虑的。
研究形式:
数据集通常是通过人工标注或者检测算法得到的行人图片,目前与检测独立,注重识别。
数据集分为训练集,验证集,query,Gallery
在训练集上进行模型的训练,得到模型后对query与gallery中的图片提取特征计算相似度,对于每个query在gallery中找出前N个与其相似的图片。
两大方向:
特征提取:学习能够应对在不同摄像头下行人变化的特征
度量学习:将学习到的特征映射到新的空间使相同的人更近,不同的人更远。
存在挑战
1)不同摄像头造成行人外观的巨大变化
2)对于深度学习方法,现有数据集相对较小
常用数据集
CUHK03
Market1501
DukeMTMC-reID
MSMT17
相关博客
https://blog.csdn.net/qq_18888869/article/details/82849655
https://github.com/AsuradaYuci/awesome_video_person_reid (有论文,代码等),非常好,链接较全
1。开源代码
https://blog.csdn.net/qwedsaewq/article/details/89202657
https://github.com/nwojke/cosine_metric_learning, tensorflow包含预训练模型和训练代码,开源数据集合
2。论文https://arxiv.org/pdf/1910.10093.pdf
https://github.com/KaiyangZhou/deep-person-reid pytorch