基于计算机视觉的成熟番茄识别研究

2016-03-23 04:25胡晓辉李兰凤
农机化研究 2016年8期
关键词:计算机视觉

方 政,胡晓辉,陈 永,李兰凤

(兰州交通大学 电子与信息工程学院,兰州 730070)



基于计算机视觉的成熟番茄识别研究

方政,胡晓辉,陈永,李兰凤

(兰州交通大学 电子与信息工程学院,兰州730070)

摘要:以番茄图像为研究对象,提出一种成熟番茄识别方法。首先,以HSI模型中的色调分量为基础进行图像分割,提取出成熟番茄目标图像;然后,再采用最大方差自动取阈值法进行分割处理,对得到的目标图像进行轮廓提取;最后,对轮廓曲线采用Hough变换的方法进行识别,以同一个轮廓圆识别的多个极值点的均值作为最终识别结果,在Hough变换之前采用最小外接矩形法进行有效区域标记,提高了Hough变换的效率。通过多幅番茄果实图像的仿真测试表明:本算法对果实遮掩度为0、小于50%、大于50%这3种情况的识别率分别为78.7%、68.1%、41.9%,平均识别率达到70.6%。本算法对于成熟番茄可以较好识别,尤其对于存在重叠情况的番茄,识别准确率较高。

关键词:成熟番茄识别;轮廓提取;计算机视觉;有效区域;重叠

0引言

计算机视觉技术已经在农业领域中得到了较为广泛的研究,涉及到诸多方面。李聪等[1]利用计算机视觉技术,研究了苹果图像自动分级优化问题,利用计算机视觉方法提高苹果自动分级效率,加快分级速度。孙月强[2]对于蔬菜的病斑识别算法进行研究,提出了一种小波变换的病斑识别方法。孟大伟[3]利用计算机视觉技术,通过水果的颜色特征和纹理特征,实现了水果图像自动识别。在番茄识别领域,张瑞合[4]等利用图像分割对番茄进行标定,继而采用面积配准,采用体视成像进行三维定位。蒋焕煜等[5]利用形心匹配和区域匹配的方法,获取番茄位置信息实现识别。赵杰文等[6]利用HIS颜色特征,分割出成熟番茄区域,实现番茄的识别。纪平等[7]利用Canny算子对番茄进行轮廓提取,再用圆对轮廓进行拟合,实现了番茄的识别。

以上方法对于番茄的识别基本上都是基于颜色进行背景分离,然后采用区域匹配或计算中心矩进行位置信息获取;而成熟番茄果形[8]主要呈现为椭球形,且多出现重叠情况,现有算法对于成熟番茄的识别效果不好,误差率较高,无法满足农业生产的实际需求。

为此,以成熟番茄果实果形特点为研究对象,利用计算机视觉技术,对成熟番茄识别进行了研究。本文通过色调分离出枝叶等背景和成熟番茄,再利用Hough变换识别果实轮廓,采用了外接矩形对有效区域进行标记,提高Hough变换的效率;通过求取多个识别极大值的均值,剔除突变点,提高识别准确度,实现了对成熟番茄的识别。

1成熟番茄识别

本文算法通过图像分割、最小外接矩标记有效区域及Hough变换等步骤,实现对于成熟番茄果实的识别,算法流程如图1所示。

图1 算法流程图

1.1 图像分割

成熟番茄果实一般为红色,而枝叶等背景通常为绿色,差异性较为明显[9]。因此,本文通过颜色将果实和枝叶分离开来,采用HSI[10-12]色彩模型,为减少光照等不利因素的影响,通过提取色调分量H分离出果实。

将输入图像由RGB格式转换为HIS模型。其中,H、S、I这3个分量的计算公式为

(1)

(2)

(3)

式(3)中,有

提取H分量的图像如图2所示。

图2 提取H分量的图像

提取H分量之后,根据番茄图像的特点,即番茄果实图像的灰度分布和枝叶图像的灰度分布分别对应着灰度直方图中的两个波峰,因此只需选取适合的阈值,就能将成熟番茄图像与枝叶这样的背景图像相分离。本文采用文献[13]中的最大方差自动取阈值法,该方法是利用方差的特性来进行阈值选择的。阈值T的计算方法为

T=max[σΔ2(t)]

=max{θ1(t)θ2(t)[μ1(t)-μ2(t)]2}

(4)

其中,σΔ2(t)为两个被t分割开的区域的方差;θ1(t)和θ2(t)分别为分割后的区域1和区域2的面积与整个图像的面积的比值;μ1(t)和μ2(t)分别为区域1和区域2的平均灰度值。当σΔ2(t)的值最大时,两个区域的分离效果最好。

分割的结果如图3所示。对图像分割结果进行轮廓提取,如图4所示。获取轮廓图像之后,即可采用Hough变换进行识别。由于Hough变换的特点,计算量较大,因此在识别前,采用外接矩形标记[14]的方法进行有效区域的标记,以缩小计算的范围、简化计算。

图3 灰度直方图与图像分割结果

图4 提取的边缘轮廓曲线

1.2 外接矩形标记

由于Hough变换的参数空间巨大,运算耗费时间长,如果对整幅图像直接进行变换,必然耗费巨大的计算资源,而很多非目标区域的无效计算都是可以避免的。为简化计算、提高运算效率,首先对图像空间进行区域标记,使得所有番茄轮廓包含在有效区域中;然后,再对有效区域采用Hough变换进行番茄识别的操作。

对整幅图像进行遍历,以番茄图像为目标区域,划定有效的图像区域,将原先整幅图像分成多个有效图像区域,使用Hough变换时,仅仅对这些有效区域进行处理。

最小外接矩形法标记的有效区域如图5所示。

图5 最小外接矩形法标记有效区域

获取有效区域后,便可采用Hough变换的方法进行目标识别。

1.3 Hough变换

番茄的果实比较规则,一般为椭球体或近似球状,在图像上多反映为椭圆形或者近似圆形,因此可以采用Hough变换的方法进行检测识别。

1.3.1Hough变换的识别原理

Hough变换是由Paul Hough[15]提出的专利,现在已经用于多种形状的检测,多数是圆或者是椭圆。Hough变换几乎不受待识别形状大小和在图像中所处位置的影响,因而在计算机图像处理中获得了广泛的应用。

利用Hough变换检测圆的主要思想和步骤是:

1)所有的经过点(x1,y1)的圆都可以表示为(a1(i),b1(i),r1(i)),r1∈(0,+∞),i∈(0,+∞);每个不同的i的取值都对应于一个不同的圆,(a1(i),b1(i),r1(i))表示为i个过点(x1,y1)的圆。

2)同理,过点(x2,y2)的圆可以表示为(a1(i),b1(i),r1(i)),r2∈(0,+∞,i∈(0,+∞);过点(xn,yn)的圆可以表示为(an(i),bn(i),rn(i)),rn∈(0,+∞),i∈(0,+∞)。

3)如果这些点在同一个圆上,就存在一个值(a0,b0,r0),使得a0=a1=a2=…=an,b0=b1=b2=…=bn,r0=r1=r2=…=rn。也就是说,这些点同时在圆(a0,b0,r0)上。

过点(x1,y1)的圆(a1(i),b1(i),r1(i)),当r1(i)已经确定时,(a1(i),b1(i))的轨迹是一个以(x1,y1,r1(i))为中心,半径为r1(i)的圆。所有的圆(a1(i),b1(i),r1(i))就组成了一个以(x1,y1,0)为顶点、锥角为90°的圆锥面。同理,过点(x2,y2)的所有圆(a2(i),b2(i),r2(i))和过点(x3,y3)的所有圆(a3(i),b3(i),r3(i))都分别组成了一个以(x2,y2,0)和(x3,y3,0)为顶点,锥角为90°的圆锥面。这3个锥面的交点A (xa,ya,za)在平面XOY上的投影A'(xa,ya,0)就是同时过这3个点的圆的圆心,如图6所示。

图6 3个点的Hough变换

由于Hough变换的特点(见图7),是选择多个不同点作为检测点,求取过选择的多个点的共同圆锥对应的平面上的圆的方程,能够在检测点较少的情况下,实现对圆的复现,因此很适合利用圆的局部信息,复现整个圆的情况。这个特点非常适合识别重叠番茄的情况,因此该方法对于重叠番茄的识别,效果也比较好。

图7 3个点的Hough变换俯视图

1.3.2Hough变换识别番茄轮廓

将番茄的轮廓方程设为A=(a0,b0,r0),估计出该方程的参数向量空间,并且将其离散化,使其成为一个三维数组A(a)。在对轮廓方程进行Hough变换时,对于轮廓上的任意一个点(xn,yn),求取三维数组A(a)的极大值点p。

由于绝大多数番茄的轮廓是椭圆,而非真正的圆,因此对于每个受检测的番茄轮廓来说,都有多个极大值点p1,p2,...,pn,属于同一个番茄轮廓的极大值点相距较近,不同番茄的极大值点相距较远。通过设立一个距离阈值Tp,可以将不同番茄轮廓的极大值点分离开来,对于同属于同一个番茄轮廓的极大值点,求取它们平均值p',以p'作为该轮廓的极大值点,确定其方程,完成对一个成熟番茄的识别。

通过以上图像分割、图像有效区域标记、Hough变换识别图像,即实现了对于成熟番茄的识别。

2仿真结果与分析

2.1 仿真测试

仿真测试图像拍摄于兰州交通大学农业物联网实验室温室内,图像分辨率为800×600,JPG格式,使用的计算机具体参数为:Inter Core i3处理器,主频为1.70GHz,内存4G,采用的实验仿真软件为MatLab7.0。

以本文算法、区域匹配算法[5]和边缘拟合算法[7]对测试图像进行对比仿真测试。

仿真测试的图像较多,限于篇幅,此处仅列出一幅具有代表性的图像处理结果。本文算法处理的图像如图8所示。

图8 遮掩度<50%的情况

图8中,存在遮掩度为0、遮掩度<50%、遮掩度>50%这3种情况的番茄。由图8可以看出:Hough变换后得到的圆能够较为准确地表示出番茄的位置和轮廓。

通过100幅图像的测试,其共含有番茄437个:包括未成熟番茄果实35个,完全未被遮掩的成熟番茄果实249个,被遮掩部分少于1/2的成熟番茄果实91个,被遮掩部分超过1/2的成熟番茄果实62个。

本文算法成功识别出番茄284个:完全未被遮掩的成熟番茄果实196个,被遮掩部分少于1/2的成熟番茄果实62个,被遮掩部分超过1/2的成熟番茄果实26个。本文算法识别结果如表1所示。

表1 本文算法识别情况表

3种算法识别情况表2所示。

表2 3种算法识别情况对比        %

2.2 结果分析

从表1可以看出:本文算法识别中,3种情况下的番茄平均识别率为70.6%;对于遮掩度为0的番茄识别率达到了78.7%,识别情况较为理想;对于遮掩度小于50%的番茄识别率达到了68.1%;对于遮掩度大于50%的番茄识别率为41.9%。

区域匹配算法、边缘拟合算法及本文算法的平均识别率分别为65.7%,65.9%,70.6%,对于重叠遮挡情况下的平均识别率分别为39.9%,42.4%,57.5%。由以上数据可以看出:本文算法的识别效果较好,尤其在存在重叠遮挡情况下,识别率较其他两种方法,提高较多。

本文算法在完全未被遮挡的番茄识别中,识别率略低于其他两种方法。这是由于其他两种方法是基于区域面积匹配和边缘拟合,更符合单个番茄的识别特点,而本文算法也取得了较好的效果。

综合看来,本文算法可以有效滤除未成熟番茄,识别成熟番茄,平均识别率达到了70.6%;尤其对于存在重叠情况的番茄,识别准确率较高,误识别较少。

3结论

本文提出了一种成熟番茄识别方法。首先利用了HSI模型中色调分量进行图像变换,采用最大方差自动取阈值法进行图像分割。为提高计算效率,提取果实边缘轮廓后采用最小外接矩形法进行有效区域标记,最后采用Hough变换对轮廓进行识别。该识别方法能够有效从图像中识别出成熟番茄,自动滤除掉未成熟番茄和枝叶等背景,识别效果比较好,尤其对于重叠遮挡情况下番茄的识别效果有了较大改善,更能满足实际农业生产的需要。

本文方法适合同样是球形果形及轮廓近似圆形的瓜果识别,如柑橘、橙、荔枝等,因此可以在更多的圆形水果识别方面进行更深一步的研究。

参考文献:

[1]李聪,高海燕,袁超.基于计算机视觉的苹果自动分级方法研究[J].计算机仿真,2012(9):293-296.

[2]孙月强.非均匀光照下蔬菜病斑识别算法研究[J].计算机仿真,2012(6):257-260.

[3]孟大伟.基于纹理信息的水果图像识别方法仿真研究[J].计算机仿真,2011(12):293-296.

[4]张瑞合,姬长英,沈明霞,等.计算机视觉技术在番茄收获中的应用[J].农业机械学报,2001,32(5):50-58.

[5]蒋焕煜,彭永石,申 川,等.基于双目立体视觉技术的成熟番茄识别与定位[J].农业工程学报,2008,24(8):279-283.

[6]赵杰文,刘木华,杨国彬.基于HIS颜色特征的田间成熟番茄识别技术[J].农业机械学报,2004,35(5):122-135.

[7]纪平,王 俊,陈鹤碧,等.基于图像的番茄识别与几何尺寸测量[J].安徽农业科学,2012, 40(33):16426-16428.

[8]董华芳,许延波.番茄品种农艺性状的聚类分析[J].北方园艺,2010(18):12-15.

[9]汪小钦,王苗苗,王绍强,等.基于可见光波段无人机遥感的植被信息提取[J].农业工程学报,2015,31(5):152-159.

[10]Schertz C E, Brown G K. Basic considerations in mechanizing citrus harvest [J].Transactions of the ASAE, 1968,11(2):343-346.

[11]Parrish E, Goksel A K. Pictorial pattern recognition applied tofruit harvesting [J].Transactions of the ASAE, 1977,20(5):822-827.

[12]成喜春,全燕鸣.基于 HSI模型的彩色图像背景减法[J].计算机应用,2009(29):231-235.

[13]方如明,蔡健荣.计算机图像处理技术及其在农业工程中应用[M].北京:清华大学出版社,1999.

[14]罗雪宁,彭云发,代希君,等.基于MATLAB的红枣图像处理研究[J].农机化研究,2015,37(3):183-186.

[15]Hough P V C. Machine analysis of bubble chamber pictures[C].Proceedings of International Conference on High Energy Accelerators and Instrumentation:Genvea:CERN,1959: 554-556.

Research on Recogniztion of Mature Tomato Based on Computer Vision

Fang Zheng, Hu Xiaohui, Chen Yong, Li Lanfeng

(School of Electronic and Information Engineering,Lanzhou Jiaotong University, Lanzhou 730070 , China)

Abstract:Takes the image of tomato as the research object and proposes a new kind method of recognizing mature tomato. First, takes the Hue of the HSI model as basis to make image segmentation to extract the image of mature tomato and use the maximum variance automatic threshold to make segmentation. The paper use the Hough transformation to recognize the contour after extract it from the target image and set the mean value of several maximum points of one contour as the value of recognition. Before the Hough transformation it use the minimum bounding rectangle(MBR) to marked the effective region, and this makes the Hough transformation effectively. A plenty of images of tomato was take into simulation test, the algorithm in this paper has the result as follow: 78.7% with the fruit cover rate 0%, 68.1% with the fruit cover rate less than 50% and 41.9%with the fruit cover rate more than 50%.The average recognition rate reached 70.6%, The algorithm proposed in this paper can recognize the mature tomato accuracy, especially for the covered tomatoes, the recognition is accuracy.

Key words:the recognition of mature tomato; extract contour; computer vision; effective area; covered

中图分类号:S126;TP391.9

文献标识码:A

文章编号:1003-188X(2016)08-0031-05

作者简介:方政(1990-),男,合肥人,硕士研究生,(E-mail)fangzh0415@163.com。通讯作者:胡晓辉(1963-),男,甘肃武威人,教授,硕士生导师。

基金项目:国家自然科学基金项目(61163009);甘肃省科技支撑计划项目(144NKCA040);甘肃省教育厅科研资助项目(110405)

收稿日期:2015-07-16

猜你喜欢
计算机视觉
基于光流技术的障碍物检测方法
无人驾驶小车定点追踪系统的设计与实现
基于深度卷积神经网络的物体识别算法
双目摄像头在识别物体大小方面的应用
机器视觉技术发展及其工业应用
危险气体罐车液位计算机视觉监控识别报警系统设计
对于计算机视觉商业化方向的研究
基于Matlab的人脸检测实验设计
现代目标识别算法综述
基于分块技术的改进LPB 人脸识别算法的研究