APP下载

利用特征分割和病斑增强的杨树叶部病害识别

2021-01-08苏喜友

浙江农林大学学报 2020年6期
关键词:均衡化直方图杨树

明 浩,苏喜友

(北京林业大学 信息学院,北京 100083)

杨树Populus具有生长快、成材早、产量高等特点,除造林绿化外还具有广泛的工业用途,是木材原料的重要来源。同时杨树较娇嫩,是易受灾害的树种。近些年来,由于退耕还林时杨树种植密度过大、林间管理不善,杨树的各种病害类型增多,发生程度也逐年加重,严重影响杨树的成材质量和经济价值[1−2]。为避免经济和生态损失,杨树病害的检测与预防工作变得尤为重要。目前林木的病害识别任务大多根据专业人员的从业经验判断,识别效率低,专业素质要求过高。随着近些年来计算机视觉相关技术的迅速发展,图像识别已成为计算机科学的重要领域。与人眼识别不同的是,图像识别技术通过计算机提取图像特征,以特征向量或矩阵的形式,进行训练识别任务。机器视觉的识别模式已经成为趋势,这为病害识别任务提供了新的方向。近年来,研究者提出了多种针对农作物和经济作物叶部病害的识别方法[3−4],使用的技术包括支持向量机[5]、BP神经网络及更深层次的卷积神经网络[6]等,多数研究主要通过修改神经网络结构与网络深度[7−8],以追求更好的识别效果。由于本研究所涉及病害图像特征不显著,导致修改神经网络结构的方式对提高识别能力效果并不理想,而之前的研究缺少此类有效方案。鉴于此,本研究将重心集中在原始图像的预处理上,以确保病害早期的病症得到强化,提出基于卷积神经网络和病症特征分割的杨树叶部病害的识别方案,为杨树病害发病早期的预警工作提供借鉴。

1 材料与方法

1.1 数据材料

杨树叶部图像采集于北京市顺义区东郊湿地公园,采集时间为6−9月,包括杨树黑星病早期图像、杨树花叶病和部分健康杨树叶片图像,其中黑星病早期图像共170张、杨树花叶病图像176张以及健康杨树叶片图像170张,图像文件格式为JPG,像素大小为2912×5184。图像数据集具有如下特征:数量总量小,在识别任务中易出现过拟合现象;杨树黑星病早期的病斑面积小,仅在叶脉附近存在少量浅色亮斑,特征没有其他病害明显。

1.2 数据增广

鉴于采集杨树病害叶片图像难度较大,获取的病害叶片图像集数量少,需要对原始数据进行数据集扩充操作,随机变换生成一批可信图像,以增加图像识别训练任务的输入数量,减轻过拟合现象。为提高图像集数据量,防止过拟合,本研究数据扩增主要包括:①翻转。将源图像进行随机水平或垂直翻转。②旋转。以随机角度对源图像进行旋转,若旋转角度不为π/2或 π,图像将以不同尺寸保存为矩形图像。③裁剪。随机从源图像中采样一部分作为新的图像内容,之后将裁剪后图像调整为目标图像的尺寸。④平移。将源图像沿x轴或y轴或同时沿2个方向移动,从而改变图像内部主体目标的相对位置。⑤对比度变换。针对源图像HSV颜色空间,保持色调不变,改变饱和度和亮度分量。

1.3 实验环境

图像采集设备为 Canon PowerShot SX620 HS,实验依托于主频为 3.00 GHz 的 Inter i5-7400 CPU 处理器,8.00 GB内存,Windows 10 64位操作系统,语言环境为Python 3.6。图像识别所使用的框架为tensorflow,版本为 1.12.0,搭载显卡为 NVIDIA GeForce GTX 1060 3 GB。

1.4 实验方法

1.4.1 改进的 Canny算子+霍夫变换边缘检测法 Canny边缘检测算法[9]主要分为四部分:高斯滤波降噪、计算图像的梯度和梯度方向、非极大值抑制和双阈值筛选边缘。高斯滤波可以对图像邻域内像素进行平滑处理,尽可能保留原灰度图像的分布特征。使用非极大抑制确定目标梯度方向的局部最大值并保留。设置阈值A和B,将大于阈值B的点判定为边缘点,舍弃小于阈值A的点。而介于A与B之间的点,若与B是连通的则判定为边缘点,反之舍弃。为保证检测物体边缘轮廓的完整性,采用霍斯变换修复边缘轮廓。在笛卡尔坐标下,点的坐标用横纵坐标值(x,y)表示;在极坐标轴下,直线用角度和极径表示,即(ρ,θ)。例如笛卡尔坐标空间下有共线2点的坐标分别为(xi,yi)和(xj,yj),映射到极坐标参数空间是2条正弦曲线,相交于点(ρ0,θ0),ρ0=xcosθ0+ysinθ0即为目标直线(图1)。

图 1 笛卡尔坐标系 (A)与极坐标系 (B)图像Figure 1 Cartesian coordinate system(A) and polar(B) images

在参数空间建立二维数组累加器矩阵,遍历图像每个前景点,用(ρi,θi)表示,通过霍斯矩阵的离散方法表决计算结果获取峰值以确定多散点的共线。以这样的形式追踪图像中每个点对应曲线间的交点,若交于一点的曲线数量超过了阈值,便认定此点所表示的直线为多散点共在的直线,将散点化的部分断裂轮廓图像修复为1条连续轮廓[10]。相比于其他研究采用的边缘检测方法[11−13],本方法更适用于植物的叶部轮廓提取,且效率更高。

1.4.2 限制对比度自适应直方图均衡化 (CLAHE) 限制对比度自适应直方图均衡化[14]是将原始图的直方图变换为均匀分布的形式,通过图像的灰度分布直方图确定1条映射曲线,用以进行图像灰度变换,达到增强图像对比度的目的[15]。为避免对图像进行全局处理造成的灰度值增大问题,将原图像分为若干子块,进行局部对比度处理。在CLAHE中,对每个子块区域进行对比度限幅,以克服局部单独处理产生的图像失真及噪声过度放大的问题[15]。实验发现:对图像RGB三通道进行处理的方式会导致原图色彩失真,故本研究将原图像转化到明度-色差空间(即YCrCb空间),通过第1分量Y进行限制对比度自适应直方图均衡化处理,之后转换回原模式图像。

1.4.3 自适应阈值的OTSU二值化分割算法 OTSU又被称为最大类间方差法[16],是1种自适应阈值的分割方法,按照图像的灰度特征,分割为背景和目标2个部分。背景与目标之间的类间方差越大,说明构成图像的2个部分差别越大,使用类间方差最大化能够保证错分的几率最小,区分效果最好[17]。具体步骤如下:先获取图像的灰度直方图,并进行归一化,设置一个阈值i,从0开始迭代,设定0至i区间的灰度级像素为前景像素,i至255则为背景像素,计算前景像素的占比,记为ω0,平均灰度为µ0,同理背景像素占比记为ω1,平均灰度为µ1,原图像的平均灰度为µ2,类间方差记为g。其中:µ2=ω0µ0+ω1µ1;g= ω0(µ0−µ2)2+ω1(µ1−µ2)2。可得g= ω0ω1(µ0−µ1)2。随着i递增,重复以上计算,直到i=256时结束迭代,将g最大时对应的i作为图像的全局阈值,通过此阈值对图像进行背景与前景分割。

1.4.4 卷积神经网络 (CNN) 本研究采用的神经网络模型为 AlexNet模型[18],网络模型为 8 层结构,其中前5层为卷积层,后3层为全连接层,学习的参数超过6 000万个,神经元数量有650 000个,最后全连接层的输出被送到Softmax函数中产生预测类。具体数据流如图2。AlexNet模型在神经网络发展中具有重要意义,证明了CNN在复杂模型下的有效性。不同于之前的网络模型,AlexNet使用了非线性激活函数:ReLu,表示为max(0,x),相比sigmoid和tanh激励函数可以很大程度提高随机梯度下降的收敛速度。同时,这样的函数特征能够避免在后向传播的过程中卷积核的输出落入函数的饱和区而造成的梯度弥散现象。

针对训练集过小而产生的过拟合现象,AlexNet提出了Dropout方法,核心思想是训练过程中忽略一半的特征检测器,即在前向传播的过程中,让某个神经元的激活值以一定的概率停止工作,以增强模型的泛化能力,避免过分依赖某些局部的特征。

2 结果与分析

2.1 图像叶片轮廓检测

为防止背景与待检测病斑信息相混淆,采用改进的Canny算子对原始图像进行边缘检测,并通过描绘的边缘图像信息进行叶片图像切割,保留完整的正面叶片图像。

首先读取原图像(图3A),为了消除自然图像中的噪声问题,采用高斯滤波算法扫描原图像,获取平滑图像(图3B),将上一步骤的结果进行灰度处理,获取灰度图(图3C),使用Sobel算子获取检测方向的梯度,并通过非极大抑制选择局部最大梯度来确定初定边缘图像,最终使用双阈值筛选的方法锁定最优边缘,获取正面叶片轮廓(图3D)。

分析提取效果发现:提取的轮廓出现不闭合现象,某些边缘区域呈散点形边缘,轮廓内无法实现填充。需进行基于霍夫变换的边缘修复处理,通过调节检索半径参数,将拟合于相同解析直线的相邻轮廓散点连接,形成完整闭合的叶面轮廓(图3E)。填充整个轮廓为纯色得到待提取区域形状,使之与原图做Mask处理,提取完整主体切割图像(图3F)。与原图相比,提取图像不但排除了背景的干扰,同时克服了部分阴影干扰。

图 2 AlexNet网络数据流Figure 2 Network data stream of AlexNet

图 3 轮廓提取及分割效果Figure 3 Contour extraction and segmentation effect

2.2 CLAHE算法处理局部反光与色斑颜色区分度低的问题

由于光照影响,叶片产生的反光效果使叶片局部产生亮斑,导致叶片亮度不均匀[19]。在做灰度图或二值化图像转换时,容易将反光部分误判为病斑,为减少图像信息损失,采用限制对比度自适应直方图均衡化来降低光照不均产生的图像干扰[20]。

将黑星病早期图像作为输入对象(图4A),将输入图像转换至YCrCb空间,并提取第1通道图像限制对比度自适应直方图均衡化,以改变原图像的对比度分布情况,降低局部过多光线造成的亮斑影响(图4B),将处理后图像进行灰度处理能更明显看出叶片顶部位置的高光部分产生的干扰(图4C),对比原图与经过处理的图像转化的二值化图像(图4D和图4E),限制对比度自适应直方图均衡化算法有效降低了局部反光造成的干扰[21−22]。

将杨树花叶病图像作为输入对象(图5A),经过限制对比度自适应直方图均衡化算法后图像病斑区域明显(图5B),灰度差别更加显著(图5C),二值化图像中病斑基本被完整提取(图5E),而原图所对应的二值化图像无法判断病斑区域位置,将期望待选病斑区域混入叶部正常区域,丢失有效信息(图5D)。

图 4 杨树黑星病特征增强Figure 4 Enhanced characteristics of poplar scab

图 5 杨树花叶病特征增强Figure 5 Enhanced characteristics of poplar mosaic disease

2.3 病斑及主叶脉图像提取

杨树花叶病病斑主要以块状分布在叶片中央,杨树黑星病早期病斑以散点状分布在叶脉周围。为了保留病斑与主叶脉的空间关系,以叶脉和病斑为分割对象,将RGB三通道原图(图6A和图7A)转换为灰度图,利用自适应阈值的OTSU二值化算法进行前景和背景提取(图6B和图7B),使用二值化图像与原图做Mask处理完成病斑及叶脉的提取(图6C和图7C)。

图 6 杨树黑星病特征提取Figure 6 Feature extraction of poplar scab

图 7 杨树花叶病特征提取Figure 7 Feature extraction of poplar mosaic disease

采用本研究方法分割出的病斑及叶脉图像基本完整,存在的噪声小,针对杨树花叶病和杨树黑星病早期病斑分割效果较好。

2.4 CNN 神经网络训练

本研究使用AlexNet神经网络,分别针对叶片病害原始图像(实验1)、病害图像预处理灰度图像(实验2)和病害病斑提取图像(实验3)进行网络训练,将验证准确率作为标准测试图像预处理带来的提升效果。数据集的数据组成见表1。

使用相同的训练过程,将图像集分为杨树黑星病、杨树花叶病和健康图像等3个类别,以接近9∶1的比例将每个类别图像集分为训练集(Train)和测试集(Val)。数据集通过TensorFlow转换为tfRecorders类型文件,建立索引文件提高训练效率。最后将图像转化为227×227像素大小的RGB三通道图像,输入网络进行训练。训练过程验证准确率变化趋势及结果(图8)表明:实验1验证准确率达88.77%,损失值约1.40%;实验2验证准确率达93.56%,损失值约0.80%;实验3验证准确率达98.07%,损失值约0.70%。在训练进行至9 500次时,实验3的准确率较其他2组实验有明显提高;在45 000次时,基本稳定在90%以上。实验2与实验3采用的2种图像处理方式对应的识别准确率分别提高了4.79%和9.28%,效果明显。

表 1 图像数据集信息Table 1 Image data set information

图 8 3 组实验神经网络训练迭代验证准确率Figure 8 Three groups of experimental neural network training iteration verification accuracy

3 讨论

3.1 叶片轮廓提取的影响

杨树病害叶片图像均在自然条件下拍摄,由于识别模式不同,计算机无法模仿人类进行主观的图像主体提取,故包含背景的叶片图像在进行识别任务时容易受环境干扰。计算机易将自然光条件下的叶片遮挡产生的阴影误判断为叶片主体图像的一部分,继而导致叶片的形态发生变换,使计算机出现错误的判断(图3A)。此外,背景包含的阴影变化产生的影响也会成为计算机进行叶片及病害形态判断的干扰,不利于识别准确率的提高。

本研究为了排除叶片主体图像之外的其他干扰噪声,采用基于改进的Canny算子边缘检测法对原始图像进行第1步预处理,在排除背景影响的基础上提取出叶片主体的图像作为后续实验的新图像数据。与其他研究相比[11−12],本研究对病害叶片轮廓提取的预处理方式能够最大程度消除非叶片部分的噪声干扰。

3.2 去除光照干扰的影响

杨树叶片表面光滑,易产生光线反射现象,反光区域颜色过浅,与病斑特征相似,容易产生识别错误。本研究采用限制对比度自适应直方图均衡化方法对图像的YCrCb空间第1通道信息进行均衡化处理,调整图像的对比度分布情况,进而弱化光照过强导致的亮斑情况,避免计算机将实际病斑信息与亮斑信息混淆。区别于其他研究忽视光照影响的识别结果,本研究采用的预处理方案能够最大程度消除不规则光照带来的噪声。另外在进行新的病害识别分类任务时,对采集环境要求宽松,无需过分考虑光照影响。

3.3 提取病斑的影响

杨树病害的种类识别主要通过病斑形态、分布规律进行分类处理。本研究提出了从叶片图像提取病斑及主叶脉信息的预处理方案,生成新的无背景特征图,提取效果明显。将生成的病斑特征图与原图分为不同的实验组进行训练识别,结果表明病斑提取后的实验组验证识别准确率较对照组提高了9.28%。由于预处理消除了较多无效图像信息,图像识别速度也得到了较明显提高。

4 结论

本研究以杨树黑星病早期病害和杨树花叶病害图像为研究对象,提出了对原始数据进行预处理以提高AlexNet网络模型训练识别准确率的方案。采用改进的Canny算子边缘检测法获取叶片轮廓以去除图像背景影响,分割出完整的叶片主体图像;采用限制对比度自适应直方图均衡化影响算法消除叶片局部反光影响;采用自适应阈值的OTSU二值化算法提取病斑图像。本研究表明:此方案能够准确提取叶片主体,并消除局部反光带来的影响,分割算法同样提取出较为完整的病斑及叶脉图像。将完整叶片的二值化图像和病斑图像分别作为新的图像集进行训练,与原始图像相比,通过图像病症增强和病斑提取2种预处理后验证识别准确率分别提高了4.79%和9.28%。

猜你喜欢

均衡化直方图杨树
符合差分隐私的流数据统计直方图发布
基于FPGA的直方图均衡图像增强算法设计及实现
跟踪导练(五)
用直方图控制画面影调
杨树山漫画作品欣赏
中考频数分布直方图题型展示
基础教育均衡化的实施对于现阶段教育发展的重要性
EDIUS 5.1音量均衡化
杨树上为什么会有许多“眼睛”