时间:2024-05-17
李昱华
(陕西 西安 710000)
我国是果蔬生产大国,蔬菜和水果也是我国种植业中位于粮食之后的第二和第三大产业,是农民就业和创收的重要途径。在所有水果当中,番茄产量比重很大并且每年都持续增长。我国虽然番茄生产量大,但是在番茄采摘方面,效率较低,工业化和自动化程度较低,采摘作业基本上都是人工进行,采摘成本约占总成本的50 %~60 %。所以,如果能够在番茄采摘过程中使用采摘机器人进行采摘作业,将会节省人力采摘成本、提高劳动生产率。目前,我国番茄采摘机器人的智能化水平、实用化水平和商品化水平还不够高,导致没有大规模地投入番茄采摘行业中去。制约番茄采摘机器人智能化水平的主要是番茄的识别率和采摘率还不够精准,所以研究开发能够精准识别并自动采摘的机器人具有重要意义。
进行番茄目标识别首先要包括番茄图像采集方面的有关内容,图像采集需要用摄像头采集,摄像头具体分类为单目摄像头、双目摄像头、深度摄像头。
单目摄像头主要是指具有一个镜头的摄像头,生活中最为常见。
双目摄像头主要利用仿生学原理,两个摄像头类似于人眼的结构,双目摄像头的使用首先要进行标定,之后利用双目摄像头采集到的图像分别是一个二维图像,然后根据这两个镜头的图像和标定的参数可以在计算机中进行运算,从而得到一个三维图像,能够得知物体到镜头的距离。
深度摄像头主要包括2个部分,分别是一个单目RGB摄像头和一个红外摄像头,单目摄像头主要是采集物体的颜色,大小等RGB颜色空间信息,得到一个平面图像,然后再通过红外摄像头的发出装置和接收装置,从而根据发射与接收的时间差,再与速度相乘,得出物体到摄像头平面的距离,从而得到一个三维深度图。
图像采集部分的设计要根据自己的需要,包括环境复杂度,系统配置,对摄像头进行一个选取。
其次采集完成的图像要经过图像处理,图像处理部分需要根据需要选择不同的处理装置,常用的处理装置有:DSP芯片、FPGA芯片、单片机等。
最后处理之后的图像要存储或者输出,图像输出部分主要是运用显示屏输出或者存储到存储器当中。
机械臂的操作原理,机械臂首先是一个模仿人的手臂工作的装置,广泛用于机器人领域,对于机械臂系统来说,首先是运用视觉系统识别目标的位置,然后再传输到机械臂系统的芯片中,再操作机械臂完成工作。
机械臂的分类,按照自由度分为3个自由度和6个自由度等,按照驱动方式分为液压型驱动、气压型驱动、电气式驱动、机械式驱动,在不同的应用范围和不同的经费等条件下,要选取不同的自由度和驱动方式。
机械臂系统的组成,由机械手臂、机械手、控制系统组成。机械手臂的作用是引导手指准确地抓住目标,然后再把目标运送到所需要的位置上。运用最广泛的机械臂是刚性机械臂,包括多种关节,控制系统驱动机械臂的时候,需要准确的计算出其中每一个关节的运动方向、角度和位移。刚性机械臂的优点在于构造较为简单,技术较为成熟,但是它存在体积较大、耗能较多、成本较大等方面的问题。目前有一些柔性机械臂已被设计、研发、生产、运用在机器人领域,例如清华大学的本科生杨韵芳已经研发出来了柔性、多自由度、仿象鼻的机械臂,他是通过构造人工肌肉、弹性骨骼、人造皮肤来完成柔性机械臂的构造,如图1所示。人工肌肉采用电机驱动柔性杆的原理,通过螺纹的转动能够让人工肌肉达到收缩、伸展的目的,使得机械臂弯曲或伸直。弹性骨骼是通过3D打印出来的人造骨骼,骨骼与骨骼之间由3根柔性螺杆完成骨骼之间的连接。人造皮肤是采用波纹管的结构达到稳定骨骼和肌肉的目的。
图1 清华大学柔性机械臂
机械手安装在机械臂的前端用来抓取目标,机械手有三指结构、两指结构、多指结构等。抓取目标的时候要根据目标的数量和目标的体积来选取不同的指头数量,由于目标较为脆弱,机械手容易将目标损坏,所以现在有柔性的机械手被开发出来,例如FESTO公司生产开发出来了一款名为FinGripper手指,这款手指采用仿生学的原理,模仿了鱼的尾鳍,可以贴合脆弱的、不规则的物体,如图2所示。
图2 柔性手爪
控制系统主要对于机械臂的运动轨迹进行计算,主要包括机械臂的到达的位置、动作时间以及运动速度等。控制系统可以采用计算机控制或者用专用的控制芯片来控制。
在进行目标识别的过程中有以下几个步骤,分别为预处理、颜色模型选择、目标分割算法、目标形状拟合。接下来要对以上几个步骤进行目标分别阐述,着重阐述目标分割算法的有关内容。
因为在机械臂的目标采集过程中,外界环境会对目标识别的图像采集形成干扰,使得图像质量变差,不满足接下来的识别要求,所以要对于采集出来的图像进行预处理。预处理有很多的处理方法,应用最广泛的是滤波降噪方法,滤波降噪方法又包括平均滤波法、中值滤波法。平均滤波法是将输入的图像经过算法的处理,让每一个的滤波器当中的像素值求平均,用求的平均值代替滤波器当中的每一个像素值。中值滤波将输入的图像经过算法的处理,让每一个中值滤波器的像素值由大到小排列,并取出位于中间滤波的像素值,用中间滤波的像素值来代替滤波器当中的每一个像素值。经过滤波处理的图像,图像的噪声点的数量将会大大减少,图像的质量会大幅度提高,有利于接下来的目标识别。
在对采集到的番茄图像处理的过程当中,为了避免环境当中光照天气等其他因素的影响,需要选择合适的颜色空间模型,颜色空间模型包括RGB空间模型、HSI空间模型、Lab空间模型等。RGB颜色空间模型是计算机当中应用最广泛、最基础的颜色空间模型,R代表红色通道,G代表绿色通道,B代表蓝色通道。这3种通道的组合构成RGB空间模型,RGB空间经常用于空间的图像显示,RGB颜色空间的优点在于在采集到番茄图像之后不需要额外颜色空间的转化处理,可以节省时间。RGB颜色空间模型的缺点在于三色的相关度较大,没有办法隔绝出光照亮度方面因素的影响,所以当环境中亮度变化较为大时,不太适用。HSI空间代表色调、饱和度和亮度信息其中H代表色调,S代表饱和度,I代表亮度,当环境当中亮度变化较为大的时候,为了减少光照亮度的影响,可以把亮度空间I单独的隔离出来,只采用H和S空间进行处理,但是在应用的过程当中HSI颜色空间模型没有办法区分颜色的信息,所以这个颜色空间应用的效果较为一般。Lab空间是一种基于人眼视觉的颜色系统,L代表亮度信息,a代表从绿色到红色的过度变化,b代表从蓝色到黄色的过度变化。Lab的颜色空间模型的优点在于既有颜色的信息,又有亮度的信息,在要隔离出亮度信息时,可以去除L颜色通道,只采用a和b通道。Lab颜色空间的缺点在于从采集到的图像的RGB空间转化到Lab空间时,所需要转化的时间较长,影响系统的实时性。
在选择好颜色空间模型之后需要把息提取出来,所以要进行番茄图像的背景和目标分割,常用的分割算法有固定阈值法、直方图双峰法、颜番茄目标信色聚类法和OTSU法等。
固定阈值法是通过人为的选择一个阈值将背景和番茄目标分割开来,阈值的选择通常可以通过人为的经验来定义或者通过对目标图像的像素目标分析统计进行确定,例如阈值设定为K,大于K的为目标,小于K的为背景,于是就可以把目标和背景分离,这种方法有一个好处是较为简单,操作起来较为方便,但是这种方法也有一个最大的缺点是不同图像的固定阈值有较大的差别,在所有情况下很难将目标和背景进行精确的分割。所以此种方法适用于图像像素相似或相同的图像。
直方图双峰法是通过对目标图像绘制直方图找出波峰与波谷,通过对波谷的点将不同的波峰进行分离。此种方法适用于目标和背景颜色差别较大的时候,并且图像颜色种类最好是两种,在此种境况下直方图双峰法可以精准地将目标和背景进行分离。
颜色聚类法是通过让不同的颜色聚集为不同的集合,n种颜色聚集为n种集合,番茄目标识别是在绿色和红色的基础上,聚集为绿色和红色的两种颜色的集合,从而将红色信息和绿色信息分开,也就是能够将红色的番茄和绿色的树叶进行分开,此种方法较为直观,容易实现,但是有时会出现聚类误差较大的情况。
OTSU法即最大类间法,属于自动阈值的分割方法,是在固定阈值方法的基础上的改进,通过统计图像当中的像素分布直方图计算目标和背景之间的方差并找出最大的方差值,作为自动分割阈值。在对番茄进行识别时采用此种方法,通过计算机对目标和背景的方差进行计算,将番茄和绿色的背景分割开来,此种方法优点在于可以对不同的图像采用不同的分割阈值,不需要人为地去设定阈值,并且处理速度较快,适用的范围较广。
在通过以上的方法将图像和目标背景进行分割之后,图像的分割结果往往会存在一定程度的噪声,并且有一些误分割点,即有时候目标被分割成背景或背景被分割成目标,为了将这些误分类区域去除,可以采用一些处理方法,例如降噪处理、形态学处理等。其中形态学处理效果较好,包括腐蚀处理、膨胀处理、开处理和闭处理,通过将他们组合可以去除一些误分类点。
腐蚀处理能够将图像中的目标分类边误界点进行去除,能够达到缩小边界的效果,同时也可以用来去除一些颗粒噪声。
膨胀处理与腐蚀处理相反,能够将背景点合并到目标物体当中,能够让目标的边界向外扩张,同时可以消除目标内部的一些小孔洞。
开处理、闭处理是腐蚀处理和膨胀处理的组合,能够去除图像当中的孤立点,消除内部的孔洞。
将分割后的图像进行以上处理之后,图像当中的误分类点将会大大地减少,有利于接下来的圆形检测和识别。
霍夫变换是一种可以用来识别形状的处理方法,最早是在1962年由保罗·霍夫提出的,当时只是用来检测图像中的直线信息,之后进行不断改进,可以拓展为几乎能够检测所有的几何形状,例如圆形、椭圆形等。霍夫变换检测图像的原理是根据两点确定一条直线的原理,将直线方程转化为参数空间的方程,在参数空间当中,像素点两两组合组成的直线对应出参数空间的某一个点,统计这些点出现的次数,找出出现次数最多的那一个点,这个点对应的直线方程就是需要检测的直线方程。
在番茄的检测过程当中,利用了霍夫变换的圆形检测方程,圆在空间坐标当中的方程是:(x-a)2+(y-b)2=r2。将次方程转化为参数空间的方程,根据3个点确定一个圆的原理,对空间当中所有的点形成所有的圆进行统计,找出出现次数最多的那个圆,这个圆是我们需要检测的边缘轮廓,通过这个圆的方程可以得出番茄的圆心坐标,让机械臂到达圆心坐标的点,便可以实现番茄的采摘。
霍夫变换具有很多的优点:具有很好的稳定性,并且具有很好的容错性,如果分割后的图像还存在一些错误点或干扰点,霍夫变换也能将其检测出来。当然霍夫变换也有一些缺点,那就是霍夫变换的运算较为复杂,计算机处理需要耗费较多的时间,不利于实时性。最终识别效果如图3所示。
图3 番茄识别效果
该文研究讨论了采摘番茄机器人地抓起过程和目标识别过程,具体包括机械臂系统、颜色空间的选择、分割算法的选择、分割图像的形态学处理和霍夫变换圆检测,并分析了不同方法的优点和缺点,得出了相应的结论。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!