陈珂 许林峰 柯文德
摘要:由于采摘目标背景复杂多变,采摘机器人提取目标时经常会出现轮廓不均匀以及分割不准确的现象。针对前期背景和目标物的分离处理,选取了最大类间方差法即Otsu算法提取目标物的粗轮廓,引入目标轮廓的HOG梯度方向特征训练支持向量机,进而对提取的轮廓进行细筛选,实现自动识别目标。以识别成熟苹果的试验证明,支持向量机能够准确识别单个苹果的轮廓,准确率在93%以上,并获得了较好的识别效果。
关键词:最大类间方差法;支持向量机;HOG特征;采摘识别
中图分类号: TP391.41文献标志码: A文章编号:1002-1302(2017)07-0211-05
采摘机器人视觉系统在野外成熟果实的识别过程中,容易受到光照强度变化以及复杂背景的干扰,在很大程度上降低采摘机器人作业的实时性和识别的准确率。快速、准确地识别出果实是采摘机器人视觉系统最重要而关键的部分,因而很多学者在此领域进行了大量的研究。毛亮等通过模糊聚类算法自动获取合适的初始演化曲线轮廓,然后利用水平集方法对目标区域轮廓进行精确的提取,很好地保持了目标区域的完整性[1]。熊俊涛等利用基于双边滤波的Retinex算法进行荔枝图像增强,从而凸显果实和果梗,降低不同光照对荔枝的干扰[2]。郭艾侠等提出基于EA与FCM相结合的策略,将荔枝果与结果母枝从已识别的荔枝串中提取出来,但是对于强光条件下的荔枝果分割所产生的凹陷,处理并不好[3]。孔德运等利用蚁群算法确定初始化的聚类中心,最后引入空间约束FCM对初始分割目标区域进行提取,并且避免了FCM在迭代过程中陷入局部最优解[4]。杨永提出了一种基于离散小波变换的图像模型,对于传统的中值滤波算法,其处理速度更加高效[5]。对于水果图像识别的通用快速图像分割算法,彭红星等提出一种基于改进的双次Otsu算法,能够对图像中的背景、果梗、果实进行粗分割和细分割,表现出良好的分割质量以及稳定性[6]。
对于环境光照变化以及干扰物的遮掩,传统的分割算法处理效果并不好。为改进对果实轮廓的提取,本研究选取了YCbCr色彩空间Cr分量来提取背景,能够有效地去除果梗以及叶子等复杂大背景信息。以Cr分量灰度图为基础,比较区域增长法、K-means、FCM以及Otsu法[7]对轮廓的识别率以及运行时间,试验结果表明,Otsu算法对于复杂背景下的分割具有良好的效果,同时其算法复杂度也低于传统的 K-means 以及FCM[8],具有实时性高、轮廓切割平滑的特点,因此本研究选用Otsu法进行轮廓的粗提取。
结合果实轮廓特征,本研究首次引入了一种基于方向梯度直方图(histogram of oriented gradient,HOG)特征[9]的机器学习算法。HOG特征通过计算和统计图像局部梯度方向直方图来构成特征,对于成熟苹果的梯度特征,建立正HOG特征集合与负HOG特征集的监督学习来训练SVM,对于Otsu提取的粗轮廓,进一步来筛选成熟果实的轮廓,从而实现对果实的有效识别。
1苹果轮廓提取
1.1颜色模型选择
对于普通的RGB图像来说,由于在野外复杂环境下会有向光、背光、遮挡等自然光的变化,因此选取一种能够在任何光照条件下不变的特征分量是很重要的。YCbCr颜色模型[10]是色彩空间的一种,通常会用于影片中的影像连续处理,或是数字摄影系统中,其中Y是亮度分量,Cb是蓝色色度分量,Cr是红色色度分量,其中RGB与YCbCr的相互转换公式为[11]:
YCbCr颜色模型中Cr分量的取值范围较Y分量和Cb分量集中,对于成熟苹果的颜色空间分析,可以发现其在Cr红色颜色分量的灰度化图像中较好地保留了与背景物的颜色分量差异[12],因此应用YCbCr色彩空间的Cr分量具有较好的分割背景的能力。
1.2提取苹果轮廓
Otsu法即最大类间方差法[13],其基本思想是使用1个阈值将整个数据分成2个类,如果2个类之间的方差最大,那么这个阈值就是最佳的阈值。其中方差的定义为[14]:
式中:pi表示某样本分布概率,μ=E(X)表示X期望值,xi表示某样本值。若一幅图像有L个灰度级,[1,2,…,L]表示一幅灰度图的等级,假設通过一个灰度级为k的门限将这些像素点划分为2类:C0和C1(背景和目标),则C0表示灰度级为[1,…,k]的像素点,C1表示灰度级为[k+1,…,L]的像素点。那么,每一类出现的概率以及各类的平均灰度级分别由下面的式子给出:
式中:ω(k)=∑ki=1pi表示像素点占图像比例,μ(k)=∑ki=1ipi表示像素点的平均灰度值,μT=μ(L)=∑Li=1ipi表示图像的总平均灰度值。
同时定义类内方差σ2W与类间方差σ2B、总方差β如下:
因此Otsu法目的是将目标物从背景提取出来,即使式(10)的总体方差最大,需要使灰度从取值范围[0,1,…,L-1]依次取值,使得方差β最大的灰度值即为最佳阈值。
2基于HOG特征的成熟苹果轮廓分类
在得到基于颜色空间提取的轮廓特征后,还需进一步从形状特征来提取目标的真实轮廓,针对一些树枝和叶子不同的轮廓形状,需要寻找一种能够不受光照变化和几何变化的特征。HOG特征对于轮廓形变和光照变化具有很强的不变性,尤其是对于成熟果实这种圆形的轮廓,能够很好地描述局部目标表象和形状的梯度或边缘方向密度分布,在这里采用HOG特征作为对果实形状的描述子。
2.1HOG特征提取
对于一幅灰度图来说,首先需要找出检测的目标以及扫描窗口,为后续支持向量机的学习提供特征输入。本研究建立了包含目标窗口的图片库,在这些特征库中,需要人为地先对这些图片进行裁剪,建立目标特征集,再提取HOG特征,具体过程见图1。
2.2标准化Gamma空间和颜色空间
为减少光照度对识别的影响,需要先将灰度图进行归一化处理,在图像的纹理强度中,局部表层曝光贡献比重较大,所以这种压缩处理能够有效降低图像的阴影和光照变化,Gamma压缩公式如下,其中Gamma可取1/2。
2.3计算梯度
计算图像横坐标和纵坐标的梯度强度和方向,一般常用的方法是Sobel离散微分算子[14],是离散性差分算子,用来运算图像亮度函数的灰度近似值。设图像像素点(x,y)水平方向梯度为Gx(x,y),竖直方向梯度为Gy(x,y),则有:
则像素点(x,y)处的梯度幅值和梯度方向可以表示为:
2.4构建细胞单元梯度方向直方图
本研究采用8×8像素细胞矩阵,以2×2的细胞矩阵为一个Block(块)矩阵,则Block矩阵的大小为16×16,对于一个大小为64×64像素的图像来说,可以将其划分为64个细胞矩阵。对于每个细胞矩阵(Cell),本研究对这8×8个像素建立9个bin的直方图,进而统计这64个像素的梯度信息,再将细胞矩阵的梯度方向360°分为9个方向块。因此,需要对每个像素所在的梯度方向在直方图中进行加权投影,并且映射到相应的梯度方向范围之内,在这里,需要将梯度强度作为投影权值,其中细胞矩阵的梯度示意图见图2,构建细胞单元示意图见图3。
2.5串联每个细胞组成块并统计每个块的HOG特征
由于局部光照变化以及前景和背景对比度变化,在梯度运算时,其具有一个较大的取值范围,因此需要对梯度强度进行归一化操作。本研究将每个细胞单元在空间上串联成一个Block的联通区域,并且这些Block区域互有重叠,意味着每一个单元格的特征会以不同的结果多次出现在最后的特征向量中。这样一方面可以有效减弱图像局部变化的影响,另一方面也能提高特征的利用率,降低了局部图像突变对后期支持向量机的训练影响。
2.6果实的轮廓特征识别
在对果实的识别过程中,训练集的果实轮廓特征可以分为遮掩和无遮掩2个大类,对于无遮掩的情况,其大致轮廓呈现为圆形,也就是单个果实能够在轮廓上分开来区别。而对于多个果实有遮掩的情况,其轮廓特征是复杂的,对于支持向量机[15]来说,本研究首先将单个果实的HOG特征归类为正HOG特征,而将遮掩情况归类为负HOG特征,具体训练流程见图4。
3试验分析
本研究首先选取经过去噪处理的513幅苹果图片作为训练集,包含在向光、背光、阴影等多种光照不同环境下的果实图片,确保每种光照条件下的样本数量平均分布。对于前景与背景的分离,比较了区域增长法、K-means聚类、FCM以及Otsu对图片的分割效果,其中平均识别率R可以定义为:
式中:r表示图中识别果实轮廓个数,rt表示图中真实轮廓果实个数。
3.1目标果实提取分析
由图5至图7可以看出,Otsu法在不同光照下,大部分都能准确分割苹果的轮廓,由表1可以看出,其中向光、背光、阴影3种光照条件下的平均识别率依次是94.6%、93.2%、877%,但是也存在对果实误分的现象,比如果实被叶子、果梗遮挡,光照太弱或者太强都会影响苹果的准确分割。
在图7中,FCM和K-means聚类均出现了误分情况,在试验过程中发现,K-means聚类受聚类数目的影响较大,由于它是以空间中k个点为中心进行聚类,因此需要考虑图片中背景颜色的多样性。在背景颜色大部分为绿色背景下,当聚类数目为2,可将大部分背景与目标物识别开来,即将目标和背景分为一类和二类。若背景中存在果梗、叶子、土壤等多种干扰物后,会扰乱目标物在颜色空间中的分布,导致将其归为同一类,因此在试验中,作为折中效果方案,将聚类数目设为3,能够对一些背景复杂情况做出较好分割,同时也说明了 K-means聚类对目标物的提取效果容易受到目标和背景区分度以及背景复杂度的影响,其鲁棒性并不强。
3.2基于轮廓特征的果实识别
在提取果实的HOG特征过程中,本研究分2步进行,首先将500幅图片分成2类,一类是果实轮廓不重叠图像,另一类则是果实轮廓重叠图像。对于第1类,从原特征集中选取200幅符合条件的不重叠轮廓图像,并建立对应的HOG特征库。对于支持向量机,本研究采用交叉验证法,即首先将数据集分成n个大小相等的子集,选择其中1个子集作为验证集,剩余的n-1个子集将作为训练集训练SVM,在这里,采用了4-交叉验证法,即n=4。
通过试验可以发现,当果实之间不存在遮挡的情况下,即轮廓不重叠,支持向量机对圆特征的HOG特征识别比较准确;同时针对一些果实被叶子以及树枝遮挡的情况,会因为一SVM的训练参数将直接影响分类的效果,比如核函数 K(x,xi) 的选择以及惩罚参数C的大小等,都会影响后续的分类,本研究首先进行对单个果实的轮廓识别,需要将多个遮掩果实以及非果实轮廓放入负HOG特征库当中,选用多项式核函数、径向基核函数以及Sigmoid核函数对样本集进行交叉验证试验,其中C设为5,多项式核函数的最高项次数d设为3,径向基核函数中的函数宽度σ2=3/2,Sigmoid 核函数的 γ=2,r=0.4,测试结果见表2。
由表2可以看出,采用多项式与Sigmoid核函数的运行时间基本上差不多,其中径向基花费时间较长,但其识别率最高,对于单个果实轮廓的识别,径向基的识别率高达94.3%,已基本满足采摘识别的需要,也能够保证对实时采摘的要求。
4结论
针对以往对采摘环境下的复杂背景所带来的干扰,选取YCbCr色彩空間下的Cr分量作为图片的预输入,该分量能够对光照变化以及绿叶所带来的色调变化保持不变性,同时在该颜色空间下,成熟果实的深红分量能够明显与背景区分开来。
比较传统的区域增长法、K-means聚类、FCM以及Otsu图像分割方法,在背景提取方面,Otsu法的平均识别率普遍高于其他3种算法,并且Otsu算法的运行效率也能够满足实时采摘的需要,对于一些果梗以及树枝的分离,Otsu的分割质量和稳定性也表现较好。
基于形状特征的识别,引入了果实的HOG特征,结合支持向量机对HOG特征的识别,试验结果表明,对于单个不遮挡果实轮廓的识别率已达90%以上,并且识别速度基本在025 s以内,满足快速识别的要求。
参考文献:
[1]毛亮,薛月菊,孔德运,等. 基于稀疏场水平集的荔枝图像分割算法[J]. 农业工程学报,2011,27(4):345-349.
[2]熊俊涛,邹湘军,王红军,等. 基于Retinex图像增强的不同光照条件下的成熟荔枝识别[J]. 农业工程学报,2013,29(12):170-178.
[3]郭艾侠,邹湘军,朱梦思,等. 基于探索性分析的荔枝果及结果母枝颜色特征分析与识别[J]. 农业工程报,2013,29(4):191-198.
[4]孔德运,薛月菊,毛亮,等. 基于蚁群和带空间约束FCM的荔枝图像分割算法[J]. 计算机工程与应用,2013,49(7):187-190,203.
[5]杨永. 一种离散小波域荔枝图像处理模型[J]. 江苏农业科学,2015,43(3):385-387.
[6]彭红星,邹湘军,陈丽娟,等. 基于双次Otsu算法的野外荔枝多类色彩目标快速识别[J]. 农业机械学报,2014,45(4):61-68,75.
[7]胡敏,宋银龙. 基于二维Otsu和模糊聚类的图像分割算法[J]. 计算机应用研究,2012,29(4):1563-1565.
[8]Kondo N,Yata K,Iida M,et al.Development of an end-effector for a tomato cluster harvesting robot[J]. Engineering in Agriculture:Environment and Food,2010,3(1):20-24.
[9]蔡健荣,赵杰文. 自然场景下成熟水果的计算机视觉识别[J]. 农业机械学报,2005,36(2):61-64.
[10]董建民,陈伟海,岳昊嵩,等. 基于Kinect视觉系统的西红柿自動识别与定位[J]. 中国农机化学报,2014,35(4):169-173.
[11]刘立波,赵春江,吴华瑞,等. 数学形态学在作物病害图像预处理中的应用研究[J]. 农机化研究,2013(8):180-183.
[12]Bulanon D M,Kataoka T. Fruit detection system and an end effector for robotic harvesting of Fuji apples[J]. Agricultural Engineering International:CIGR Journal,2010,12(1):203-210.
[13]姚立健,丁为民,张培培,等. 基于改进型广义Hough变换的茄子果实位姿识别方法[J]. 农业工程学报,2009,25(12):128-132.
[14]叶敏,邹湘军,蔡沛锋,等. 水果采摘机器人通用夹持机构设计[J]. 农业机械学报,2011,42(增刊1):177-180.
[15]欧阳俊,陆锋,刘兴权,等. 基于多核混合支持向量机的城市短时交通预测[J]. 中国图像图形学报,2010,15(11):1688-1695.