ICRA 2024:北京工业大学马楠教授联合中科原动力公司推出番茄采摘自主机器人AHPPEBot,实现32.46秒快速准确采摘

news2024/12/25 12:28:52

当前,农业生产正深受劳动力短缺困扰,这一现状对生产规模的进一步拓展构成了严重制约。为了突破这一瓶颈,实施自动化已成为提升农业生产力的关键途径,这也使得机器人采收技术备受关注。

在这里插入图片描述

现今的机器人采收系统普遍采用先进感知方法,并结合精密收获程序来完成作业。具体而言,它们借助监督学习技术,精准地将作物成熟度划分为可收获与不可收获两类。在检测完毕后,系统会利用分割模型捕捉目标作物的点云数据,进而拟合出球体、圆柱体等几何形状,以便更准确地定位作物的位置和姿态,从而制定出最佳的抓取策略。这一技术在草莓、苹果等多种农作物的采收过程中已展现出显著成效。

在这里插入图片描述

然而,当这些技术应用于桁架番茄等鲜食经济作物的自动化收获时,却遇到了挑战。桁架番茄的成熟度评估需更为精细,以确保其卓越的食用品质。但目前基于深度学习的二元分类方法在可解释性和可调整性上尚有不足,这无疑加大了机器人选择性采收的难度,同时也影响了采收产品的质量控制。此外,桁架番茄的采收方式有别于其他作物,直接抓取和拉拽的方式可能会损害作物或相关的农业设施。

更理想的采收方式是通过切割花梗进行采摘,然而,由于花梗细长且颜色与背景相近,这使得花梗的检测和切割点定位变得异常困难。

▍ICRA接受?AHPPEBot有何创新之处?

为应对采摘机器人在成功率和作物损害风险方面的问题,北京工业大学马楠教授团队与中科原动力韩威CEO团队合作,设计了一款名为AHPPEBot的新型机器人。

该机器人通过智能感知作物表型和姿态,对番茄串进行精准识别,并据此做出自主决策与收割动作。为了提升机器人的工作成功率、效率和操作安全性,研究团队在表型分析、姿态估计及采收系统三个核心技术领域进行深入研发并取得了显著进展。

在表型分析方面,研究团队创新性地提出了一种基于对象检测技术的自适应DBScan聚类算法。这一算法能够有效地将单个水果与其所属的番茄桁架进行匹配,进而方便地提取相关信息,包括番茄桁架的整体成熟度、果实数量以及每个果实的成熟度等详尽数据。

以下视频来源于智能交互团队

在姿态估计领域,研究团队采用了一种先进的基于深度学习的关键点检测方法。该方法能够准确估计番茄桁架的姿态,为机械臂的路径规划和运动提供有力支持,同时最大程度地减少与目标物的接触,确保采摘过程的柔顺与安全。

在采收系统方面,AHPPEBot机器人能够综合表型和姿态信息,实现对番茄桁架状态的全面感知,从而自主选择最佳的采收目标。利用姿态关键点,机器人能够策略性地规划手臂轨迹,再配合新颖设计的末端执行器,确保每次采摘都能精准而高效地完成。

该研究成果的相关论文“AHPPEBot: Autonomous Robot for Tomato Harvesting based on Phenotyping and Pose Estimation”已被2024 年 IEEE 国际机器人与自动化会议 (ICRA) 接受。论文作者为北京工业大学控制科学与工程专业2023级博士生李兴旭、北京工业大学韩义恒助理教授、北京中科原动力科技有限公司杨顺博士和郑思仪博士,通讯作者是北京工业大学智能感知与自主控制教育部工程研究中心副主任马楠教授。

接下来,一起来和机器人大讲堂深入探索这一研究成果!

▍四大主要部分!AHPPEBot的设计与制作

专为商业温室内自动化桁架番茄收获而打造的采摘机器人AHPPEBot,其核心构造可细分为四大模块,即“平台设计”、“表型分析”、“姿势估计”及“决策与运动规划”。

研究团队通过改进感知技术,优化设计末端执行器,并基于作物实际姿态对机械臂运动轨迹进行精确规划,尝试最大限度地降低不必要物理接触,从而提升视觉定位的准确性,进而显著提高机器人收获作业的成功率与操作安全性。

在这里插入图片描述

A.平台设计

AHPPEBot的硬件架构包括五个主要组件:两个RGB-D相机、一个机械臂、一个末端执行器、一个计算单元和一个移动底盘。考虑到温室内空间狭窄,研究团队选择了 SCARA机械臂,并在其末端增加了旋转电。这种配置可以简化机械臂的路径规划,同时保持灵活性。

在末端执行器的设计上,研究团队特别在其外部加装了多个钉状导向槽和精细的锯片。凹槽的尺寸根据番茄藤蔓和桁架花梗的实际宽度量身定制,这样可以确保只有花序梗能够准确贴合并被切割,有效防止藤蔓意外进入,从而大大提升操作过程的安全性。当花梗被切断后,番茄会被暂时收集在特制的网袋中,便于后续处理。

在这里插入图片描述

B.表型分析

果实的成熟度、数量和大小是评估收获时机和质量等级的关键指标。研究团队通过让机器人细致观察每个水果的状态,来准确判断整个桁架果实的成熟度和质量等级。

基于农艺学的专业标准,研究团队将果实成熟度细分为四个阶段:青熟、转熟、熟熟和全熟。同时,研究团队还根据进行实验的温室生产基地实际收获标准设定,当桁架上的末端果实至少达到转熟阶段,且其他果实均已达到成熟或更成熟的阶段时,认为整个桁架的果实已经成熟,适宜进行采收、储藏和运输。

为了更精确地评估果实成熟度,研究团队对YOLOv5模型进行了升级,为其预测部分增加了一个新分支,用于专门判断果实的成熟度。新设计的多任务YOLOv5模型的损失函数,基于原始YOLOv5损失函数的基础上进行改进。

在这里插入图片描述

该模型虽能精准检测果实,但无法显示果实与番茄桁架的关系。为了克服这一局限性,研究团队在通过计算果实与桁架的交集并集比(IOU)果实与桁架关联的基础上,还进一步引入了更先进的图像处理技术,如边缘检测和轮廓分析,以更精细地描绘果实和桁架的形状及位置关系。对果实和桁架进行匹配分组,获取桁架上果实的数量和成熟度信息。

面向在二维空间中桁架重叠导致果实归属误判的挑战,研究团队引入了三维点云聚类技术。通过深度相机或其他三维扫描设备获取的点云数据,机器人可获取果实和桁架在三维空间中的精确位置信息。

在点云处理中,为解决传统DBScan算法在处理大规模点云数据时存在的计算效率低下问题,研究团队提出了一种优化的自适应DBScan算法,该算法能够根据点云的密度和分布自动调整聚类的参数。这种自适应性不仅提高了聚类的准确性,还显著减少了计算时间。为快速估算果实体积和位置,研究团队用球形虚拟点云代表果实,这为后续路径规划和碰撞检测提供了重要依据。

C.姿势估计

为更好支持机械臂路径规划,研究团队深入研究并结合了番茄桁架的结构特点,精确定义了七个花梗关键点,这些点对于确保准确的切割操作至关重要。其中,SP位于番茄梗与主茎交界,是末端执行器的预期切割位置;CP在茎的最大曲率处,是末端执行器的传统切割点;FP是果实叶柄与花序梗的连接处。这三点对于成功收获番茄尤为关键,因此要求有极高的预测和定位精度。

但即使在注释同一番茄桁架的花柄关键点时,不同的注释器也可能产生不完全一致的结果,从而可能导致不同程度的差异,因此,研究团队采用对象关键点相似度(OKS)作为评估指标,以衡量通过计算多个人类注释者关键点与专家地面实况注释之间的标准差获得的花梗关键点(sigmas)预测的准确性。然而,实验发现,某些在整体评估中得分高的模型,在预测SP、CP等关键点时精度并不理想。为解决这一问题,研究团队手动微调了评估参数,特别提高了对SP和CP点的预测精度要求,以确保模型更符合实际收获的需求。

在技术实现上,研究团队选用了HRnet-w48模型进行花梗关键点的检测。同时,也试验了多种在COCO关键点检测数据集上表现优异的网络,如RTMPose、CID、UDP和DarkPose等,力求找到最适合需求的模型。此外,研究团队还探索了基于回归的关键点检测方法,如YOLOv8-pose,以期进一步提高关键点检测的准确性和效率。

在这里插入图片描述

D.决策和运动规划

在温室环境中,自动化收获面临着有限的操作空间与错综复杂的藤蔓所带来的挑战。为了确保自动化收获的顺利进行,研究团队在设计收割机器人时,坚守“不伤害周围环境”的原则,并以此为基础构建和优化了整个决策流程,力求“尽可能降低操作风险”。

通过将从表型分析阶段获取的番茄桁架的局部细节信息与姿势估计阶段得到的整体构型数据相融合,研究团队为每个番茄桁架对象生成独特的特征编码,并基于这些特征数据进一步筛选出最佳收获目标,同时剔除那些不成熟或品质不达标的目标,此外,位于极端生长位置或与藤蔓悬挂方向相反的番茄桁架也被排除在外,因为这些位置在收获时可能会导致机械臂与加热管相撞或与藤蔓发生缠绕,从而增加操作风险。这样的筛选过程不仅降低了事故发生的概率,还有助于提升采伐作业的整体流畅性和成功率。

在选择目标之后,机器人会根据目标的体积和姿态关键信息来规划末端执行器的移动路径。在路径规划中,研究团队初步设定了EP、TQP、MP、QP和FP等关键路径点,以确保末端执行器能够沿着平滑的轨迹移动。为了进一步提高收获的成功率,研究团队实施了碰撞检测,防止末端执行器的内壁和上边缘与番茄桁架发生碰撞。根据对番茄桁架生长方式的了解,果实通常朝着花序梗曲线的法线方向生长。如果检测到潜在的碰撞风险,研究人员会相应地调整末端执行器的路径点,使其沿着花柄曲线的法线方向移动,以避免碰撞。之后,末端执行器会按照预定的轨迹,逐渐包围住含有果实的番茄桁架主体,直至包含刀片的边缘抵达SP点。最终,通过旋转末端执行器,对其施加压力并切断花梗,从而顺利完成收获作业。

▍成功率最高可达为93.75%!多次实验验证AHPPEBot性能

由于缺乏公开的樱桃番茄数据集,研究团队从北京市海淀区的一个商业温室收集了图像数据。经专家精心手动注释后,研究团队成功构建了两个数据集。其中,Dataset-1 是专为番茄目标检测和成熟度识别而设计的,它涵盖了2,000张带有详细注释的图像,共计标注了112,000个目标。而 Dataset-2 则是为了花梗关键点检测而特别创建的,包含了1,000张图像和5,432个精确注释的主题。

在进行表型多任务建模时,研究团队采用了Yolov5m模型,并利用Dataset-1对其进行了深入的训练。为了确保模型的准确性和可靠性,我们特意指定了300张图像作为验证集。同时,研究团队还使用Dataset-2来训练多个花梗关键点预测的模型,并为此分配了150张图像作为验证集,以全面评估模型的性能。

A.表型测试

经过训练的多任务 YOLOv5m在验证集上展现出了卓越的性能,针对番茄桁架和水果的四个成熟阶段,当IOU阈值设为0.5时,达到了90.18%的mAP。为了评估整体成熟度和其他表型应用,研究团队采用了该模型与自适应DBscan方法相结合的方式。接下来,通过强化的自适应聚类算法,研究团队能够将水果与其对应的桁架进行系统的匹配,这有助于从单一的水果指标推断出整体的成熟度。

作为基准,传统方法利用有监督的二元分类模型直接评估桁架的成熟度。在由 300 个图像样本组成的验证数据集中,这两种方法都经过严格检查,结果如表 1 所示。

为了对比,研究团队还采用了传统的方法,即使用有监督的二元分类模型来直接评估桁架的成熟度,并在包含300张图像样本的验证数据集中,对这两种方法都进行了严格的测试。

在这里插入图片描述

实验数据表明,研究团队的方法在估算整个番茄桁架成熟度方面具有显著的准确性优势。不仅如此,该方法还与农艺标准高度契合,保持了出色的可解释性和可调节性。例如,如果成熟度标准发生变化,要求只有每个果实都达到或超过某个特定的成熟度阈值时,才能将番茄串视为成熟,那么传统的分类方法将需要对整个数据集的注释进行全面的重新评估和调整。而研究团队的方法则能更灵活地适应这种变化。

B.姿势估计测试

研究团队精心编制了一个包含150张图像的花梗关键点验证集,用以评估多款模型的姿态估计准确度。

从实验结果来看,当采用阈值为0.75的OKS指标进行衡量时,研究团队的方法展现出了卓越的性能,精确度高达0.7561。尽管算法在推理速度上稍显不足,但考虑到收割机器人的工作效率主要受其机械部件几秒动作周期的限制,这种速度上的微小差距相较于感知速度而言,几乎可以忽略不计。

在这里插入图片描述

另外,研究团队还注意到,基于热图的关键点预测模型在检测花梗关键点时,其表现通常优于直接回归关键点位置的模型。这一现象可能与花序梗在图像中所占的像素区域较小有关。以包含尺寸为138x438像素的番茄桁架图像的720P帧为例,其中花梗的像素宽度仅为8。在将这些图像输入到输入层为192x168的HRnet之前,花梗的像素区域得到了放大。相反,像YOLO这样采用全局计算且输入层为640x640的模型,会对花梗图像进行压缩,从而影响预测的精确度。

C.机器人采摘实验

在温室中,研究团队进行了两轮实验以评估机器人的收获性能。

首先,在受控场景下,研究团队使用基于位姿估计的收获路径规划来测试机器人的性能和末端执行器的熟练度。为确保准确评估,研究团队手动修剪了环境,仅留下一簇西红柿供机器人采摘。实验结果显示,自下而上包裹成功率为93.75%,剥离成功率为95.56%,整体收获成功率为89.58%。

在这里插入图片描述

而后,研究团队在未修剪的环境中测试了机器人的连续采集能力。机器人需自主完成前进、目标识别、评估收获可行性、执行收获及移动到下一个目标位置等动作。在多次测试中,研究团队选出了涉及15个番茄桁架运行的代表性实验。此次实验中,基于姿态估计的包裹方法成功率为93.33%,茎脱离成功率为92.86%,整体收获成功率为86.67%。

在这里插入图片描述

温室实验测试充分展现了AHPPEBot在连续收获作业中的非凡实力,其卓越的收获能力以及业界领先的收获成功率得到了有力印证。本研究不仅为农业机器人领域贡献了一种高效且稳定的自动化解决方案,更象征着农业自动化技术迈出了重要的一步。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1810000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux 网桥学习

前言: 本文来学习一下linux网桥概念和网桥配置 1. linux网桥概念 网桥,类似于中继器,连接局域网中两个或者多个网段。它与中继器的不同之处就在于它能够解析它收发的数据,读取目标地址信息(MAC)&#xff…

技术玩家实现在不支持的CPU上运行 Windows 10 22H2

最近,AMD 悄然确认,其新款 Ryzen AI 300 系列 APU 将不再为 Windows 10 制作芯片组驱动程序,因为它将终止对Windows 10操作系统的支持,尽管它完全有能力这样做。这意味着想要获得官方驱动程序支持的用户必须在其上运行 Windows 11…

darts 时序预测入门

darts是一个强大而易用的Python时间序列建模工具包。在github上目前拥有超过7k颗stars。 它主要支持以下任务: 时间序列预测 (包含 ARIMA, LightGBM模型, TCN, N-BEATS, TFT, DLinear, TiDE等等) 时序异常检测 (包括 分位数检测 等等) 时间序列滤波 (包括 卡尔曼滤波&#xff0…

【Rd-03E】使用CH340给Rd03_E雷达模块烧录固件

Rd03_E 指导手册 安信可新品雷达模组Rd-03搭配STM32制作简易人体感应雷达灯教程 http://t.csdnimg.cn/mqhkE 测距指导手册网址: https://docs.ai-thinker.com/_media/rd-03e%E7%B2%BE%E5%87%86%E6%B5%8B%E8%B7%9D%E7%94%A8%E6%88%B7%E6%89%8B%E5%86%8C%E4%B8%AD%…

【Android面试八股文】一图展示 Android生命周期:从Activity到Fragment,以及完整的Android Fragment生命周期

图片来源于:https://github.com/xxv/android-lifecycle Android生命周期:从Activity到Fragment 图:android-lifecycle-activity-to-fragments.png 完整的Android Fragment生命周期 图:complete_android_fragment_lifecycle.png…

cve_2022_0543-redis沙盒漏洞复现 vulfocus

1. 原理 该漏洞的存在是因为Debian/Ubuntu中的Lua库是作为动态库提供的。自动填充了一个package变量,该变量又允许访问任意 Lua 功能。 2.复现 我们可以尝试payload: eval local io_l package.loadlib("/usr/lib/x86_64-linux-gnu/liblua5.1.so…

AWT常用组件

AWT中常用组件 前言一、基本组件组件名标签(Label类)Label类的构造方法注意要点 按钮(Button)Button的构造方法注意要点 文本框(TextField)TextField类的构造方法注意要点 文本域(TextArea)TextArea 的构造方法参数scrollbars的静态常量值 复选框&#x…

文心一言 VS 讯飞星火 VS chatgpt (278)-- 算法导论20.3 5题

五、假设我们创建一个包含 u 1 k u^\frac{1}{k} uk1​ 个簇(而不是全域大小为 x ↓ {\sqrt[↓]{x}} ↓x ​ 的 x ↑ {\sqrt[↑]{x}} ↑x ​ 个簇)的 vEB 树,其每个簇的全域大小为 u 1 − 1 k u ^ {1-\frac{1}{k}} u1−k1​ ,其中 k>1 &#xff0c…

【UML用户指南】-13-对高级结构建模-包

目录 1、名称 2、元素 3、可见性 4、引入与引出 用包把建模元素安排成可作为一个组来处理的较大组块。可以控制这些元素的可见性,使一些元素在包外是可见的,而另一些元素要隐藏在包内。也可以用包表示系统体系结构的不同视图。 狗窝并不复杂&#x…

数据库管理-第200期 身边的数据库从业者(20240610)

数据库管理200期 2024-06-10 数据库管理-第200期 身边的数据库从业者(20240610)首席-薛晓刚院长-施嘉伟邦德-王丁丁强哥-徐小强会长-吴洋灿神-熊灿灿所长-严少安探长-张震总结活动预告 数据库管理-第200期 身边的数据库从业者(20240610&#…

匈牙利匹配算法

一 什么是匈牙利匹配算法 匈牙利算法是一种解决二分图最大匹配问题的算法。在二分图中,将左边的点称为X集合,将右边的点称为Y集合,我们需要在X集合和Y集合之间建立一个双向边集合,使得所有的边都不相交。如果我们能够找到一个最大…

前端工程化工具系列(十)—— Browserslist:浏览器兼容性配置工具

Browserslist 是一个能够在不同的前端工具间共享目标浏览器的配置,各工具根据该配置进行代码转译等操作。 具体的这些前端工具为:Autoprefixer、Babel、postcss-preset-env、eslint-plugin-compat、stylelint-no-unsupported-browser-features、postcss-…

文件的基础必备知识(初学者入门)

1. 为什么使用文件 2. 什么是文件 3. 二进制文件和文本文件 4. 文件的打开和关闭 1.为什么使用文件 我们写的程序数据是存储在电脑内存中,如果程序退出,内存回收,数据就丢失,等程序再次运行时,上次的数据已经消失。面…

安利一款非常不错浏览器文本翻译插件(效果很不错,值得一试)

官网地址:https://immersivetranslate.com/ “沉浸式翻译”这个词,由我们发明创造。如今,它已然成为“双语对照翻译”的代名词。自2023年上线以来,这款备受赞誉的 AI 双语对照网页翻译扩展,已帮助超过 100 万用户跨越语…

鸿蒙开发必备:《DevEco Studio 系列一:实用功能解析与常用快捷键大全》

系列文章目录 文章目录 系列文章目录前言一、下载与安装小黑板 二、IDE被忽略的实用功能-帮助(Help)1.Quick Start2. API Reference3.FAQ 三、常用快捷键一、编辑二、查找或替换三、编译与运行四、调试五、其他 前言 DevEco Studio)是基于In…

NLP——电影评论情感分析

python-tensorflow2.0 numpy 1.19.1 tensorflow 2.0.0 导入库 数据加载 数据处理 构建模型 训练 评估 预测 1.基于2层dropout神经网络 2.基于LSTM的网络 #导入需要用到的库 import os import tarfile import urllib. request import tensorflow as tf import numpy a…

W25Q64简介

W25Q64介绍 本节使用的是:W25Q64: 64Mbit / 8MByte。存储器分为易失性存储器和非易失性存储器,易失性存储器一般是SRAM,DRAM。非易失性存储器一般是E2PROM,Flash等。非易失性存储器,掉电不丢失。 字库存储…

单片机嵌入式计算器(带程序EXE)

单片机嵌入式计算器 主要功能:完成PWM占空比计算,T溢出时间(延时); [!NOTE] 两个程序EXE; [!CAUTION] 百度网盘链接:链接:https://pan.baidu.com/s/1VJ0G7W5AEQw8_MiagM7g8A?pwdg8…

java线程生命周期介绍

Java线程的生命周期包含以下几个状态: 1.新建(New):线程对象被创建,但是还没有调用start()方法。 1.运行(Runnable):线程正在运行或者是就绪状态,等待CPU时间片。 1.阻塞(Blocked):线程暂时停止执行&…

Nginx 精解:正则表达式、location 匹配与 rewrite 重写

一、常见的 Nginx 正则表达式 在 Nginx 配置中,正则表达式用于匹配和重写 URL 请求。以下是一些常见的 Nginx 正则表达式示例: 当涉及正则表达式时,理解各个特殊字符的含义是非常重要的。以下是每个特殊字符的例子: ^&#xff1…