APP下载

名优茶采摘机械手的DSP图像与控制集成设计

2019-01-14徐张群郑相周黄伟军

江西农业大学学报 2018年6期
关键词:二值鲜叶伺服电机

徐张群,郑相周,黄伟军

(华中农业大学工学院,湖北武汉430070)

茶叶起源于中国,也是由中国人最先开发饮用,经历了几千年的发展,其在中国拥有着巨大的消费量。近年来,我国茶叶的种植面积和产量也占到世界总量的61%和42%[1]。目前高档茶叶的采摘以人工采摘为主,采摘成本占生产成本的一半,且效率过低[2-4]。使用自动化技术或机械手采摘替代人工采摘是茶叶采摘的必然趋势[5]。

仿人茶叶机械手采摘系统使用图像识别技术确定鲜叶及其采摘位置,然后驱动机械手到采摘点进行采摘。图像识别和机械手控制是茶叶自动化采摘的两个关键技术。在传统方法中[6-8],分别使用独立的基于PC的图像处理系统识别茶叶,PLC或单片机控制机械手运动,这样导致系统造价高,占用空间大,不利于推广使用。嵌入式系统可将图像识别和控制集成在一起,提供了克服传统方法缺陷的途径。

本项目组前期研究提出的双机械手分区采摘系统[9],硬件由图像采集装置、机械手运动装置和鲜叶收集装置等构成,软件包括图像识别、采摘策略和运动控制等。图像采集装置由嵌入式图像处理系统和光栅投影仪构成,通过图像处理确定鲜叶及其采摘位置坐标。控制系统根据鲜叶采摘位置和分布特点,将采摘区域分配给两个机械手,使用蚁群算法[10]规划采摘路径,控制两个机械手同时采摘;采摘后的鲜叶使用收集装置收集至容纳箱中。保证质量与提高效率是名优茶自动化采摘的基本要求,主要通过鲜叶快速准确识别和机械手高速运动来保证。

本文提出了使用基于TMS320F28335的DSP将图像识别和运动控制集成起来,采用OV7670摄像头采集图像,用图像处理方法识别鲜叶及其采摘位置,然后控制机械手运动到目标位置完成采摘控制。

1 系统总体结构与工作原理

鲜叶一芽一叶约0.1 g,一芽两叶约0.3 g。按照1 kg/h(8 kg/d,人工1.5 kg/d)采摘要求,双机械手采摘时单个机械手采摘频率不大于1.5 s/次,鲜叶识别速度不小于1.2个/s。茶叶采摘系统需高速采集和识别鲜叶图像,驱动8个电机操控机械手运动到三维采摘点,控制末端执行器完成采摘动作和真空发生器完成鲜叶收集,因此对系统有较高的要求。根据系统工作需求,选择TMS320F28335的DSP作为控制核心。系统构成如图1所示。

图1 采摘机械手系统结构Fig.1 System structure of picking mechanical hand

TMS320F28335[11]在性能上能够满足处理图像的需求,ePWM模块可控制机械手的8台电机运动,其他接口可控制末端执行器和真空发生器。选用OV7670摄像头作为图像获取装置,使用SCCB总线控制,输出320×240分辨率的RGB格式图像。为了减少因为采集图像对处理器产生的高占用,在摄像头上增加一个384 k字节的FIFO,用来缓存采集到的图像数据。采用伺服驱动器和伺服电机组合使用作为执行装置,调节伺服驱动器的双排插针,将伺服驱动器设置为位置控制模式,使用脉冲个数和方向信号对电机的转动位置进行控制。

摄像头将采集的图像缓存到FIFO中,DSP读取FIFO图像保存到DSP片上的外扩SRAM中,并对图像进行处理提取鲜叶的数量和位置,进行图像坐标系和机械手坐标系转换,驱动执行装置完成相应动作。流程如图2所示。

图2 系统运行流程图Fig.2 System running flow chart

2 硬件连接

参考一种嵌入式机器视觉装置[12],DSP、摄像头、伺服驱动器和伺服电机之间的连接如图3所示。将摄像头的引脚和DSP对应GPIO引脚相连接,其中SCL和SDA用于DSP和摄像头之间的SCCB通信,SCL为时钟线,SDA为数据线。通过SCCB设置摄像头内的寄存器,控制摄像头输出的格式、分辨率等。摄像头将图像缓存到FIFO中,DSP控制摄像头FIFO读时钟来读取FIFO中的数据,图像按字节通过摄像头D0—D7输出到DSP中进行保存。

伺服驱动器通过杜邦线和DSP相连,向PUL输入脉冲信号控制电机转动速度和角度,将DIR置为高电平控制伺服电机转动的方向,其中正负号表示输入有效电平为高电平或低电平。伺服电机的U,V,W三相通过排线导出分别和伺服驱动器相连,编码反馈器通过串口与伺服驱动器相连。

图3 硬件连接图Fig.3 The connection between hardwares

3 鲜叶识别及坐标系转换

图4 图像处理流程图 Fig.4 Image processing flow chart

系统软件部分包括图像获取和图像处理两部分,运行流程图如图4所示。通过摄像头和DSP通信后获取茶叶的RGB图像信息,先对图像进行二值化,分割出鲜叶的图像信息,然后使用开运算消除干扰和噪点,得到只包含鲜叶二值信息的图像,最后对二值图像进行二值域图像标记,提取出鲜叶的个数信息和位置信息。

3.1 获取图像

DSP控制摄像头采集图像数据分为两部分,摄像头向FIFO中缓存图像数据和DSP从FIFO中读取图像数据。缓存图像数据过程:等待OV7670帧同步信号,将FIFO写指针复位,FIFO写使能,摄像头开始将一帧图像信息写入到FIFO中,等待第二个OV7670帧信号,将FIFO写使能禁止,此时FIFO中存有一帧图像数据。读取图像数据过程:将FIFO读指针复位,给摄像头发送时钟信号,读取第一个像素高字节,再次发送时钟信号,读取第一个像素低字节,依次循环读取剩余像素。本试验设置摄像头采集的图像分辨率为320×240,总共需读取153 600次8位数据。在程序中,每读到两个8位数据,将其合并为一个16位的数据,表示一个像素点的RGB值,并存储在DSP的SRAM中。采集到的图像如图5-a所示。

3.2 图像二值处理

采集图像的格式设置为RGB565,图像中一个像素点的16位数据中,前5位表示红色分量的值,中间6位表示绿色分量,后面5位表示蓝色分量。通过RGB颜色空间的绿色分量可以将鲜叶分离出来[13],分离彩色图像三通道,红色、绿色、蓝色分量分别如图5-b、5-c、5-d所示。通过观察和对各分量图中不同部位的灰度值进行统计分析,绿色分量图中鲜叶和其他区域的灰度值差别最大,可以很显著地将老叶和鲜叶区分开来,而红色分量和蓝色分量的区分能力较弱。在实验室环境下,通过多次实验统计老叶和鲜叶绿色分量的区间范围,设置合适的阈值区间,将区间内的像素点标记为白色区域,其他像素点标记为黑色区域,得到只包含白色和黑色的二值图像,如图6-a所示,其中大块的白色部分表示的即是鲜叶。阈值区间能够保证识别出全部鲜叶而不会把过多的干扰信息识别到二值图中。图像的二值化处理在3.1节图像采集的过程中同步进行,将多个步骤里的循环合并到一起,以达到精简程序和提高DSP工作效率的目的。

图5 茶叶彩色图片和三通道分量图Fig.5 Color pictures of tea and three-channel components image

3.3 二值图开运算

从二值图中可以看到,由于硬件和光照原因,背景中有部分像素点处于二值域区间内,导致出现噪点;绿色分量值从低(老叶)向高(背景)过渡的边界处的部分像素点出现在二值区间内;并且老叶中颜色较浅部分(茶叶茎脉)和鲜叶灰度值相似,也处于二值区间中,这些都对鲜叶的识别造成了干扰。常用的滤波方式如均值滤波、高斯滤波可以除去较小面积的噪点,对面积较大的干扰区域无法去除,采取图像形态学中的腐蚀膨胀(开运算)对以上产生的干扰和噪声进行处理[14]。其计算量相对较小,适用于嵌入式芯片。

开运算可以使物体轮廓变得圆润、填充细小的缝隙、消除突出的部位,也可以消除背景区域上分布的一些小的噪声区域而并不明显地改变目标区域的位置和形状。其原理是先对目标做腐蚀运算后再做膨胀运算,其中腐蚀运算可以消除图像背景中的噪点、老叶边缘部位的干扰和老叶茎脉带来的干扰,膨胀的作用是粗化二值图中的白色区域,对腐蚀过的二值图像进行形态学上的还原。

在二值图6-a上对图像进行腐蚀,采用3×3大小的正方形模板,腐蚀后的图像如图6-b所示。经过腐蚀处理,原二值图像中老叶茎脉区域的干扰和老叶边缘区域的噪点已经被去除,留下只包含茶叶鲜叶图像的二值图像。相比原二值图,腐蚀后的鲜叶要比原二值图的鲜叶面积小一些。对腐蚀后的图像再做膨胀处理,膨胀使用的3×3正方形模板,膨胀后的图像如图6-c所示。膨胀的过程和腐蚀的过程相反,将因为腐蚀而导致鲜叶大小和形状产生的变化进行修正,最后准确地将茶叶的鲜叶部分提取出来并保留原本的形状信息和位置信息。

3.4 二值域图像标记

获取了茶叶鲜叶的图像信息,还需将鲜叶的位置和个数提取出来,才能将信息量化并操控机械手。本试验采用一种在DSP设备上容易实现和操作的基于行程二值图像连通域标记法,使用四连通判定,对膨胀后的二值图进行标记,为直观显示标记结果,将相互不连通的鲜叶区域标记为深浅不同的绿色,如图6-d所示。

图6 图像处理Fig.6 Image processing

3.5 图像坐标与机械手坐标转换

对进行二值域图像标记后的图像进行处理和计算,使用平均坐标法求出每片鲜叶在图像中的形心坐标,位置如表1所示。对图像坐标系和实际坐标系进行标定,将鲜叶相对图像坐标系中的坐标转化为其在机械手坐标系中的实际位置,然后进一步将位置信息转化为DSP操控机械手的脉冲信号以及方向信号。图像中坐标信息和实际机械手坐标信息转换原理图如图7所示。

表1 鲜叶在图像中的像素坐标值

(1)

式中L为实际物体的尺寸(m),l为物体在图像中的尺寸(pixel),k为实际尺寸和图像尺寸的比例,即单位像素在实际坐标系中所表示的长度。设置DSP的PWM模块,利用DSP数字输出对模拟电路进行控制,使其输出一系列幅值相等的脉冲。通过换算使用脉冲的个数来控制伺服电机转动的角度,最后转化为伺服电机带动采茶机械手移动的距离,引导机械手移动到二维平面中的采摘点进行采摘。计算公式如式(2)所示:

(2)

其中,n为脉冲个数,a为图像中位置距离,k为图像进行标定后实际距离同图像上单位像素长度的比例,m为编码器分辨率,d为伺服电机所连接带轮周长。

图7 坐标转换原理图Fig.7 Coordinate conversion schematic

4 识别结果分析

通过仿真器将DSP和电脑连接,使用CCS软件中的CLOCK ENABLE功能,观察统计程序运行的时钟周期。对上述图像重复处理消耗时间如表2所示,由于使用的DSP主频为150 M Hz,每秒钟能够产生150 M个时钟周期,计算得到其平均耗时为766.1 ms。

表2 上述图像处理时间

对不同图像进行处理,处理时间如表3所示,平均耗时为765.3 ms,DSP对包含不同数量鲜叶图像的处理时间相差不超过0.5%。可以看出,所设计系统对鲜叶数量不同的图像识别时间差异不大,处理时间相比使用电脑进行处理稍慢,但处理时间满足设计需求。

表3 不同图像处理时间

摄像头在不同高度采集鲜叶图像会对处理结果产生影响。将图像采集装置放置于三脚架上,通过调节三脚架旋钮改变摄像头到茶叶平面的垂直距离即图像采集的高度,在不同高度处分别采集30幅图像并进行处理,实验结果如表4所示。

表4 不同图像采集高度识别率统计

对实验中采集到的图像进行处理,通过和原图像进行对比,当图像采集高度为700 mm时能够正确识别25幅,准确率为83%,识别成功率最高。未能正确识别的原因是因为部分老叶表面比较光滑,光线照射其上会产生反射,导致采集图像中该部位绿色分量变大,在后续阈值操作的过程中被误判定为鲜叶。当图像采集高度为500 mm和900 mm时识别成功率较低,除了因为叶片亮度提升导致的误判,还由于高度不同对图像处理所造成的干扰。图像采集距离太近导致干扰面积大,开运算采用的模板相对较小,未能完全消除干扰;图像采集高度太高会导致所采集到的图像中部分鲜叶面积过小,经过开运算后被消除。合适的采摘高度对于图像识别的准确率至关重要,影响图像识别准确率的关键因素是通过高度把图像中干扰控制得小于模板,而鲜叶图像则大于模板,保证开运算能够消除干扰和噪点而不会消除鲜叶图像。

5 结论与讨论

本试验为茶叶的自动化采摘提出了一种新的解决方案,基于DSP的茶叶采摘系统能够满足茶叶鲜叶识别并控制机械手这一需求,图像处理的平均速度为766 ms/幅,在图像采集高度为700 mm时,识别准确率为83%。作为采茶机器人的先行实验,验证了使用DSP作为名优茶采摘机械手的图像处理和控制集成部分是可行的,使用性能更好的DSP芯片和摄像头,可以满足实际采摘情况中对分辨率和处理速度的更高要求。该方案将茶叶的图像处理以及机械手控制两部分功能在一片DSP上实现,相比传统使用PC进行处理和控制,其成本更低,集成度更高,空间体积更小,便于安装使用。

猜你喜欢

二值鲜叶伺服电机
专利名称:一种适应压铸环境的伺服电机
生产线中的伺服电机定位控制
面向网络边缘应用的新一代神经网络
基于二值图像数字水印算法研究
伺服电机控制技术的应用及发展趋向分析
基于稀疏表示的二值图像超分辨率重建算法
基于曲率局部二值模式的深度图像手势特征提取
伺服电机控制在电阻焊机的应用研究
不同嫩度茶鲜叶原料稀土元素含量的变化
气温对日照茶鲜叶适制性的研究