APP下载

基于U-Net网络的果园视觉导航路径识别方法

2021-02-01韩振浩苑严伟方宪法朱立成

农业机械学报 2021年1期
关键词:样条边缘阈值

韩振浩 李 佳 苑严伟 方宪法 赵 博 朱立成

(1.中国农业大学工学院, 北京 100083; 2.中国农业机械化科学研究院土壤植物机器系统技术国家重点实验室, 北京 100083)

0 引言

我国是世界上最大的果品生产国之一,果品产业已成为我国农村经济发展的重要支柱和农民收入的主要来源,为了进一步提高生产效率和经济效益,果园机械化与智能化是未来发展的必然趋势。自主导航技术作为智能农机装备的关键技术之一,极大地提高了农业机械的田间作业品质和作业效率,有效地降低了农机驾驶员的劳动强度。视觉导航技术具有探测信息广、获取信息完整和价格低廉的特点,是目前主流的导航方法之一,广泛应用于自动驾驶中的局部路径规划问题,该技术通过图像处理方法对导航路径进行可靠、稳定地识别,进而引导机具行进。

实时稳定的导航路径识别是当前国内外学者研究的重点。文献[1]在神经网络图像分割的基础上,通过霍夫变换提取边界直线,进而生成橘园导航信息。文献[2]根据天空和树冠的差异,从树冠背景中分割天空,并拟合导航路径。文献[3]根据形态学特征识别植株的中心区域,并根据回归算法和霍夫变换生成导航线。文献[4]通过图像分割,基于OTSU方法的双阈值处理和最小二乘线性回归进行作物行的检测。文献[5]基于图分割理论将聚类后的图像进行分割,应用霍夫变换提取路径特征。文献[6]基于综合阈值法进行图像二值化处理,并采用B样条曲线进行水稻待收获区域的边缘拟合。文献[7]提出了一种基于改进遗传算法的作物行直线检测方法,并在玉米实验田进行了导航跟踪实验。文献[8]提出了一种基于改进平滑度纹理特征的路径识别算法,并基于达芬奇平台在田间环境进行了导航实验。文献[9]采用HSV颜色空间的V分量阈值进行田间道路的阈值分割处理,经形态学处理后通过最小二乘法生成导航路径。文献[10]选取树干与道路的交点,基于最小二乘法原理拟合道路左右两侧边缘,并提取几何中心点,生成导航基准线。在果园环境中,采用传统的图像处理方法易受果树形态不一、环境背景复杂以及光照条件变化等因素的干扰。果树低矮、树冠稠密,较难进行树干识别,道路边缘不规则,较难稳定生成道路信息,采用霍夫变换、垂直投影法等直线拟合方法不适合果园的曲线路径。近年来,卷积神经网络在图像处理方面取得了较大研究进展,其中,U-Net网络是一种基于全卷积神经网络的语义分割网络,采用U型编码-解码结构,适用于语义简单、灰度范围大、边界不清晰的图像分割任务。

基于现有研究成果,本文提出一种基于U-Net网络的果园视觉导航路径识别方法。在制作果园导航数据集的基础上,训练基于U-Net的语义分割模型,根据模型生成的道路掩码边缘,进行导航信息的提取,生成拟合中点,最后进行多段三次B样条曲线拟合,识别导航路径。

1 方法与模型

本文提出的果园导航路径识别方法由两部分组成:道路语义分割和导航路径识别。道路语义分割基于U-Net全卷积神经网络,进行果园图像中道路信息的像素级识别,得到对应的掩码区域;导航路径识别根据语义分割结果,利用扫描法对生成的二值化掩码图像进行边缘信息提取,并进行多段三次B样条曲线拟合,识别果园导航路径。

1.1 基于U-Net的果园道路语义分割

1.1.1图像采集与数据集制作

数据采集地点位于广东省江门市新会区的新会柑种植园,采集日期为2019年11月。

数据采集时通过手动遥控履带底盘行走,模拟机具的正常作业状态。利用车顶ZED型立体相机进行数据采集,视频数据存入车载计算机。摄像头通过云台固定架安装于底盘上盖,纵向距底盘前部0.02 m,横向位于底盘箱体中轴线,距离地面0.55 m,拍摄方向为机体正前方。机具行进速度约为1.2 m/s,摄像头采集的图像分辨率为1 280像素×720像素,采集帧率为60 f/s。

从采集数据中随机选取1 300幅图像进行果园数据集制作,其中850幅用于训练集,150幅用于验证集,300幅用于测试集。采用Labelme工具进行数据处理,根据研究目标,本文只对道路像素进行标注。对标签文件中道路边缘的坐标信息进行读取,得到每幅图像对应的掩码区域灰度图。图1为数据集中3种不同光照条件下的图像标注与灰度图生成效果。

1.1.2基于U-Net的果园道路分割网络

果园环境中存在着目标非结构化、光照明暗变化、视角变化、尺度变化以及物体遮挡等多种问题,对传统的图像处理方法造成一定影响。本文基于全卷积神经网络原理,根据果园道路检测的实时性和准确性要求,选择U-Net作为本文的道路分割网络。

U-Net是较早使用全卷积神经网络的语义分割网络,该网络呈完全对称分布,其中较浅的高分辨率特征图解决像素的定位问题,较深的低分辨率特征图解决像素的分类问题。网络通过跳跃连接的方式将特征图进行维度拼接,能够保留更多的位置和特征信息,更适合处理像素级语义分割任务。由于网络权重参数总量较少,对较小的数据集具有良好的适应性[11-12]。

解码阶段由4个上采样模块组成,每个上采样模块包含1个步长为2的3×3反卷积层、1步跳跃连接和2个填充像素为0、步长为1的3×3卷积层。每个上采样模块处理时,先通过反卷积层将特征图尺寸增大一倍,通道数减半,然后与对应编码阶段下采样模块生成的特征图通过跳跃连接的方式进行维度拼接,由于特征图尺寸不一致,跳跃连接前需要先对特征图进行裁剪。对维度拼接生成的特征图进行2层卷积后,特征图尺寸变为(2H-2-2,2W-2-2)。经过4个上采样模块堆叠处理后,最终得到语义分割结果,网络整体框架如图2所示[13-14]。

网络训练时,输出特征图中逐像素回归值pc(x)计算式为

(1)

式中ac(x)——位置x通道c上的像素得分

K——类的数量

能量函数E为逐像素回归值的交叉熵损失函数,计算式为

(2)

式中pl(x)(x)——位置x的softmax损失函数

l(x)——位置x的标签值

w(x)——位置x的权重

语义分割模型训练完成后,将测试集图像输入便可得到每个像素的回归概率,分割结果如图3所示。对预测结果进行二值化处理后,便可进行道路导航路径的生成。

1.2 导航路径识别

现有的路径识别方法多采用霍夫变换、垂直投影法进行线性拟合,适用于直线路径。果园环境中道路边缘不规则且路径多为曲线,直接对分割结果进行直线拟合误差较大。本文采用扫描法提取道路左右侧边缘信息点,然后通过加权求和的方式得到道路拟合中点位置,最后基于样条曲线拟合原理对道路导航路径进行识别。

1.2.1边缘信息提取

对分割结果进行二值化处理,选取最大轮廓作为道路掩码区域。掩码区域的形状多呈“凸”字形,其中靠近道路起始的区域近似为长方形,靠近道路尽头的区域近似为三角形。如果采用单一的扫描方式会出现边缘信息提取不完整的现象,本文提出了一种基于扫描法的掩码边缘信息提取方法,流程如图4所示,具体步骤为:

(1)选取图像下沿中心位置作为导航起始点,轮廓极点坐标位置作为道路尽头点,求出两点间的斜率k,公式为

(3)

式中 (xstart,ystart)——导航起始点坐标

(xend,yend)——道路尽头点坐标

(2)以导航起始点为中心,对称生成横坐标间距相等的扫描起始点,并使用步骤(1)生成的斜率组成多对等距扫描线进行逐像素斜向扫描,其中第i对等距扫描线公式为

(4)

式中h——扫描间距

(3)在二值化图像中,道路区域像素值为255,背景像素值为0,如果某2个相邻位置像素的像素值从0变为255,则可认为该点为边缘信息点,其中左侧扫描线得到左边缘信息点,右侧扫描线得到右边缘信息点。

(4)对斜向扫描法提取的多对边缘信息点进行加权求和,自上而下得到道路拟合中点,第i个拟合中点坐标表达式为

(5)

其中

(6)

式中 (xi,left,yi,left)——左侧边缘信息点坐标

(xi,right,yi,right)——右侧边缘信息点坐标

(xi,middle,yi,middle)——拟合中点坐标

wi,left——左侧权重

wi,right——右侧权重

N——斜向扫描次数

η——修正系数

修正系数η取值为式(7)的解,即

(7)

其中

(8)

此时前2个拟合中点的连线为道路尽头夹角的角平分线,可适应不同相机视角。

(5)道路形状为“凸”字形,只采用斜向扫描提取的边缘信息不够完整,以步骤(3)最下方拟合中点纵坐标的1.5个扫描步长位置为开始,道路起始点纵坐标为结束,进行等距水平扫描,继续得到左右侧边缘信息点。

(6)对水平扫描得到边缘信息点进行平均加权求和,继续生成道路拟合中点,此时左右侧权重均为0.5。

边缘信息提取和拟合中点生成的效果如图5所示。从结果中可以发现,本文提出的边缘信息提取方法对道路形状有着良好的适应性,能够生成适应边缘弧度的道路拟合中点。为了识别出平顺的导航路径,需要选择合适算法对拟合中点进行曲线拟合。

1.2.2基于B样条曲线的导航路径拟合算法

果园道路边缘不规则且路径多为曲线,B样条曲线相较于多项式、指数以及对数曲线具有局部可控、凸组合、连续性等优势。本文将导航起始点、道路拟合中点以及道路尽头点作为B样条的控制顶点,进行多段三次B样条曲线拟合,生成平顺的道路导航路径[15-17]。

导航路径的拟合基于n+1个控制顶点Pi(i=0,1,…,n),每次取出4个相邻控制顶点便可得到一段三次B样条曲线,其中第i段的三次B样条曲线的表达式为

(9)

其中Nj,4(t)=[N1,4(t),N2,4(t),

N3,4(t),N4,4(t)]

(10)

(11)

式中t——曲线参数

Nj,4(t)——样条曲线的基函数

将基函数代入,可得到第i段的三次B样条曲线对应的矩阵表达形式为

(12)

第i段B样条曲线始末端点的坐标位置、一阶导数以及二阶导数分别为

(13)

(14)

(15)

基于上述推导,对道路拟合中点进行多段三次B样条曲线拟合,生成道路导航路径。基于样条曲线拟合原理,扫描值越小,拟合中点越多,导航精度相对越高,但此时计算量较大。扫描值越大,路径相对较为平顺,但导航精度越低。不同的横向、纵向扫描距离生成的导航路径如图6所示,对比测试结果,当扫描值为70像素时,识别的导航路径能够有效反映边缘信息,曲线整体较为平顺,计算量相对较小。

2 实验与分析

为了验证本文提出的路径识别方法在果园数据集中的准确性、稳定性以及鲁棒性,分别进行道路分割与路径识别实验。

2.1 道路分割

2.1.1评价指标

道路分割主要通过3个考核指标进行评价:准确率P(Precision)、召回率R(Recall)以及交并比I(Intersection over Union)[18-20],公式分别为

(16)

(17)

(18)

式中TP——判定为正样本的正样本像素数量

FP——判定为正样本的负样本像素数量

FN——判定为负样本的正样本像素数量

2.1.2网络模型训练

在Win10系统下,基于Tensorflow框架搭建U-Net网络。训练的硬件配置为Intel i7-6700HQ CPU,Nvidia Geforce GTX960 GPU,8 GB内存。训练前,随机选取850幅图像作为训练集,150幅作为验证集,300幅作为测试集。为了加快训练和预测速度,预处理时,图像分辨率统一转换为256像素×256像素。为了增大训练数据量,提高模型鲁棒性,本文通过随机水平翻转训练集拓充数据量。使用He权重初始化方法对网络初始参数进行处理[11],采用丢弃函数预防训练过程中的过拟合。

根据经验,优化方法选择Adam自适应学习率优化器,其中单次迭代样本数为8,丢弃率为0.5,初始学习率为0.001,学习率衰减系数为0.1,最小学习率为1×10-6,分别采用3、4、5组上下采样模块进行100个周期的训练,训练集和验证集的损失函数曲线如图7所示。

观察学习曲线可知,模型训练损失始终小于验证损失,在前20个训练周期内,3种U-Net网络的训练损失和验证损失衰减较为剧烈,随着迭代次数的增加,在剩余周期中损失值趋于稳定。

最优模型训练结果如表1所示,其中4组上下采样模块的U-Net网络的验证损失值为0.095 1,验证集准确率为96.76%,召回率为89.41%,交并比为86.82%,相对其他2种网络的训练效果较好,因此采用该网络生成的训练模型进行果园道路分割。

2.1.3分割精度测试

模型分割时会得到每个像素的回归概率,如果大于设定临界阈值,则可以认为该像素点为正样本。为了验证模型的测试精度与鲁棒性,得到不同环境下较优的临界阈值,本文进行3组不同果园光照强度、4组不同临界阈值的语义分割实验,将测试集中的图像数据输入至果园分割模型中,模型分割效果如图8所示,精度测试结果如表2所示。

表1 模型训练结果对比Tab.1 Comparison of model training results

表2 语义分割精度测试结果Tab.2 Test results of semantic segmentation accuracy

从表2可以看出,当临界阈值为0.2和0.4时,光照强度对道路分割精度影响不大,临界阈值为0.6和0.8时,随着光照强度的增加,道路分割的召回率和交并比呈逐渐减小趋势。观察模型分割结果可知,识别误差区域主要存在于道路边缘位置,大面积树冠阴影、强光造成的图像模糊均会降低道路边缘像素的预测概率,但在道路主干部分,不同光照条件下的预测概率基本不受影响,可实现道路可行驶区域的像素级分割。

从表2可以看出,在相同光照强度下,随着临界阈值的增加,模型的准确率呈逐步增加、召回率呈逐步减小、交并比呈先增加后减少的趋势。观察不同光照强度的模型分割结果可知,主要原因在于较高的临界阈值会筛选掉较多低概率像素点,预测结果会更为准确,但与此同时,会损失掉一部分正样本像素,目标识别的完整度会降低,道路掩码面积减小。

如表2所示,当临界阈值为0.4时,低光照强度下准确率为92.61%,召回率为96.41%,交并比为89.52%;普通光照强度下准确率为94.51%,召回率为91.02%,交并比为86.45%;强光照强度下准确率为92.17%,召回率为92.97%,交并比为86.16%。本文选择0.4作为果园分割的临界阈值,此时光照强度变化对分割精度的影响较小,3项评价指标综合表现较好。

2.2 路径识别

2.2.1测试方法

将机具在果园的实际行驶轨迹映射至图像中,从道路尽头位置开始,在识别路径中自上而下等距选取10个检测点,与相同纵坐标的实际路径点进行横坐标像素对比,取绝对值得到路径识别的像素误差,公式为

epixel=abs(udetect-uactual)

(19)

式中udetect——检测点像素横坐标

uactual——实际路径点像素横坐标

abs()——取绝对值函数

为了得到像素误差对应的实际距离误差,基于针孔相机模型将检测点和路径点从像素平面坐标转换至相机坐标,通过计算2点的欧氏距离得到实际距离误差。相机内部参数与畸变系数厂家已标定,图像深度信息可通过深度相机立体测距原理实时返回,近距离测量误差为1%。坐标转换公式为

(20)

(21)

(x,y)=(X/Z,Y/Z)

(22)

式中 (u,v)——像素平面坐标

fx、fy、cx、cy——相机内部参数

(xcorrected,ycorrected)——归一化平面纠正后坐标

k1、k2、p1、p2——畸变系数

(x,y)——归一化平面直角坐标

r——归一化平面极径

(X,Y,Z)——相机坐标系坐标

2.2.2精度测试

分别在3种光照强度和3种相机视角的测试集图像中进行路径识别实验,识别结果如图9所示。从图中可以看出,在不同光照和视角条件下,本文采用的网络模型对道路主干部分像素的识别效果受光照明暗变化的影响较小,边缘信息提取方法可以完整地获取不同视角下的道路轮廓信息,并基于加权求和生成随边缘弧度变化的道路拟合中点,样条曲线拟合能够有效减弱不规则边缘对路径识别的干扰,进而得到平顺的导航路径。

像素误差测试结果如表3所示,在低光照强度下,视角偏左、居中和偏右的平均像素误差分别为13.7、11.8、10.0像素。在普通光照强度下,平均像素误差分别为8.2、6.5、12.0像素。在强光照强度下,平均像素误差分别为9.3、2.9、11.4像素。可得不同条件下平均像素误差为9.5像素。

距离误差换算结果如表4所示,在低光照强度下,视角偏左、居中和偏右的平均距离误差分别为0.056、0.048、0.041 m。在普通光照强度下,平均距离误差分别为0.041、0.040、0.052 m。在强光照强度下,平均距离误差分别为0.046、0.022、0.048 m。可得不同条件下平均距离误差为0.044 m。从检测点对应像素深度信息可知,检测点与相机的距离在1.112~7.743 m之间,随着检测点与相机距离的增加,误差呈逐步增大的趋势,主要原因在于,检测点离相机越远,对应像素深度和欧氏距离越大,距离误差越大。

已知所在果园的道路宽度约为3.1 m,平均距离误差占比为1.4%。果园履带底盘的正常行驶速度多在0~1.4 m/s之间,记录测试集中每幅图像的计算时间,路径识别的平均处理时间为0.154 s。在当前果园环境和硬件配置下,本文提出的路径识别方法具有较好的精度和实时性。

3 结论

(1)提出了一种基于U-Net全卷积神经网络的果园道路分割方法。临界阈值为0.4时,训练后模型在弱光、普通光以及强光光照强度下的分割交并比分别为89.52%、86.45%、86.16%。抗光照干扰能力强,能够平稳实现果园道路像素级分割。

表3 像素误差测试结果Tab.3 Test result of pixel error 像素

表4 距离误差换算结果Tab.4 Conversion result of transverse distance error mm

(2)在道路分割的基础上,提出了一种基于扫描法的边缘信息提取方法和基于B样条曲线拟合的导航路径识别方法,边缘信息提取和路径识别方法对不同视角的道路掩码形状具有良好的适应性。

(3)在不同光照和视角条件下进行了路径识别实验,本文提出的导航路径识别方法受光照视角影响较小,平均像素误差为9.5像素,平均距离误差为0.044 m。已知所在果园道路宽度约为3.1 m,平均距离误差占比为1.4%。果园履带底盘的正常行驶速度在0~1.4 m/s之间,单幅图像平均处理时间为0.154 s。在当前果园环境和硬件配置下,本研究可为视觉导航任务提供有效参考。

猜你喜欢

样条边缘阈值
光固化3D打印成型工艺参数对样条性能的影响
基于数值积分的最佳平方逼近样条函数
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
采用红细胞沉降率和C-反应蛋白作为假体周围感染的阈值
三次样条和二次删除相辅助的WASD神经网络与日本人口预测
一张图看懂边缘计算
辽宁强对流天气物理量阈值探索统计分析
用B—样条函数进行近似和建模
在边缘寻找自我