Objects as Points
——UT Austin,UC Berkeley
——https://github.com/xingyizhou/CenterNet
摘要
目前大多数高性能的检测器都是枚举几乎所有可能的物体位置,并对其进行分类。显然这是低效且浪费时间空间的,同时还需要后处理过程。本文将目标建模为单个的点——检测边框的中心点。检测器采用关键点估计的方法来找到中心点,然后将其回归为物体的其他属性:尺寸大小、3D位置、方向甚至姿态。这种基于中心点的方法称为CenterNet,在COCO数据集上实现了在速度为142 FPS时AP=28.1% ,在速度为52FPS时AP=37.4% ,在多尺度测试速度为1.4FPS时AP=45.1%。
Speed-accuracy trade-off on COCO validation检测流程是简单地将图片送入全卷积网络得到特征图,特征图中的峰(高亮区域)对应于目标的中心,每个峰中的图像特征用于预测检测框的高和宽,网络前向不需要任何后处理过程。
本文的方法还能扩展用于其他任务:3D对象检测、多人人体姿态估计等。对于3D 边框估计,将中心点回归到对象的绝对深度、3D边框维度以及目标方向。对于人体姿态估计,考虑中心点偏移位置的组合。
Related work
3D目标检测:
Deep3DBox:用RCNN检测2D目标,然后将每个目标送入3D估计网络;
3D RCNN:在Faster RCNN中加入注意力模块,然后接3D建模;
Deep Manta:使用coarse-to-fine的Faster RCNN框架。
本文的方法与局域锚点的单阶段检测器类似,但不同之处在于:
锚点仅仅在位置上,不设置锚点框;
每个目标仅仅有一个正的锚点,因此不会用到NMS,提取关键点特征图上局部峰值点;
CenterNet 相比较传统目标检测而言(缩放16倍尺度),使用更大分辨率的输出特征图(缩放了4倍),无需特征金字塔;
检测的思路是:
对于宽高分别为的图片,要得到关键点热力图,是输出的,是关键点的数量。在人体姿态估计中,人体组成部分;在目标检测中,类别数量,。为0表示背景,为1表示检测到的关键点。采用几种不同的全卷积encoder-decoder网络:Stacked hourglass network;up convolutional residual networks(ResNet);deep layer aggregation(DLA)。
对于类别的关键点标注,计算其低分辨率表示,将所有标注关键点映射到特征图,采用高斯核,是物体尺寸自适应标准差,如果同一类的两个高斯核重合,则按元素取较大的。训练损失:
像素逻辑回归+Focal Loss是Focal Loss的超参,是图片中的关键点数量。
为了克服输出stride带来的偏移误差,另外为每个中心点预测一个局部偏移,所有类别共享同一个偏移预测,偏移损失为:
偏移预测损失Objects as Points
令代表类别的对象,其中心点,使用关键估计来预测所有中心点,另外,对于每个对象,回归到对象大小。为了限制计算负载,对于所有类别,使用同一个尺寸的预测,在中心点使用L1 Loss:
L1 Loss对于图片尺寸不进行正则化,直接使用原始像素坐标。整体训练损失为:
Training Loss。我们使用一个单独的网络预测关键点,偏移,尺寸。网络在每一个位置预测个输出。所有输出共享全卷积的骨架网络。
From points to bounding boxes
在前向的时候,首先在特征图中独立地提取每个类别的中心点高亮图。检测所有响应值大于等于其8个近邻响应值的高亮区域,并且保持其中的前100个,令表示类别的个中心点,所有中心点表示为整数点坐标。采用中心点的值作为检测置信度的度量,同时在每个位置产生边框:
Bounding Box其中
Offset Prediction(偏移预测) Size Prediction(尺寸预测)3D detection
3D检测估计一个三维的检测框,对于每个中心点余姚三个额外的属性:深度、3D维度和方向。因此对其中每个部分增加一个单独的部分检测头。计算深度的额外输出通道(L1 Loss):。
一个对象的3D维度是三个标量,回归结果(L1 Loss)。
方向为8维向量,每个bin中有4维向量,其中两个用于分类,剩下两个用于回归角度。
Human pose estimation
人体姿态估计旨在为每个人体估计个组合位置(COCO),将姿态看成是中心点的维属性,将每个关键点建模为到中心点的偏移(L1 Loss),为了精修关键点,估计个人体部位特征图(Focal Loss)。将初始预测映射到特征图上检测到的最近的关键点。偏移作为分组标志,将各个检测到的关键点分配给最近的人体。令代表检测到的中心点,首先回归至所有人体部位,同时在对应于部位的特征图上提取所有置信度大于0.1的关键点位置,然后将所有回归的人体位置分配到与其最近的关键点。
Implementation details
主干网络对比:
N.A.:没有技巧;F:翻转测试;MS:多尺度测试目标检测对比:
目标检测对比