RepPoints: Point Set Representation for Object Detection
CornerNet论文阅读整理-CSDN博客
可变形卷积(Deformable Conv)原理解析与torch代码实现-CSDN博客
RepPoints(本质是可变形卷积DCN)再理解-CSDN博客
简介:
时间:2019
会议:ICCV
作者:Ze Yang,Shaohui Liu,Han Hu,Liwei Wang,Stephen Lin
摘要:
①边界框检测提供粗略定位
②提出RepPoints,更精细并且可以自动排列自身,无需锚框进行采样
③与当前最先进的基于锚框检测一样具有精确性
创新点:
①基于点集的物体表示方法(RepPoints)
②RepPoints提供了比边界框更细粒度的物体定位信息和特征提取
③不需要使用锚点来采样边界框空间
对比:
对比Anchor-Free:
在二阶段目标检测中,候选框通过RPN网络产生proposal;而单阶段网络中,通过在特定特征图上的每个位置产生不同大小和宽高比的Anchor
Anchor-Free目标检测是一种不依赖于锚点的目标检测方法,比如通过确定物体中心点和四条边框的预测,主要分为基于多关键点联合表达和基于单中心点预测
基于多关键点联合表达:CornerNet、ExtremeNet、CenterNet、RepPoints
基于单中心点预测:Objects as Points、CSP、FCOS
对比CornerNet:
CornerNet将一个目标检测视为一对关键点,即边界框的左上角和右下角。
使用单个卷积网络来预测同一目标类别的所有实例的所有左上角的热力图,右下角的热图以及每个检测到的Corner的嵌入向量。
流程:
①使用Hourglass Network作为其主干网络,提取特征
②通过CNN预测目标边界框的左上角和右下角,网络输出两组heatmaps,一组用于预测左上角角点,另一组用于预测右下角角点,每个热图的大小是C×Hsan
③引入角点池化帮助网络更好地定位边界框的角点
④为角点预测一个嵌入向量,使得来自同一对象的两个角点的嵌入向量之间的距离很小
⑤预测偏移量以稍微调整角点的位置
⑥后处理
⑦关键点配对,预测属于同一对象的角点的相似嵌入向量,生成目标边界框
背景:
①边界框提供对象的粗略定位
②边界框中提取的特征会受到背景内容或包含很少语义信息的无信息前景区域的影响
RepPoints:
RepPoints 是一组点,它们学习以限制对象空间范围并指示语义上重要的局部区域的方式自适应地将自己定位在对象上,训练由对象定位和识别目标共同驱动
目标检测问题的边界框:
RepPoints与可变形卷积结合,自然地与RepPoints对齐
对齐:模型的预测特征和真实特征相匹配
可变形卷积:
可变形卷积的采样位置更符合物体本身的形状和尺寸,可变性卷积顶层特征图中最终的特征点学习了物体的整体特征,相比原始的卷积它更能排除背景噪声的干扰,得到更有用的信息
原理:
基于一个网络学习偏移量,使卷积核在input feature map的采样点发生偏移,为每个点引入一个偏移量,偏移量使由输入特征图与另一个卷积生成的,而这个偏移量一般为小数,并不对应输入特征图上实际的像素点,因此需要使用双线性插值来得到偏移后的像素:
可变形卷积示意图:
offsets偏移是额外使用一个卷积来生成的,与最终要做卷积操作的卷积并非同一个
N为卷积核区域大小,若3*3大小的卷积核,N=9
绿色为卷积学习偏移的过程,其中offset field的通道大小为2N,表示卷积核学习的x,y轴方向
①一个output feature map上的点对应到input feature map上的卷积采样区域大小为K*K,按照可变形卷积的操作,这K*K区域的每一个卷积采样点都要学习一个偏离量offset,而offset是用坐标表示的,所以一个output要学习2*K*K个参数。
假设一个output大小为H*W,所以一共要学习2*K*K*H*W个参数。即上图的offset field(N=K*K),其维度为B*2*K*K*H*W,其中B代表batch_size
②假设input feature map的维度为B*C*H*W,一个batch内的特征图(一共C个)共用一个offset field,即一个batch内的每张特征图用到的偏移量是一样的
③可变形卷积不改变input feature map的尺寸,所以output feature map也为H x W
现代物体探测器中的边界框:
RepPoints 可用于替换模型对象检测器所有阶段中的边界框表示,从而产生更有效的新对象检测器
锚点被中心点替代
用于对象检测的其他表示:
现有的方法如CornerNet都是自下而上的方式构建,而RepPoints是自上而下的方式构建
自下而上:从图像底层向上构建,由点到图
自上而下:从输入图像/对象特征中的高层向下提取细节信息
RepPoints 可以自动学习极值点和关键语义点,无需超出真实边界框的监督
物体识别中的变形建模:
RepPoints采用自上而下的变形建模方法
可变形卷积和可变形 RoI 池化方法都只是为了改进特征提取而设计的
RepPoints代表点表示:
边界框表示:
边界框编码,x、y表示中心点,w、h表示宽度和高度
多级物体探测器的对象表示角色通过以下管道表示:
使用锚点生成候选区域,通过边界框回归调整提高区域检测准确性
一阶段通过置信度得分进行细化,二阶段通过ROI-pooling和ROI-Align
边界框回归,将预测的4维回归向量映射到当前的proposal上,得到更精确的边界框:
给定对象的真实边界框,边界框回归的目标是使(预测值)和(真实值)尽可能接近
将和之间的距离作为计算损失函数的学习向量,使用L1平滑损失函数
RepPoints:
使用自适应样本点进行建模:
细化表示:
表示新样本对于旧样本的偏移
将 RepPoint 转换为边界框:
使用预定义的转换函数:
为对象的RepPoints, 表示伪框
转换函数的三种形式:
学习RepPoints是由对象定位损失和对象识别损失共同驱动的。为了计算目标定位损失,首先使用变换函数将RepPoints转换为伪盒,然后计算转换后的伪盒与背景真实边界盒之间的差值。
使用左上点和右下点之间的平滑L1距离来表示定位损失。
RPDet无锚检测器:
RPDet是一种基于RepPoints的无锚点(anchor-free)目标检测模型,它利用RepPoints作为其基本的对象表示方法
在多级管道中,对象表示的演变如下:
RPDet基于可变形卷积的两个识别阶段构成:
流程:
①图像通过FPN骨干网络提取多尺度特征
②通过第一层可形变卷积,学习到更加灵活的特征表示,以适应不同形状和姿态的物体
③可形变卷积层预测一个偏移场,用于调整卷积核的位置,更准确地捕捉物体的边界
④通过偏移场,网络预测第一组RepPoints,代表物体的初步定位
⑤第一组RepPoints通过点损失函数优化,确保准确定位物体边界
⑥第一组RepPoints的偏移信息会用于第二层可形变卷积
⑦第二层可形变卷积输出第二组RepPoints,提供更精细的物体定位
⑧第二组RepPoints同样会通过点损失函数进行优化
⑨网络会输出一个分类得分图用于预测物体的类别
特点:
使用两个连续的网络来计算偏移量
使用中心点作为对象的初始表示
backbone:
本地化/类别目标分配:
两个定位阶段:
通过从对象中心点假设(feature map bin)细化生成第一组 RepPoints
通过对第一组 RepPoints 进行细化来生成第二组 RepPoints
positive object:
feature map bin:指的是特征映射(feature map)上的一个单元格或区域
一阶段:
①该feature map bin的金字塔级别等于GT object的对数尺度
②该GT object中心点的投影位于该feature map bin内
二阶段:
其诱导的伪框与GT object有足够的重叠且它们的交集大于 0.5,则第一个 RepPoints 为正
实验与结论:
在MS-COCO检测基准上进行实验的设置
总结了RepPoints作为一种新的物体检测表示方法的贡献,并强调了学习更丰富、更自然的物体表示对于物体检测领域的重要性