CN116778473A - 基于改进的yolov5的蘑菇离线实时识别方法及系统 - Google Patents
基于改进的yolov5的蘑菇离线实时识别方法及系统 Download PDFInfo
- Publication number
- CN116778473A CN116778473A CN202310443238.0A CN202310443238A CN116778473A CN 116778473 A CN116778473 A CN 116778473A CN 202310443238 A CN202310443238 A CN 202310443238A CN 116778473 A CN116778473 A CN 116778473A
- Authority
- CN
- China
- Prior art keywords
- mushroom
- real
- time
- mushrooms
- time identification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 235000001674 Agaricus brunnescens Nutrition 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 14
- 231100000419 toxicity Toxicity 0.000 claims abstract description 9
- 230000001988 toxicity Effects 0.000 claims abstract description 9
- 238000011897 real-time detection Methods 0.000 claims abstract description 8
- 238000009432 framing Methods 0.000 claims abstract description 7
- 230000007246 mechanism Effects 0.000 claims description 39
- 238000011176 pooling Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 8
- 230000004913 activation Effects 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 5
- 238000003860 storage Methods 0.000 claims description 5
- 230000003993 interaction Effects 0.000 claims description 4
- 230000009193 crawling Effects 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 206010070863 Toxicity to various agents Diseases 0.000 claims description 2
- 239000011159 matrix material Substances 0.000 claims description 2
- 238000012800 visualization Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 208000001907 Mushroom Poisoning Diseases 0.000 description 4
- 208000005374 Poisoning Diseases 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 231100000572 poisoning Toxicity 0.000 description 3
- 230000000607 poisoning effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 208000024891 symptom Diseases 0.000 description 3
- 244000191482 Cantharellus cibarius Species 0.000 description 2
- 235000015722 Cantharellus cibarius Nutrition 0.000 description 2
- 238000002679 ablation Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 235000013305 food Nutrition 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000894007 species Species 0.000 description 2
- 231100000331 toxic Toxicity 0.000 description 2
- 230000002588 toxic effect Effects 0.000 description 2
- 244000251953 Agaricus brunnescens Species 0.000 description 1
- 244000045069 Agrocybe aegerita Species 0.000 description 1
- 241000223602 Alternaria alternata Species 0.000 description 1
- 241000134916 Amanita Species 0.000 description 1
- 241000948437 Amanita volvata Species 0.000 description 1
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 206010012735 Diarrhoea Diseases 0.000 description 1
- 241001313710 Dictyophora indusiata Species 0.000 description 1
- 240000006499 Flammulina velutipes Species 0.000 description 1
- 235000016640 Flammulina velutipes Nutrition 0.000 description 1
- 240000000588 Hericium erinaceus Species 0.000 description 1
- 235000007328 Hericium erinaceus Nutrition 0.000 description 1
- 240000000599 Lentinula edodes Species 0.000 description 1
- 235000001715 Lentinula edodes Nutrition 0.000 description 1
- 241000221638 Morchella Species 0.000 description 1
- 244000252132 Pleurotus eryngii Species 0.000 description 1
- 235000001681 Pleurotus eryngii Nutrition 0.000 description 1
- 235000001603 Pleurotus ostreatus Nutrition 0.000 description 1
- 240000001462 Pleurotus ostreatus Species 0.000 description 1
- 241000760168 Russula rubra Species 0.000 description 1
- 240000006794 Volvariella volvacea Species 0.000 description 1
- 206010047700 Vomiting Diseases 0.000 description 1
- 230000003712 anti-aging effect Effects 0.000 description 1
- 230000000844 anti-bacterial effect Effects 0.000 description 1
- 230000000259 anti-tumor effect Effects 0.000 description 1
- 239000003963 antioxidant agent Substances 0.000 description 1
- 230000003078 antioxidant effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000034994 death Effects 0.000 description 1
- 231100000517 death Toxicity 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 230000006806 disease prevention Effects 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000004957 immunoregulator effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001018 virulence Effects 0.000 description 1
- 230000008673 vomiting Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了基于改进的YOLOV5的蘑菇离线实时识别方法及系统,属于蘑菇实时离线识别技术领域。包括获取采集时的实时蘑菇图像;将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;根据蘑菇的类别,生成对应的蘑菇资料卡。能够在离线状态下对蘑菇进行实时识别并及时反馈,通过资料卡的形式显示出蘑菇的种类、毒性、价值等资料,对蘑菇的种类进行准确的判断;解决了现有技术中存在“野外采集蘑菇的人员,无法对蘑菇种类进行准确鉴别”的问题。
Description
技术领域
本发明涉及蘑菇实时离线识别技术领域,特别是涉及基于改进的YOLOV5的蘑菇离线实时识别方法及系统。
背景技术
本部分的陈述仅仅是提到了与本发明相关的背景技术,并不必然构成现有技术。
《中国疾病预防控制中心周报》发布一篇研究,2010年至2020年期间,全国共报告了10036起食源性蘑菇中毒事件,导致38676起疾病、21967人住院,788人死亡。蘑菇中毒是我国最严重食品安全问题之一。我国每年都有毒蘑菇中毒事件发生,以春夏季最为多见,可致人死亡。人们因无法对蘑菇的种类进行准确判断而造成此类事件的发生。
近年来由于误食毒蘑菇而导致的中毒事件频发不止,而且现有的有效、安全且快速、方便检测蘑菇毒性的应用很少,市场上虽存在蘑菇在线识别软件,但是无法摆脱对网络的依赖,在离线状态下无法在保证精确度的同时完成识别任务。
此外,蘑菇图像具有不同生长阶段图像差异大的特点,现有算法无法对其进行高精度地识别且无法实现对蘑菇图像成体幼体的分类。
发明内容
为了解决现有技术的不足,本发明提供了基于改进的YOLOV5的蘑菇离线实时识别方法、系统、电子设备及计算机可读存储介质,适用于野外的蘑菇采摘,可以在离线状态下对蘑菇进行实时识别并及时反馈,通过资料卡的形式显示出蘑菇的种类、毒性、价值等资料,便于采摘人员对蘑菇种类的鉴别。
第一方面,本发明提供了基于改进的YOLOV5的蘑菇离线实时识别方法;
基于改进的YOLOV5的蘑菇离线实时识别方法,包括:
获取采集时的实时蘑菇图像;
将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;
根据蘑菇的类别,生成对应的蘑菇资料卡;
其中,蘑菇实时识别模型为改进的YOLOV5模型,部署于本地设备;在YOLOV5模型的主干网络中,在二维卷积层后添加CBAM注意力机制,在主干网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
进一步的,所述CBAM注意力机制包括通道注意力机制和空间注意力机制;
所述通道注意力机制用于将实时蘑菇图像的特征图进行全局最大池化和全局平均池化,对特征映射基于两个维度压缩,获得两张不同维度的特征图;将两张特征图在通道维度堆叠,经过sigmoid激活函数将特征图的每个通道的权重归一化;将归一化后的权重和输入特征图相乘,获取输出特征图;
所述空间注意力机制用于对输出特征图在通道维度下做最大池化和平均池化,将池化后的两张特征图在通道维度堆叠,使用卷积核融合通道信息,将卷积后的结果经过sigmoid函数对特征图的空间权重归一化,再将输入的输出特征图和权重相乘。
进一步的,ECA注意力机制用于对输入特征图进行全局平均池化,将输入特征图从三维矩阵变成一维向量;根据特征图的通道数计算得到自适应的一维卷积核大小,将一维卷积核大小用于一维卷积中,得到对于特征图的每个通道的权重;将归一化权重和原输入特征图逐通道相乘,生成加权后的特征图。
进一步的,所述获取采集时的实时蘑菇图像具体为:发出拍摄指令至USB摄像头,以控制USB摄像头对进入拍摄范围的蘑菇进行拍摄;发出图像调用指令至USB摄像头,调用USB摄像头中的实时蘑菇图像。
进一步的,在训练蘑菇实时识别模型时,通过网络爬取或搜索引擎采集蘑菇图片,并进行去重、删除无效样本操作和数据整合操作,构建样本数据集;在进行标注时,将样本数据集中的蘑菇幼体图片和蘑菇成体图片分为两类分别标注。
进一步的,所述根据蘑菇的类别,生成对应的蘑菇资料卡具体为:根据蘑菇的类别,调用本地数据库中对应的资料卡文件,生成对应的蘑菇资料卡;
其中,蘑菇资料卡包括名称、毒性、分布区域、属、种、门、别名、变种、生长环境、治疗方法、中毒症状和药用价值。
进一步的,还包括:
对实时蘑菇图像进行可视化处理,以显示于用户交互界面的检测区,展示USB摄像头的实时识别画面;
对蘑菇资料卡进行可视化处理,以显示于用户交互界面的资料区。
第二方面,本发明提供了基于改进的YOLOV5的蘑菇离线实时识别系统;
基于改进的YOLOV5的蘑菇离线实时识别系统,包括:
数据获取模块,用于获取采集时的实时蘑菇图像;
实时识别模块,用于将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;
资料生成模块,用于根据蘑菇的类别,生成对应的蘑菇资料卡;
其中,蘑菇实时识别模型为改进的YOLOV5模型,部署于本地设备;在YOLOV5模型的主干网络中,在二维卷积层后添加CBAM注意力机制,在主干网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
第三方面,本发明提供了一种电子设备;
一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成上述基于改进的YOLOV5的蘑菇离线实时识别方法的步骤。
第四方面,本发明提供了一种计算机可读存储介质;
一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成上述基于改进的YOLOV5的蘑菇离线实时识别方法的步骤。
与现有技术相比,本发明的有益效果是:
本发明所提出的基于改进的YOLOV5的蘑菇离线实时识别方法,对原有的YOLOV5模型进行改进,增加了识别的精度,同时可摆脱对网络的依赖,在离线状态下完成实时检测任务,以减少蘑菇中毒事件的发生。能有效地帮助蘑菇采集人员在野外完成采集工作。除此之外,蘑菇资料卡可作为蘑菇图鉴,进行蘑菇科学知识普及。
通过事先对目标进行训练并生成模型,然后将模型部署到本地设备上进行推理,实现离线识别。
附图说明
构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
图1为本发明实施例提供的基于改进的YOLOV5的蘑菇离线实时识别方法的流程示意图;
图2为本发明实施例提供的基于改进的YOLOV5的蘑菇离线实时识别方法的实施流程示意图;
图3为本发明实施例提供的基于改进的YOLOV5模型的BackBone网络的网络架构示意图;
图4为本发明实施例提供的基于改进的YOLOV5模型的C5模块的网络架构示意图;
图5为本发明实施例提供的以“鸡油菌”为例的人机交互界面的示例图;
图6为本发明实施例提供的Yolov5s+cbam+eca模型评价指标示意图;
图7为本发明实施例提供的模型消融实验结果图;
图8为本发明实施例提供的蘑菇离线实时识别装置连接实物图。
具体实施方式
应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本发明使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本发明的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
实施例一
现有技术中,无法在离线状态下对蘑菇进行准确识别;因此,本发明提供了基于改进的YOLOV5的蘑菇离线实时识别方法,对YOLO V5模型进行改进,基于蘑菇数据集进行训练和构建,实时对采集到的蘑菇图像进行识别。
接下来,结合图1-图8对本实施例公开的基于改进的YOLOV5的蘑菇离线实时识别方法进行详细说明。该基于改进的YOLOV5的蘑菇离线实时识别方法,包括如下步骤:
S1、获取采集时的实时蘑菇图像;具体的,发出拍摄指令至USB摄像头,以控制USB摄像头对进入拍摄范围的蘑菇进行拍摄;发出图像调用指令至USB摄像头,调用USB摄像头中的实时蘑菇图像。
示例性的,导入OpenCV模块,创建变量capture,并使用函数cv2.VideoCapture()来获取摄像头的索引,最后使用函数cv2.imread()读取摄像头的每一帧图像。。
S2、将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体。
具体流程如下:
(1)识别:预测图像中各个蘑菇的种类。
(2)定位:给定各个蘑菇在图像中的位置。
(3)分割:确定每个像素属于哪个蘑菇。
其中,蘑菇实时识别模型为改进的YOLOV5模型,在YOLOV5模型的颈部网络中,在二维卷积层后添加CBAM注意力机制,在颈部网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
通道注意力机制用于将实时蘑菇图像的特征图进行全局最大池化和全局平均池化,对特征映射基于两个维度压缩,获得两张不同维度的特征图;将两张特征图在通道维度堆叠,经过sigmoid激活函数将特征图的每个通道的权重归一化;将归一化后的权重和输入特征图相乘,获取输出特征图。
空间注意力机制用于对输出特征图在通道维度下做最大池化和平均池化,将池化后的两张特征图在通道维度堆叠,使用卷积核融合通道信息,将卷积后的结果经过sigmoid函数对特征图的空间权重归一化,再将输入的输出特征图和权重相乘。
在改进的YOLOV5模型对数据进行处理之前,需要对改进的YOLOV5模型进行训练,流程如下:
首先,通过从网络爬取或搜索引擎采集获取蘑菇样本图像,同时对图像进行去重、删除无效样本等操作,通过添加略微修改的现有数据、或从现有数据中重新合成新数据来增加数据量,以解决某些蘑菇种类的图片数量较少的问题,难以形成准确的数据集的问题;通过在PyTorch中引入torchvision.transforms下的类来实现尺寸变化、像素值变化、视角变化,形成蘑菇样本数据集。
然后,由于蘑菇幼体与成体差距大,在对已有蘑菇图片样本进行标注时,对图片样本进行分类整合。将幼体与成体的数据分为两类使用LabelImg软件标注。示例性的,在LabelImg软件中,点击PascalVOC按钮转换为YOLO格式,建立预定义文本文件,并写入预定义训练的类别,用Open/OpenDIR按钮来打开单张或者多张数据图片,点击Create/nRectBox按钮框取图片中的蘑菇实体,选择目标类别并点击确认。在LabelImg软件标注中,预定义训练的类别为蘑菇标签,蘑菇标签为蘑菇种类的拼音缩写。
再基于标注分类后的数据集进行模型的训练。
将SIoU评价指标引入到IoU loss损失函数中,SIoU通过平滑系数σ来降低IoU的敏感度,使得模型更加稳定。。
其中,P表示预测框,G表示真实框,|P∩G|表示预测框和真实框的交集大小,|P∪G|表示预测框和真实框的并集大小,σ是一个平滑系数,通常取1e-6
SIoU相比于传统的IoU评价指标,SIoU具有以下优点:具有更好的鲁棒性、更能准确反映目标匹配的情况、更加平滑。它考虑了真实框和预测框之间的向量角度,重新定义相关损失函数,具体包含四个部分:角度损失、距离损失、大小损失和置信度损失。
YOLO V5模型使用Pytorch框架,在YOLO V5中,模型构造主要包括以下几个方面:
1.Backbone网络:YOLO V5使用的是CSPDarkNet作为其Backbone网络。CSPDarkNet是在DarkNet53基础上进行了改进,使得模型性能和速度更加优秀。
2.Neck网络:YOLO V5的Neck网络采用了Spatial Pyramid Pooling和PathAggregation Network结构。SPP可以通过不同的池化尺寸来捕捉不同尺度的特征,而PAN则可以通过信息聚合来提高模型的准确性。
3.Head网络:YOLO V5的Head网络采用了多层卷积和残差块来进行检测。每个检测层可以预测不同数量的边界框,每个边界框可以预测不同的类别概率,同时还能够输出边界框的坐标位置。
4.FPN网络:可以针对不同尺度的目标,使用FPN来实现特征的上采样或下采样等操作。模型训练简单,识别速度快,识别准确率高,能够批处理推理产生实时结果,并能够将Pytorch权重文件转化为安卓使用的ONXX格式、OPENCV的使用格式,还可通过CoreML转化为IOS格式,直接部署到其他应用端,具有一定可移植性。
本实施例对于YOLO V5模型中的Backbone网络采用CBAM注意力机制进行改进,CBAM注意力机制是一种用于前馈卷积神经网络的简单而有效的注意模块。通过结合CBAM注意力机制,YOLO V5可以进一步加强模型的关注能力,提高目标检测的精度和鲁棒性。
本实施例对于YOLO V5模型中的Backbone网络采用ECA注意力机制进行改进,ECA注意力机制是一种高效的通道注意力机制,能提高深度卷积网络的性能,并克服性能和复杂性之间权衡矛盾。通过与EBA注意力机制结合,YOLO V5可以进一步提高模型的关注能力,增强模型对目标的检测和识别能力,从而提高目标检测的精度和鲁棒性。
具体的,将实时蘑菇图像输入蘑菇实时识别模型,backbone网络如图3所示,每一层的输入特征是上一层的输出特征。第0层:Conv1,输入图像的卷积层,接受输入图像,图像大小为416x416,使用64个卷积核对实时蘑菇图像进行卷积,步长为2,核大小为6x6;得到输出张量P1,大小为输入的一半,208x208。第1层:Conv2,对张量P1进行卷积,使用128个卷积核进行卷积,步长为2,核大小为3x3,得到输出张量P2,大小为输入的四分之一,104x104。第2层:C3_ECA_Attention,使用了改进后的C3_ECA_Attention模块,该模块有三个重复的C3模块,每个C3模块中间带有一个ECA模块。C3模块包含了一层1x1卷积、一层3x3卷积和一个残差连接,以及批归一化和激活函数ReLU。ECA模块是通道注意力机制的一种,可以增强网络的表征能力。经过这个模块的处理,P2得到了空间注意力机制的增强。第3层:Conv3,同第1层,使用256个卷积核对张量P2进行卷积,步长为2,核大小为3x3,得到输出张量P3,大小为输入的八分之一,52x52。第4层:C3_ECA_Attention,同第2层,使用CSPNet中的C3模块和ECA模块进行特征提取和注意力加权,P3经过了6个重复的C3_ECA_Attention模块,得到了通道注意力机制的增强。第5层:Conv4,同第1层和第3层,使用512个卷积核对P3进行卷积,步长为2,核大小为3x3,得到输出张量P4,大小为输入的十六分之一,26x26。第6层:C3_ECA_Attention,同第2层和第4层,使用CSPNet中的C3模块和ECA模块进行特征提取和注意力加权。第7层:Conv5,同第1层、第3层和第5层,使用1024个卷积核对P4进行卷积,步长为2,核大小为3x3,得到输出张量P5,大小为输入的三十二分之一,13x13。第8层:C3_ECA_Attention,同第2层、第4层和第6层,使用CSPNet中的C3模块和ECA模块进行特征提取和注意力加权。第9层:CBAM,使用CBAM模块进行注意力加权。第10层:SPPFCSPC,使用SPP模块和FCOS模块进行特征提取,P5经过了一个SPPFCSPC模块,该模块包括了一个空间金字塔池化模块(SPP)和一个特征整合模块(FCSPC),得到了最终的输出张量。通过这些卷积层和模块,YOLOv5的backbone网络可以提取输入图像的特征,为检测不同生长阶段的蘑菇提供更加准确和丰富的信息。其中,C3_ECA_Attention模块由三层卷积结构、通道注意力机制、空间注意力机制构成,可进行特征提取和注意力加权,可以有效提高特征表达能力和检测精度,以进行高精度地识别不同生长阶段的蘑菇,实现对蘑菇图像成体幼体的分类。SPPFCSPC模块由空间金字塔池化结构、卷积层构成,采用SPPFCSPC模块结合的方式进行特征提取和检测,可以提高检测效率和准确率。
最终YOLOv5使用了一个卷积神经网络将输入图像转换为一组特征张量,然后将每个特征张量上的位置和大小转化为预测框,并对每个预测框进行分类和置信度打分。
在YOLOv5的输出中,每个预测框包含一个位置和大小,以及每个类别的置信度得分。具体来说,对于每个预测框,YOLOv5预测了4个坐标值,分别是中心点坐标x和y,以及预测框的宽度w和高度h。
在分类方面,YOLOv5使用softmax激活函数将每个类别的得分归一化,并计算每个预测框中所有类别的置信度得分。最终,每个预测框的得分是类别得分和置信度得分的乘积,得分最高的类别即为最终输出的结果类别
本实施例通过CBAM注意力机制与ECA注意力机制对YOLO V5的模型进行改进,增强模型对目标的检测和识别能力与精度,如图7所示,可以达到96.75%的准确率。并设计消融实验,分别构建Yolov5s、Yolov5s+cbam、Yolov5s+gam、Yolov5s+eca、Yolov5s+gam+eca模型,通过在测试集上的识别结果,分别计算精确度、回召率、平均精度均值,与本模型Yolov5s+cbam+eca的实验结果进行对比。实验表明,本模型在精确度、回召率、平均精度均值指标上均有明显提升,如图7所示。
S3、根据蘑菇的类别,生成对应的蘑菇资料卡。具体的,根据蘑菇的类别,调用本地数据库中对应的资料卡文件,生成对应的蘑菇资料卡
蘑菇资料卡,内容具体包括:名称,毒性,分布区域,属,种,门,别名,变种,生长环境,治疗方法,中毒症状,药用价值。其中,名称包括:白毒伞、草菇、茶树菇、毒蝇鹅膏、黄粉末牛肝菌、红菇、灰花纹鹅膏菌、猴头菇、鸡油菌、金针菇、平菇、双孢蘑菇、杏鲍菇、香菇、羊肚菌、竹荪等;毒性包括剧毒、可食用、有毒、有毒可入药、食药兼用;分布区域包括具体分布的国家和地区;中毒症状包括:中毒潜伏期、发病持续时长、死亡率、呕吐、腹泻等症状;药用价值包括:抗肿瘤、抗氧化、抗菌、免疫调节、降血糖、抗衰老等。
进一步的,在一些实施例中,对实时蘑菇图像进行可视化处理,以显示于用户交互界面的检测区,展示USB摄像头的实时识别画面;对蘑菇资料卡进行可视化处理,以显示于用户交互界面的资料区。
进一步的,在一些实施例中,该方法可以部署于基于YOLO V5的蘑菇离线实时识别装置,该基于YOLO V5的蘑菇离线实时识别装置包括Jetson nano开发板、7inch HDMI触摸显示屏、海康威视DS-E14摄像头,TYPE-C接口的数据线,USB接口数据线1,HDMI数据线,SD存储卡,USB接口数据线2。USB接口的数据线1连接海康威视DS-E14摄像头,HDMI数据线连接7inch HDMI触摸显示屏,USB接口的数据线2连接7inch HDMI触摸显示屏,SD存储卡放入到开发板卡槽。连接后的装置如图8所示。
部署方案为:在nano开发板上安装pycharm并配置相应的开发环境,通过mogu.py文件进入系统,或直接通过nano开发板的Linux终端输入指令直接启动,启动HDMI触摸显示屏,利用外接USB摄像头进行实时检测。
实施例二
本实施例公开了基于改进的YOLOV5的蘑菇离线实时识别系统,包括:
数据获取模块,用于获取采集时的实时蘑菇图像;
实时识别模块,用于将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;
资料生成模块,用于根据蘑菇的类别,生成对应的蘑菇资料卡;
其中,蘑菇实时识别模型为改进的YOLOV5模型,在YOLOV5模型的颈部网络中,在二维卷积层后添加CBAM注意力机制,在颈部网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
此处需要说明的是,上述数据获取模块、实时识别模块和资料生成模块对应于实施例一中的步骤,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为系统的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。
实施例三
本发明实施例三提供一种电子设备,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,计算机指令被处理器运行时,完成上述基于改进的YOLOV5的蘑菇离线实时识别方法的步骤。
实施例四
本发明实施例四提供一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时,完成上述基于改进的YOLOV5的蘑菇离线实时识别方法的步骤。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述实施例中对各个实施例的描述各有侧重,某个实施例中没有详述的部分可以参见其他实施例的相关描述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,包括:
获取采集时的实时蘑菇图像;
将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;
根据蘑菇的类别,生成对应的蘑菇资料卡;
其中,蘑菇实时识别模型为改进的YOLOV5模型,在YOLOV5模型的主干网络中,在二维卷积层后添加CBAM注意力机制,在主干网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
2.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,所述CBAM注意力机制包括通道注意力机制和空间注意力机制;
所述通道注意力机制用于将实时蘑菇图像的特征图进行全局最大池化和全局平均池化,对特征映射基于两个维度压缩,获得两张不同维度的特征图;将两张特征图在通道维度堆叠,经过sigmoid激活函数将特征图的每个通道的权重归一化;将归一化后的权重和输入特征图相乘,获取输出特征图;
所述空间注意力机制用于对输出特征图在通道维度下做最大池化和平均池化,将池化后的两张特征图在通道维度堆叠,使用卷积核融合通道信息,将卷积后的结果经过sigmoid函数对特征图的空间权重归一化,再将输入的输出特征图和权重相乘。
3.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,ECA注意力机制用于对输入特征图进行全局平均池化,将输入特征图从三维矩阵变成一维向量;根据特征图的通道数计算得到自适应的一维卷积核大小,将一维卷积核大小用于一维卷积中,得到对于特征图的每个通道的权重;将归一化权重和原输入特征图逐通道相乘,生成加权后的特征图。
4.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,所述获取采集时的实时蘑菇图像具体为:发出拍摄指令至USB摄像头,以控制USB摄像头对进入拍摄范围的蘑菇进行拍摄;发出图像调用指令至USB摄像头,调用USB摄像头中的实时蘑菇图像。
5.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,在训练蘑菇实时识别模型时,通过网络爬取或搜索引擎采集蘑菇图片,并进行去重、删除无效样本操作和数据整合操作,构建样本数据集;在进行标注时,将样本数据集中的蘑菇幼体图片和蘑菇成体图片分为两类。
6.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,所述根据蘑菇的类别,生成对应的蘑菇资料卡具体为:根据蘑菇的类别,调用本地数据库中对应的资料卡文件,生成对应的蘑菇资料卡;
其中,蘑菇资料卡包括名称、毒性、分布区域、属、种、门、别名、变种、生长环境、治疗方法、中毒症状和药用价值。
7.如权利要求1所述的基于改进的YOLOV5的蘑菇离线实时识别方法,其特征在于,还包括:
对实时蘑菇图像进行可视化处理,以显示于用户交互界面的检测区,展示USB摄像头的实时识别画面;
对蘑菇资料卡进行可视化处理,以显示于用户交互界面的资料区。
8.基于改进的YOLOV5的蘑菇离线实时识别系统,其特征在于,包括:
数据获取模块,用于获取采集时的实时蘑菇图像;
实时识别模块,用于将实时蘑菇图像输入训练好的蘑菇实时识别模型进行处理,识别实时蘑菇图像中所有蘑菇的类别和位置,通过实时检测窗口框定被识别蘑菇实体;
资料生成模块,用于根据蘑菇的类别,生成对应的蘑菇资料卡;
其中,蘑菇实时识别模型为改进的YOLOV5模型,在YOLOV5模型的主干网络中,在二维卷积层后添加CBAM注意力机制,在主干网络的综合卷积模块中,在全连接层后添加ECA注意力机制,将空间金字塔池化层由SPPF替换为SPPFCSPC。
9.一种电子设备,其特征在于,包括存储器和处理器以及存储在存储器上并在处理器上运行的计算机指令,所述计算机指令被处理器运行时,完成权利要求1-7任一项所述的步骤。
10.一种计算机可读存储介质,其特征在于,用于存储计算机指令,所述计算机指令被处理器执行时,完成权利要求1-7任一项所述的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310443238.0A CN116778473A (zh) | 2023-04-18 | 2023-04-18 | 基于改进的yolov5的蘑菇离线实时识别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310443238.0A CN116778473A (zh) | 2023-04-18 | 2023-04-18 | 基于改进的yolov5的蘑菇离线实时识别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116778473A true CN116778473A (zh) | 2023-09-19 |
Family
ID=87986817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310443238.0A Pending CN116778473A (zh) | 2023-04-18 | 2023-04-18 | 基于改进的yolov5的蘑菇离线实时识别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116778473A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152620A (zh) * | 2023-10-30 | 2023-12-01 | 江西立盾光电科技有限公司 | 一种跟随植物状态变化的植物生长控制方法及系统 |
-
2023
- 2023-04-18 CN CN202310443238.0A patent/CN116778473A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117152620A (zh) * | 2023-10-30 | 2023-12-01 | 江西立盾光电科技有限公司 | 一种跟随植物状态变化的植物生长控制方法及系统 |
CN117152620B (zh) * | 2023-10-30 | 2024-02-13 | 江西立盾光电科技有限公司 | 一种跟随植物状态变化的植物生长控制方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Detecting soybean leaf disease from synthetic image using multi-feature fusion faster R-CNN | |
CN107944442B (zh) | 基于改进卷积神经网络的对象检测装置及方法 | |
CN113065558A (zh) | 一种结合注意力机制的轻量级小目标检测方法 | |
CN111291809B (zh) | 一种处理装置、方法及存储介质 | |
CN110378381A (zh) | 物体检测方法、装置和计算机存储介质 | |
CN108121931B (zh) | 二维码数据处理方法、装置及移动终端 | |
Lyu et al. | Small object recognition algorithm of grain pests based on SSD feature fusion | |
CN110222718B (zh) | 图像处理的方法及装置 | |
CN115240121A (zh) | 一种用于增强行人局部特征的联合建模方法和装置 | |
CN110991444B (zh) | 面向复杂场景的车牌识别方法及装置 | |
CN111898651A (zh) | 一种基于Tiny YOLOV3算法的树木检测方法 | |
Tagare et al. | A maximum-likelihood strategy for directing attention during visual search | |
CN114092487A (zh) | 目标果实实例分割方法及系统 | |
CN110084284A (zh) | 基于区域卷积神经网络的目标检测与二级分类算法及装置 | |
CN113837316B (zh) | 一种基于农产品的异常区域检测方法、装置、设备及介质 | |
CN111488766A (zh) | 目标检测方法和装置 | |
CN114882222A (zh) | 改进YOLOv5目标检测模型构建方法及用于茶嫩芽识别与采摘点定位方法 | |
CN108734200A (zh) | 基于bing特征的人体目标视觉检测方法和装置 | |
CN111368637A (zh) | 一种基于多掩模卷积神经网络的搬运机器人识别目标方法 | |
CN116778473A (zh) | 基于改进的yolov5的蘑菇离线实时识别方法及系统 | |
CN114049325A (zh) | 轻量化人脸口罩佩戴检测模型的构建方法及应用 | |
CN114926734B (zh) | 基于特征聚合和注意融合的固体废弃物检测装置及方法 | |
CN112396036A (zh) | 一种结合空间变换网络和多尺度特征提取的遮挡行人重识别方法 | |
CN115294467A (zh) | 茶叶病害的检测方法及相关装置 | |
CN109615610B (zh) | 一种基于YOLO v2-tiny的医用创可贴瑕疵检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |