前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于深度学习的农作物行检测,用于农业机器人的田间导航

基于深度学习的农作物行检测,用于农业机器人的田间导航

作者头像
一点人工一点智能
发布2024-03-09 22:16:11
1921
发布2024-03-09 22:16:11
举报

转载自:农业信息技术研习所

编辑:东岸因为@一点人工一点智能

论文地址:https://onlinelibrary.wiley.com/doi/epdf/10.1002/rob.22238
论文地址:https://onlinelibrary.wiley.com/doi/epdf/10.1002/rob.22238

研究背景与意义

粮食生产需求的增加导致了农业任务所需劳动力的增加。在这一背景下,农业机器人成为满足不断增长的劳动力需求的关键。然而,农业技术绩效的不确定性已成为新技术采用者的主要关注点。

在农业作物的种植过程中,导航面临着诸多不确定性,例如杂草密度、不同的光照水平、生长阶段和作物行的不连续性。通过采用精确的全球导航卫星系统(GNSS)来辅助导航,可以在一定程度上减轻这种不确定性。然而,精确的GNSS系统价格昂贵,而且它们并不总是能覆盖各种环境,尤其是在丘陵地带。因此,改进计算机视觉算法以促进当前农业系统是至关重要的。

相较于实时运动全球定位系统(RTK-GPS)和其他用于农业机器人的昂贵导航硬件,计算机视觉传感器通常更为经济实惠。然而,必须克服与具有挑战性的田间条件相关的技术障碍,以及解决在农业环境中使用计算机视觉所带来的不确定性,才能充分利用这种廉价硬件为农业机器人带来的好处。

实验亮点与方法

机器人在耕地中导航时经常会遇到不平坦的地形。在实际环境中,这种不平整的地形会导致机器人漂移并改变航向。作物行检测算法对作物行导航效果的评估是在受控模拟环境中进行的,以避免不平坦地形等外部干扰。

本研究的主要贡献概述如下:

1)在多个作物季节收集的独特的甜菜作物行图像数据集,代表了不同的生长阶段、光照水平、不同的杂草密度、弯曲的作物行和不连续性。

2)一种新颖的作物行选择算法,该算法利用作物行分割掩码,在任何田间条件下(包括生长阶段、杂草密度或不连续性)都能准确预测中央作物行,而无需针对具体条件进行调整。

3)使用综合性能指标评估不同田间条件下的作物行检测性能,该指标考虑了检测到的作物行的角度和位置误差。

4)在现实模拟中测试基于视觉伺服的作物行导航算法,以评估我们方法的视觉伺服性能。

本研究根据赫斯基机器人的前置摄像头拍摄的图像,在甜菜田中创建了一个作物行数据集。该数据集包含代表 11 个场变化和 43 种场变化的可能组合的图像。本文中提出的数据集是作物行检测林肯数据集 (CRDLD) 的连续。

使用的前置摄像头包含:英特尔 Realsense D435i RGB-D 摄像机和 T265 跟踪摄像机的俯仰角为-25°以收集作物行的前视图像和视觉里程计。深度框的视场角为87°×58°(水平 × 垂直),RGB 帧的视场角为69°×42°(水平 × 垂直)。另外两台 D435i RGB-D 摄像机安装在机器人两侧,指向相邻的作物行,如下图所示。机器人上安装了一台 EMLID Reach RS-Plus RTK-GPS,通过互联网协议进行 RTCM 网络传输校正。全球导航卫星系统读数的平均精度为±4cm。机器人横跨在作物行上,沿着作物行行驶。人类通过蓝牙控制器发出速度指令,使机器人保持直线行驶。

图1 带有实感摄像头的哈士奇机器人 D435i(上)和 T265(下)在甜菜田中
图1 带有实感摄像头的哈士奇机器人 D435i(上)和 T265(下)在甜菜田中
表1 11种主要类别下的裁剪行图像
表1 11种主要类别下的裁剪行图像

获取到的数据集包含上表的11个主要类别下的裁剪行图像,这11个类别考虑了各种田间变化,包括阴影、生长阶段、杂草密度和光照水平。这11个数据类别的 66 个可能组合中又派生出 43 个数据类,如下表所示。

表2 43个数据类及包含的图像数目
表2 43个数据类及包含的图像数目
图2 11 个数据类别的样本。每个样本将表现出与数据类别相对应的主导场变化。(a)水平阴影,(b)前阴影,(c)小作物,(d)大作物,(e)稀疏杂草,(f)茂密杂草,(g)晴天,(h)多云,(i)不连续性,(j)坡度/曲线,(k)轮胎痕迹。
图2 11 个数据类别的样本。每个样本将表现出与数据类别相对应的主导场变化。(a)水平阴影,(b)前阴影,(c)小作物,(d)大作物,(e)稀疏杂草,(f)茂密杂草,(g)晴天,(h)多云,(i)不连续性,(j)坡度/曲线,(k)轮胎痕迹。
图3 43类数据集的部分图像
图3 43类数据集的部分图像

机器人整体包含一个作物行检测通道,用于预测机器人将遵循的中心作物行,以及一个视觉伺服控制器,用于生成机器人要遵循的速度命令。本研究提出了一种基于U-Net的作物行检测语义分割方法。标签的创建方式是将作物行表示为单个对象,而不是单个植物,如下图所示。这种表示将帮助 U-Net 预测整个作物行,尽管存在不连续性。然后,使用来自U-Net的分割掩码来识别机器人将遵循的中央作物行。视觉伺服控制器使用检测到的作物行的角度和起点将机器人驱动到所需位置。本文提出的可视化伺服控制器的整体架构如下图所示。

图4 示例图像(左)和相应的地面实况标签掩码(右)。在地面实况掩码中,每个裁剪行都标有一条宽度均匀为 6 像素的白线。
图4 示例图像(左)和相应的地面实况标签掩码(右)。在地面实况掩码中,每个裁剪行都标有一条宽度均匀为 6 像素的白线。
图5 使用U-Net CNN的作物行导航架构用于作物行掩码检测。U-Net CNN生成的裁剪掩码被三角形扫描方法用于预测中心裁剪行( Δ θ 图片 ,裁剪行角度误差对应垂直轴; Δ L_{x2}中心裁剪行相对于图像中点的位置误差)。
图5 使用U-Net CNN的作物行导航架构用于作物行掩码检测。U-Net CNN生成的裁剪掩码被三角形扫描方法用于预测中心裁剪行( Δ θ 图片 ,裁剪行角度误差对应垂直轴; Δ L_{x2}中心裁剪行相对于图像中点的位置误差)。

U-Net模型使用二元交叉熵(BCE)损失函数和Adam优化器进行训练。该模型首先仅使用RGB图像进行训练,然后再次使用RGB-D图像进行训练,以观察深度数据对作物行检测的贡献。然而,深度信息的增加并没有解释预测的显着改善。因此,使用了使用RGB图像训练的模型。该模型学习在五个训练时期预测作物。但是,预测只能检测图像中作物所在的区域。因此,间隔不近的作物不被识别为完整的作物系。在 10 个周期时,模型在检测作物系方面变得更好,尽管当作物行中存在较大间隙时无法检测到该系。该模型仍然无法检测到 20 个时期作物行的不连续性。但这条线的预测变得更加狭窄和尖锐。在大约 40 个时期,该模型能够检测并填补作物行中的空白,从而预测完整的作物行。

图6 5、10、20 和 40 个时期的作物行掩模预测(从左到右)
图6 5、10、20 和 40 个时期的作物行掩模预测(从左到右)

TSM是U-Net预测的后处理步骤。该方法用于确定机器人要跟随的作物中心行线参数。安装在Husky机器人上的Realsense相机捕捉平行作物行的图像,平行作物行似乎在田地的地平线附近收敛。利用摄像机放置引起的平行作物行透视畸变,可以准确地检测中心作物行。假设L的两个端点分别位于图像的最上边缘和最下边缘。三角形感兴趣区域(ROI)由三个点定义:定位点(A)、起始点(B)和停止点(C),如下图所示。\Delta ROI 的定义方式是,它包含图像中通常位于中心作物行的区域。观察L的最低点L_{x2} 在整个数据集上的出现后,点B和点C被设置为190和350(对于512 x 512的图像)。理想情况下,\Delta ROI 应该包含属于中心作物行的像素,但它也可以包含属于邻近作物行的像素区域。该算法分为两步来确定直线。第一步是检测锚点,它是作物行的上端点。第二步检测作物行的下端,整体过程如下表所示。

图7 锚点扫描和线扫描的感兴趣区域。锚点扫描 ROI,红色区域;线扫描 ROI,绿色区域;H, 图像高度;h,锚点扫描ROI高度。ROI为感兴趣的区域。
图7 锚点扫描和线扫描的感兴趣区域。锚点扫描 ROI,红色区域;线扫描 ROI,绿色区域;H, 图像高度;h,锚点扫描ROI高度。ROI为感兴趣的区域。
图片
图片

在瞄点扫描过程中,确定每个图像的锚点(A)。如下图所示,选择距离图像顶部高度为h的水平矩形条作为ROl。方程:h=sH 表示hH(图像的高度)之间的关系,其中s是一个介于0和1之间的比例因子。然后计算所选矩形ROl中每个垂直像素列的数值和并归一化。得到的和曲线的峰值点被确定为图像的锚点。下图给出了与获取到的图像相对应的和曲线示例。确定中心作物行上点L_{x1} 的选择标准总结在公式(1)中,其中I是来自U-Net的二进制掩码预测,X表示矩形ROI中的所有垂直列位置,y表示给定垂直列中的像素位置。

图片
图片
图8 锚点扫描的归一化和曲线 (I,来自U-Net的二进制掩码预测;X,矩形ROI中的垂直列位置;y,给定垂直列内的像素位置)。ROI,感兴趣的区域。
图8 锚点扫描的归一化和曲线 (I,来自U-Net的二进制掩码预测;X,矩形ROI中的垂直列位置;y,给定垂直列内的像素位置)。ROI,感兴趣的区域。

但是,如果峰值点处的总和低于阈值,则锚点将重置为预定点(当图像宽度为512时为277)。阈值的设置方式是,像素列的数字总和必须表示最小高度为0.4h。通过实验计算预定的锚点,方法是从数据集中的所有数据类别中平均绘制一组图像中平均锚点。这样做是为了避免算法从U-Net中检测到预测不佳的作物行掩码的错误锚点。

图9 预测不佳的裁剪行掩码示例。(红线)来自锚点扫描的中心作物行预测和来自预定义锚点的中央作物行预测(绿线)。
图9 预测不佳的裁剪行掩码示例。(红线)来自锚点扫描的中心作物行预测和来自预定义锚点的中央作物行预测(绿线)。

确定好上点A后,将通过线扫瞄获取下点,设P为图中所示的直线BC (\Delta ROI )上的任意点。AP直线上的像素总和被认为是扫描器参数,用于检测中心作物行的下端点。下点L_{x2} 的选取标准如式(2)所示,其中X_{BC} 表示BC线上的所有点。

图10 归一化和曲线的直线扫描(I,基于U-Net的二进制掩码预测;X_{BC},点对线BC;y:像素在给定AP线内的垂直位置)。
图10 归一化和曲线的直线扫描(I,基于U-Net的二进制掩码预测;X_{BC},点对线BC;y:像素在给定AP线内的垂直位置)。

视觉伺服是一种使用计算机视觉数据来控制机器人的方法。通过U-Net后的TSM方法获取到作物行后,使用基于伺服的视觉比例控制器实现自主导航仿真实验。本实验的目的是评估所提出的作物行检测算法在无不平坦地形的模拟环境中对视觉伺服控制器的影响。我们设置了一个模拟的甜菜田,如下图 所示。真正的机器人会因地形不平坦造成的外部干扰而改变其路线。可以控制模拟的甜菜田以实现平坦的地形,该地形可用于测量作物行检测对视觉伺服的影响。仿真参数的摘要如下表所示。

图11 用于视觉伺服的模拟甜菜田(右上:机器人摄像头视图与U-Net预测和TSM输出叠加)。TSM,三角形扫描法。
图11 用于视觉伺服的模拟甜菜田(右上:机器人摄像头视图与U-Net预测和TSM输出叠加)。TSM,三角形扫描法。
表3 仿真参数表
表3 仿真参数表

使用U-Net中检测到的作物行掩码上的TSM检测中心作物行。每个检测到的作物行都由它与垂直方向的角度以及图像L2上直线的最低位的位置来参数化。在计算\Delta \theta 线和L_{x2} 线的角度和位移误差时,考虑了绝对值。作物行检测的整体性能(e)由一个性能指标量化,该指标根据\Delta \thetaL_{x2} 对行检测性能进行同等加权,如式(6)所示。N为待测图像的数量。\Delta \theta_{max}\Delta L_{x2,max} 分别是\Delta \thetaL_{x2} 的最大检测错误。所有的角度都以度为单位,而位移则以像素为单位。

图片
图片

实验结果与总结

本实验中使用的U-Net模型是在1075张图像的数据集上训练的,表3中列出的每个数据类有25张图像。纯rgb模型的峰值验证loU为22.5%,而RGB-D模型为31.75%。尽管RGB-D模型的loU值较高,但这两种模型预测的质量差异并不显著,如图15所示。

在作物行检测管道中添加深度信息也会增加作物行检测的计算时间。因此,选择RGB-only模型为TSM预测作物行掩码。报告的loU值将被认为是一般计算机视觉应用中典型语义分割任务的低于平均性能。然而,我们的后处理算法可以恢复准确的导航作物行,而不考虑较低的loU分数。

在我们的测试数据集中,单个loU得分在10%到50%之间变化。然而,\Delta \theta 在整个loU范围内低于2°,\Delta L_{x2} 在loU范围内的图像空间低于20像素。该方法的性能与Ahmadi等人提出的基线——多行检测方法进行了比较。本研究的方法和基线的分类评估结果总结为三个指标:\Delta \theta\Delta L_{x2} 和下表中的\epsilon

图12 使用 RGB-D 图像和 RGB 图像训练的 U-Net 模型生成的裁剪行蒙版的比较。RGB 输入图像(左)、RGB-D U-Net 预测(中)和 RGB U-Net 预测(右)
图12 使用 RGB-D 图像和 RGB 图像训练的 U-Net 模型生成的裁剪行蒙版的比较。RGB 输入图像(左)、RGB-D U-Net 预测(中)和 RGB U-Net 预测(右)
表4 每类作物行检测误差
表4 每类作物行检测误差

实验结果表明,在基于\epsilon 度量的作物行检测方面,本文方法比基线方法平均提高34.62%。实验结果表明,该方法预测作物行距的误差减少了2.86°,比基线方法提高了61.5%。对于宽度为512像素的图像,该方法的位移检测误差比基线方法减小了38.66像素,提高了76.33%。基线算法在测试数据集中11.86%的图像中未能检测到任何作物行,而本文的方法可以在测试数据集中所有图像中检测到作物行。

曲线作物行对于这两种算法都是一个具有挑战性的场景,因为这两种算法都将作物行近似为一条直线。然而,由于摄像机放置引起的透视畸变,线条的表观曲率仅在作物行的远端可见。因此,在曲线作物行图像中,作物行近端似乎是一条直线,而作物行远端似乎是一条曲线。本研究假设一个成功的作物行检测算法应该准确地预测最近的作物行,因为这种预测对于视觉伺服控制器中机器人的即时控制很重要。曲线作物行的地面真值线被标记为符合这一假设的直线。本研究的方法和基线的输出预测的中心作物行与作物行的近端直线段对齐,如图16所示。曲线作物行的平均基线\epsilon 为51.12%,本方法的平均基线\epsilon 为82.45%。尽管该方法的性能明显优于基线,但与自身的整体性能相比,其性能低于平均水平。

图13 弯曲作物行中的作物行检测。(左)基线(黄色,作物行的边界框;绿色,预测的作物行;蓝色,导航线;粉红色,预测的植物位置;棕色,分段植物)和(右)我们的方法(白色,作物行分割蒙版;红色,导航线)。
图13 弯曲作物行中的作物行检测。(左)基线(黄色,作物行的边界框;绿色,预测的作物行;蓝色,导航线;粉红色,预测的植物位置;棕色,分段植物)和(右)我们的方法(白色,作物行分割蒙版;红色,导航线)。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 研究背景与意义
  • 实验亮点与方法
  • 实验结果与总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档