yolov8简易结构流程阐述

                       

yolov8的整体结构如上,分为三部分,第一部分是提取图像细节信息的骨干网络backbone,涉及到模型的不同大小,里面模块的设置也会有相应改变,例如改变卷积的层数,改变特征拼接的个数,然后就到下一层neck,融合不同尺度下的信息,提高模型的多尺度检测能力,最后到head,将三个不同尺度的特征解耦

 

分别对预测框坐标和预测类别进行解耦,首先对于预测框坐标来说,c=4*reg_max,也就是8400*64,reg_max是默认长度为16的向量,而后需要进行积分求和,转成8400*4(以640大小输入为例:80*80+40*40+20*20个预测框),转换后的单个向量的值的范围在[0,15]之中,表示的是以该预测框为中心,上下左右四个方向与中心点的距离,损失函数用的是回归损失

对于预测框类别,得到8400*80(假设有80个类别),表示每个预测框对每种类别的预测概率

但若要计算损失,还需要确定正负样本,因为图像中大部分其实是没有我们事先标注好的检测对象的,也就是没有object,对于它们来说,去计算预测框损失是没用的,对于负样本来说,应该保证的是预测框的80个类别概率都应该非常非常低,甚至是没有,这才是好的结果,所以对于负样本,有他适合的损失函数,也就是纯粹的分类损失,因为负样本没有必要去算预测框坐标损失。而正样本呢,我们则采用常规的Bce计算分类损失。

那么怎么确定正负样本呢,这就需要使用tal,根据分类与回归的分数加权的分数选择正样本

s 是标注类别对应的预测分值,u 是预测框和 gt 框的 iou,两者相乘就可以衡量对齐程度

训练完成后,拿去预测,会出现很多的预测框,因为一个object可能在多个预测框里都出现了,这时候就需要找到最好的那个预测框,把其他的都丢掉,就需要使用nms,计算CIou

以下是 YOLOv5 检测流程图的简单描述: 1. 输入一张待检测的图片。 2. 将输入图片缩放到指定大小。 3. 将缩放后的图片输入到卷积神经网络中进行特征提取。 4. 将特征图输入到最后一层卷积层,生成预测输出。 5. 对预测输出进行解码,得到目标的位置、类别和置信度等信息。 6. 对目标进行筛选和去重,得到最终的检测结果。 下面是 YOLOv5 检测流程图的详细描述: 1. 首先,输入一张待检测的图片。图片可以是任意大小和尺寸,但是通常需要将其缩放到指定的大小,以便于后续处理。 2. 接下来,将缩放后的图片输入到卷积神经网络中进行特征提取。YOLOv5 使用了 CSPDarknet53 作为其主干网络,该网络使用了残差块和跨层连接等技术,可以提高网络的特征提取能力。 3. 特征提取后,将特征图输入到最后一层卷积层中,生成预测输出。YOLOv5 采用了类似于 RetinaNet 的多层预测机制,可以预测不同尺寸的目标。 4. 对预测输出进行解码,得到目标的位置、类别和置信度等信息。具体来说,对于每一个预测输出,我们需要计算其边界框的位置和大小、目标的类别以及置信度等信息。 5. 接着,对目标进行筛选和去重,得到最终的检测结果。YOLOv5 使用了 NMS(非极大值抑制)算法来去除重叠的边界框,并且设置了置信度阈值和类别阈值,以过滤掉低置信度的目标和不感兴趣的类别。 总的来说,YOLOv5 的检测流程非常简单和高效,可以在保证准确率的同时实现实时检测。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值