智慧农业(中英文),2022,4(2):77-85doi:10.12133/j.smartag.SA202201001
专题——智慧畜牧关键技术与装备
2.青海省玉树州动物疫病预防控制中心,青海玉树815000
2.AnimalDiseasePreventionandControlCenterofYushuTibetanAutonomousPrefecture,Yushu815000,China
收稿日期:2022-01-02
Received:2022-01-02
作者简介Aboutauthors
牦牛个体身份标识是实现个体建档、行为监测、精准饲喂、疫病防控及食品溯源的前提。针对智慧畜牧智能化、信息化等养殖平台中动物个体识别技术应用需求,本研究提出一种基于迁移学习的多尺度特征融合牦牛脸部识别算法(TransferLearning-MultiscaleFeatureFusion-VGG,T-M-VGG)。以预训练的视觉几何组网络(VisualGeometryGroupNetwork,VGG)为骨干网络构建基于迁移学习的卷积神经网络模型,获取其Block3、Block4、Block5输出的特征图,分别用F3、F4、F5表示,将F3和F5经过三个不同膨胀系数的空洞卷积组成的并行空洞卷积模块增大感受野后,送入改进的特征金字塔进行多尺度特征融合;最后利用全局平均池化代替全连接层分类输出。试验结果表明,本研究提出的T-M-VGG算法在194头牦牛的38,800张数据集中识别准确率达到96.01%,模型大小为70.75MB。随机选取12张不同类别牦牛图像进行面部遮挡测试,识别准确率为83.33%。本算法可以为牦牛脸部识别研究提供参考。
关键词:牦牛;脸部识别;迁移学习;特征金字塔;T-M-VGG
Keywords:yak;facerecognition;transferlearning;featurepyramidstructure;T-M-VGG
本文引用格式
陈占琦,张玉安,王文志,李丹,何杰,宋仁德.基于迁移学习的多尺度特征融合牦牛脸部识别算法[J].智慧农业(中英文),2022,4(2):77-85.doi:10.12133/j.smartag.SA202201001
CHENZhanqi,ZHANGYu'an,WANGWenzhi,LIDan,HEJie,SONGRende.MultiscaleFeatureFusionYakFaceRecognitionAlgorithmBasedonTransferLearning[J].SmartAgriculture,2022,4(2):77-85.doi:10.12133/j.smartag.SA202201001
牦牛素有“高原之舟”之称,能够带动青藏高原地区牧民脱贫致富。但目前藏区牦牛养殖仍处于传统模式,缺乏信息化、智能化管理设备的广泛应用。对于中小规模养殖户来说,牲畜识别的主要方法是打耳标、颜色标记、热铁烙印等传统方法。耳标通过穿孔的方式安装在动物的耳朵上,会有细菌感染的风险,相互摩擦也会导致标签丢失。传统接触式识别技术不能为识别过程提供持久的保障。
图1牦牛脸部识别部分数据集
Fig.1Partofdatasetoftheyakfacialrecognition
为平衡各类别样本间的分布,增强模型的鲁棒性,对数据集中样本数量较少的类别采用数据增强扩充策略。
最后,对于样本数量明显过多的类别,随机剔除一部分样本,验证集的每一个类别数量保持相同。经过整理,数据集共计38,800张,对每个类别的样本顺序编号,其中训练样本31,040张,占比80%,每个类别训练数量保持在170~210张;验证样本7760张,占比20%,每个类别的验证数量保持在40张。其中训练集和验证集样本ID互斥。
试验配置环境如下:Ubuntu18.04.5LTS64位系统,GeForceGTX1080Ti图形处理器(GraphicsProcessingUnit,GPU)加速,CUDA和CUDNN版本分别为10.0和7.4.1.5,编程语言为Python3,基于Tensorflow的Keras深度学习框架完成试验训练及验证。
空洞卷积可以在不改变参数量大小的同时增加感受野。空洞卷积计算如公式(1)所示。
当前感受野大小如公式(3)所示。
图2并行空洞卷积结构
Fig.2Structureofparalleldilatedconvolution
图3常见特征金字塔结构
注:P3、P4、P5、P6、P7为特征层
Fig.3Commonusespyramidstructures
图4本研究构建的特征金字塔
Fig.4Theconstructedfeaturepyramidintheresearch
Algorithm特征金字塔算法实现
Input:F3、F4、F5、F6
Output:P
1defOurFPN(Input):
2P3=F3,P4=F4,P5=F5,P6=F6,Features=P3,P4,P5,P6
3forjinrange(len(Features)):
4C_Feature[j]=Conv2D(channels_num,kernel_size=1)Feature[j]#调整通道数
#P3_in、P4_in、P5_in、P6_in分别为通道数调整后的特征输入
6P6_UP=UpSampling2D()(P6_in),P65=Add([P6_UP,P5_in]),P65=SeparableConv()(P65)
#P6_in经过上采样与P5_in进行Add操作生成P65。P54、P43、P53生成操作相似
7P65_UP=UpSampling2D()(P65),P5_UP=UpSampling2D()(P5_in),P54=Add([P65_UP,P5_UP,P4_in]),P54=SeparableConv()(P54)
#P65_UP和P5_UP经过上采样后与P4_in进行Add操作生成P54
8P54_UP=UpSampling2D()(P54),P4_UP=UpSampling2D()(P4_in),P43=Add([P54_UP,P4_UP,P3_in]),P43=SeparableConv()(P43)
#P54_UP和P4_UP经过上采样后与P3_in进行Add操作生成P43
9P53=Add([P54_UP,P43]),P53=SeparableConv()(P53)
10P53_MaP=MaxPooling2D()(P53),P64=Add([P53_MaP,P54,P65_UP]),P64=SeparableConv()(P64)
#P53进行最大池化生成P53_MaP;P65经过上采样与P54、P53_MaP进行Add操作生成P64
11P64_UP=UpSampling2D()(P64),P=Add([P64_UP,P53]),P=SeparableConv()(P)
12returnP#返回特征P,送入分类部分
图5T-M-VGG结构
Fig.5Structureoftransferlearning-multiscalefeaturefusion-VGG
首先获取VGG16网络第三、第四和第五个卷积层输出的特征图F3、F4、F5,将F3、F5分别送入并行的空洞卷积模块P_DConv中。其次将P3、P4、P5、P6送入特征金字塔进行特征融合,P6由P5最大池化生成。最后把融合后的特征送入分类器输出结果。
表1试验方案参数设置
Table1Parameterssettingofexperimentalschemes
x=Activation('relu')(output)
x=GlobalAveragePooling2D(x)
x=Dense(194,activation='softmax')(x)
采用适合评价多分类任务的F1值(Macro_f1)和准确率(Accuracy)来评估模型的性能,各评价指标函数形式如下所示。
图6不同试验方案的准确率
Fig.6Accuraciesofdifferentexperiments
图7不同试验方案的损失值
Fig.7Lossvaluesofdifferentexperiments
表2不同试验方案的性能指标对照
Table2Comparisonofperformanceindicatorsofdifferentexperiments
可训练参
数量/M
综合上述分析,迁移学习方法能够显著地降低参数量,提升牦牛识别效果,特征金字塔结构能够提取丰富的牦牛面部特征进而完成识别过程。
图8T-M-VGG遮挡试验识别效果
Fig.8RecognitionresultsofT-M-VGGforocclusiontest
从标签号为1、42、49、76、83、161、168、172和192效果图可知,在遮挡牦牛非面部区域(身体,耳标,背景)的情况下,只有标签号76被预测为73,说明模型经过训练学习到的主要是面部特征,而非环境特征;从标签号为75和78效果图了解到,即使遮挡少部分脸部区域(非重要特征区域),模型仍然能够预测准确,但观察标签号为180的效果图,由于改变其面部明显特征,导致预测结果错误,这属于模型的正常表现。在12个类别中共有10个类别被T-M-VGG预测正确,准确率为83.33%。
本研究先后建立了并行的空洞卷积模块和改进的特征金字塔结构,结合迁移学习思想进行整合从而实现牦牛脸部识别算法,主要结论如下。
(1)提出的T-M-VGG模型在194头牦牛数据集中识别准确率为96.01%,模型大小为70.75MB。
(2)在本研究构建数据集上通过和其他方法对比验证,说明了多尺度融合和迁移学习结合在牦牛面部识别过程中的优越性。
模型还存在不足之处,下一步工作将致力于以下几个问题的研究:(1)继续增加牦牛类别数量,扩大分类样本,对面部特征极为相似的牦牛识别进一步优化,提升模型的性能;(2)探究牦牛生长周期中体征变化对识别的影响;(3)结合目标检测算法完成实时识别。
秦兴,宋各方.基于双线性卷积神经网络的猪脸识别算法
QINX,SONGG.Pigfacerecognitionalgorithmbasedonbilinearconvolutionneuralnetwork
何屿彤,李斌,张锋,等.基于改进YOLOv3的猪脸识别
HEY,LIB,ZHANGF,etal.PigfacerecognitionbasedonimprovedYOLOv3
刘忠超,何东健.基于卷积神经网络的奶牛发情行为识别方法
LIUZ,HED.Recognitionmethodofcowestrusbehaviorbasedonconvolutionalneuralnetwork
杨秋妹,肖德琴,张根兴.猪只饮水行为机器视觉自动识别
YANGQ,XIAOD,ZHANGG.Automaticpigdrinkingbehaviorrecognitionwithmachinevision
张宏鸣,周利香,李永恒,等.基于改进MobileFaceNet的羊脸识别方法研究
ZHANGH,ZHOUL,LIY,etal.Sheepfacerecognitionmethodbasedonimprovedmobilefacenet
魏征.基于全局和局部特征相结合的不完美牛眼虹膜识别技术研究
WEIZ.Researchonirisrecognitiontechnologyofimperfectbull'seyebasedonthecombinationofglobalandlocalfeatures
赵凯旋,何东健.基于卷积神经网络的奶牛个体身份识别方法
ZHAOK,HED.Recognitionofindividualdairycattlebasedonconvolutionalneuralnetworks
何东健,刘建敏,熊虹婷,等.基于改进YOLOv3模型的挤奶奶牛个体识别方法
HED,LIUJ,XIONGH,etal.IndividualidentificationofdairycowsbasedonimprovedYOLOv3
陈争涛,黄灿,杨波,等.基于迁移学习的并行卷积神经网络牦牛脸识别算法
CHENZ,HUANGC,YANGB,etal.Parallelconvolutionalneuralnetworkyakfacerecognitionalgorithmbasedontransferlearning
HANSENMF,SMITHML,SMITHLN,etal.Towardson-farmpigfacerecognitionusingconvolutionalneuralnetworks
MARSOTM,MEIJ,SHANX,etal.Anadaptivepigfacerecognitionapproachusingconvolutionalneuralnetworks
KUMARS,SINGHSK,SINGHR,etal.Deeplearningframeworkforrecognitionofcattleusingmuzzlepointimagepattern
JUNGDH,KIMNY,MOONSH,etal.Deeplearning-basedcattlevocalclassificationmodelandreal-timelivestockmonitoringsystemwithnoisefiltering
SALAMAA,HASSANIENAE,FAHMYA.SheepidentificationusingahybriddeeplearningandBayesianoptimizationapproach
WADAN,SHINYAM,SHIRAISHIM.Pigfacerecognitionusingeigenspacemethod
RASHIDM,GUX,LEEYJ.Interspeciesknowledgetransferforfacialkeypointdetection
WANGZ,BOVIKAC,SHEIKNHR,etal.Imagequalityassessment:Fromerrorvisibilitytostructuralsimilarity
陈桂芬,赵姗,曹丽英,等.基于迁移学习与卷积神经网络的玉米植株病害识别
CHENG,ZHAOS,CAOL,etal.Cornplantdiseaserecognitionbasedonmigrationlearningandconvolutionalneuralnetwork
李淼,王敬贤,李华龙,等.基于CNN和迁移学习的农作物病害识别方法研究
LIM,WANGJ,LIH,etal.Methodforidentifyingcropdiseasebasedoncnnandtransferlearning
LIUS,HUANGD.Receptivefieldblocknetforaccurateandfastobjectdetection
SZEGEDYC,WEIL,JIAY,etal.Goingdeeperwithconvolutions
LINTY,DOLLARP,GIRSHICKR,etal.Featurepyramidnetworksforobjectdetection
LIUS,QIL,QINH,etal.Pathaggregationnetworkforinstancesegmentation
TANM,PANGR,LEQV.Efficientdet:Scalableandefficientobjectdetection
樊湘鹏,周建平,许燕,等.基于改进卷积神经网络的复杂背景下玉米病害识别
FANX,ZHOUJ,XUY,etal.Corndiseaserecognitionundercomplicatedbackgroundbasedonimprovedconvolutionalneuralnetwork
SIMONYANK,ZISSERMANA.Verydeepconvolutionalnetworksforlarge-scaleimagerecognition
HOWARDA,SANDLERM,CHENB,etal.SearchingforMobilenetv3
SZEGEDYC,VANHOUCKEV,IOFFES,etal.Rethinkingtheinceptionarchitectureforcomputervision
x=Activation('relu')(output)...
从图6和图7可以看出本研究所使用的各个方法随着迭代次数增加,准确率不断地升高,损失值不断地降低,达到一定次数后曲线趋于平缓.Tr-L-VGG16冻结卷积层后,自定义全局平均池化层参与训练的参数量较少,损失值下降缓慢,准确率曲线上升平缓,识别效果很差;VGG16采用预训练模型参数初始化后,准确率提升很快,迭代次数为7时达到收敛状态;文献[9]采用并行的迁移学习VGG16结构识别牦牛,在本试验环境下,迭代次数为14时接近收敛状态,损失值在0.5附近;从表2中可以了解,Tr-L-VGG16方法由于可训练参数量最小,所以准确率最低.VGG16经过训练、验证后模型大小为502.48MB,所有方法中数值最高,不仅影响加载速度还增加存储开销.文献[9]模型大小为166.33MB,准确率为88.03%,并行的迁移学习结构仍会增加模型大小.T-M-VGG模型大小为70.75MB,准确率为96.01%,对比VGG16、Tr-L-VGG16准确率分别提高近3个和68个百分点;对比文献[9],牦牛识别方法准确率提高近8个百分点,模型大小减少约96MB,这说明了并行空洞卷积和特征金字塔的有效性....