t型网站域名和版面,连云港建设公司网站,h5怎么制作小程序,wordpress爆力目标跟踪那些事
跟踪与检测的区别
目标跟踪和目标检测是计算机视觉中的两个重要概念#xff0c;但它们的目的和方法是不同的。 目标检测(object Detection)#xff1a;是指在图像或视频帧中识别并定位一个或多个感兴趣的目标对象的过程 。 目标跟踪(object Tracking)…目标跟踪那些事
跟踪与检测的区别
目标跟踪和目标检测是计算机视觉中的两个重要概念但它们的目的和方法是不同的。 目标检测(object Detection)是指在图像或视频帧中识别并定位一个或多个感兴趣的目标对象的过程 。 目标跟踪(object Tracking)是指在视频帧序列中连续地监测和定位一个或多个目标对象的位置的过程。 区别跟踪与检测的区别 输入数据不同目标检测通常处理单一的图像而目标跟踪处理的是视频序列。 Input视频序列 Output: The trajectory and a unique ID for each target. 目标和任务不同目标检测关注于在单个图像或视频帧中确定和定位对象而目标跟踪关注于在视频序列中跟踪对象的动态变化。 目标跟踪应用场景 常见的应用场景包括了 自动驾驶车流人流的统计越界识别与监控 实时决策在许多应用中如无人驾驶车辆或安全监控实时的目标跟踪能够提供必要的信息来做出快速决策。 自动化流程目标跟踪可以自动化许多任务如视频分析或医学诊断从而减少人工干预。 提高准确性与人工跟踪相比自动自标跟踪通常更加准确和一致。 增强体验在娱乐和游戏行业目标跟踪提供了更沉浸式的体验使用户感觉更真实。
目标跟踪的困难
困难一Inter-Object Occlusion 物体之间的遮挡。 困难二Obstacle Occlusion 障碍物的阻碍(导致跟踪后前后的物体被判断为两个对象)也就是导致id switch现象的发生。 目标跟踪的步骤 当前主流的目标跟踪Tracking-by-detection的主要步骤 通过检测器做目标的定位进行特征的提取做数据的关联匈牙利算法轨迹的管理与状态的更新卡尔曼滤波 主流的目标跟踪算法
DeepSORT、ByteTrack和BoT-SORT都是当前较为主流的多目标跟踪算法,各有特点
DeepSORT:基于检测的跟踪框架,使用深度ReID网络提取目标特征,并结合卡尔曼滤波进行运动预测,性能稳定。 ByteTrack:端到端跟踪框架,直接在目标检测的基础上进行跟踪可以没有独立的特征提取模块。速度快但不如DeepSORT鲁棒。 BoT-SORT:在ByteTrack基础上使用相机运动补偿和改进的具有更准确状态向量的卡尔曼滤波器。精度较高但速度较慢。
总体来说
如果追求速度可以首选ByteTrack。如果追求精度BoT-SORT会更好。如果资源有限但要稳定跟踪,DeepSORT是不错的选择。
多目标跟踪任务
Multi-object tracking (MoT) is to locate each target at each frame, and draw their trajectories
包括两种常见的方式
Model-free-tracking (MFT)需要手动的初始化给出第一帧中目标对象的位置在此基础上进行目标的跟踪。 Tracking-by-detection (TBD) 不需要初始化只需要一个检测器即可实现。 首先会做视频帧的分割Frames Separation送入神经网络的目标检测器Object Detector Neural Network进行检测MOT问题可以看作是数据关联问题其目的是将视频序列中跨帧的检测关联起来。
多目标跟踪数据集
多目标跟踪Multiple Object TrackingMOT数据集主要用于评估和比较不同的多目标跟踪算法。这些数据集包含带有标注的视频序列其中的每一帧都标注了目标对象的位置通常是用边界框表示和ID。
MOT challengeMOT Challenge是一个常见的多目标跟踪数据集和基准测试包含多个不同的子集例如2D MOT 2015、MOT16、MOT17、MOT20等涵盖了各种不同的环境和场景。每个子集都有自己的训练集和测试集并且提供了详细的标注信息包括目标的位置、ID以及一些额外的属性如是否被遮挡、是否静止等。MOTChallenge的官方网站还提供了一个在线的评估服务器用于比较和排名不同的跟踪算法。 UA-DETRAC UA-DETRAC数据集主要用于汽车跟踪任务。它包含了在复杂的交通场景中捕获的超过140,000帧的高质量视频。这些视频涵盖了各种不同的环境和天气条件以及不同的交通流量。UA-DETRAC数据集还提供了详细的标注信息包括汽车的位置、速度、尺度等。 BDD100KKITTI
多目标跟踪评估指标 对于这些多目标跟踪的评估指标总体上可以分为以下的四类
Accuracy准确度 id switches(IDswMultiple Object Tracking Accuracy (MOTA) Precision精度 Multiple Object Tracking Precision (MOTP)Tracking Distance ErrorTDE Completeness完整度 Mostly Tracked (MT),Partly Tracked (PT),Mostly Lost (ML)FragmentationFM Robustness鲁棒性 Recover from Short-term occlusion (RS)Recover from Long-term occlusion (RL)
MoTA 多目标跟踪的准确度 M O T A 1 − ∑ t ( F N t F P t I D S W t ) ∑ t G T t \mathrm{MOTA}1-\frac{\sum_{t}\left(\mathrm{FN}_{t}\mathrm{FP}_{t}\mathrm{IDSW}_{t}\right)}{\sum_{t} \mathrm{GT}_{t}} MOTA1−∑tGTt∑t(FNtFPtIDSWt) t:代表frame index视频帧的索引 GT:代表the number of groundtruth objectsGT目标的总数 FN:the false negatives 漏报the number of ground truth objects that were detected by the method FP:the false positives误报(the number of objects that were falsely detected by the method but do not exist in the ground-truth.) IDSW :the number of identity switches(之前提到的id的切换次数)
MoTP (Multiple Object Tracking Precisicin) M O T P ∑ t , i d t , i ∑ t c t \mathrm{MOTP}\frac{\sum_{t, i} d_{t, i}}{\sum_{t} c_{t}} MOTP∑tct∑t,idt,i
ct:代表的是在第t帧匹配的数目the number of matches in frame tdt,i the bounding box overlap of target i with its assigned ground-truth object in frame t.两个框的重叠面积本质上是IOU 主要是一种定位精度的度量 SORT目标跟踪原理 SIMPLE ONLINE AND REALTIME TRACKING 标题:简单的在线和实时跟踪 SIMPLE ONLINE AND REALTIME TRACKING目的开发一种实时多物体跟踪方法适用于在线应用。方法通过组合卡尔曼滤波器和匈牙利算法等熟悉技术实现了一个实时跟踪系统。重点检测质量被确定为影响跟踪性能的关键因素。通过改变CNN检测器可以提高跟踪性能。结论该算法的更新速度为260 Hz比其他最先进的跟踪器快20倍以上同时实现了与最先进的在线跟踪器相当的准确性。
在多目标跟踪中关联是指将当前帧中的检测与前一帧中的跟踪目标进行匹配。 在本文中作者提出了一种简单的关联方法仅使用检测框之间的loU来完成关联。 cost matrix between each detected bounding box and all predicted bounding boxes IoU ( D , P ) [ iou ( D 1 , P 1 ) … iou ( D 1 , P M ) iou ( D 2 , P 1 ) … iou ( D 2 , P M ) ⋮ ⋱ ⋮ iou ( D N , P 1 ) … iou ( D N , P M ) ] \operatorname{IoU}(D, P)\left[\begin{array}{ccc} \operatorname{iou}\left(D_{1}, P_{1}\right) \ldots \operatorname{iou}\left(D_{1}, P_{M}\right) \\ \operatorname{iou}\left(D_{2}, P_{1}\right) \ldots \operatorname{iou}\left(D_{2}, P_{M}\right) \\ \vdots \ddots \vdots \\ \operatorname{iou}\left(D_{N}, P_{1}\right) \ldots \operatorname{iou}\left(D_{N}, P_{M}\right) \end{array}\right] IoU(D,P) iou(D1,P1)iou(D2,P1)⋮iou(DN,P1)……⋱…iou(D1,PM)iou(D2,PM)⋮iou(DN,PM)