ECV 2023|跨摄像头行人跟踪冠军方案解读

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群

作者丨SemiLab团队 来源丨极市平台 编辑丨小书童

极市导读

本文为ECV2023大赛跨摄像头行人跟踪冠军方案解读。 >>加入极市CV技术交流群,走在计算机视觉的最前沿

  1. 赛题介绍及分析 ==============

跨摄像头行人跟踪 :在安防领域里,跨摄像头行人跟踪技术可以作为人脸识别技术的重要补充,对无法获取清晰拍摄人脸的行人进行跨摄像头连续跟踪,增强数据的时空连续性。此技术可以用于嫌疑犯追踪、失踪人口追查等。本算法的开发使用包含室外与室内场景,采用6个有顺序的摄像头对行人进行拍摄,前后两个摄像头的视野有部分重叠。本算法可以实现对行人的连续跟踪,应用于智慧安防与智慧零售领域。

算法报警的业务逻辑 :对行人进行跟踪,一组6段视频播放结束后,输出最后跟踪成功的行人与ID。通过ID的查找确认被跟踪的人是否连续并正确。

环境要求 :包括白天、晚上以及各种天气条件等,需要保证光照,尤其室内要注意背光的问题。

任务 :检测;识别;跟踪。

picture.image

数据特点 :检测目标远近大小不同、检测目标多样、检测目标角度不同、检测目标遮挡、聚集等。

picture.image

评价指标

在测试日志最后会打印出每个摄像头里的MOTA(Multiple Object Tracking Accuracy)和IDF1,最后取MOTA和IDF1的平均值作为精度分。其中,MOTA表示多目标跟踪准确度,IDF1是指每个行人框中行人ID识别的F值。

2.算法流程及实现

在backbone的选择中,最终决定使用YOLOv5。

YOLOv5 模型是2020年公开发布的。是基于YOLOv3模型基础上改进而来的,有YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x四个模型。YOLOv5 模型由骨干网络、颈部和头部组成。

YOLOv5 特点:

  1. 使用Pytorch框架,上手简单,方便训练自己的数据集;
  2. 配置环境简单,模型训练快速,批处理推理产生实时结果;
  3. Pytorch权重文件方便转化为ONXX、TensorRT;
  4. YOLOv5s帧率很高,同时兼顾精度。

picture.image

YOLOv5的亮点包括:

  1. 自适应锚框计算:网络在初始锚框的基础上输出预测框,自适应的计算不同训练集中的最佳锚框值。进而和真实框groundtruth进行比对,计算两者差距,再反向更新,迭代网络参数;
  2. CSP结构:将原输入分成两个分支,分别进行卷积操作使得通道数减半,再经过操作将输入与输出是一样的大小,让模型学习到更多的特征;
  3. Focus结构:采用切片操作把高分辨率的图片(特征图)拆分成多个低分辨率的图片/特征图,即隔列采样+拼接;
  4. 自适应图片缩放:在Yolov5的代码中datasets.py的letterbox函数中进行了修改,对原始图像自适应的添加最少的黑边,等等。

针对赛题数据,进行了数据增广的操作,包括左右翻转;随机裁剪;图像放缩;亮度调整;饱和度调整;对比度调整;添加噪声;添加随机遮挡等,部分示意图如下图所示。

picture.image

模型正式训练前,我们首先针对权重初始化进行了操作,通常使用的是权重随机初始化,它面对广泛的任务可以满足一定的要求。但针对不同任务不能定制化满足收敛效果和性能的最大化。因此我们使用官方提供的预训练权重,初始化主干网络参数。这之前我们使用模型预热的方法,使用较小的学习率先对模型进行训练,通过几轮epoches后使模型优化趋于稳定,再重新设置学习率开始训练。

之后增加了CBAM注意力机制。CBAM,是双通道注意力机制,分为空间注意力和通道注意力两部分。从下图中可以看出,红色方框中的部分为通道注意力,蓝色方框内的部分为空间注意力。通道注意力在前,空间注意力在后。特征图输入后,先进入通道注意力,基于特征图的宽、高进行 GAP、GMP,然后经过 MLP得到通道的注意力权重,然后通过 Sigmoid 函数获得归一化注意力权重,最后通过加权到原始输入特征图上,完成通道注意力对原始特征的重新标定。

picture.image

我们还将模型的损失函数替换,原有的CIOU loss 同时考虑到回归框宽高比例以及真实框与预测框中心距离,但是存在一个问题,他仅仅将宽高比例作为影响因子,如果两个框中心点与原始图保持一致,宽高比例相同但是宽高的值不同,按照CIOUloss损失可能一致与回归目标不相符,就如下图所示。因此我们改用SIOU,它增加了角度损失:设置夹角alpha,目标框与回归框夹角小于alpha时,向最小alpha收敛,反之beta收敛。

picture.image

最后我们将模型进行转化,将pytorch模型转化为TensorRT。并将模型量化为半浮点,更大限度地提高吞吐量。

picture.image

在测试阶段,首先使用ByteTrack进行目标跟踪。由于实际跟踪场景的复杂性,检测器往往无法得到完美的检测结果。为了权衡真假正例,目前大部分MOT方法会选择一个阈值,只保留高于这个阈值的检测结果来做关联得到跟踪结果,低于这个阈值的检测框就直接丢弃。ByteTrack认为这种策略是不合理的,低分检测框往往预示着物体的存在(例如遮挡严重的物体)。简单地把这些物体丢弃会给MOT带来不可逆转的错误,包括大量的漏检和轨迹中断,降低整体跟踪性能。因此,ByteTrack是一种新的数据关联方法,将高分框和低分框分开处理,利用低分检测框和跟踪轨迹之间的相似性,从低分框中挖掘出真正的物体,过滤掉背景。简单来说,是一个二次匹配的过程。

picture.image

之后对跟踪上的目标进行二次判断(基于比对得分),由于前后帧已经跟踪上,我们结合该目标上一次比对得分进行判断,如果比对得分高于0.5,则沿用跟踪结果,反之重新提特征比对。

最后,对于每帧图像,我们只需要对没有通过跟踪关联上的目标进行特征提取,在这一步中,我们没有使用for循环来完成,而是使用batch的操作,将没有关联的目标一次性批量处理。这样进一步减少了算法的耗时。

3.总结
  1. 我们选择使用了基于Pytorch的YoloV5s,模型训练快速、性能好,并提供了TensorRT部署方案,减少推理时间;
  2. 结合数据增广、预训练模型、模型预热等方案,为竞赛模型提供针对的性初始化权重,激发网络性能潜力;
  3. 使用CBAM注意力机制同时改变损失函数为SIOU优化网络模型,进一步提升模型的检测精度和鲁棒性;
  4. 使用余弦退火学习率和MultiStepLR接力的方式进行学习率调整,并使用遗忘数据增强的方法激发模型性能;
  5. 结合跟踪算法与比对得分两个因素进行判断,增加前后帧目标的关联同时规避掉过多冗余的计算,加快算法速度;
  6. 使用batch的操作,将上一步没有关联的目标一次性批量处理,这样进一步减少了算法的耗时。

picture.image

[picture.image

ICCV2023 | 当尺度感知调制遇上Transformer,会碰撞出怎样的火花?](https://mp.weixin.qq.com/s?__biz=MzU5OTA2Mjk5Mw==&mid=2247511307&idx=2&sn=1f2be98639e85d5648d6f572fd814237&chksm=feb84db5c9cfc4a36059bc0e48cd23a513e05e64d7be56d57aa3e6645aad151aedd60ac2fd04&scene=21#wechat_redirect)

[picture.image

分析transformer模型的参数量、计算量、中间激活、KV cache](https://mp.weixin.qq.com/s?__biz=MzU5OTA2Mjk5Mw==&mid=2247511264&idx=2&sn=dada1201634d6d32b5c06acddf4b66b0&chksm=feb84c5ec9cfc54881359c1ad3dd97b8abfbc5cdb2983297a92d69bee2f71f7b6210a0b9d6f5&scene=21#wechat_redirect)

[picture.image

让SAM来助力图像去雾!将大模型先验知识集成到任何低级去雾网络中](https://mp.weixin.qq.com/s?__biz=MzU5OTA2Mjk5Mw==&mid=2247511035&idx=2&sn=7dbbe40d9fca718154db4b31746c953c&chksm=feb84b45c9cfc253cd2f6c7a8e2f5920c889933b2da13d6d6b7a5341b16b3f97c50d6f2e7463&scene=21#wechat_redirect)

扫码加入👉「集智书童」交流群

(备注: 方向+学校/公司+昵称 )

picture.image

picture.image

picture.image

picture.image

picture.image

picture.image

想要了解更多:

前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」

行业技术方案 👉「AI安防、AI医疗、AI自动驾驶」

AI模型部署落地实战 👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」

欢迎扫描上方二维码,加入「 集智书童-知识星球 」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!

免责声明

凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。

点击下方“ 阅读原文 ”,

了解更多AI学习路上的 「武功秘籍」

0
0
0
0
评论
未登录
暂无评论