胡健, 车刚,2*, 万霖,2, 周慧茹, 李光
(1.黑龙江八一农垦大学工程学院,黑龙江 大庆 163319; 2.黑龙江省农机智能装备重点实验室,黑龙江 大庆 163319)
在农业生产中,自动导航技术是实现农机自主作业的基础。通过对作物行线的提取,把其作为农业机械作业的导航线,从而实现农业机器人的自主作业。在大豆生产中,自动导航技术可应用于大豆田间的整地、施肥、喷药、除草等作业环节。机器视觉算法具有成本低、精度高等优点,目前以机器视觉为主的自动导航技术已成为该领域的研究热点,在田间、果园、林间广泛应用[1-8]。
陈娇等[9]利用改进的Hough变换方法,对农田实现多垄线的识别与定位。刁智华等[10]通过中值滤波和过绿特征法,提取出玉米、小麦作物行信息的中间作物行,提高了检测时间,减少了背景对提取效果的影响。宋宇等[11]采用垂直投影的峰值点检测算法,通过二次判别定位点,拟合作物导航线,导航基准线准确率达到90%以上。王祥祥等[12]利用稳健回归法线性拟合特征点得到导航线,平均处理1幅640×480像素的玉米图片准确率为92%。关卓怀等[13]采用多段3次B样条曲线拟合法提取水稻待收获区域边界线,提取的图像中距离信息平均误差为9.9 mm、偏差率为2.0%。García-Santillán等[14]通过从玉米地图像中提取出感兴趣区域(region of interest,ROI),积累绿色像素来进行苗带的弯曲和直作物行检测。 Nadeem等[15]利用无人机的图像点云(drone-based image point clouds, DIPC )的自动特征,测试不同噪声下的种植行线。Basso等[16]提出了基于图像处理技术的无人机导航系统,首先对航线进行识别,然后通过线滤波器生成发送到飞行控制器的驱动参数,通过实时和自我调节的应用,减少人工的浪费。
我国豆类种植面积逐年上升,2020年达11593千 hm2,其中大豆种植面积占85%以上[17]。针对大豆苗期除草、追肥等田间作业环节中的自主导航行走需求,可提高导航作业的精准性,达到节本增收的目的。中国南方大豆田间环境复杂,草害严重,且田中常铺设喷灌管道,光照强度高,光照变化对图像分割效果的影响较大,大豆行线提取的准确率降低。。SUSAN角点检测算法由牛津大学的Smith等[18]提出,可以较好地提取图像中的边界角点、消除图像噪声。本文通过超绿特征(2G-R-B)灰度化方法,获取作物的绿色特征,根据SUSAN角点检测算法提取大豆植株特征点,通过随机抽样最大似然估计(maximum likelihood estimation by sample and consensus,MLESAC)算法对离散点进行拟合,得到以早期大豆行中心线作为农业机器的导航基准线。
本试验在海南省乐东黎族自治县九所镇黑龙江省南繁中心大豆育种田进行图像采集,采集时间为2021年12月8日。在大豆植株第1片复叶张开时,采用手机对试验基地内大豆苗带图像进行采集,拍摄高度120 cm,拍摄俯视角60°,图像的分辨率1280×720像素,共采集200张图像。
在农业机械田间作业时,原始图像包含绿色大豆植株、黄色土壤背景和铺设的黑色管道背景,农作物与背景在绿色(green,G)上有很大区别,采用Woebbeche等[19]的超绿特征(2R-G-B)灰度化方法与孟庆宽等[20]提出的YCrCg颜色空间处理方法,对彩色图像进行灰度化。
通过图像二值化提取大豆植株图像,采用最大类间方差法(maximal variance between clusters,OTSU)计算灰度图像的阈值,对图像进行分割,将大豆植株从土壤等背景中提取出来。通过对二值图像开运算处理,利用形态学膨胀及小面积消除法,得到清晰的二值化图像。
采用1个半径为3像素的圆形模板在图像上移动,当 USAN 区域的面积达到最小值,且此最小值小于预设的阈值t=2时,则认为核心点的像素为角点。将圆形模板在被检测的图像上移动,用于判断像素点是否属于USAN区域的公式如下。
对圆形模板内像素点进行求和,即得到USAN区域面积,公式如下。
最后得到初始角点响应函数,公式如下。
通过SUSAN角点算法对二值图像进行特征点检测,得到候选特征点。将图像分割为尺寸相同的左、中、右3幅图像,利用特征点的位置特征自动归类特征点,仅对左、右2幅图像进行特征点检测。将作物位置点分为2类,即左苗带特征点和右苗带特征点。创建矩阵A1、A2分别来存储左、右苗带特征点个数及位置信息。
使用Matlab中FitPolynomialRANSAC函数,该函数使用MLESAC算法[21],通过随机抽样极大似然估计方法来拟合数据,设置最大距离(maxDistance), 距离较远特征点都被视为异常值,获得次数为n的多项式p(x)的系数。
在大豆行线提取过程中,选择最小二乘法拟合作物中心线,公式如下。
式中,k、b为多项式系数。
因此,通过FitPolynomialRANSAC函数,获得次数为1的多项式p(x)的系数,得到多项式系数k和b,获得左右两侧大豆植株的苗带线,作为导航的基准线。基于SUSAN角点检测的农田航线提取方法的流程图如图1所示。
图1 提取流程Fig. 1 Extraction process
在黑龙江省南繁中心对大豆田图像进行采集,并进行台架试验验证。计算机配置显卡为NVIDIA Geforce GTX 960,处理器为11 th Gen Intel(R) Core(TM) i7-11700K,主频3.6 GHz,操作系统为 Windows 10。采用双目摄像头(小觅)与便携式电脑通过 USB 接口直接连接,使用Matlab框架,通过调用 USB Webcam 硬件支持包,读取摄像头传输的视频,实时显示,读取视频帧。
为了验证算法的可行性与准确性,以手工绘制作物行中心线为参考线,计算参考线与算法检测出苗带线的夹角,将算法提取到的苗带线与人工标记的最佳作物行中心线进行比较,当算法提取到的苗带线与人工标记的参考线角度差在±5°时,认定检测结果准确。
本试验采用的超绿特征(2G-R-B)灰度化方法变换得到灰度图像,与YCrCg颜色模型下的灰度图像对比,可以有效提高绿色大豆苗带和铺设的管道背景的对比度,剔除管道背景,将大豆苗从背景中区分出来(图2)。
图2 灰度化图像Fig. 2 Grayscale images
对灰度图像进行二值化处理过程中,原二值图像中存在孔洞(图3A),对比中值滤波和形态学腐蚀膨胀后的二值化图像(图3B)及形态学膨胀及小面积消除法后的二值化图像(图3C)可以看出,形态学膨胀与小面积消除法后的二值化图像能较好地去除噪声,有效地去除图像中孔洞和噪声对特征点提取产生的干扰。
图3 图像二值化Fig. 3 Binary image
通过SUSAN角点算法对图像进行特征点检测,检测出大豆的特征点如图4所示,从二值图像中可以看出,SUSAN角点算法提取出大豆苗带上的特征点基本集中在大豆苗的生长区域。
图4 角点检测Fig. 4 Corner point detection
本试验针对垄上3行的苗带图像进行处理,为了提取图像导航线,减少运算的时间,仅提取图像中左右两侧苗带边缘点即可求出机械导航的中心导航线。将提取特征点映射到原始图像上(图5),显示可以较好地提取出左右两侧苗带特征点。
图5 大豆苗带特征点检测效果Fig. 5 Detection effect of soybean seedlings with characteristic points
为了验证算法的可行性与准确性,进行田间台架试验验证。对大豆苗带进行检测,部分检测结果如图6所示,图中绿色的线表示检测到的大豆苗带,说明该算法可以准确地提取出两侧苗带行线。
图6 大豆苗带检测效果Fig. 6 Soybean seedling belt detection effect
随机选取50幅大豆田间样本图像进行左右两侧苗带行线提取, 对大豆田进行检测。由图7可知,本算法对苗带的检测具有较强的鲁棒性,处理640×480像素图像的平均检测时间为0.531幅·s-1,平均导航线提取准确率为93%,是一种可靠性较高的田间航线检测方法。
随着智慧农业的发展,智能化的农机装备在农业生产中得到了广泛应用,作物苗带行线检测技术是实现农业机械进行田间智能化作业的重要手段。目前,针对大豆田间苗带行线检测算法的研究较少,为解决南方大豆田间光照强度高、常用的作物特征提取算法适应性差、大豆行线难以提取等问题,本研究将图像分割为尺寸相同的左、中、右3幅图像,利用特征点的位置特征自动归类特征点,仅对左、右2幅图像进行特征点检测。采用SUSAN角点检测算法,提取出左右两侧苗带特征点,通过MLESAC算法对离散点进行拟合,提取出大豆边界苗带行线。现有的检测方法多数是对作物图像中所有苗带进行检测,本研究仅对图像中边缘苗带行进行检测,提取图像中左右两侧边缘苗带特征点,避免传统检测算法中数据处理复杂的问题,大大提高检测精度与检测速度,为智能化的农机装备提供视觉导航技术,对精准识别农田导航线和提高农机智能化发展具有重要意义。本研究检测的农田环境较为单一,没有对其他作物苗带进行检测,今后可以基于深度学习对图像进行识别,找出更合适的苗带行线提取方法,提高田间航线检测速度和准确度。