计算机视觉在农业领域中的应用

摘要:随着计算机等技术的不断发展,计算机视觉技术被广泛运用到各个领域中。与此同时,随着人口数量的增长、城市化进程导致耕地面积的减少,农业向着高质量、高产量方向的发展成为关键。将计算机视觉技术应用在农业领域能够在一定程度上降低虫害等对农业的影响,推进农业向着高质量、高产量的方向不断发展。本文简要回顾计算机视觉领域的几个重要任务和方法,介绍当前计算机视觉技术在农业领域中的应用。

关键词:计算机视觉;农业;深度学习

一、引言

       从2016年AlphaGO战胜人类围棋冠军李世石,到2017年升级版的AlphaGO战胜世界排名第一的棋手柯洁,AlphaGO也从Lee版本发展到Master版本再到Zero版本[1, 2],最终来到基于强化学习的Alpha Zero,人工智能得到越来越多的关注。计算机视觉,利用计算机强大的计算能力去感知世界,并作为人工智能的一个重要分支,在整个人工智能发展史上有着重要作用。随着深度学习时代的来临,计算机得以在视觉相关的任务中取得优于人类的表现,2015年Microsoft Research提出的ResNet夺得ImageNet挑战赛中分类任务冠军并首次超越人类在该任务中的表现[3]

       计算机视觉技术不断发展,在各项视觉任务中取得优异表现,也使其被应用于多个领域,如医疗、交通等。2018年,加州大学圣地亚哥分校张康教授团队使用基于图像的深度学习工具对疾病等进行诊断,在多个任务中超越人类专家,该项研究成果被刊登在《Celll》杂志封面[4];随着无人驾驶、智慧城市等的发展,计算机视觉也被广泛应用于交通领域用于缓解城市道路拥挤、减少交通事故等。

       此外,据不完全估计地球总人口将在2050年突破100亿,人口的爆炸式增长必将带来食物需求的增加,环境的破坏会使得全球气候恶劣、温室效应等,同时城市化进程使得耕地面积减少。人类对食物的需求、对饮食质量的要求,与耕地面积、气候环境构成了矛盾,人类需要用更少的土地种植出更多更好的农产品以满足人类发展的需求。人工智能技术尤其是计算机视觉技术,结合基因组学、植物表型、农业工程等使得这一矛盾得以解决,大力推进农业向着高质量、高产量的方向不断发展。

二、计算机视觉

        计算机视觉,(Computer Vision, CV)是一门研究如何使机器“看”的科学,其以图像(视频)为输入,以对环境的表达(representation)和理解为目标,研究图像信息组织、物体和场景识别等,包括但不限于物体分类、物体检测、物体分割、物体追踪、三维重建等。

2.1 视觉任务

计算机视觉在农业领域中的应用

图1 计算机视觉经典任务(来源:斯坦福cs231n)

       物体分类(Object Classification)任务要求回答图像中是否包含某种物体,如一张图像中的动物是猫还是狗。物体检测(Object Detection)任务不仅需要识别出图像中所含物体的种类,而且需要指出该物体所处的位置并且使用边框(Bounding Box)标出。物体分割(Object Segmentation)任务在尺度上更细,往往在像素尺度进行分类,将不同的物体分割。

计算机视觉在农业领域中的应用

图2 物体分割

       计算机视觉中,一个场景的二维表示往往会丢失物体的某些信息,而三维表示能够更全面地描述一个场景或者物体,所以有一些研究者将目光聚焦在同时定位与地图创建(Simultaneous Localization and Mapping, SLAM)、三维重建(3D Reconstruction)等。

2.2 研究方法

      在前深度学习时代,各类视觉任务主要依赖人工选取的特征和分类器,如传统的机器学习算法——决策树(Decision Tree)、随机森林(Random Forest)、支持向量机(Support Vector Machine, SVM)等。但是这类方法通常需要人工设计或者选择特征,如何让计算机具有表示学习的能力成为关键。

      前深度学习时代的机器学习算法主要依赖于人工设计的特征,学习算法在该特征基础上对权重等进行数值优化。而深度学习具有表示学习的能力,无需人工设计的特征进行学习。2012年,Hinton等使用AlexNet在ImageNet大规模视觉识别挑战赛分类任务中获得冠军,并大幅降低top-5错误率[5]。2015年Microsoft Research提出的ResNet夺得ImageNet大规模视觉识别挑战赛分类任务冠军并首次超越人类在该任务中的表现[3]

计算机视觉在农业领域中的应用

图3 ResNet[3]

      在物体检测任务中,基本思路是使用不同大小的窗口在图像上滑动,在每个区域,对窗口内的区域进行目标定位。RCNN从输入图像中选择候选区域,对于每个候选区域使用卷积神经网络计算特征,基于该特征使用支持向量机进行训练并将输出结果进行回归得到最终的检测结果[6]。Fast R-CNN中不同候选区域的卷积特征提取部分共享,基于候选区域生成算法的结果在卷积特征上进行采样,最终对每个候选区域进行目标定位[7]。Faster R-CNN利用候选区域网络从conv5特征中产生候选区域,并且将候选区域网络集成到整个网络中端到端训练,将检测速度进一步提升[8]。在物体分割任务中主要使用的网络结构为Mask R-CNN,其在Fast R-CNN输出的基础上增加掩膜的输出,实现对物体的分割[9]

计算机视觉在农业领域中的应用

图4 R-CNN[6]

2.3 主要数据集

2.3.1 ImageNet

       该数据集来自斯坦福计算机视觉实验室,训练集包含128万张图像,测试集包含10万张图像,涉及的物体种类超过1000类[10]

计算机视觉在农业领域中的应用

图5 ImageNet

2.3.2 PASCAL VOC

       PASCAL Visual Object Classes数据集包含20个类别,主要用于物体检测任务,通常使用VOC07和VOC12的训练集并集作为训练,用VOC07的测试集作为测试[11]

2.3.3 COCO

       微软的Common Objects in Context数据集用于物体检测、物体分割等任务,提供图像和对图像的语义文本描述信息[12]

 

三、计算机视觉在农业领域中的应用

       在前深度学习时代,人工设计的特征和浅层分类器被广泛应用于各个领域。

Bakhshipour A等人将彩色RGB图像转换为二值图像,分别通过检测边缘抽取傅里叶描述子、计算时不变特征和外形因素等,以均方误差为评价指标,使用支持向量机和人工神经网络进行训练[13]

       Guo W等人将物体分割物体问题变为分类问题[14],通过一系列假设将图像中的不同像素进行标注——将像素分为植物和背景,并基于该标注数据提取不同颜色空间的特征训练决策树模型。为了保证结果的鲁棒性,作者使用5张不同情况下的图像,包括晴天、阴影、光反射、雨天等,从图像中选取135000个像素进行训练,经过消除噪声等步骤后生成的掩膜能够较好地对图像进行分割,结果如图6所示。

计算机视觉在农业领域中的应用

图6 实验过程及分割结果(d)[14]

在深度学习时代,卷积神经网络被广泛用于物体分类等领域,经典的网络结构包含卷积层、池化层、随机失活层、非线性**函数等。Khan Z等人提出了一种使用RGB彩色图像进行基于模型的植被指数估计的新方法[15],在保留卷积层、池化层等卷积神经网络常规结构的基础上通过更换新的损失函数,实现对植被指数的估计。整个实验以RGB图像作为输入,输出结果为对应的植被指数,进而获取RGB图像所对应区域的作物健康状况、水分含量、营养含量等信息,具体结构如图7所示。

计算机视觉在农业领域中的应用

图7 深度神经网络结构[15]

       植物表型指受基因和环境因素决定或影响并反映植物结构等的特征,通常能够很好地反应基因、环境对植物的影响。通过分析表型等,能够很好地指导农学专家将数据与已知遗传数据对比,将基因型和表型进行关联分析,达到高级遗传育种的目的。

传统的检测设备体积过大或者过于复杂,农学专家操作复杂的检测设备较为困难,考虑到移动便携设备如智能手机在计算、摄像等方面具有很高的性能,Aquino A等人开发了一个基于安卓智能手机的应用程序vitisBerry用于估计葡萄粒数[16]。该应用程序通过手机自带摄像头获取葡萄图像,并对该图像进行处理和分析以估计葡萄粒数。

计算机视觉在农业领域中的应用

图8 vitisBerry[16]

       Baweja H S等人提出StalkNet,该方法利用深度学习方法获得植物秸秆数及茎宽[17]。StalkNet使用Faster RCNN进行物体检测并对检测结果进行计数,该计数结果即为该植物的秸秆数。StalkNet以物体检测结果作为全连接网络的输入,输出为植物秸秆的像素宽度,通过立体视觉匹配将像素宽度转换成植物秸秆的实际茎宽。

计算机视觉在农业领域中的应用

图9 StalkNet[17]

       上述的研究主要集中在二维图像,而三维物体的二维表示通常会丢失掉某些重要信息,三维表示能够更好反映物体在真实空间中的位置以及表型信息,下面介绍三维重建在农业领域中的应用。

       Nguyen T T等人构建了基于结构光的植物三维重建系统[18],如图10所示。该系统包括若干双目相机、结构光装置、可旋转平台等。该系统使用相机阵列获取图像,使用GPU完成匹配,生成点云并对植物进行三维重建。

计算机视觉在农业领域中的应用

图10 基于结构光的植物三维重建系统[18]

       HuY等人使用Kinect相机获取叶类植物的图像,将获取的图像转换为点云信息,利用该信息生成被测量植物的三维模型,通过该三维模型能够获取该植物的相对高度、绝对高度、体积、叶片面积等信息,实现对植物生长参数的无损测量[19]

计算机视觉在农业领域中的应用

图11 点云处理和植物生长参数测量[19]

 

四、未来与挑战

       计算机视觉技术仍在快速发展,也越来越多地被运用在农业领域,但是还存在着一些挑战。

4.1 农业领域大规模数据集

      目前,农业领域没有大规模的公共数据集,一些研究成果通常依赖研究人员自身收集的数据,在评价指标相同的情况下,研究结果不具有可比性。基于大规模公共数据集,不同的研究人员能够很好地比较其提出的方法和前人方法的优劣。同时,大规模数据集也使得基于深度学习的方法能取得更好的性能。

4.2 最新方法的应用

       在前深度学习时代,计算机视觉技术往往是指基于图像处理的传统方法,在深度学习时代,越来越多的研究工作使用深度学习方法。与此同时,随着计算机科学的发展,越来越多的结构和方法层出不穷,注意力机制(Attention Mechanism)[20]和生成式对抗网络(Generative Adversarial Networks,GAN)[21]的出现使得深度学习领域进一步发展。

       将state-of-the-art的方法运用到农业领域也成为未来的一个可能,注意力机制模仿人看图像时,目光的焦点在不同的物体上移动,当神经网络对图像进行识别时,每次集中于部分特征上,识别结果更加准确;GAN通过对抗过程估计生成模型的新框架,判别模型和生成模型相互对抗,被用于图像生成或者数据增强,使得农业大规模数据集成为可能。

4.3 复杂情况下的鲁棒表现

       不同于理想的实验室环境,实际的农业场景通常很复杂,不同的光照条件带来的阴影、亮度过亮等问题,混乱的背景等带来图像中的遮挡,不同的天气条件以及研究对象在不同生长时期具有不同的形态等,上述问题都给相关研究带来了巨大挑战。

       此外,农业是我国的第一产业,其发展与大众的衣食密不可分,与此同时农业领域的较多问题仍有待解决,希望计算机视觉技术被更广泛更好地运用到农业领域以解决实际问题。

 

参考文献:

[1] Silver D, Huang A, Maddison C J, etal. Mastering the game of Go with deep neural networks and tree search[J].Nature, 2016, 529(7587):484-489.

[2] Silver D, Schrittwieser J, Simonyan K,et al. Mastering the game of Go without human knowledge[J]. Nature, 2017,550(7676):354-359.

[3] He K, Zhang X, Ren S, et al. DeepResidual Learning for Image Recognition[J]. 2015:770-778.

[4] Kermany D S, Goldbaum M, Cai W, et al.Identifying Medical Diagnoses and Treatable Diseases by Image-Based DeepLearning[J]. Cell, 2018, 172(5):1122–1131.e9.

[5] Krizhevsky A, Sutskever I, Hinton G E.ImageNet classification with deep convolutional neural networks[C]//International Conference on Neural Information Processing Systems. CurranAssociates Inc. 2012:1097-1105.

[6] Girshick R, Donahue J, Darrell T, etal. Rich Feature Hierarchies for Accurate Object Detection and SemanticSegmentation[C]// IEEE Conference on Computer Vision and Pattern Recognition.IEEE Computer Society, 2014:580-587.

[7] Girshick R. Fast R-CNN[J]. ComputerScience, 2015.

[8] Ren S, Girshick R, Girshick R, et al.Faster R-CNN: Towards Real-Time Object Detection with Region ProposalNetworks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence,2017, 39(6):1137-1149.

[9] He K, Gkioxari G, Dollar P, et al.Mask R-CNN[C]// IEEE International Conference on Computer Vision. IEEE,2017:2980-2988.

[10] Deng J, Dong W, Socher R, et al.ImageNet: A large-scale hierarchical image database[C]// Computer Vision andPattern Recognition, 2009. CVPR 2009. IEEE Conference on. IEEE, 2009:248-255.

[11] Everingham M, Gool L, Williams C K,et al. The Pascal Visual Object Classes (VOC) Challenge[J]. InternationalJournal of Computer Vision, 2010, 88(2):303-338.

[12] Lin T Y, Maire M, Belongie S, et al.Microsoft COCO: Common Objects in Context[J]. 2014, 8693:740-755.

[13] Bakhshipour A, Jafari A. Evaluationof support vector machine and artificial neural networks in weed detectionusing shape features[J]. Computers & Electronics in Agriculture, 2018,145:153-160.

[14] Guo W, Rage U K, Ninomiya S.Illumination invariant segmentation of vegetation for time series wheat imagesbased on decision tree model[J]. Computers & Electronics in Agriculture,2013, 96(6):58-66.

[15] Khan Z, Rahimieichi V, Haefele S, etal. Estimation of vegetation indices for high-throughput phenotyping of wheatusing aerial imaging[J]. Plant Methods, 2018, 14(1):20.

[16] Aquino A, Barrio I, Diago M P, et al.vitisBerry: An Android-smartphone application to early evaluate the number ofgrapevine berries by means of image analysis[J]. Computers & Electronics inAgriculture, 2018, 148:19-28.

[17] Baweja H S, Parhar T, Mirbod O, etal. StalkNet: A Deep Learning Pipeline for High-Throughput Measurement of PlantStalk Count and Stalk Width[M]// Field and Service Robotics. 2018.

[18] Nguyen T T, Slaughter D C, Max N, etal. Structured Light-Based 3D Reconstruction System for Plants.[J]. Sensors,2015, 15(8):18587-612.

[19] Hu Y, Wang L, Xiang L, et al.Automatic Non-Destructive Growth Measurement of Leafy Vegetables Based onKinect[J]. Sensors, 2018, 18(3):806.

[20] Xiao T, Xu Y, Yang K, et al. Theapplication of two-level attention models in deep convolutional neural networkfor fine-grained image classification[C]//Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition. 2015: 842-850.

[21] Goodfellow I J, Pouget-Abadie J,Mirza M, et al. Generative Adversarial Networks[J]. Advances in NeuralInformation Processing Systems, 2014, 3:2672-2680.