motivation
去掉anchor密集候选,降低资源消耗
方案
model an object as a single point — the center point of its bounding box.
直接用中心点来替代anchor,完成分类和位置回归(中心点和长宽)
模型结构
(1)使用卷积网络提取原图4倍下采样feature map.
(2)feature map上对应目标bbox中心点的label为1,背景为0,中心点附近点的label遵循高斯衰减,一个类中不同目标label区域有重合,取更大高斯值。
(3)网络学习的三个目标:分类、中心点offset(原图下采样到feature map,中心点位置存在损失)、目标长宽。对应的损失函数分别为改进版focal loss,L1 loss和L1 loss:
NMS-free
推理阶段,对4倍下采样的feature map每个类/通道预测中心点,置信度为feature map对应cell的值,每个点只预测一个“anchor”,理论上不存在重复预测,即NMS-free。取每个类/通道的feature map的局部极值作为候选,取top100,然后通过设置的阈值过滤,剩下的中心点作为最终结果。效果类似NMS,但计算量更小。
总结讨论
优势
1、去掉anchor密集候选,计算量减少,资源消耗更少。
2、去掉NMS,端到端推理速度较YOLO V3更快。(NMS目的是剔除一个点的多个重合预测框,centernet每个点只预测1个)
3、可用于3D目标检测。
4、网络结果极简。
劣势
1、无法像anchor-base的模型一样,一个cell多个anchor,centernet一个center只能检测一个对象,中心完全重合的目标可能丢失。
讨论
anchor-base和anchor-free的本质都是在feature map上一个一个cell搜寻目标,都仍难免正负样本不均衡的问题,需要使用新的框架?transformer?GCN?