精准农业旨在通过有针对性的干预,在减少资源浪费的同时提高作物产量。稻田种植面临的一项关键挑战是杂草管理:传统的全面喷洒除草剂会将药剂浪费在没有杂草的区域,还可能损伤作物。如果自主拖拉机能够沿作物行驶、实时检测杂草,并仅在确认存在杂草的位置进行喷洒,就能显著减少除草剂用量和人工成本。
系统概述
本文介绍了 AgriNav——由 Florida Gulf Coast University 设计并实现的一套自主稻田拖拉机系统,旨在通过单一集成系统应对上述三项挑战。系统架构由三个通过机器人操作系统(Robot Operating System,ROS)通信的协作模块组成。完整的数据流从原始传感器输入开始,经过感知与定位处理。
三个模块分别为:
- 基于视觉的目标检测子系统,包含两种并行实现:忠实复现的 WeedDet,以及可在 CPU 上训练的轻量化版本;此外还配备了采用反向逻辑、用于保护水稻类别的判别模块。
- 基于激光雷达的作物行检测模块,同时提供导航参考和供相机处理流程使用的感兴趣区域掩码。
- 融合定位栈:一套融合 GNSS、IMU 与轮速里程计的六状态 EKF,以及一套面向树冠下作业环境的独立 LiDAR-IMU EKF。
系统层面的关键集成点是激光雷达—相机桥接模块。同一台用于导航的二维激光雷达,还会向相机处理流程发布投影后的作物行边界掩码,相机据此限制推理区域。该单一数据通道预计可将检测计算量降低 30% 至 50%,排除行间区域之外的误检,并提供喷洒执行器所需的世界坐标系地平面投影。由于桥接模块利用的是平台上原本就用于导航的传感器,因此集成成本仅涉及软件,无需新增硬件。
技术贡献
本文的技术贡献包括:
采用硬编码水稻否决机制的反向逻辑判别
该判别模块通过无法被任何下游模块覆盖的置信度门控保护水稻类别,从而应对误判成本不对称的问题。
基于激光雷达与 EKF 跟踪的作物行检测
系统采用 K-means 聚类与 RANSAC 流程提取左右边界,并分别使用独立的二状态 EKF 跟踪每一行,即使激光雷达出现短暂遮挡,也能以仅预测模式维持跟踪。
具备三级 GNSS 中断桥接机制的六状态 CVTR EKF
恒速度—转弯率定位滤波器融合 GNSS、IMU 与轮速里程计,并显式建模 AVAILABLE、DEGRADED 和 OUTAGE 三种状态。在航位推算期间,过程噪声会线性增大。通过一段 20 秒的模拟 GNSS 拒止期对该方法进行了验证:相对于模拟器真值,位置漂移被控制在 2.46 米以内。
四机制激光雷达—相机融合桥
系统层面的主要贡献包括感兴趣区域掩码、检测框的世界坐标投影、地平面过滤以及双向置信度融合四项机制。四者均利用已有的导航传感器,无需额外硬件。
端到端 ROS 集成
系统定义了 ROS 话题接口契约,规定了按类别设置的不对称阈值,以及供下游时间对齐融合使用的带时间戳消息。
相关工作
AgriNav 系统建立在一系列奠基性研究之上,这些研究共同勾勒出其所处的技术版图。本节概述 AgriNav 设计所采用、修改或扩展的方法。
基于激光雷达的作物行检测
Liu 等人研究了农业田地中的树冠上方自主导航问题。在光照、阴影和植被密度变化的情况下,传统的基于视觉的行跟踪方法容易失效。他们提出了一套处理流程:首先利用 K-means 聚类,将激光雷达点云分割为左右作物行簇;随后使用 RANSAC 为每个点簇拟合直线,提取作物行几何信息;最后通过扩展卡尔曼滤波器持续跟踪每一行。
该系统在 Gazebo 模拟田地中的全尺寸 Amiga 机器人上进行了验证,测试作物包括处于多个生长阶段的玉米和大豆,并涵盖了存在杂草与作物行断裂等具有挑战性的场景。

面向树冠下行跟踪的多传感器融合
Higuti 等人研究了紧凑型农业机器人在树冠下运行时自主行跟踪的可靠性。他们证明,通过扩展卡尔曼滤波器融合 IMU 数据与激光雷达测量结果,可以显著提升系统在传感器噪声、局部遮挡和短距离作物行间隙下的导航连续性。
在不存在重大间隙的田地中,引入基于 EKF 的传感器融合后,人工干预之间的平均距离从未使用 EKF 时的 51.6 米提高到使用 EKF 时的 400 米,提升约 7.7 倍。
LIO-EKF:高频激光雷达—惯性里程计
Wu 等人探讨了经典 EKF 方法在激光雷达—惯性里程计领域是否仍能与现代因子图和基于优化的方法竞争。他们提出 LIO-EKF:一种基于点到点配准与经典 EKF 的轻量化系统。该系统在保持与更复杂方法相当精度的同时,实现了接近 IMU 100 Hz 频率的位姿估计。
这一结果表明,在需要计算简洁性和可预测延迟的实时机器人应用中,经典 EKF 形式仍然是强有力的选择。
在 AgriNav 中的应用
AgriNav 并未直接实现 LIO-EKF,但该成果支持了系统整体架构的选择:在定位栈中全面采用经典 EKF,而不是滑动窗口优化器或因子图。定位栈将这一原则应用于 GNSS-IMU-里程计融合,旨在以更简单的调参方式和可预测的实时性能,应对树冠下稻田环境中的定位可靠性问题。
基础检测组件
其他几项研究则被直接用作构建模块,未作改动。
Smooth L1 损失可为检测框回归提供抗异常值能力。广义 IoU 损失即使在预测框与真实框没有重叠时也能提供非零梯度,因此可在训练早期与 Smooth L1 互补。
DeepWeeds 数据集及其基准研究确立了同类架构通常能够达到的性能范围,并为更高训练分辨率下的预期性能上限提供了依据。
WeedDet:改进的实时稻田杂草检测 RetinaNet
AgriNav 所采用的检测逻辑有意反转了典型的杂草检测流程。系统不枚举各种杂草,而是以高置信度识别唯一的水稻类别,并将高置信度水稻区域之外的所有区域视为杂草。
这一设计基于风险不对称原则:漏检一株水稻可能导致除草剂损伤作物,其后果在性质上远比漏检一株杂草严重。该领域的两篇奠基性论文都没有在损失函数、评估指标或执行策略中处理这种不对称性。
WeedDet 架构
检测模型是 WeedDet 的自定义 PyTorch 实现。它以 RetinaNet 为基础,是一种改进的单阶段目标检测器,并在此处适配为单类别水稻检测任务。该架构对基础版 RetinaNet 做出了三项结构性修改。
高效特征金字塔网络
颈部网络采用三级特征金字塔。横向 1×1 卷积将 C3、C4 和 C5 降至 256 个通道;自顶向下的上采样与加法融合生成 P3、P4 和 P5。
系统有意省略标准 RetinaNet 中的 P6 和 P7 层。对于植物尺度目标而言,多倍频极端尺度处理并非必要,因此省略这两层可减少约 771 万个参数,同时不会带来可测量的精度损失。
数据处理流程
系统从 Roboflow 获取了一个单一的水稻检测数据集,包含约 4,041 张图像,并对每株植物进行了紧密的边界框标注。此外,通过水平翻转和噪声注入生成了一个包含 1,347 张增强图像的辅助数据集。两个数据集均以 Pascal VOC XML 格式导出。
训练配置与结果
首先训练基线模型 torchvision retinanet_resnet50_fpn,以检验数据处理流程是否正常。超参数如下:
- 优化器:SGD
- 学习率:0.001
- 动量:0.9
- 权重衰减:正则化系数;文中未提供其数值
- 批量大小:2
- 调度器:StepLR,在第 9 个 epoch 后将乘法因子设为 0.1
- 梯度裁剪:最大范数为 1.0
- 总训练时长:12 个 epoch
基线模型最终收敛到约 0.63 的平均损失。
自定义 WeedDet 模型训练了 94 个 epoch。由于运行时长限制,训练分布在多个 Google Colab 会话中完成。配置如下:
- 优化器:SGD
- 初始学习率:0.01
- 动量:0.9
- 权重衰减:正则化系数;文中未提供其数值
- 批量大小:2
- 梯度裁剪:最大范数为 1.0
- 学习率策略:带热重启的余弦调度
训练数据采用了水平翻转、随机平移、随机亮度变化、高斯模糊和 CLAHE 增强。当验证损失开始偏离训练损失时,训练停止,这表明过拟合开始出现。观察到的最佳损失约为 1.2346。
在本文研究范围内未完成定量 mAP 评估,这一点被列为局限性。验证工作采用定性方式进行。
在一张植株重叠的密集地面视角稻田图像上,训练后的模型检测出约 60 个水稻实例,置信度范围为 0.32 至 0.88。在一张稀疏的空中视角图像中,浅色碎石背景上的幼稻彼此分离,模型检测出约 22 个目标,置信度范围为 0.33 至 0.77。在一张洪水过后的图像中,由于水面与泥土之间具有较强对比,检测置信度范围为 0.40 至 0.95。
判别模块:通过反向逻辑保护水稻
判别模块位于检测模型与喷洒执行器之间,负责将检测结果列表转换为每个喷嘴的除草剂执行决策。任何未被高置信度水稻边界框覆盖的图像区域,都会被归类为候选杂草区域。
在任何喷洒阀开启之前,每个执行候选都必须通过同时满足以下两个条件的置信度门控:
- 水稻检测的 IoU 感知分类分数必须超过 0.5。
- 预测类别不得为水稻。
第二项条件就是硬编码的水稻否决机制。只要预测类别为水稻,无论其置信度高低,系统都会无条件返回 spray = False。该否决机制无法被任何下游模块覆盖。
系统提供可选的 Excess Green 减 Excess Red(ExGR)预处理变换。该变换从归一化的超额绿色强度中减去归一化的超额红色强度,以增强绿色植物材料与土壤或水体背景之间的对比度。
ExGR 被视为可调节的预处理选项,而非固定组件,因为其收益取决于环境光照。

推理后处理
推理过程中,保留置信度超过按类别设定阈值的锚框,并使用 IoU 阈值为 0.45 的非极大值抑制去除重复框。原文提及建议采用不对称阈值,但未提供具体数值。
这些不对称阈值体现了任务的成本不对称性。漏检杂草仍有补救可能;漏检水稻则意味着除草剂可能被喷洒到作物上。由于下游判别模块还会进行第二阶段过滤,检测模块因此有意针对高召回率进行调优。
检测性能
轻量化模型在 CPU 上训练了 12 个 epoch,训练分辨率为原文未提供训练分辨率。在余弦退火策略下,损失平稳收敛。文中提到了测试集上的检测结果表,但所提供的文本未包含表格数据。
AP@IoU0.5 指标要求预测框与真实框至少有 50% 的重叠。由于原文未提供图像分辨率,小型杂草实例只占据几个像素,即使模型识别出了正确区域,也难以实现精确定位,从而导致 IoU 低于 0.5。这是训练分辨率造成的现象,并非架构本身的限制。
模型的分类能力已通过置信度分布得到证实。杂草区域的得分最高可达 0.995,定性检查也确认模型能够正确定位杂草簇。
对于整个系统而言,这正是预期行为:检测模块生成高召回率候选区域,下游判别模块在执行任何喷洒之前过滤误检。在原文未提供图像分辨率下进行完整 GPU 训练,预计可将杂草 AP 提高到 30% 以上、mAP 提高到 60% 以上,这与相关架构在文献中报告的结果一致。
基于激光雷达的作物行检测
基于激光雷达的作物行检测模块旨在支持那些仅依赖视觉的方法容易不稳定的环境中的行导航。光照变化、阴影和不均匀植被都会削弱基于相机的方法,而激光雷达能够提供基本不受这些条件影响的几何结构,并可通过可解释的过滤与直线拟合步骤进行处理。
处理顺序为激光雷达扫描、距离与几何过滤、作物行边界提取以及中心线估计。
每条传入的 LaserScan 消息都会被转换为机器人坐标系中的笛卡尔坐标。点云按照左右两侧分离,并依据预期行距进行过滤。在每一侧内部应用 K-means 聚类,将属于同一作物行的点分组。随后通过 RANSAC 直线拟合提取作物行参数,迭代 100 次,内点阈值为 0.05 米。
该流程的中间输出——过滤后的点簇、拟合边界线和中心线——都易于解释和可视化。与端到端黑盒方法相比,这是一个实用优势,因为系统可以在每个阶段分别进行调试与验证。
输出
激光雷达模块的主要输出是作物行中心线,该中心线通过左右边界的角平分线计算得到。
这些输出具有双重用途。中心线直接作为行驶跟踪控制器的期望行驶路径;边界线还用于为基于相机的杂草检测模块定义感兴趣区域。

观测性能
激光雷达作物行检测结果展现出若干实际优势:
- 能够可靠估计作物行几何结构
- 中间输出具有良好的可解释性
- 可直接支持基于中心线的导航
- 能够为下游感知模块定义感兴趣区域
在模拟运行期间,检测置信度始终高于 0.9,包括 GNSS 中断期间,此时系统仍
常见问题
AgriNav 系统旨在实现什么功能? AgriNav 是一款自主稻田拖拉机,旨在沿作物行导航、检测杂草,并支持定点除草剂喷洒。
为什么检测系统要保护水稻类别? 漏检水稻可能导致除草剂损伤作物,因此系统采用硬编码的水稻否决机制,只要预测到水稻就禁止喷洒。
激光雷达如何支持基于相机的杂草检测? 激光雷达检测作物行边界,并发布投影后的感兴趣区域掩码,以限制相机推理范围,同时支持世界坐标投影。
GNSS 信号丢失期间,定位系统如何进行评估? 在一段 20 秒的模拟 GNSS 拒止期内,相对于模拟器真值的位置漂移被控制在 2.46 米以内。
