基于机器学习和无人机图像的棉花密度识别研究

2021-12-03 07:18张静王清茹雷亚平王占彪韩迎春李小飞邢芳芳范正义李亚兵冯璐
中国棉花 2021年9期
关键词:棉田准确率卷积

张静,王清茹,雷亚平,王占彪,,韩迎春,李小飞,邢芳芳,范正义,李亚兵,,冯璐,*

(1. 棉花生物学国家重点实验室郑州大学研究基地/ 郑州大学,郑州 450000;2. 棉花生物学国家重点实验室/ 中国农业科学院棉花研究所,河南 安阳 455000)

随着科学技术的发展,人工智能逐步应用于各领域[1]。 机器学习是人工智能的重要领域之一,目前已应用于军事、遥感、生物医学[2-3]等各个领域,在农业领域的研究[4]中显示出良好的应用前景。 以低成本、高时效的无人机遥感技术快速获取田间密度有助于高效率进行田间管理。

传统机器学习通常需要对图像进行特征提取,一般是基于形状、颜色、纹理等特征[5-7]。支持向量机(Support vector machine,SVM) 作为1 种分类器,与其他机器学习方法相比,其理论更严谨,模型泛化能力更好[8-9]。田有文等[10]利用色度矩作为葡萄病害彩色纹理图像的特征向量, 结合SVM 分类方法,实现对葡萄病害的分类识别,证明该方法可用于植物叶部病害识别。 邓立苗等[8]提取不同品种玉米叶片的形态、 颜色和纹理特征, 通过构建SVM模型进行识别分类,对玉米生长期间品种识别研究具有一定参考价值。深度学习是机器学习领域的热门方向[11-12]。相较于传统图像识别方法,深度学习技术能够自动学习图像特征[13],提高识别算法的准确率。 卷积神经网络是典型的深度学习模型, 包括LeNet、VGGNet、GoogleNet、MobileNet 等 模 型[14-16]。尽管该类模型具有强大的特征学习和特征表达能力[11-13],但其训练过程复杂、时间较长,还需要大量数据集;因此,前人提出了新的机器学习方法——迁移学习[17-19],这是一种将已经训练好的卷积神经网络模型用在其他数据集上,并重新学习新数据集特征的方法。 王见等[20]通过更改模型参数,利用训练好的迁移模型提取特征进行棉花识别,进一步提高了识别准确率。 Chen 等[18]通过VGGNet 模型与迁移学习相结合对水稻图像进行预测,实现了植物病害监测。 宋晨勇等[21]通过改进GoogleNet 模型提高识别准确率, 实现了苹果病害的图像自动识别。这2 种模型均通过增加层数同时减少参数[22-23]以降低计算复杂程度、提升训练速度。 Li 等[24]发现Gaussian 和MobileNetV2 模型的结合在监测果园障碍物方面,表现出识别准确率高、速度快等优点。

棉花作为重要的经济作物[25],其研究在农业生产和实践应用中占有重要地位。 机器学习在棉花中的应用已取得很大进展,但多集中于病虫害[26-27],在棉田信息采集方面的研究较少。目前对于棉田信息的定位采集仍然依靠人工,费时费力。 而棉田密度的快速准确识别可以有效提供农情信息,有助于优化田间管理。 因此,本研究通过不同的神经网络模型方法,利用无人机获取棉田的不同密度图像数据集进行模型训练并分类,比较传统机器学习模型与卷积神经网络模型训练结果,最后找出棉田密度识别的最优模型,旨在解决棉田密度快速识别中存在的问题,为棉花田间高效管理提供技术支撑。

1 材料与方法

1.1 试验区概况

本研究所在区域为河南省安阳市白璧镇中国农业科学院棉花研究所东场试验基地 (114°21′E,36°06′N),试验田为一熟棉田,多年棉花连作,土壤肥力适中。 试验棉花品种为鲁棉研28(SCRC 28),设置了6 个密度梯度(1.5 万株·hm-2、3.3 万株·hm-2、5.1 万株·hm-2、6.9 万株·hm-2、8.7 万 株·hm-2、10.5万株·hm-2),每个小区10 行,行距0.8 m,行长8 m,小区面积64 m2。试验采取随机区组设计,每个处理设置4 个重复。 棉田采用机械中耕除草,肥水管理同当地大田,病虫害防控采取当地常规化学防治方法。

1.2 试验平台

操作平台为64 位Windows 10 系统+Intel(R)Core (TM) i7-10700F CPU@2.90 GHz+16 GB 内存; 采用基于keras2.4.3 和tensorflow2.2.0 的深度学习开源框架开发环境,编程语言为Python 3.7,代码运行平台为PyCharm2020.2.3。

1.3 图像数据采集与处理

1.3.1数据采集。使用大疆精灵四旋翼无人机[DJI Phantom 4 professional,续航时间约为28 min,采用1/2.3 英寸、1 240 万像素的互补金属氧化物半导体(CMOS)传感器]获取大田棉花花铃期冠层数字图像。 在2020 年7 月10 日至8 月21 日期间选择晴朗、无风天气,采集图像共10 次,飞行高度为20 m和30 m,每个小区的不同高度分别拍摄3 幅图像,镜头垂直朝下,白平衡与曝光模式设置为自动。 图片为JPEG 格式,大小为5 472×3 078 像素。

1.3.2图像预处理。通过无人机拍摄不同种植密度棉田的冠层图像, 由于无人机拍摄的图像像素过大、包含信息较复杂,需要对原始图像进行预处理。首先利用Photoshop CC2019 对拍摄的RGB 图像进行定位裁剪,得到单张单一密度图像,进而将6 个密度(1.5 万株·hm-2、3.3 万株·hm-2、5.1 万株·hm-2、6.9 万株·hm-2、8.7 万株·hm-2、10.5万株·hm-2)人工分类并对其进行对应密度标注,共计1 632 幅图像。 各类别的图像见图1(参见封三彩版)。

1.3.3数据增强。 在深度学习中,常采用数据增强[28-29]方法对原始图像进行处理以增加样本的数量和数据的复杂程度,这种方法可以在一定程度上提升模型训练的稳定性和模型的性能,并防止过拟合现象的发生[30-31]。 采用无人机拍摄的不同密度棉田图像样本较少,提取的特征不足以训练模型;因此,本研究利用旋转、翻转、明暗和加入噪声4 种途径对棉花数据集进行图像增强处理, 以扩大数据集。 通过上述方法, 最终分别得到密度为1.5 万株·hm-2、3.3 万株·hm-2、5.1 万株·hm-2、6.9 万株·hm-2、8.7 万株·hm-2、10.5 万株·hm-2的棉田图像4 914、4 968、4 968、4 752、4 860、4 914 张,共计29 376 个图像样本。 其中对密度为1.5 万株·hm-2数据的增强处理效果见图2(参见封三彩版)。

1.4 试验设计及技术路线

本研究属于6 类别图像分类问题,将处理后的不同密度棉田图像划分为3 个部分,其中训练集占75%,验证集占15%,测试集占10%,图像输入大小均调整为224×224 像素, 数据的标准化是通过将所有像素值除以255 来实现的,以使它们与网络的初始值兼容。本研究分2 个部分进行:(1)基于尺度不变特征变换(SIFT)进行纹理特征提取,然后利用SVM 分类器对其进行识别分类。其主要识别步骤:按图像类别提取SIFT 特征,以SIFT 特征向量(特征点和特征点描述)构建SVM 的训练数据和验证数据。 (2)基于迁移学习的方法迁移3 种卷积神经网络模型(VGGNet16、GoogleNet、MobileNetV2)[7],搭配可以加快模型收敛速度的Adam 优化算法,微调网络模型的卷积层和全连接层。其中,VGGNet16冻结了卷积层;3 个模型的全连接层均添加了Dropout 结构, 并将其值设置为0.5;Adam 算法的参数设置:批样本大小为64,训练轮数(epoch)为30,初始学习率为0.000 1。 所有网络模型的边界像素填充方式均为Same, 输出层使用Softmax 实现分类,其他处理层均使用激活函数ReLU。 以上设置可以降低过拟合的发生。

模型训练结束后,比较SVM 和3 种卷积神经网络模型的识别结果,并通过训练好的模型对测试数据进行测试,结合模型评估指标,选取适合本研究的最优模型。 本研究的技术路线见图3。

图3 技术路线

1.5 利用混淆矩阵的模型评估方法

在机器学习中,混淆矩阵是用于评估卷积神经网络模型和衡量分类性能的指标。精确率是预测样本中被正确预测的百分比,反映模型的准确度。 召回率是预测样本中正确预测的占实际正确的百分比,反映模型的灵敏度。 F1 分数是精确率和召回率的调和平均值,取值范围是[0,1],衡量模型的总体性能。 为了评估所选模型的稳定性和分类性能,本研究采用混淆矩阵分析其精确率、召回率、F1 分数[6,18]。

2 结果与分析

2.1 不同模型准确率对比

比较SVM 和迁移的3 种卷积神经网络模型的训练结果 (表1) 可以看出, 经模型训练后,GoogleNet 网络模型的图像分类识别准确率(Accuracy)最高(99.73%),紧接着依次是MobileNetV2模型、VGGNet16 模型、SVM 模型,其中SVM 模型的分类识别准确率比GoogleNet 模型低21.99 百分点。结果表明,与传统机器学习相比,卷积神经网络模型的图像分类识别准确率更高。

表1 不同模型的图像分类识别准确率

图4 展示了3 种卷积神经网络模型对棉田不同密度的分类训练情况。 可以看出,随着迭代次数的增加,分类识别准确率先升高,但达到一定数值后则不再继续升高;而分类识别损失率(Loss)则不断降低直至收敛。 对比模型的验证集训练结果,VGGNet16 模型的准确率和损失率均出现了波动现象,而GoogleNet 和MobileNetV2 模型分别在约9 epochs、7 epochs 时趋于平缓,表明VGGNet16 模型不稳定,而GoogleNet 和MobileNetV2 的拟合效果更好。

图4 3 种卷积神经网络模型的图像分类识别准确率和损失率

2.2 模型验证

对比分析训练后的神经网络模型对测试集的预测结果(表2)可以看出,4 种神经网络模型对各密度的分类识别效果不同, 其中对密度为1.5 万株·hm-2的图像分类识别准确率均最高, 即1.5 万株·hm-2 的棉田特征更容易被模型识别; 通过SVM 方法对各密度的预测结果中, 最低和最高的密度分类识别准确率相差29.21 百分点, 且仅有3个密度的分类识别准确率高于平均值,其平均值在4 种模型中最低,表明SVM 模型分类结果不稳定,且性能较差。对比3 种卷积神经网络模型对测试集图像的验证结果,VGGNet16 对各密度测试集的识别准确率中,最低和最高相差8.02 百分点,其中有4 个类别识别准确率低于平均值;GoogleNet 和MobileNetV2 模型的平均分类识别准确率分别达到了98.25%和98.36%, 且不同密度间相差不大,表明与VGGNet16 模型相比,GoogleNet 和MobileNetV2 模型更稳定。

表2 4 种模型的测试集分类识别准确率

2.3 模型评估指标

从表3 可以看出,GoogleNet 和MobileNetV2模型对棉田各密度的识别精确率均在98%以上,F1 分数均较高。 综合混淆矩阵的评估指标 (精确率、召回率、F1 分数)来看,本研究选用的GoogleNet和MobileNetV2 模型对不同密度棉田分类问题具有较好的稳定性和分类性能,为优选模型。

表3 GoogleNet 和MobileNetV2 模型对不同密度棉田图像的分类性能

3 讨论

机器学习可以从大量数据中学习其规律并从中挖掘出潜在信息,近年来开始广泛应用于农学领域[3]。 本研究选择传统神经网络模型(SVM)和结合迁移学习的3 种卷积神经网络模型进行密度识别,结果表明,利用SVM 模型对不同密度棉田图像进行分类,识别准确率不高(77.74%);而训练后3 种卷积神经网络模型的分类识别准确率均超过90%,较SVM 模型有大幅度提高,这与之前的研究结果[5,32]一致,可以看出卷积神经网络可以明显提高模型训练的准确率[33]。 进一步对比分析3 种卷积神经网络模型,较高的分类识别准确率表明了迁移后的模型在棉田密度分类中的适用性, 并且发现GoogleNet和MobileNetV2 模型优于VGGNet16 模型, 这与前人研究结果[34-35]一致,但也有研究发现VGGNet16模型优于GoogleNet 模型[36];因此,数据集的大小、类型,或者是参数设置的差异、网络层数的选择等,都可能导致模型的识别结果不同。 高友文等[37]发现通过增加数据集样本容量可以相对提高AlexNet模型的识别准确率;Gu 等[38]发现层数设计、函数选择、 正则化等方面的改进也会对模型训练有影响。因此,后续可以通过增加样本的多样性或对神经网络进一步深入改进优化网络模型。

本研究探讨了基于机器学习算法对棉田密度图像进行识别分类,为有效利用无人机图像采集棉田信息, 并对其进行信息化管理提供了技术支持。但棉花生长属于动态过程,本研究只选取了花铃期图像进行密度分类研究;因此,今后可以基于本研究的方法在棉花不同生育时期按时序开展图像识别等的研究,以便优化田间管理。

4 结论

将无人机图像与机器学习相结合,实现了棉花不同密度的分类。 结果表明,卷积神经网络模型优于SVM 模型。 经模型验证和分析,GoogleNet 和MobileNetV2 模型具有更好的稳定性和良好的棉花图像分类性能。 表明在数据增强基础上, 搭配Adam 优化算法并对卷积神经网络模型进行微调,可有效提高训练后模型的识别准确率,并减少过拟合现象的发生,提高其泛化能力。 本研究表明了深度学习算法对不同密度棉田图像分类的有效性。

猜你喜欢
棉田准确率卷积
人工助迁多异瓢虫和化防2种模式对棉蚜的防效及天敌种群动态影响
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
从滤波器理解卷积
扁桃棉花间作对棉田牧草盲蝽发生与为害的影响