登录    注册      
    
  

News Message

精度超越Centernet和YOLO3的网络:SaccadeNet



精度超越Centernet和YOLO3的网络:SaccadeNet





1 引言

 

  • 思路来源:

大多数现有的目标检测算法会先关注某些目标区域,然后预测目标位置。但是,神经科学家发现,人类不会以固定的稳定性注视场景。取而代之的是,人眼四处走动,定位信息丰富的部分以了解目标的位置。这种主动的感知运动过程称为saccade。

受此机制的启发,这篇文章提出了一种称为SaccadeNet兼顾效率和精度的目标检测器。它包含四个主要模块:

  • Center 注意力模块

  • Corner 注意力模块

  • Attn-Trans 注意力迁移模块

  • Aggregation-Attn 聚合注意力模块

这使它可以处理不同的信息目标关键点,并预测目标的位置,从粗到精。Corner注意力模块仅在训练过程中使用,以提取更多有用的corner特征,从而提高性能。

在MS COCO数据集上,该网络在28 FPS时达到40.4 %mAP的性能,在118 FPS时达到30.5 %mAP的性能。在所有实时目标探测器中,SaccadeNet达到了最佳的检测性能,这证明了所提出的检测机制的有效性。

 

2 SaccadeNet

 

人的眼睛会拿起信息来理解物体的位置,而不是注视物体的每个细节,这使其变得快速而准确。

为了在速度和精度之间取得平衡,作者在目标中心点之上使用了四个目标边界框角点作为SaccadeNet中的信息关键点,因为它自然地定义了边界框的位置。

本节将分别介绍SaccadeNet的四个主要模块:

 

2.1. 中心注意力模块(Center-Attn)

Center-attn为SaccadeNet提供了目标中心的第一个视图,并预测目标中心的关键点。它以CNN主干的特征作为输入,预测中心热度图。中心热度图用于估计图像中所有目标的类别和中心位置在中心热图中通道的数量是类别的数量。图2显示了Center-attn及其输出。在Center-attn中,它包含两个卷积层,这种2-convolutional结构称为head module,它是构建SaccadeNet其它模块的基础组件

我们使用高斯热图作为Ground Truth(GT)。关键点的真值热图并不是定义为0或1,因为目标关键点附近的位置比远处的位置受到的惩罚更少。假设关键点位于Xk位置,则GT热图上X位置的值定义为

 σ设置为半径的1/3,该半径由目标的大小确定,以确保区域内的所有位置都可以生成一个边界框,该边界框至少具有GT描述。我们遵循先前的工作将t设置为0.3。

另外高斯热图中采用了如下式的focal loss:

 

2.2. 注意力转移模块(Attn-Trans)

Attn-Trans可以预测深度特征图中所有位置的角点。在得到每个中心(i,j)的边界框的宽度和高度后,就可以计算出相应的角点:

在训练中,采用L1回归损失。通过使用Center-attn和Attn-Trans, SaccadeNet可以生成边界粗糙的目标检测

 

2.3. 聚合注意力模块(Aggregation-Attn)

Aggregation-Attn是用来再次关注目标中心和边界框角点以预测一个比之前更精确的位置。如图2所示,它使用双线性插值从角点和中心关键点聚集CNN特征,并输出更精确的目标边界框。为了获得更准确的边界,Aggregation-Attn是必不可少的

Aggregation-Attn是一个轻量级的目标边界细化模块。设wi,j,hi,j表示(i,j)处的宽度和高度预测。然后可以计算出以(i,j)为中心相应的左上角、右上角、左下角、右下角坐标。

双线性采样有助于下采样的特征图,Aggregation-Attn的工作流程分为以下几步:

  • 首先,Aggregation-Attn从Attn-Trans、Center-attn的输出中提取角和中心。

  • 其次,通过双线性插值从主干输出中提取特征。Aggregation-Attn的结构是一个改进head的模块,改变了第一个卷积层的输入,让它把物体的中心和角点的特征作为输入。

  • 最后,Aggregation-Attn将残差的off sets进行回归,通过融合角点和中心的特征来细化物体的边界。

Aggregation-Attn的输出由剩余宽度和剩余高度组成。

 

2.4. 角点注意力模块(Corner -Attn)

为了提取有用的角点特征,作者提出了一个辅助的Corner-Attn分支(仅在训练中)来强制CNN主干学习有区别的角点特征。如图2所示,Corner-Attn使用一个head模块来处理特征和输出4通道热图,包括左上角、右上角、左下角、右下角。

请注意,此分支仅在训练期间使用,因此它是提高推理准确性的free-lanch。角点信息的训练也基于focal loss和高斯热图。

 

2.5. 与其他方法的比较

SaccadeNet最主要贡献:解决了存在于基于边缘关键点(edge-keypoint)的检测器中缺乏整体感知的问题,以及基于中心关键点(center-keypoint)的检测器中缺少局部细节的问题。

  • 基于边键点的检测器

通过整合边键点来推断物体,比如角点或者extreme keypoints。他们首先预测边缘关键点,然后利用分组算法生成目标proposals。有两个可能的问题会使基于边键点的模型无法对整体信息进行建模:

  • 由于大多数基于角键点的检测器仍然需要中心的特征来装配角点,因此角键点特征编码的整体信息较少,这可能导致基于角键点的检测器无法对整体信息进行建模。

  • 角点通常位于背景像素处,其编码的信息可能比中心关键点少。

虽然SaccadeNet也利用了角点来估计box,但是它仍然能够通过直接从中心关键点推断box来获取全局。

  • 基于中心关键点的检测器

从中心点提取目标。这种方式是输出中心热图,直接回归边界。然而,这也会带来两个问题:

  • 中心点可能远离目标边界,所以在某些情况下,他们可能无法估计准确的边界,特别是对于大目标(如图3)。

  • 角关键点自然靠近边界,所以它可能编码更多局部的信息。缺少边点可能会对基于中心关键点的检测器造成坏影响。

SaccadeNet利用角关键点来缓解这一问题,从而能够估计出更准确的边界。


 

3 实验及结果


实验在2个数据集上进行,分别是PASCAL VOC 2012和MS COCO。

3.1. Efficiency Study 效率比较

3.2. 消融实验

3.2.1 Benefits of Aggregation-Attn and Corner-Attn

 

3.2.2 Does Iterative Refinement Help

 

3.2.3 Does Aggregation-Attn also Help Classification

 


 

1 引言

 

  • 思路来源:

大多数现有的目标检测算法会先关注某些目标区域,然后预测目标位置。但是,神经科学家发现,人类不会以固定的稳定性注视场景。取而代之的是,人眼四处走动,定位信息丰富的部分以了解目标的位置。这种主动的感知运动过程称为saccade。

受此机制的启发,这篇文章提出了一种称为SaccadeNet兼顾效率和精度的目标检测器。它包含四个主要模块:

  • Center 注意力模块

  • Corner 注意力模块

  • Attn-Trans 注意力迁移模块

  • Aggregation-Attn 聚合注意力模块

这使它可以处理不同的信息目标关键点,并预测目标的位置,从粗到精。Corner注意力模块仅在训练过程中使用,以提取更多有用的corner特征,从而提高性能。

在MS COCO数据集上,该网络在28 FPS时达到40.4 %mAP的性能,在118 FPS时达到30.5 %mAP的性能。在所有实时目标探测器中,SaccadeNet达到了最佳的检测性能,这证明了所提出的检测机制的有效性。

 

2 SaccadeNet

 

人的眼睛会拿起信息来理解物体的位置,而不是注视物体的每个细节,这使其变得快速而准确。

为了在速度和精度之间取得平衡,作者在目标中心点之上使用了四个目标边界框角点作为SaccadeNet中的信息关键点,因为它自然地定义了边界框的位置。

本节将分别介绍SaccadeNet的四个主要模块:

 

2.1. 中心注意力模块(Center-Attn)

Center-attn为SaccadeNet提供了目标中心的第一个视图,并预测目标中心的关键点。它以CNN主干的特征作为输入,预测中心热度图。中心热度图用于估计图像中所有目标的类别和中心位置在中心热图中通道的数量是类别的数量。图2显示了Center-attn及其输出。在Center-attn中,它包含两个卷积层,这种2-convolutional结构称为head module,它是构建SaccadeNet其它模块的基础组件

我们使用高斯热图作为Ground Truth(GT)。关键点的真值热图并不是定义为0或1,因为目标关键点附近的位置比远处的位置受到的惩罚更少。假设关键点位于Xk位置,则GT热图上X位置的值定义为

 σ设置为半径的1/3,该半径由目标的大小确定,以确保区域内的所有位置都可以生成一个边界框,该边界框至少具有GT描述。我们遵循先前的工作将t设置为0.3。

另外高斯热图中采用了如下式的focal loss:

 

2.2. 注意力转移模块(Attn-Trans)

Attn-Trans可以预测深度特征图中所有位置的角点。在得到每个中心(i,j)的边界框的宽度和高度后,就可以计算出相应的角点:

在训练中,采用L1回归损失。通过使用Center-attn和Attn-Trans, SaccadeNet可以生成边界粗糙的目标检测

 

2.3. 聚合注意力模块(Aggregation-Attn)

Aggregation-Attn是用来再次关注目标中心和边界框角点以预测一个比之前更精确的位置。如图2所示,它使用双线性插值从角点和中心关键点聚集CNN特征,并输出更精确的目标边界框。为了获得更准确的边界,Aggregation-Attn是必不可少的

Aggregation-Attn是一个轻量级的目标边界细化模块。设wi,j,hi,j表示(i,j)处的宽度和高度预测。然后可以计算出以(i,j)为中心相应的左上角、右上角、左下角、右下角坐标。

双线性采样有助于下采样的特征图,Aggregation-Attn的工作流程分为以下几步:

  • 首先,Aggregation-Attn从Attn-Trans、Center-attn的输出中提取角和中心。

  • 其次,通过双线性插值从主干输出中提取特征。Aggregation-Attn的结构是一个改进head的模块,改变了第一个卷积层的输入,让它把物体的中心和角点的特征作为输入。

  • 最后,Aggregation-Attn将残差的off sets进行回归,通过融合角点和中心的特征来细化物体的边界。

Aggregation-Attn的输出由剩余宽度和剩余高度组成。

 

2.4. 角点注意力模块(Corner -Attn)

为了提取有用的角点特征,作者提出了一个辅助的Corner-Attn分支(仅在训练中)来强制CNN主干学习有区别的角点特征。如图2所示,Corner-Attn使用一个head模块来处理特征和输出4通道热图,包括左上角、右上角、左下角、右下角。

请注意,此分支仅在训练期间使用,因此它是提高推理准确性的free-lanch。角点信息的训练也基于focal loss和高斯热图。

 

2.5. 与其他方法的比较

SaccadeNet最主要贡献:解决了存在于基于边缘关键点(edge-keypoint)的检测器中缺乏整体感知的问题,以及基于中心关键点(center-keypoint)的检测器中缺少局部细节的问题。

  • 基于边键点的检测器

通过整合边键点来推断物体,比如角点或者extreme keypoints。他们首先预测边缘关键点,然后利用分组算法生成目标proposals。有两个可能的问题会使基于边键点的模型无法对整体信息进行建模:

  • 由于大多数基于角键点的检测器仍然需要中心的特征来装配角点,因此角键点特征编码的整体信息较少,这可能导致基于角键点的检测器无法对整体信息进行建模。

  • 角点通常位于背景像素处,其编码的信息可能比中心关键点少。

虽然SaccadeNet也利用了角点来估计box,但是它仍然能够通过直接从中心关键点推断box来获取全局。

  • 基于中心关键点的检测器

从中心点提取目标。这种方式是输出中心热图,直接回归边界。然而,这也会带来两个问题:

  • 中心点可能远离目标边界,所以在某些情况下,他们可能无法估计准确的边界,特别是对于大目标(如图3)。

  • 角关键点自然靠近边界,所以它可能编码更多局部的信息。缺少边点可能会对基于中心关键点的检测器造成坏影响。

SaccadeNet利用角关键点来缓解这一问题,从而能够估计出更准确的边界。


 

3 实验及结果


实验在2个数据集上进行,分别是PASCAL VOC 2012和MS COCO。

3.1. Efficiency Study 效率比较

3.2. 消融实验

3.2.1 Benefits of Aggregation-Attn and Corner-Attn

 

3.2.2 Does Iterative Refinement Help

 

3.2.3 Does Aggregation-Attn also Help Classification

 


 



Share Http URL:  http://www.wittx.cn/get_news_message.do?new_id=489



请输入评论





























Best Last Month