edgeyolo算法笔记

本文为个人学习过程中所记录笔记,便于梳理思路和后续查看用,如有错误,感谢批评指正!

BACKBONE

与yolox不同,采用ELAN-Darknet作为backbone,并且在轻量化模型中采用RepCOnv代替部分3x3卷积。

数据集增强

与yolox相比,edgeyolo采用了加强版数据集增强。yolox采用图b中的数据集增强方法,本文中采用多组mosaic进行mixup,分组数量可以根据数据集中单个图片中平均标签数量的丰富度来设置。作者考虑到coco数据集和VisDrone2019-DET数据集中含有丰富的标签,将mosaic组数设为2。
在这里插入图片描述

Decoupled Head

与yolox相比,同样采用解耦头,但是采用了一个更轻量化的解耦头,同时,采用结构重参数化的手段,减少推理时间。经过实验对比结果如下:
在这里插入图片描述

针对小目标检测的优化,损失函数

整个训练分为三个过程,第一个过程中采用常规损失函数,iou损失采用giou损失,分类损失和置信度损失采用平衡交叉熵损失,规则损失置于0。第二阶段,在数据集增强即将结束阶段,分类损失和置信度损失采用如下损失函数:在这里插入图片描述
第三阶段与YOLOX 一样,关闭数据集增强,在规则损失采用L1损失。将giou损失改为ciou损失。

两个数据集上的结果如下所示:
在这里插入图片描述

分割标签的使用

当没有分割标签时,图片旋转后,会通过画一个没有倾斜并穿过四个点的方框作为要最终的标签。该方法会包括更多无效的背景信息。因此在使用coco训练时会利用分割标签得到更准确的旋转后的标注。当开启数据增强,损失进入稳定下降阶段时,使用分割标签可以带来2%-3%的AP显著提升(仅限于在当前数据集增强还为结束阶段)。最终,即使不用分割标签,最终AP降低仅为0.04%。

损失函数的选取

实践证明,focal loss在本文方法中中起着副作用。
giou损失可以提高小目标检测的效果,但是大目标检测效果会降低,最终ciou损失能取得最好的效果。如下所示:
在这里插入图片描述

应用实践

实际视频流输入,建议将模型输入尺寸按照视频流分辨率等比例缩放,提高计算利用率。
在这里插入图片描述
最后采用个人数据集实际测试了一下,无论采用加强版数据集增强还是不采用加强版数据集增强的效果都不如yolox。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值