APP下载

基于卷积层特征可视化的猕猴桃树干特征提取

2020-04-27崔永杰高宗斌刘浩洲傅隆生

农业机械学报 2020年4期
关键词:开花期树干可视化

崔永杰 高宗斌 刘浩洲 李 凯 傅隆生,3

(1.西北农林科技大学机械与电子工程学院, 陕西杨凌 712100; 2.农业农村部农业物联网重点实验室, 陕西杨凌 712100;3.陕西省农业信息感知与智能服务重点实验室, 陕西杨凌 712100)

0 引言

猕猴桃果园采用棚架栽培模式,冠层遮蔽易导致GPS信号衰减,无法满足采摘机器人[1]的精确导航需求,故采用雷达[2-3]或视觉方法[4]实现导航。文献[5-6]利用传统图像处理算法对所采集图像中的树干、地垄等进行识别,实现导航,但识别精度不高。近年来,基于卷积神经网络的目标检测算法已应用于畜牧[7-8]、水产[9-10]和林果[11-12]等诸多领域,相比传统图像处理算法,卷积神经网络在识别精度上有所提高。因此,利用卷积神经网络识别树干,对提高采摘机器人视觉导航精度有重要意义。

在已有对果园环境下的目标检测研究中,目标检测算法[13-15]以输出目标边界框的方式识别各类果实。成熟的苹果[16]、柑橘[17]以及多类水果[18]等通用目标均有较为明显的颜色特征和边缘特征,目标检测算法以果实轮廓的最小外接矩形输出边界框,识别精度较高;绿色柑橘[19]、绿色苹果[20]颜色特征与背景接近,但仍可根据果实轮廓输出边界框;猕猴桃果实[21]受遮挡因素影响较为严重,但可依靠部分未遮挡果实轮廓输出边界框;以上果实最小外接矩形均近似为正方形,而芒果[22]最小外接矩形为长方形,标注样本时边界框内包含较多背景信息,通过人工去除背景后,可提高识别精度。本文所识别对象为猕猴桃树干,无最小外接矩形,边界框内除猕猴桃树干外还包含输水管等特征,故需研究边界框内不同特征对识别结果的影响。

卷积神经网络的深度决定了映射性能和运算成本,因此,针对具体问题选择合适的网络深度尤为重要。HINTON等[23]提出多隐层的神经网络拥有更加优异的特征提取能力,卷积神经网络的发展也遵循这一规律。2个卷积层的LeNet[24]、5个卷积层的Alexnet[25]、13个卷积层的Vgg-16[26]以及规模更庞大的Inception[27]和Resnet[28],图像分类精度会随卷积层数量的增加以及网络规模的增大而不断提高,但并没有较为严谨的理论证明网络深度与其性能的关系。因此,有学者就卷积神经网络的深度、通道数量等与其精度的关系进行了试验。CHEN[29]使用9种结构的卷积神经网络对中文手写体进行识别,发现增加网络的深度和通道数量均能提高精度;HE等[30]在ImageNet数据集上测试了网络深度和卷积核尺寸与精度的关系,结果表明:拥有小卷积核的深层网络性能优于大卷积核的浅层网络,此结果与提出Vgg-16[26]时的结论一致。BENGIO等[31]指出,深层网络表达高级特征,并促进特征的重复利用。综上,深层网络拥有更优异的性能,并可从输入的原始图像中挖掘抽象的特征表示[32]。本文从可视化角度出发,以猕猴桃树干为提取对象,对比浅层网络提取的底层特征与深层网络的高级抽象特征,研究卷积层深度对猕猴桃树干提取特征的影响,为选择网络深度提供参考依据。

1 材料与方法

1.1 图像采集

在2018年5月猕猴桃开花期、9月猕猴桃结果期,晴天09:00—19:00于陕西省眉县猕猴桃试验站进行图像采集。利用大疆御 Mavic Air型无人机拍摄视频,定高飞行距离为0.5 m。视频编码格式为mp4、码率为5 217 kb/s、帧率为30 f/s、分辨率为1 280像素×720像素。考虑到视频在时间序列上的相似性,选取所有帧作为数据集易造成过拟合,故每隔30帧取1帧图像构建数据集。图1为视频分帧处理生成的jpg格式图像,猕猴桃果园开花期图像输水管与树干交叉,结果期图像无输水管。

图1 不同生长季节图像样本Fig.1 Image samples for different seasons1.输水管 2、4.支撑钢管 3、5.树干

1.2 数据集规则制定

猕猴桃树干无最小外接矩形,需人为制定规则将猕猴桃树干与背景进行区分。

1.2.1图像分类

猕猴桃果园开花期两侧树干与输水管交叉部位形状相对统一,以输水管上部至树干基部的“十字交叉”区域为识别对象。为减轻人工截图的工作量,定义一种批量截图方法。如图2所示,根据所拍摄图像特点,在左右两侧选取两个可包络树干底部的区域(红色虚线框),在此区域中定义3个水平方向固定、竖直方向(蓝色箭头方向)可调整的截取框。选取截取框竖直方向位置后进行批量剪切,而后通过人工分选,将剪切后的图像分为两类(绿色矩形为正样本、红色矩形为负样本)。分选规则:①拥有完整树干与输水管交叉特征的图像划分为正样本。②只拥有部分树干特征的图像不对其进行划分。③支撑钢管与输水管交叉区域划分为正样本。④输水管特征划分为负样本。⑤周围景物(地垄、杂草等)划分为负样本。

图2 批量截图方法Fig.2 Batch screenshot method

结果期图像无输水管,因此拥有完整树干或支撑钢管特征的图像划分为正样本;拥有部分树干或支撑钢管特征的图像不进行划分;周围景物划分为负样本。

1.2.2目标检测

不同于大多数目标检测对象,猕猴桃树干无最小外接矩形,因此本文选取树干底部与输水管交叉区域为识别对象,并对数据集标注做如下规定:①矩形框以树干和输水管交叉处为中心,下部包络树干基部。②将支撑钢管和输水管交叉区域与其余目标归为一类,统一标记为“tree”。③猕猴桃树干分叉生长情况下,只标注一个矩形框。④目标由近及远逐渐减小并模糊,左右两侧均标注最近4个目标。⑤对出现遮挡等影响交叉部分特征的目标放弃标注。

在标注结果期图像时,由于没有输水管作为参照,标注时尽量保证与开花期边界框大小一致。使用Matlab 2018a Image Labeler APP进行标注,标注示例如图3所示。

图3 Image Labeler标注示例Fig.3 Image Labeler labeling example

1.3 数据集构建

利用1.2.1节方法截取开花期16 834幅图像作为正样本,15 688幅图像作为负样本;截取结果期5 000幅图像作为正样本,5 000幅图像作为负样本。开花期图像随机取70%作为训练集,30%作为验证集,结果期所有图像均作为验证集。所有图像样本尺寸为224像素×224像素。

利用1.2.2节方法标注开花期7 200幅图像,结果期2 100幅图像;开花期图像随机取70%作为训练集,30%作为验证集。结果期所有图像均作为验证集。目标检测所有图像样本尺寸为640像素×360像素。

本文分别针对图像分类与目标检测建立的数据集均有1个训练集和2个独立的验证集(表1)。训练集由开花期图像样本构成,由开花期和结果期图像样本分别构成验证集。

表1 数据集图像数量Tab.1 Number of dataset images

1.4 浅层网络结构定义

选取3类经典网络结构LeNet、Alexnet、Vgg-16,并定义3类浅层结构。卷积层数分别为2、3、4,分别记为Conv2、Conv3、Conv4。第1层卷积层通道数设置为64,卷积层通道数量按倍数增加可更有效地利用计算资源[33],后续每一层卷积层通道数量为前一层的2倍,第2层为128,第3层为256,第4层为512。Alexnet由大尺寸卷积核(11×11、5×5)到小尺寸(3×3)过渡,拥有5层卷积结构; Vgg-16由多个小尺寸卷积核(3×3)堆叠,形成13层卷积结构,与其对比,3类浅层网络结构均采用更为广泛的小尺寸卷积核(3×3),步长取1。3类浅层网络结构按照卷积、ReLU、Maxpooling为基础组成部分,分别叠加2~4次,通过全连接层输入Softmax分类器进行图像二分类。相关参数如表2所示。

表2 6类网络结构参数Tab.2 Six types of network structure parameters

1.5 可视化方法

图像在输入卷积神经网络向后传播的过程中,每一个卷积层都会产生卷积运算后的三维数据块,本文将这些三维数据块整体称作特征图,而特征图是由不同卷积核卷积运算得到的二维数据堆叠在一起组成,有学者将其称为特征面[32]或与前者统称为特征图。本文将这些二维数据及可视化处理后的结果统称为激活映射图与其区分。激活映射图的计算公式为

图4 激活映射图可视化流程Fig.4 Visualization process of activation map

(1)

(2)

可视化流程如图4所示,其中Conv.1为第1次卷积运算,ReLU.1为第1次ReLU运算,ReLU.n为第n次ReLU运算,Maxpool.1为第1次Maxpooling运算。将测试图像输入已训练的模型做前向推导,依据每层特征图长度L、宽度W和通道数量M,在需要可视化的当前层构建大小为L×W×M的三维矩阵,保存当前的特征图数据。由于各个神经元的激活程度不同导致卷积运算后的激活映射图数据范围不固定,不同通道的激活映射图数值范围波动较大,为进行可视化,对M个L×W二维矩阵做归一化处理,即

(3)

激活映射图长度L与宽度W随Maxpooling增多而不断减小,对激活映射图直接进行可视化会产生像素级别的显示。为与原测试图像进行对比,将激活映射图调整为原始尺寸。采用双三次插值方法,不仅考虑相邻的像素数值,也考虑各像素值之间变化率的影响,构造BiCubic函数

(4)

用于计算所构建的新像素值在原激活映射图对应位置周围16个像素值的权重,最后通过加权平均得到新构建的像素值。新构建的像素值为

(5)

式中W(i)——水平方向BiCubic函数

W(j)——竖直方向BiCubic函数

图5 LeNet激活映射图可视化结果Fig.5 LeNet activation map of visualization results

通过构建三维矩阵提取激活映射图,归一化激活映射图取值范围,利用双三次插值对激活映射图尺寸进行调整,最终可生成M个灰度图像,完成当前层M个通道的可视化。

1.6 可视化试验

选用恳泰深度学习计算平台训练模型,Intel Xeon E5-1650 v4处理器,主频3.6 GHz,32 GB内存,Nvidia Titan XP显卡,12 GB显示存储。开发环境Matlab 2018a,Deep learning toolbox。

将所有图像分类数据集正样本标记为0,负样本标记为1,制作对应的Excel文件作为标签文件。将22 765幅训练集图像与对应的标签文件输入1.4节6类不同深度的网络进行训练。每类模型全连接层最后2个神经元分别对应正样本和负样本,输出0或1,将猕猴桃树干图像与背景图像进行区分。超参数设定:随机梯度下降(sgdm)、动量设置为0.9、MiniBatchSize为10、学习率为0.000 1。每类网络训练后,保存对应的权重,生成图像分类模型。利用可视化方法获得测试图像在不同深度模型中的特征提取结果, 对比6类不同深度网络对猕猴桃树干的特征提取差异。

2 结果与分析

2.1 可视化结果分析

图5为LeNet两层卷积及ReLU激活后的可视化结果,绿色方框提取目标区域,红色方框提取背景,黄色方框不提取任何特征。每层通道数量分别为6和16,与可视化后激活映射图数量一致。图5a为输入的测试图像。图5b为6类不同的卷积核提取的不同激活映射图,灰度较大的部分代表激活程度较大的区域,灰度较小的部分激活程度较小。图5c通过ReLU函数将图5b中所有小于0的信息剔除,呈现黑色。除黑色以外其他信息被保留并进行下一次卷积运算。图5d、5e中灰度较大的部分是最终作用于分类的特征,例如:绿色方框中的激活映射图保留了树干、输水管、部分地垄等区域,将剩余大部分背景剔除,有效地提取到树干与输水管交叉区域信息;红色方框则与其完全相反,树干与输水管等区域被剔除,呈现黑色,保留土壤等背景区域信息。二者从两个完全相反的角度提取了测试图像中的特征。黄色方框中所有像素值均小于0,ReLU函数可视化后所有区域均为黑色,不对后续的分类结果产生影响。LeNet从多个完全不同甚至相反的角度提取特征。

最后一层卷积层及ReLU函数激活后的特征是图像分类的依据,因此提取剩余5类模型最后一层激活映射图,图6各分图左侧图像为卷积运算后的可视化结果,右侧图像为ReLU函数运算后的可视化结果(由于通道数量较多,所有模型仅展示前128幅可视化结果)。图6a是Conv2第2个卷积层的可视化结果,相比LeNet增加了通道数量,但大部分激活映射图类型与LeNet保持一致:绿色方框提取树干等区域、红色方框保留背景、黄色方框所有信息均被剔除。图6b为Conv3可视化结果,部分激活映射图保留的特征与Conv2保持一致,出现如绿色方框标记的提取树干或输水管等边缘特征的激活映射图。相比图6b,图6c对边缘特征的激活程度更高。图6d为Alexnet提取结果,原测试图像中边缘等底层特征消失,大部分激活映射图无规律地激活了一些抽象的特征区域,少部分诸如绿色方框标记的激活映射图则精准地提取到原始图像中树干或部分树干区域,所有通道的激活映射图均剔除完整的输水管与地垄等特征。图6e为Vgg-16提取结果,相比于图6d中Alexnet提取结果,绿色方框标记的树干区域激活程度更高,保留树干区域的激活映射图数量增多,类似黄色方框的被完全剔除的激活映射图数量增多,除树干之外的特征减少。Vgg-16较为精确地保留了大量树干信息。

图6 不同深度模型最后一层卷积层及ReLU激活后的可视化结果Fig.6 Visualization of last layer of convolutional layers and ReLU activation in different depth models

图7更换两幅测试图像,选取图6中绿色方框标记的具有代表性的激活映射图,其中上侧图像为卷积运算后的可视化结果,下侧图像为ReLU运算后的可视化结果,分析可得:浅层模型(Conv2、Conv3、Conv4)提取特征时更多的依赖图像的颜色、边缘等底层特征,提取测试图像中包括树干、支撑钢管、输水管等较为明显的特征。Alexnet与Vgg-16只保留树干、支撑钢管或二者的部分特征。

图7 不同深度模型目标区域可视化结果Fig.7 Visualization results of object regions in different depth models

分类试验正样本中包含了树干、支撑钢管、输水管、地垄、土壤; 负样本包括输水管、地垄、土壤。正负样本的差异为树干和支撑钢管特征。通过观察激活映射图:Alexnet与Vgg-16模型较为准确地提取了树干或支撑钢管区域,剔除了有明显轮廓和颜色特征的输水管特征; 所有浅层模型则从不同角度提取了测试图像中所有较为明显的底层特征信息。浅层模型提取底层特征,而较深的模型提取高级的抽象特征,更有效地进行区分。网络结构越深,越能反映所识别对象区别于背景的特点,提取的特征对原测试图像更具代表性。

2.2 可视化结果验证

2.2.1验证方法

猕猴桃果园开花期图像输水管贯穿两侧树干,与树干形成交叉特征,而结果期图像没有输水管,并随时间推移与开花期图像存在许多细节差异。用开花期数据集训练模型后,用开花期和结果期两个验证集对模型进行评价。浅层模型在提取目标区域时保留了输水管特征,而Alexnet与Vgg-16模型只提取到树干和支撑钢管特征,可知:在没有将结果期样本输入网络训练的情况下,因图像细节差异,6类模型在结果期验证精度相比开花期会存在不同程度的下降,而所有浅层模型会因输水管特征的消失产生更大幅度的下降。

2.2.2图像分类验证

分类精度评价标准为Vgg-16[26]评价标准top-1 error对应的精度。如表3所示,开花期精度均为100%,结果期精度均发生不同程度的下降。4类浅层模型下降幅度较大,范围为15.90个百分点至18.98个百分点;两类经典模型Alexnet与Vgg-16下降幅度较小,其中网络深度最大的Vgg-16取得了较为理想的泛化效果,精度下降幅度仅为2.08个百分点。图像分类验证与可视化结果保持一致。

表3 图像分类模型不同季节验证精度Tab.3 Image classification model verification accuracy in different seasons %

2.2.3目标检测验证

Faster R-CNN模型采用四步训练法,初始超参数设置:学习率为0.001,动量为0.9,Mini-BatchSize为128,MaxEpochs分别为45、60、45、60。经过多次超参数调整,选择较优模型。模型识别精度评价标准采用Faster R-CNN评价标准[13]。如表4所示,在开花期验证结果中,精度并没有随卷积层数增加实现递增,卷积层数量为4层的Conv4取得了最高的精度,13层的Vgg-16次之,5层的Alexnet验证精度较低,为66.86%,仅高于卷积层数为2层的Conv2,网络规模最小的LeNet模型失效。6类模型在结果期精度产生不同程度的下降,浅层模型下降幅度较大,超过49.77个百分点;而Alexnet模型虽然在开花期验证精度低于浅层模型,但结果期验证精度高于浅层模型,下降幅度较小,为22.53个百分点;Vgg-16下降幅度最小,为20.54个百分点。相比图像分类问题,目标检测更为复杂,所有浅层模型精度下降幅度较大,而较深的网络结构拥有更加优异的泛化性能。

表4 目标检测模型不同季节验证精度Tab.4 Verification accuracy of target detection model in different seasons %

图8为Faster R-CNN模型对猕猴桃树干目标的识别结果,模型由开花期数据集进行训练,所有模型在开花期的识别结果较准确,但浅层模型在结果期的误识别较为严重。深层模型提取边界框内具有代表性的树干和支撑钢管特征作为识别依据,在没有将结果期数据集输入模型训练的情况下,依赖从开花期数据集所提取的特征依然在结果期取得较好的识别结果。开花期黑色输水管特征对深层模型在结果期的识别结果影响较小。

图8 Faster R-CNN模型识别结果Fig.8 Faster R-CNN model recognition results

2.3 讨论

浅层模型在图像分类问题中取得的结果优于目标检测,浅层网络结构对复杂问题的映射能力较弱,因此可针对不同的应用场合和实际问题选择不同深度的网络结构。利用Alexnet和Vgg-16识别树干时,连续的输水管特征对于识别的贡献较低,后续研究中应当以树干或支撑钢管为主要目标,而非“十字交叉”特征的提取,图像分选规则和标注方法并不完全适用。

3 结论

(1)利用可视化方法对比了6类不同深度的卷积神经网络特征提取差异,从可视化角度解释了深层网络结构性能的优越性:Alexnet与Vgg-16提取的树干特征对原始图像有更准确的代表性,可与背景进行更有效的区分;浅层模型更偏向提取底层特征,只在开花期数据集取得较好的验证精度,其泛化性能受到制约。

(2)通过开花期和结果期两个数据集对可视化结果进行验证,所有浅层模型因所提取输水管等特征的改变,精度产生较大幅度的下降,图像分类问题中下降幅度不小于15.90个百分点,目标检测问题中下降幅度不小于49.77个百分点,而提取树干特征的深层模型Alexnet与Vgg-16下降幅度较小。精度下降趋势与可视化结果一致。

猜你喜欢

开花期树干可视化
高寒草原针茅牧草花期物候变化特征及其影响因子分析
基于CiteSpace的足三里穴研究可视化分析
自然资源可视化决策系统
思维可视化
为什么树干不是方的?
自然资源可视化决策系统
2017年铜川市樱桃开花期推迟的温度分析
牡丹不同品种开花时间的差异性研究
种球冷处理时间对水培风信子性状的影响
为什么要在树干上刷白浆