YOLOv5损失函数
总损失各项前可加入系数权重
边界框回归:寻找边界框位置、大小,作为计算机视觉最重要组件,之前一直使用L1\L2
IoU损失
ground truth box 在数据上真实标注的框
predicted bound box 预测框
IoU(计算两筐重叠度)= 两筐相交部分 / 两筐相并部分
IoU存在问题
GIoU改进
增加C框(可以正好包围A、B的最小框)
=IoU - | C框 除去 A和B的剩余部分| / |C| (计算的为面积)
相应Loss:
Liou = 1 - IoU
Lgiou = 1- GIou
DIoU
两筐中心点距离设为d,包围两筐的对角线为c
绿色为标记框,红色为预测框,基于不同loss的值大小。DIoU可以更好地区分不同情况。
关于收敛情况,上三为GIoU,下三为DIoU
可以发现DIoU在相同情况下所需步数更少。
CIoU
在DIoU基础上又加入一项(比较两筐宽高比的吻合度)
对于CIoU的优化,h、w都会归一化到[0,1]之间,当分母较小会导致梯度爆炸,为了避免替换为1
不同Loss回归误差图,DIoU波动不是很剧烈,IoU和GIoU波动较大
不同Loss实时结果比较,CIoU最为准确