文章目录
Objects as Points
Abstract
Detection将物体识别为轴对齐的框,大多数成功的object detectors会列举出几乎穷尽的潜在物体位置并对每个位置进行分类。这种方法浪费资源、效率低下,并需要额外的后处理。在本文中,我们采用了一种不同的方法。我们将物体建模为一个单独的点——其边界框的中心点。我们的检测器使用keypoint estimation来找到中心点,并回归到所有其他物体属性,例如大小、3D位置、方向。
1. Introduction
目标检测在许多视觉任务中发挥着重要作用,当前的目标检测器通过轴对齐的边界框来表示每个物体,然后,它们将目标检测简化为对大量潜在物体边界框进行图像分类。然而后处理很难进行区分和训练,因此大多数当前的检测器不能进行端到端的训练。
在本文中,我们提供了一种更简单和更高效的替代方法。我们通过物体边界框中心的一个单一点来表示物体然后,通过从中心位置的图像特征直接回归其他属性,目标检测问题变成了一个关键点估计问题。们只需将输入图像输入到一个卷积网络,生成一个heatmap,heatmap中的峰值对应于物体的中心点。每个峰值处的图像特征预测出物体的边界框高度和宽度。
我们CenterNet的简洁性使其能够以非常高的速度运行,使用简单的Resnet18和上采样卷积层网络以142 FPS的速度运行,COCO边界框平均精度(AP)为28.1%。
2. Related work
略过
3. Preliminary
假设 I ∈ RW×H×3 是一个宽度为 W,高度为 H 的输入图像,我们的目标是生成一个关键点热图 Y∈ [0, 1] W/R*H/R*C 其中 R 是输出步幅(output stride),C 是关键点类型的数量。关键点类型可以是人体姿态估计中的 C = 17 个人体关节点,或者是目标检测中的 C = 80 个物体类别。预测值 Y ^ \widehat{Y} Y x,y,c = 1 表示检测到了一个关键点,而 Y ^ \widehat{Y} Y x,y,c = 0 表示背景。我们使用多种不同的fully-convolutional encoder-decoder网络来从图像 I 预测出 Y ^ \widehat{Y} Y :A stacked hourglass network;, upconvolutional residual networks (ResNet);deep layer aggregation (DLA)
对于类别为c的每个真实关键点p ∈ R2 ,我们计算一个低分辨率的等效点 p ~ \widetilde{p} p = p/R。然后,我们使用高斯核函数
Yxyc = exp(- (x- p ~ \widetilde{p} p x)2 + (y- p ~ \widetilde{p} p y)2 / 2σp2)
将所有真实关键点映射到一个热图 Y∈ [0, 1] W/R*H/R*C ,其中σp是一个与物体大小相关的标准差,如果两个相同类别的高斯分布有重叠,我们取 element-wise的最大值。训练使用(focal loss):
其中α和β是超参数,N是图像I中关键点的数量。通过N进行归一化是为了将所有正的focal loss实例归一化为1
为了弥补输出步幅引起的离散化误差,我们还针对每个中心点额外预测一个局部偏移量
O
^
\widehat{O}
O
∈ RW/R×H/R×2 所有类别 c 共享相同的偏移预测。该偏移量使用 L1 损失进行训练
4. Objects as Points
假设 (x(k)1,y(k)1, x(k)2, y(k)2)为类别为 ck的物体 k 的边界框,它的中心点位于
pk=((x(k)1+x(k)2)/2,(y(k)1+y(k)2)/2),我们使用 keypoint估计器
Y
^
\widehat{Y}
Y
来预测所有的中心点,此外,我们还针对每个物体 k 进行尺寸回归,得到物体的尺寸sk=(x(k)2-x(k)1, y(k)2-y(k)1),我们在中心点处使用L1 损失:
我们不对尺度进行归一化,而是直接使用原始像素坐标。相反,我们通过一个常数 λsize 来缩放损失
我们在所有实验中将 λsize 设置为0.1,将 λof f 设置为1。我们使用单个网络来预测关键点
Y
^
\widehat{Y}
Y
、偏移量
O
^
\widehat{O}
O
和尺寸
S
^
\widehat{S}
S
。网络在每个位置预测总共 C + 4 个输出(分别代表其所属类别、偏移量和尺寸)。所有输出共享一个全卷积主干网络。对于每个模态,主干网络的特征经过单独的 3×3 卷积、ReLU 和另一个 1×1 卷积。
From points to bounding boxes
在inference时,我们首先独立地从每个类别的heatmap中提取峰值。我们检测所有值大于或等于其8邻域的响应,并保留前100个峰值。设
P
^
\widehat{P}
P
c 是类别 c 的 n 个检测到的中心点的集合
P
^
\widehat{P}
P
= {(xi, yi)}n i=1。每个keypoint的位置由整数坐标 (xi, yi) 给出。我们使用关键点值
Y
^
\widehat{Y}
Y
xiyic 作为其检测置信度的度量,并在位置处生成一个边界框
其中 (δxi, δyi) =
O
^
\widehat{O}
O
xi,yi 是偏移预测,(wi, hi) =
S
^
\widehat{S}
S
xi,yi 是尺寸预测。所有输出直接从关键点估计中产生,无需基于 IoU 的非极大值抑制 (NMS) 或其他后处理。
4.1. 3D detection && 4.2. Human pose estimation
因为作者不是这两个研究方向,故此两个小章略过
5. Implementation details
我们使用了四种架构进行实验:ResNet-18、ResNet-101 、DLA-34 和 Hourglass-104。我们使用可变形卷积层修改了 ResNet 和 DLA-34,并直接使用 Hourglass 网络。
Hourglass 网络是一种堆叠的Hourglass网络结构,它将输入下采样4倍,然后包含两个连续的Hourglass模块。每个Hourglass模块都是一个对称的5层下采样和上采样的卷积网络,并具有跳跃连接。这个网络相对较大,但通常能够获得最佳的关键点估计性能。
ResNet 网络是在标准残差网络的基础上进行了改进,增加了三个上采样网络,以实现更高分辨率的输出(输出步长为4)。首先,我们将三个上采样层的通道数分别设置为256、128、64,以减少计算量。然后,在每个上采样之前,我们添加了一个3×3的可变形卷积层,通道数分别为256、128、64。上采样的卷积核使用双线性插值进行初始化。
DLA (Deep Layer Aggregation)是一个具有分层跳跃连接的图像分类网络。我们使用DLA的全卷积上采样版本进行密集预测,该版本使用迭代的深度聚合来对称地增加特征图的分辨率。我们还在跳跃连接中引入了来自较低层的可变形卷积。具体而言,我们在每个上采样层的原始卷积操作中替换为3×3的可变形卷积。
Training 输入图像的分辨率设定为512×512,对应输出的分辨率为128×128。数据增强采用了随机翻转、随机缩放(范围在0.6到1.3之间)、裁剪和颜色扰动等技术。优化器使用Adam算法进行整体目标的优化。然而,对于3D估计,不进行数据增强,因为裁剪或缩放会改变3D测量结果。对于ResNet-101和DLA-34,采用了每批128个样本的训练(在8个GPU上),学习率为5e-4,共训练140个epoch,在第90和第120个epoch时将学习率降低10倍。对于Hourglass-104,采用了每批29个样本的训练(在5个GPU上,主GPU的批量大小为4),学习率为2.5e-4,共训练50个epoch,在第40个epoch时将学习率降低10倍。对于目标检测,从ExtremeNet的Hourglass-104模型开始微调,以减少计算量。ResNet-101和DLA-34的下采样层使用ImageNet预训练模型进行初始化,而上采样层则进行随机初始化。
Inference 我们使用三种级别的测试增强:无增强、翻转增强和翻转与多尺度增强(0.5、0.75、1、1.25、1.5)。在翻转增强中,我们在解码边界框之前对网络输出进行平均。在多尺度增强中,我们使用非极大值抑制(NMS)来合并结果。
6. Experiments
略过
7. Conclusion
In summary, we present a new representation for objects: as points. Our CenterNet object detector builds on successful keypoint estimation networks, finds object centers, and regresses to their size. The algorithm is simple, fast, accurate, and end-to-end differentiable without any NMS postprocessing. The idea is general and has broad applications beyond simple two-dimensional detection. CenterNet can estimate a range of additional object properties, such as pose, 3D orientation, depth and extent, in one single forward pass. Our initial experiments are encouraging and open up a new direction for real-time object recognition and related tasks.