CVPR2020 面向密集多角度物体检测的动态修正网络(DRN)
阅读原文时间:2023年07月13日阅读:3

论文链接:https://arxiv.org/pdf/2005.09973.pdf

code:https://github.com/Anymake/DRN_CVPR2020

文章概要:

  本文是中科院自动化所、腾讯优图、快手科技联合发表的工作,收录于CVPR2020。本文针对定向和密集场景中的目标检测任务提出了动态优化网络,可以说是目标检测在特定场景下的应用与优化。本文主要创新点在于:
  1、提出了一种新颖的可自适应调整目标感受野的特征选择模块FSM。
  2、提出了两种动态优化的检测头(DRH-C/R),分别对分类和回归任务进行动态优化,实现对样本唯一性和特殊性的建模。

本文动机:

密集多角度物体检测面临的挑战:
  1、神经元的感受野全部沿轴排列且具有相同的形状,但物体通常具有不同的形状并沿不同的方向排列;
  2、检测模型通常利用通用知识进行训练,但在测试阶段可能不能很好的处理特定的物体;
  3、有限的数据集限制了密集多角度目标检测任务的发展。

  针对问题1和问题2,本文分别提出了特征选择模块FSM和动态优化head(DRH-C/R);针对问题3,本文收集了一个扩展的且带有完整注释的数据集SKU110K-R,该数据集基于SKU110K数据集的定向边界框进行重新标记。

网络整体结构:

本文以CenterNet(https://arxiv.org/abs/1904.07850)作为baseline,CenterNet算法将目标检测问题变成了一个关键点的估计问题,通过预测物体的中心点位置及对应物体的长与宽,实现了当前检测精度与速度最好的权衡。为了预测有向的边界框(oriented bounding boxes),添加了一个分支回归边界框的方向。有向边界框定义如下:
$$\begin{split}
&P_{lt}=M_r[-w/2,-h/2]^T+[c_x+\delta_x,c_y+\delta_y]^T,\\
&P_{lt}=M_r[+w/2,-h/2]^T+[c_x+\delta_x,c_y+\delta_y]^T,\\
&P_{lt}=M_r[-w/2,+h/2]^T+[c_x+\delta_x,c_y+\delta_y]^T,\\
&P_{lt}=M_r[+w/2,+h/2]^T+[c_x+\delta_x,c_y+\delta_y]^T,
\end{split}\tag{1}
$$
参数说明:$(c_x,c_y)$和$(\delta_x,\delta_y)$表示中心点和预测的偏移量。$(w,h)$是预测的尺寸,$M_r$表示旋转矩阵,$P_{lt},P_{lb},P_{rt},P_{rb}$表示四个角点。遵循CenterNet的回归任务,文章使用$L_1$损失进行旋转角度的回归:
$$L_{ang}=\frac{1}{N}\sum_{k=1}^N|\theta-\hat{\theta}|,\tag{2}$$
其中$\theta$和$\hat{\theta}$分别表示旋转角度的目标值和预测值。$N$表示正样本的数量,总体的训练目标函数为:
$$L_{det}=L_k+\lambda_{size}L_{size}+\lambda_{off}L_{off}+\lambda_{ang}L_{ang},\tag{3}$$
其中$L_k,L_{size},L_{off},L_{ang}$分别表示中心点类别损失、尺度回归损失、偏置损失、角度回归损失,$\lambda_{size},\lambda_{off},\lambda_{ang}$为权重系数,用于平衡各部分损失。

特征选择模块(Feature Selection Module)

  为了缓解各种物体与轴对齐的感受野之间的不匹配问题,作者提出了一种特征选择模块(FSM),用以自适应的聚合不同的核大小、形状(长宽比)、方向所提取的信息。 

FSM工作流程:
  1、给定初始特征图$X\in\R^{H\times W\times C}$,经过$1\times 1$Conv、BN、Relu输出$X_c\in\R^{H\times W\times C'}$;
  2、利用多个不同尺寸的的RCLs从$X_c$提取多个特征。其中每个RCl负责不同的感受野区域;
  3、利用注意力机制融合不同的特征。
  作者提到RCL的灵感来源于DCN,fig 4.展示了可变形卷积的概括了各种尺度变换、比例变换和旋转变换。同时作者在此基础上,引入了角度信息$\theta$对卷积核的方向进行编码,把之前标准的卷积核变成带有参数$\theta$的旋转卷积核,这种方式缓解了各种物体与轴对齐的感受野之间的不匹配问题,使得卷积核能更加适应旋转目标信息的提取。基于上述内容,我觉得RCL更像是DCN和ROI Trans(https://arxiv.org/pdf/1812.00155.pdf)思想的结合,但是ROI Trans是对ROI进行旋转。

Figure 4.正常卷积和可变形卷积的采样方式

FSM的数学描述:  1、遵循DCN的表达形式,本文依然使用$\mathcal{R}$表示规则网格的感受野。对于$3\times 3$的核,有:
$$\mathcal{R}=\lbrace(-1,-1),(-1,0),…,(0,1),(1,1)\rbrace,\tag{4}$$
  2、给定第i个位置预定义的偏移$p_i\in\mathcal{R}$和学习到的角度参数$\theta$,学习到的偏移量为:
$$\delta_{p_i}=M_r(\theta)\cdot p_i-p_i\tag{5}$$
  3、对于输出特征图$X_i$中的每个位置$p_0$,有:
$$X_i(p_0)=\sum_{p_n\in\mathcal{R}}\cdot X_c(p_0+p_n+\delta p_n),\tag{6}$$
  4、为了增强神经元感受野的自适应能力,本文采用注意力机制并与point-wise的方式融合特征。$X_i$首先经过一个注意力模块(由$1\times 1$卷积核、BN和RELU组成)得到注意力热图$A_i\in\bm{R}^{H\times W\times 1}(i\in1,2,3)$,之后归一化选择权重,
$$A'_i=SoftMax([A_1,A_2,A_3]).\tag{7}$$

  5、特征融合并输出特征图$Y$:
$$Y=\sum_{i}A'_i\cdot X_i,\tag{8}$$
其中$Y\in\mathbb{R}^{H\times W\times C}$,需要注意的是FSM可以扩展到更多的分支,文中3分支的结构只是其中一个例子。

动态优化检测head(Dynamic Refinement Head)

  文章提到,在标准的机器学习框架中,人们通过大量标注的数据训练模型。在推理阶段,将测试样例输入参数固定的模型以获得预测的结果。这种训练好的模型只能从训练集学到的普遍性知识做出响应而忽略每个样例(sample)的唯一性,会产生预测灵活性差的问题。figure 1.对本文提到的问题进行了说明。离边界较近的点很容易发生误识别。为了增强模型预测的灵活性,提出了DRH(DRH-C/R,分别用于分类和回归任务)。DRH对每个输入对象的特殊性进行建模。

**Dynamic refinement for classification
**

  • 给定输入$F_in\in\mathcal{R}^{H\times W\times C}$,首先获得目标感知(object-aware)的滤波器$K_c$:
    $$K_c=G_c(F_{in};\phi),\tag{9}$$
    其中$G_c$表示动态滤波生成器,$\phi$表示$G_c$的参数集。$K_c$表示从样本中学习到的核权重。
  • $F_{mid}$和$K_c$进行卷积操作得到细化的特征$F_{\Delta}$:
    $$F_{\Delta}=F_{mid}\ast K_c,\tag{10}$$
    $F_{mid}$为$F_in$经过Conv-BN-ReLu处理得到。
  • 最后利用公式$(11)$得到分类预测$H_c$:
    $$H_c=C((1+\xi\cdot F_{\Delta}/||F_{\Delta}||)\cdot F_mid;\Phi),\tag{11}$$
    $C(\cdot;\Phi)$表示参数为$\Phi$的分类器。$\xi$是控制细化范围的常数因子。

Dynamic refinement for regression

  • 给定输入$F_{in}\in\mathcal{R}^{H\times W\times C}$,首先通过$G_r(\cdot;\psi)$获得$K_r$,之后通过类似公式$(10)$的操作获得$H_{\Delta}$,最后计算得到目标感知的回归结果$H_r$:
    $$\begin{split}
    &H_b=\mathcal{R}(F_{mid};\Psi),\\
    &H_r=(1+\epsilon\cdot tanh(H_{\Delta}))\cdot H_b,
    \end{split}\tag{12}
    $$
    $\mathcal{R}(\cdot;\Psi)$表示参数为$\Psi$的回归器。细化因子通过$tanh$限制在$[-1,1]$范围内变化。$\epsilon$表示防止模型被过大细化而混淆的控制因子,设置为0.1。

实验

  • 对比实验

消融实验

  • 定性分析

**总结
**  本文总结了现有的有向密集目标检测任务存在的问题,提出了相应的解决方法。文章逻辑结构清晰,实验充分。我觉得文章中提到的物体与轴对齐的感受野不匹配问题就是特征不对齐问题,细化模块本质上就是学习一个映射函数,该映射函数能根据输入特征得到动态的滤波器。

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章