关于算法:Anchorfree目标检测综述-Keypointbased篇

38次阅读

共计 3405 个字符,预计需要花费 9 分钟才能阅读完成。

  晚期指标检测钻研以 anchor-based 为主,设定初始 anchor,预测 anchor 的修改值,分为 two-stage 指标检测与 one-stage 指标检测,别离以 Faster R-CNN 和 SSD 作为代表。起初,有研究者感觉初始 anchor 的设定对准确率的影响很大,而且很难找到完满的预设 anchor,于是开始一直得钻研 anchor-free 指标检测算法,意在去掉预设 anchor 的环节,让网络自行学习 anchor 的地位与形态,在速度和准确率下面都有很不错的体现。anchor-free 指标检测算法分为两种,一种是 DenseBox 为代表的 Dense Prediction 类型,密集地预测的框的绝对地位,另一种则是以 CornerNet 为代表的 Keypoint-bsaed Detection 类型,以检测指标关键点为主。
  本文次要列举几种 Keypoint-based Detection 类型的网络,次要波及以下网络:

  • CornerNet
  • ExtremeNet
  • CenterNet
  • CenterNet(Object as Point)
  • CSP
  • CornerNet-Lite
  • RepPoints
  • CentripetalNet
  • SaccadeNet
  • RepPointsV2
  • CPNDet
  • FSAF

CornerNet


  CornerNet 将指标检测定义为左上角点和右下角点的检测。网络结构如图 1 所示,通过卷积网络预测出左上角点和右下角点的热图,而后将两组热图组合输入预测框,彻底去除了 anchor box 的须要。论文通过试验也表明 CornerNet 与以后的支流算法有相当的性能,创始了指标检测的新范式。

  CornerNet 的构造如图 4 所示,应用 hourglass 网络作为骨干网络,通过独立的两个预测模块输入两组后果,别离对应左上角点和右下角点,每个预测模块通过 corner 池化输入用于最终预测的热图、embedding 向量和偏移。

ExtremeNet


  ExtremeNet 通过检测指标的四个极点进行指标定位,如图 1 所示。整体算法基于 CornerNet 的思维进行改良,应用五张热图别离预测指标的四个极点以及核心区域,将不同热图的极点进行组合,通过组合的几何核心在中心点热图上的值判断组合是否符合要求。另外,ExtremeNet 检测的极点可能配合 DEXTR 网络进行指标宰割信息的预测。

CenterNet


  CornerNet 将目前罕用的 anchor-based 指标检测转换为 keypoint-based 指标检测,应用角点对示意每个指标,CornerNet 次要关注指标的边界信息,不足对指标外部信息的获取,很容易造成误检,如图 1 所示。为了解决这个问题,论文提出 CenterNet,在角点对的根底上退出核心关键点组成三元组进行检测,既能捕获指标的边界信息也能兼顾指标的外部信息。另外,为了更好地提取特色,论文还提出了 center pooling 和 cascade corner pooling,别离用于更好地提取核心关键点和角点。

CenterNet(Object as Point)


  CenterNet 算法将检测指标视为关键点,先找到指标的中心点,而后回归其尺寸。首先将输出的图片转换成热图,热图中的顶峰点对应指标的核心,将顶峰点的特征向量用于预测指标的高和宽,如图 2 所示。在推理时,只须要简略的前向计算即可,不须要 NMS 等后处理操作。比照上一篇同名的 CenterNet 算法,这个算法更简洁且性能足够弱小,不须要 NMS 等后处理办法,可能拓展到其它检测工作中。

CSP


  CSP 的网络结构大抵如图 1 所示,在骨干网络上别离预测指标中心点的地位及其对应的尺寸。这篇文章的整体思维与 CenterNet(zhou. etc)基本一致,但不是剽窃,因为是同一个会议上的论文,CenterNet 次要钻研惯例的指标检测,而这篇次要钻研人脸检测和行人检测。但 CSP 依然须要进行 NMS 的后处理,较 CenterNet 更逊色一些,但不障碍咱们进行简略地理解,包含学习论文的训练方法以及参数。

CornerNet-Lite


  CornerNet 作为 Keypoint-based 指标检测算法中的经典办法,尽管有着不错的准确率,但其推理很慢,大概须要 1.1s/ 张。尽管能够简略地放大输出图片的尺寸来减速推理,但这会极大地升高其准确率,性能比 YOLOv3 要差很多。为此,论文提出了两种轻量级的 CornerNet 变种:CornerNet-Saccade 和 CornerNet-Squeeze。

  CornerNet-Saccade 在可能呈现指标的地位的小区域内进行指标检测,首先通过放大的残缺图片预测 attention 特色图,取得初步的预测框地位以及尺寸,而后在高分辨率图片上截取以该地位为核心的图片区域进行指标检测。

  在 CornerNet 中,大多数的计算工夫花在骨干网络 Hourglass-104 的推理。为此,CornerNet-Squeeze 联合 SqueezeNet 和 MobileNet 来缩小 Hourglass-104 的复杂度,设计了一个新的轻量级 hourglass 网络。

RepPoints


  经典的 bounding box 尽管有利于计算,但没有思考指标的形态和姿势,而且从矩形区域失去的特色可能会受背景内容或其它的指标的重大影响,低质量的特色会进一步影响指标检测的性能。为了解决 bounding box 存在的问题,论文提出了 RepPoints 这种新型指标示意办法,可能进行更细粒度的定位能力以及更好的分类成果。

  RepPoints 是一个点集,可能自适应地突围指标并且蕴含部分区域的语义特色。论文基于 RepPoints 设计了 anchor-free 指标检测算法 RPDet,蕴含两个辨认阶段。因为可变形卷积可采样多个不规则散布的点进行卷积输入,所以可变形卷积非常适宜 RepPoints 场景,可能依据辨认后果的反馈进行采样点的疏导。

CentripetalNet


  CornerNet 关上了指标检测的新形式,通过检测角点进行指标的定位,在角点的匹配上,减少了额定 embedding 向量,向量间隔较小的角点即为匹配。而论文认为,这种办法不仅难以训练,而且仅通过物体外表进行预测,不足指标的地位信息。

  CentripetalNet 的外围在于提出了新的角点匹配形式,额定学习一个向心偏移值,偏移后足够近的角点即为匹配。如图 2 所示,CentripetalNet 蕴含四个模块,别离为:

  • 角点预测模块(Corner Prediction Module):用于产生候选角点,这部分跟 CornerNet 一样。
  • 向心偏移模块(Centripetal Shift Module):预测角点的向心偏移,并依据偏移后果将相近的角点成组。
  • 十字星变形卷积(Cross-star Deformable Convolution):针对角点场景的变形卷积,可能高效地加强角点地位的特色。
  • 实例宰割分支(Instance Mask Head):相似 MaskRCNN 减少实例宰割分支,可能晋升指标检测的性能以及减少实例宰割能力。

SaccadeNet


  SaccadeNet 的构造如图 2 所示,首先初步预测指标的核心地位以及角点地位,而后利用四个角点地位以及中心点地位的特色进行回归优化。整体思维相似于 two-stage 指标检测算法,将第二阶段的预测框精调用的区域特色转化为点特色,在精度和速度上都可圈可点,整体思维非常不错。

RepPointsV2


  RepPointsV2 的整体思维相似与 Mask R-CNN,退出更多的工作来监督指标检测算法的学习,具体的实现办法是在原网络上退出辅助分支 (auxiliary side-branches) 的模式,有监督地进行学习,辅助分支可能优化两头特色以及进行联结检测。

CPNDet


  本文为 CenterNet 作者发表的,作者认为 acnhor-free 办法通常会呈现大量的误检,须要一个独立的分类器来晋升检测的准确率。于是联合 acnhor-free 办法和 two-stage 范式提出了 Corner-Proposal-Network(CPN),残缺的构造如图 2 所示。首先应用 anchor-free 办法提取关键点,遍历关键点组合成候选框,最初应用两个分类器别离对候选框进行误检过滤以及标签预测。



如果本文对你有帮忙,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

正文完
 0