晚期指标检测钻研以 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 类型,以检测指标关键点为主。
本文次要列举几种 Dense Prediction 类型的网络,次要波及以下网络:
- YOLO
- DenseBox
- Guided Anchoring
- FSAF
- FCOS
- FoveaBox
- SAPD
- ATSS
- FCOSv2
- DDBNet
YOLO
YOLOv1 是晚期的 anchor-free 算法,起初的系列则转型成 anchor-based 算法。YOLO 同时对多个物体进行分类和定位,没有 proposal 的概念,是 one-stage 实时检测网络的里程碑,标准版在 TitanX 达到 45 fps,疾速版达到 150fps,但精度不迭过后的 SOTA 网络。
将输出分为 $S\times S$ 的格子,如果 GT 的中心点在格子中,则格子负责该 GT 的预测:
- 每个格子预测 $B$ 个 bbox,每个 bbox 预测 5 个值: $x,y,w,h$ 和置信度,别离为中心点坐标和 bbox 的宽高,中心点坐标是格子边的相对值,宽高则是整图的相对值。置信度能够反馈格子是否蕴含物体以及蕴含物体的概率,定义为 ${\Pr}(Object)*IOU_{pred}^{truth}$,无物体则为 0,有则为 IOU
- 每个格子预测 $C$ 个类的条件概率 $\Pr(Class_i|Object)$,留神这里按格子进行预测,没有按 bbox 进行预测
DenseBox
DenseBox 是晚期的 Anchor-free 指标检测算法,过后 R -CNN 系列在小物体的检测上有显著的瓶颈,所以作者提出 DenseBox,在小物体的检测也有不错的体现。在 DenseBox 提出的早些工夫,驰名的 Faster R-CNN 呈现了,其弱小的性能主导了指标检测算法往 anchor-based 的方向倒退。直到 FPN 的呈现,Anchor-free 算法的性能才有了很大的晋升,更多的工作开始波及 Anchor-free 畛域。目前很多 Anchor-free 指标检测钻研都有 DenseBox 的影子,所以 DenseBox 的设计思路还是很超前的。
DenseBox 的整体设计如图 1 所示,单个卷积网络同时输入多个预测框及其类别置信度,输入的特色图大小为 $5\times \frac{m}{4}\times \frac{n}{4}$。假如像素 $i$ 位于 $(x_i, y_i)$,其冀望的 5 维向量为 $\hat{t}_i=\{\hat{s}, \hat{dx^t}=x_i – x_t, \hat{dy^t}=y_i – y_t, \hat{dx^b}=x_i – x_b, \hat{dy^b}=y_i – y_b \}$,第一个为分类置信度,后四个为像素地位到指标边界的间隔,最初,将所有像素的输入转化为预测框,通过 NMS 解决后进行最初的输入。
Guided Anchoring
Guided Anchoring 通过在线生成 anchor 的形式解决惯例手工预设 anchor 存在的问题,可能依据生成的 anchor 自适应特色,在嵌入方面提供了两种施行办法,是一个很残缺的解决方案。
Guided Anchoring 首先判断指标可能呈现的地位,而后学习不同地位上的指标的形态,可依据图片特色在线学习稠密的候选 anchor。然而,在线生成的 anchor 形态各异,固定的感触域可能不匹配其形态,所以 Guided Anchoring 依据 anchor 的形态进行自适应特征提取,而后再进行预测框精调与分类。
FSAF
指标检测的首要问题就是尺寸变动,许多算法应用 FPN 以及 anchor box 来解决此问题。在正样本判断下面,个别先依据指标的尺寸决定预测用的 FPN 层,越大的指标则应用更高的 FPN 层,而后依据指标与 anchor box 的 IoU 进一步判断,但这样的设计会带来两个限度:拍脑袋式的特征选择以及基于 IoU 的 anchor 采样。
为了解决上述的问题,FSAF(feature selective anchor-free)在每轮迭代中抉择最优的层进行训练优化。如图 3 所示,FSAF 为 FPN 每层增加 anchor-free 分支,蕴含分类与回归,在训练时,依据 anchor-free 分支的预测后果抉择最合适的 FPN 层用于训练,最终的网络输入可同时综合 FSAF 的 anchor-free 分支后果以及原网络的预测后果。
FCOS
论文提出 anchor-free 和 proposal-free 的 one-stage 的指标检测算法 FCOS,不再须要 anchor 相干的的超参数,在目前风行的逐像素 (per-pixel) 预测办法上进行指标检测。从试验后果来看,FCOS 可能与支流的检测算法相比拟,达到 SOTA,为前面的大热的 anchor-free 办法提供了很好的参考。
指标检测因为 anchor 的存在,不能进行纯逐像素地疾速预测,于是 FCOS 摈弃 anchor,提出逐像素全卷积指标检测网络网络,总结如下:
- 效仿后期的 FCNs-based 网络,如 DenseBox,每个像素回归一个 4D 向量指代预测框绝对于以后像素地位的偏移,如图 1 左
- 为了预测不同尺寸的指标,DenseBox 会缩放或剪裁生成图像金字塔进行预测,而且当指标重叠时,会呈现像素不晓得负责预测哪个指标的问题,如图 1 右。在对问题进行钻研后,论文发现应用 FPN 能解决以上问题
- 因为预测的后果会产生许多低质量的预测后果,论文采纳 center-ness 分支来预测以后像素与对应指标中心点的偏离状况,用来去除低质量预测后果以及进行 NMS
FoveaBox
FoveaBox 同时预测每个无效地位为指标核心的可能性及其对应指标的尺寸,输入类别置信度以及用以转化指标区域的尺寸信息。作为与 FCOS 和 FSAF 同期的 Anchor-free 论文,FoveaBox 在整体构造上也是基于 DenseBox 加 FPN 的策略,次要差异在于 FoveaBox 只应用指标核心区域进行预测且回归预测的是归一化后的偏移值,还有依据指标尺寸抉择 FPN 的多层进行训练。因为 FoveaBox 的整体实现计划太纯正了,与其它 Anchor-free 办法很像,所以始终投稿到当初才中了,作者也是相当不容易。
SAPD
Anchor-free 检测办法分为 anchor-point 类别和 key-point 类别两种,anchor-point 类别尽管更快更灵便,但准确率个别比 key-point 类别要低,所以论文着力于钻研妨碍 anchor-point 类别准确率的因素,提出了 SAPD(Soft Anchor-Point Detecto)。
SAPD 的外围如图 3 所示,别离为 Soft-Weighted Anchor Points 以及 Soft-Selected Pyramid Levels:
- Soft-weighted anchor points。anchor-point 算法在训练时个别将满足几何关系的点设置为正样本点,其损失值权重均为 1,这造成定位较不精确的点偶然分类置信度更高。实际上,不同地位的点的回归难度是不一样的,越凑近指标边缘的点的损失值权重应该越低,让网络集中于优质 anchor point 的学习。
- Soft-selectedpyramid levels。anchor-point 算法每轮训练会抉择特色金字塔的其中一层特色进行训练,其它层均疏忽,这在肯定水平上造成了节约。因为其余层尽管响应不如被抉择的层强,但其特色散布应该与被抉择层是相似的,所以能够赋予多层不同权重同时训练。
ATSS
在认真比对了 anchor-based 和 anchor-free 指标检测办法后,联合试验后果,论文认为两者的性能差别次要来源于正负样本的定义,如果训练过程中应用雷同的正负样本,两者的最终性能将会相差无几,于是论文提出 ATSS(Adaptive Training Sample Selection)办法。
ATSS 可能主动依据与 GT 的相干统计特征选择适合的 anchor box 作为正样本进行训练,在不带来额定计算量和参数的状况下,可能大幅晋升模型的性能,非常有用。
FCOSv2
图 2 为 FCOSv2 中的骨干网络结构,骨干网络仍然采纳 FPN,每层特色应用独特的 head 预测类别信息、尺寸信息以及 Center-ness,整体思维根本与 FCOS 统一。对 FCOS 的小修小改,最终性能达到了 50.4AP,堪称相当强劲了,在工程上能够参考其中的改良以及晋升办法。
DDBNet
作者认为以后 anchor-free 办法存在两个问题,核心关键点与指标的语义不统一以及部分特色的回归有局限性。为了解决上述两个问题,作者提出了非常大胆的办法 DDBNet。
DDBNet 蕴含 box 合成 / 组合模块以及语义统一模块,别离用于解决核心关键点的回归不准问题以及核心关键点与指标的语义不统一问题,后果如图 2 中的实线框。论文的次要奉献如下:
- 基于 anchor-free 架构提出新的指标检测算法 DDBNet,可能很好地解决核心关键点的回归问题以及核心关键点的语义一致性。
- 验证了核心关键点和 GT 的语义一致性,可能帮忙晋升指标检测网络的收敛性。
- DDBNet 可能达到 SOTA 精度(45.5%),并且可能高效地拓展到其它 anchor-free 检测器中。
如果本文对你有帮忙,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】