0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IROS'23开源,nuScenes跟踪第一!无需学习的超强多目标跟踪!

3D视觉工坊 来源:3DCV 2023-11-20 16:46 次阅读

多目标跟踪的作用是获取目标在整个图像/LiDAR序列上的完整轨迹和状态,这两年在SLAM、导航、规划任务上应用很多。多目标跟踪的基本框架就是预测+关联,很多MOT使用学习方法进行预测,但是计算量很大。实时方法一般使用卡尔曼滤波进行状态更新,但会受限于选择的是匀速模型还是匀加速模型。

笔者最近阅读了IROS 2023的开源方案Poly-MOT,来源于哈工大机器人国重实验室。这个方案也是基于EKF进行更新,但是为不同目标建立了不同的物理模型,实现了nuScenues上的跟踪SOTA效果。因为没有使用学习方案,也就不需要GPU,降低了硬件要求。

今天笔者将为大家分享这项工作,当然笔者水平有限,如果有理解不当的地方欢迎大家一起讨论~

1、效果展示

Poly-MOT跟踪效果的直接对比,也体现了文章的核心思想,就是为不同类别建立不同的运动模型。汽车使用他们设计的CTRA模型,摩托车使用他们设计的Bicycle模型,CA表示匀速模型。可以发现引入专用模型后的跟踪轨迹明显变好了。

8f0fc460-86a7-11ee-939d-92fbcf53809c.png

Poly-MOT和CBMOT的跟踪性能对比,Poly-MOT对于小目标和密集目标的跟踪鲁棒性更高。CBMOT是2021 IROS提出的相机-雷达融合方案,同时使用了CenterPoint和CenterTrack两个检测器。

8f30726e-86a7-11ee-939d-92fbcf53809c.png

代码已经开源了,感兴趣的小伙伴可以实际运行一下。

2、导读

三维多目标跟踪(MOT)通过提供周围物体的运动轨迹,使移动机器人能够完成明智的运动规划和导航任务。然而,现有的3D MOT方法通常采用单个相似性度量和物理模型来对所有对象执行数据关联和状态估计。在大规模现代数据集和真实场景中,有各种各样的对象类别,它们通常表现出独特的几何属性和运动模式。这样,这种区分将使各种物体类别在同一标准下表现不同,导致轨迹和探测之间的错误匹配,并危及下游任务(导航等)的可靠性。为此,我们提出了Poly-MOT,一种基于检测跟踪框架的高效3D MOT方法,使跟踪器能够为每个对象类别选择最合适的跟踪标准。具体来说,Poly-MOT利用各种对象类别的不同运动模型来准确描述不同类型的运动。我们还将物体刚性结构的约束引入到具体的运动模型中,以准确描述物体的高度非线性运动。此外,我们引入了一个两阶段的数据关联策略,以确保对象可以从三个自定义度量中找到其类别的最佳相似性度量,并减少丢失的匹配。在nuScenes数据集上,我们提出的方法达到了75.4% AMOTA的最高性能。

3、算法解析

重新梳理一下问题:

给定每帧LiDAR的3D目标检测结果,跟踪多个目标在整个序列上的轨迹和状态。

现有方法是怎么做的?

现有框架基本就是预测+关联,基于匀速或者匀加速模型,使用卡尔曼滤波预测当前帧目标在下一帧的位置和状态,然后和下一帧目标检测结果计算IoU,如果超过阈值则认为匹配成功,重复这个过程实现整个序列的关联。

这么做有什么问题?

现有方法是对所有目标类别都建立相同的预测和关联模型,但显然不同目标的运动规律是不一样的,通用模型肯定会降低精度。

如何解决?

Poly-MOT将不同目标分为CTRA和Bicycle两类,依据物理规律建立两个不同的预测模型,并建立多个度量函数来进行重复性数据关联。

具体原理是啥?

Poly-MOT的pipeline包括四个部分:预处理模块、多类别轨迹运动模块、多类别数据关联模块和轨迹管理模块。

8f5292c2-86a7-11ee-939d-92fbcf53809c.png

(1)、预处理

这部分主要是做目标检测的NMS,为了降低计算量在NMS之前还加了一步分数阈值处理(SF),直接过滤掉低置信度的检测结果。后面也证明了SF不仅可以提高速度,也可以提高精度。感觉如果能用GPU来算NMS会再快一些。

Poly-MOT主要在nuScenes上跑,因此得到的3D目标检测结果是[x, y, z, w, l, h, θ, vx, vy],xyz表示box中心坐标,wlh表示box的宽长高,θ是航向角,vx和vy是物体速度,注意有些数据集是没有速度真值的。

(2)、多类别轨迹运动建模

这部分是文章的主要创新点,放弃了恒速或恒加速模型,将目标分为CTRA和Bicycle 两类模型,并引入刚体结构约束来建模目标的非线性。

CTRA(汽车和人):角速度ω和加速度a视为常量,航向角θ、速度v和加速度a的方向共线。CTRA类的目标状态为10维向量[x, y, z, v, a, θ, ω, w, l, h]。

Bicycle(摩托车、自行车等类似物体):速度方向和航向角可变,转向角和速度不变。Bicycle类的目标状态也是10维向量[x′, y′, z, v, a, θ, δ, w, l, h],x′和y′表示重心坐标,δ为转向角。注意两类模型都假设加速度a、坐标z和box尺寸wlh不变。

8f5d928a-86a7-11ee-939d-92fbcf53809c.png

目标状态更新使用的是扩展卡尔曼滤波:

8f6e2726-86a7-11ee-939d-92fbcf53809c.png

其中T表示目标状态,P表示协方差矩阵,F表示雅可比矩阵,Q表示噪声,f表示状态转移方程。x和y的转移方程为:

8f78bf10-86a7-11ee-939d-92fbcf53809c.png

其中η表示速度和x轴的夹角,其转移方程为:

8f82f3d6-86a7-11ee-939d-92fbcf53809c.png

β表示速度和航向夹角,其转移方程为:

8f9d244a-86a7-11ee-939d-92fbcf53809c.png

其中γ表示物体轴距和车体长度的比值,lr表示物体重心到后轮的距离,β也是CTRA和Bicycle的最主要区别,物理意义是自行车模型的瞬心不在物体主体上。

速度、航向角、角速度的转移方程依次为:

8fa8115c-86a7-11ee-939d-92fbcf53809c.png

这也就是完整的状态更新模型。

(3)、多类别数据关联

Poly-MOT数据关联部分的核心思想是,为不同类别设计不同的度量来降低假阳性匹配,并设计两阶段关联减少假阴性匹配。两阶段关联维护了两个大的代价矩阵,主要是为了使用不同的度量来进行重复关联。

B表示预测或者检测的状态,第一级关联包括并集上的3d广义IoU、并集上的BEV广义IoU以及欧氏距离:

8fc11972-86a7-11ee-939d-92fbcf53809c.png

第二级关联是给所有类别的目标再计算一次BEV的gIoU。进行两阶段匹配之后,获得的是匹配对、当前检测中的未关联目标、当前预测中的未关联目标。

(4)、轨迹管理

这部分包括轨迹更新、轨迹初始化、轨迹删除和输出文件,轨迹更新就是对匹配对应用EKF更新状态,轨迹初始化就是连续跟踪帧数超过阈值就认为是活跃轨迹,同理轨迹删除。

4、实验结果

实验是在nuScenes数据集进行,主要使用AMOTA来评估。Poly-MOT运行设备是Intel 9940X,没有使用深度学习也就不需要GPU。运行速度是3 FPS,看起来不快,如果能设计CUDA加速在GPU上应该会跑的很快,而且已经超过了同类方案SimpleTrack(0.51 FPS)、Minkowski Tracker(1.7 FPS)。

在nuScenes测试集上的定量对比结果,截止今天,还是以75.4%的性能实现了nuScenes多目标跟踪的第一!注意Poly-MOT只使用了LiDAR数据,而第二的CAMO-MOT是多模态的MOT方案。

8fcf6464-86a7-11ee-939d-92fbcf53809c.png

在nuScenes测试集上的定量对比结果,同样实现SOTA。

8fda360a-86a7-11ee-939d-92fbcf53809c.png

Pipeline各部分的消融实验,Os是原始状态,Pre是预处理模块,Mo是轨迹运动模块,Ass是数据关联模块。特别注意Os和Os+Pre之间的差距,说明预处理模块很重要。

8ff1bf6e-86a7-11ee-939d-92fbcf53809c.png

预处理模块中阈值处理和NMS的消融实验,验证预处理模块不仅可以提高精度,还可以提高运行速度,因为低置信度的box都被滤掉了。

90073c0e-86a7-11ee-939d-92fbcf53809c.png

最后一个消融实验,验证对于不同目标,建模合适的运动规律可以很大程度提高跟踪性能。不知道为啥两个测试对象都是Bicycle类。

9017e6f8-86a7-11ee-939d-92fbcf53809c.png

5、总结

今天笔者为大家分享了Poly-MOT跟踪方案,不需要GPU就可以实现SOTA精度,文章写得很好,各种实验做得也很全。更有意义的是提出了一种新的设计思想,而不是单纯的堆砌模块。感兴趣的小伙伴可以运行一下代码~

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模块
    +关注

    关注

    7

    文章

    2485

    浏览量

    46533
  • 目标检测
    +关注

    关注

    0

    文章

    185

    浏览量

    15455
  • 卡尔曼滤波
    +关注

    关注

    3

    文章

    159

    浏览量

    24475

原文标题:IROS'23开源,nuScenes跟踪第一!无需学习的超强多目标跟踪!

文章出处:【微信号:3D视觉工坊,微信公众号:3D视觉工坊】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    视频跟踪目标取差器)-基于DM8168实现的自动视频跟踪

    用来跟踪无界目标也可以用来跟踪有界目标。在复杂环境下(如地面的汽车)能给出个好的效果。多目标
    发表于 09-05 11:14

    视频跟踪目标跟踪算法简介(上海凯视力成信息科技有限...

    范围外,如艘船。边缘跟踪算法(Edge)当跟踪目标个或多个确定边缘而同时却又具有不确定的边缘,这时边缘
    发表于 09-29 08:59

    基于聚类融合的多目标跟踪算法

    多目标跟踪是多传感器数据融合中的一个重要问题。基于模式识别理论,提出了一种通过对传感器测量数据集类,以区分源于不同目标的测量数据集合。对各个类对应的目标状态估计进
    发表于 07-01 08:40 18次下载

    无人机编队视频序列中的多目标精确跟踪

    无人机编队视频序列中的多目标精确跟踪::针对无人机编队视频序列中的多目标精确跟踪的要求,使用STK(satellitetoolkit)三维建模软件模拟无人机UA
    发表于 03-18 16:21 19次下载

    多传感器多目标跟踪中的数据关联

    利用多传感器跟踪多目标技术中最重要的问题是目标关联问题。它包括两个方面: 同一传感器2 次扫描或多次扫描间各目标的关联以及多传感器各自的跟踪
    发表于 09-06 14:30 31次下载
    多传感器<b class='flag-5'>多目标</b><b class='flag-5'>跟踪</b>中的数据关联

    多传感器多目标跟踪的JPDA算法

    文中提出了一种适用于多传感器多目标跟踪的JPDA算法,它以极大似然估计完成对来自多传感器的测量集合进行同源最优分划,然后采用JPDA方法对多目标进行跟踪。经过理论分析和仿真
    发表于 02-03 10:38 47次下载
    多传感器<b class='flag-5'>多目标</b><b class='flag-5'>跟踪</b>的JPDA算法

    分块多特征自适应融合的多目标视觉跟踪_施滢

    分块多特征自适应融合的多目标视觉跟踪_施滢
    发表于 03-19 19:04 1次下载

    改进霍夫森林框架的多目标跟踪算法

    针对单目视觉对多个相似的目标跟踪因遮挡等因素影响而失效的问题,提出一种基于改进霍夫森林框架的多目标跟踪算法。在将多目标
    发表于 12-14 17:09 0次下载

    深度学习多目标跟踪方向调研报告

    导读 本文是一篇多目标跟踪方向的调研报告,从相关方向、核心步骤、评价指标和最新进展等维度出发,对MOT进行了全面的介绍,不仅适合作为入门科普,而且能够帮助大家加深理解。 最近做了一些多目标跟踪
    的头像 发表于 11-05 10:01 3329次阅读
    深度<b class='flag-5'>学习</b>:<b class='flag-5'>多目标</b><b class='flag-5'>跟踪</b>方向调研报告

    多目标跟踪过程中的数据关联技术综述

    多目标跟踪,其中单目标跟踪相对简单,除了需要解决与多目标跟踪共性的问题(如遮挡、形变等)外,单
    发表于 05-08 16:27 2次下载

    基于卷积特征的多伯努利视频多目标跟踪算法

    目标漏跟。针对该问题,在多伯努利滤波框架下,深度分析目标的特征信息,引λ抗干扰的卷积特征,提出基于卷积特征的多伯努利视频多目标跟踪算法,并在目标
    发表于 05-12 15:18 11次下载

    视频目标跟踪分析

    视频目标跟踪要求在已知第一帧感兴趣物体的位置和尺度信息的情况下,对该目标在后续视频帧中进行持续的定位和尺度估计W。广义的目标
    的头像 发表于 07-05 11:24 1160次阅读

    最常见的目标跟踪算法

    对象跟踪问题一直是计算机视觉的热点任务之一,简单的可以分为单目标跟踪多目标跟踪,最常见的目标
    的头像 发表于 09-14 16:20 2294次阅读

    基于MobileNet的多目标跟踪深度学习算法

    针对深度学习算法在多目标跟踪中的实时性问题, 提出一种基于MobileNet的多目标跟踪算法. 借助于MobileNet深度可分离卷积能够对
    的头像 发表于 11-09 10:23 768次阅读
    基于MobileNet的<b class='flag-5'>多目标</b><b class='flag-5'>跟踪</b>深度<b class='flag-5'>学习</b>算法

    多目标跟踪算法总结归纳

    多目标跟踪是计算机视觉领域中的一个重要任务,它旨在从视频或图像序列中准确地检测和跟踪多个移动目标。不过在落地部署时,有一些关键点需要解决。
    的头像 发表于 04-28 09:42 63次阅读
    <b class='flag-5'>多目标</b><b class='flag-5'>跟踪</b>算法总结归纳