基于双椭圆变化参数的香蕉形状描述方法

2016-11-01 00:37屠礼芬张凯兵
浙江农业学报 2016年3期
关键词:轮廓香蕉形状

彭 祺,屠礼芬,,张凯兵

(1.湖北工程学院 物理与电子信息工程学院,湖北 孝感 432000;2.湖北工程学院 计算机与信息科学学院,湖北 孝感 432000)



基于双椭圆变化参数的香蕉形状描述方法

彭祺1,屠礼芬1,*,张凯兵2

(1.湖北工程学院 物理与电子信息工程学院,湖北 孝感 432000;2.湖北工程学院 计算机与信息科学学院,湖北 孝感 432000)

为实现香蕉外部形状的描述,提出一种基于双椭圆变化参数的香蕉形状描述方法。首先通过图像预处理获得对象物体的二值化图像,结合开源计算机视觉库(OPENCV)提供的库函数cv.fitEllipse进行二维点集的椭圆曲线拟合,并筛选出外接椭圆轮廓作为初始轮廓;然后在此基础上构造可变参数的外接椭圆和内接椭圆,以双椭圆叠合面积的大小为准则进行香蕉形状的拟合描述;最后提取描述香蕉形状的双椭圆参数作为特征参数,并运用该类参数对其他类型果蔬形状进行描述,判断该类特征参数的有效性。试验结果表明,所提出的方法简便易行,在AMD FX6300处理器平台上运算速度约0.1 s。算法采用C++语言编写,能够应用于水果分类包装自动化生产线。

椭圆轮廓;香蕉形状;参数化描述;水果分类

在水果农产品分拣包装、分拣入柜、分类摆放等多个环节中,部分情况下需要依靠人工分拣出不同的水果,该方式费时费力,不利于大规模自动化生产。为减轻劳力,需要对水果进行自动化包装、分拣和分类操作,运用机器视觉技术对水果进行自动分类识别显得尤为重要。分类识别方法主要包括颜色识别、纹理识别和形状识别。大多数水果的颜色和纹理特征具有唯一性,例如香蕉的颜色从生到熟,从熟到坏基本上分为绿、黄、黑三种,因此可以选择代表性较强的颜色和纹理特征变量对水果进行较为准确的分类识别[1-2]。有许多算法通过颜色和形状特征对水果进行分类识别。Liu等[3]采用圆形模板对桃子进行了形状识别,在不同自然环境下达到95.75%的识别率,桃子整体形状接近圆形,而香蕉的形状难以用基本几何图形圆形描述,该算法对非圆形形状的香蕉失效。朱坚民等[4]采用基于模糊隶属度匹配的方法对苹果、橘子、梨等球形水果进行了形状识别,结合基于灰色关联分析的颜色特征分析方法,识别的平均准确率达99%以上,但香蕉不是球形水果,而且不同的香蕉个体形状差别也较大,有弯、微弯、直之分,难以建立单一的隶属度函数并用模糊隶属度参数表示。目前,针对香蕉形状进行描述的文章较少,本文将针对香蕉形状的描述方法进行重点研究。

传统的形状描述方法有曲线拟合[5]、水平集[6]、傅里叶描述子[7]。曲线拟合法能较为精确地描述形状边缘,但描述的形状边缘规则性不强,数据量较大,拟合出来的形状边缘一般用链表表征,难以用较为简单的数学公式表达,在香蕉形状的匹配识别中较难应用。水平集方法需要在整个定义域内不断更新所有像素点的水平集函数值,复杂性从O(N)提升到O(N2),而速度参数的选取和水平集函数的重新初始化又增加了计算的复杂性[8]。傅里叶描述子是在边界链码的基础上对形状进行描述,需要将坐标变化周期函数展开为傅里叶级数,计算复杂度较高,文献[9]对此进行改进,但轮廓线函数提取时间依然为2.927 s,难以应用到生产环境中;且该方法针对封闭曲线,而某些物体边缘二值化图像在局部区域受噪声干扰,并不能精确完整地描述真实轮廓的封闭曲线[10],给傅里叶描述子在形状描述上的应用带来局限。本文提出一种基于双椭圆变化参数的香蕉形状描述方法,运用两个椭圆对香蕉形状进行近似描述,标准椭圆方程参数只有长轴a、短轴b、中心坐标(x,y)3组参数,计算复杂度低,能较好应用到生产环境中。

1 材料与方法

1.1供试材料和软硬件平台

试验所用图像来源于百度图片网站,分为两套图像:一套图像是香蕉的典型图片,位置摆放及大小形状各不同;另一套图像是其他类型果蔬图片。网络下载的图像,信息属性复杂,而包装流水线等工业化生产环境,可对相机参数和光照环境因素进行有效控制和调节,将背景单纯化,突出被测物体。为模拟工业化生产环境,使用Photoshop软件对网络图片中的背景进行处理,将其设置为纯白色,排除背景干扰,专注于本文算法对香蕉形状描述的试验,分辨率未做调整。

为配合算法实现,运用C++编程语言在WINDOWS7 64bit操作系统,VS2010和OPENCV2.4.10开发环境下编写水果识别软件“fruit recognize”。软件运行的计算机硬件环境为:CPU AMD FX6300,内存16 G DDR3,固态硬盘三星EVO850 250G。

1.2图像预处理

首先对香蕉彩色图像进行灰度化处理,依据式(1):

Y=0.299×R+0.587×G+0.114×B

(1)

应用CV_BGR2GRAY方法将彩色图像灰度化。接下来应用归一化滤波器blur对灰度图像进行平滑处理,去除图像中的小噪声以利于后续操作。第三步依据式(2),运用阈值法对灰度图像中的香蕉二值化:

(2)

其中二值化后的背景灰度值maxval设为255,香蕉灰度值设为0,阈值thresh设置为220。因为香蕉本身的颜色为纯色,且基本上为绿、黄、黑3种颜色,跟纯白色背景环境区分度较大,经试验发现香蕉本身的灰度值很难高于220,所以阈值设置为220较为恰当[11]。

1.3边界椭圆轮廓初定

运用findContours函数,对预处理后的二值化图像进行轮廓搜索,该函数输入二值化图像,输出轮廓以point类型的点向量表达,多个轮廓以图像拓扑信息组织为层次化结构。其中轮廓检索模式设置为CV_RETR_TREE,该模式提取所有轮廓并建立网状的轮廓结构,轮廓的近似方法设置为CV_CHAIN_APPROX_SIMPLE,该方法压缩水平、垂直、对角线方向的元素,只保留终点坐标。

找到图像中香蕉的轮廓后,为限定算法处理区域,寻找最小包围矩形,运用minAreaRect函数进行处理,该函数对于给定的二维轮廓点集,可寻找出最小面积包围矩形框。同时对香蕉轮廓进行初始化椭圆拟合,运用函数fitEllipse进行处理[12],该函数对于给定的二维轮廓点集,可寻找出外接椭圆进行拟合,本文的可变参数双椭圆即在该外接椭圆的基础上进行处理。

1.4可变参数外接椭圆拟合下边缘

单根香蕉从侧面观察有上下两个边缘,如图1所示。

图1 香蕉的上边缘和下边缘Fig.1 The top and bottom edges of the banana

通过图像预处理以及边界椭圆轮廓初定,我们可以获得外接椭圆,该外接椭圆与下边缘拟合,如图2所示。

图2 香蕉边缘椭圆轮廓初定Fig.2 The edge of an initial elliptical contour of banana

从图2中可以看到外接椭圆与香蕉的下边缘较为接近,但香蕉下边缘相对于外接椭圆底部弧长来说呈外切状态,拟合精度不高,因此需要对外接椭圆参数进行调整。设外接椭圆参数为式(3):

(3)

其中:a,b为椭圆的长轴和短轴长度,椭圆的中心坐标为center (x,y),angle为直角坐标系下椭圆短轴与x轴的夹角。中心坐标和角度不变,仅改变a,b的值,使椭圆所包含的香蕉轮廓区域内的面积最大,为防止a,b的值同时增大造成全包含,a,b值的改变必须满足式(4):

(4)

其中:(a0,b0)为初始外接椭圆的长短轴,经试验设Δa为图像宽度的1/10,β为短轴收缩控制系数,为防短轴收缩太快,经试验设β为10。标准椭圆经过旋转和平移后,如式(5):

(5)

BEnum=max(Mat[fBE])

(6)

其中BEnum为最大像素数量值。

1.5可变参数内接椭圆拟合上边缘

(7)

根据式(7)和式(5)计算内接椭圆所围香蕉轮廓区域面积,即两者离散矩阵叠合的像素数量,获得矩阵Mat[fBES]=Mat[fB(x,y)]&Mat[fES(x,y)],该面积应该尽量小,因此按式(8)求最小值:

BESnum=min(Mat[fBES])

(8)

其中BESnum为最小像素数量值。

1.6香蕉形状描述参数获取

当获取外接椭圆叠加面积最大像素数量值BEnum和内接椭圆叠加面积最小像素数量值BESnum后,双椭圆参数被完全确定,即式(3)和式(7)内的参数被完全确定,这些参数之间相互关联,因此可以缩略为:φ,(u,v),(xe,ye),a,b等5组参数。分析这5组参数发现:夹角φ仅与香蕉摆放的角度有关,与香蕉本身形状无关;外接椭圆中心坐标与香蕉摆放位置有关,与香蕉形状相关度不强;因此表征香蕉本身形状的参数有(xe,ye),a,b等3组参数。相对于文献[7]中傅里叶系数的4组参数,这3组参数获取更容易,表征更直观,数量上也少一组,方便程序实现并应用于生产实践中。总体操作流程,如图3所示。

2 结果与分析

2.1模板图像参数提取

从百度图片网站上百张香蕉图片中挑选出具有代表性的8张。图4中a1~a4为4张典型形状的香蕉图片,其位置摆放及大小形状各不同;a5,a6为末端直和全直形状的香蕉;a7,a8为倒放和侧放位置的典型形状香蕉。

运用上述方法对图4-a1~a8中的8幅香蕉图像进行处理,获得对应双椭圆形状描述结果如图4-b1~b8所示:

图3 形状参数获取总体流程图Fig.3 The overall flow chart to obtain shape parameters

从图4-b1~b4的各个子图像中可以看到,香蕉的上下两个边缘被外接和内接两个椭圆较好的描述,该种描述属于一种快速近似描述,能以小于0.1 s的运算速度给出香蕉形状的规则化参数结构。通过外接和内接两个规则化椭圆的结构类比,可以获得双椭圆香蕉形状描述参数。从图4-b5,b6可以看到,本算法对于上下边缘没有弯曲度的香蕉,即末端直和全直形状的香蕉无效,外接椭圆无法拟合。从图4-b7,b8可以看到,本算法不受香蕉摆放位置的影响,只要是典型形状即上下边缘有弧度即可正确拟合外接和内接椭圆。8张香蕉图像的参数如表1所示:表1中所提供的参数即为这8张香蕉图片的形状描述参数,这些参数可以作为特征参数,对真实场景中香蕉的形状提供参数化描述。

2.2验证香蕉双椭圆参数描述的正确性

运用表1中的香蕉形状双椭圆特征参数,以及双椭圆参数形状描述方法对其他类型的果蔬形状进行描述,验证香蕉双椭圆参数描述的正确性,分别选取不同形状类型的6种果蔬进行试验,如图5所示。

图5中,a1~a6为原图,b1~b6为对应的双椭圆轮廓拟合图像,c1~c6为对应的双椭圆叠合图像。图5-a1是形状类似香蕉的小黄瓜,根据表1中的4号样本参数对其描述,发现BESnum值无法达到最小,不符合香蕉的双椭圆特征参数。图5-a2是圆形类水果,苹果、橘子、梨子等水果都属于圆形水果,以苹果为例,运用表1中的3号样本参数对其描述,发现BESnum值始终为最大,与香蕉的双椭圆特征参数不符。图5-a3中的芒果为不规则形状水果,参数描述效果同图5-a2中的苹果。图5-a4为另一类别水果,单个葡萄为类圆形,在包装生产线上,葡萄一般为成串结构,运用本文提出的算法对该类成串结构水果进行参数描述,也不符合香蕉的双椭圆特征参数。图5-a5为长黄瓜,形状细且直,外接椭圆无法算出,在1.4节的步骤中就已参数提取失败。图5-a6为两根甘蔗叠放在一起,形成一个不规则形状物体,本文的算法在此失效,无法处理分叉状非规则物体。通过上述试验证明本文的双椭圆变化参数香蕉形状描述算法切实可行,且效果较好;部分图像像素近300万像素,运算时间依然低于0.1 s,运算效率较高。

图4 香蕉的双椭圆形状轮廓描述Fig.4 Double ellipses shape contour description for banana

表1香蕉形状双椭圆参数特征提取

Table 1Double ellipses parameters of banana shape feature extraction

样本编号内椭圆中心坐标内椭圆长轴内椭圆短轴外椭圆中心坐标外椭圆长轴外椭圆短轴1(304.1,227.1)295.6204.2(304.1,227.1)511.1408.42(528.1,313.3)538.8269.0(528.1,313.3)977.7544.33(498.6,473.6)521.1282.3(504.3,367.8)940.2571.74(368.7,378.9)294.6112.8(398.4,330.9)509.2230.15(0,0)00(0,0)006(0,0)00(0,0)007(135.5,132.9)201.7117.2(189.6,152.2)360.4237.78(533.9,470.9)400.5226.3(508.0,369.9)698.9460.6

图5 其他果蔬的双椭圆形状轮廓及叠加描述Fig.5 Double ellipses shape contour description and overlay for other fruits and vegetables

3 讨论

水果分类应用的研究,已有部分专利[13-14]和论文[15],并应用到大规模自动化生产中。这些专利和文章的大体思路为:首先利用工业CCD相机,对水果进行实时图像采集;将采集到的图像回传到计算机进行图像预处理;然后提取水果颜色、形状、气味等各项特征;最后根据水果的颜色、形状、气味或其他特征对水果进行定性判断,并按需进行后续操作。对水果这类自然物体进行分类识别,获取特征属性是十分关键的步骤。

特征属性的获取过程是将人或其他生物体所能感知到的信息,通过数学等方法抽象描述为计算机能够处理的信息。本文所做工作即为将香蕉这种水果的外部形状通过双椭圆参数进行数学描述,该描述参数可以方便地存储在数据库中作为特征信息,在实际应用中,可以通过这些参数去判断对象物体是否符合香蕉形状,再配合颜色等其他信息判定是否为香蕉。

基于水果或其他物体外部形状描述的论文较多,有直接进行精确曲线描述的论文[16-17],该类论文运用较为复杂的数学理论对曲线进行精细化描述和匹配,对不同物体的适应性较强,但运算复杂,大部分运用Matlab软件进行仿真试验,编写的软件应用于大规模生产中具有一定难度。本文的算法只针对香蕉这一特定形状,曲线描述层次为粗略描述,通过试验验证该粗略描述能有效区分香蕉和其他类型的果蔬,本文所提出的算法优点在于:复杂度低、运算效率高,整个试验软件运用C++编写,能方便应用于实际生产中。

本文的算法也存在一定的局限性,对于典型的上下边缘弯曲形状的香蕉,双椭圆变化参数描述方法能有效提取出香蕉的形状特征,并用直观且较少的参数表达。但对于末端直和全直形状的香蕉,因上下边缘接近直线,无法拟合出椭圆,本算法失效。对此在后续研究中,需要引入其他类型的形状模板,例如圆柱形,替代椭圆形模板对该类形状的香蕉进行参数化描述;但圆柱形模板难以区分单根甘蔗、黄瓜等长条形果蔬,对此可能需要加入其他特征,例如颜色、纹理等进行综合特征描述。对于典型形状的香蕉,在生产线或分拣传送带上摆放位置不固定,相机采集到的图像可能是倒放或者是侧放样式,本文的算法对该种情况的适应性较强,能顺利提取出双椭圆参数描述香蕉的形状,但对非规则分叉物体识别效果不佳,在后续研究中,将对可变参数椭圆轮廓描述曲线的方法进行改进,以期获得更好的适应性,广泛应用于其他果蔬的形状描述。

[1]ANAMI B S,SAVAKAR D G.Suitability of feature extraction methods in recognition and classification of grains,fruits and flowers[J].International Journal of Food Engineering,2011,7(1):69-75.

[2]卢军,付雪媛,苗晨琳,等.基于颜色和纹理特征的柑橘自动分级[J].华中农业大学学报,2012,31(6):783-786.

[3]LIU Y,CHEN B,QIAO J.Development of a machine vision algorithm for recognition of peach fruit in a natural scene[J].Transactions of the ASABE,2011,54(2):695-702.

[4]朱坚民,雷静桃,翟东婷,等.基于灰关联分析和模糊隶属度匹配的球形水果自动识别方法[J].仪器仪表学报,2012,33(8):1826-1836.

[5]BEYER M,HAHN R,PESCHEL S,et al.Analysing fruit shape in sweet cherry[J].Scientia Horticulturae,2002,96(1-4):139-150.

[6]GUI J S,RAO X Q,YING Y B.Fruit shape detection by level set[J].Journal of Zhejiang University (Science A∶An International Applied Physics &Engineering Journal),2007,8(8):1232-1236.

[7]胡孟晗,董庆利,刘宝林,等.基于椭圆傅里叶描述子的香蕉形状识别[J].浙江农业学报,2014,26(1):200-205.

[8]游瑞.变分水平集的图像分割技术研究[D].武汉:华中科技大学,2011.

[9]徐国清,穆志纯.基于多级三角形面积函数的傅里叶形状描述子[J].北京科技大学学报,2013,35(9):1201-1206.

[10]薛磊,杨晓敏,陈默,等.基于改进差分边缘检测法的车牌字符二值化算法[J].四川大学学报(自然科学版),2007,43(6):1253-1258.

[11]毛星云,冷雪飞,王碧辉,等.OpenCV3编程入门[M].北京:电子工业出版社,2015.

[12]FITZGIBBON A W,FISHER R B.A buyer’s guide to conic fitting[C]// British Machine Vision Conference,1995:513-522.

[13]王进学,杜义贤,胡芬,等.一种水果自动分拣系统:CN103949409A[P].2014.

[14]徐亮,裔晓琴,徐仁佩,等.三摄像头视觉智能检测水果装置:CN 103406279 A[P].2013.

[15]朱霞,陈仁文,夏桦康,等.智能机器人水果采摘识别系统设计[J].计算机应用研究,2014,31(9):2711-2714.

[16]PARK H.B-spline surface fitting based on adaptive knot placement using dominant columns[J].Computer-Aided Design,2011,43(3):258-264.

[17]曾接贤,刘秀朋,符祥.角点距离矩阵和同心圆划分的曲线描述与匹配[J].中国图象图形学报,2012,17(8):1011-1020.

(责任编辑张韵)

Banana shape description method based on change parameters for double ellipses

PENG Qi1,TU Li-fen1,*,ZHANG Kai-bing2

(1.School of Physics and Electronic Information Engineering,Hubei Engineering University,Xiaogan 432000,China;2.School of Computer and Information Science,Hubei Engineering University,Xiaogan 432000,China)

In order to realize the external shape description for banana,a banana shape description method based on change parameters for double ellipses has been proposed.First of all,the binary image of the object was obtained by image processing.The ellipse curve fitting of the two dimensional point set was provided by the library function cv.fitEllipse in Open Source Computer Vision Library (OPENCV),and the external outline of ellipse was selected as the initial contour.Then,based on the first step,the external ellipse and inscribed ellipse with variable parameters was constructed,and the banana shape fitting was described based on the areas of double ellipses overlap.Finally,the double ellipses parameters describing the banana shape were extracted as characteristic parameter,which was used to describe the shape for the other types of fruits and vegetables,and to determine the effectiveness of the characteristic parameters.Experimental results showed that the proposed method was simple,fast and efficient.The operation speed was about 0.1 s on the FX6300 AMD processor platform.The algorithm was written in C++ language,which can be used in automatic production line for fruit sorting and packing.

outline of ellipse;banana shape;parameterized description;fruit classification

浙江农业学报Acta Agriculturae Zhejiangensis,2016,28(3):515-521http://www.zjnyxb.cn

彭祺,屠礼芬,张凯兵.基于双椭圆变化参数的香蕉形状描述方法[J].浙江农业学报,2016,28(3): 515-521.

10.3969/j.issn.1004-1524.2016.03.25

2015-07-23

国家自然科学基金(61471161);湖北省自然科学基金(2015CFC770);湖北省教育厅科学技术研究项目(Q20152701);生物质资源转化利用湖北省协同创新中心科技创新项目(XTCX005)

彭祺(1983—),男,湖北武汉人,博士,讲师,研究方向为机器视觉。E-mail:petersky0316@163.com

,屠礼芬,E-mail:tulifen_0301@163.com

S668.1;TS255.3

A

1004-1524(2016)03-0515-07

猜你喜欢
轮廓香蕉形状
挖藕 假如悲伤有形状……
OPENCV轮廓识别研究与实践
基于实时轮廓误差估算的数控系统轮廓控制
快手香蕉饼
你的形状
瓶里有香蕉
香蕉
高速公路主动发光轮廓标应用方案设计探讨
火眼金睛
心的形状