基于深度学习的棉花发育期自动观测
2019-07-10胡锦涛王苗苗李涛吴东丽田东哲
胡锦涛 王苗苗 李涛 吴东丽 田东哲
摘要 精准农业是当今世界农业发展的新趋势,实现精准农业的关键基础是能够实时准确地提取作物的生长信息以及确定生长环境状态。现阶段国内外利用图像处理技术对作物生长信息的检测,主要集中在病虫害识别、杂草识别等方面,对作物生长期进行自动识别的相关技术鲜有报道。以棉花田间数字图像为研究对象,结合深度学习的方法,对棉花关键发育期的自动观测方法进行研究。结果表明,相较于传统特征提取方法,提出了卷积神经网络CNN-CGS模型对棉花图像进行特征提取,并进一步结合迁移学习方法训练网络,获得了更加准确的棉花生长期识别结果,同时也为农作物发育期和长势识别迈向自动化发展提供技术支持,为及时掌握棉花生长状况、开展农事活动和现代化农田管理提供新的思路。
关键词 作物生长观测;图像识别;深度学习;卷积神经网络
中图分类号 TP391文献标识码 A
文章编号 0517-6611(2019)11-0237-04
doi:10.3969/j.issn.0517-6611.2019.11.068
开放科学(资源服务)标识码(OSID):
Abstract Precision agriculture is a trend of current agricultural development, the key to achieve that is the ability to accurately extract crop growth information and determine the state of the growing environment in real time. Most detection methods based on image processing technology for crop growth information mainly focuses on the identification of pests, diseases and weeds. There are few reports on the automatic detection of crop growth period. In this research, the digital image of cotton field was taken as the research object, and the automatic observation method of key development period of cotton was studied through deep learning method. Compared with the traditional feature extraction methods, we adopted the convolutional neural network(CNN) to extract the features of cotton images, and further combined the transfer learning method to train CNN, which obtained more accurate cotton growth period identification results. Meanwhile, it also provided technical support for the automatic identification of crop growth stages and states. On the other hand, a new idea was presented for realtime acquisition of cotton growth status, development of agricultural activities and modern farmland management, and scientific assessment of the impact of meteorological factors on cotton.
Key words Crop observation;Image recognition;Deep learning;Convolutional neural network
作者簡介 胡锦涛(1987—),男,河南郑州人,工程师,硕士,从事硬件设计和算法研究。*通信作者,工程师,硕士,从事图像处理研究。
收稿日期 2019-01-10
作物观测是农业气象观测的重要组成部分。通过作物的观测,鉴定农业气象条件对作物生长发育和产量形成及品质的影响,为农业气象情报、预报,以及作物的气候评价等提供依据,为高产、优质、高效农业服务。棉花作为重要的经济作物之一,对其发育期进行自动观测技术研究具有重要意义。现阶段棉花发育期信息的获取主要依靠人工观测,观测人员按照农业气象观测规范中的定义和描述,对田间作物进行实地的目测或简单的器测。这种方式耗时、费力,主观性强且无法进行连续观测,同时还容易破环作物及其生长环境。因此,亟需一种自动连续、非破坏性的记录方法来对棉花的发育期进行观测。结合计算机视觉技术在田间架构成像设备,成为了解决上述问题的有效途径之一。由于其具有成本低、直观、非接触式等优点,已被逐渐应用于农业自动化的各个领域,例如病虫害检测识别、田间杂草识别、作物等级划分等。研究人员通过提取无土栽培番茄叶片图像的颜色特征,以及图像中不易被肉眼发现的颜色变化来判断作物缺乏的营养元素类型,及时采取相应措施减少生产损失[1-2]。吴茜[2]、李少昆等[3]研究了麦田图像色调值与中后期小麦长势的相关性,将图像处理技术与人工神经网络技术相结合应用到小麦群体绿色面积和绿色叶面积特征的图像识别中,对小麦苗情进行自动化快速诊断,该方法也可用于稻谷等其他作物群体特征及病斑、株型、外观品质等类似目标的识别研究。毛文华等[4]针对苗期田间植物的位置特征,提出了基于计算机视觉技术的算法DBW,对苗期田间杂草进行分割和识别。尽管计算机视觉在上述领域中已经取得较大的研究进展,并成功投入实际的生产过程中,但由于在棉花田间拍摄的静态图像只能反映棉花田间的部分信息,导致其并不能完整地反映农业气象观测规范中对每个发育期所定义的特点。其次,田间图像受光照和背景影响较大。不同光照强度下的图像特征也不同,且背景中的土壤、杂草、薄膜等容易对目标检测造成很大的干扰,因此自然环境下的棉花图像特征提取对算法的鲁棒性和抗干扰性要求较高,导致了利用计算机视觉技术以及田间架构成像设备对棉花发育期观测的研究无法顺利开展,尤其利用图像处理技术检测识别棉花发育期的相关工作在现有文献中尚鲜见报道。
深度学习作为机器学习领域中的热门方向,近年来在计算机视觉、语音识别等多类应用中均取得了突破性的进展。其中,深度学习架构由多层非线性运算单元组成,每个较低层的输出作为更高层的输入,可以从大量输入数据中学习有效的特征表示,学习到的高阶表示包含输入数据的结构信息,展现出了强大的从少数样本集中学习数据集本质特征的能力,近年来已逐渐应用到了计算机视觉领域的方方面面[5-14],并且展现出了很强的优越性。
深度学习展现出的强大的特征提取能力,为该研究的基于计算机视觉的棉花发育期自动观测方法提出了新思路。鉴于此,笔者以棉花田间数字图像为研究对象,通过构建的棉花数据集对预先训练的卷积神经网络模型进行微调,从而实现利用卷积神经网络对棉花关键发育期的自动观测,该方法不仅解决了现有棉花图像数据不充足的问题,还大大提高了网络模型的收敛速度。相较于传统的图像识别方法,该研究提出的基于深度学习的棉花发育期自动观测方法显著提高了棉花发育期的识别精度。
1 数据与方法
1.1 数据来源
训练集和测试集均来源于新疆乌兰乌苏实验站的作物生长自动监测系统。通过安装在农业站上的摄像机获得特定区域的棉花特写镜头,设定每日9:00、10:00、11:00、12:00、13:00、14:00、15:00、16:00共8個时间点进行自动拍摄棉花生长图像,图像分辨率3 648×2 736,彩色,JPG格式。在2013—2018年棉花的生长期内,数据库中累积了数万张图像,涵盖了棉花的播种期、出苗期、三真叶期、五真叶期、现蕾期、开花期、裂铃期、吐絮期和停止生长期9种发育期以及不同场景的棉花图像,确保了该数据训练的网络能够具有很好的鲁棒性。同时为了增加训练数据,使训练出的网络具有更好的抗旋转、平移和缩放不变性,训练前对训练数据集进行数据增强操作,包括随机旋转图像,范围±30°;左右镜像翻转图像;水平、垂直平移图像,范围±30像素。试验中从数据库选取了8 000张棉花图像构建训练数据集,1 025张棉花图像构建测试数据集。其中训练集和测试集均涵盖了棉花的9种发育期,数据集样例如图1所示。同时还进一步将每张图像分割成大小为的图像块,这样在网络的训练过程中,卷积层可以对每个图像块进行特征提取,不仅保证了图像数据的充足性,还简化了网络的计算量。
47卷11期 胡锦涛等 基于深度学习的棉花发育期自动观测
1.2 棉花发育期的识别
卷积神经网络(Convolutional Neural Network,CNN)作为第一个真正成功地采用多层次结构网络的深度学习方法,具有结构简单、训练参数少和适应性强等特点。实现棉花发育期观测的卷积神经网络CNN-CGS模型如图2所示。该模型包含1个输入层、5个卷积层、3个池化层、2个全连接层和1个Softmax分类层。具体每一层的规格大小设定如表1所示,其中输入层可以直接对原始输入数据进行处理,输入的就是图像的像素值,输入图像大小为227×227×3;卷积层作用就是通过卷积核对输入图像进行卷积操作实现对输入信号特定模式的观测,卷积核的数量越多,相应可提取输入数据的特征信息也更多,所以卷积层也叫做特征提取层。池化层的输入一般来源于上一个卷积层,是一个降采样的操作,主要作用是使网络具有很强的鲁棒性,并且减少了参数的数量,加快了网络的收敛速度,同时防止了过拟合现象的发生;全连接层实际上就是多层感知机的隐含层部分。通常情况下后面层的神经节点都和前一层的每一个神经节点连接,同一层的神经元节点之间是没有连接的。每一层的神经元节点分别通过连接线上的权值进行前向传播,加权组合得到下一层神经元节点的输入。最后是softmax分类层进行棉花发育期分类,输出最终的发育期识别结果。
由于深度卷积神经网络参数多、特征数量大,因此需要大量的图像数据进行训练。一般中型网络的训练需要的数据量就已达到的百万级,数据量不足往往会导致网络过拟合。但该研究构建的棉花数据集图像数量显然无法满足训练上述卷积神经网络模型的要求,因此该研究采用深度学习中的迁移学习方法进行网络模型的训练和微调。ImageNet数据集[20]是目前深度学习图像领域应用中被使用最多的数据集,关于图像分类、定位、检测等研究工作大多基于此数据集展开,该数据集有1 400多万幅图片,涵盖2万多个类别,其中有超过百万的图片有明确的类别标注和图像中物体位置的标注。笔者选用该数据集初步预训练CNN-CGS,待网络收敛后,保存初步预训练的模型,再将构建的棉花数据集对预训练的CNN-CGS进行二次训练微调。但由于该研究所要识别的棉花图像数据量少,且同ImageNet数据集中的对象类别差异较大,因此根据新的数据集二次训练并定制更高层是很重要的,同时由于预训练CNN-CGS模型的初始1~2层主要学习最基本的图像特征(例如颜色、边缘等),所以在微调过程中将其滤波器参数固定不变,其余卷积层的滤波器参数值通过新的网络训练进行更新,试验中设计的具体的微调过程如图3所示。在用棉花数据集对CNN-CGS模型进行网络微调过程中,对CNN-CGS模型先后设计了3次迭代训练。第1次网络迭代训练中,固定网络的1~4层的权重参数,使用棉花数据集训练更新第5层的滤波器权重参数;第2次网络训练中,将第1次迭代训练得到的CNN-CGS模型作为新的预训练模型,然后固定网络的1~3层滤波器参数,再次使用棉花数据集对4~5层滤波器进行参数更新;按同样的方法,在第3次网络训练中,先使用第2次迭代训练得到的卷积层权重参数对CNN-CGS模型进行初始化,然后固定网络的1~2层参数,训练更新3~5层滤波器参数。这样经过3次迭代训练CNN-CGS模型在棉花图像数据不充足的情况下,能够实现很好的收敛,并将其用于之后的棉花发育期识别精度的测试。这种微调方法不仅解决了现有棉花数据集不充足的问题,还大大提高了网络收敛速度。特别在网络训练过程中,除最后一层卷积层学习率初始化设为0001外,其他所有卷积层的学习率均初始化为0.010。当验证误差率在当前学习率下不再提高时,就将学习率除以10。具体棉花发育期识别训练过程中,CNN-CGS模型学习率下降了2次。
1.3 仿真实验平台
仿真平台为64位window7操作系统,硬件环境为内存16 G,Intel(R)Xeon(R)E5-1607,GPU NVIDIA Quadro K600。选用的深度学习开源架构为MatConvNet,并通过MatConvNet[21]调用GPU实现卷积神经网络的并行运算。
2 结果与分析
为了评估基于卷积神经网络方法在棉花发育期识别方面的性能和效率,在测试过程中加入了基于手动特征提取的典型机器学习方法与该研究提出的基于卷积神经网络的方法进行比较。其中基于手动特征提取的机器学习方法主要通过提取基于GLCM特征和HOG特征的纹理特征,并将其组合成特征集输入到由朴素贝叶斯分类器(Nave-Bayes)组成的机器学习算法中[22],从而实现棉花发育期的识别。具体的测试数据集的发育期分类结果如表2所示,其中正确分类895,错误分类130个,采用卷积神经网络的方法在棉花发育期识别结果精度达到了87.32%、召回率达到86.14%、F1分数达到了86.58%、准确度高达86.54%,这些都明显高于基于手动特征提取的方法,证明了深度学习方法在棉花发育期识别方面的有效性。由于卷积神经网络最初是为物体识别而设计的,试验结果显示卷积神经网络在棉花的识别上也获得了很高的识别精度,证明了基于卷积神经网络的方法在捕获图像的纹理特征方面的优越性。同时由于结合了GPU并行计算方法,基于卷积神经网络的方法在识别速度上也远远超过基于手动特征提取方法。试验结果还表明基于卷积神经网络的方法和基于手动特征提取的方法在棉花的播种期和出苗期识别精度相对较低,通过研究发现在棉花的早期生长阶段,图像中大部分是土壤信息,使得这两个发育期图像的土壤特征都是相似的,加大了棉花发育期的识别难度。由于棉花在之后的发育期具有非常独特的特征属性,因此CNN-CGS模型对于后面的棉花发育期识别精度较高。
使用卷积神经网络的方法识别棉花的发育期有以下优势:①基于深度学习的棉花发育期识别方法直接联合优化了所有的卷积层,具有结构轻量、各组件优化同步识别速度快等优点;②基于深度学习的方法以新的视角深度挖掘与棉花发育期之间的内在联系,具有较高的棉花发育期识别精度;③基于深度学习的方法可以对单一图像进行识别,不要求相邻图像数据提供额外的发育期信息,且可以对不同场景的棉花图像进行识别。同时该研究仅使用简单的CNN-CGS模型进行了棉花发育期的识别,进一步引入更深层、更复杂的模型将会得到更加高的识别精度,这也是该研究基于深度学习方法棉花发育期识别未来的研究方向。
基于手动特征提取方法Extraction method based on manual feature81.74 80.7280.6680.89
3 小结
针对棉花发育期的自动观测问题,该研究成功地将深度学习方法应用于棉花的发育期识别,实现了9种棉花发育期的自动观测。首先构建了棉花图像数据集,并提出了用于棉花发育期观测的卷积神经网络CNN-CGS模型,根据棉花图像的特点对预训练的CNN-CGS模型的部分卷积层设计了二次训练微调过程,不仅解决了棉花图像数据不充足问题,还简化了网络训练,提高了网络的鲁棒性,防止了网络的过拟合。为了评估基于深度学习方法在棉花发育期识别方面的性能和效率,该研究使用了基于手动特征提取的机器学习方法与提出的深度学习方法进行对比。试验结果表明,基于深度学习的方法在棉花发育期的识别方面获得了更加准确的识别结果,证明了深度学习方法在棉花发育期识别的有效性和优越性。未来的工作还将包括建立更深层的深度学习架构,特别是训练用于不同农作物發育期识别的深度网络模型。
参考文献
[1] 徐贵力,毛罕平,李萍萍.缺素叶片彩色图像颜色特征提取的研究[J].农业工程学报,2002,18(4):150-154.
[2] 吴茜.基于图像处理技术的棉花发育期自动观测研究[D].武汉:华中科技大学,2013.
[3] 李少昆,索兴梅,白中英,等.基于BP神经网络的小麦群体图像特征识别[J].中国农业科学,2002,35(6):616-620.
[4] 毛文华,王一鸣,张小超,等.基于机器视觉的苗期杂草实时分割算法[J].农业机械学报,2005,36(1):83-86.
[5] KRIZHEVSKY A,SUTSKEVER I,HINTON G E.Imagenet classification with deep convolutional neural networks[J].Advances in neural information processing systems,2012,25(2):1097-1105.
[6] KIM J,LEE J K,LEE K M.Deeplyrecursive convolutional network for image superresolution[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Las Vegas,NV,SUA:IEEE,2016:1637-1645.
[7] SZEGEDY C,LIU W,JIA Y Q,et al.Going deeper with convolutions[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Boston,MA,USA:IEEE,2015:1-9.
[8] KARPATHY A,TODERICI G,SHETTY S,et al.Largescale video classification with convolutional neural networks[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Columbus,Ohio,USA:Curran Associates,Inc.,2014:1725-1732.
[9] SZEGEDY C,TOSHEV A,ERHAN D.Deep neural networks for object detection[C]//BURAES C J C,BOTTOU L,WELLING M,et al.Advances in neural information processing systems.Lake Tahoe,Nevada,USA:TwentySeventh Annual Conference on Neural Information Processing System,2013:2553-2561.
[10] ALEXANDRE L A.3D object recognition using convolutional neural networks with transfer learning between input channels[C]//MENEGATTI E,MICHAEL N,BERNS K,et al.Intelligent autonomous systems 13.Switzerland:Springer International Publishing,2016:889-898.
[11] CHEN L C,BARRON J T,PAPANDREOU G,et al.Semantic image segmentation with taskspecific edge detection using cnns and a discriminatively trained domain transform[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Las Vegas,NV,SUA:IEEE,2016:4545-4554.
[12] SCHULZ H,BEHNKE S.Learning objectclass segmentation with convolutional neural networks[C]//Proceedings of European symposium on artificial neural networks,computational intelligence and machine learning.Bruges:ESANN,2012.
[13] LONG J,SHELHAMER E,DARRELL T.Fully convolutional networks for semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Boston,MA,USA:IEEE,2015:3431-3440.
[14] GIRSHICK R,DONAHUE J,DARRELL T,et al.Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition.Columbus,Ohio,USA:Curran Associates,Inc.,2014:580-587.
安徽農业科学,J.Anhui Agric.Sci. 2019,47(11):241-243