轻量化煤矸目标检测方法研究

2021-11-30 03:22杜京义史志芒郝乐陈瑞
工矿自动化 2021年11期
关键词:锚框矸石卷积

杜京义, 史志芒, 郝乐, 陈瑞

(1.西安科技大学 电气与控制工程学院,陕西 西安 710054;2.西安科技大学 安全科学与工程学院,陕西 西安 710054)

0 引言

煤炭开采中不可避免地会掺杂矸石,不仅影响煤炭充分燃烧,还会造成环境污染[1]。因此在煤矿生产中需进行煤矸检测及分选。目前较为成熟的煤矸检测方法主要是基于射线法[2-4],如X射线、γ射线等,但该方法存在辐射危害,且设备昂贵、不易管理,难以推广应用。随着计算机视觉技术的发展,基于图像处理的煤矸检测方法因设备简单、效率高等优点,得到越来越多学者的关注。该方法通过人工分析煤和矸石的灰度、纹理等空间域信息,将其直接作为特征或建立联合特征,结合支持向量机、人工神经网络等机器学习算法进行分类[5-8],可有效实现煤矸识别,但存在特征不易提取或特征区分不明显等问题,检测模型在不同煤矸分选场景下的泛化性能较差。

与经典机器学习算法相比,卷积神经网络(Convolutional Neural Network,CNN)可自动提取图像的鲁棒和高级特征表示[9],被广泛应用于计算机视觉任务中。文献[10]分析了不同CNN模型对煤和矸石的分类效果,结果表明SqueezeNet识别精度和速度最优。文献[11]利用VGG16结合迁移学习进行煤矸检测,检测精度达82.5%。考虑到实际煤矸分选场景中,煤和矸石出现在输送带上的位置是随机的,因此利用抓取装置进行煤矸分选时不仅需要区分煤和矸石的类别信息,还要准确获取矸石在输送带上的位置信息。为此,文献[12]提出了一种基于深度学习模型的分层煤矸检测框架,并在3种不同的数据集上进行实验。文献[13]针对大粒度矸石分选目标,结合区域生成网络(Region Proposal Network,RPN)建立了煤矸目标检测模型。文献[14]提出了一种由检测器和鉴别器组成的级联煤矸检测网络,检测精度达91.3%,但检测速度取决于每张图像中的煤矸样本数量。

在实际煤矸分选场景中,复杂恶劣的环境导致基于深度学习的煤矸检测方法精度较低,特别是针对图像中像素点较少的煤矸小目标,很容易发生漏检现象,且难以兼顾检测精度和实时性,同时难以部署在存储和计算资源有限的嵌入式平台上。为了及时准确地获取煤矸类别和位置信息,本文对基于多尺度特征图进行目标检测的SSD(Single Shot MultiBox Detector)模型[15]进行改进,结合GhostNet轻量化特征提取网络、自注意力机制、锚框优化方法,构建了Ghost-SSD模型,由此提出一种轻量化煤矸目标检测方法,并采用以输送带为背景采集的煤矸数据集进行实验,验证了该方法的有效性。

1 相关网络模型

1.1 SSD模型

SSD是一种基于多尺度特征图的一阶段目标检测模型。其主干特征提取网络以VGG16为基础,并将VGG16的FC6层和FC7层转换为卷积层,同时增加了4层扩展层。与Faster-RCNN[16]、YOLO[17]等只提取顶层特征图进行检测的模型不同,SSD模型分别采用38×38,19×19,10×10,5×5,3×3,1×1这6个尺度的特征进行预测。在SSD模型中,随着特征提取网络层数和下采样操作次数的增多,特征图对应原始图像的感受野[18]逐渐增大,因此浅层特征图有利于检测小目标,深层特征图有利于检测大目标。SSD模型利用不同尺度的特征图进行目标检测,提高了模型泛化能力。

SSD模型借鉴Faster-RCNN模型的候选框生成思想,根据每个特征图的尺寸对原始图像划分网格,在每个网格的中心点生成不同长宽比的锚框,6个尺度的特征图中每个网格点生成锚框的数量分别为4, 6, 6, 6, 4, 4,利用卷积操作预测每个先验框的位置偏移量和类别概率,通过设置阈值筛选预测结果,并利用非极大值抑制得出最终检测结果。SSD模型的训练损失包括类别置信度损失和定位损失,前者采用多分类交叉熵损失函数,后者采用Smooth L1损失函数。

1.2 GhostNet

GhostNet的核心思想在于采用线性变换代替部分常规卷积进行特征提取[19],减少了推理计算量,与以往的轻量化网络相比,可更好地利用特征之间的相关性和冗余性。Ghost模块是GhostNet的基本结构。该模块首先采用常规卷积对输入特征图进行特征提取,生成基础特征图;然后对基础特征图的每一个通道做线性变换(深度卷积),生成Ghost特征图;最后堆叠基础特征图和Ghost特征图作为输出。

GhostNet有步幅为1和步幅为2这2种瓶颈结构,如图1所示。2种结构中分别在不同位置加入批量归一化(Batch Normalization,BN)层和Relu激活函数。步幅为1的结构中,第1个Ghost模块用于增加通道数,第2个Ghost模块用于减少通道数,从而保证与输入特征图的尺寸一致。步幅为2的结构则使用下采样和步幅为2的深度卷积进行shortcut路径匹配。

(a)步幅为1

2 煤矸目标检测方法

2.1 Ghost-SSD模型

Ghost-SSD模型结构如图2所示。该模型采用GhostNet代替VGG16作为主体网络层。为了保持扩展层包含特征图的尺寸不变,主体网络层保留GhostNet的前5个特征提取块,去掉其余特征提取块和全连接层。Ghost模块中每个通道基础特征图对应的冗余特征图数量设置为2。输入图像的分辨率调整至300×300后,分别经过主体网络层、扩展层提取煤矸特征,最终选用6个尺度的特征图预测煤矸类别和位置信息。

图2 Ghost-SSD模型结构

SSD模型采用多尺度特征图检测目标,提高了对不同大小煤矸的检测能力,但浅层特征图中语义信息不足,同时夹杂较多的背景噪声,影响了小目标检测效果。针对该问题,在尺度为38×38,19×19的特征图进行检测之前,引入2条分支重新标定特征图,每条分支分别以2种尺度的特征图为输入,经过自注意力模块(Self-Attention Module,SAM)增强有效特征,抑制背景噪声,同时利用扩张卷积增大浅层特征图的感受野,从而提高浅层特征图对煤矸目标的特征提取能力。受ResNet[20]启发,将输入特征图与SAM的输出进行shortcut连接,保证网络更容易被优化。分支最后加入1×1卷积层,实现特征跨通道交互和信息整合。

2.2 SAM

SAM在机器翻译模型Transformer[21]中得到成功应用,可捕获全局上下文信息的长期依赖关系。本文针对38×38,19×19尺度的特征图引入SAM(图3),得到浅层特征图中任意2个位置的全局依赖关系,从而抑制浅层特征图中包含的背景噪声,突出前景区域特征,并在SAM中引入扩张卷积,通过设置不同的扩张率,丰富浅层特征图的语义信息。

图3 SAM结构

设SAM输入特征图为x,x∈Rh×w×c,h,w分别为输入特征图的高度和宽度。x分别经过3个分支q,p,v。分支q,p均使用3×3扩张卷积对x进行尺度缩放,同时扩大x的感受野,扩张率r分别设置为1,3,得到输出Q(x)∈Rh×w×c/t,P(x)∈Rh×w×c/t,其中t为输出通道数相比输入缩放的倍数,本文设置为8。对Q(x),P(x)进行维度变换,得Q(x)∈RN×c/t,P(x)∈RN×c/t,其中N=hw。对P(x)的转置与Q(x)的乘积进行softmax运算,得到注意力图θ(x)∈RN×N。分支v使用3×3扩张卷积,扩张率r设置为5,输出V(x)∈Rh×w×c,将其维度变换为RN×c。将θ(x)与V(x)相乘,得到自注意力特征图y∈RN×c,并将其维度变换为Rh×w×c。

2.3 锚框优化方法

Ghost-SSD模型训练前,采用K-means算法对锚框进行聚类,根据聚类结果重新设计锚框尺寸,以满足特定任务需求,提高煤矸识别精度。K-means算法首先随机给定K个中心点,然后计算每个中心点到聚类中心点的距离,按照最邻近原则将待分类样本点分到各个簇,最后计算每个簇中所有点的坐标平均值,并将该值作为新的聚类中心,经过反复迭代获得最终聚类结果。

传统的聚类方法一般选用欧氏距离作为度量标准,但针对目标检测问题,更适合使用每个锚框与聚类中心框的交并比作为度量标准。本文使用的度量参数为

D=1-R(b,m)

(1)

式中:b为所有真实标注框的集合;m为聚类中心框的集合;R(b,m)为真实标注框与聚类中心框之间的交并比。

通过改变K进行多次聚类实验,求出每次聚类的平均交并比,结果如图4所示。可看出K<6时平均交并比增长较快,K>6时趋于平缓。结合SSD模型锚框参数设置,选择K=6对煤矸数据集进行聚类,可视化结果如图5所示。根据图5对Ghost-SSD模型的锚框尺寸进行优化,得锚框的长宽比参数为0.65, 0.90, 1.23, 1.39, 1.55, 1.80,每个尺度网格点生成锚框个数均为6。

图4 不同K值下锚框聚类平均交并比

图5 K=6时锚框聚类结果

3 实验与结果分析

3.1 数据采集与处理

以输送带为背景,共采集2 886张煤矸图像,采用LabelImg软件对每张图像中的煤矸类别和区域进行标注,检测类别包括煤和矸石2类。随机选取2 500张图像作为训练集,386张图像作为测试集,训练集和验证集的比例设置为9∶1。为了更好地反映模型的多目标检测效果,对测试集中煤和矸石样本数进行统计,结果见表1。根据表1得平均每张煤矸图像包含3.9个真实样本。

表1 煤矸测试集真实样本统计

3.2 模型训练

实验在TensorFlow2.0框架下进行,操作系统为Ubuntu18.04,处理器为Intel@Xeon E5-2630 v4,内存为16 GB,显卡为Quadro P2200,安装CUDA10.1和cudnn7.6.5支持图形处理器(Graphics Processing Unit,GPU)使用,编程语言采用python3.7。模型训练时,超参数batch size设置为8,epoch设置为500;初始学习率设置为0.001,并采用自动衰减策略调节学习率,当验证集损失值连续10次未下降10-4或上升时,学习率更新为原来的0.9倍;优化器采用Adam。

3.3 实验结果分析

采用平均精度(Average Precision, AP)、平均精度均值(mean Average Precision, mAP)和帧率3个指标对目标检测模型进行评估。设计消融实验测试本文改进策略的效果。首先,将未经改动的SSD模型作为基准模型,然后分别测试加入锚框优化方法、GhostNet和SAM的检测效果,最后将 3种改进策略同时加入SSD模型。所有实验均在同一煤矸数据集上进行,且实验环境和训练方式保持一致。实验结果见表2。

表2 消融实验结果

从表2可看出,基准模型分别加入锚框优化方法和SAM后,mAP均有所提升;采用GhostNet构建轻量化模型可在mAP损失很小的情况下,大幅提升模型检测速度;融合锚框优化方法、GhostNet、SAM的Ghost-SSD模型的mAP为88.7%,较基准模型提高3.6%,检测速度为108 帧/s,较基准模型提高75帧/s,实现了检测精度和速度的提升。

SSD模型与Ghost-SSD模型针对煤矸测试集中每一类的检测结果见表3。可看出Ghost-SSD模型较SSD模型对煤和矸石检测的AP分别提高3.4%,3.7%,进一步验证了Ghost-SSD模型可提高煤矸检测精度。

表3 SSD,Ghost-SSD模型检测结果对比

为了进一步探究SAM的效果,对SSD模型与引入SAM的模型进行对比实验,利用Grad-cam算法[22]生成显著图,对目标检测区域进行可视化分析,结果如图6所示。显著图上可显示与决策特征相关区域的显著度,颜色越深则显著度越高。从图6可看出,SSD模型引入SAM可提高前景区域的显著度,且可抑制背景噪声,有利于增强浅层特征的表征能力。

图6 煤矸显著图

SSD模型与Ghost-SSD模型的训练损失函数曲线如图7所示。可看出Ghost-SSD模型的训练损失初始值低于SSD模型,训练过程中Ghost-SSD模型的训练损失在迭代100次后降至1以下并逐渐稳定,且收敛值低于SSD模型。

图7 SSD,Ghost-SSD模型训练损失函数曲线

为了直观验证Ghost-SSD模型的有效性,从测试集中选取有代表性的图像进行实验。分别采用SSD模型和Ghost-SSD模型进行煤矸检测,结果如图8所示。可看出SSD模型对于第1张图像出现误检情况,对第2张、第4张图像出现漏检情况(第2张图像中漏检对象为表面与背景非常相似的矸石,第4张图像中漏检对象为小块矸石),对第3张图像出现定位误差较大情况,而Ghost-SSD模型均能准确检测出每张图像中的煤矸目标。

(a)原图

3.4 不同模型实验对比

在实验环境和数据集均一致的条件下,分别采用SSD300,SSD512,Faster-RCNN,Yolov3,Ghost-SSD模型进行煤矸检测实验,结果见表4。可看出SSD512模型的mAP高于SSD300,但输入分辨率的增大导致检测速度降低;Faster-RCNN模型的mAP最高,但检测速度在当前实验环境下只有10帧/s;Yolov3模型的检测速度较上述3种模型快,但精度较低;Ghost-SSD模型具有较高的检测精度和速度,优于其他模型。

表4 不同模型的煤矸检测结果

4 结论

(1)为了提高煤矸目标检测精度和速度,对SSD模型进行改进,设计了Ghost-SSD模型。该模型以GhostNet网络作为SSD模型主体网络层,提高了煤矸目标检测速度;在浅层特征图中引入SAM和扩张卷积,增强了浅层特征图对煤矸目标的表征能力,提高了对煤矸小目标的检测效果;针对煤矸特定检测目标进行K-means聚类锚框优化,提高了煤矸检测精度。

(2)基于Ghost-SSD模型提出了轻量化煤矸目标检测方法,通过实验得出采用Ghost-SSD模型进行煤矸检测的精度和速度均优于SSD,Faster-RCNN,Yolov3模型,且能够有效检测出煤矸小目标。

(3)下一阶段将重点研究在煤矸检测环节之后加入目标跟踪技术,提高煤矸识别定位稳定性。

猜你喜欢
锚框矸石卷积
基于YOLOv3锚框优化的侧扫声呐图像目标检测
锚框策略匹配的SSD飞机遥感图像目标检测
基于SSD算法的轻量化仪器表盘检测算法*
矿井矸石山环境危害与防治措施分析
基于温度场分布规律的矸石山注浆钻孔布置方案研究
基于GA-RoI Transformer的遥感图像任意方向目标检测
矿山矸石绿色充填系统设计及参数研究*
基于3D-Winograd的快速卷积算法设计及FPGA实现
粗矸石回收系统改造的实践
从滤波器理解卷积