1、背景
- 待识别目标大小差异较大
- 个别目标非常相似,因此要求算法能够准确定位各种不同尺度目标的位置,同时区分相似目标的类型 。
2、YOLOv3存在的问题
YOLOv3 的 anchor 是基于 K-Means 对数据集聚类得到,存在以下两个问题:
- 大部分的 anchor 都分布在背景区域,这些 anchor 对检测没有任何作用;
- 个别检测目标宽高比极大,而个别目标宽高比又非常小 ,预先定义好的 anchor 无法满足这些宽高比差异较大的情况 。
3、改进
3.1、改进1:基于优化的 anchor 设计
为使 anchor 尽可能分布在前景区域,同时使待检测物体能够较好匹配 anchor,对 YOLO V3 的 anchor 设计进行优化,优化对象:
- anchor 的中心位置,即让 anchor 尽可能分布在有对象的区域;
- 优化 anchor 的宽高,使之与目标的形状接近。
使用 Darknet53 网络输出的特征优化 anchor 位置和大小,需要优化的目标函数如式( 1):
Lanchor=Lloc+λLshape(1)L_{anchor}=L_{loc}+\lambda L_{shape}\qquad(1)Lanchor=Lloc+λLshape(1)
式中,