首页> 中国专利> 一种基于改进Mask R-CNN的木材缺陷识别和分割方法

一种基于改进Mask R-CNN的木材缺陷识别和分割方法

摘要

本发明涉及一种基于改进Mask R‑CNN的木材缺陷识别和分割方法,本发明的目的是为了解决缺陷识别中的数据集不平衡和数据量偏少,缺陷检测效率低的问题。过程为:1.采集数据集;2.平衡数据集样本;3.扩充数据集数量;4.将数据集进行划分并制作成所需格式;5.选定检测网络的结构;6.将数据集输入网络模型,使用Momentum优化方法,训练网络20000次;7.每训练1000次,模型对验证集进行检测,选取20次中检测精度最高的模型作为训练好的检测模型;8.使用训练好的模型对测试集进行检测,得到模型的精度和召回率以及模型的检测效果图;本发明使用人工智能的方法同时完成缺陷的分类,缺陷的位置检测和缺陷的轮廓分割,适用与木材工业加工线对木材缺陷的快速处理。

著录项

  • 公开/公告号CN113160136A

    专利类型发明专利

  • 公开/公告日2021-07-23

    原文格式PDF

  • 申请/专利权人 哈尔滨理工大学;

    申请/专利号CN202110276650.9

  • 发明设计人 李东洁;谢文博;

    申请日2021-03-15

  • 分类号G06T7/00(20170101);G06T7/10(20170101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构

  • 代理人

  • 地址 150080 黑龙江省哈尔滨市南岗区学府路52号

  • 入库时间 2023-06-19 11:57:35

说明书

技术领域:

本发明属于木材缺陷自动化检测领域,尤其涉及一种基于改进Mask R-CNN的木材缺陷识别和分割方法。

背景领域:

木材缺陷的快速检测和分割,一直是工业缺陷检测领域急需解决的难题。木材在生长过程中会出现结节,裂缝等天然缺陷和虫害等自然缺陷,这些木材在加工过程中,需要对缺陷进行识别,不同的缺陷会有不同的加工方案,同时需要对缺陷轮廓进行分割以填充完好的木料,供进一步加工使用。传统上使用熟练的工人人眼检测,但是劳动强度大,效率低,而且人眼会出现疲劳和误检。

随着机器视觉的发展,给缺陷自动化检测提供了新的方案。传统机器视觉手工提取缺陷的大小、形状、颜色等特征,建立特征库,使用支持向量机等进行识别,但是依赖手工设计的特征而且复用性较差。到了现在,卷积神经网络在图像识别领域展现出的巨大优势,使用卷积神经网络算法识别缺陷成为主流,如YOLO系列算法,RCNN系列算法,实现了不错的精度。但是在木材缺陷识别领域还有很多需要解决的问题。

缺陷检测本质上属于小数据集检测,而且缺陷种类也是极度不平衡的。现在的神经网络算法使用的数据集,如Pascal Voc、Microsoft Coco都属于大型数据集,而且都是日常生活中拍摄的图片,如交通公具、生活用品、人等,而且种类之间一般是均衡的,它们的特征区别很明显,在神经网络中很容易区分。但是放在缺陷检测领域,此任务会很困难,首先缺陷的背景相似,裂缝和虫害造成的缝隙特征相似,然后是大数据的获取是困难甚至不现实的,最后是缺陷种类的不平衡会严重影响算法的性能。

同时目前的算法往往局限与单方面的任务,或实现缺陷分类、或实现缺陷的位置检测、或实现缺陷分割,这样的化就需要多个算法配合才能实现所有任务,造成很大的浪费。

发明内容:

本发明的目的是为了从根本上解决木材缺陷数据集样本不平衡,数据量偏少的问题,同时改进Mask R-CNN网络同时实现木材缺陷的分类、检测和分割,为缺陷的准确识别和缺陷轮廓的准确分割提供有力保证,极大降低了人工劳动成本,提高了检测的成功率和效率。

一种基于改进Mask R-CNN的木材缺陷识别和分割方法具体过程为:

步骤1.采集数据集:

在木材加工流水线上拍摄收集木材缺陷数据集,选择样本数量较多的裂缝,结节和虫害作为缺陷检测对象;

步骤2.平衡数据集样本:

使用对抗式生成网络,生成新的裂缝和虫害样本,平衡数据集样本的数量;

步骤3.扩充数据集数量;

步骤4.将数据集进行划分并制作成所需格式;

步骤5.选定检测网络的结构;

步骤6.将数据集输入网络模型,使用Momentum优化方法,训练网络20000次;

步骤7.每训练1000次,模型对验证集进行检测,选取20次中检测精度最高的模型作为训练好的检测模型;

步骤8.使用训练好的模型对测试集进行检测,得到模型的精度和召回率以及模型的检测效果图;

本发明的有益效果:

本发明利用对抗式生成网络,生成新的裂缝和虫害缺陷样本,构建了一个样本分布均衡的优秀的数据集。同时使用数据增强技术扩充数据集的数量,抑制模型的过拟合现象。尤其是在训练过程中同步使用了基于区域删除和图像混合的数据增强技术,进一步的提高模型的鲁棒性。

本发明在残差模型之间建立分级连接,重新构建了模型的主干网络,利用分级连接的感受野提高了模型的多尺度特征提取能力。同时使用可变形卷积结构替代原网络的普通卷积结构,模型更加专注与目标物体,提高了模型的分割精度。尤其是使用组归一化方式代替批归一化方式,克服了单次输入图像数量太少造成的模型性能下降问题。

本发明在于提供一种改进后的Mask R-CNN木材缺陷识别和分割方法,同时完成了木材缺陷的分类,检测和分割,减少了工业任务复杂度。同时实现了木材缺陷的精确识别和准确分割。

附图说明:

图1是本发明实例提供的基于改进Mask R-CNN的木材缺陷识别和分割方法流程图;

图2是本发明实例提供的对抗式生成网络的结构图;

图3是本发明实例提供的数据处理总流程图;

图4是本发明实例提供的Mask R-CNN的网络结构图;

图5是本发明实例提供的建立分级连接后的残差模块结构图;

图6是本发明实例提供的可变形卷积的示意图;

图7是本发明实例提供的组卷积示意图。

具体实施方式

具体实施方式一:结合图1说明本实施方式,本实施方式一种基于改进Mask R-CNN的木材缺陷识别和分割方法具体过程为:

步骤1.采集数据集:

在木材加工流水线上拍摄收集木材缺陷数据集,选择样本数量较多的裂缝,结节和虫害作为缺陷检测对象;

步骤2.平衡数据集样本:

使用对抗式生成网络,生成新的裂缝和虫害样本,平衡数据集样本的数量;

步骤3.扩充数据集数量;

步骤4.将数据集进行划分并制作成所需格式;

步骤5.选定检测网络的结构;

步骤6.将数据集输入网络模型,使用Momentum优化方法,训练网络20000次;

步骤7.每训练1000次,模型对验证集进行检测,选取20次中检测精度最高的模型作为训练好的检测模型;

步骤8.使用训练好的模型对测试集进行检测,得到模型的精度和召回率以及模型的检测效果图;

具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤1中在木材加工流水线上拍摄收集木材缺陷数据集,选择样本数量较多的裂缝,结节和虫害作为缺陷检测对象;具体过程为:

使用工业相机,拍摄采集木材缺陷的图像数据集,选择裂缝,结节和虫害作为缺陷检测对象,对数据集进行统计分析,确定每类缺陷的数量和分布。

其它步骤及参数与具体实施方式一相同。

具体实施方式三:结合图2说明本实施方式,本实施方式与具体实施方式一或二不同的是,所述步骤2中使用对抗式生成网络,生成新的裂缝和虫害样本,平衡数据集样本的数量;具体过程为:

对缺陷数量进行统计后,结节占比为53%,远大于裂缝和虫害的占比,样本不均衡会导致模型专注于结节的识别,对裂缝和虫害识别效果很差,选择对抗式生成网络生成新的缺陷数据,均衡缺陷样本的数量。

如图2所示,为本发明采用的对抗式生成网络的模型结构。

将裂缝和虫害图像作为训练样本,和一个100维度的随机噪声经过生成器生成的假的样本,一起送入判别器中,判别器复杂判定图片是真实的样本还是生成假样本,在生成器和判别器不断博弈的过程中,生成器生成的图片越来越真实,判别器能力越来越强。

具体的生成器结构为两个全连接层,两个卷积层结构,进行上采样生成和样本相同大小的假样本,判别器为两个卷积,两个全连接层输出为真或假的二分类概率。

其它步骤及参数与具体实施方式一或二相同。

具体实施方式四:结合图3说明本实施方式,本实施方式与具体实施方式一至三之一不同的是,所诉步骤3中扩充数据集数量;具体过程为:

使用翻转,中心裁剪,旋转,改变亮度,改变对比度和添加噪声,将生成新样本后的数据集扩充6倍。

其它步骤及参数与具体实施方式一至三之一相同。

具体实施方式五:本实施方式与具体实施方式一至四之一不同的是,所诉步骤4将数据集进行划分并制作成所需格式;具体过程为:

步骤4a、对扩充后的数据集,划分为训练集,验证集和测试集

步骤4b、使用标注精灵软件对缺陷位置和缺陷轮廓进行标注,得到缺陷位置的矩形框信息和缺陷轮廓的多边形信息,制作成模型需要的CoCo格式数据集。

步骤4c、对步骤4a中的训练集样本同时使用区域删除和图像混合的数据增强方法进行增强处理。

进一步的,步骤4c中的数据增强方法包括GridMask,CutOut,MixUp,CutMix。具体操作分别为:

(1)GridMask:生成一个和原图相同分辨率的掩膜图像,按照均匀排列的矩形方阵生成掩膜图像,将原图和掩膜图像删除,均匀删除区域信息。

(2)CutOut:在原图上随机删除一个随机大小的矩形区域,在删除区域添加噪声像素。

(3)MixUP:将一个批次中随机的两张图像按照∝∈(0,1)的比例混合,标签也按照同样比例混合。

(4)CutMix:取同一个批次的随机两张图像,图像1和图像2,在图像1中随机裁剪出一个区域,用图像2中相同面积的数据填充,标签按面积的占比混合。

其它步骤及参数与具体实施方式一至四之一相同。

具体实施方式六:结合图4、图5、图6、图7说明本实例方式,本实施方式与具体实施方式一至五之一不同的是,所诉步骤5:选定检测网络的结构;具体过程为:

步骤5a、选择Mask R-CNN作为检测网络模型,包括特征提取网络,RPN网络,ROI_Algin层和检测头网络组成;特征提取网络由残差块堆叠而成的ResNet50结构,分为5各阶段从C1-C5;残差块为输入x经过输入x经依次1×1,3×3,1×1卷积得到F(x),在与输入x相加输入到下一阶段。提取后的特征图,经过一个金字塔网络进行特征融合后,进入RPN网络生成建议框,然后进行ROI_Align层将将生成的建议框调整到统一大小,同时将所有的感兴趣区域连接在一起,输入检测头网络进行分类,边框回归和分割。

进一步的,如图4所示的Mask R-CNN的网络结构。

首先是自下向上的过程,输入512×512的图像数据,经过ResNet50五个阶段的特征提取,得到C1-C5五个特征图,然后经过一个自上向下的多尺度特征融合过程,得到新的P2-P6特征图。

将P2-P6分别输入区域推荐网络,生成建议框,然后将建议框输入到ROI_Align层,将生成的建议框调整到统一大小,然后将所有的感兴趣区域连接在一起,输入检测头网络。

检测头总共有三个分支,分别是分类分支:负责分类、回归分支:负责目标位置回归、掩膜分支:负责缺陷区域的分割。

步骤5b、在步骤5a中的特征提取网络ResNet50中的基本残差模块中的3×3卷积处,建立分级连接结构。将经过1×1卷积后的特征图按通道处分为3块,每一部分是Xi,i∈{1,2,3},X1不经过3×3卷积,直接得到Y1,相当于特征图的复用,X2经过3×3卷积得到Y2,Y2和X3相加后经过3×3卷积得到Y3,最后将Y1-Y3进行连接。

进一步的,如图5所示,图5-a为残差模块的结构,图5-b为建立分级连接后的残差结构。

ResNet50由残差模块堆叠而成,每个残差模块的输入x经依次1×1,3×3,1×1卷积得到F(x),在与输入x相加输入到下一阶段。在残差模块的3×3卷积处进行修改建立分级连接,经过1×1卷积后的特征图按通道处分为s块,每一部分是Xi,i∈{1,…,s},X1不经过3×3卷积,直接得到Y1,相当于特征图的复用,X2经过3×3卷积得到Y2,Y2和X3相加后经过3×3卷积得到Y3,如下公式所示:

公式中K[]代表3×3卷积。使用分级后的残差模块构建一个五十层的网络结构,命名为Res2Net-50加上金字塔网络,作为模型的特征提取网络。

具体的,金字塔网络为,将Res2Net-50分为五个阶段,每个阶段都是两倍的下采样,产生特征图为C1-C5,将下一阶段的特征图进行两倍的上采样和上一阶段的特征图融合,得到新的当前特征图,是一个自下而上的多尺度特征融合过程。

步骤5c、使用可变形卷积,替换步骤5a中特征提取网络,后三个阶段的卷积结构。可变形卷积在传统卷积核的每个采样点位置学习偏移量,拟合真实物体的形状。

如图6所示,为可变形卷积的结构。

普通卷积一般是3×3的方形结构,为图中青色的部分,方便提取矩形区域的特征,大多数目标物体的形状和矩形相去甚远,此时不能很好提取物体的特征。可变形卷积在普通的卷积基础上,每一个卷积核的采样点上学习一个x,y方向的偏移量,去学习真实物体的形状,从而更好的适应不用物体的形状、大小等几何形变,从而更加高效的利用对象特征而不是背景。

进一步,卷积核的采样点学习一个偏移量,是通过一个1×1卷积2N通道的卷积实现的,2代表x,y两个方向,N代表采样点个数,卷积核采样点学习偏移后得到真实的采样点,对物体数据分布更加敏感。

进一步的,可变形卷积使用位置为Res2Net网络的后三个阶段,将Res2Net后三个阶段全部卷积替换为可变形卷积。

步骤5d、使用组归一化,替换步骤5a中特征提取网络的归一化方式。

如图7所示,为组归一化的示意图。

在Mask RCNN输入的数据维度为B×C×H×W,B为每批次输入图片数量,C为卷积核的通道数,H为图片的高,W为图片的宽,将H*W作为一个维度,形成如图7所示的三维结构,便于说明情况。原始网络使用批归一化在B维度,对数据进行归一化,使得每个批次的数据保持相同的数据分布。B在很小的情况下,模型性能会下降,组归一化在通道维度C进行数据的归一化,将通道C分为不同的组,在每个组内分别进行归一化,不会受到B维度的影响。

进一步的组归一化具体操作维,将输入通道数分为n个Group,如图7-b)所示,对每一组计算平均值和方差,实现归一化,先将输入维度由B×C×H×W,调整为B×n×C/n×H×W,归一化后的维度为C/n×H×W,避开了批次太小对模型性能的影响。

其它步骤及参数与具体实施方式一至六之一相同。

具体实施方式七:本实施方式与具体实施方式一至六之一不同的是:所诉步骤6中:将数据集输入网络模型,使用Momentum优化方法,训练网络20000次;具体过程为:

将处理成CoCo格式的数据集,训练集和验证集同时输入改进网络结构后的模型中,使用Momentum优化方法寻优,即带动量项的随机梯度下降法,设置动量项参数为0.9,设置学习率参数为0.0001,模型总迭代次数为20000次。

其它步骤及参数与具体实施方式一至六之一相同。

具体实施方式八:本实施方式与具体实施方式一至七之一不同的是:所诉步骤7中:每训练1000次,模型对验证集进行检测,选取20次中检测精度最高的模型作为训练好的检测模型;具体过程为:

模型对训练集数据每迭代1000次后得到的模型,对验证集的数据样本进行检测,验证集样本不做数据增强操作,得到模型在验证集上的精度和召回率,比较20次检测结果,取效果最好的一次模型作为最终的模型。

其它步骤及参数与具体实施方式一至七之一相同。

具体实施方式九:本实施方式与具体实施方式一至八之一不同的是:所诉步骤8中:使用训练好的模型对测试集进行检测,得到模型的精度和召回率以及模型的检测效果图;具体过程为:

使用从步骤8中选择的最佳模型,对测试集样本数据进行检测,得到模型的精度和召回率,同时在检测图像中,对缺陷的位置进行矩形框标注,对缺陷轮廓进行像素级的分割同时标注出缺陷种类的信息。

对测试集的缺陷图像进行识别和分割,实现了快速准确的识别和分割。输入任意一张测试图片,输出一张识别和分割好的图片,识别精度和分割精度都有明显的提高。

其它步骤及参数与具体实施方式一至八之一相同。

其它的基于卷积神经网络的缺陷分割识别方法,没有从根本上解决缺陷数据集的问题,同时可完成的任务也比较单一。本发明在Mask RCNN网络上进行改进,使用对抗式生成网络和数据增强技术,从根本上解决了缺陷数据集的问题,同时完成了缺陷的分类,识别和分割三种任务,并且在网络结构上进行改进,提高了网络的识别效率和分割精度,达到了实时的目的。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号