1. 相关方向这些是我所了解的多目标跟踪(MOT) 的一些相关方向。其中单目标跟踪(VOT/SOT)、目标检测(detection)、行人重识别(Re-ID) 都是非常热门的方向。而偏视频的相关方向就比较冷门。而且今年五月DukeMTMC因为隐私问题不再提供MTMCT的数据了MTMCT的研究也是举步维艰。2. 核心步骤MOT算法的通常工作流程给定视频的原始帧运行对象检测器以获得对象的边界框对于每个检测到的物体计算出不同的特征通常是视觉和运动特征之后相似度计算步骤计算两个对象属于同一目标的概率最后关联步骤为每个对象分配数字ID。因此绝大多数MOT算法无外乎就这四个步骤检测特征提取、运动预测相似度计算数据关联其中影响最大的部分在于检测检测结果的好坏对于最后指标的影响是最大的。但是多目标追踪的研究重点又在相似度计算和数据关联这一块。所以就有一个很大的问题你设计出更好的关联算法可能就提升了0.1个点但别人用一些针对数据集的trick消除了一些漏检可能就能涨好几个点。所以研究更好的数据关联的回报收益很低。因此多目标追踪这一领域虽然工业界很有用但学术界里因为指标数据集的一些原因入坑前一定要三思。3. 评价指标关于评价指标第一个是传统的标准现在已经没人用了就不介绍了。第二个是06年提出的CLEAR MOT。现在用的最多的就是MOTA。但是这个指标FN、FP的权重占比很大更多衡量的是检测的质量而不是跟踪的效果。第三个是16年提出的ID scores。因为都是基于匹配的指标所以能更好的衡量数据关联的好坏。3.1. one-pass evaluation (OPE)主要有精度和成功率两个指标3.1.1. 精度中心位置的平均误差即目标的估计中心与目标的真值中心作差在整个跟踪过程中对其求平均值。3.1.2. 成功率即交并比其中是跟踪框是真值框。3.2. MOTA其中FN指假阴性 (False Negative)FP指假阳性 (False Positive)IDSW指ID错换 (ID switches)。4. 数据集数据集用的最多的是MOTChallenge专注于行人追踪的。第二个KITTI的是针对自动驾驶的数据集有汽车也有行人在MOT的论文里用的很少。还有一些其他比较老的数据集现在都不用了。15年的都是采集的老的数据集的视频做的修正。16年的是全新的数据集相比于15年的行人密度更高、难度更大。特别注意这个DPM检测器效果非常的差全是漏检和误检。17年的视频和16年一模一样只是提供了三个检测器相对来说更公平。也是现在论文的主流数据集。19年的是针对特别拥挤情形的数据集只有CVPR19比赛时才能提交。这个是MOT16公开检测器上的结果。可以看到从17年开始MOTA就涨的很慢了。关注一下这个帧率有20Hz的算法MOTDT也是我后面要讲的一个。这个是MOT16私有检测器上的结果。可以看到检测器性能的好坏对于结果的影响非常重要。SOTA算法换了私有检测器后性能直接涨了快20个点。这个是MOT17公开检测器上这几年比较突出的算法。注意因为这个数据集用了三个检测器所以FP、FN这些指标也都几乎是16数据集的三倍。5. SORT和DeepSORT关键算法从这两个工业界关注度最高的算法说起。SORT作为一个粗略的框架核心就是两个算法卡尔曼滤波和匈牙利匹配。卡尔曼滤波分为两个过程预测和更新。预测过程当一个小车经过移动后且其初始定位和移动过程都是高斯分布时则最终估计位置分布会更分散即更不准确更新过程当一个小车经过传感器观测定位且其初始定位和观测都是高斯分布时则观测后的位置分布会更集中即更准确。匈牙利算法解决的是一个分配问题。SK-learn库的linear_assignment_和scipy库的linear_sum_assignment都实现了这一算法只需要输入cost_matrix即代价矩阵就能得到最优匹配。不过要注意的是这两个库函数虽然算法一样但给的输出格式不同。具体算法步骤也很简单是一个复杂度的算法。DeepSORT的优化主要就是基于匈牙利算法里的这个代价矩阵。它在IOU Match之前做了一次额外的级联匹配利用了外观特征和马氏距离。外观特征就是通过一个Re-ID的网络提取的而提取这个特征的过程和NLP里词向量的嵌入过程 (embedding) 很像所以后面有的论文也把这个步骤叫做嵌入起源应该不是NLP但我第一次接触embedding是从NLP里。然后是因为欧氏距离忽略空间域分布的计算结果所以增加里马氏距离作为运动信息的约束。5.1. SORT这个SORT的流程图非常重要可以看到整体可以拆分为两个部分分别是匹配过程和卡尔曼预测加更新过程都用灰色框标出来了。一定要把整个流程弄明白。后面的多目标追踪的大框架基本都由此而来。关键步骤轨迹卡尔曼滤波预测→使用匈牙利算法将预测后的tracks和当前帧中的detecions进行匹配IOU匹配→卡尔曼滤波更新对于没有匹配上的轨迹也不是马上就删掉了有个T_lost的保存时间但SORT里把这个时间阈值设置的是1也就是说对于没匹配上的轨迹相当于直接删了。关于这点论文里的原话是首先恒定速度模型不能很好地预测真实的动力学其次我们主要关注的是帧到帧的跟踪其中对象的重新识别超出了本文的范围。5.2. DeepSORT这是DeepSORT算法的流程图和SORT基本一样就多了级联匹配Matching Cascade和新轨迹的确认confirmed。关键步骤轨迹卡尔曼滤波预测→使用匈牙利算法将预测后的tracks和当前帧中的detecions进行匹配级联匹配和IOU匹配→卡尔曼滤波更新级联匹配是核心就是红色部分DeepSORT的绝大多数创新点都在这里面具体过程看下一张图。关于为什么新轨迹要连续三帧命中才确认个人认为有这样严格的条件和测试集有关系。因为测试集给的检测输入非常的差误检有很多因此轨迹的产生必须要更严格的条件。级联匹配流程图里上半部分就是特征提取和相似度估计也就是算这个分配问题的代价函数。主要由两部分组成代表运动模型的马氏距离和代表外观模型的Re-ID特征。级联匹配流程图里下半部分数据关联作为流程的主体。为什么叫级联匹配主要是它的匹配过程是一个循环。从missing age0的轨迹即每一帧都匹配上没有丢失过的到missing age30的轨迹即丢失轨迹的最大时间30帧挨个的和检测结果进行匹配。也就是说对于没有丢失过的轨迹赋予优先匹配的权利而丢失的最久的轨迹最后匹配。论文关于参数λ运动模型的代价占比的取值是这么说的在我们的实验中我们发现当相机运动明显时将λ 0设置是一个合理的选择。因为相机抖动明显卡尔曼预测所基于的匀速运动模型并不work所以马氏距离其实并没有什么作用。但注意也不是完全没用了主要是通过阈值矩阵 (Gate Matrix) 对代价矩阵 (Cost Matrix) 做了一次阈值限制。关于DeepSORT算法的详细代码解读我比较推荐目标跟踪初探 (DeepSORT)https://zhuanlan.zhihu.com/p/90835266但关于卡尔曼滤波的公式讲的不是很详细具体推导可以看看 Kalman Filter 卡尔曼滤波http://www.harlek.cn/2019/12/02/qia-er-man-lu-bo/5.3. 改进策略看到这个DeepSORT的流程图不知道大家可以想到什么优化的地方其实有几个点是很容易想到的。第一点把Re-ID网络和检测网络融合做一个精度和速度的trade off第二点对于轨迹段来说时间越长的轨迹是不是更应该得到更多的信任不仅仅只是级联匹配的优先级由此可以引入轨迹评分的机制第三点从直觉上来说检测和追踪是两个相辅相成的问题良好的追踪可以弥补检测的漏检良好的检测可以防止追踪的轨道飘逸用预测来弥补漏检这个问题在DeepSORT里也并没有考虑第四点DeepSORT里给马氏距离也就是运动模型设置的系数为0也就是说在相机运动的情况下线性速度模型并不work所以是不是可以找到更好的运动模型。6. 最新进展这是最近比较新的一些方法。工业界青睐的算法在学术界其实并不重视一方面是因为开源的原因另一方面可以看到顶会的算法都不是注重速度的通常用了很复杂的模块和trick来提升精度。而且这些trick不是一般意义的trick了是针对这个数据集的或者说针对糟糕检测器的一些trick对于实际应用几乎没有帮助。第一篇论文是基于DeepSORT改进的它的创新点在于引入了轨迹评分机制时间越久的轨迹可信度就越高基于这个评分就可以把轨迹产生的预测框和检测框放一起做一个NMS相当于是用预测弥补了漏检。第二篇论文是今年9月份发在arxiv上的一篇论文它的工作是把检测网络和嵌入网络结合起来追求的是速度和精度的trade off。6.1. MOTDT这是MOTDT的流程图大概和DeepSORT差不多。这个图画的比较简单其实在NMS之前有个基于SqueezeNet的区域选择网络R-FCN和轨迹评分的机制。这两个东西的目的就是为了产生一个统一检测框和预测框的标准置信度作为NMS的输入。6.2. JDE这是JDE的结构图。这个方法是基于YOLOv3和MOTDT做的。它网络前面都和YOLOv3一样的主要就是在特征图里多提取了一个嵌入embedding向量采取的是类似于交叉熵的triplet loss。因为是多任务学习这篇论文还用了一篇18年的论文提出来的自动学习损失权重方案通过学习一组辅助参数自动地对非均匀损失进行加权。最后的结果是精度上差不太多FPS高了很多。7. 未来展望最后用多目标追踪未来的一些思考作为结尾这句话是最近的一篇关于多目标追踪的综述里的。它在最后提出对未来的方向里有这样一句话用深度学习来指导关联问题。其实现在基于检测的多目标追踪都是检测模块用深度学习Re-ID模块用深度学习而最核心的数据关联模块要用深度学习来解决是很困难的。现在有一些尝试是用RNN但速度慢、效果不好需要走的路都还很长。我个人觉得短期内要解决实际问题还是从Re-ID的方面下手思考怎样提取更有效的特征会更靠谱用深度学习的方法来处理数据关联不是短时间能解决的。参考文献最好的多目标跟踪MOT入门介绍Multi-object tracking in traffic environments: A systematic literature reviewOnline Object Tracking: A Benchmark
正则表达式提取数据实战:从元字符到生产级爬虫数据清洗 文章目录 每日一句正能量 导读 一、前言:为什么正则表达式是爬虫工程师的必修课 二、正则表达式元字符速查与分类体系 2.1 字符类:匹配"什么" 2.2 量词类:匹配"多少" 2.3 位置锚点:匹配"在哪里" 三、贪婪匹配 vs 非贪婪匹配:爬虫开发的核心…
109、RealBasicVSR 实战:真实场景视频超分的端到端解决方案 109、RealBasicVSR 实战:真实场景视频超分的端到端解决方案 上个月帮客户做视频增强,对方甩过来一段监控录像——720p的夜间画面,人脸糊成一团,还带着压缩伪影和运动模糊。我试了EDVR,效果还行但伪影去不干净;试了BasicVSR,细节恢复不错可噪声反而被放大了。折腾三天后翻…
2026 年济南精修打胶打胶收口门缝打胶本地靠谱施工测评分享 - LYL仔仔 2026 年济南精修打胶打胶收口门缝打胶本地靠谱施工测评分享长期住在济南的朋友应该都深有体会,家里各类缝隙处理不到位,日常居住体验会大打折扣。门缝缝隙密封差,室外灰尘噪音容易进到室内,浴室缝隙长期接触水汽,…
欧姆龙温控器测试3线PT100消除导线误差的原理,正解利用运放电路Vo = 2V+ - V- = Vpt100 下图是一个欧姆龙温控器的接线图 PT100的三根线红色接3脚(A),另外蓝色(B)接4脚和5脚。 PT100三线制恒流源接法 下图为恒流源激励的三线制Pt100的一种典型接法。其基本原理是假设Pt100的三条引线采用相同长度的同型线缆…
L9958驱动芯片与PIC24HJ256GP610微控制器的电机驱动系统设计 1. 项目背景与核心价值在工业自动化、机器人控制以及精密仪器领域,电机驱动系统的性能直接决定了整个设备的响应速度、定位精度和能耗效率。传统方案往往面临几个关键痛点:PWM控制信号易受干扰、电流环响应速度不足、散热设计影响长期稳定性。这正是L995…
3步搞定黑苹果配置:OpCore-Simplify自动化EFI生成终极指南 3步搞定黑苹果配置:OpCore-Simplify自动化EFI生成终极指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 想要体验macOS的优雅界面和强大…
性能对比分析:NV-Raw2insights-MRI在CMRxRecon挑战赛中的优异表现 性能对比分析:NV-Raw2insights-MRI在CMRxRecon挑战赛中的优异表现 【免费下载链接】NV-Raw2insights-MRI 项目地址: https://ai.gitcode.com/hf_mirrors/nvidia/NV-Raw2insights-MRI 在医学影像领域,磁共振成像(MRI)重建速…
Beyond Compare 5密钥生成器:双模式激活解决方案详解 Beyond Compare 5密钥生成器:双模式激活解决方案详解 【免费下载链接】BCompare_Keygen Keygen for BCompare 5 项目地址: https://gitcode.com/gh_mirrors/bc/BCompare_Keygen Beyond Compare 5作为业界领先的文件对比工具,其专业版功能强大但需…
2026 西安服务好的外墙漏水维修那家专业防水修缮 TOP4:本地外墙堵漏靠谱企业盘点 专业防水公司排名推荐(2026年5月防水补漏最新TOP权威排名) - 冠盾建筑修缮 2026 西安服务好的外墙漏水维修那家专业防水修缮 TOP4:本地外墙堵漏靠谱企业盘点 引言 西安雨季多雨、冬夏温差极大,外墙裂缝、窗框节点渗水是困扰大量高层、老旧小区业主的核心难题,不少住户多次修补依旧反复漏水,…
2026年7月最新金华宇舶官方售后客户服务热线与维修网点地址汇总 - 亨得利官方服务中心 金华宇舶官方售后客户服务热线与维修网点地址信息是每一位宇舶腕表拥有者都极为关注的核心内容。作为瑞士高端制表品牌,宇舶以其精湛工艺与创新设计闻名,确保腕表始终处于理想运行状态,离不开官方售后渠道的合规支持…
HS2汉化补丁终极指南:一键解锁Honey Select 2完整中文体验 HS2汉化补丁终极指南:一键解锁Honey Select 2完整中文体验 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch 还在为Honey Select 2的日文界面而苦恼吗…
怎么寄快递才能便宜呢?2026年7月寄快递省钱攻略 - 生活情报姬 同一箱老家特产,同事花22寄的,我花9块。不是我路子野,是我按场景选了渠道。寄快递便宜不便宜,一半看你会不会"对号入座"——退换货、卖闲置、寄礼物,招数都不一样。 分场景才最省 丰火递想不管啥场景都…
3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中那些…
GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复 如果你正在用 GXDE OS 或者任何基于 Deepin 的发行版,并且遇到了“检测到窗口系统采用 Wayland 协议,程序即将退出”这类弹窗,或者发现 VMware Tools 在 Ubuntu 24.04 这类默认 Wayland 的系统上启动失败,那这篇文章就是为你准备的…
企业AI落地困境与AgenticOps实践指南 1. 企业AI落地的现实困境与破局之道过去两年,大模型技术呈现爆发式增长,从GPT-3到GPT-4,从LLaMA到DeepSeek,模型参数规模从百亿级跃升至万亿级,多模态能力从单一文本扩展到图文音视频的综合处理。然而在企业应用层面&a…
[C++]内存管理:串顺序存储的内存回收 在串(字符串)的顺序存储中,内存回收的方式取决于字符串的存储方式以及所使用的编程语言和相关库。以下以 C 为例进行说明,因为 C 对内存管理有较为直接的控制。 1. 基于 char 数组的串顺序存储 如果使用普通的 char 数组来存储字…
移动端游戏功耗测试实战:电流、功率、亮度和场景对比 移动端游戏功耗测试:先控制变量,再比较优化是否真的省电 摘要:功耗测试最容易犯的错误,是拿两次不同温度、不同亮度、不同场景的平均功率直接比较。本文给出一套可复现的游戏功耗测试方法,覆盖引擎特性验证、版本回归和黑盒体验测试,并说明如何把功耗与帧率、温控、CPU/G…
足球口袋教练 HarmonyOS 离线应用实战(03/20):ArkUI 首页仪表盘搭建 本文是“足球口袋教练 HarmonyOS 离线应用实战”系列第 3 篇。示例项目是一个 HarmonyOS / ArkTS / ArkUI 编写的离线足球训练助手,围绕真实页面、真实截图和可复现操作展开。 本篇要解决的问题 训练 App 的首页不能只展示欢迎语,它要解决“我现在该点哪…