论文阅读:anchor-free目标检测模型CenterNet

114 阅读1分钟

模型原理

centernet.png

点击这里获取论文地址

CenterNet属于anchor-free系列的目标检测,相比于CornerNet做出了改进,使得检测速度和精度相比于one-stage和two-stage的框架都有不小的提高,尤其是与YOLOv3作比较,在相同速度的条件下,精度比YOLOv3提高了4个左右的点。

CenterNet采用关键点估计找到目标的中心点,并回归到其他目标属性,例如尺寸,3D位置,方向,甚至姿态。

CenterNet是端到端可微的,不需要NMS后处理。

CenterNet 相比较传统目标检测而言(缩放16倍尺度),使用更大分辨率的输出特征图(缩放了4倍),因此无需用到多重特征图锚点。

pipeline

假设输入图像为IRW×H×3I\in R^{W\times H\times 3} ,其中WWHH分别为图像的宽和高,预测时,产生出目标中心点的关键点热力图(keypoint heatmap):Y^[0,1]WR×HR×C\hat{Y}\in[0,1]^{\frac{W}{R}\times\frac{H}{R}\times C}、关键点偏差预测Op^RWR×HR×2O_{\hat{p}}\in R^{\frac{W}{R}\times\frac{H}{R}\times2}、检测框大小的预测Sp^RWR×HR×2S_{\hat{p}}\in R^{\frac{W}{R}\times\frac{H}{R}\times2},其中RR为原图的缩放倍数(论文中为4),而CC是在目标检测中对应目标类别数量(COCO目标检测中,C=80C=80)。模型输出维度为[WR×HR×(C+2)]\left[\frac{W}{R}\times\frac{H}{R}\times(C+2)\right].

关键点热力图

对每个目标bounding box真值,计算中心点像素坐标(x,y)(x,y),然后根据缩放倍数RR和类别cCc\in C,得到缩放之后的feature map上的坐标(x,y,c)=(xR,yR,c)(x',y',c)=(\lfloor\frac{x}{R}\rfloor,\lfloor\frac{y}{R}\rfloor,c). 最后在每个通道上根据高斯核:exp((xx)2+(yy)22σp2)\exp(-\frac{(x-x')^2+(y-y')^2}{2\sigma_p^2}),得到热力图,其中σp\sigma_p是尺度自适应标准差。多个高斯核重叠区域取最大值。

关键点估计损失

L=1Nxyc{(1Y^xyc)αlogY^xycYxyc=1(1Yxyc)βY^xycαlog(1Y^xyc)otherwiseL=\frac{1}{N}\sum_{xyc} \begin{cases} (1-\hat{Y}_{xyc})^\alpha\log\hat{Y}_{xyc} & Y_{xyc}=1\\ (1-Y_{xyc})^\beta\hat{Y}_{xyc}^\alpha\log(1-\hat{Y}_{xyc}) & \mathrm{otherwise} \end{cases}

使用Focal Loss,其中当Yxyc1Y_{xyc}\ne 1时,添加(1Yxyc)β(1-Y_{xyc})^\beta来抑制中心点周围的值,使其Loss比重增大,实验测定α=2\alpha=2,β=4\beta=4时效果最好。

关键点偏差损失

heatmap热力图比输入缩放了RR倍,关键点整数坐标p^\hat{p}是离散点,而中心点pp缩放RR倍之后pR\frac{p}{R}是浮点值,两者存在偏差,因此对每个关键点预测一个偏差Op^RWR×HR×2O_{\hat{p}}\in R^{\frac{W}{R}\times\frac{H}{R}\times2},损失函数为L1 Loss

Loff=1Np^Op^(pRp^)L_{off}=\frac{1}{N}\sum_{\hat{p}}\left|O_{\hat{p}}-(\frac{p}{R}-\hat{p})\right|

检测框大小回归损失

对每个预测的关键点p^\hat{p},对应地预测检测框大小Sp^RWR×HR×2S_{\hat{p}}\in R^{\frac{W}{R}\times\frac{H}{R}\times2},与实际的检测框SpS_p进行L1 Loss

Lsize=1Np^SpSp^L_{size}=\frac{1}{N}\sum_{\hat{p}}|S_p-S_{\hat{p}}|