基于无人机遥感影像的多生育期冬小麦种植行检测方法
2023-03-07杨蜀秦林丰山徐鹏辉王鹏飞宁纪锋
杨蜀秦 林丰山 徐鹏辉 王鹏飞 王 帅 宁纪锋
(1.西北农林科技大学机械与电子工程学院,陕西杨凌 712100;2.农业农村部农业物联网重点实验室,陕西杨凌 712100;3.西北农林科技大学信息工程学院,陕西杨凌 712100;4.陕西省农业信息感知与智能服务重点实验室,陕西杨凌 712100)
0 引言
大田环境下小麦采用成行种植以增加光暴露、提供换气通道,方便进行除草和施肥作业[1-2]。种植行方向的识别和准确定位不仅是农机视觉导航的基础[3-4],而且对于作物种植情况分析、精准施药、中耕除草和优化农田管理等工作都有重要意义[5-11]。
无人机遥感具备灵活机动、时效性强和分辨率高等优势,已被广泛用于小麦长势监测[12]、产量估算[13]和倒伏面积提取[14]等农情信息分析。许多研究者基于无人机遥感影像采用超绿特征和霍夫变换等传统图像处理方法开展了种植行提取研究,并已在小麦种植行和玉米垄估计中取得了较好的效果。如王晓杰[15]采用超绿特征、基于移动窗的特征点提取以及霍夫变换、聚类等方法提取小麦、大豆等作物种植行;苏伟等[16]应用霍夫变换提取育种玉米垄数,精度可达90%以上;RAMESH等[17]采用k均值算法、数学形态学和几何运算的空间方法检测番茄行;BASSO等[18]采用超绿特征提取、阈值分割和霍夫变换等检测玉米种植行。但是这些方法仅适用于作物行完整的田间条件下,当面临种植行稀疏、杂草干扰和封垄等情况时,传统的种植区域提取和种植行检测方法效果较差。
近年来,利用深度学习有效的特征表示和端到端的学习能力[19],将其应用于作物种植行检测的工作逐渐增多。PANG等[20]基于Masking Scoring R-CNN模型检测玉米种植行区域,在不考虑地形条件时,准确度较高;BAH等[21]提出一种基于CNN的霍夫变换组成的CRowNet方法,检测甜菜地种植行。然而,文献[20]提出的方法仅提取种植行区域,并未考虑种植行中心线的检测。而且,文献[20-21]均未考虑在作物拔节期时趋于封垄的种植行提取。
本文结合深度学习和传统方法,分别利用其小麦种植行区域检测精度高和种植行中心线检测计算复杂度低的优势,研究多生育生长条件下的小麦种植行中心线提取问题。根据种植行整体性先验信息,构建SegNet[22]深度语义分割模型,提取小麦种植行区域;基于霍夫变换对种植行中心线预检测的结果,提出采用二分k均值聚类方法去除伪直线,优化种植行中心线检测效果,以期实现复杂环境下小麦种植行提取。
1 数据采集与处理
1.1 实验区域和设备
实验地点位于陕西省关中平原中部的杨凌农业高新技术产业示范区曹新庄小麦育种试验田,中心坐标(34°18′23.23″N,108°05′57.54″E),属于温带半干旱或半湿润气候,年平均气温11~13℃,年降水量500~700 mm。如图1a所示,小麦种植区域长约175 m,宽约98 m,面积约17 150 m2。该区域所种植冬小麦于2020年10月中旬播种,2021年6月中旬收获。
图1 实验区域和拍摄设备
图像采集设备为大疆精灵4型多光谱版无人机,如图1b所示。该设备搭载1个可见光相机及5个多光谱相机。由于可见光传感器具有更高的分辨率,因此本研究采用可见光图像进行小麦种植行提取。
1.2 数据采集和分析
采用无人机采集分蘖期和拔节期2个阶段的冬小麦农田遥感影像,飞行具体参数如表1所示。每幅遥感图像分辨率约为4 000像素×15 000像素,通过Pix4Dmapper软件拼接。为方便处理,将拼接后的全景图像分割成分辨率为256像素×256像素的若干子图,在子图上检测小麦种植行,并进行评价。
表1 小麦农田无人机影像参数
图2列出了冬小麦分蘖期和拔节期不同情况下的种植行区域。其中,图2a、2d包括了清晰完整的小麦种植行,图2b中存在杂草胁迫情况,图2c、2e为种植行稀疏或不完整,而图2f中种植行趋于封垄。可以看出,这些复杂因素对小麦种植行中心线的提取造成了一定的困难。
图2 分蘖期和拔节期小麦无人机遥感图像
1.3 数据集制作
采用开源软件LabelMe对拼接后的无人机遥感影像进行手工标注,标注时将作物种植条形区域中有“仅存绿色作物”、“仅存裸土”和“种植行存在断行”这3种情况,同归为“种植行”类,并将标注后的图像裁剪为256像素×256像素的子图作为网络输入,如图3所示。
图3 冬小麦无人机遥感图像的数据标注
2个时期小麦遥感影像中均包含11块相互独立的小麦种植区域,从分蘖期和拔节期的图像中各选取1块区域作为测试集,然后按照比例9∶1划分18块区域作为训练集,2块区域作为验证集,将训练集、验证集和测试集按照分辨率256像素×256像素进行分割,得到共2 165幅训练集图像以及241幅验证集图像,测试集包含75幅分蘖期图像和147幅拔节期图像。最后通过添加噪声、旋转以及亮度和饱和度变化等数据增强方式将最终的训练集扩充至10 000幅图像,以提高模型鲁棒性。
2 检测方法
本文从种植行区域提取和行中心线确定两方面考虑小麦种植行检测,其中,小麦种植行区域的鲁棒提取是行中心线确定的关键。由图2可以看出,小麦种植行具有明显的纹理特征,这一特征可借助深度语义分割模型进行识别和优化;其次,对于具有一定宽度的小麦种植行,直接采用霍夫变换难以得到准确的中心线,因此提出采用二分k均值聚类优化霍夫变换的直线检测结果。
2.1 基于深度语义分割的小麦种植行区域提取
像素级分类是语义分割领域里一个研究热点。其中,SegNet作为一种代表性的语义分割方法,主要由编码器、解码器和逐像素分类器组成,具有对称简洁的Encoder-Decoder结构。如图4所示,SegNet网络结构的左半部分是编码网络,由经过预训练的VGG16的前13层作为特征提取层,并通过丢弃全连接层在保留高分辨率特征映射的同时,有效减少参数量。解码器与编码器对应,同样具有13层,将低分辨率的特征图映射为与输入相同的分辨率,并送入分类器为每个像素独立地产生类别概率。
图4 基于SegNet的小麦种植行区域提取网络模型
编码器由5个block组成,每个block进行卷积、批标准化和ReLU激活操作,并通过最大池化的方法实现下采样。针对下采样会降低特征图分辨率,从而损失边界信息这一不利于语义分割的问题,SegNet在解码器部分使用相应编码器的最大池化步骤中计算的池化索引进行非线性上采样,逐步恢复特征信息,改善边界描述。因此SegNet核心在于解码器,通过释放编码器中存储的位置信息得到较为完整的边缘,在语义分割领域中得以广泛使用。
2.2 基于二分k均值聚类的小麦种植行中心直线检测
基于深度语义分割模型提取小麦种植行区域后,需进一步确定小麦种植行的中心直线。针对每个小麦种植行区域,采用霍夫变换直线检测,从参数空间中可得到多组候选点,从中确定最优的可表示种植行区域主方向的点。在农作物种植行提取任务中多采用k均值聚类确定数据点的质心,从而得到最接近种植行区域中心的直线。然而,该方法容易陷入局部最优解而造成错检和漏检。为此,本文提出采用二分k均值聚类检测小麦种植行中心的方法。
二分k均值聚类算法改进自k均值聚类,它将整个数据集看成一个整体,求其平均值作为初始质心。首先,对数量仅为1个的初始质心进行二均值聚类并产生2个新的质心,接着对每个质心所代表的类计算其误差平方和,选择使得总误差平方和最大的类再次进行二均值聚类。依此类推,直到产生的质心数等于给定的聚类质心个数,即图像中包含的种植行条数。该方法能够避免算法陷入局部最优解,鲁棒性强,因此本文将霍夫变换算法中每组表示直线的极坐标参数作为聚类算法的样本数据,应用二分k均值聚类,得出代表每条种植行的聚类质心,从而消除种植行中存在的冗余直线。
在提取种植行区域后,对语义分割预测图像的像素进行垂直方向的投影,种植行区域所在列即为峰值,峰值点的个数即为每幅子图中所包含的种植行条数,并将其作为后续进行聚类过程所需提取的聚类质心的个数,因此本文所用方法可自适应地获取聚类质心个数k。但这同时导致了后续处理依赖于种植行区域提取的效果,前一步处理若能够达到较精确程度,那么后续经过聚类后的结果即可避免出现直线错漏的情况。
2.3 实验方案
首先比较DeepLabv3+[23]、Segformer[24]和SegNet 3种深度学习模型与传统特征提取方法在小麦种植区域提取的结果,选取最优模型进行小麦图像预处理。其次,基于提取的小麦种植行区域,采用霍夫直线检测以及提出的二分k均值聚类方法检测种植行中心线,验证所提出方法的有效性。
2.3.1深度学习小麦种植行区域提取模型构建和精度评价
SegNet、Segformer与DeepLabv3+模型采用经过裁剪和数据增强后的256像素×256像素图像作为输入,预测时采用相同尺寸的图像进行种植行区域提取。
实验用的显卡为GeForce RTX 2080Ti,显存为10 GB,操作系统为 Ubuntu 16.04。特别地,SegNet模型深度学习框架采用Pytorch 1.2.0,编程语言及版本为Python 3.6.10,迭代次数为30 000次,批尺寸为6,学习率为1×10-4,动量参数为0.9。Segformer模型深度学习框架采用Pytorch 1.7.1,编程语言及版本为Python 3.7.0,迭代次数为160 000次,批大小为6, 采用Poly策略动态调整学习率。DeepLabv3+模型深度学习框架采用Tensorflow 1.14,编程语言及版本为Python 3.6.5。迭代次数为30 000次,批大小为6,初始学习率为0.05,结束学习率为6×10-6,权重衰减以及动量参数分别为0.000 8和0.9。
采用平均像素精度(Mean pixel accuracy, MPA)[25]衡量语义分割算法精度,通过分别计算每个类被正确分类像素数的比例,最后累加求平均的方式获得。
2.3.2小麦种植行中心线精度评价
在种植行直线检测阶段,采用提出的作物行检测算法分别处理小麦分蘖期和拔节期的遥感图像,检测所得的作物行中心直线为预测直线,标注结果中作物行区域的中心直线作为真实直线,测量预测直线与真实直线相对水平方向角,定义2条直线的最大夹角为作物行的角度偏差,当预测直线角度相对真实直线角度为顺时针方向偏移时,偏差角为正值,反之则为负值。当预测直线相对真实直线发生水平方向平移时,定义平移距离为作物行的位置偏差,向右偏移时位置偏差为正值,反之则为负值,最后计算位置、角度偏差的标准差。角度偏差和位置偏差计算式为
(1)
(2)
式中θmean——平均角度偏差
n——图像中种植行数量
θi——第i条种植行对应的种植直线角度偏差
ρmean——平均位置偏差
ρi——第i条种植行对应的种植直线位置偏差
3 结果与讨论
3.1 实验结果
3.1.1基于超绿特征方法和深度语义分割的小麦种植行区域提取比较
基于超绿特征的传统方法和2种深度语义分割模型对小麦种植区域提取的结果如表2所示。可以看出,在分孽期和拔节期,基于超绿特征的传统方法在检测速度上有优势,但在小麦种植区域提取精度上却远低于深度语义分割方法,显然这一指标在检测问题中更为看重,其中,SegNet提取的小麦种植区域精度最高。在分孽期和拔节期,SegNet比DeepLabv3+分别提高3.8、0.5个百分点,检测速度快28 f/s;在种植行区域提取任务上,Segformer-B0相较于SegNet精度相近,然而检测速度慢15 f/s。因此,综合考虑精度和推理速度,本实验采用SegNet方法提取小麦种植区域。
图5为采用传统方法和SegNet语义分割模型进行小麦种植行区域提取的结果对比。在图5a中,分蘖期小麦种植行稀疏,传统方法的检测结果如图5b所示,由于是基于超绿特征检测,仅能分割出绿色作物,因此小麦种植行区域出现严重缺失,而在图5c中,深度语义分割方法得到完整的种植行,提取效果较传统方法具有明显的优势;在图5d中,拔节期小麦种植行出现封垄,由于跨行连接处亮度较暗,因此造成传统提取方法在连接处分割效果较差(图5e),而图5f则显示基于SegNet的方法仍能保持较好的分割效果,体现了深度语义分割的鲁棒性。
图5 基于超绿特征的方法与深度语义分割方法提取小麦种植区域比较
3.1.2基于二分k均值聚类的小麦种植行中心直线确定结果
表3对比了本文提出的二分k均值聚类和k均值聚类确定种植区域中心线的结果,表中Sl和Sd分别表示位置偏差和角度偏差的标准差。可以看出,2种方法对基于SegNet语义分割提取的小麦种植区域均能较好地检测行中心线。与k均值聚类中心线检测相比,二分k均值聚类方法直线检测的漏、误检条数最低,说明后者具有鲁棒性强、不易陷入局部最优解的优点。综上所述,采用本文方法进行小麦种植行直线的检测,分蘖期和拔节期小麦种植行直线平均位置偏差的绝对值分别为0.55、0.11 cm;平均角度偏差的绝对值分别为0.001 1、0.000 37 rad,标准差低,检测精度高。
表3 小麦分蘖期和拔节期种植区域中心线检测结果比较
图6为杂草胁迫下2种中心线检测方法的结果比较。图6a和图6c中的数据点显示了检测到的直线参数,其中横坐标为位置ρ,纵坐标为角度θ,相同颜色的点属于同一种植行,“+”号表示算法直线检测的结果。可以看出,在图6a中,k均值聚类方法检测结果出现了偏差,“+”表示的聚类质心陷入了局部最优解,不能准确反映每类数据点的中心,其结果如图6b所示,出现了明显的漏检和误检。本文所采用的二分k均值聚类对中心线的检测结果如图6c所示,“+”表示的聚类质心基本处于每一类数据点的中心,从图6d可以看出,每个作物行均得到了准确的检测结果。
图6 二分k均值和传统的k均值聚类小麦种植行中心线检测比较
3.1.3多生育期冬小麦遥感图像种植行检测结果
采用本文所述冬小麦大田种植行检测算法对测试集中75幅分蘖期图像及147幅拔节期图像进行连续处理,并组合回原图尺寸。处理结果如图7所示,中心线在大图中基本能够保持连续,然而拼接处的部分中心线仍存在1~3像素的错位,对应实际地面尺寸则存在1~5 cm的误差。
图7 冬小麦大田种植行检测结果
3.2 讨论
3.2.1基于深度语义分割的多种小麦种植行表型提取分析
表4为SegNet网络模型在几种复杂小麦种植行表型条件下的分割精度,其中,“稀疏”和“杂草胁迫”多出现于分蘖期,而“断行”与“封垄”多出现于拔节期。实验表明,在稀疏、杂草胁迫和封垄条件下,SegNet的MPA可达93%以上,而对断行现象的处理略差,但MPA也达到87.1%。
表4 复杂情况下深度语义分割模型提取的小麦种植区域MPA
3.2.2复杂条件下小麦种植行中心线确定分析
图8为拔节期作物行出现断行时,SegNet和超绿特征检测的种植区域对后续种植行中心线确定的影响。如图8a方法流程预处理图像所示,基于超绿特征的种植区域难以提取完整的种植行,因此霍夫变换出现了漏检的情况。而由于SegNet模型强大的特征学习能力,即使出现断行,也仍被认为是与其他种植行相同的类,最终能够完整分割并得到正确的行中心线检测结果,如图8b方法流程中的聚类结果所示。
图8 拔节期作物行断行条件下两种方法处理结果对比
针对分蘖期中小麦行出现过于稀疏的现象,图9对比了传统图像处理方法及本文所提出的方法处理过程及结果。可见,与断行类似,稀疏条件下小麦特征点分布零散,导致直线检测算法无法成功检测中心直线,造成漏检;而SegNet模型预测图对每条稀疏作物行区域较为敏感,在稀疏条件下作物行仍保持分割完整。
图9 分蘖期小麦图像稀疏条件下两种方法处理结果对比
图10表示在麦田趋于封垄时,作物行间小麦特征点分布密集,超绿特征的分割结果对直线检测算法造成较大干扰,从此产生误检并出现很大偏差(图10b),而语义分割仍能保持较强的鲁棒性,作物行独立并仍能完好地分割(图10c)。
图10 拔节期小麦图像封垄条件下两种方法处理结果对比
图11为传统图像处理方法和本文所提算法在一定杂草胁迫下分蘖期小麦图像的种植行检测提取过程,显然,传统图像处理方法以及本文所提方法都能一定程度上避免杂草噪声的影响,最终处理结果趋于一致。
图11 分蘖期小麦图像杂草胁迫条件下两种方法处理结果对比
综上所述,种植行直线检测效果取决于预处理结果。在传统图像处理方法中,对于小麦图像预处理不可避免地需要根据图像特征和研究者的个人经验应用多种阈值参数以达到去除杂草、避免光照或阴影等自然因素的影响,而在本文提出的方法中,引入深度学习方法替代预处理过程,仅需训练出合适的模型即可对麦田图像进行批量分割处理,并能对作物行区域达到很好的分割效果,后续即可应用多种直线检测算法提取农田作物种植行,大大提高了检测过程的鲁棒性。
4 结论
(1)针对多时相小麦图像种植行中心线检测,提出基于深度语义分割和霍夫变换的小麦种植行检测方法。在小麦种植区域提取中,深度学习方法具有像素级分类和可克服光照影响的优点,检测性能显著优于基于超绿特征的传统方法;在小麦种植区域中心线检测方面,针对基于霍夫变换的k均值聚类方法容易陷入局部最优解而造成错检和漏检,提出采用二分k均值聚类方法对检测结果进行改进,显著提升检测精度。
(2)小麦种植区域的准确提取是中心线检测的关键。实验结果表明,SegNet语义分割方法对于稀疏、杂草胁迫、断行和封垄等复杂条件下的种植区域分割MPA达93%以上,断行条件下仍达到87.1%。结合提出的二分k均值聚类方法,对分蘖期和拔节期小麦种植行直线平均位置偏差的绝对值分别为0.55、0.11 cm,平均角度偏差的绝对值分别为0.001 1、0.000 37 rad,标准差低,检测精度高。