当前位置:网站首页>YOLO系列损失函数详解
YOLO系列损失函数详解
2022-07-28 05:55:00 【有温度的AI】
YOLOV1

YOLOV1最后生成7×7的网格(grid cell),每个grid cell会产生两个预测框(bounding box),每个grid cell产生的两个预测框只能预测同一种类物体,也就是说YOLOV1最多只能预测49种物体,两个预测框中哪一个与标注框的IOU大就选哪一个(此即正样本),另外一个会被舍弃(负样本);特殊情况(如果有两个相同种类的物体中心点都落在同一个grid cell中,此时这个grid cell的两个预测框有可能都与真实框有最大的IOU,也即两个预测框都为正样本,这也就是说YOLOV1最多能预测49×2个目标)。如果标注框的中心点落在哪一个grid cell中就由这个grid cell产生的两个预测框去负责预测,没有标注框中心点落入的grid cell产生的两个预测框都视为负样本,置信度越小越好。

7×7意味着7×7个grid cell,30表示每个grid cell包含30个信息,其中两个预测框,每个预测框包含五个信息(x y w h c),分别为中心点位置坐标,宽高以及置信度,剩下20个是针对VOC数据集的20个种类的预测概率(即假设该grid cell负责预测物体,那么它是某个类别的概率)。

S²表示遍历所有的grid cell,B表示遍历所有的预测框;
对于每一个GTbox只分配一个正样本(预测框),也就是与它IOU最大的那个预测框,其余为负样本;
正样本有定位损失、类别损失和置信度损失;负样本只有置信度损失。
正样本的置信度标签值为预测框与标注框(ground truth)的IOU;
YOLOV1的类别归grid cell管(一个grid cell负责预测一个类别);
YOLOV3的类别归anchor管(一个anchor负责预测一个类别);
YOLOV3
边界框回归
最终产生三个预测特征层,分别预测大、中、小三种类型的物体,每个预测特征层的每个grid cell会产生三个anchor(先验框),预测框是在anchor的基础上调整得到的,下图中黑色虚线框为anchor,蓝色框为实际预测框;tx、ty、tw、th为YOLOV3网络最后预测的回归参数,Cx、Cy为此grid cell左上角的坐标,Pw、Ph为anchor的宽和高。

损失计算


置信度损失:二元交叉熵损失,正负样本都有置信度损失,上图中蓝色框代表anchor,绿色框代表真是标注框,黄色框为预测框,其中Oi(置信度标签)的值有不同的确定方法,一种为设置正样本的Oi值为1,负样本的Oi值为0;另一种为上图所示。

类别损失:二元交叉熵损失,只关注正样本。

定位损失:只关注正样本,bx、by、bw、bh为预测框的中心点坐标以及宽高值,假设我们用实际标注框的这四个值gx、gy、gw、gh代入式子反求出
、
、tw、th,也就是上图中的
、
、
、
,求
、
、
、
与
、
、tw、th的差值的平方和再除上正样本总数就是定位损失。

S²表示遍历所有的grid cell,B表示遍历所有的预测框
正负样本匹配
原论文:对于每一个GTbox只分配一个正样本(预测框),也就是与它IOU最大的那个预测框;与GTbox的IOU小于0.5的预测框全都视为负样本;对于IOU大于0.5但不是最大的那部分预测框直接丢弃。
代码实现:一些代码实现中把IOU大于0.5的预测框都视为正样本,这样做是为了提高正样本的数量,这种方法也被证明效果不错。
YOLOV4
对于一些特殊情况,当GTbox的中心点落在grid cell网格的边界上时,
、
不可能取到0或者1,所以就对其施加了一个缩放因子,将预测框中心点相较于grid cell左上角的偏移量由原来的0~1变为了-0.5~1.5,这样做另一方面也可以增大正样本的数量,也就是说,这个预测框不仅可以由当前中心点所在的grid cell的anchor偏移得到,还可以通过上边或者左边的两个grid cell的anchor通过偏移得到。


下图对应GTbox中心点落在网格不同位置处所对应的负责预测预测框的grid cell
reference
YOLOV1论文精读:You only look once: Unified, real-time object detection_哔哩哔哩_bilibili
边栏推荐
- 细说共模干扰和差模干扰
- 整改了七次,花了半个月时间,惨痛的EMC总结
- The net loss of users occurred again, and China Mobile, which lost face, launched ultra-low price packages to win users
- Mysql查看某个表所占内存大小
- Big talk persistence and redolog
- Date n days ago
- Image segmentation method
- Learn software testing in two weeks? I was shocked!
- Earliest deadline first (EDF)
- [shaders realize negative anti color effect _shader effect Chapter 11]
猜你喜欢
随机推荐
指针进阶练习
微信小程序隐藏滚动条的方法
EMC整改方法集合
调整数组顺序使奇数位于偶数前面——每日两题
Introduction to magnetic ring selection and EMC rectification skills
细说共模干扰和差模干扰
两个星期学会软件测试?我震惊了!
High response ratio first
.NET 6.0中使用Identity框架实现JWT身份认证与授权
2018-cvpr-Gesture Recognition: Focus on the Hands
Learning to estimate 3D hand pose from single RGB image & amp notes
【google】解决google浏览器不弹出账号密码保存框且无法保存登录信息问题
和为s的两个数字——每日两题
The cornerstone of EMC - complete knowledge of electromagnetic compatibility filtering!
ASP.NET Core 技术内幕与项目实战读后感
After learning the four redis cluster solutions at one go, each has its own merits
分布式系分发展概览
Two horizontal and vertical screen switching schemes for uniapp mobile terminal
铜铟硫CuInSe2量子点修饰DNA(脱氧核糖核酸)DNA-CuInSe2QDs(齐岳)
Big talk persistence and redolog









