1种基于全局对比度的害虫收集方法
2021-04-21柳懿祥汪杭军徐铁平
柳懿祥,汪杭军,徐铁平
(1. 浙江农林大学 信息工程学院,浙江 杭州 311300;2. 浙江农林大学 暨阳学院,浙江 诸暨 311800;3. 诸暨农业农村局,浙江 诸暨 311800)
现代农业和林业害虫给粮食安全带来严重威胁,每年产生巨大的经济损失[1]。准确地监测害虫数量变化,预测害虫爆发趋势,可为害虫管理行动提供可靠依据和正确管理方法[2-3]。近年来,出现了许多用于虫害测报的新型害虫诱杀设备及监测系统,这些设备配有多种传感器,可以上传数据到用户手机端,且可以定时对诱杀的害虫拍摄然后识别计数[4-5],节省了大量人力。害虫诱杀设备及监测系统进行虫害测报的重要前提是如何准确分割害虫,针对此问题,许多国内外学者对害虫分割方法进行了研究。SOLIS-SÁNCHEZ等[6]利用目标的几何形态特征(偏心率、面积等)从诱虫板上分割粉虱Aleyrodidae。NING等[7]提出交互式分割方法从复杂背景中分割害虫。吕金娜[8]提出了基于LAB颜色空间的棉花Gossypiumspp.害虫普适K聚类害虫图像分割方案,对典型棉花害虫图像进行分割。杨信廷等[9]提出了基于Prewitt、Canny边缘检测算子分割和支持向量机(SVM)的温室粉虱和蓟马Thripidae诱虫板的图像识别算法。陈树越等[10]提出改进的凹点检测和精确分割点定位的方法,实现对黏连害虫的分割。然而,上述方法大多用于单个害虫情况,对于野外诱虫装置获得图像、害虫产生轻微堆叠及颜色不一等问题还有待解决。害虫的分割效果与设备的收集功能密不可分。李芝茹等[11]采用了追踪式太阳能监测装置,在稳定供能的同时也可升降采集不同高度的害虫;张红涛等[12]、张昊辰等[13]针对捕虫诱集部分,设计了多种采集方法以及通道,来提升害虫图像质量。本研究针对害虫收集装置中的采集害虫图像分割精度的要求,根据害虫面积与采样盘面积的比例进行智能翻转,针对翻转功能需要克服的实际拍摄图像光照不均匀,阴影干扰大,及害虫种类颜色繁多等问题,提出了基于全局对比度的图像分割方法,对装置中的实际图像进行分割处理,使其满足采样盘的智能翻转要求。
1 害虫收集方法
1.1 基于全局对比度的害虫分割方法
害虫的智能收集通过害虫面积占比控制采样盘翻转完成,为了准确获取此比例,需要对获取的害虫图像有较高精度的分割。本研究结合基于直方图对比度的显著性检测(HC)算法与阈值迭代算法,提出了满足害虫图像精度的分割方法。整体方法流程如图1所示。
图1 方法流程图Figure 1 Algorithm flow chart
为了减少多种颜色害虫同时出现的频率,首先将害虫图像分成150个同等大小的区域,每个区域大小约1只害虫的面积。在分割区域操作的同时,计算颜色的出现频率,高频颜色替换低频颜色,保证算法运行速度。在此基础上通过HC算法检测图像中的浅色害虫,结合阈值迭代算法分割背景颜色。得到的图像浅色害虫轮廓清晰,并避免了阴影的影响,但图像中深色害虫均未被分割,故将此前检测出的浅色害虫图像中的像素点更新为黑色,加强深色害虫与背景颜色的对比度。再根据直方图计算显著值完成对所有目标害虫的检测。显著值的计算公式为:
式(1)中:a为每个像素的颜色值构成的矩阵;amax为a矩阵中所有值的最大值;amin为a矩阵中所有值的最小值;S为显著值。
最后通过sigmoid函数对结果的图像进行二值化计算得到最终的害虫分割图像,用此图像可对害虫面积比例进行计算,完成采样盘翻转的判定。公式为:
式(2)中:S为显著值;为sigmoid函数。改进后的方法简易且运行快速,效果显著,可以更好地分割背景和害虫,同时也能分割出深色害虫清晰的轮廓。
1.2 HC 算法
在显著性检测算法中,HC算法运行速度较快,且可以保留颜色特征、有效地体现不同颜色的边缘纹理。HC算法根据图像的颜色直方图分布,对颜色级数进行量化和平滑操作,最终计算每个像素的颜色与其他像素颜色的对比度定义为显著值[14]。其计算公式为:
式(3)中:Ik为k点图像颜色转化为Lab颜色空间后的当前像素;Ii则是其余i点的每个像素;n是其余像素的个数;D为2个像素的欧式距离度量;S为显著值。
在害虫图像中,会出现图像颜色过多影响处理速度的问题。为了解决这个问题,采用了量化图像颜色数据降低颜色数量的方法。对害虫图像压缩,将具有相同颜色像素的组合在一起。公式为:
式(4)中:ci为i点当前像素Ik的颜色值;cj为其余j点的颜色值;n为颜色不同的像素数量;fj为j点像素颜色出现的频率;D为颜色值间的欧式距离度量;S为显著值。
由于自然图像中的颜色种类只占全颜色空间的小部分,采取忽略出现频率低的颜色值来进一步缩减颜色的数量,删除的颜色值用保留下来的相近颜色值所代替。为了防止缩减颜色数量导致害虫的轮廓细节被忽略,需保证选择留下的高频颜色在图像中覆盖的像素不少于95%。由于目的是完成对害虫轮廓的分割,从而计算害虫的面积,故此操作既不影响分割的精度,还成功提高了算法的运行效率。
由于在缩减颜色数量时,相近的颜色也许会被量化为不同的值,为了减少这类颜色对检测害虫区域时产生的噪声,使用相近颜色的显著值加权平均值代替原本的显著值。其计算公式为:
式(5)中:S′为平滑颜色后的显著值;S为原本的显著值;T为要改善颜色c和m个最近的颜色ci之间的距离之和;D为要改善颜色c与最接近颜色ci的欧式距离度量。
接着获取处理后图像的颜色直方图,计算1个像素与其余像素的欧式距离,求出所有距离之和,将此定义为显著值。最后将像素的颜色值更新为求出的显著值即处理完毕。
同时存在多种颜色害虫时,单一使用HC算法存在无法提取深浅色害虫的缺陷。原因是图像中害虫的种类以及颜色多样,害虫间的对比度过大,且存在一定的阴影及轻微重叠干扰。故本研究决定结合阈值迭代对害虫图像进行处理,以此优化前景与背景之间的颜色差。
1.3 阈值迭代分割算法
利用阈值迭代分割算法解决了图像各区域亮度不同等因素,可更好地分割图像背景[15-16]。该算法可在不同区域采用不同的阈值进行分割,适合处理多种颜色害虫混合的图像,解决了害虫阴影的干扰问题,完成了分割单一颜色背景的目的。
该算法主要通过迭代方式逼近最佳阈值,从而达到分割背景的目的,关键步骤在于找到最佳阈值。先将整幅图像分成多张互相之间有50%重叠的子图像,分别作出这些子图像的直方图。对这些子图像的直方图进行检测,查看是否为双峰,如果是双峰,则进行阈值迭代法确定阈值,如果不是双峰,就不进行处理。接着确定阈值,以此为依据划分前景和背景。然后分出阈值的2边数据为A和B部分。分别计算A和B部分的均值,然后再总的求A和B部分的均值即为新的阈值。设定迭代次数进行不断寻找最佳阈值,用得到的阈值进行图像的二值化。公式如下:
式(6)~(7)中:R(i, j)为图像(i, j)像素点的灰度值;N(i, j)为(i, j)像素点的权重系数;TK为确定阈值;m为像素个数;R0与RG分别为目标和背景的平均灰度值。
2 结果与分析
2.1 图像的获取装置
图像获取的步骤分为害虫的诱杀收集和拍摄2步。害虫的诱杀通过打开图2的黑光灯引诱害虫,害虫飞至黑光灯边上的电网时,被电死掉落到下方漏斗状装置内部,然后滑落到采样盘上。摄像头在LED灯点亮后进行拍摄,采集图像大小为2 592像素×1 944像素。最后将拍摄的图像传送至控制系统内部进行图像处理。
图2 害虫收集装置示意图Figure 2 Schematic diagram of pest collection device
2.2 不同底盘颜色的分割效果分析
本研究设备为Intel(R) Core(TM)i7-8750H CPU、16G 64位PC机和树莓派官方500万像素摄像头,系统和软件环境为Window10,Jupyter Notebook,Raspberry Pi3 B+。在实际装置托盘上方20 cm处使用装置内部的树莓派摄像头进行拍摄。研究样本为5种害虫在白底托盘和红底托盘上的实际图像。为了验证本研究的可靠性与有效性,共选用100张实际拍摄图像后运行算法,取平均值作为最后研究结果数据。因实际装置的硬件性能所限制,且实际装置对智能翻转的图像处理有一定的速度和精度需求,故排除与深度学习分割方法的对比。本研究选取了4种综合处理效果较好的经典算法作为比较。
使用不同算法对实际摄像头拍摄的图片白底样本进行分割。由图3可见:本研究算法与实际比率的接近程度明显高于其他算法。且在白底托盘中,本研究算法可以更好避免阴影的影响,分割出目标害虫的轮廓。比较图4和图5可知:大津算法(OTSU)出现了错误分割阴影的结果,它将较多的阴影区域分割,将会导致害虫比例严重误判。而本研究算法较好改善了该问题,至于仅剩的阴影噪声问题将通过改善拍摄条件弥补。
图3 白底样本分割效果对比Figure 3 Comparison of sample segmentation effects on white background
图4 OTSU算法与本研究算法对阴影分割的比较Figure 4 Comparison of shadow segmentation between OTSU and research algorithm
白底样本的分割结果(图5)进一步表明:HC算法无法识别害虫颜色与背景颜色对比度不高的害虫,而本研究算法在改进其算法后,可以较清晰地分割出这些原本分割效果不佳的害虫。
图5 HC算法与本研究算法对害虫细节分割的比较Figure 5 Comparison of HC algorithm and research algorithm on pest detail segmentation
综合了白底样本采样盘易出现灯光照射以及阴影的干扰,且由于浅色害虫与白色采样盘背景对比度过于接近,更加不利于对害虫的分割,故改进装置的采样盘为红色。拍摄深色害虫与浅色害虫同时存在于采样盘上时的图像,作为红底样本,并使用不同算法对其进行分割处理。从图6和图7可见:其他算法主要完成了浅色害虫的分割,但均无法分割出深色害虫并计算害虫面积。本研究算法则完成了深浅害虫的同时分割,从图7可清晰观察到深色害虫的翅膀及触角等细节,证明本研究算法在多种颜色害虫存在时分割结果更精确可靠。
图6 红底样本分割效果对比Figure 6 Comparison of sample segmentation effects on red background
图7 HC算法与本研究算法对深色害虫分割的比较Figure 7 Comparison of HC algorithm and research algorithm on dark pest segmentation
2.3 分割效果评价分析
为了评价算法的分割图像效果优劣,本研究将采用平均分割时间、准确率和召回率对算法的分割结果进行衡量[17]。为了比较各算法的效率,将使其对每幅图像进行多次分割,然后取平均处理时间来作最终评价。准确率(P)和召回率(R)的公式如下:
式(8)~(9)中:N为像素个数;Gn表示基准图像第n个像素是否为分割目标像素;Sn表示分割图像第n个像素是否为分割目标像素,值为0或1。本研究取权重系数为0.3,来防止由于显著性检测导致召回率过高的问题。准确率表示目标分割的准确性,召回率为检测区域与基准图像区域的比值,表示算法分割的完整性。使用选取的5种算法对样本进行图像处理,并且将人工分割的图像作为基准图像,得到3个评价指标(表1)。
由表1可知:本研究算法的准确率及召回率最高,其他算法易出现分割阴影等非目标轮廓,或分割不出深色害虫。准确率相比其他4种算法均提高约13%。在召回率上,本研究算法提高了10%以上,最高达53%。准确率和召回率的提升,体现了本研究算法的精确性和可靠性。在分割速度方面,本研究算法高出水平集算法约3倍,且总耗时满足装置的实际需求。除水平集算法外,其他3种算法虽然分割时间短,但无法分割多种害虫同时存在的图像,故可以接受本研究算法小幅延长分割时间后,完成了更高要求的分割。
表1 准确率、召回率和分割速度对比Table 1 Comparison of accuracy recall, and segmentation speed
3 结论
本研究算法处理后得到的结果误差控制在5%以内。即使在光照不稳定和害虫种类以及姿态复杂的环境下采集的图像中,本研究算法也可以较精确避免轻微重叠和阴影的影响进行分割。在多种颜色害虫同时存在时,本研究算法也可分割出几乎接近实际害虫的轮廓。因此,本研究算法简单、高效且充分满足分割精度和速度的需求,适宜于害虫收集装置内部使用,达到对害虫比例进行准确计算的目的。