[发明专利]一种基于改进YOLOv4的柑橘识别方法有效

专利信息
申请号: 202010584280.0 申请日: 2020-06-24
公开(公告)号: CN111709489B 公开(公告)日: 2022-04-08
发明(设计)人: 陆声链;陈文康;李帼 申请(专利权)人: 广西师范大学
主分类号: G06V10/762 分类号: G06V10/762;G06V10/764;G06V10/82;G06K9/62;G06N3/04;G06N3/08
代理公司: 桂林市华杰专利商标事务所有限责任公司 45112 代理人: 杨雪梅
地址: 541004 广*** 国省代码: 广西;45
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 改进 yolov4 柑橘 识别 方法
【权利要求书】:

1.一种基于改进YOLOv4的柑橘识别方法,其特征在于,包括如下步骤:

S1、图像的获取:用户采用数码相机或其他图像采集设备对结有果实的柑橘树进行图像采集,并将采集到的图像按照Pascal VOC数据集的格式将图片命名,同时创建名为Annotations、ImageSets、JPEGImages的三个文件夹;

S2、图像预处理:

S2-1、图像标记:在步骤S1采集到的图像中,运用图像标注工具LabelImg对图像中的柑橘进行标记,标注出柑橘的位置、品种名称并注明每个果实被树叶或者枝干遮挡的程度;

S2-2、图像扩增:若步骤S1采集到的图像不能达到识别一个品种的柑橘需要200张图片的要求,则进行图像扩增;用户选定图像的保存路径和标记信息的XML文件路径,并制定扩增后的图像输出路径,则在原有图像的基础上根据用户的需求量进行图像扩增,用户选择图像的亮度、大小、清晰度参数对图像进行扩增;

S2-3、设置锚框参数,步骤如下:

S2-3-1、用户先根据标记且扩增后的数据集设置名为M-IOU自定阈值和锚框个数;

S2-3-2、采用Canopy算法对数据进行初步的聚类得到聚类中心;

S2-3-3、将步骤S2-3-2得到的聚类中心与M-IOU进行对比,观察聚类中心是否在用户设置的M-IOU周围有较好收敛效果,若满足,则进行下一步,否则从步骤S2-3-1重新设置M-IOU;

S2-3-4、使用k-means++算法对步骤S2-3-2得到的聚类中心再进行一次细致的聚类,重复执行本步骤,选择精度最高的聚类结果作为YOLOv4网络的锚框参数值;

S2-4:划分数据集:将扩增得到的图像和标记文件划分成训练集、测试集、验证集和训练验证集,训练集、测试集、验证集分别占50%、25%、25%,训练验证集为训练集与验证集的累加,占75%;

S3、设置网络模型参数:在YOLOv4网络模型的配置文件中,根据计算机内存、显存的大小,用户最终呈现的识别效果要求,设置卷积神经网络输入图像的尺寸、识别种类的数量和filters值、迭代次数参数;且用户需使用支持cuda加速的显卡类型;

S4. 对YOLOv4网络结构进行改进,得到改进后的YOLOv4网络结构,改进过程如下:

S4-1:在现有的YOLOv4网络结构中,对小目标比较敏感的是深层的网络层,其输出的特征图大小为76*76*3*(5+class_num),较大的特征图上的感受野较小,在现有的YOLOv4网络结构基础上,增加一个上采样模块和两个对小目标敏感、大小为152*152的检测特征图,使网络结构更深,使改进后的卷积神经网络学习更深层的信息;

S4-2、新增的检测特征图与现有的YOLOv4网络结构中CSP模块中大小为76*76*512的相连接,用于后续的特征拼接和防止过拟合;

S4-3、新增的两个检测特征图层与现有的YOLOv4网络结构中特征图尺寸为152*152*256、步长为1的卷积层连接;

S4-4、在新增的每层中,加入1*1卷积层进行通道降维,使最后输出的YOLO layer的大小为152*152*3*(5+class_num);

S5、训练网络模型:对改进后的YOLOv4网络结构进行参数设置,将设置好参数后的改进YOLOv4网络结构放入配置好环境的计算机中,运用训练集和验证集中标记好的图片名进行训练,训练过程中,将测试集中划分好的图片放入计算机中进行测试,得到每一个阶段训练的效果,并设置过程监控-map参数实时观察训练的mAP值,训练结束后保存训练好的网络模型;

S6、压缩网络模型:

S6-1、将步骤S5得到的训练好的网络模型,改进后的YOLOv4网络结构cfg文件,配置好data文件,采用训练验证集再进行一次基础训练,并设置训练参数-epochs 100 -batch-size 64;

S6-2、在YOLOv4网络结构中,将scale参数默认为0.001,用户根据标记且扩增后的数据集,观察mAP、BN分布,数据集种类的多少,适当调小参数s;-sr用于开启稀疏训练,将prune参数设置为1,运用全局s衰减稀疏策略;

所述的全局s衰减稀疏策略,是指在参数epochs值为0.5时权重已经完成部分的稀疏训练,拥有了一定的模型压缩度后,对参数s衰减100倍;

S6-3、通道剪枝:将稀疏训练的结果,采用SlimYOLOv3对通道剪枝策略,通过全局阈值找出各卷积层的mask,用每组shortcut,将相连各卷积层的剪枝mask取并集,把合并后的mask进行剪枝;

S6-4、层剪枝:只考虑剪CSPDarknet53主干网络中的shortcut模块,对每一个shortcut层前一个CBL进行评价,对各层的Gmma均值进行排序,取最小的进行层剪枝;每剪一个shortcut结构,会同时剪掉一个shortcut层和它前面的两个卷积层;

S6-5、经过通道剪枝和层剪枝,分别压缩了模型的宽度和深度,再通过微调fine-tune和迭代式剪枝操作训练,得到压缩后的柑橘识别网络模型;判断步骤S6-2设置的参数所得到的结果是否能满足需要,若不满足,则对参数s进行调整,并重复步骤S6-2-步骤S6-5,选择适合用户数据集的压缩网络模型策略,得到压缩后的柑橘识别网络模型;

S7、运用步骤6)得到的网络模型进行识别:在计算机上准备拍摄好的柑橘图像,在python环境下,通过命令行中输入训练命令,命令内容包括步骤6)压缩后得到的柑橘识别模型和要识别的柑橘图片名,最终得到柑橘的识别结果。

2.根据权利要求1所述的一种基于改进YOLOv4的柑橘识别方法,其特征在于,步骤3)中,所述的显卡类型,为如下要求:

S3-1、当输入图像大小为416*416,参数random为1,batch_szie参数为64,迭代次数为6000,检测物体种类为2时,用户使用cpu训练模型,至少需要4GB内存;使用单GPU训练模型,至少需要6GB;

S3-2、当输入图像大小为416*416,参数random为0,batch_szie参数为16,迭代次数为6000,检测物体种类为2时,用户使用cpu训练模型,至少需要2GB内存;使用单GPU训练模型,至少需要4GB;

S3-3、当输入图像大小为608*608,参数random为1,batch_szie参数为64,迭代次数为6000,检测物体种类为2时,用户使用cpu训练模型,至少需要4GB内存;使用单GPU训练模型,至少需要8GB;

S3-4、当输入图像大小为608*608,参数random为0,batch_szie参数为16,迭代次数为6000,检测物体种类为2时,用户使用cpu训练模型,至少需要3GB内存;使用单GPU训练模型,至少需要6GB。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广西师范大学,未经广西师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202010584280.0/1.html,转载请声明来源钻瓜专利网。

同类专利
专利分类
×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top