柑橘采摘机器人图像识别算法研究*

2023-10-09 12:11王大明何逸霏李华英苟于江何辉波
中国农机化学报 2023年9期
关键词:背光枝叶柑橘

王大明,何逸霏,李华英,苟于江,何辉波

(西南大学工程技术学院,重庆市,400715)

0 引言

柑橘是世界第一大类水果作物,同时也是排名第三的贸易农产品。我国是世界上主要的柑橘贸易、生产大国[1-3],国内柑橘产业种植规模持续增长,种植面积从1990年的1 061.2 khm2增长到2019年的2 617.3 khm2,2020年我国柑橘总产量高达51 220 kt[4-5]。

当前我国大部分地区的柑橘采摘方式仍以手工采摘为主,整个采摘过程不仅效率低且劳动强度大,所以研发柑橘采摘机器人具有很高的实用价值[6-7]。近年来,国内外学者对水果图像处理做了大量的研究[8-11]。Lu等[8]利用颜色信息和图像轮廓对树冠内不同光6照下的柑橘进行研究,通过融合色差信息和归一化RGB模型提出了一种初步的分割方法。赵德安等[10]通过对苹果图像进行分割、去噪和确定最小半径等方式,实现了对重叠果实的快速跟踪识别。柑橘图像的识别作为柑橘采摘机器人视觉系统最为核心的部分,必须保证机器人能够正确完成对柑橘的检测。为了满足这一要求,本文对柑橘图像的预处理[12]、图像分割、形状特征提取以及Hough变换进行了研究。首先对颜色空间进行选取,其次图像进行增强处理量作为柑橘的颜色特征,最后通过最大类间差法完成对柑橘图像的分割。综合比较Sobel、LOG、Canny等算子,确定最优方案完成对边缘的检测以及其边缘特征的提取。

1 算法设计

为了应对柑橘在自然条件下的复杂生长环境,本文选择应用较为广泛的HSV颜色空间来对柑橘图像进行处理。首先通过对柑橘图像增强、去噪,完成对图像的预处理,然后依据果树枝叶与成熟柑橘颜色信息的不同,将图像进行分割得到目标图像[13],对柑橘特征的提取使用不同边缘检测算子,然后选取合适的腐蚀和膨胀结构元素对目标图像进行形态学处理并结合Hough变换完成对柑橘的检测识别,如图1所示。

图1 柑橘识别流程图Fig. 1 Flow chart of citrus image recognition

1.1 柑橘颜色特征提取

HSV是为一种比较直观的颜色模型,在HSV颜色空间中,它的三个颜色分量之间保持相互独立,尤其是亮度改变并不会对其色调产生影响,这个特性就使得它在图像处理过程中对颜色及亮度的处理十分适合。图2(b)为柑橘的H分量的图像,可以看出柑橘果实呈现深黑色且背景较暗,不能很好地区分柑橘果实与背景;柑橘的S分量的图像如图2(c)所示,图中柑橘果实呈现为较大的白色区域,可以看出它和背景之间存在着较大的差异;图2(d)为柑橘的V分量图像,虽然显示效果较好,但是其受到光照影响较大,当光照很强或者很暗的时候,对于柑橘图像的区分就会产生困难。

(a) HSV图像

(b) H分量的图像

(c) S分量的图像

(d) V分量的图像图2 柑橘不同分量的图像Fig. 2 Images of citrus’ different components

S分量的图能够将柑橘果实从背景图像中较好地区分出来。相比于其他分量的图像来说S分量不受图像的色彩信息影响,而其饱和度和色彩分量也更为接近人对色彩的感受。因此,选择HSV颜色空间中的S分量值作为柑橘识别的颜色特征,并在后续图像处理过程中对S分量值进行一系列的处理。

1.2 柑橘图像预处理

图像预处理操作的目的是消除图像中无关的信息,恢复真实有用的信息,增强相关信息的可检测性和最大限度地简化数据,提高特征抽取、图像分割、匹配识别的可靠性[14]。本文主要用到的预处理操作有直方图均衡化和中值滤波,分别用来对柑橘图像进行增强和去噪。经过直方图均衡化的图像如图3所示。可以看出图像在经过直方图均衡化处理过后整个图像的对比度有显著提升,说明直方图均衡化可以有效提高图像品质,为后续的图像分割及边缘检测提供保证。

(a) 灰度图

(b) 直方图均衡化后的图像图3 直方图均衡化处理Fig. 3 Histogram equalization

首先通过对柑橘图像进行加噪声处理,加噪处理后的图像如图4(a)所示,其次再对加噪的图像进行中值滤波处理,经过处理过后的图像如图4(b)所示。可以看出,模糊的加噪图像经过中值滤波处理后,拥有较好的分辨率,能够满足对柑橘图像的降噪要求。

(a) 加噪处理过后的图像

(b) 中值滤波后的图像图4 滤波处理Fig. 4 Filter processing

1.3 图形分割

要应用基于阈值分割法中的最大类间差法对图像进行分析,将目标特征提取出来。最大类间方差法充分考虑了图像灰度及其像素领域之间的关系,把目标与背景之差为最大方差时的阈值作为分割阈值。其最大的优点:不需要人为设置很多参数,就能够自动选取最佳的阈值。

若柑橘图像中的像素数为ni,灰度级以及灰度范围为[0,L-1][15],则总的像素为

(1)

各个灰度值出现的概率

(2)

对于Pi,有

(3)

将图像中所有像素用初始阈值T分成A0和A1两类,定义灰度值在[0,T-1]的像素为A0,[T,L-1]的像素为A1,由此可以得到在区域A0和A1的计算公式为

(4)

(5)

两个区域A0和A1的平均灰度分别为

(6)

(7)

整幅图像的平均灰度

(8)

经最大间差法处理过后的图像如图5所示。

图5 最大类间差法Fig. 5 Otsu threshold segmentation image

1.4 边缘算子处理

对分割后的图像进行边缘检测是为了获取图像中的目标轮廓。为了便于确定后续柑橘识别的最优方案。分别采用Roberts、Sobel、Prewitt、LOG以及Canny算子对图像分割后的柑橘图像进行处理,结果如图6所示。

(a) Roberts算子处理

(b) Sobel算子处理

(c) Prewitt算子处理

(d) LOG算子处理

(e) Canny算子处理图6 五种算子的边缘检测Fig. 6 Edge detection of five operators

通过对比以上几种边缘检测算子检测到的图像,发现Roberts算子提取的柑橘图像边缘较粗且存在不同的缺失,柑橘的定位精度也不够高;Sobel算子和Prewitt算子都有着较高的定位精度;LOG算子提取出的图像定位精度较为完整,但是图像内部相对于其他算子来说有较多的干扰元素;Canny算子提取的图像具有较好的边缘完整性以及连续性。为了便于后续柑橘识别和确定最优方案。本文选定了Sobel、LOG和Canny三种算子作为柑橘图像边缘提取方法对柑橘进行边缘检测。

1.5 数学形态学运算

通过边缘算子处理后可以得到柑橘图像的轮廓,但是图像中仍然存在许多的噪声干扰,这会对后续的识别造成一定的影响,降低柑橘的识别率。因此,需要选择合适的腐蚀和膨胀结构处理单元。本文在经过多次试验后,确定了有效的数学形态学处理方案。这个方案采用先腐蚀后膨胀的处理方式,腐蚀的结构元素为4×4邻阈元素,膨胀结构元素为3×3邻阈元素,腐蚀10次,膨胀10次。最后,采用开运算去除图像中的细小结构并对孔洞进行填充[16]。处理以后得到的结果如图7所示。

图7 数学形态学处理过后的图像Fig. 7 Image processed by mathematical morphology

经过10次的膨胀腐蚀以及开运算处理以后,柑橘图像的噪声点已经很少,能够较好完成对柑橘轮廓边缘的提取,有利于提高柑橘的识别率。

1.6 Hough变换圆检测

完成对图像的预处理操作以后,通过Hough变换对柑橘的图像进行识别,将图像中某些具有特定形状的边缘轮廓连接起来,从而形成平滑的边缘[17-19]。柑橘的轮廓特征为椭圆形,较为接近圆形,因此采用Hough变化圆检测来实现对柑橘的识别。

2 试验结果

试验分为三组进行测试,每组共100张照片,且均含背光、向光两种类型,每组中背光、向光的照片数量随机分布。第一组采用单个无枝叶遮挡的柑橘果实进行采集;第二组采用单个有枝叶遮挡柑橘果实进行采集;第三组采用多个柑橘果实重叠的照片进行采集。柑橘果实照片均采用魅蓝note6进行拍摄。为了防止无关因素对试验结果的影响,将每一张图片设置为同样的参数,具体图像参数设置如表1所示。

表1 图像参数设定Tab. 1 Image parameter setting

表1中半径的大小都是根据采集得到的图片像素确定的,每一张图片的像素均为1 944×2 592。

2.1 单果无枝叶遮挡

分别用Sobel、LOG和Canny三种边缘检测算子下的Hough变换来对单个无枝叶遮挡果实进行识别,从而确定最优的柑橘识别算法,试验结果如表2所示。

表2 单果无枝叶遮挡试验结果Tab. 2 Results of the single-fruit no-branch-shade test

通过表2中的数据可以看出Sobel算子和Hough变换圆检测的方案识别时间虽然不是三组之中最快的,但是其与LOG算子与Hough变换的差距只有0.109 4 s,且Sobel算子和Hough变换圆检测的成功识别率高达97%,明显优于其他两种方案,同时在试验过程中发现无论柑橘是处于向光环境还是背光环境,均能够被正确地识别。由此说明,使用该方案无论是向光还是背光,环境对柑橘识别算法的使用影响不大。向光和背光环境下的柑橘识别结果如图8所示。

(a) 向光环境

(b) 背光环境图8 单个无枝叶遮挡的柑橘识别Fig. 8 Experimental results of citrus recognition

2.2 单果有枝叶遮挡

自然环境中,单个无枝叶遮挡的柑橘果实是一种较为理想的状态,然而柑橘的采摘环境是非常复杂的,会出现柑橘果实被枝叶遮挡以及多个果实重叠的现象。为了研究上文所确定的最优算法,对复杂情况下的柑橘图像识别的成功率进行了两组试验。随机采用100张向光、背光的单个有枝叶遮挡柑橘果实进行试验,结果如表3所示,识别结果如图9所示。可以看出,对单个有枝叶遮挡的柑橘识别成功率为90%。

表3 单果有枝叶遮挡试验结果Tab. 3 Results of single fruit with branch and leaf shading test

(a) 向光环境

(b) 背光环境图9 单个有枝叶遮挡的柑橘识别Fig. 9 Identification of a single citrus shaded by branches and leaves

2.3 多果实重叠有枝叶遮挡

随机采用100张向光、背光的多个柑橘果实重叠的照片进行识别,每张图片至少含有2个以上的柑橘果实,并且存在大量枝叶遮挡的情况。对这100张图片中的柑橘果实数量进行人工统计,柑橘果实的总数为326个。试验结果如表4所示,识别的结果如图10所示。可以看出,在多个柑橘果实重叠且有枝叶遮挡的条件下,该算法识别成功率达80.6%。

表4 多果实重叠有枝叶遮挡试验结果Tab. 4 Multiple fruit overlap with branch and leaf shading test results

(a) 三个柑橘

(b) 两个柑橘图10 多个柑橘的识别图像Fig. 10 Recognition images of multiple citrus

综合以上三组试验结果,分析部分柑橘果实图像识别失败的原因,由于柑橘并非绝对意义上的圆形,同时又存在枝叶遮挡以及多个果实重叠的现象,导致提取的目标特征并非圆形。因此,在利用Hough圆检测的时候会存在着错误识别的情况。

3 结论

本文针对柑橘采摘机器人的图像识别算法进行了设计,通过选取HSV颜色空间中的S通道分量作为柑橘的颜色特征以降低光强对柑橘识别的影响。同时,分别采用Sobel、LOG以及Canny三种不同边缘检测算子结合Hough变换对算法进行设计,最终由试验结果比较得出柑橘识别算法的最优方案。

1) 试验结果显示基于Sobel算子下的Hough变换对单个无枝叶遮挡柑橘识别的成功率最优,高达97%,该算法能够有效完成单个无枝叶遮挡的柑橘果实的识别。

2) 同等条件下对单个有枝叶遮挡的柑橘识别成功率为90%,考虑到枝叶对柑橘果实的遮挡会对图像识别产生一定影响,但仍然具有较好的识别效果。

3) 在多个柑橘果实重叠且有枝叶遮挡的条件下,该算法识别成功率达80.6%,在一定程度上能够对多个重叠柑橘果实进行有效的识别,识别率降低的原因可能是柑橘果实重叠以及枝叶的遮挡造成图像的圆形特征被破坏,导致识别率成功率下降。

猜你喜欢
背光枝叶柑橘
吃柑橘何来黄疸——认识橘黄病
枝叶
光学薄膜技术及在背光模组中的应用研究
一种用于LCD的高功率LED侧式背光系统设计
柳杉枝叶化学成分的研究
关于超薄LED背光模组设计探讨
黄花三宝木枝叶化学成分的研究
柑橘大实蝇综合治理
“五及时”柑橘冻害恢复技术
杜甫:大唐枝叶压上眉梢