基于颜色先验知识和深度学习的草莓机器人手识别算法

早期的草莓采摘机械通常收获果实和茎叶,然后手动分离果实和茎叶。

1996年,日本率先使用机器视觉来识别摘水果的机器人。基于机器视觉技术的机械手采摘草莓的过程通常是先找到成熟的草莓,将其与树枝和细枝分开,而不破坏水果,然后将其放入托盘中。该过程的自动化需要以下步骤:(1)根据草莓的成熟度判断是否可以摘草莓; (2)确定采摘草莓的位置; (3)切掉草莓的茎并接住草莓; 4)将草莓放在盘子里。这四个步骤中的前两个步骤是定位步骤,它们在整个机器人的设计中起着重要作用。因此,如何设计精确的定位算法是草莓机器人设计的关键。当前大多数本地化算法都基于机器视觉技术。

由于需要机械手来区分草莓的成熟度,因此传统的基于机器视觉的定位算法可以识别草莓的颜色,但仅根据颜色判断,可能会将其他具有相似颜色的水果误认为是识别对象,例如番茄很少等,因此有一种基于纹理特征识别的支持向量机(SVM)分类算法。但是,基于支持向量机的分类算法需要预先设计特征向量。人工设计的特征向量很难准确地描述草莓的外观和质地特征,因此误识别率很高。

本文研究开发了一种实用的草莓采摘机器人,提出了一种结合颜色先验知识和深度学习的识别算法,可以准确地识别草莓。由于可以根据颜色对草莓的成熟度进行预分类,因此,首先将由机械手获得的图片转换为HSV空间,并对H通道进行分割。分割后有多个候选目标区域。为了获得最准确的定位目标,将多个候选区域输入到预训练的深度卷积网络(CNN)中进行识别,并输出识别精度最高的候选目标作为最终定位结果。训练CNN时,选择的阳性样本包括各种形式的成熟草莓。为了防止机器人选择不完整的候选目标,将大量的草莓局部图像放置在阴性样本中。实验证明,本文基于先验颜色知识的算法可以获得准确的定位结果。

1.草莓机器人的结构设计

机器人主体主要由3个机器人臂和一条带电缆的软管组成,如图1所示。两个机器人臂在同一平面上,负责机械手在水平面内的线性扩展和收缩。 ,另一机械臂在垂直平面上扫描。为了简化控制和识别,使用三机器人系统将圆柱坐标转换为直角坐标以进行精确定位。握持部分由机械手组成,该机械手握住草莓果实的果梗部分。捡起时,机械手伸出并捡起。机械手的动力由转向器控制。行走系统设计为四轮手推车,减震系统设计为提高机器人的稳定性和越野性能。机器人手的智能识别算法是研究的关键。深度学习在基于颜色先验知识的预分割的基础上,协助草莓机械手定位目标,从而可以有效,准确地识别草莓并确保机械手准确摘果。

2.基于颜色先验知识的草莓候选目标分割

在本文中,首先基于HSV颜色模型对草莓图像进行分割,以获得草莓候选区域。机械手获得的图像色彩空间为RGB,因此首先使用公式(1)将其转换为HSV空间。

草莓机器人需要根据草莓的颜色来确定草莓的成熟度。根据统计数据[2],成熟草莓的颜色h在[0,5]和[150,220]之间,因此根据等式(2)对图像进行阈值处理。获得二进制图像。

在基于h通道进行二值化之后,相邻的候选区域具有一定的粘附性,然后通过形态学运算处理[5]获得最终的候选区域结果,如图2所示。

图2(e)是通过取图2(d)的二值化区域的最大外接矩形获得的。从图2(e)可以看出,由于使用了形态学过滤,即使草莓被茎和叶部分遮挡,也可以获得完整的草莓候选区域。

3,基于深度卷积网络的目标识别与定位

在基于颜色先验知识获得目标候选区域之后,草莓机器人需要在候选目标中选择最合适的区域作为采摘对象。传统方法是计算草莓的质地特征,例如人工设计的特征向量(例如共生矩阵),然后训练支持向量机(SVM)作为分类器进行分类[3]。然而,人为设计的特征难以覆盖草莓的各种形式,因此SVM的分类效果很差。

随着深度学习技术的发展,深度卷积网络在图像分类中显示出巨大的优势[6]:无需手动定义特征;在学习过程中会自动提取图像的特征;卷积网络可以增加学习精确目标特征的能力。

机械手获得的图像中的草莓目标很小,因此在训练模型时,首先基于Cifar10数据集训练卷积网络,然后使用通过训练获得的网络参数初始化卷积网络。 。为了适应Cifar10卷积网络的参数,在分类和识别候选目标时,首先将候选目标图像缩放为32×32的标准尺寸。具体步骤如下:

(1)用Cifar10数据集预训练卷积网络;

(2)用步骤(1)中获得的网络参数初始化卷积网络。为了减少训练参数,并且由于候选目标较小,因此本文中使用的卷积网络的完整连接层比步骤(1)少一层。 ;

(3)根据草莓样本对步骤(2)中初始化的卷积网络进行微调;

(4)将基于颜色先验知识分割得到的目标候选区域输入步骤(3)得到的卷积网络中进行识别;

(5)在步骤(4)中选择识别概率最高的候选区域作为最终定位结果输出。

本文使用的训练卷积网络和识别卷积网络如图3所示。

本文抽取了600个训练样本和300个验证样本,并使用了300个阳性和阴性样本。为了避免由少量样本引起的过拟合,将Cifar10数据集用于网络训练。训练后的网络参数用于初始化图3(a)中的训练模型,然后使用本文中收集的样本进行微调训练。由于本文中使用的样本较少,因此在使用图3中的网络进行迭代训练时,每次输入10个正和负随机样本,而30次迭代仅覆盖整个数据集。

由于草莓机器人选择的草莓目标必须符合预设的草莓标准,因此本次训练中使用的草莓样本均为符合设定标准的图片,负样本包括大量不符合预设的负样本图片标准品图4中显示了一些样品,例如不完全的草莓,类似草莓的植物以及草莓的茎和叶。

4.仿真结果与分析

为了验证本文中的算法,使用Cifar10数据集进行了10,000次迭代训练[8]。因为有更多的数据,为了提高训练速度,在训练过程中选择学习率。微调。因为本文中的样本太少,所以学习率为0.0001。 Cifar10模型的训练准确性和损失曲线如图5所示,对本文中的数据进行微调后的模型准确性和损失曲线如图6所示。

从图5中可以看出,经过十万次的Cifar10训练,精度可以达到0.73,但是这种精度不能应用于草莓机器人。对网络模型进行微调的训练结果如图6所示。经过400次迭代,本文验证样本中的精度可以达到1.0,而经过400次迭代,损失函数也接近0。因此,本文所用模型的微调可以完全达到草莓机器人所需的精度。

图7显示了两个草莓机器人手在进行颜色分割后的输出结果,并将其输入到图3(b)中的卷积网络识别中。从图中可以看出,识别结果基本满足人们对成熟草莓的主观定义,即使存在多个符合人眼的候选区域,满足最主观标准的识别结果甚至可以达到1.000 0。标准。该算法还可以给出客观的得分顺序。对于图中出现的粘附目标,本文算法也可以单独给出客观识别结果。

本文的算法基于C ++++语言。平台配置为:CPU为i5处理器,内存为4 GB,GPU卡为Nvidia quadro k620,视频内存为2 GB。分辨率为1 280×960的图片需要80毫秒的颜色分割和320毫秒的候选区域识别。因此,本文算法可以完全满足草莓机器人的实时性要求。

5,结论

本文设计了一种基于颜色先验知识和深度学习的草莓机器人手识别算法。经过实验验证,该算法可以满足机器人手的精度和实时性要求。但是,由于样本量有限,无法覆盖某些特殊样本,导致偶尔出现机械手的定位故障,这可以通过将来增加样本量来解决。

芯时代

«   2020年5月   »
123
45678910
11121314151617
18192021222324
25262728293031
网站分类
控制面板
您好,欢迎到访网站!
  查看权限
友情链接

Powered By Z-BlogPHP 1.6.4 Valyria

Copyright © 有福http://youfu.org