基于改进卷积神经网络的水果腐烂识别方法及装置
未命名
09-21
阅读:60
评论:0

1.本发明属于计算机技术图像识别技术领域,具体涉及一种基于改进卷积神经网络的水果腐烂识别方法及装置。
背景技术:
2.随着人们生活水平的提高,对食品安全和品质的关注程度不断增加。水果是人们日常饮食生活中重要的一部分,对水果品质的检测和鉴定越来越受到关注。同时,随着互联网和移动互联网的普及,以水果为代表的电商生鲜业迅速发展,水果的新鲜度和品质成为用户考虑的重要因素。
3.水果腐烂识别技术可以有效地检测和鉴定水果的品质和新鲜度,提高水果的安全性和健康价值。对于水果种植和销售行业,可以帮助农民提高水果的产量和质量,提高农产品市场竞争力;对于超市和电商平台,可以降低物流成本和库存成本,增强用户对其的信任和忠诚度。相比于传统的图像识别方法,深度学习技术无需人工设计特征,系统可以自行学习归纳出特征;识别准确率高,深度学习在图像识别方面的错误率也已经低于人类平均水平。
技术实现要素:
4.发明目的:本发明提供了一种基于改进卷积神经网络的水果腐烂识别方法及装置,自适应能力强、准确率高、能有效提高水果是否腐烂的识别率。
5.技术方案:本发明提出一种基于改进卷积神经网络的水果腐烂识别方法,包括以下步骤:
6.步骤1:采集并保存新鲜和腐烂水果图像数据,根据水果类别对图像数据进行人工标注,并制作成数据集;
7.步骤2:将数据集按照一定比例分割为训练集和测试集并且对图像进行预处理;
8.步骤3:构建基于改进卷积神经网络识别模型,所述改进卷积神经网络识别模型包括常规特征提取模块和迭代特征提取模块,所述迭代特征提取模块包括三个wide_stack模块;所述wide_stack模块是将inception结构主体替换成采用不同程度的分组卷积提取不同尺度和层次的特征,根据不同特征提取阶段加入空间注意力机制和通道注意力机制,再加上残差连接进行迭代特征提取;
9.步骤4:通过多次迭代得到最好的预训练模型权重,然后对测试集的样本数据进行验证分类。
10.进一步地,所述步骤2中对图像进行预处理过程如下:
11.对样本数据进行数据增强处理,包括对图像的对比度、亮度、颜色平衡进行调整,旋转、镜像处理、裁剪统一大小,随机添加噪声点提升模型的泛化能力。
12.进一步地,所述步骤3中的三个wide_stack模块结构如下:
13.第一个wide_stack模块采用5个分支构建多尺度特征提取模块,第二个wide_
stack模块采用6个分支构建多尺度特征提取模块,第三个wide_stack模块采用7个分支构建多尺度特征提取模块;每个wide_stack模块前n-1个分支采用不同程度的分组卷积进行特征提取,最后一个分支采用一个3*3的最大池化,最大池化分支提取整幅图像的最显著特征。
14.进一步地,所述wide_stack模块的前n-1分支的分组卷积之后再经过一个batchnorm、bam空间注意力和一个relu激活函数,分组提取完特征的特征图再进行通道全卷积,同时经过一个batchnorm、se通道注意力和一个relu激活函数。
15.进一步地,所述wide_stack模块每一个分支先采用1*1的卷积增加通道数,再进行分组卷积和通道全卷积,通道全卷积的结果进行tensor cat操作,将所有分支的特征通道叠加,叠加之后采用1*1的卷积对通道进行降维;然后进行一次残差连接,第一个wide_stack模块采用1*1的卷积核作为残差连接,后两个wide_stack模块采用3*3的卷积核作为残差连接。
16.进一步地,所述步骤3中常规特征提取模块为:在wide_stack模块之前采用常规的7*7的卷积对输入进行提取和降维,接着采用一次最大池化对特征图大小进一步降维。
17.进一步地,在三个wide_stack模块之后还采用7*7的平均池化、全连接层,并在在全连接层前面加入dropout函数,选取交叉熵损失函数。
18.本发明还公开一种基于改进卷积神经网络的水果腐烂识别装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被加载至处理器时实现上述基于改进卷积神经网络的水果腐烂识别方法的步骤。
19.有益效果:
20.1、本发明采用在inception内部使用分组卷积,原本inception结构在不同卷积核的组合可以提取不同尺度和层次的特征,本发明取而代之的是通过不同程度的分组配置来提取不同尺度和层次的特征,通过调整分组的数量和大小,可以实现对特征提取的控制,每个卷积核只能看到部分输入通道,从而使每个卷积核的学习参数更加集中,而且分成多组可以充分利用计算资源的并行性,提高卷积运算的效率。
21.2、本发明将空间注意力机制和通道注意力机制分开采用,在卷积分组的时候采用空间注意力机制,集中空间上的参数学习,通道全卷积的时候采用通道注意力机制,对通道这个维度更加集中学习,“因地制宜”式的使用注意力机制。
22.3、本发明通过多个模块的相互堆叠,实现了特征的融合,提高了水果腐烂识别的普适性和精准性。
附图说明
23.图1为基于改进卷积神经网络的水果腐烂识别方法的流程图;
24.图2为本发明构建的水果腐烂识别网络模型结构示意图;
25.图3为图2中wide_stack1模块的结构示意图;
26.图4为图2中wide_stack2模块的结构示意图;
27.图5为图2中wide_stack3模块的结构示意图。
具体实施方式
28.下面结合附图对本发明作进一步详细说明。
29.本发明提出一种基于改进卷积神经网络的水果腐烂识别方法,如图1所示,具体包括以下步骤:
30.步骤1:采集并保存新鲜和腐烂水果图像数据,并对水果类别对图像数据进行人工标注,并制作成数据集。本实施例中,水果图像为三种最常见的水果,分别为苹果,香蕉,橘子,每种水果又分为新鲜和腐烂两类。包含不同视角的下以及不同程度的腐烂水果。
31.步骤2:将数据集按照一定比例分割为训练集和测试集并且对新鲜和腐烂水果图像进行预处理。
32.新鲜与腐烂的水果图片样本按照8:2分割为训练集和测试集,测试集用于检测通过训练集训练好的神经网络模型的准确率。
33.对新鲜和腐烂水果数据集的样本数据进行预处理,包括:
34.对样本数据进行数据增强处理,包括对图像的对比度、亮度、颜色平衡等进行调整,旋转,镜像处理,裁剪统一大小,随机添加噪声点提升模型的泛化能力。经过预处理后的数据集总共包含了13599张图片,其中训练集有10901张图片,测试集有2698张图片。
35.步骤3:构建基于改进卷积神经网络的水果腐烂识别模型,如图2所示,输入224*224*3的图像,采用通道数为64的7*7的卷积核,进行步长为2的卷积,得到特征向量(112,112,64),再经过一个batchnorm和一个relu激活函数。
36.然后进行3*3的最大池化,做一个降为操作,得到特征向量(56,56,64)。
37.接着特征向量经过迭代特征提取模块,迭代特征提取模块包括三个wide_stack模块。wide_stack1模块如图3所示,主干有5个分支,每个分支第一步都经过了通道数为96的1*1的卷积,每个分支得到特征向量(56,56,96),再经过一个batchnorm和一个relu激活函数;接着第一个分支特征向量分成96组卷积,及对每个通道单独进行特征提取;第二个分支特征向量分成48组卷积;第三个分支特征向量分成24组卷积;第四个分支特征向量分成12组卷积;第五个分支经过3*3的最大池化;前四个分支进行分组卷积(步长为2)之后再经过一个batchnorm,bam空间注意力和一个relu激活函数;接着前四个分支进行通道全卷积,然后经过一个batchnorm、se通道注意力、一个relu激活函数,最后一个分支进行3*3的卷积特征提取;将5个分支的特征向量进行tensor cat处理,得到特征向量(28,28,480),然后使用1*1的卷积核进行降维处理,再经过一个batchnorm和一个relu激活函数,得到特征向量(28,28,256)。在进入wide_stack1模块之前的输入经过步长为2的1*1卷积核将特征向量(56,56,64)变成(28,28,256),再经过一个batchnorm和一个relu激活函数,残差连接到降维处理后的输出。
38.如图4所示,进入到wide_stack2模块,主干有6个分支,每个分支第一步都经过了通道数为320的1*1的卷积,每个分支得到特征向量(28,28,320),再经过一个batchnorm和一个relu激活函数;接着第一个分支特征向量分成320组卷积;第二个分支特征向量分成160组卷积;第三个分支特征向量分成80组卷积;第四个分支特征向量分成40组卷积;第五个分支特征向量分成20组卷积;第六个分支经过3*3的最大池化;前五个分支进行分组卷积(步长为2)之后再经过一个batchnorm,bam空间注意力和一个relu激活函数;接着前五个分支进行通道全卷积,然后经过一个batchnorm,se通道注意力和一个relu激活函数,最后一
个分支进行3*3的卷积特征提取。将6个分支的特征向量进行tensor_cat处理,得到特征向量(14,14,1920),然后使用3*3的卷积核进行降维处理,再经过一个batchnorm和一个relu激活函数,得到特征向量(14,14,512);在进入wide_stack2模块之前的输入经过步长为2的1*1卷积核将特征向量(28,28,256)变成(14,14,512),再经过一个batchnorm和一个relu激活函数,残差连接到降维处理后的输出。
39.步骤7:如图5所示,进入到wide_stack3模块,主干有7个分支,每个分支第一步都经过了通道数为640的1*1的卷积,每个分支得到特征向量(14,14,640),再经过一个batchnorm和一个relu激活函数;接着第一个分支特征向量分成640组卷积;第二个分支特征向量分成320组卷积;第三个分支特征向量分成160组卷积;第四个分支特征向量分成80组卷积;第五个分支特征向量分成40组卷积;第六个分支特征向量分成20组卷积;第七个分支经过3*3的最大池化;前六个分支进行分组卷积(步长为2)之后再经过一个batchnorm,bam空间注意力和一个relu激活函数;接着前六个分支进行通道全卷积,然后经过一个batchnorm,se通道注意力和一个relu激活函数,最后一个分支进行3*3的卷积特征提取。将7个分支的特征向量进行tensor_cat处理,得到特征向量(7,7,4480),然后使用3*3的卷积核进行降维处理,再经过一个batchnorm和一个relu激活函数,得到特征向量(7,7,1024)。在进入wide_stack3模块之前的输入经过步长为2的1*1卷积核将特征向量(14,14,640)变成(7,7,1024),再经过一个batchnorm和一个relu激活函数,残差连接到降维处理后的输出。
40.如图2所示,wide_stack3模块输出以后,经采用7*7的平均池化,得到输出特征向量(1,1,1024)。
41.如图2所示,经过一次全连接层,由于模型具有一定复杂度,在全连接层前面加入dropout函数。
42.步骤4:通过多次迭代得到最好的预训练模型权重,然后对测试集的新鲜和腐败水果样本进行验证分类。
43.目标损失函数选取交叉熵损失函数,让模型预测结果不断逼近真实标签,采用adam作为优化器,把损失函数计算出的差值损失减小,让损失函数的收敛更稳定;交叉熵损失函数公式:
[0044][0045]
x的预测结果p(x)越大,则交叉熵f(x)越小。
[0046]
基于相同的发明构思,本发明提出一种基于改进卷积神经网络的水果腐烂识别装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中计算机程序被加载至处理器时实现上述的基于改进卷积神经网络的水果腐烂识别方法。
[0047]
本发明的性能评价指标采用准确率(accuracy)、精确率(precision)、召回率(recall)、综合评价指标(f-measure),各评价指标公式如下:
[0048][0049]
这个指标主要是分类正确的样本数占总样本数的比例,是对所有分类结果的综合
评价,包括正类和负类的分类。
[0050][0051]
精确率反映的是分类器对正样本的识别能力。精确率较高时,所分类的正样本准确率较高,但负样本的分类准确率较低。
[0052][0053]
这个指标所有分类正确的正样本数占正样本总数的比例,即分类为正样本中真正为正样本的样本数占总正样本数的比例,反映的是正例被分类器正确识别的能力;其中,tp表示正类预测为正类数;tn表示负类预测为负类数;fp表示负类预测为正类数;fn表示正类预测为负类数。
[0054]
针对precision和recall有时会在查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低,只能用于简单的分类任务,引入了f1-measure指标,这个指标对recall和precision加权调和平均数。其计算公式如下:
[0055][0056]
其中,β,p,r分别代表变量,准确率(precision),召回率(recall)。
[0057]
当β=1时,就是f1-measure。
[0058][0059]
最后利用水果腐烂识别模型对水果进行分类,同时与googlenet和resnet50做一个比较。
[0060]
表1本发明和resnet50、googlenet实验效果的比较
[0061]
modelnameaccuracyresnet5097.65%googlenet98.46%ours(wide_stack)99.47%
[0062]
用本发明水果腐烂识别的平均准确率在99.47%左右。
[0063]
上述实施方式只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
技术特征:
1.一种基于改进卷积神经网络的水果腐烂识别方法,其特征在于,包括以下步骤:步骤1:采集并保存新鲜和腐烂水果图像数据,根据水果类别对图像数据进行人工标注,并制作成数据集;步骤2:将数据集按照一定比例分割为训练集和测试集并且对图像进行预处理;步骤3:构建基于改进卷积神经网络识别模型,所述改进卷积神经网络识别模型包括常规特征提取模块和迭代特征提取模块,所述迭代特征提取模块包括三个wide_stack模块;所述wide_stack模块是将inception结构主体替换成采用不同程度的分组卷积提取不同尺度和层次的特征,根据不同特征提取阶段加入空间注意力机制和通道注意力机制,再加上残差连接进行迭代特征提取;步骤4:通过多次迭代得到最好的预训练模型权重,然后对测试集的样本数据进行验证分类。2.根据权利要求1所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,所述步骤2中对图像进行预处理过程如下:对样本数据进行数据增强处理,包括对图像的对比度、亮度、颜色平衡进行调整,旋转、镜像处理、裁剪统一大小,随机添加噪声点提升模型的泛化能力。3.根据权利要求1所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,所述步骤3中的三个wide_stack模块结构如下:第一个wide_stack模块采用5个分支构建多尺度特征提取模块,第二个wide_stack模块采用6个分支构建多尺度特征提取模块,第三个wide_stack模块采用7个分支构建多尺度特征提取模块;每个wide_stack模块前n-1个分支采用不同程度的分组卷积进行特征提取,最后一个分支采用一个3*3的最大池化,最大池化分支提取整幅图像的最显著特征。4.根据权利要求3所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,所述wide_stack模块的前n-1分支的分组卷积之后再经过一个batchnorm、bam空间注意力和一个relu激活函数,分组提取完特征的特征图再进行通道全卷积,同时经过一个batchnorm、se通道注意力和一个relu激活函数。5. 根据权利要求3或4所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,所述wide_stack模块每一个分支先采用1*1的卷积增加通道数,再进行分组卷积和通道全卷积,通道全卷积的结果进行tensor cat操作,将所有分支的特征通道叠加,叠加之后采用1*1的卷积对通道进行降维;然后进行一次残差连接,第一个wide_stack模块采用1*1的卷积核作为残差连接,后两个wide_stack模块采用3*3的卷积核作为残差连接。6.根据权利要求1所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,所述步骤3中常规特征提取模块为:在wide_stack模块之前采用常规的7*7的卷积对输入进行提取和降维,接着采用一次最大池化对特征图大小进一步降维。7.根据权利要求1所述的基于改进卷积神经网络的水果腐烂识别方法,其特征在于,在三个wide_stack模块之后还采用7*7的平均池化、全连接层,并在在全连接层前面加入dropout函数,选取交叉熵损失函数。8.一种基于改进卷积神经网络的水果腐烂识别装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被加载至处理器时实现根据权利要求1-7任一项所述的基于改进卷积神经网络的水果腐烂识别方法的步骤。
技术总结
本发明公开了一种基于改进卷积神经网络的水果腐烂识别方法及装置,包括:采集并保存常见的多类水果图像;进行人工标注,数据预处理,并制作成数据集;分成训练集和测试集;构建水果识别模型,模型主体包括常规特征提取模块和三次wide_stack模块;wide_stack模块是将inception结构主体替换成采用不同程度的分组卷积提取不同尺度和层次的特征,在分组卷积之后加入空间注意力机制加强空间提取;分组合并后加入通道注意力机制;外接残差模块。通过多次迭代得到最好的预训练模型权重,然后对测试集的水果新鲜和腐烂样本验证分类。本发明通过先分类后识别的方法来确定水果是否腐烂,鲁棒性更强,自适应能力更强,识别率更高。识别率更高。识别率更高。
技术研发人员:王媛媛 黄佳泷 李亚州 严少峰 宋照渝 朱俊勋 王梅峰 张海艳 高尚兵 林剑楚 任珂 刘步实
受保护的技术使用者:淮阴工学院
技术研发日:2023.06.21
技术公布日:2023/9/19
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种对硝基苯乙酸生产用不锈钢压滤罐的制作方法 下一篇:一种药片成型装置的制作方法