一种基于mask rcnn的农作物图像分割提取算法

文档序号:8526 发布日期:2021-09-17 浏览:43次 英文

一种基于MASK RCNN的农作物图像分割提取算法

技术领域

】本发明属于深度学习与图像处理算法

技术领域

,具体涉及一种应用于Mask Rcnn图像处理算法的网络结构设计与实现及增添边缘损失方法。

背景技术

】近年来,在智慧农业概念的大力推广下,传统农业耕作已被逐渐摒弃,农业开始朝着智能化、自动化的方向发展。早在20世纪70年代,图像处理技术开始应用到农业领域,主要应用于农作物病害识别、表型检测、品质分级等方面,极大提高了农业耕作效率和农作物产量。图像分割是根据图像的灰度值差异,把图像分解划分为若干个区域,研究者提取出自己感兴趣区域的过程。图像分割作为图像处理中的关键一环,对图像分析结果有很大的影响。通过图像分割技术,可以高效、无损的获取农作物信息,帮助农作物种植人员实时了解农作物生长动态,更好的管理农作物。

传统Mask RCNN网络基于TensorFlow作为后端的Keras深度学习框架搭建而成,由于框架的制约,网络的性能不能够很好地发挥出来。基于PyTorch框架搭建网络,其体现出的优势不仅仅是PyTorch相比于以TensorFlow作为后端的Keras框架的优势,更表现为MaskRCNN网络在全新的框架下性能的提升。计算机显存资源利用效率更高,计算的速度和精确度也得到了显著提升。而且新的框架不仅便于调试,高度模块化,搭建模型十分方便,数据参数在CPU与GPU之间迁移十分灵活。

若在实例上确定图像中感兴趣对象的类别和位置信息,最流行的目标检测算法包括Rcnn,Fast Rcnn,Faster Rcnn和Mask Rcnn。但是,这些框架需要大量的训练数据,无法实现端到端的检测。检测框的定位能力有限,并且当提取特征时,随着卷积层数的增加,浅层神经网络与深层神经网络之间语义信息混淆,特征难以全面覆盖提取的问题亟待解决。

本发明提出了一种基于Mask RCNN的农作物图像分割提取算法,通过网络中添加路径聚合与特征增强功能,优化了残差网络(ResNet)。并针对不同比例目标在损失函数中引入不同的权重,在ROI输出的掩模分支中使用sobel算子预测目标边缘,并在损失函数中加入边缘损失,并在由Labelme制作标签后的Fruits 360数据集上测试算法分类性能和分割精度。与FCN、U-net、Mask Rcnn图像提取算法对比实验结果表明,本发明提出的一种基于基于MASK RCNN的农作物图像提取算法提取结果的平均准确度、平均精度均值和F1分数指标均优于对比算法,本发明方法性能优异,准确性、鲁棒性和网络的泛化性能均有更优良的表现。

发明内容

】本发明的目的在于网络设计中增添路径聚合与特征增强功能,在ROI输出的掩模分支中增添微全连接层,并融合sobel算子在损失函数中加入边缘损失,提出了一种基于Mask Rcnn的农作物图像分割提取算法。

与传统的图像分割Mask Rcnn算法不同,本发明特征金字塔网络增添路径聚合与特征增强。特征金字塔网络通过一条自顶向下的旁路连接,为提取的特征增加了高层级的语义性,并有利于分类,但低层级的特征更加有利于像素点的定位,虽然特征金字塔网络高层级特征也有了低层级特性,但信息流动路径过长,难以融合。本发明使用自底而上的思想进一步融合特征,使得高层级特征获得低层级特征的路径变短,从低层级到高层级构建一个清晰的侧向连接路径,用于缩短信息路径,使得底层信息流通更快。创建自底向上的增强路径,进而改进的特征金字塔网络利用自底向上低层级特征中存储的精确定位信号,提升特征金字塔架构。

本发明在区域生成网络优化目标锚框比例,区域生成网络等效于基于滑动窗口的无类别目标检测器,它基于卷积神经网络的结构,滑动框架扫描产生框架锚,采用9种面积尺寸各异的目标框来估算原始目标在每个滑动窗口上位置上的大小。建议的区域可以生成大量不同大小和纵横比的锚点,并且它们重叠以覆盖尽可能多的图像,建议区域的大小和所需区域的重叠量(IOU)将直接影响分类效果。为了能够适应更多农作物种类区域,该算法将锚点的缩放比例由原{32×32,64×64,256×256}、长宽比锚点{1∶2,1∶1,2∶1},调整为{16×16,32×32,64×64,256×256}、长宽比锚点{1∶2,1∶1,3∶1}。调整后能够提高小目标的检测和分割效果,提高目标框的检测率。

并在ROI输出的mask分支中增添微全连接层,本发明在mask分支新增微全连接层支路,通过一条支路从conv3连接到全连接层,中间过两个3×3大小通道数为256的卷积层conv4_fc和conv5_fc。其中,conv5_fc卷积层通道数减半以减少计算量,mask大小设置为28×28。全连接层产生的784x1x1向量再reshape成和FCN预测的mask同样的空间尺寸,最终与全连接网络的输出相加得到最终预测。

发明使用sobel算子预测目标边缘,在损失函数中加入边缘损失。首先将标注的图像转换为农作物的二值分割图,即为目标掩模,然后以掩模分支输出的预测掩模和目标掩模作为输入,分别与sobel算子进行卷积,其中sobel算子如下式:

sobel算子分别描述了水平和垂直梯度,在训练时的梯度下降过程中不仅可以使用沿x和y轴的边缘强度,还可以使用边缘的方向来最小化总损失,这些额外信息可以加速训练,减少大量的训练时间。

本发明的增添边缘损失如下式:

本发明的目的是求解如下模型并实现农作物图像的精准、高效识别与分割:

min L=min(Lcls+Lbox+Lmask+Ledge)

其中Lcls表示分类误差;Lbox表示检测误差;Lmask表示分割误差;Ledge加入sobel算子的边缘损失误差。

本发明评价指标采用Recall、Precision、Average Precision(AP)、Mean AveragePrecision(mAP)与F1作为农作物图像提取的评估指标。其中数据集中每一个类别都可以根据精确率(Precision)和召回率(Recall)绘制一条曲线,平均精度(Average precision,AP)是该曲线与坐标轴围成的面积。mAP是由对全部类别的AP值求平均值得到

其中TP为被正确预测为正样本的数量;FP为负样本被预测为正样本的样本数量;FN为正样本被预测为负样本的样本数量;n为数据集类别数量。

本发明的目的是通过下述技术方案来实现的:

(1)预处理:将农作物图像数据集以8∶2比例分为训练集与测试集,并通过Labelme对训练集集进行标注;

(2)输入:农作物图像数据集;

(3)初始化:迭代次数Max_step;

(4)残差网络和增添路径聚合与特征增强的特征金字塔网络进行农作物图像特征提取,生成特征图;

(5)特征图通过优化目标锚框比例的区域生成网络,提取可能存在的目标区域,并通softmax分类器对前景和背景进行二值分类

(6)可能存在的区域目标经过非最大抑制过滤器,滤除不符合阈值的目标;

(7)将步骤(4)生成的特征图与步骤(6)符合阈值的可能存在区域目标传输至ROIAlign;

(8)使用双线性内插的方法获得坐标为浮点数的像素点上的图像数值,保存特征图的空间信息;

(9)修正特征图像尺寸,使全部特征图尺寸为256×256大小;

(10)将(9)结果经过新增微全连接网络生成mask损失;

(11)将(9)结果经过全连接网络生成box与cls损失;

(12)将(9)结果经过sobel算子预测目标边缘,生成edge损失;

(13)将(10)-(12)结果求和生成损失函数,并输出Precision、Recall、Averageprecision、Mean Average Precision与F1分数;

(14)判断是否到达最大迭代次数Max_step,未到达则返回步骤(4),达到则输出农作物分割图像与Precision-Recall曲线。

【本发明的优点和积极效果】与现有技术相比,本发明具有如下优点和积极效果:

第一,在特征金字塔网络增添路径聚合与特征增强,使用自底而上的思想进一步融合特征,使得高层级特征获得低层级特征的路径变短,从低层级到高层级构建一个清晰的侧向连接路径,用于缩短信息路径,使得底层信息流通更快。创建自底向上的增强路径,进而改进的特征金字塔网络利用自底向上低层级特征中存储的精确定位信号,提升特征金字塔架构;

第二,在区域生成网络优化目标锚框比例,该算法将锚点的缩放比例由原{32×32,64×64,256×256}、长宽比锚点{1∶2,1∶1,2∶1},调整为{16×16,32×32,64×64,256×256}、长宽比锚点{1∶2,1∶1,3∶1}。调整后能够提高小目标的检测和分割效果,提高目标框的检出率;

第三,在ROI输出的mask分支中增添微全连接层,通过一条支路从conv3连接到全连接层,中间过两个3×3大小通道数为256的卷积层conv4_fc和conv5_fc。其中,conv5_fc卷积层通道数减半以减少计算量,mask大小设置为28×28。全连接层产生的784x1x1向量再reshape成和FCN预测的mask同样的空间尺寸,最终与全连接网络的输出相加得到最终预测,提高mask分支预测精读,实现更为精确的图像分割效果;

第四,使用sobel算子预测目标边缘,在损失函数中加入边缘损失。首先将标注的图像转换为农作物的二值分割图,即为目标掩模,然后以掩模分支输出的预测掩模和目标掩模作为输入,使用边缘的方向来最小化总损失,这些额外信息可以加速训练,减少大量的训练时间。

附图说明

】图1是本发明提出的基于一种基于MASK RCNN的农作物图像分割提取算法流程图;

图2是本发明算法的特征金字塔网络优化前后对比图;

图3是本发明算法的mask分支微全连接增添前后对比图;

图4是本发明算法与FCN、U-net及Mask Rcnn算法的部分农作物平均准确度(AP)对比图;

图5是本发明算法与FCN、U-net及Mask Rcnn算法的部分农作物提取分割效果对比图。

具体实施方式

】为使本发明的实施方案与意义优势表述得更为清楚,下面结合后文附图及实施样例,对本发明进行更为详细的说明。

(1)预处理:将农作物图像数据集以8∶2比例分为训练集与测试集,并通过Labelme对训练集集进行标注;

(2)输入:农作物图像数据集;

(3)初始化:迭代次数Max_step;

(4)残差网络和增添路径聚合与特征增强的特征金字塔网络进行农作物图像特征提取,生成特征图;

(5)特征图通过优化目标锚框比例的区域生成网络,提取可能存在的目标区域,并通soffmax分类器对前景和背景进行二值分类

(6)可能存在的区域目标经过非最大抑制过滤器,滤除不符合阈值的目标;

(7)将步骤(4)生成的特征图与步骤(6)符合阈值的可能存在区域目标传输至ROIAlign;

(8)使用双线性内插的方法获得坐标为浮点数的像素点上的图像数值,保存特征图的空间信息;

(9)修正特征图像尺寸,使全部特征图尺寸为256×256大小;

(10)将(9)结果经过新增微全连接网络生成mask损失;

(11)将(9)结果经过全连接网络生成box与cls损失;

(12)将(9)结果经过sobel算子预测目标边缘,生成edge损失;

(13)将(10)-(12)结果求和生成损失函数,并输出Precision、Recall、Averageprecision、Mean Average Precision与F1分数;

(14)判断是否到达最大迭代次数Max_step,未到达则返回步骤(4),达到则输出农作物分割图像与Precision-Recall曲线

本发明的仿真实验是在开源的PyTorch学习框架,使用Python语言编程实现算法网络,硬件环境为Dell T5820工作站完成的,配备有双NVIDIA Quadro P4000显卡(8GB)、64位Ubuntu16.04操作系统。

在仿真实验中,实验对象为Kaggle平台Fruits 360数据集,对比实验将本发明提出的基于一种基于MASK RCNN的农作物图像分割提取算法分别与现有的FCN(FullyConvolutional Networks,FCN)、U-net与Mask Renn算法进行对比。值得指出的是,本发明所比较的U-net以及Mask Rcnn方法均是现有最先进的推荐算法之一。

我们将Fruits 360数据集分别设置为80%训练集与20%测试集。表1为各种图像分割提取算法在部分农作物平均精准度AP值与各类别平均精准度mAP值,粗体表示相同条件下同一数据集的最大AP、mAP值;表2为各种图像分割提取算法在Fruits 360全部数据集中的各类别平均精准度mAP值与F-measur(F1)值,粗体表示相同条件下同一数据集的最大mAP与F-measur(F1)值值;可以看出,本发明方法在所有情况下均能达到最优的预测结果,更具体地,本发明方法相比于次优的Mask Rcnn算法,在所有结果上有着近10%的提升。除此以外,本发明还具有很好的收敛性,图4展示了在Fruits 360数据集上,本发明方法PR曲线结果的数据图,由图4可知,本发明方法具有很好的收敛性和稳定性,通过更小的迭代次数更快的逼近结果值。图5为本发明方法与各对比算法的农作物图像分割提取效果图,由图5可知,在较低分辨率下,FCN算法对农作物分割效果欠佳,在对菠萝图像进行分割提取时,U-net与Mask Rcnn算法都出现了分割结果不理想的情况,而本发明方法依然保持了很好的分割效果。综上所述,本发明方法的算法效率高、收敛速度快、计算结果准确,是一种有效的图像分割提取方法。

表1各图像分割提取算法的部分农作物AP、mAP值对比结果

表2各图像分割提取算法的mAP、F1对比结果

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:一种多层三值主元与双向长短期记忆融合的文本识别方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!