anchor free系列检测方法

one stage和two stage是目标检测的主流方法,最近由deng老板引领的anchor free方法另辟蹊径,以关键点检测为基础来做检测,也算是one stage的一种吧

CornerNet

]预测图片上所有物体的左上角、右下角,然后后处理时再组合在一起。第一篇用关键点做检测,无需设置anchor的文章,但是还是有很多问题的

  1. 左上角、右下角语义信息比较弱,很难检测到,因此文章引入Cornerpool来改善这个问题
  2. 由于是bottom-up结构,还需要后处理组合在一起
    anchor free系列检测方法_第1张图片
    anchor free系列检测方法_第2张图片

ExtremeNet

改进Cornernet,本质上Cornernet还是top down结构,因为左上角和右下角其实算是bbox的另一种形式,它不是直接和物体的语义特征相关的,局部的外观特征不一致,一个人姿势不同左上角完全不一样。虽然引入了Corner pooling也只是部分缓解;cornetnet的后处理需要把左上角和右下角正确的组合起来,它利用的是geometric grouping,学习一个embeding,然后组合起来。
而Extremenet的不同点是检测边缘点,最左边最右边最上边最下边的极值点,这些点是有明确的语义特征,而且局部外观特征是一致的,容易被检测到;后处理进行组合时不需要隐式地去学习embeding,而是直接根据外观特征进行组合。
anchor free系列检测方法_第3张图片
anchor free系列检测方法_第4张图片
问题

  1. 速度慢,需要检测的点更多了(每类都要上下左右中)
  2. 需要标注extreme point,不过可以通过coco的segmentation得到,或者重新找人标注,文章说比标注bbox更便宜
  3. 比Cornernet没有明显提升

CenterNet(Objects as Points)

超喜欢的一篇工作,算是top-down,不需要nms等后处理。
没有anchor的设置(和yolov1一样),检测物体的中心点,然后从中心点出发回归wh,或者做其他应用3d检测等

  • 利用关键点检测网络,预测一个heatmap,每个点代表一个物体,可能出现两个物体的中心点落在同一个heatmap的格子里,不过作者计算发现这种情况太少了
  • 由于heatmap是原图的1/S,出现了量化误差。所以还需要一个加个regress网络需要中心点的偏移
  • 但是中心点有时候不在物体上面,还是存在语义问题,根据作者提供的消融实验,换成gt的中心点,精度大幅提升

anchor free系列检测方法_第5张图片
anchor free系列检测方法_第6张图片


  • ExtremeNet(One-stage检测算法,CornerNet进阶版)论文阅读笔记 - 张凯的文章 - 知乎
  • 如何评价最新的两篇基于point的目标检测模型CenterNet?

你可能感兴趣的:(深度学习,论文学习笔记,detection)