基于大津算法连通域的松果多目标识别定位

2021-09-12 16:56牛晗伍希志
江苏农业科学 2021年15期
关键词:多目标识别松果

牛晗 伍希志

摘要:松果识别对其产量评估、智能采摘等具有非常重要的意义。提出一种基于二值图像连通域的松果图像识别方法,首先研究松果图像RGB颜色特征规律,进行RGB颜色分量色差运算;然后选取合适的阈值对松果R-G图像进行二值化处理,初步分割果实和背景;再在图像分割时采用小面积连通域面积阈值法去除噪声的影响;最后采用连通域外接矩形法进行松果识别与统计,并计算出松果质心位置。结果表明,采用OTSU二值化分割+连通域噪音去除方法,可以清晰地分离出松果果实,松果识别平均准确率为89.6%。基于二值图像连通域的松果多目标果实识别与定位,为以后实现松果的自动化采摘提供了技术基础。

关键词:图像处理;松果;多目标;连通域;识别

中图分类号: TP391.41  文献标志码: A

文章编号:1002-1302(2021)15-0193-05

收稿日期:2020-11-11

基金项目:国家自然科学基金(编号:C161402);长沙市重点研发计划(编号:Kq2004094);广州达意隆包装机械股份有限公司博士后科研工作站项目(编号:263805)。

作者简介:牛 晗(1997―),男,湖北鄂州人,硕士研究生,研究方向为机器视觉。E-mail:1390079277@qq.com。

通信作者:伍希志,博士,副教授,研究方向为林业智能装备、机器视觉、复合材料结构。E-mail:wuxizhi2006@126.com。

我国是世界上松子种植面积最大、消耗松子最多的国家,年产量为8万t左右,向外出口20多个国家和地区。松子热量大,而且有很高的食疗价值。松子的加工早已实现自动化,但目前松果的采摘主要依靠人工完成。产出松子的松树高度一般为15~20 m,人工爬树采摘的危险程度非常高,劳动强度很大,导致松子价格高昂。因此,采用计算机图像处理技术识别松果,开发松果采摘机器人是一个有效的解决方法。近年来,为了实现水果的自动化采摘,学者们在水果识别方面进行了大量研究,主要包括苹果[1]、橘子[2]、番茄[3]、葡萄[4]、猕猴桃[5]等识别研究。例如,针对如苹果番茄橘子等圆形水果的识别,主要采用基于canny[6]、sobel[7]等边缘提取算法,提取出水果的边缘进行识别。也有学者采用HOG变换识别出植被类型[8]。Shin等通过结合logistic回归模型和分水岭算法对柑橘质量进行分类[9]。黄小玉等提出了改进的DRFI算法,增加颜色、纹理和形状3个参数特征,并采用OTSU分割进行绿色桃子识别[10]。陈礼鹏等通过提取猕猴桃的果萼进行猕猴桃的识别计数[11]。吕继东等通过对阈值分割后的图像进行彩色模板匹配识别红色苹果[12]。Yu等通过运用基于RCNN算法的神经网络,识别出草莓轮廓的2个最远点,将它们的中点当作草莓重心[13]。Sun等采用GrabCut模型和Ncut算法识别出复杂环境中的青苹果[14]。Lv等改进了GrabCut模型完成红色苹果识别[15]。

综合上述研究工作可以发现,国内外学者对类圆形光滑表面的水果如苹果、橘子等研究较多,且大多采用边缘识别算法识别果实,而松果轮廓不规则、表面有突起的松子,采用邊缘识别算法易受到树枝树叶等噪音的边缘影响,识别准确性较差。另一类研究是根据颜色、纹理和形状等参数特征使用分类器的方法识别果实,这需要大量训练样本,运算复杂,操作难度大。因此,从复杂背景环境中识别松果是一个技术难点,目前缺乏深度的研究。本研究以成熟松果为研究对象,提出基于二值图像连通域的松果多目标识别方法,采用RGB颜色分量 R-G 色差运算和二值化处理,初步分割果实和背景;采用小面积连通域面积阈值法去除图像中的噪声,得到松果果实图像;采用连通域外接矩形法进行松果识别与统计,并计算出松果质心位置,为以后机械化采摘奠定了基础。

1 松果识别方法

1.1 松果图片样本的获取

松果图像是在2019年10月中旬于四川省凉山州会东县堵格镇拍摄。用redminote7 Pro手机在各种自然光线条件下拍摄200多张照片,拍摄距离为 10 m。所采集的图像为.jpg格式,图像大小为 427×640像素。

1.2 基于RGB色彩空间的色差运算

RGB色彩空间的颜色通过调整RGB 3个颜色通道的不同分量来显示。成熟松果呈黄色,黄色是由红色和绿色混合组成。图1-a为原始图像,图1-b为使用Image Pro Plus软件选取的图像中有松果的区域,图1-c为图像中没有松果的区域,并统计了2个区域内的RGB 3种分量的权值大小。从RGB分量折线图(图1-d、图1-e)中可以很明显看出,有松果的区域R分量最多,无松果的区域G分量最多,2个区域内的B分量含量相差不大,B分量大部分为背景颜色。可知松果的RGB图像中存在的R分量和G分量的权值大于B分量。

因此,采用R分量与G分量进行色差运算,可以突出松果的外形轮廓,消除树枝等噪音的影响,松果图像R-G色差运算处理后如图2所示,可以看出,进行R-G的操作后,绿色的树叶完全消失了,松果的灰度比较高,接近白色,在接近黑色的背景中很突出。图中还存在树枝等噪音,这些噪音灰度不高,与环境很接近,与松果灰度值对比明显。可见,R-G运算能很好地提高松果在图像中的对比度。

1.3 基于大津算法(OTSU)的二值化分割

色差运算处理后的R-G图像具有256个灰度值,直接对它进行处理运算速度比较慢,效果也不太好。由于松果灰度值在R-G图像中对比度大,对灰度图像进行二值化处理可以清晰地分辨出果实和背景区域,压缩图像数据,是加快运算速度的好方法。下面采用大津算法(OTUS)对R-G色差运算的图像进行阈值分割。

大津算法(OTSU)的基本思想是计算图像的灰度平均值M,通过得到一个阈值T,可以把图像分割成背景A和果实B。记图像中背景A的灰度平均值是MA,图像中果实B的灰度平均值是MB。像素点出现在背景A的概率为PA,出现在果实B的概率为PB。阈值T计算公式:

T=PA×(MA-M)2+PB×(MB-M)2。(1)

对图2所示色差灰度图像进行阈值分割,通过OTSU算法得出该图片阈值为30。因此采用阈值30对本图像进行分割,灰度高于30像素点的灰度置为0,灰度小于等于30像素点的灰度置为1。

OTSU算法会根据每幅图像的阈值进行二值化分割,OTSU二值化分割结果如图3-a所示,图像中松果形状均很好地表示出来了,但是树枝和其他噪音也十分明显。

为了得到更好的二值化图像,下面研究不同权重的R、G分量色差运算的OTSU阈值分割,包括1.2R-G,1.1R-G,R-G,R-1.1G,R-1.2G 的色差运算图像。图3是不同权重色差运算图像的OTSU阈值分割结果。从图3中可以看出,R分量权值增大会导致树枝等噪音非常明显,G分量权值增大会减小树枝噪音的影响,但松果变得模糊。经过对比采用R-1.1G色差运算的图像阈值分割的结果最好,松果清晰地展现了出来,并且树枝等噪声较小。因此本研究采用R-1.1G色差运算来进行松果图像增强和削弱背景的影响。

1.4 基于连通域面积阈值的噪音去除

经过R-G色差运算和OTSU阈值分割得到的图像仍有部分噪声,主要是一些灰度值比较高的树枝。这些噪声面积一般小于松果面积的1/20。下面计算连通域的面积,并去除小面积噪声。随机选取20幅图像,图像内面积最大松果的面积为4 280像素,取它的1/20(214像素)为小面积噪声阈值,即连通域面积小于214像素的就是噪声,把它赋值为1。去除小面积后的图像结果如图4所示,细小的噪声都被去除了,留下清晰的松果轮廓。

1.5 基于连通域外接矩形的松果计数

以处理后的图像为对象,采用连通域外接矩形的方法进行计数。通过图像像素从左到右、从上到下进行遍历。如果遍历的像素值是0,就再遍历该像素点的八邻域,把该像素点八邻域为0的点存入元组并赋值为1,将元组中为1的像素点记为一个

连通域。继续遍历,遇到像素值为0且元组中不为1的点,把它存入元组并赋值为2,同时遍历该像素点的八邻域,直到遍历完整个图像。然后把连通域的边缘连接起来,形成一个闭环轮廓,识别这个连通域的4个最大边界点,连接它们形成一个矩形,使连通域包含在矩形内。通过上述方法即可完成松果计数,元组中最大值即为图像松果的数量,计数结果如图5。从图5中可以看出,大部分松果都被识别出来了,被树枝挡住大半的松果也能被识别出来,但仍有一处连接在一起的2个松果被识别为一个松果。

1.6 对松果进行质心定位

要实现松果自动化采摘,在完成图像中松果计数后,还需要对图像中松果进行定位。由于松果表面存在小突,它们的灰度值较高,接近背景的灰度,经过阈值处理后这些像素点还是白色,使松果轮廓内像素值不均匀,这给松果质心计算带来了不利影响,因此需要在不改变松果外形轮廓情况下填充图像内的白点。下面采用闭运算方法处理松果图像中白点,闭运算可以填补图像内的空洞但不影响图像的边缘。闭运算是先进行膨胀运算再进行腐蚀运算。腐蚀和膨胀的原理是采用一个模板在图像中移动,腐蚀是选取模板内的最小值作为新图像的中心值,膨胀是选取模板内的最大值作为新图像的中心值。

在进行了闭运算后,再对图像中松果求质心。求质心计算的基本原理是计算松果图像内各个横坐标Xi之和,再计算出松果图像内各个纵坐标Yi之和,最后统计松果图像内的像素点的个数n。松果的质心横坐标X与质心纵坐标Y公式如下:

X=∑ni=0Xin;(2)

Y=∑ni=0Yin。(3)

质心计算结果如图6所示,可以看出,本方法定位松果质心非常准确,大部分松果的质心都被计算出来。但是对于少数被树枝或者树叶遮挡的松果,它们的计算质心是图像显示部分松果的质心,并不是真实整个松果的质心。

2 讨论

2.1 松果识别结果

为了验证本松果识别方法的准确性,从所采集的松果样本图像中随机选取30幅图像,运用本研究算法处理。圖7为从30幅图像中随机选择4幅图像的松果实图与算法识别结果。从图7中可以看出,本算法可以很好地识别出松果并计数,即使是被树枝树叶遮挡也可以完成计数,并且算法对黄色红色松果都适用。图7中4幅图像的识别松果数分别为19、5、14、19 个,跟图片中实际松果数21、5、15、18个非常接近,基本能识别出图片中的松果。松果识别结果准确率计算公式如下:

P=1-|n1-n2|n2×100%。(4)

式中:P为准确率;n1为统计松果数;n2为实际松果数,计算结果见表1。从表1可以看出,本算法的松果识别平均准确率为89.6%。经分析其误差产生原因如下:(1)环境光线太强,图像中存在阴影中的松果,其灰度值较低,二值化时被误分割成背景。(2)松果被树枝树叶遮挡过多、距离过远,面积没有214像素,被当作噪声去掉。(3)1个松果被树枝树叶分割成2块,识别为2个松果。(4)2个松果重叠过于严重,识别为1个松果。

2.2 对比试验结果

为更好地阐述连通域算法的识别准确性,采用连通域算法和边缘检测算法对本松果图像进行识别。其中边缘检测算法同样进行R-B色差运算和中值滤波处理,然后采用基于sobel算子的边缘检测进行松果识别。2种算法的松果识别对比试验结果如图8所示,松树高大,松果显得较小,边缘检测算法检测的松果边缘与树枝连接,对线的处理比较麻烦,很难区分松果边缘与噪声边缘。连通域算法是通过面的方法将松果从复杂环境中成功分割,达到了有效的识别效果。

3 结论

采用基于二值图像连通域方法,对松果多目标果实进行识别与定位,结果表明,采用R-G运算能很好地提高松果在图像中的对比度。采用OTSU二值化分割+连通域噪音去除方法,可以清晰地分离

出松果果實,松果识别平均准确率为89.6%。采用闭运算方法消除松果轮廓内白点,方便对松果进行质心定位。这种基于二值图像连通域的松果多目标果实识别与定位,为以后实现松果的自动化采摘提供了技术基础。后续希望进一步研究新算法,使松果识别正确率达到更高的水平。

参考文献:

[1]马翠花,张学平,李育涛,等. 基于显著性检测与改进 Hough 变换方法识别未成熟番茄[J]. 农业工程学报,2016,32(14):219-226.

[2]杨 帆,李鹏飞,刘 庚,等. 橘子采摘机器人目标识别定位方法与实验研究[J]. 西安理工大学学报,2018,34(4):460-467.

[3]项辉宇,薛 真,冷崇杰,等. 基于Halcon的苹果品质视觉检测试验研究[J]. 食品与机械,2016,32(10):123-126.

[4]马本学,贾艳婷,梅卫江,等. 不同自然场景下葡萄果实识别方法研究[J]. 现代食品科技,2015,31(9):145-149,168.

[5]张莎莎,王周宇, 陈礼鹏,等. 基于MatLab的多目标猕猴桃无损采摘路径规划[J]. 农机化研究,2019,41(4):18-23.

[6]慕军营,陈 军,孙高杰,等. 基于机器视觉的猕猴桃特征参数提取[J]. 农机化研究,2014,36(6):138-142.

[7]蔡健荣,周小军,李玉良,等. 基于机器视觉自然场景下成熟柑橘识别[J]. 农业工程学报,2008,24(1):175-178.

[8]林志玮,丁启禄,涂伟豪,等. 基于多元HoG及无人机航拍图像的植被类型识别[J]. 森林与环境学报,2018,38(4):444-450.

[9]Shin J S,Lee W S,Ehsani R . Postharvest citrus mass and size estimation using a logistic classification model and a watershed algorithm[J]. Biosystems Engineering,2012,113(1):42-53.

[10]黄小玉,李光林,马 驰,等. 基于改进判别区域特征融合算法的近色背景绿色桃子识别[J]. 农业工程学报,2018,34(23):142-148.

[11]陈礼鹏,穆龙涛,刘浩洲,等. 基于猕猴桃果萼图像的多目标果实识别方法[J]. 计算机工程与设计,2018,39(6):1738-1744.

[12]吕继东,赵德安,姬 伟. 苹果采摘机器人目标果实快速跟踪识别方法[J]. 农业机械学报,2014,45(1):65-72.

[13]Yu Y,Zhang K L,Yang L,et al. Fruit detection for strawberry harvesting robot in non-structural environment based on Mask-RCNN[J]. Computers and Electronics in Agriculture,2019,163:104846.

[14]Sun S S,Jiang M,He D J,et al. Recognition of green apples in an orchard environment by combining the GrabCut model and Ncut algorithm[J]. Biosystems Engineering,2019,187:201-213.

[15]Lv J,Wang Y,Ni H,et al. Method for discriminating of the shape of overlapped apple fruit images[J]. Biosystems Engineering,2019,186:118-129.

猜你喜欢
多目标识别松果
摘松果
小松果
摘松果
分松果
基于生态流量区间的多目标水库生态调度模型及应用
基于可靠性的应急物流多目标选址问题模型研究
青岛市中山公园园林树木易混淆品种识别
基于多目标的土木工程专业科研创新人才培养模式探索
论犯罪危险人格的识别