基于Macbm-RCNN的叶片周长和面积测量方法
2022-07-29荣民希王智峥郭晓丽张卫正
荣民希, 班 彬, 王智峥, 郭晓丽, 张卫正
(1.郑州轻工业大学数学与信息科学学院,河南郑州 450002; 2.郑州轻工业大学计算机与通信工程,河南郑州 450002)
光合作用、呼吸作用和蒸腾作用是影响植物生长的重要因素,这些都发生在植物的叶片中。由此可见,植物叶片对植物生长发育有着十分重要的作用,而测量植物叶片周长面积对评估植物的生长发育情况、作物产量以及杀虫除害等方面都有着十分重要的意义。因此,建立一个快速、便捷、精确的植物叶片周长和面积测量方法对于研究植物各种生命活动有着重要意义。
测量植物叶片周长面积的方法主要分为3类:(1)叶面积仪测量法。这个方法虽然可以较为精准地测量叶片周长和面积,但因为其效率低、价格昂贵、后期维护麻烦等原因不能大规模使用。(2)传统处理法。例如坐标纸法、方格法等,虽然相对于第一种方法价格上有一定的优势,但因为测量起来操作繁琐,得到的数据也不够精确,所以也无法大规模使用。(3)Matlab软件计算。这个方法虽然速度、准确率较传统方法有所提升,但是计算过程复杂,对于背景情况复杂的图片无法精确计算出图片中叶片的周长或面积,且速度与准确率仍达不到实际应用的标准。
以上3种方法只能对简单情况下的叶片进行处理,这导致无法在实际农业生产上大规模使用。针对这些问题,本研究中提出一种基于Macbm RCNN的叶片周长面积测量方法,该方法目的在于提高处理复杂背景下图像的运算效率并且保证计算准确率。通过引入注意力机制,改变特征权重,提高叶片信息的识别效率,达到了识别复杂背景下叶片信息的要求。经验证,本研究提出的Macbm RCNN网络模型,能够有效提高复杂情况下的训练速度与准确率,在实际农业生产中能起到有效作用。
1 材料与方法
1.1 图像采集与预处理
1.1.1 图像采集 本试验使用小米10手机作为图像采集设备对叶片进行拍摄。在图片拍摄时,将植物叶片尽量平铺,拍摄时将拍照设备与背景板垂直安放,减少误差。并且在光照条件充足且均匀的条件下拍摄,如果光照不足或不均匀会在后期处理中出现阴影,对后期的计算产生误差。参照物选取方面选择日常生活中常见的5角硬币。为避免参照物因素的影响,在中途不会更换硬币。选择白色纸张作为绿色植物叶片背景,白绿色差能够有效地区分叶片,提高叶片辨识度,方便后期对数据集的处理。
1.1.2 图像压缩 在进行数据集训练前需要对图像进行压缩处理,因为采集得到的高像素图像会调用大量系统资源,这会严重影响网络的训练速度。为解决这个问题,需要在不影响画质的情况下先对获得的图片进行压缩。经过多次测试,这里选取512×512像素作为最终选择。
1.2 Mask RCNN网络模型
Mask RCNN网络是由何凯明团队提出的一种实例分割算法,作用于目标检测、目标实例分割、目标关键点检测等。使用卷积神经网络进行训练后对目标物体进行预测。它是在Faster RCNN的基础上提出的,Mask RCNN网络在原本的2个分支上又添加了进行实例分割分支。此外Mask RCNN还通过引入特征金字塔(FPN)结构对主干网络进行扩充。
1.3 Macbm RCNN网络
1.3.1 Macbm RCNN模型 原有的ResNet101主干网络已经不能满足需求。为提高在复杂情况下的训练速度以及叶片识别的准确率,在原框架基础上提出Macbm RCNN模型。由图1可知,Macbm RCNN模型是在Mask RCNN模型的基础上融合了注意力机制后改良而成的,能够精准有效地识别复杂情况下的叶片信息,提高效率。其主干网络主要由Acbm Net和FPN组成,对输入进来的图片通过主干网络进行提取出特征图。然后将生成的特征图传入建议框得到兴趣区域。通过ROI Align结构使用双线性插值法将ROI准确映射到特征图上并提取出相应的目标特征块。特征块分别输入到全连接层FC和全卷积网络FCN完成目标分类回归和实例分割任务。
输出网络预测的结果,选取要进行计算的叶片,并进行灰度降噪处理,使用公式计算得出叶片周长。而面积的计算则需要通过进一步的填充处理,将填充的结果输入面积公式便可以计算出叶片面积。
1.3.2 损失函数 Macbm RCNN的损失函数(式1)主要由边界框的位置回归损失、分类损失和掩膜损失部分的和构成。、、分别由式(2)(3)(4)等3部分公式计算得出。其中式(2)中为锚点前景的预测概率,为真实的概率。式(3)中=(,,,),=(,,,)。式(4)中为掩码预测的概率,为真实的概率。
=++;
(1)
(,)=-lg[+(1-)(1-)];
(2)
(,)=(-);
(3)
(,)=-[lg()+(1-)lg(1-)]。
(4)
1.3.3 评估指标 本研究使用平均精度均值()作为评估训练精度的指标。平均精度均值即各个类别的平均精度,是指准确率(Precision)(式5)-召回率(Recall)(式6)曲线的线下面积,是预测目标位置及类别算法的性能度量标准,而值越高,说明准确率越高,这个模型越好。
(5)
(6)
(7)
其中,是指争取预测中实际正确的数量占所有正确的数量比例;是指预测中实际正确的数量占预测数量的比例。是被正确划分为正确例子的数量;是被错误划分为正确例子的个数;是被错误划分为错误的个数。
在引入平均精确度均值的同时,又引入了孟欣欣等提出的分割精度()(式8),以达到更加精确评估的目的。其中,表示途中目标的像素数量,表示算法分割得到的图像的像素数量。
(8)
1.3.4 Acb网络改进 Mask RCNN网络在处理复杂叶片时,会出现训练速度慢、准确率低等问题。在解决实际问题时会使得成本大幅提升。为达到预期效果,提高准确率,提出了Acb Block网络结构(图2)。
Acb Block网络是一种在Identity Block网络的基础上融合了注意力机制的全新网络结构。Acb Block网络中的注意力机制是一种混合的注意力机制,由空间注意力和通道注意力构成。其中空间注意力计算模型应该注意特征图的位置,而通道注意力计算模型应该注意特征。通过两者相结合,从而达到改变特征的权重,提高模型训练的速度与准确率的目的。注意力机制可以有效地帮助我们在复杂情况下识别叶片的信息,降低对图片背景的要求,使网络能够有效地使用在实际场景中。
Acb Block网络的结构所示,在Acb Block网络中使用的是瓶颈结构,首先通过1次1×1的卷积对通道数进行压缩。之后通过1次3×3的深度可分离卷积对图片进行特征提取。在此处插入了注意力机制。输出特征提取后的结果,通过注意力机制输出每个特征通道的概率。之后便将得到的概率与3×3的深度可分离卷积后的结果相乘。通过注意力机制来对通道权重进行调整操作,改变每一个特征通道所占的权重。注意力机制可以有效提高识别图片的效率与准确率。最后再通过1次1×1的卷积进行通道数的返回。这种瓶颈结构的使用可以有效提升检测效果,提高网络的深度。通过这种注意力与瓶颈结构相结合的方式来改变特征权重,以此来达到更精准识别叶片信息、高效准确标记图片的目的。
为防止因为网络加深导致梯度消失爆炸以及退化问题,同时也为了提高网络的性能,在Acb Block网络中加入了残差结构。将刚刚计算的结果与残差边所得到的结果相加,使网络结构更加稳定。
Acb Block网络通过注意力机制,提高了网络的识别效率,可以在复杂背景的图片中准确识别出图中的叶片信息,这一改进使我们的网络能够在不对叶片进行采摘的情况下计算叶片的周长和面积,在农业生产方面有着重要的作用。
1.3.5 AcbmNet网络结构 AcbmNet主干网络是本研究提出的一种融合Acb Block网络的全新的网络结构。由图3可知,图片输入网络后,首先对图片进行了步长为2的卷积,以此来压缩图片的长和宽。之后对图片进行标准化和激活处理,对处理后的结果再进行1次最大池化将图片压缩。然后通过Conv Block网络,在此保持图片长宽不变,只调整通道数。对调整后的图片再经过2次Acb Block网络。
得到Acb Block网络处理结果C2,之后再次进行1次步长为2的Conv Block网络的压缩处理,并且将结果通过Acb Block网络进行处理。同样提取出结果C3。然后再次经过1次Conv Block网络进行压缩,并且通过多次Acb Block网络进行处理,同时提取出结果C4。最后提取出经过Conv Block网络压缩和Acb Block网络处理的结果C5。
利用主干网络中提取出的长宽压缩2次、3次、4次、5次的结果分别为C2、C3、C4、C5,通过特征提取器(图4)便可得到最终的有效特征层P2、P3、P4、P5。首先对C5进行2个卷积处理,得到有效特征层P5。然后取出C5第1次卷积处理的结果对其进行上采样,将其与C4进行1次卷积处理的结果相加并进行1次卷积处理,就可以得到有效特征层P4。将C4第1次卷积与C5第1次卷积上采样相加得到的结果进行1次上采样,使其与C3的1次卷积的结果相加,并进行1次卷积即可得到有效特征层P3。同理,便可得到有效特征层P2。P2、P3、P4、P5便是通过特征提取器提取出的有效特征层。
1.4 叶片周长面积计算
1.4.1 灰度处理 选取图片中要计算的叶片进行灰度处理。因为图像采集设备所得到的图像是彩色的,彩色图片中叶片的脉络会对图片的计算产生干扰。采用加权平均法(公式9)来进行灰度处理,红(R)、绿(G)、蓝(B)3个通道分量的加权系数分别为0.33、0.57、0.12。采取这种方法进行灰度处理的时候,不会使图片出现失真现象。
(,)=033(,)+057(,)+012(,)。
(9)
式(9)中(,)是叶片图像在(,)处的灰度值,(,)、(,)、(,)分别为叶片图像在(,)处的红绿蓝3色分量。
1.4.2 降噪处理 对灰度处理结束的图片直接进行计算会出现计算的叶片和硬币周长和面积远远超出实际情况,这是由于图片中噪声太多,干扰计算。所以需要进行降噪处理,突出图像的边界,以便于其后对图像中叶片周长面积进行计算。
1.4.3 周长计算 使用降噪处理后的图片对叶片的像素点进行计算,便可得到叶片在图片上的相对周长。同理计算出硬币在图上的相对周长。最后根据公式(10)得到叶片的实际周长。
=×6437÷。
(10)
1.4.4 面积计算 使用降噪处理后的图片进行填充操作,这样可以方便计算叶片所占的像素点个数,提高计算的准确率。通过计算得到叶片在图像中的相对面积,硬币面积,令叶片的真实面积为,根据式(11)求出叶片的真实面积。
=×32989÷。
(11)
2 测量结果与分析
2.1 试验装置及环境
试验硬件处理平台:CPU:Intel Core i7-11700;内存:DDR4,32 GB;显卡:华硕3080TI,12 G显存;固态硬盘:500 G。使用tensorflow1.15+keras框架,同时采用CUDA11.5进行加速。同时为了提高网络迭代的速度,采用迁移学习进行辅助训练,本研究采用COCO数据集在Mask RCNN上的预训练初始模型。对其进行优化关键参数,调整头部参数的处理,以达到更精确识别的目的。之后利用Numpy、OpenCV等库实现周长面积的计算。
试验叶片数据于2021年采集于郑州轻工业大学校园及郑州市植物园,叶面仪(型号:WDY-500A)及方格法测量于2021年在郑州轻工业大学食品与生物工程学院烟草行业烟草工业生物技术重点实验室由相关专家指导完成,基于Macbm-RCNN模型测量于2021年在郑州轻工业大学数学与信息科学学院人工智能实验室完成。
2.2 规则图形周长面积测量
为更进一步验证准确性,选择已知面积的长方形、正方形、三角形。使用同一5角硬币作为参照物,在同一背景下进行测量。为确保数据准确,将同一物体重复5次进行测试。
测量的结果如表1、表2所示。通过试验取得的数据来对本研究中叶片周长面积计算方法误差率进行验证,经验证表明误差均小于1.5%,达到预期效果。
表1 规则图像周长测量
表2 规则图像面积测量
2.3 叶片测试结果分析与对比
2.3.1 叶片预测结果以及面积计算 在保证数据集准确的情况下,通过Macbm RCNN网络训练完成后,选取任意背景下的叶片(图5)与参照物的图片进行预测,结果如图6所示。可以看到在任意背景下,只要保证硬币与叶片处于同一水平面,就可有效地识别出叶片信息。利用Macbm RCNN网络预测的准确率与叶片标记情况都能达到预期效果。
2.3.2 周长计算 随机选取1幅图片进行计算。首先选取需要计算的叶片,对选中的叶片与硬币进行灰度和降噪处理,得到叶片与硬币的轮廓图如图7-a所示。经计算可得叶片的相对周长、硬币周长。根据式(10)便可以得到叶片的实际周长=251.46 mm(图8),通过计算得到叶片的实际周长为253.12 mm,误差为0.65%,小于1.5%,符合预期效果。
2.3.3 面积计算 对降噪处理后的图片进行填充处理,填充图如图7-b、图7-c所示。经计算得到硬币和叶片的相对面积和,经过公式(11)计算得知叶片面积=2 316.36 mm(图8),计算得到叶片的实际面积为2 337.76 mm,误差为0.915%,小于1.5%,在误差范围要求之内。
2.3.4 叶片周长面积不同测量方法对比 为验证叶片周长和面积计算方法的准确性,随机选取10张叶片图片,通过方格法、叶面仪测量法、Macbm RCNN网络模型等3种方法进行计算。由表3可知,Macbm RCNN相对于叶面仪精确度相差不大。同样,对计算所花费时间进行统计。由表4可知,Macbm RCNN所花费的时间最短。由表3、表4可知,Macbm RCNN模型能够在提高效率的同时保证准确率。
表3 叶片周长与面积测量
表4 周长面积平均计算时间
2.3.5 结果分析及比较 为验证本研究中提出的Macbm RCNN改进网络模型的优化作用,选取Mask RCNN(ResNet101)、Mask RCNN(ResNet50)与本研究的Macbm RCNN网络在ResNet50和ResNet101基础上的改进进行比较。对4个模型使用相同的数据集进行训练,将每个模型的训练结果进行比较。由表5可知,相比于Mask RCNN网络,Macbm RCNN网络结构在引入注意力机制后,在平均精度方面分别提升1.8%、1.5%。加入了注意力机制的Macbm RCNN网络虽然在平均训练时间和平均推理时间方面没有太大提升。但是在复杂图像处理中,训练时间分别降低0.025、0.017 s,平均推理时间分别降低0.02、0.016 s。这说明提出的Macbm RCNN模型与Mask RCNN相比在处理复杂图片时有明显提升,Macbm RCNN网络较Mask RCNN网络有更快的速度和更高的准确率。由此可以总结出通过注意力机制,Macbm RCNN网络能够更有效地处理复杂图片。
表5 结果比较
同样,把Macbm RCNN 与Mask RCNN的错误率与准确率整理成图(图9)。由图9可知,Macbm RCNN网络的错误率下降速度快于Mask RCNN,稳定时间也明显早于Mask RCNN。准确率的提升也明显好于Mask RCNN。这充分说明了加入注意力机制的Macbm RCNN模型的效果要好于Mask RCNN。
通过利用注意力机制改变特征的权重,能够有效提高计算的效率和计算的准确率。由此可以进一步肯定,本研究提出的Macbm RCNN网络相比Mask RCNN更适合复杂情况下计算叶片的周长和面积问题。
4 结论与讨论
本研究提出的Macbm RCNN模型与原始的Mask RCNN模型相比,能够有效地提高训练的速度与准确率。在面对复杂叶片图片时,通过注意力机制,对图片的特征权重进行调整,挑选出重要的特征重点关注,提高图片的处理效率。在后期的训练以及预测中,能够更快地降低训练的错误率,更好地提高训练的准确率,相比Mask RCNN能够更早地达到稳定。
与其他计算方式相比,Macbm RCNN模型对拍摄图片的背景要求低,在实际应用中有更广泛的应用环境,能够在复杂情况下对叶片进行准确的标记,准确计算出叶片的周长和面积,且误差小于1.5%。
在实际农业应用中,会出现更加复杂的情况。经试验证明,相对于原始的Mask RCNN模型,Macbm RCNN模型能够更准确更高效地完成叶片周长和面积的计算任务,面对复杂图片具有更好的处理效果。因此在实际问题中,本研究提出的基于Macbm RCNN模型的算法更能满足需求,更加适合应用在实际的叶片周长和面积计算问题中。出于后期提高模型适用性和便捷性的要求,考虑使用手机采集叶片图片上传,用远程链接或远程服务器的形式处理图片进行识别与计算,最后以app或者微信小程序的方式输出处理结果。