Siamese Multi-Object Tracking

SiamMOT

论文标题:Siamese Multi-Object Tracking

论文地址:http://arxiv.org/abs/2105.11595

论文源码:https://github.com/amazon-research/siam-mot

来自亚马逊团队,是ACM2020 hieve竞赛行人多目标跟踪赛道第一,同时是ICCV2021 airmot竞赛的baseline。

出处:CVPR2021.5.25

Abstract

​ 通过引入一个基于区域的孪生多目标跟踪网络,设计了一个新的online多目标跟踪框架,名为SiamMOT。SiamMOT包含一个运动模型来估计两帧之间目标的移动从而关联两帧上检测到的目标。为了探索运动建模如何影响其跟踪能力,作者提出了孪生跟踪器的两种变体,一种隐式建模运动,另一种显式建模运动。在三个MOT数据集上进行实验,作者证明了运动建模对于多目标跟踪的重要性并验证了SiamMOT达到SOTA的能力。而且,SiamMOT是非常高效的,它可以在单个GPU上720P视频上达到17的FPS。

Introduction

主要贡献:

  • 提出SiamMOT模型,使用基于区域的特征开发(显式)模板匹配来估计实例运动能够对跟踪场景(快速运动)更加鲁棒。
  • 在Faster R-CNN的基础上进行改进,提出EMM的方法证明在密集光流估计建模和实例级运动估计SOT中的有效性。
  • 消融分析表明实例级运动级建模对鲁棒的在线运动估计非常重要,尤其在有挑战性的跟踪场景中。

Siamese结构的网络通常在第二帧的搜索区域内跟踪第一帧中的目标对象。而且Siamese网络通常学习两个检测到的实例之间的相似性函数,Siamese跟踪器是用于用于在更大的上下文区域内搜索检测到的实例的匹配函数。

SiamMOT

​ 原理:首先 I t I^{t} It帧的图像经过backbone后,输出featrue map,检测结果detection会在feature map上扣去单个目标的SOT模板, I t + δ I^{t+\delta} It+δ同样经过backbone后输出feature map,根据上一帧的检测结果扩大region,作为SOT的搜寻区域,随后在模板在搜索区域上进行卷积,确定 I t I^t It帧中的目标在 I t + δ I^{t+\delta} It+δ帧的位置,这个位置是motion model的预测,同时 I t + δ I^{t+\delta} It+δ帧也是一个完整的检测过程,会产生detection,根据上一帧的detection box做空间匹配。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-77dpgCry-1640485334616)(image/在这里插入图片描述
Motion modelling with Siamese tracker

	给定第$t$帧的单个目标$i$,根据在$t$帧中的位置在$t+\delta$帧的局部窗口搜索对应的目标,在公式上表现为:

( v i t + δ , R ^ i t + δ ) = T ( f R i t , f S i t + δ , Θ ) (v_{i}^{t+\delta},\hat R_{i}^{t+\delta})=\mathcal {T}(\mathbf f_{{R}_{i}}^{t},\mathbf f_{S_{i}}^{t+\delta},\Theta) (vit+δ,R^it+δ)=T(fRit,fSit+δ,Θ)

​ 这里的 T \mathcal {T} T表示参数为 Θ \Theta Θ的孪生跟踪器, f R i t \mathbf f_{{R}_{i}}^{t} fRit则是根据检测框 R i t R_{i}^{t} Rit t + δ t+\delta t+δ帧上获得搜索区域 S i t + δ S_{i}^{t+\delta} Sit+δ提取的特征图。而搜索区域 S i t + δ S_{i}^{t+\delta} Sit+δ是按照一定的比例 r ( r > 1 ) r(r>1) r(r>1)扩展检测框 R i t R_{i}^{t} Rit获得的,扩展前后的区域具有相同的集合中心,如上图的如上图中的黄色实线框到黄色虚线框所示。当然,不管是原来的检测框还是拓展后的预测框,获得其特征 f R i t \mathbf f_{{R}_{i}}^{t} fRit f S i t + δ \mathbf f_{S_{i}}^{t+\delta} fSit+δ的方式都是不受大小影响的RoIAlign层。孪生跟踪器输出的结果有两个,其中 R ~ i t + δ \tilde{R}_{i}^{t+\delta} R~it+δ 为预测框,而 v i t + δ v_{i}^{t+\delta} vit+δ 则是预测框的可见置信度,若该实例在区域 S i t + δ S_{i}^{t+\delta} Sit+δ是可见的,那么 T \mathcal{T} T将会产生一个较高的置信度得分$ v_{i}^{t+\varepsilon}$,否则得分会较低。

​ 多目标跟踪情况下,多次使用上面的特征,对于每一个检测到的目标都是用一次,SiamMOT框架允许这些操作并行运行,只需要计算一次主干特征就可以使推理更加高效。

如果发生以下两种情况,前后两帧的匹配失败:

  • R ~ i t + δ \tilde{R}_{i}^{t+\delta} R~it+δ R t t + δ {R}_{t}^{t+\delta} Rtt+δ 中的正例不匹配
  • v i t + δ v_{i}^{t+\delta} vit+δ对于在 t + δ t+\delta t+δ处的行人可见值偏低。

Implicit motion model (IMM)
在这里插入图片描述
​ 隐式运动模型是通过MLP来估计目标两帧之间的运动,它先将特征 f R i t \mathbf f_{{R}_{i}}^{t} fRit f S i t + δ \mathbf f_{S_{i}}^{t+\delta} fSit+δ按照通道连接在一起,然年送入到MLP中预测行人可见置信度 v i v_{i} vi、相对位置和尺度偏移量,如下公式所示,
m i = [ x i t + δ − x i t w i t , y i t + δ − y i t h i t , l o g w t t + δ w i t , l o g h t t + δ h i t ] m_{i}=[\frac {x_{i}^{t+\delta}-x_{i}^{t}}{w_{i}^{t}},\frac {y_{i}^{t+\delta}-y_{i}^{t}}{h_{i}^{t}},log \frac {w_{t}^{t+\delta}}{w_{i}^{t}},log \frac {h_{t}^{t+\delta}}{h_{i}^{t}}] mi=[witxit+δxit,hityit+δyit,logwitwtt+δ,loghithtt+δ]
​ 其中 ( x i t , y i t , w i t , h i t ) (x_{i}^{t},y_{i}^{t},w_{i}^{t},h_{i}^{t}) (xit,yit,wit,hit)为目标框的四个值,通过 R i t R_{i}^{t} Rit m i m_{i} mi可以解出 R ~ i t + δ \tilde{R}_{i}^{t+\delta} R~it+δ 。给定的 ( R i t , S i t + δ , R i t + δ ) (R_{i}^{t},S_{i}^{t+\delta},R_{i}^{t+\delta}) (Rit,Sit+δ,Rit+δ),可以采用三元组损失来计算,其中 v i ∗ v_{i}^{\ast} vi m i ∗ m_{i}^{\ast} mi是根据 R i t + δ R_{i}^{t+\delta} Rit+δ计算的真实的GT标签, L f o c a l \mathcal {L}_{focal} Lfocal为分类损失, L r e g \mathcal {L}_{reg} Lreg为常用的smooth L1回归损失。
L = L f o c a l ( v i , v i ∗ ) + 1 [ v i ∗ ] L r e g ( m i , m i ∗ ) L = \mathcal {L}_{focal}(v_{i},v_{i}^{\ast})+ \mathbf {1}[v_{i}^{\ast}]\mathcal {L}_{reg}(m_{i},m_{i}^{\ast}) L=Lfocal(vi,vi)+1[vi]Lreg(mi,mi)
Explicit motion model(EMM)
在这里插入图片描述
​ 显示运动模型。如上图所示,它通过逐通道的互相关操作(*)来生成像素级别的响应图 r i \mathbf{r}_{i} ri。在SiamMOT中,这个操作用目标特征图 f R i t \mathbf {f}_{R_{i}}^{t} fRit和搜索图像特征图 f S i t + δ \mathbf{f}_{S_{i}}^{t+\delta} fSit+δ 的每个位置计算相关性,得到 r i = f S i t + δ ∗ f R i t r_{i}=f_{S_{i}}^{t+δ} \ast f_{R_{i}}^{t} ri=fSit+δfRit,每个 r i [ k , : , : ] \mathbf{r}_{i}[k,:,:] ri[k,:,:]表示一个相似程度。

​ EMM使用全卷积网络 ψ \psi ψ来检测 r i \mathbf {r}_{i} ri中匹配的目标。详细来看, ψ \psi ψ预测一个密集的可见置信度图 v i \mathbf {v}_{i} vi来表示每个像素包含目标图像的可能性,再预测一个密集的定位图 p i \mathbf{p}_{i} pi来编码该像素位置到框的左上角和右下角的偏移量。

​ 因此,处在 ( x , y ) (x,y) (x,y)的目标可以通过 R ( p ( x , y ) ) = [ x − l , y − t , x + r , y + b ] \mathcal{R}(\mathbf{p}(x, y))=[x-l, y-t, x+r, y+b] R(p(x,y))=[xl,yt,x+r,y+b]解出边界框,其中 p ( x , y ) = [ l , t , r , b ] \mathbf{p}(x, y)=[l, t, r, b] p(x,y)=[l,t,r,b](两个角点的偏移)。最终,特征图可以通过下面的式子解码,此处的 ⊙ \odot 表示逐元素相乘, η i \boldsymbol{\eta}_{i} ηi是一个惩罚图,为每一个候选区域设置非负的惩罚得分。
KaTeX parse error: No such environment: equation at position 8: \begin{̲e̲q̲u̲a̲t̲i̲o̲n̲}̲ \begin{aligned…
​ 惩罚得分的计算公式如下:
η i ( x , y ) = λ C + ( 1 − λ ) S ( R ( p ( x , y ) ) , R i t ) \boldsymbol{\eta}_{i}(x,y) = \lambda \mathbf {C} +(1-\lambda)\mathbf {S}(\mathcal{R}(\mathbf{p}(x, y)),R_{i}^{t}) ηi(x,y)=λC+(1λ)S(R(p(x,y)),Rit)
​ 其中 λ \lambda λ是一个加权系数(0 ≤ λ ≤ 1),$ \mathcal{C} 则 是 关 于 目 标 区 域 则是关于目标区域 \mathcal{R}{i}^{t} 几 何 中 心 的 余 弦 窗 口 函 数 , 几何中心的余弦窗口函数, \mathcal{S} 是 关 于 候 选 区 域 是关于候选区域 \mathbf{p}(x, y) 和 和 R{i}^{t}$ 之间的相对尺度变化的高斯函数。惩罚图$ \boldsymbol{\eta}_{i}$ 的引入是为了阻止跟踪过程中剧烈的运动。

​ 考虑 ( R i t , S i t + δ , R i t + δ ) \left(R_{i}^{t}, S_{i}^{t+\delta}, R_{i}^{t+\delta}\right) (Rit,Sit+δ,Rit+δ),EMM的训练损失如下式子所示。其中$ (x,y) 表 示 表示 S_{i}^{t+\delta} 中 的 所 有 有 效 位 置 , 中的所有有效位置, \ell_{r e q} 是 用 于 回 归 的 I o U 损 失 , 是用于回归的IoU损失, IoU\ell_{\text {focal}} 是 用 于 分 类 的 损 失 。 是用于分类的损失。 \mathbf{v}{i}^{*}$ 和$\mathbf{p}{i}^{} 是 像 素 级 的 G T 图 。 如 果 是像素级的GT图。如果 GT (x,y) 在 在 R_{i}^{ t+\delta} 的 范 围 内 那 么 的范围内那么 \mathbf{v}_{i}^{*}(x, y)=1$,否则为0;

p i ∗ ( x , y ) = [ x − x 0 ∗ , y − y 0 ∗ , x 1 ∗ − x , y 1 ∗ − y ] \mathbf{p}_{i}^{*}(x, y)=\left[x-x_{0}^{*}, y-y_{0}^{*}, x_{1}^{*}-\right. \left.x, y_{1}^{*}-y\right] pi(x,y)=[xx0,yy0,x1x,y1y],其中的 ( x 0 ∗ , y 0 ∗ ) \left(x_{0}^{*}, y_{0}^{*}\right) (x0,y0) ( x 1 ∗ , y 1 ∗ ) \left(x_{1}^{*}, y_{1}^{*}\right) (x1,y1)表示GT框的两个角点的坐标。此外,作者还修改了回归任务,添加了一个 w ( x , y ) w(x, y) w(x,y)表示中心度,有 w ( x , y ) = min ⁡ ( x − x 0 , x 1 − x ) max ⁡ ( x − x 0 , x 1 − x ) ⋅ min ⁡ ( y − y 0 , y 1 − y ) max ⁡ ( y − y 0 , y 1 − y ) w(x, y)=\sqrt{\frac{\min \left(x-x_{0}, x_{1}-x\right)}{\max \left(x-x_{0}, x_{1}-x\right)} \cdot \frac{\min \left(y-y_{0}, y_{1}-y\right)}{\max \left(y-y_{0}, y_{1}-y\right)}} w(x,y)=max(xx0,x1x)min(xx0,x1x)max(yy0,y1y)min(yy0,y1y) .
L = ∑ x , y ℓ focal ( v i ( x , y ) , v i ∗ ( x , y ) ) + ∑ x , y 1 [ v i ∗ ( x , y ) ] ( w ( x , y ) ⋅ ℓ reg ( p i ( x , y ) , p i ∗ ( x , y ) ) ) L = \sum_{x,y} \ell_{\text {focal}}(v_{i}(x,y),v_{i}^{\ast}(x,y))+\sum_{x,y}1[v_{i}^{\ast}(x,y)](w(x,y)\cdot \ell_{\text {reg}} (p_{i}(x,y),p_{i}^{\ast}(x,y))) L=x,yfocal(vi(x,y),vi(x,y))+x,y1[vi(x,y)](w(x,y)reg(pi(x,y),pi(x,y)))
​ 相比于IMM,EMM有两点改进。第一,它使用通道分离的相关性操作来允许网络显式学习相邻帧上同一个目标的相似性;第二,它采用一个细粒度的像素级监督,这有效减少了错误匹配.

Traing and Interence

​ 主要就是在Faster R-CNN的基础上添加了一个运动预测损失.
ℓ = ℓ r p n + ℓ detect  + ℓ motion  \ell=\ell_{r p n}+\ell_{\text {detect }}+\ell_{\text {motion }} =rpn+detect +motion 

  • 首先就是对检测子网络中输出的 R i t + δ R_{i}^{t+\delta} Rit+δ和siamese跟踪器输出的 R ~ i t + δ \tilde{R}_{i}^{t+\delta} R~it+δ独立的使用标准的基于IOU的NMS运算。
  • 使用空间匹配特征将 R i t + δ R_{i}^{t+\delta} Rit+δ, R ~ i t + δ \tilde{R}_{i}^{t+\delta} R~it+δ合并。检测在空间上匹配IOU>0.5到任何跟踪的目标框将会被移除
  • 若轨迹可见置信度 v i t > α v_{i}^{t}>\alpha vit>α,则轨迹就是连续的。如果存在非匹配检测,并且置信度高于 β \beta β,则产生新的轨迹,若连续的KaTeX parse error: Undefined control sequence: \matchcal at position 1: \̲m̲a̲t̲c̲h̲c̲a̲l̲ ̲{T}帧的可信度小于 α \alpha α,该轨迹就会被删除。

Experiment
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: SiamMOT是一种基于Siamese网络的多目标跟踪算法,它可以同时跟踪多个目标,并且在速度和准确度方面都有很好的表现。该算法使用了深度学习技术,通过学习目标的特征来进行跟踪,具有很强的鲁棒性和适应性。在实际应用中,SiamMOT已经被广泛应用于视频监控、自动驾驶等领域。 ### 回答2: SiamMOT是指SiamMOT算法,是一种基于SiamRPN++和深度学习的多目标追踪算法。它主要通过在目标检测的基础上,根据目标的视觉特征进行跟踪,实现对多个目标同时进行跟踪的功能。 SiamMOT算法采用Siamese网络结构,该网络结构以两个相同的子网络组成,用于学习目标的特征。子网络通过共享权重,实现对同一个目标的不同视角的特征提取。通过特征提取,SiamMOT能够把同一目标的特征映射到相同的空间中,从而实现目标跟踪。 SiamMOT算法主要包含三个主要的步骤:第一步是目标检测,利用目标检测算法进行目标的初步识别,获取目标的位置和尺寸信息;第二步是特征提取,通过Siamese网络提取目标的特征,将不同视角下的特征映射到相同的空间中;第三步是目标跟踪,根据目标的特征匹配策略,利用目标的运动信息和外观特征进行目标的连续跟踪。 SiamMOT算法具有高效、准确的特点,能够在复杂背景下跟踪多个目标,并且能够实现实时运行。它在视频监控、自动驾驶、行人跟踪等领域有着广泛的应用前景,为目标跟踪研究提供了有效的方法和思路。 ### 回答3: SiamMot是一种基于SiamNet的多目标跟踪算法。SiamNet是一种基于孪生网络的方式,用于目标跟踪任务。在SiamMot中,孪生网络首先用于提取目标的特征向量。这些特征向量能够捕捉到目标的关键信息,例如目标的外观和运动。然后,通过计算特征向量之间的相似度,可以将目标在连续帧中进行匹配。 SiamMot采用了一种离线训练和在线跟踪的方式。在训练阶段,使用大量的视频序列进行训练,以学习目标的特征和运动模式。在跟踪阶段,根据目标在第一帧中的位置,使用SiamNet提取目标的特征向量,并与后续帧中的特征进行匹配。通过计算特征之间的相似度,可以确定目标在连续帧中的位置。 相比传统的多目标跟踪算法,SiamMot具有许多优势。首先,它能够在复杂的场景中实现准确的目标跟踪。其次,SiamMot在目标外观变化和运动模式变化的情况下都具有较好的适应性。此外,SiamMot具有较高的实时性能,能够处理高帧率的视频流。 总之,SiamMot是一种基于SiamNet的多目标跟踪算法,通过提取目标的特征向量,并计算特征之间的相似度,实现准确且稳定的目标跟踪。这种算法在目标追踪领域具有广泛的应用前景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值