【目标检测】yoloX算法详解

您所在的位置:网站首页 指示牌设计说明简介图 【目标检测】yoloX算法详解

【目标检测】yoloX算法详解

2024-07-11 06:38| 来源: 网络整理| 查看: 265

一、yoloX的改进

由于yoloV4和yoloV5存在过度优化的问题,因此yoloX以yoloV3和Darknet 53为基线,采用了Darknet 53骨干网的结构架构和SPP层,改变了一些训练策略:

增加了EMA权重更新、consine lr schedule、IoU损失和IoU感知分支,使用BCE Loss训练cls和obj,IoU Loss作为test分支。由于RandomResizedCrop和马赛克增强重叠,因此只采用了RandomHorizontalFlip,ColorJitter、multi-scale和mosaic用于数据增强。使用Mixup增强,不使用Imagenet预训练方法。 在这里插入图片描述 二、yoloX结构框架

在这里插入图片描述

三、Decoupled Head(解耦头部)

思想:分离分类和定位操作 好处:(1)提高了了yoloX收敛速度;(2)实现了yolo的端对端性能。 结构图: 在这里插入图片描述YOLOv3与yoloX解耦头之间的区别。对于每一层FPN特征,我们首先采用1 × 1的conv层,将特征通道减少到256,然后再增加两个并行分支,每个分支有两个3 × 3个卷积层分别用于分类和回归任务。IoU分支被添加到回归分支上。

四、免锚

无锚机制的优点:减少了设计参数的数量 实现方式:将每个位置的预测从3个减少到1个,并使他们直接预测4个值(即网格左上角的两个偏移量、预测框的高度和宽度)。同时指定了中心,每个物体的阳离子作为正样本,并预先定义一个刻度方位以指定每个物体的FPN级别,可以降低探测器的参数和GFLOPs,使其速度更快,性能更好。

五、多个正样本

操作:参照FCOS中的‘中心取样’,只为每个对象的平均值选择了一个正样本(中心位置),忽略其他高质量的预测。 优点:(1)有利于梯度回归;(2)缓解训练中的正负样本不均衡

六、SimOTA(高级标签分配)

四个关键点:(1)loss/quality loss (2)cneter prior (3)每个GT的正样本anchor动态个数 (4)全局试图 整体逻辑:

确定正样本候选区域计算anchor与gt的IoU在候选区域计算cost使用IoU确定每个gt的dynamic_k为每个gt取cost排名最小的前dynamic_k个anchor作为正样本,其余为负样本使用正负样本计算loss 具体细节: 1、dynamic_k确定方式:获取与当前gt有top10最大IoU的prediction结果将这top10IoU进行sum,就为当前gt的dynamic_k,dynamic_k最小取1 由于前期模型预测不准,导致IoU基本比较小,所以观测到前期dynamic_k大多为1 2、计算cost时候,Lcls和Lreg比例是1:3,而最终计算loss时,Lcls和Lreg比例是1:5,原因是:在寻找正样本时,如果一个anchor已经能很好的区分前景和背景,那即使reg预测不准,也可以作为正样本,所以相比于loss计算,在cost计算时,Lcls给予更多权重,而reg可以通过不断地训练逐步优化。 七、端对端yolo(可选)

增加了2个卷积层:

一对一地标签分配停止梯度 确保了检测器端对端,但会导致性能和推理速度下降,一次作为可选方式提供


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3