网站正在建设中模板单页做网站在线
2026/2/16 5:14:26 网站建设 项目流程
网站正在建设中模板单页,做网站在线,珠海做网站设计有哪些,网站建设汇报书 ppt论文连接#xff1a;[1703.07402] Simple Online and Realtime Tracking with a Deep Association Metric 引言 得益于目标检测技术的最新进展#xff0c;“基于检测的跟踪”#xff08;Tracking-by-detection#xff09;已成为多目标跟踪领域的主导范式。在这种范式下[1703.07402] Simple Online and Realtime Tracking with a Deep Association Metric引言得益于目标检测技术的最新进展“基于检测的跟踪”Tracking-by-detection已成为多目标跟踪领域的主导范式。在这种范式下目标轨迹通常是通过解决一个全局优化问题来确定的该问题一次性处理整个视频批次的数据。例如流网络模型Flow network formulations[1, 2, 3] 和概率图模型Probabilistic graphical models[4, 5, 6, 7] 已经成为此类流行的框架。然而由于采用了批处理方式这些方法并不适用于那些必须在每个时间步都实时确认目标身份的在线Online场景。更传统的方法包括多假设跟踪MHT[8] 和联合概率数据关联滤波器JPDAF[9]。这些方法以逐帧的方式执行数据关联。在 JPDAF 中通过根据关联似然度对单个测量值进行加权从而生成单一的状态假设。而在 MHT 中所有可能的假设都会被跟踪但为了保证计算的可行性必须应用剪枝策略。最近这两种方法在基于检测的跟踪场景中被重新研究 [10, 11]并显示出了有希望的结果。但是这些方法的性能提升是以增加计算复杂度和实现复杂度为代价的。简单在线实时跟踪SORT[12] 是一个简单得多的框架它在图像空间中执行卡尔曼滤波并利用匈牙利算法Hungarian method进行逐帧数据关联其关联度量基于边界框的重叠程度。这种简单的方法在高帧率下实现了良好的性能。在 MOT 挑战数据集 [13] 上结合了最先进人体检测器 [14] 的 SORT其平均排名高于基于标准检测结果的 MHT。这不仅突显了目标检测器性能对整体跟踪结果的影响也是从业者视角的一个重要见解。尽管 SORT 在跟踪精度和准确度方面总体表现良好但它返回的身份切换Identity switches次数相对较多。这是因为其采用的关联度量仅在状态估计不确定性较低时才准确。因此SORT 在处理遮挡通常出现在前视角相机场景中时的跟踪能力存在不足。我们通过用一种结合了运动和外观信息的更完善的度量方法替换原有的关联度量来克服这一问题。具体而言我们应用了一个在大规模行人重识别Re-identification数据集上训练过的卷积神经网络CNN来区分行人。通过集成该网络我们在保持系统易于实现、高效且适用于在线场景的同时提高了针对漏检和遮挡的鲁棒性。我们的代码和预训练的 CNN 模型已公开发布以促进研究实验和实际应用的开发。方法1. 轨迹处理和状态估计轨迹处理和卡尔曼滤波框架与 [12] 中的原始公式基本相同。我们假设一个非常通用的跟踪场景其中相机未经校准且我们无法获得自运动信息。尽管这些情况对滤波框架构成了挑战但它却是最近多目标跟踪基准测试 [15] 中最常见的设置。因此我们的跟踪场景定义在一个八维状态空间中(u, v, γ, h, ẋ, ẏ, ̇γ, ̇h)该空间包含边界框的中心位置(u, v)、纵横比γ、高度h以及它们在图像坐标中的相应速度。我们使用带有恒定速度运动模型和线性观测模型的标准卡尔曼滤波器其中我们将边界坐标(u, v, γ, h)作为对象状态的直接观测值。对于每个轨迹k我们计算自上次成功测量关联a_k以来经过的帧数。此计数器在卡尔曼滤波器预测期间递增并在轨迹与测量值关联成功时重置为 0。超过预定义最大年龄A_max的轨迹被认为已离开场景并从轨迹集中删除。对于每个无法与现有轨迹关联的检测都会启动新的轨迹假设。这些新轨迹在其前三帧中被分类为“暂定”tentative。在此期间我们期望在每个时间步都有成功的测量关联。在最初三帧内未能成功关联到测量值的轨迹将被删除。2. 分配问题解决预测的卡尔曼状态与新到达的测量值之间关联的传统方法是构建一个可以使用匈牙利算法解决的分配问题。在这个问题公式中我们通过结合两个适当的度量来整合运动和外观信息。为了整合运动信息我们使用预测的卡尔曼状态与新到达的测量值之间的平方马氏距离其中表示第 i 个轨迹分布在测量空间中的投影​ 表示第 j 个边界框检测。马氏距离通过测量检测距离平均轨迹位置有多少个标准差来考虑状态估计的不确定性。此外使用这个度量可以通过对马氏距离进行阈值处理来排除不太可能的关联该阈值是根据逆 χ2 分布计算的 95% 置信区间。我们将此决策表示为指示变量如果第 i 个轨迹与第 j 个检测之间的关联是可接受的则该变量评估为 1。对于我们的四维测量空间相应的马氏距离阈值是。尽管当运动不确定性较低时马氏距离是一个合适的关联度量但在我们的图像空间问题公式中从卡尔曼滤波框架获得的预测状态分布仅提供了对象位置的粗略估计。特别是未考虑的相机运动可能在图像平面中引入快速位移使得马氏距离在跟踪遮挡时成为一个相当不准确的度量。因此我们将第二个度量整合到分配问题中。对于每个边界框检测我们计算一个外观描述符其中。此外我们为每个轨迹 k 保留一个由最后个关联的外观描述符组成的库。然后我们的第二个度量衡量第 i 个轨迹与第 j 个检测在外观空间中的最小余弦距离同样我们引入一个二值变量来指示根据此度量关联是否可接受我们通过在一个单独的训练数据集上找到适合此指示变量的阈值。在实践中我们应用一个预训练的 CNN 来计算边界框外观描述符。该网络的架构将在 2.4 节中描述。结合来看这两个度量通过服务于分配问题的不同方面而相互补充。一方面马氏距离提供了基于运动的可能对象位置信息这对于短期预测特别有用。另一方面余弦距离考虑了外观信息这对于在长期遮挡后当运动区分度较低时恢复身份特别有用。为了构建关联问题我们使用加权和组合这两个度量如果关联在两个度量的门控区域内我们称之为可接受每个度量对组合关联成本的影响可以通过超参数 λ 进行控制。在我们的实验中我们发现当存在显著的相机运动时将 λ0 是一个合理的选择。在这种设置下关联成本项中只使用外观信息。然而马氏门控仍然用于根据卡尔曼滤波器推断的可能对象位置来忽略不可行的分配。3. 匹配级联我们没有在一个全局分配问题中解决测量值到轨迹的关联而是引入了一个级联它解决了一系列子问题。为了说明这种方法请考虑以下情况当一个对象长时间被遮挡时随后的卡尔曼滤波器预测会增加与对象位置相关的不确定性。结果状态空间中的概率质量会扩散观测似然的峰值会降低。直观上关联度量应该通过增加测量值到轨迹的距离来解释这种概率质量的扩散。然而反直觉的是当两个轨迹竞争同一个检测时马氏距离会倾向于更大的不确定性因为它有效地减少了任何检测到预测轨迹均值之间的标准差距离。这是一种不希望的行为因为它可能导致轨迹碎片化增加和轨迹不稳定。因此我们引入了一个匹配级联它优先考虑更频繁出现的对象以在关联似然中编码我们的概率扩散概念。列表 1 概述了我们的匹配算法。我们输入轨迹 T 和检测 D 的索引集以及最大年龄。在第 1 和第 2 行中我们计算关联成本矩阵和可接受关联矩阵。然后我们迭代轨迹年龄 n从 0 到−1为年龄递增的轨迹解决线性分配问题。在第 6 行中我们选择在过去 n 帧中未与检测关联的轨迹子集 Tn​。在第 7 行中我们解决 Tn 中轨迹与未匹配检测 U 之间的线性分配问题。在第 8 和第 9 行中我们更新匹配集和未匹配检测集并在第 11 行完成后返回。请注意此匹配级联优先考虑年龄较小的轨迹即最近出现的轨迹。在最终匹配阶段我们对年龄为 n1 的未确认和未匹配轨迹集运行原始 SORT 算法 [12] 中提出的交并比Intersection over Union关联。这有助于解释突然的外观变化例如由于与静态场景几何的局部遮挡并提高对错误初始化的鲁棒性。4. 深度外观描述符通过使用简单的最近邻查询而无需额外的度量学习我们的方法要成功应用需要一个在实际在线跟踪应用之前离线训练好的、具有良好区分度的特征嵌入。为此我们采用了一个在大型行人重识别数据集 [21] 上训练的 CNN该数据集包含超过 1,100,000 张 1,261 名行人的图像使其非常适合在行人跟踪背景下进行深度度量学习。我们网络的 CNN 架构如表 1 所示。总而言之我们采用了一个宽残差网络 [22]包含两个卷积层然后是六个残差块。维度为 128 的全局特征图在第 10 个全连接层中计算。最终的批处理归一化将特征投射到单位超球面以兼容我们的余弦外观度量。该网络总共有 2,800,864 个参数在 Nvidia GeForce GTX 1050 移动 GPU 上一次处理 32 个边界框的前向传播大约需要 30 毫秒。因此只要有现代 GPU 可用该网络就非常适合在线跟踪。虽然我们训练过程的细节超出了本文的范围但我们将在 GitHub 仓库 ¹ 中提供一个预训练模型以及一个可用于生成特征的脚本。人话根据下面这张流程图我们用人话梳理一下deepsort流程卡尔曼滤波负责根据运动规律猜位置。CNN 网络负责根据图像像素看长相。级联匹配负责先易后难地把预测和检测对上号。把 DeepSORT 想象成一个“找人游戏”的超级裁判。它的任务就是在视频的每一帧里把新检测到的人或者车跟之前已经追踪到的人对上号。整个过程可以分为三个核心步骤预测猜你在哪、量测看你在哪、数据关联确认是不是你。DeepSORT 的核心改进在于第三步也就是怎么更准地“确认是不是你”。step 1: 预测卡尔曼滤波—— 我猜你大概走到了这里在视频里人不会瞬移。如果我们知道上一帧你在哪以及你跑多快我就能猜出下一帧你大概在哪。DeepSORT 使用卡尔曼滤波Kalman Filter来做这件事。通俗解释假设你在跑步我闭上眼一秒钟。虽然看不见你但我知道你之前的速度和位置所以我能在脑海里画出一个圈“你大概率在这个圈里”。状态定义 DeepSORT 用 8 个数字来描述一个人的状态过程 每一帧开始时卡尔曼滤波器会根据上一帧的数据预测出当前这一帧的目标状态。这就是“先验估计”。step 2: 量测目标检测—— 眼睛看到了一个人影这一步其实是 DeepSORT 的输入。我们需要一个目标检测器比如 YOLO 系列它会在当前这一帧画面上画出很多框框。通俗解释这时候我睁开眼了看到画面上真的出现了一个人检测框。冲突点我现在手里有两个信息预测框我脑海里猜你在的位置。检测框眼睛实际看到的位置。这俩通常不会完全重合。我们需要判断这个实际看到的框是不是就是我脑海里猜的那个人这就是最关键的“数据关联”。step 3: 数据关联核心—— 到底是不是你这是 DeepSORT 比 SORT 强的地方。它用了两个标准来判断标准 1马氏距离Mahalanobis Distance—— 运动匹配通俗解释看位置偏不偏。如果我预测你在左边结果检测框在最右边那肯定不是同一个人。马氏距离比普通的欧氏距离直尺量距离更高级它考虑了“不确定性”。判定如果距离太大超过阈值就认为不可能。简单说如果距离小于 9.4877就算位置对得上。标准 2余弦距离Cosine Distance—— 外观匹配通俗解释看长得像不像。DeepSORT 引入了一个深度学习网络CNN专门提取人的“特征向量”Appearance Descriptor。也就是给每个人生成一张“身份证”。不管你跑得快慢你的衣服颜色、体型特征是不太会变的。我们计算两个“身份证”的相似度。判定同样有个阈值如果不像就排除。综合判断加权融合最终的匹配分数是这两个距离的加权和在实际代码中作者发现如果不确定性大相机在动位置预测就不准了。所以经常设置 λ0也就是主要靠“长得像不像”外观来找人但是用马氏距离来做“门控”位置太离谱的直接剔除不算进 cost。step 4 级联匹配Matching Cascade—— 先挑熟人再挑生人这是 DeepSORT 的一个策略创新。问题背景 如果一个人被遮挡了很久比如 50 帧卡尔曼滤波的不确定性会变得超级大预测框会变得很大。这时候如果只用距离它很容易错误地把随便哪个新检测框吸过去。解决方案 我们不能一视同仁。我们要优先匹配那些刚刚还在的人最后再处理消失很久的人。流程先把轨迹按“消失时间” (Age) 分组刚消失 0 帧的、消失 1 帧的、消失 2 帧的...优先处理 Age0 的一直都在的 用匈牙利算法把它们和检测框匹配。剩下的检测框再去匹配 Age1的。再剩下的去匹配 Age2 的...以此类推。这就叫级联匹配。它保证了轨迹的连续性不会让一个消失很久的幽灵轨迹突然抢走一个很清晰的新目标。step 5: 收尾IOU 匹配与更新经过上面的级联匹配可能还有一些刚出现的轨迹或者刚检测到的框没对上号。这时候DeepSORT 会用最原始、最简单的 IOU交并比 再试一次。看看剩下的框里有没有位置重叠度很高的以此作为最后的补救。最后根据匹配结果匹配成功用检测框更新卡尔曼滤波器修正预测把新特征存入库中计数器归零。没匹配上的检测框认为是新出现的人新建一个轨迹。没匹配上的轨迹如果是刚生成的处于“暂定”态直接删掉如果是老轨迹标记为“丢失”超过一定时间如 70 帧还没找回来就彻底删除。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询