一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于SE-ResNet结构的轻量级种蛋蛋形识别方法与流程

2021-12-15 01:57:00 来源:中国专利 TAG:

一种基于se

resnet结构的轻量级种蛋蛋形识别方法
技术领域
1.本发明属于图像分类技术领域,具体涉及一种基于se

resnet结构的轻量级种蛋蛋形识别方法。


背景技术:

2.种蛋蛋形包括小蛋、畸形蛋、双黄蛋、标准蛋等,具有很高的研究价值。而蛋形是反应种鸡健康质量的一个很大的因素,每天会有大量的不合格种蛋没有被检查到,忽视了种鸡的健康质量,造成大量损失。种蛋蛋形的准确检测和鉴定是影响种鸡健康的关键要素,也是提高经济收益的关键。
3.传统的种蛋蛋形识别主要步骤是利用图像处理技术对蛋形图像进行预处理,对一些特定的特征进行特征提取之后,使用分类器对所提取到的特征进行分类,从而实现蛋形的分类识别。内蒙古农业大学的郁志宏提出利用计算机视觉分割种蛋蛋形试验,基于机器视觉和矩技术提取种蛋的长短径,剔除蛋形指数不合格种蛋后,再通过构建合理的遗传神经网络模型并建立分级算法。该方法检测圆蛋、过尖蛋、畸形蛋和正常蛋检测准确率分别达到了97.10%、95.59%、94.87%和95.75%,可以满足实际生产需求,但是该方法依然没有解决算法的耗时问题,而且只适用于检测白壳蛋;蛋形指数是衡量禽蛋外形特征的重要指标之一。
4.resnet在2015年被提出,在imagenet比赛classification任务上获得第一名,top

5的错误率达到了3.57%。因为它“简单与实用”并存,这个结构很好地利用了网络中的计算资源,并且在不增加计算负载的情况下,增加网络的宽度和深度。同时,为了优化网络质量,采用了hebbian原理和多尺度处理。resnet在分类和检测上都取得了不错的效果。
5.batch normalization szegedy,在batch normalization:accelerating deep network training by reducing internal covariate shift.2015.中批归一化,是为了解决internal covariate shift问题。bn就是通过一定的规范化手段,把每层神经网络任意神经元这个输入值的分布强行拉回到均值为0方差为1的标准正态分布,以避免梯度消失及加快网络收敛。通过bn和resnet结构相结合,提高了imagenet分类上的最佳结果:top

5的错误率达到了4.9%,超过了人类的水平。
6.在squeeze

and

excitation networks(senet)2017年的论文:“proceedings of the ieee conference on computer vision and pattern recognition.2018”,它赢得了最后一届imagenet 2017竞赛分类任务的冠军。senet关注于通道之间的关系,通过压缩

激励(se)块显式地建模通道之间的依赖关系即每个特征通道的重要程度,然后依照这个重要程度去提升有用的特征并抑制对当前任务用处不大的特征。并且senet思路很简单,很容易扩展在已有网络结构中。
7.为了提高针对种蛋蛋形识别的准确性、实时性及硬件的可支持性。当前学术界中比较成熟的以深度学习为主的物体识别方法在公开数据集上取得了较好的效果,但是农业数据具有其特殊之处,无法直接迁移应用。此外当前学术界中大部分较好的识别网络模型
都比较大,无法满足实际移动端的生产应用。


技术实现要素:

8.基于上述问题,本发明以种蛋蛋形为研究对象,自建了一个包含4类蛋形(包含正常类)的种蛋数据集,基于resnet、senet和批归一化算法,提出了一种轻量级蛋形识别网络。利用resnet结构,结合senet模块和bn层,设计了一种轻量级的网络架构,并在训练的过程中不断进行参数调优。
9.一种基于se

resnet结构的轻量级种蛋蛋形识别方法,包括:
10.步骤1.数据建立,采集种蛋蛋形样本图片,建立常见种蛋蛋形数据集;
11.步骤2.数据扩充,通过对数据集中样本图片旋转、平移、翻转,进行数据的扩充,扩大种蛋数据集;
12.步骤3.数据标注,采用labelme工具,对所述步骤2中扩充后的数据集中的样本图片进行数据标注;
13.步骤4.数据划分,将所述步骤3中标注后的种蛋蛋形数据集随机划分为训练集和测试集;
14.步骤5.模型构建,将senet和resnet34卷积神经网络结合,构建一个新的轻量级卷积神经网络模型,即se

resnet模型,该模型由多尺度卷积模块、卷积模块、最大池化层、se

resnet模块、senet模块、平均池化层和全连接层堆叠而成;
15.步骤6.模型训练,导入训练集,训练所述步骤建立的se

resnet模型,并保存训练好的se

resnet模型;
16.步骤7.使用测试集对所述步骤6训练好的se

resnet模型和其他卷积神经网络进行测试对比测试,以此来验证神经网络之间的优劣;
17.步骤8.利用测试好的se

resnet模型对种蛋进行识别。
18.优选地,步骤2中扩充后的种蛋数据集共包含小蛋、畸形蛋、双黄蛋、标准蛋4类3735张蛋形图片。
19.优选地,将步骤3中划分的训练集和测试集的比例为8:2。
20.优选地,步骤5建立的模型由1个多尺度卷积模块、1个卷积模块、2个最大池化层、4个se

resnet模块、1个se模块、1个平均池化层和1个全连接层构成。
21.优选地,卷积模块包括卷积层和批归一化处理层,在卷积层后进行批归一化处理。
22.优选地,resnet为resnetv2,其由1
×
1、3
×
3、1
×
1三个卷积核构成。
附图说明
23.图1为本发明提出的一种基于se

resnet结构的轻量级种蛋蛋形识别方法的步骤流程图;
24.图2为本发明方法中使用的se

resnet模型架构图;
25.图3为本发明方法中使用的多尺度特征提取结构图;
26.图4为resnetv1结构图;
27.图5为resnetv2结构图;
28.图6为本发明方法中使用的se

resnet模块图。
具体实施方式
29.如图1所示,本发明提出一种基于se

resnet结构的轻量级种蛋蛋形识别方法,包括如下步骤:
30.步骤1.数据建立。采集种蛋蛋形样本图片,建立常见种蛋蛋形数据集;
31.步骤2.数据扩充。通过对样本图片旋转、平移、翻转,扩大种蛋数据集。本发明中的数据集共包含小蛋、畸形蛋、双黄蛋、标准蛋4类3735张蛋形图片。
32.步骤3.数据标注。采用labelme工具,对步骤2的蛋形图片进行标注。
33.步骤4.数据划分。将步骤3标注后的种蛋蛋形数据集以8:2比例划分为训练集和测试集。
34.步骤5.模型构建。将senet和resnet34卷积神经网络进行结合,构建一个新的轻量级卷积神经网络模型,如图2所示,该模型由1个多尺度卷积模块,1个卷积模块,2个最大池化层,4个se

resnet模块,1个senet模块,1个平均池化层和1个全连接层堆叠而成。
35.多尺度卷积模块,如图3所示。由于蛋形种类较多,不同蛋形的大小、颜色、纹理特征存在较大的差异。同一种蛋形在蛋形不同阶段差异也比较明显;因此对输入的图片采用不同尺度的卷积核进行卷积,可以同时提取多种尺度特征提取的局部特征,增加网络的鲁棒性。
36.卷积模块,卷积模块是由卷积层和批归一化(bn)层构成,卷积后都采用bn层。批归一化的主要目的是通过一定的规范化手段把每层神经网络任意神经元这个输入值的分布强行拉回到均值为0方差为1的标准正态分布。这样有助于加快收敛速度,较好预测精度和模型泛化能力。
37.批归一化的主要操作步骤如下:
38.输入:一个批次中x的值:b={x1...m};需要学习的参数γ,β
39.输出:{y
i
=bn
γ
,β(x
i
)}
40.每个训练批次数据的均值:
41.每个训练批次数据的方差:
42.使用求得的均值和方差对该批次的数据做归一化:
43.规格转换:
44.其中,x是函数的输入;公式中b代表由多个x组成的集合;m是集合b包含x的数量;i代表集合b中x的位置信息;ε是为了避免除数为0时所使用的微小正数。
45.4个se

resnet模块。senet模型主要分为压缩、激励和复原三步。senet的具体流程如下:假设原来的特征图是h
×
w
×
c,先通过全局池化得到1
×1×
c的特征图(压缩);再使用全连接层、relu激活层、全连接层和softmax层,得到1
×1×
c的特征图(激励);最后恢复原来的特征图大小(复原)。
46.senet模型在压缩和复原过程中为了更好地拟合通道间复杂的相关性,极大地减
少了参数量和计算量,增加更多的非线性,在使用第一个全连接层时对神经元个数c除以r进行降维,其中r为通道的压缩比。然后通过第二个全连接层再升维,得到1
×1×
c的特征图。此外由于通道之间具有相关性,因此在第二个全连接层后采用softmax而不用sigmoid。
47.senet模型在激励模块中引入注意力机制,可以聚集图像中目标的局部特征,提高检测精度。该模型从特征通道之间的关系入手,显式地建模特征通道之间的相互依赖关系,采用了一种特征重标定的策略获取到每个特征通道的重要程度,然后依照这个重要程度去增强有用的特征并抑制对当前任务用处不大的特征,从而让整个网络结构不仅关注整体信息,还关注局部信息。
48.resnet引入了残差网络结构(residual network),残差网络借鉴了高速网络(highway network)的跨层链接思想,这种残差跳跃式的结构,打破了传统的神经网络n

1层的输出只能给n层作为输入的惯例,使某一层的输出可以直接跨过几层作为后面某一层的输入,其意义在于为叠加多层网络而使得整个学习模型的错误率不降反升的难题提供了新的方向。
49.resnet网络结构包含resnetv1和resnetv2两种。如图4所示,resnetv1网络结构是resnet中的基本模块,resnetv1有两个3
×
3的卷积核,可以提高网络资源的利用率,在计算量不变的情况下,提高网络的宽度和深度,减少计算瓶颈的同时增加网络层数,提高网络的表达能力。
50.如图5所示,resnetv2网络结构在resnetv1的基础上将两个3
×
3卷积核改成了三个1
×
1、3
×
3、1
×
1卷积核,比resnetv1有如下几个优点:第一,1
×
1卷积核比3
×
3卷积核能节约大量的网络参数;第二,网络层数增加,可以处理更丰富的空间特征,增加特征的多样性。
51.如图6所示,本发明中使用resnetv2网络结构,将senet模型与resnet中的resnetv2网络结构进行结合。
52.综上所示,se

resnet模型的基础模型结构如表1所示。
53.表1基础模型结构
[0054][0055][0056]
步骤6.训练模型。导入训练集,并保存训练好的se

resnet模型;
[0057]
在训练过程中,观察训练曲线是否收敛。此处损失函数采用分类常用的交叉熵损失函数。它刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近。交叉熵公式如下:
[0058][0059]
其中,x是函数的输入,y是表示真实标记的分布,a则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量y与a的相似性。当任务为多分类时,使用softmax作为输出层的激活层,具体采用如下的公式来衡量损失:
[0060][0061]
其中,p代表模型的预测值,t是标签值,i和j分别对应着数据的值和数据的类别。
[0062]
步骤7.使用种蛋蛋形测试集对se

resnet模型和其他卷积神经网络进行测试对比,以此来验证神经网络之间的优劣。
[0063]
在常见种蛋蛋形数据集上测试,本发明所建立的模型能够达到较好的精度以及较小的模型体积,识别效果如表2所示。具体蛋形识别的准确率如表3所示。为验证网络的鲁棒性,在mini

imagenet公开数据集上也进行了测试,实验结果如表4所示。
[0064]
表2不同模型的实验结果
[0065][0066][0067]
表3不同模型下每种蛋形的识别精度
[0068][0069]
表4 mini

imagenet数据集实验结果
[0070][0071]
详细的实验结果表明本发明提出的模型具有较高的识别准确率和较小的模型体积。从表2可知,本发明方法总体预测精度达到98.51%,相比较现有的轻量级网络mobilenetv1、mobilenetv2、shufflenetv2是最高的。从表3中,可以看出本发明的方法在4类蛋形识别的准确率都是较高的。从表4可知,模型在mini

imagenet公开数据集上也有良好的表现,测试集的识别准确率达91.83%,均高于对照模型。本发明的模型由于添加了bn层模型的收敛速度也比较快,这可以大大节省计算资源。采用resnet和senet相结合又可以提高网络的精度。采用resnet结构加上bn层,使得整个模型更加轻便化,为移动端如单片机或手机的应用奠定基础。
[0072]
此实施例仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围
为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献