基于轮廓固性与分水岭算法的叶片粘连雾滴图像分割*
2023-07-11葛翔陆军曹冬林金天澍
葛翔,陆军,曹冬林,金天澍
(1.上海电机学院机械学院,上海市,201306;2.樱田农机科技(泰州)有限公司,江苏泰州,225506;3.浙江省慈溪市观海卫镇农业农村办公室,浙江宁波,315315)
0 引言
植保作业时喷洒的药液雾滴颗粒群会在作物叶片表面发生叠加、凝并、碰撞、破碎等动力学事件,其中部分雾滴颗粒会形成粘连雾滴,直接影响沉积分布和施药效果。叶片粘连雾滴的数目和分布,是计算雾滴覆盖率、沉积密度、分布均匀性等喷雾作业质量参数的重要依据[1-2]。有效辨识叶片粘连雾滴可提高雾滴沉积分布检测的准确性,开展叶片粘连雾滴图像分割与算法研究,对提升植保机械精准施药技术水平具有重要意义。
目前对于田间雾滴沉积参数的测定主要分为直接法和间接法。直接法一般运用化学试剂代替农药进行喷洒后,测量洗脱溶液中物质的浓度来计算沉积量。还包括对叶面的示踪剂运用图像处理算法直接进行检测等方法。Kumar等[3]应用改进的表面增强拉曼散射法,检测并追踪出水果表面上的福美双农药沉积覆盖情况。祖琴等通过分析洗脱溶液的荧光光谱特性等进行沉积量的分析。间接法一般利用油盘、水敏试纸和传感器等来代替叶片进行沉积参数检测。袁会珠等[4]论述了雾滴粒径大小、覆盖密度与杀虫剂、杀菌剂和除草剂药效之间的关系,进而分析了农药雾滴致死中密度以及雾滴杀伤面积/杀伤半径。李民赞等[5]设计了一种基于水性丙烯酸树脂和数字图像处理技术的无人机喷雾质量检测系统。利用水性丙烯酸树脂遇水变色反应,将其制成雾滴采样模块,并对雾滴采集装置上的雾滴图像进行获取,随后利用数字图像处理技术计算得出雾滴参数。Kesterson等[6]基于介电理论设计了一套检测喷雾雾滴沉积的电子传感器和数据采集系统,通过分析不同的雾滴和系统输出电压的关系确定了在不同温度下雾滴的大小对系统电压输出的影响,实现了对喷雾雾滴的沉积量和尺寸的检测。吴亚垒等[7]提出了改进的粘连雾滴判断方法,利用迭代开运算标记的分水岭分割算法,并对分割后的雾滴进行圆整,更加快速且准确地对水敏试纸上的粘连雾滴进行了识别与分割。曹军琳等[8]采用超红算子与OTSU算法(最大类间方差法)相结合,将叶片裁剪固定的大小后,模拟田间喷雾对叶片直接进行喷洒,研究叶片表面形态特征等因素对雾滴沉积分布的影响。李睿等[9]采用阈值边缘提取和HSV(Hue(色调),Saturation(色饱和度),Value(明度))颜色模型相结合的算法,对完整作物叶片模拟喷雾后进行研究,较好地反映出整个叶面积的雾滴覆盖率情况。
雾滴沉积的图像检测主要分为雾滴区域识别和粘连雾滴判断及分割。其中最难的部分是粘连雾滴的分割。目前针对粘连雾滴的分割有多种方法,其中形态学分割算法[10]适用于简单粘连图像的分割,对于粘连较复杂的雾滴分割效果较差。凹点匹配分割算法[11-12]虽然效果较好,但凹点的寻找和凹点的匹配都是较复杂的过程。分水岭分割算法[13-14]能适用于不同粘连程度的物体分割,也比凹点匹配法实现简单,但传统分水岭分割算法存在严重的过分割和欠分割问题[15]。目前针对此问题常用的改善方法主要有在分割之前对分割区域进行前景和背景的最大、最小值标记和在分割之后按一定的合并规则对相似区域进行合并[16]。
虽然水敏试纸可反映出植保器械作业后的田间喷雾状况,但无法准确反映雾滴在作物表面的沉积分布。由于缺乏叶片粘连雾滴有效辨识方法,目前叶面雾滴沉积图像检测的准确率不高,现有文献关于叶面粘连雾滴图像识别及动态检测的研究报道较少。为提高叶面雾滴沉积分布检测的准确性,本文采集9组植保作业喷雾图像,进行叶片区域和雾滴区域特征提取和预处理,提出基于雾滴轮廓固性的雾滴类型判别方法,并以粘连雾滴迭代开运算的结果作为标记,通过改进传统距离变换分水岭图像分割算法,对叶面雾滴沉积分布特性进行检测。
1 材料与方法
1.1 材料与设备
食品添加着色剂(胭脂红),新鲜鸡毛菜叶片(为保持叶片新鲜,均在采摘后2 h内进行试验)。
背负式电动喷雾机(ZS型,工作压力0.2~0.6 MPa,额定电压12 V);该款喷雾机自带雾化喷头(雾化角90°);智能手机(摄像头为1 200万像素);手机固定支架;标定板;背景板。
1.2 试验方案
用胭脂红染色剂和水配置成质量分数为2%的胭脂红溶液代替农药,经过前期对多种蔬菜叶片的预实验,发现鸡毛菜叶片对于质量分数为2%的胭脂红溶液的对比效果较好,故采用鸡毛菜叶片进行试验。图像采集时,智能手机固定在垂直高度不变,可水平旋转的支架上,与叶片保持平行,并利用标定板矫正镜头畸变和计算雾滴实际大小。在晴朗天气户外背阴处,通过喷雾机模拟作业,从鸡毛菜叶片上方60 cm处向下喷洒,如图1所示,调整喷头雾锥中心与叶片的距离,使雾滴与叶片的碰撞角度约为90°、50°和10°。采集图像以JPG格式保存,再利用Matlab R2019a软件进行图像处理,通过提出的粘连雾滴识别算法和改进的分水岭算法获得叶片雾滴沉积参数,并与人工统计结果相比较。
图1 试验方案示意图Fig.1 Schematic diagram of test scheme1.背景板 2.智能手机 3.喷雾机 4.支架 5.标定板 6.叶片
1.3 雾滴沉积特性参数表示方法
1.3.1 雾滴覆盖率计算
雾滴覆盖率(spray coverage)表示常规量雾在作物叶面上覆盖药液的面积占叶面总面积的百分比,如式(1)所示。
(1)
式中:C——雾滴覆盖率,%;
Ad——雾滴区域面积,像素;
Al——叶片区域面积,像素。
1.3.2 雾滴沉积密度计算
雾滴沉积密度(droplet deposition density)表示低量喷雾和超低量喷雾沉积在作物单位面积上的雾滴数,如式(2)所示。
(2)
式中:I——雾滴沉积密度,个/cm2;
N——雾滴总数,个;
M——叶片实际面积大小,cm2。
1.4 图像处理算法
叶片图像经以灰度闭运算为基础的雾滴区域提取算法、基于固性的雾滴类别判断算法和改进的分水岭分割算法即可得到雾滴沉积参数。整体流程如图2所示。
图2 整体流程图Fig.2 Overall flow chart
1.4.1 图像预处理
对采集的图像进行处理前通常要进行平滑除噪等图像增强操作,不仅能去除不必要的噪声,还能对所需要处理的图像中的特征进行加强,以便于对图像更好地处理[17]。本文首先采用模板为3×3的高斯滤波器和彩色图像直方图增强进行预处理,在去除噪声的同时,增加图像对比度,提高图像提取的效率。
1.4.2 叶片区域提取
对采集的雾滴图像进行不同颜色空间的分析后发现HSV颜色空间中的V分量叶片区域与背景对比最明显,且直方图分布符合OTSU算法要求,故选择其经OTSU法二值化后的图像作为叶片区域。
1.4.3 雾滴区域提取
进行图像灰度化时,在RGB(Red(红色分量),Green(绿色分量),Blue(蓝色分量))颜色空间中,用R分量减去G分量能在不显示叶片轮廓及叶片脉络的情况下,单独显示出完整雾滴图像,因此本文选用R分量减去G分量得到的图像作为雾滴灰度图f进行下一步处理。
图像处理中的形态学不仅可以对二值图像进行处理,还可以扩展到灰度图像中。但与二值图像的形态学处理又存在区别[18]。灰度腐蚀可以增强灰度图中的阴暗细节,灰度膨胀可以增强灰度图中的明亮细节[19]。
灰度图二值化步骤如下:(1)选择半径为5,高度为5的球形结构元素,对原灰度图像f进行灰度闭运算后得到图像f1;(2)将得到的图像f1与图像f进行“异或”操作,得到操作(1)的变化结果图像f2;(3)经1.4.2节的方法处理得到叶片轮廓图f3;(4)对f3依次进行“取反”和“孔洞填充”操作得到图像f4;(5)选择半径为5的圆盘型结构元素,依次对图像f4进行开运算和闭运算,得到图像f5;(6)将图像f2和图像f5进行“位与”操作,得到去除叶片外区域的图像f6;(7)用f6经“孔洞填充”处理后得到图像f7;(8)用图像f7与图像f6进行“异或”操作得到雾滴图像f8;(9)选择半径为2的圆盘型结构元素,进行“开操作”,去除微小噪点,得到最终雾滴图像f9。流程图如图3所示。
图3 雾滴区域提取流程图Fig.3 Flow chart for spray droplet area extraction
通过对二值图的分析,发现只提取了轮廓全部在叶片内部的雾滴图像,对于在叶片边缘的雾滴,因为叶片边缘分开求取,导致这些雾滴轮廓处于叶片边缘的部分没有被提取到,从而使在孔洞填充时无法填充,雾滴图像提取不全,如图4所示,因此本文采取对叶片内部雾滴区域和叶片边缘雾滴区域分开提取的方法。
(a) 叶片边缘部分图
1) 内部雾滴区域提取:按上文方法提取出叶片内部雾滴图像。
2) 叶片边缘雾滴区域提取:结合上文内部雾滴区域提取,叶片边缘雾滴区域提取步骤如下:(1)首先对图像f5进行轮廓提取,得到图像f10;(2)将图像f10和图像f6进行“或”运算得到图像f11;(3)对图像f11依次进行“取反”操作和“孔洞填充”操作,接着与图像f5进行“与”运算,再去除最大连通域,得到单独的叶片边缘雾滴图像f12;(4)将图像f12与图像f9进行“或”运算,得到完整的总雾滴图像f13。流程图如图5所示。
图5 叶面边缘雾滴区域提取流程图Fig.5 Flow chart for spray droplet area extraction on the edge of the leaf
1.4.4 粘连雾滴判断及分割
目前水敏试纸图像处理中常基于圆形度和形状因子来判断雾滴图像是否粘连,但水敏试纸表面光滑,而叶片表面存在复杂的脉络,导致雾滴形状也非常复杂,因此这两种方法对于叶片雾滴类别判断并不完全适用。而固性表示物体的形状面积与包含物体形状的最小凸多边形面积的比值,描述物体形状复杂程度更为精确。
1) 粘连雾滴判断。本文采取雾滴轮廓固性是否大于0.9作为单独雾滴或粘连雾滴分类依据,小于0.9的为粘连雾滴,大于等于0.9的为单独雾滴。并与水敏试纸判断雾滴类别常用的圆形度和形状因子参数进行对比,其计算方法分别如式(3)~式(5)所示。
(3)
式中:F——雾滴的固性;
S——雾滴面积,像素;
S0——包含雾滴最小凸边形面积,像素。
(4)
式中:Y——雾滴圆形度;
Dmax——雾滴轮廓上的点到雾滴质心的最大距离,像素。
(5)
式中:D——雾滴形状因子;
P——雾滴周长,像素。
2) 改进标记距离变换分水岭分割。本文利用雾滴轮廓固性<0.9的分类依据提取出粘连雾滴图像,对其进行循环迭代开运算。设初始圆形结构元素半径r0=1进行开运算,提取出开运算后得到的单独雾滴图像,合并到原单独雾滴图像中,再对剩下的粘连雾滴图像以半径为r1=r0+1(此时r1=2)再次进行开运算,同样提取单独雾滴图像,重复以上步骤,直至无新增的单独雾滴图像,最后进行汇总合并,即可得到粘连雾滴经循环迭代开运算后得到的图像,流程如图6所示。
图6 粘连雾滴循环开运算流程图Fig.6 Flow chart of cyclic opening of adhesive spray droplets
距离变换是分水岭分割中的一个常用工具,它以二值图中每个像素到最近非零值像素的距离为灰度图的灰度值,将二值图变为灰度图[20]。距离变换的种类很多,有欧式距离、城区距离和棋盘距离等。本文采用最常用的欧氏距离并根据距离变换图灰度值的最大值和最小值对其进行归一化处理,这可以避免某些与其他数据差异过大的值带来的误差[21]。
本文采用粘连雾滴经迭代开运算获得的图像对距离变换图进行标记,然后对标记过的距离变换图进行分水岭分割,再将脊线叠加至原图中,完成对粘连雾滴的分割。统计所有雾滴个数,再除以叶片实际面积,即可得到雾滴沉积密度。
2 试验结果分析
在获得的叶片样本图像中,根据人工统计得到的雾滴密度大小,分为稀疏、适中、密集3组,每组各挑选3个叶片样本进行统计分析,如图7所示。其中,稀疏组雾滴密度K<30,碰撞角度α=90°;适中组雾滴密度30
图7 选取的叶片样本Fig.7 Selected leaf samples
2.1 雾滴覆盖率检测
2.1.1 雾滴区域提取算法对比
1) 雾滴图像灰度化算法对比。在RGB颜色空间中,分别运用对绿色植物图像提取效果较好的超绿特征算法2G-R-B和对红色雾滴图像提取效果较好的超红特征算法2R-G-B进行灰度化。对比1.4.3节中提及的灰度化算法,运用超绿特征算法2G-R-B不能很好地将雾滴图像和叶片脉络图像分开,而超红特征算法2R-G-B虽然效果好于超绿算法,但仍显示出部分叶片区域,提取效果不如本文算法,如图8所示。
(a) 原图
2) 雾滴图像二值化算法对比。将1.4.3节中雾滴图像二值化算法与原灰度图直接经OTSU算法和分块阈值算法转化后的二值图进行对比,如图9所示。
(a) 灰度图
从图9可以明显地观察到本文算法更加准确地提取了雾滴图像。对所选取的9个样本从稀疏1到密集3分别编为1~9号,进行雾滴类型判别时间比较,每种方法选取3次判别时间,取平均值,如图10所示。虽然本文算法所用时间长于其他两种算法,但雾滴识别效果优于其他两种算法且能满足实际应用需求。
图10 不同算法识别时间对比Fig.10 Comparison of recognition time of different algorithms
3) 雾滴图像提取正确率对比。对各个叶片样本雾滴提取图像中未提取或提取不全的雾滴个数通过Photoshop进行人工统计对比验证,以未提取或提取不全的雾滴数除以人工统计得到的总雾滴数计算出雾滴提取正确率,如表1所示。
表1 雾滴提取正确率Tab.1 Correct rate of droplet extraction
由表1可以看出,本文算法雾滴提取平均正确率为97.23%,正确率最低的样本是适中3,为91.19%,最高的是密集1,为99.73%。对比样本适中3和样本密集1的图片,分析差异原因,可以明显看出样本密集1的图像亮度高于样本适中3,且样本密集1的图像亮度几乎高于其他所有样本图像的亮度,因此,可以得出在进行图像采集时,保证样本图像有充足的亮度可以提升雾滴识别的正确率。
2.1.2 雾滴覆盖率对比
以本文所述算法为基准,分别采用OTSU法和分块阈值法对选取的9个叶片样本进行覆盖率求取比较,结果如表2所示。
表2 雾滴覆盖率检测结果Tab.2 Test results of droplet coverage %
由表2可以看出,本文算法检测出的雾滴覆盖率高于OTSU法和分块阈值法检测出的雾滴覆盖率,以本文算法结果为基准,这两种算法与本文算法的雾滴覆盖率相对误差a和b的平均值分别为31.93%和33.43%。尤其对于适中1,三种算法得到的覆盖率相差最大,本文算法对其他两种算法分别提高了10.45%和9.59%,如图11所示,主要的影响因素有两点,一是因为图像亮度不均。二是由于发生在叶片表面的铺展和蒸发行为。雾滴落到叶片后会向叶面脉络凹处聚集,并在流经处留下痕迹,颜色淡得多,这一点也是水敏试纸等替代材料无法表现出的。但本文所采用的雾滴区域提取算法可以在提取正常雾滴区域的同时,兼顾到这一类颜色较浅区域的提取问题,降低了亮度不均的影响,提高了叶面雾滴区域的提取效果。
(a) 适中1
2.2 雾滴类型判别结果比较
2.2.1 雾滴类型判别准确率比较
在叶片样本上各取100个肉眼可见的粘连雾滴和单独雾滴,对其进行参数统计分析,如图12所示。
(a) 单独雾滴圆形度分布
对于单独雾滴,基于圆形度判断,准确率为53%;基于形状因子判断,准确率为86%;基于固性判断,准确率为96%。经分析发现,错分类型的雾滴均受叶片表面形貌影响,沿叶片脉络发生了一定程度的铺展行为,雾滴轮廓多为长条形,以单独雾滴第21号为例,如图13(a)和图13(b)所示,导致了其雾滴参数与常规雾滴存在差异。
(a) 第21号单独雾滴
对于粘连雾滴,三个参数分布跨度均存在一定规则,圆形度都在0.6以下;形状因子基本都在0.8以下,只有粘连雾滴第68号的形状因子>0.8;固性基本都在0.9以下,同样只有粘连雾滴第68号的固性>0.9,其图像如图13(c)和图13(d)所示,可以看出其粘连程度较高,属于强粘连雾滴,故对其按形状参数分类难度较高。
综合各参数对单独雾滴和粘连雾滴分类结果,以错分雾滴数除以总雾滴数可以得出,基于圆形度的雾滴类型判别方法准确率为76.5%,基于形状因子的雾滴类型判别方法准确率为92.5%,基于固性的雾滴类型判别方法准确率为97.5%。因此,本文采取雾滴轮廓固性是否>0.9作为单独雾滴或粘连雾滴分类依据,效果好于基于圆形度和基于形状因子的分类方法。
2.2.2 雾滴类型判别时间比较
根据上文所述基于雾滴轮廓的圆形度、形状因子和固性3种叶片雾滴类型判别方法,对所选取的9个样本从稀疏1到密集3分别编为1至9号,进行雾滴类型判别时间比较,每种方法选取3次判别时间,取平均值,如图14所示。可以看出,基于形状因子和固性这两种判别方法对于9个样本的雾滴类型判别时间均相差不大,总体上基于固性的判别方法略优于基于形状因子的判别方法。基于圆形度的判别方法对于9个样本中每一个样本的雾滴类型判别时间均明显大于另外两种判别方法。对于3种判别方法所需时间随着雾滴密度的增加,总体趋势都是增加的。结合2.2.1节中对三种方法雾滴类型判别准确率的比较,可以得出,基于固性的叶片雾滴类型判别方法不仅在准确率,同时也在判别时间上优于其他两种方法,可以作为叶片雾滴类型判别方法的参考。
图14 不同方法雾滴类型判别时间比较Fig.14 Comparison of different methods of droplet type discrimination time
2.3 雾滴沉积密度检测
2.3.1 粘连雾滴分割时间
对所选取的9个样本从稀疏1到密集3分别编为1至9号,通过本文分割算法进行分割时间统计,进行相同条件的3次分割,取3次分割平均时间,依次为0.825 s、0.552 s、0.356 s、0.899 s、0.461 s、0.617 s、1.073 s、0.876 s和0.873 s。分割时间有随雾滴密度增加而增加的趋势,但总体耗时较少。
2.3.2 粘连雾滴分割对比
对本文分割算法展开分析,发现仍有部分粘连雾滴未能成功分割或分割线不在雾滴粘连处的情况,通过Photoshop人工统计粘连雾滴分割效果,如表3所示。
表3 本文算法粘连雾滴分割效果统计Tab.3 Statistics of segmentation effect of adhesive droplets in this algorithm
粘连雾滴分割平均错分率为5.26%,其中分割效果较差的是样本适中1和样本密集2,错分率分别为8.97%和8.64%。经观察发现,样本适中1中,有较多雾滴沿着叶片脉络发生了铺展行为,轮廓多为长条状,当周围有雾滴与之粘连时,粘连部分的大小甚至与雾滴的直径相当,故难以将其分割开来。样本密集2中存在较多细小粘连雾滴,粘连程度很高,故同样难以对其进行分割。
2.3.3 雾滴沉积密度对比
将改进分水岭算法与传统距离变换分水岭算法分割后的图像进行比较,如图15所示,可以看出改进分水岭算法有效地改善了过分割的情况。
(a) 粘连雾滴图
计算9个叶片样本的雾滴沉积密度,并分别与通过Photoshop人工统计粘连雾滴分割的结果对比分析,如表4所示。由表4可以看出,与人工统计相比,传统距离变换分水岭分割算法的相对误差c较大,不能满足实际需求,而本文改进标记距离变换分水岭分割算法的相对误差d的平均值为6.61%,最小值为4.18%,最大值为8.27%,效果明显好于传统距离变换分水岭分割算法。
表4 雾滴覆盖密度检测结果Tab.4 Test results of droplet coverage density
3 结论
1) 叶片上染色剂颜色较浅区域的图像特征,通过比较灰度闭运算前后的差异来进行区域提取,雾滴提取最低正确率为91.19%,平均正确率为97.23%,满足实际需求,且雾滴覆盖率结果比OTSU法和分块阈值法分别相对提高31.93%和33.43%,提取效率显著提升。
2) 在进行叶面雾滴沉积参数统计时,提出了以雾滴轮廓固性是否大于0.9作为雾滴的分类依据和判别方法,小于0.9的为粘连雾滴,小于等于0.9的为单独雾滴。结果表明该判别方法准确率高达97.5%,固性大小可作为叶面粘连雾滴判断依据。
3) 针对传统距离变换分水岭分割算法存在严重欠分割和过分割的问题,采用了基于迭代循环开运算标记的改进距离变换分水岭分割算法,雾滴覆盖密度与人工统计的平均相对误差为6.61%,显著地改善了传统距离变换分水岭分割算法的局限性分割问题,且雾滴分割最低正确率为91.03%,平均正确率为94.74%,分割误差较小。
综上所述,本文针对叶片粘连雾滴辨识提出的雾滴沉积特性参数图像检测算法,可以满足常规植保作业雾滴覆盖率及沉积密度检测的需求,但还需深入研究户外强光反射、药液蒸发等对雾滴图像提取的影响,以提高检测的准确性和实效性。