前言
anchor based和anchor free两种方法对比,基本内容包含:
- 各自定义
- 优缺点
- 应用场景
- 常用方法
一点一点加油~
1,定义
2,优缺点
2.1 anchor-base存在的问题
- 在训练时,size ratio和anchor number等超参很敏感,需仔细调参;
- 与锚点框相关超参 (scale、aspect ratio、IoU Threshold) 会较大影响最终预测效果;
- 预置的锚点大小、比例在检测差异较大物体时不够灵活,尤其是小目标物体,同时也限制了模型的泛化能力;
- 需要数量较多的anchor,但是大量的锚点会导致运算复杂度增大,产生的参数较多;
- 容易导致训练时negative与positive的比例失衡;
2.2 Anchor-free算法的优点
• 使用类似分割的思想来解决目标检测问题;
• 不需要调优与anchor相关的超参数;
• 避免大量计算GT boxes和anchor boxes 之间的IoU,使得训练过程占用内存更低。
3,主要应用场景
4,常用代表性方法
4.1 anchor based
基于anchor-based的技术包括一个阶段和两个阶段的检测。
一阶段的检测技术包括:
- SSD
- DSSD
- RetinaNet
- RefineDet
- YOLOV3
- …
二阶段技术包括:
- Faster-RCNN
- R-FCN
- FPN
- Cascade R-CNN
- SNIP
- …
一般的,两个阶段的目标检测会比一个阶段的精度要高,但一个阶段的算法速度会更快。
4.2 anchor free
anchor-free的技术包括基于Keypoint与Segmentation两类。
基于Keypoint技术包括
- CornerNet
- CenterNet
- CornerNet-Lite
- …
基于Segmentation的技术包括
- FSAF
- FCOS
- FoveaBox
- …