利用圆预处理RGB图像对葡萄图像分割影响研究*
2021-08-13李贵宾李长勇陈立新
李贵宾,李长勇,陈立新
(新疆大学机械工程学院,乌鲁木齐市,830049)
0 引言
葡萄含有丰富的营养和独特的口感而深受消费者的喜爱,并且已经成为新疆[1]的支柱性产业之一。由于葡萄在成熟时呈现形状大小不一和采摘季节性强,直接导致采摘工作劳动强度大、效率低、人工成本高等问题[2]。因此研究自动化葡萄采摘技术对推动农业发展具有重大意义。
近些年人工智能、深度学习等相关理论的飞速发展,使得机器视觉在多个行业取得了不错的实际效果,因此绝大数与农业机器人相关的新技术正在使用图像来获取数据[3-7],使得国内外学者利用机器视觉识别葡萄,研究如何正确分割背景与葡萄串。能否正确分割葡萄串与背景将直接影响葡萄采摘作业。
葡萄串与背景有效地分割是实现葡萄采摘的关键,且国内外学者已进行多方面的研究。Ron Berenstein等[8]利用视觉对葡萄串和叶片进行分割技术研究,提出了叶片检测算法(FDA)结合葡萄集群检测算法(GDA)机器视觉算法,利用的是RGB和HSV颜色模型。Fernández等[9]利用CCD相机和滤波轮组成简易光谱相机进行图像采集,在lab空间下结合K-means 算法进行叶子、茎、枝、果实和背景分割。Reis等[10]研究利用葡萄的特定颜色把葡萄串进行分割出来。Rodrigo等[11]提出通过HOG和LBP算法结合SVM分类器提取葡萄区域。马本学等[2]利用阀值分割、形态学处理、空洞填补等步骤进行葡萄与背景分割。田锐等[12]利用图像平滑、阀值分割、形态学处理等基本图像处理技术提取出葡萄串。杨庆华等[13]利用Hough圆检测进行葡萄区域提取。罗陆锋等[14-16]利用HSV模型中的H分量进行葡萄和背景的分割。
根据上述学者的研究现状,可知部分学者利用传统方法需经过复杂的步骤才能得到正确的分割结果,部分学者利用深度学习进行分割,虽然得到较好的分割效果,但是前期须要准备大量的样本和模型的训练,而模型训练对计算机的要求较高,这无疑提高了研究成本。针对上述的缺点和葡萄所处的环境,本文将以田间环境下红葡萄中的红提葡萄为研究对象,选择阴影下的、葡萄串表面有明显反光的、葡萄串表面无明显反光的葡萄串,研究利用圆预处理葡萄串的RGB图像参数方法,再结合直方图进行葡萄串与背景的分割,为葡萄采摘机器人准确识别及定位葡萄串提供良好的数据支撑。
1 材料与方法
1.1 图像采集
本文试验对象是在乌鲁木齐市三坪农场的葡萄种植园中采集的红提葡萄图像,采集时间为2019年9月份下旬。采用COMS摄像头采集样本,采集样本时应使葡萄占据视野的80%~90%区域,采集的样本有生长在葡萄藤阴影下的葡萄(即无太阳直接照射的葡萄)50张、表面有明显反光的葡萄(即太阳直接照射且表面有明显反光的葡萄)50张、表面无明显反光的葡萄(即太阳直接照射且表面无明显反光的葡萄)50张。
1.2 图像颜色特性
葡萄图像中含有土地、枝干、叶子和蓝天4种背景信息,其中枝干和葡萄的颜色较为相近。由于葡萄是藤本植物,生长时需建立支架,而新疆多以篱架为主,如图1所示,因此在一天中由于太阳的方位变化而引起葡萄串上面的反光不同,为了满足葡萄采摘机器人的采摘需求,需对葡萄串表面含有不同反光的情况进行准确分割,如图2~图4所示的葡萄串。
图1 篱架为主的种植模式Fig. 1 Hedge-based planting
图2 太阳直接照射且表面有明显反光Fig. 2 Direct sunlight and obvious reflection
图3 太阳直接照射且表面无明显反光Fig. 3 Direct sunlight and no obvious reflection
图4 无太阳直接照射Fig. 4 No direct sunlight
2 利用圆预处理RGB图像算法
目前常用的两种COMS摄像头分别是彩色摄像头和灰度摄像头,由于从彩色图像中可以获得更多背景与葡萄串的信息量,所以本文以彩色COMS摄像头采集的RGB图像为基础,将RGB三通道的参数(下文称RGB参数)转换成圆的参数(半径和圆心坐标)作为葡萄和背景分割的基础数据。圆的三个参数由RGB参数计算出,只要RGB参数的其中一个参数发生变化,就会引起圆的三个参数发生变化。本文将研究圆的参数随RGB参数变化而变化的规律。
2.1 利用圆预处理RGB图像算法原理
首先将RGB图像各通道参数进行归一化处理,如式(1)所示,然后进行搜索每个像素点所含参数的最小值,如式(2)所示,再把各通道的参数减去最小值,如式(3)所示。此时得到的参数用于求圆参数的初始数据。根据二维平面内任意不共线的三点可确定一个圆的定理,令式(3)得到的三个参数传入三个点中,充当纵坐标的值,如式(4)所示。
(1)
式中:W——图像的宽度;
H——图像的高度;
B——RGB彩色图像的蓝色通道;
G——RGB彩色图像的绿色通道;
R——RGB彩色图像的红色通道;
ck——k通道参数归一化结果。
m[i,j]=min(cB[i,j],cG[i,j],cR[i,j])
(2)
式中:cB——蓝色通道参数归一化结果;
cG——绿色通道参数归一化结果;
cR——红色通道参数归一化结果。
ek[i,j]=ck[i,j]-m[i,j]
k=B,G,R;(i,j)∈(W,H)
(3)
式中:ek——k通道参数与最小值的差值;
m——蓝色、绿色、红色三个通道中在其像素点的最小参数。
yk[i,j]=ek[i,j]
k=B,G,R;(i,j)∈(W,H)
(4)
式(3)得到新的三个参数均是小于等于1,为了避免圆的参数分布较广,设定三个求圆所需点的横坐标分别为x1=0.5、x2=1、x3=1.5,此时得到一组坐标点,即(0.5,yB[i,j])、(1,yG[i,j])、(1.5,yR[i,j]),由此组坐标根据式(5)计算圆的参数,经推导得出式(6)。
l=1,2,3;k=B,G,R;(i,j)∈(W,H)
(5)
式中:r0——圆的半径;
x0——圆心横坐标;
y0——圆心纵坐标。
(6)
利用式(6)可对RGB图像进行参数转换,把蓝色、绿色、红色三个通道参数转换成半径r0、圆心坐标x0、y0三个参数。为了便于表述,下文均用r、x、y分别代替r0、x0、y0。
2.2 圆参数的特性
利用式(6)对彩色图进行参数转换,得到的r、x、y三个参数用直方图表示出来,探讨三个参数随着颜色亮度变化的规律。
首先对单色渐变的情况下按照单通道有值、两通道有值和三通道有值的情况进行试验。单通道有值时试验得出的直方图如图5所示。从图5可见单通道有值且发生变化时,r和y都随着亮度变化而变化,x参数不随颜色的亮度变化而变化。当目标区域只含RGB三原色中一种颜色,对其区域分割时可利用x参数进分割处理。
图5 单通道有值且颜色渐变Fig. 5 Single channel value gradient
两通道有值时,利用控制变量的思想,设定两通道的参数相同、两通参数等比例(比例为2)变化三组试验,试验的结果如图6所示。从图6可见当两通道有值时,圆心的x参数最集中,其次是y参数,最后是r参数,从侧面反映出x参数受颜色亮度影响更小。因此当目标区域中某一通道无值时可以利用x参数作为分割的基础数据,并且可以结合y参数提高分割效果。
图6 两通道有值且颜色渐变渐变Fig. 6 Two-channel value gradient
三通道有值时,利用控制变量法,进行两通道等值与第三通道等比变化、三通道等比变化、三通道等值三组试验。由于三通道参数相等时,过三点的圆弧呈现直线,得到的圆的半径为无穷大,因此不进行三通道等值情况的试验。试验结果如图7所示。从图7可见当三通道都有值时,圆心y参数和x较为集中,其值受颜色亮度影响较小。当目标区域中三通道都有值时可以利用x和y参数作为分割的基础数据。
当图像中有多色时,利用控制变量法,进行图像中有两种颜色和图像中有多种颜色的两组试验,试验结果如图8和图9所示。
图7 三通道有值且颜色渐变Fig. 7 Three-channel value gradient
图8 图像中有两种颜色Fig. 8 Two colors in the image
从图8和图9的两组试验结果显示出图像中存在多种颜色时,y参数表现出参数集中且有明显的分界,x参数有参数集中且有一定的分界趋势,r出现全部聚集到一定值的范围内,因此在图像中含有多种颜色时,可以利用x和y两个参数分割出感兴趣区域。从图9可见直方图的峰的数量不等于颜色数量,因此本文提出的方法不适用对相近的几种颜色做分割任务。
将以上几组试验进行对比,x和y两个参数在颜色亮度发生变化时波动很小,尤其是当图像中含有多种颜且每种颜色含有多种亮度时,可以利用x和y两个参数进行前景与背景的分割任务。从图8和图9的试验结果可以看出本文提出的方法不适用对相近颜色的分析。
图9 图像中有三种颜色及以上Fig. 9 Three colors and above in the image
3 葡萄串分割试验
试验对象分别为无太阳直接照射的葡萄串、表面有明显反光的葡萄串、表面无明显反光的葡萄串,以上葡萄串均为红提葡萄。
在葡萄串图像参数转换之前先对红提葡萄的颜色进行分析,随机选取4种亮度不同且图像中只含葡萄的图像进行通道分离,观察红提葡萄是否属于三通道有值合成颜色。为了更好展示结果,从每一类图像的通道分离结果中随机取出一组进行展示,如图10所示。由图10可见红提葡萄随着光照强度不同时,RGB三通道没有出现某个通道没值的情况,因此红提葡萄的颜色是由三个通道的值合成的。
将用圆的x、y参数结合直方图进行葡萄串与背景分割试验。由于HSV模型中的H通道由主色调组成,并且与白光源中的高光无关[17],再者生长在自然环境下的葡萄存在高光环境,因此利用HSV模型中H参数结合直方图进行葡萄串分割作为对照组1。Lab模型在利用视觉处理果蔬时有较好的效果,因此下文用a参数结合直方图进行葡萄串分割作为对照组2。试验用到的葡萄串图像如图11所示。
(a) 原图图10 对彩色图像进行RGB颜色通道分离的结果图Fig. 10 Result image of RGB color channelseparation of color image
(a) 葡萄串表面无明显反光
(b) 无太阳直接照射的葡萄
(c) 葡萄串表面有明显反光图11 试验图像Fig. 11 Experimental image
3.1 对表面无明显反光的葡萄串分割的影响
根据第1节得出的方法和葡萄颜色合成特征可知:利用x和y参数作为分割的基础数据可得到较好地分割效果,因此比较x,y,H,a的四个参数的直方图,如图12所示。
从图12可以看出,y、H、a三个参数都有明显的双峰状态,其中x参数的双峰效果最差,y参数的双峰效果最好。x参数的双峰位置较近,几乎呈现单峰状态。由于图像中前景葡萄,颜色较为统一,背景主要为叶子,颜色也较为统一,因此图像中主要颜色为叶子的颜色和葡萄的颜色,正是对应多直方图中出现的两个峰,因此可利用两峰之间的值作为葡萄串与背景分割的阈值,其分割的效果如图13所示,图13(a)是利用x、y两个参数进行分割效果,图13(b)是利用H参数进行分割效果,图13(c)是利用a参数进行分割效果。
图12 各参数的直方图Fig. 12 Histogram of each parameter
(a) 用x、y参数分割结果
(b) 用H参数分割结果
(c) 用a参数分割结果图13 葡萄串区域分割结果Fig. 13 Segmentation results of grape clusters
本文提出的方法比利用HSV模型中的H参数在色差较大的地方处理效果比较好,比如可以区分蓝色分量含量较高的区域(图14(a)~图14(d)),可以降低噪声区域面积。与利用Lab模型中的a参数分割结果比较,本文提出的方法在相近的颜色区域分割效果较好,比如区分枝干、枯萎叶片与葡萄串(图14(e)~图14(h))。将图13分割结果利用像素点个数统计分割结果,如表1所示,直观展现出利用x、y参数分割正确率较高,达96.7%。当然本文提到的算法也有一定的缺点,与利用HSV模型中的H参数分割结果比较,把葡萄串中光线较暗的区域当作非葡萄区域处理,但是在这张图的该区域恰巧存在两个葡萄串相贴的区域,对后期有一定的益处;与Lab模型相比较,对未熟的葡萄较为敏感,因为未熟的葡萄呈现的颜色中绿色通道的参数较大,易被当作叶子处理。
(a) 用x、y参数分割结果
(b) a图中的局部放大图
(c) 用H参数分割结果 (d) c图中的局部放大图
(e) 用x、y参数分割结果
(f) e图中的局部放大图
(g) 用a参数分割结果
(h) g图中的局部放大图图14 分割结果的细节比较图Fig. 14 Detailed comparison chart of segmentation results
表1 图13的像素点统计表Tab. 1 Pixel statistics table in Figure 13
3.2 对无太阳直接照射的葡萄串分割的影响
本节试验依然用x、y参数结合直方图进行葡萄串与背景分割,对照组是HSV模型中的H参数和Lab模型中的a参数结合直方图进行葡萄串与背景分割。先把各参数显示成直方图,如图15所示。
图15 各参数的直方图Fig. 15 Histogram of each parameter
从图15可以看出,四个参数的双峰效果都比较好,并且各参数较为稳定,因此对无太阳直接照射的葡萄串分割效果比对阳光直接照射的葡萄串分割效果好。四个参数相比较时,依然是y参数表现的双峰较为明显,并且两峰之间有明显的分界线,其次是H参数的双峰效果较好。利用峰与峰之间的低谷值进行图像中的葡萄区域分割,分割结果如图16所示,图16(a)是利用x、y两个参数结合直方图的分割效果,图16(b)是利用H参数结合直方图的分割效果,图16(c)是利用a参数结合直方图的分割效果。
(a) 用x、y参数分割结果
(b) 用H参数分割结果
(c) 用a参数分割结果图16 葡萄串区域分割结果Fig. 16 Segmentation results of grape clusters
由图16可见利用x、y参数在颜色相差较大的区域进行葡萄串分割比H参数分割能力强,在相近的颜色区域进行葡萄串分割比a参数分割能力强。将图16分割结果利用像素点个数统计分割结果,如表2所示,直观展现出利用x、y参数分割正确率较高,达98.1%。
表2 图16的像素点统计表Tab. 2 Pixel statistics table in Figure 16
3.3 对表面有明显反光的葡萄串分割影响
对图11(c)参数转换,分别用直方图展示x、y、H、a四个参数的分布情况,如图17所示。
图17 四个参数的直方图Fig. 17 Histogram of four parameters
从图17可以看出,各参数展现出的双峰效果比上两组试验较差,其中a参数的双峰效果最差,几乎成为一个峰,根据图17中的直方图分割图11(c)中的葡萄串与背景。分割效果如图18所示。
(a) 用x、y参数分割结果
(b) 用H参数分割结果
(c) 用a参数分割结果图18 葡萄串区域分割结果Fig. 18 Segmentation results of grape clusters
从图18可见,无论是哪种方法分割的葡萄串区域效果都较差,用H参数分割效果相对较好,用x、y参数的分割效果最差。对图18分割结果统计正确和错误像素点的情况,如表3所示。通过表3直观展现出利用x、y参数分割正确率最低。由试验结果可以看出本文提出的方法不适用表面有较强反光的葡萄串与背景分割。
表3 图18的像素点统计表Tab. 3 Pixel statistics table in Figure 18
4 结论
1) 针对由于光照方向不同引起葡萄串表面颜色发生变化引起葡萄串分割困难的问题,从颜色合成的特征出发,利用圆转换RGB图像的三通道参数,并进行分割对比试验。对葡萄串表面无明显反光的葡萄串、无太阳直接照射的葡萄串进行分割,分割正确率分别是96.7%、98.1%,利用H参数、a参数对表面无明显反光的葡萄串图像的分割正确率分别为96.0%、95.1%,对无太阳直接照射的葡萄串图像的分割正确率分别为94.1%、97.6%。结果表明对葡萄串表面无明显反光的葡萄串图像和无太阳直接照射的葡萄串图像处理时,本文方法分割效果优于HSV模型和Lab颜色模型。但是本文方法对葡萄串表面有明显反光的葡萄串分割效果较差,本文的方法不适用葡萄串表面有明显反光时的分割。
2) 通过本文的方法为葡萄分割提供良好的数据支撑,本研究接下来将其转变成颜色模型,为葡萄高效率采摘提供良好基础。