基于改进U-net网络的水稻纹枯病图像分割
2021-03-25郭鑫鑫
郭鑫鑫 刘 洋
(吉林农业科技学院,吉林 昌邑 132101)
水稻纹枯病又称花杆病,是一种真菌病害,病原菌为立枯丝核菌。该病害主要发生于叶鞘和叶片上,初期发病症状为叶片感染部位呈暗绿色,边缘出现不清晰条纹状小斑点。中期发病症状为出现淡褐色不规则水渍状大斑点,后期发病症状为叶片病斑边缘呈暗褐色,中间呈灰绿色或褐色,形成不规则云纹状褐斑。北方水稻纹枯病发病率一般在10%~15%,严重时达到40%以上,会导致叶鞘干枯,叶片枯死,甚至会影响水稻结实,导致大面积减产,给农户带来较大的经济损失。农作物病斑的准确分割能为后续病害的识别提供有效依据,具有重要意义。
现阶段图像病斑分割常用方法有机器视觉和图像处理技术两种方法。随着物联网技术及机器视觉技术的发展,许多国内外学者运用机器视觉技术对农作物病害图像的分割做了大量研究。如戴子兵[1]利用ASPP模块增加U-net网络分割的精准度,实现水稻病害分割。郭丹等[2]采用基于深度信念网络的水稻纹枯病识别方法,利用Sobel边缘检测算子提取水稻纹枯病的病斑特征。晁晓菲[3]研究基于深度学习的苹果叶片病害识别,提出一种融合Xception及DenseNet深度学习网络提升网络空间的注意力提取能力。王书志等[4]提出一种基于显著性目标检测方法,提高葡萄叶片病害病斑分割性能。在机器视觉技术研究中,发现深度学习不需要人为确定训练集合,深度学习可以通过自我学习来完成对图像病斑的像素级特征提取并完成语义分割,可以节省大量人力和时间。
北方水稻常见病害有稻瘟病、白叶枯病等,相关学者对其研究相对较多,而对水稻纹枯病研究较少。笔者在本研究中以水稻纹枯病为对象,利用Transformer模型结合U-net语义分割网络,提取纹枯病斑的像素特征,完成对纹枯病斑的语义分割,为水稻纹枯病的识别及诊断提供有效依据。
1 试验方法
首先,将采集的测试样本利用Labelme深度学习图像标注工具进行像素标记。其次,构建Trans-Unet网络模型,利用Transformer模型完成对图像数据上下采样的全局提取、编码,结合U-net网络进行学习训练、解码得到语义分割模型。
1.1 数据采集
试验中水稻病斑图像采集自吉林农业科技学院水稻示范区,在自然光条件下利用手机后置摄像头在距离水稻纹枯病叶的适当位置拍摄纹枯病图像,所获取的纹枯病图像分辨率为5 120×2 880。采集时期分别为水稻生长前期、中期和后期,每个时期纹枯病的图像分别采集50幅,共采集150幅图像,每幅图像均以JPG格式进行存储。随机选取纹枯病水稻图像30幅作为测试集,部分图像如图1所示。
图1 水稻纹枯病图像
1.2 图像样本标记
由于语义分割需要精确到像素级,因此按照定义好的水稻病斑标签对测试样本进行深度学习标记[5]。为便于计算机深度学习训练,笔者使用深度学习标注工具Labelme对30幅水稻纹枯病原始图像进行预处理。首先在原始图像中截取病斑图像较为突出的区域作为目标区域,由于水稻纹枯病在水稻叶面区域分布较广,分辨率较高,会直接影响到机器学习速率,因此目标区域在叶片上的范围选定为220×220像素以增加机器学习速率,共在30幅原始图像中截取到125个目标区域,将125个目标区域的病斑图像进行像素标记,并通过曲线框出叶面主体区域记为leaf,通过曲线框出目标区域即病斑区域,记为disease。每张图像标注完成后,生成JPG图像样本,标记后的一个训练样本如图2所示。
图2 Labelme训练样本标记
1.3 Trans-Unet分割模型构建
U-net是较早使用全卷积网络的图像分割算法之一,是基于FCN的改进语义分割网络[6],于2015年由MICCAI发表。与FCN网络相比较,U-net网络结构简单、试验效果显著,在分割结果方面可保留更多局部细节,广泛用于医学影像、无人机遥感成像等语义分割场景,原始U-net网络结构如图3所示。
图3 原始U-net网络模型
U-net网络是通过对目标区域上、下采样来实现对图像的像素级分割,但由于U-net网络的平移不变性和捕捉长期依赖能力不足,需要多层卷积后才能得到抽象的全局信息,影响病斑图像的分割效率。Transformer网络作为自然语言处理任务的模型,本身可以利用像素之间的长期依赖性,有效提取病斑的全局信息,但对细节信息提取效果差。U-net分割模型为左右对称型网络,分割提取过程首先经过左侧收缩池化操作(Conv-Pooling)对目标区域进行下采样,然后通过Deconv反卷积进行上采样。Transformer网络旨在从目标区域提取全局信息,将Transformer网络置于U-net网络的底部,利用Transformer模型的多头自注意力机制(MHSA)增强模型对全局信息的感知能力。由于病斑区域的像素特征与健康区域的像素特征区别较大,在下采样过程中需要经过两次卷积层[7](Conv-1和Conv-2)以及两次线性整流层(ReLU-1和ReLU-2),通过卷积层来提取病斑区域的高维层次特征图,通过线性整流层来提高泛化能力缓解过拟合发生。在上采样过程中,每一级需要通过Deconv反卷积操作完成上采样,同一维度经过跳层连接保持目标特征提取的一致性,重复4次卷积池化操作,最终经过Softmax[8]获得准确的分割结果。改进后的U-net网络模型如图4所示。
图4 Trans-Unet网络模型
2 结果与分析
2.1 试验环境
为有效节省小样本训练时间,笔者采用远程控制软件Todesk软件访问试验服务器进行网络训练,服务器使用显卡型号为英伟达A4000、显存16 G的GPU,CUDA核心数量为6 144个,显存带宽320 GB·s-1,算力30 MHash。详细试验配置如表1所示。
表1 试验配置表
2.2 模型训练
笔者利用改进U-net网络所构建的Trans-Unet网络模型对试验样本进行训练得到训练模型,由于Trans-Unet网络具有小样本训练优势,能够利用少量样本深度学习实现快速、精准的分割。在测试过程中使用上述已采集125个目标样本为试验对象,样本图像大小为220×220像素,在125个样本中随机选取108个作为训练样本,用于改进模型的训练测试。
为了保证改进模型的非线性和避免过拟合的情况,试验采用ReLU作为激活函数,根据显卡内存情况,小批量规模设置为6,最大训练周期设置为10轮,则108个训练样本每轮迭代次数18次,共计迭代次数为180次,阈值设置为0.8,设置初始学习率为0.000 01。设置好以上训练参数,利用Trans-Unet网络模型完成训练,该模型训练时间、准确率和损失值变化情况如表2所示。
表2 Trans-Unet模型训练时间、准确率与损失值
由表2的准确率和损失值的变化情况可以看出,该模型在迭代次数趋于120次左右时趋于稳定状态,训练样本的准确率及损失值变化幅度小,而且该模型训练时间较短,仅需要38 s即可完成180次迭代,小样本测试准确度高达98.74%,损失值为0.041 8,Trans-Unet网络模型准确率较高,可用于水稻纹枯病的病斑分割。
2.3 测试结果评价
为检测该模型的分割效率和泛化能力,在模型训练结束后,笔者采用的评价指标为训练执行时间、内存占用率和语义分割准确率,其中语义分割准确率度量指标[9]主要有四种:像素准确率(PA)、平均像素准确率(MPA)、平均交并比(MIoU)、训练损失值(BCE)。Trans-Unet网络模型的执行时间及内存占用率如表3所示。
表3 Trans-Unet分割模型的执行时间及内存占用率
由表2、表3可以看出,该模型的分割执行时间在37~40 s,平均分割时间约为38.3 s,服务器内存占用率为68.9%~72.8%,平均内存占用率约为71.35%。该分割模型训练执行时间较短,内存占用率较低。该模型采用的四种语义分割准确率度量指标计算公式如下。
像素准确率PA是指测试目标的正确像素点数占所有测试区域总像素的比例,公式如下:
平均像素准确率MPA是对像素准确率PA的改进公式,对测试目标计算PA值,然后再对所有PA值求平均值,公式如下:
平均交并比MIoU是语义分割的度量标准,其通过计算测试目标集合真实区域与预测区域的交集与并集之比,公式如下:
训练损失值BCE是用来估量该模型与目标测试值与真实值之间的不一致程度,训练损失函数值越小,说明该模型鲁棒性越好,公式如下:
式(1)~式(4)中,Pij表示本属于类i,但被预测为类j的像素数量。Pii表示本属于i类且预测为i类的像素点总数,即Pii表示为真正的数量,而pji则表示本属于j类却预测为i类的像素点总数,k值表示像素点数量,Yi,Pi每个像素的预测值,N为迭代次数。
本试验重复训练周期为10次,得到该模型准确率结果如表4所示。
表4 模型准确率
由表4结果看出,该模型经过10次训练后,该模型的像素准确率为96.12%~97.88%,平均像素准确率为96.82%~97.71%,平均交并比为87.01%~90.12%,模型损失值为1.12%~4.29%,由此看出该模型准确率较高,泛化能力强,鲁棒性较好。
2.4 测试结果分析
笔者在本试验中利用Trans-Unet网络模型,综合比较10次训练结果,第7次的训练结果准确率更高,因此将第7次训练的Trans-Unet网络结构作为水稻病斑图像分割模型,以备后续试验调用。利用Trans-Unet网络模型对水稻纹枯病图像分割,其结果如图5所示。
图5 水稻纹枯病分割结果
水稻纹枯病图像分割结果显示,可以得出本研究中构建的Trans-Unet网络模型对水稻纹枯病的分割具有较好的效果。在分割结果中可以看出,针对水稻纹枯病早期发生时面积较小的灰色病斑,还是中期或晚期病斑面积扩大后的相对不规则褐色云状病斑,该模型基本能够实现水稻纹枯病的准确分割,因此,该模型于水稻纹枯病病发的初、中、晚期起到较好的分割效果。
3 结语
笔者利用基于U-net网络语义分割方法,并结合Transformer网络模型构建Trans-Unet分割模型实现水稻纹枯病斑的像素特征提取和语义分割任务。经小样本10轮测试训练后,Trans-Unet的水稻纹枯病分割模型执行时间较短,平均38.3 s,内存占用率较少,平均70.35%。病斑分割的PA值达到96.12%~97.88%,MPA值达到96.82%~97.71%,MIoU值达到87.01%~90.12%,Loss BCE值达到1.12%~4.29%。结果表明,该模型训练稳定性较好,泛化能力较强,鲁棒性较好;可使用相机等拍照方式采集数据,替代专业仪器实现水稻病害快速识别,提高水稻病害图像识别准确率,为小样本机器学习提供了较好模型,同时为农作物病害识别提供方法依据。