对采煤工作面人员进行实时检测,是保障采煤工作面人员安全的基础[1-3]。随着数字图像处理技术的飞速发展,目标检测方法已被广泛应用于智慧矿山建设中[4-5]。通过目标检测方法对采煤工作面视频监控图像进行分析和检测,判断采煤工作面是否有工人出现,并与煤矿井下安全监控系统报警产生联动,可以一定程度上保障煤矿生产安全。
近年来,基于深度学习的地面人员检测方法发展较快,学者们提出了卷积神经网络(Convolutional Neural Networks, CNN)模型、YOLO(You Only Look Once)网络、CenterNet等[6-9]。谢林江等[10]提出了一种加入选择性注意层的CNN模型,在INRIA数据集上的目标检测准确率达到96.14%;高宗等[11]提出了一种基于YOLO网络的行人检测方法,降低了误检率,提高了定位准确性;徐哲等[12]针对小目标行人漏检问题,提出了一种并行卷积神经网络,提升了小目标行人的检测准确率。姜建勇等[13]提出了一种PD-CenterNet(Pedestrian Detection CenterNet)模型,采用基于注意力机制的特征融合模块来对低级特征和高级特性进行融合,从而提升检测精度。由于井下采煤工作面检测环境较为特殊,存在粉尘严重、清晰度差、光照不足、局部强光照射等情况,上述方法应用于井下时检测效果不好。唐士宇等[14]提出了基于深度CNN的井下人员目标检测方法,能有效克服矿井中光线较暗、口罩遮挡、面部清洁度较差等问题,准确率达87.6%,但该方法因网络较深,计算量大,不能达到实时检测效果。
为减少网络训练参数、提高模型检测速度,本文提出了一种基于参数轻量化的井下人体实时检测算法,采用深度可分离卷积和倒置残差模块提取图像特征,减少了井下人体实时检测网络的学习参数,提高了计算效率,实现了实时检测。
基于深度学习的目标检测算法一般分为目标特征提取与目标分类2个部分。目标特征提取网络的性能受网络层数和运算方式的影响。网络层数越多,提取到的目标特征越细致,但计算量也越大。因此,构建井下人员特征提取网络时要注重卷积速度和检测精度的双向平衡。
考虑到实际应用中实时性要求和图形处理器(Graphics Processing Unit,GPU)性能,应在保证检测精度的前提下尽量减少网络参数[15-16]。因此,本文采用深度可分离卷积模块和倒置残差模块构建轻量级特征提取网络,采用网络参数较少且能满足实时性要求的单阶段目标分类网络,结合SSD(Single Shot MultiBox Detector)多尺度检测思想,实现井下人体实时检测。
深度可分离卷积通过深度卷积和逐点卷积相结合的方式提取高级特征[17]。深度卷积负责逐通道过滤空间信息,逐点卷积负责映射通道。这种方法可以将空间信息和通道信息分开,相较于传统的卷积方法,减少了参数数量,降低了运算成本。
传统卷积操作如图1所示。用N个大小为Dk×Dk×M的卷积核对通道数为M的特征图进行卷积,得到大小为Dw×Dw×N的特征图,此时参数量Cpar1和计算量Ccal1分别为
(1)
(2)
图1 传统卷积操作
Fig.1 Traditional convolution operation
深度可分离卷积操作如图2所示。用M个Dk×Dk×1的卷积核对通道数为M的特征图进行深度卷积,将卷积核拆分成为单通道形式,对每个通道进行卷积操作,得到与输入特征图通道数一致的输出特征图,其大小为Dw×Dw×M;再用N个1×1×M的卷积核对深度卷积得到的特征图进行逐点卷积,对特征图进行升维操作,最终得到大小为Dw×Dw×N的特征图。深度可分离卷积的参数量Cpar2和计算量Ccal2分别为
(3)
(4)
图2 深度可分离卷积操作
Fig.2 Depth separable convolution operation
深度可分离卷积的运算量相较于传统卷积操作均有大幅度下降,其比值为
(5)
N和Dk的最小值均为3,代入式(5)可得2种卷积的运算量比值为4∶9,深度可分离卷积很大程度上压缩了参数量和运算量,提升了特征提取网络的运算速度,为目标检测的实时性提供了保证。
倒置残差模块由2个逐点卷积模块和1个深度卷积模块构成,如图3所示。卷积步长为1的倒置残差模块使用快捷链接避免梯度消失。
(a) 卷积步长为1的倒置残差块
(b) 卷积步长为2的倒置残差块
图3 倒置残差模块结构
Fig.3 Structure of inverted residual module
深度卷积本身的计算特性决定了其不具备改变通道数的能力,为了在更高的维度上提取特征,在深度卷积之前增加1个逐点卷积模块进行升维。在首次逐点卷积和深度卷积过程中,激活函数是ReLu6。在MobileNet V2网络模型[18]中,将输入特征通过ReLu6函数嵌入到多维空间,按照不同的维度进行信息输出可以观察到,输入特征嵌入二、三维度时信息丢失严重,且随着维数的增加,输出特征容易陷入局部最优,找不到全局最优解,从而影响神经网络的性能。因此,在倒置残差结构的末次逐点卷积中,将ReLu6激活函数改为线性激活函数。由线性函数激活的降维结构称为线性瓶颈结构,该结构通过线性映射的方式解决信息丢失问题。
倒置残差结构增加了信息维度,通过更高维度的张量来提取足够多的信息,在运用深度可分离卷积减少参数量的情况下,保证特征提取网络的精确度。
SSD多尺度检测方法在检测速度和精度上有更好的平衡性[19]。特征层越多,其含有的语义信息越丰富,利用多层特征进行检测,对不同级别的特征进行融合,可有效提升检测精度。同时,目标检测的感受野随特征层的增加而逐渐变大,浅层特征用于检测小目标,深层特征用于检测大目标。
井下人体实时检测模型是以轻量级特征提取网络为基础的多尺度特征检测模型。在轻量级倒置残差特征提取网络的基本结构上增添传统卷积层至27层进行卷积操作,其中6层特征图被抽取进行多尺度预测。井下人体实时检测模型如图4所示,其中灰色部分为传统卷积模块,粉色部分为倒置残差模块,红色边框的6层网络作为不同尺度的特征图,被输入检测分类模块进行多尺度预测。快速非极大值抑制(Fast Non-Maximum Suppression,Fast NMS)检测框筛选部分通过计算检测框之间生成的交并比矩阵,删除与得分最高检测框的重叠率大于阈值的检测框,保留人体类别的最优检测器。
图4 基于参数轻量化的井下人体实时检测模型
Fig.4 Real-time detection model of underground human body based on lightweight parameters
更快速的区域卷积神经网络(Faster Region-based Convolutional Neural Networks,Faster R-CNN)[20]是一种双阶段的深度学习模型,在训练样本很少的情况下也具有很高的精确度。VGG16+Faster R-CNN模型和VGG16+多尺度检测模型是最常用的人体检测模型,均利用VGG16网络进行特征提取。Faster R-CNN方法将底层特征图分别输入到区域建议网络和分类回归网络,精度高但网络参数多,计算缓慢;而多尺度检测方法在VGG16的第5个卷积模块上剔除了全连接操作,继续添加卷积层直接进行多尺度预测,相较Faster R-CNN大大减少了网络参数,提升了运算速度,但还是不足以进行实时人体检测。模型固化后,在NVIDIA GeForce GTX 1080的GPU下,对比各常用人体检测模型的大小及检测速率,结果见表1。可见,轻量化多尺度检测模型最小,而检测速率最高,更能满足实时检测要求。
表1 人体检测模型性能对比
Table 1 Comparison of human body detection model performance
模型模型大小/MB帧率/(帧·s-1)VGG16+Faster R-CNN521≈3VGG16+多尺度检测100≈12轻量化多尺度检测18≈35
井下采煤工作面环境与地面人员检测环境在光照条件、人体姿态等方面存在巨大差异。现存公开人体检测数据集均为地面人体数据集,使用公开的行人检测数据集CUHK Occlusion Dataset(共1 063张行人图像)对本文所提井下人体实时检测模型进行训练,得到人体检测模型参数。利用模型对100张包含采煤工作人员的井下测试图像(共包含106个井下人员)进行检测,正确检测出井下工作人员样本框24个,将背景误检为人体的错误样本框16个,漏检数为82,模型检测精度为0.6,模型召回率为0.23。
测试结果表明,采用地面人体数据集对井下人体实时检测模型进行训练,不能达到实际应用要求,需要构建井下采煤工作面人员检测数据集,供深度学习网络进行学习。
由于标注工作十分耗费人力,小数据量无法保证轻量级检测网络的精确性,本文设计了一种半自动人体数据标注方法,用于井下场景人体目标标注及数据扩增,以降低井下人体检测误检率及漏检率。
采煤工作面人员的主要特征如下:蓝灰色制服(双臂、前胸、后背、双腿侧有反光条),红色安全帽,帽顶前方有矿灯,矿灯在环境中光照强度大。
实验图像源于淮北矿业股份有限公司袁店一矿某采煤工作面的监控视频。从视频数据中每20帧截取1张,获得1 000张采煤工作面人员图像。将1 000张图像打乱顺序,抽取其中200张,使用LableImg工具进行人体标注,获得与原图同名的标注xml文件,包含标注类别、人员数量、人体区域的起止坐标等信息。标注数据按照VOC数据集标准进行存放。
将200张图像送入轻量级井下人体实时检测网络中进行训练,总轮次为20 000左右时,模型基本完成收敛,即模型损失不再有明显稳定下降趋势。生成的初代模型在测试集上的测试结果如图5所示,可见,该模型漏检、误检严重,无法准确识别并定位井下人体。
(a) 误检情况
(b) 漏检情况
图5 初代人体检测模型测试结果
Fig.5 Test results of the first generation human body detection model
上述测试结果是深度学习模型欠拟合的表现,欠拟合的解决方法一般有增大网络参数、增加迭代次数、扩大数据集等。由于模型在20 000次迭代下的损失已经趋于稳定,增加迭代次数的方法不可取。为了最大程度保证轻量级目标检测网络的实时性,在不改变网络深度的前提下,采取扩增训练数据集的方式解决欠拟合问题。
若采用人工标注方法扩增训练数据集,需耗费大量时间和人力。因此,本文搭建Faster R-CNN,利用已有的200张标注图像进行模型训练,得到一个可以进行半自动标注的检测网络。
Faster R-CNN通过20 000次迭代训练后,在测试数据集上表现出了很好的效果,半自动标注与手动标注效果对比如图6所示。
(a) 第1组,手动
(b) 第1组,半自动
(c) 第2组,手动
(d) 第2组,半自动
(e) 第3组,手动
(f) 第3组,半自动
(g) 第4组,手动
(h) 第4组,半自动
图6 手动标注与半自动标注效果对比
Fig.6 Comparison of manual annotation and semi-automatic annotation
图6中,第1—3组半自动标注与手动标注的交并比均值为95.6%,可以直接作为标注数据使用,第4组半自动标注与手动标注的交并比虽然只有68.7%,但标注方式符合人体重心比例,也可直接作为标注数据使用。其他类型数据可根据需要进行人工微调。这种半自动标注方法可显著减少人工工作量。
通过基于Faster R-CNN的半自动人体数据标注方法将采煤工作面人员检测训练数据集扩增到1 000张,包含仰面人体、背蹲人体、正蹲人体、背爬人体、半身人体各200张,其中仰面人体图像中包含50张强光图像。平均分布数据集中各种人员状态,可保证网络检测的准确性。
网络的损失函数由分类置信度损失和位置回归损失组成。分类置信度损失Lconf为
(6)
式中:i为搜索框序号,i∈Pos表示分类为非背景,i∈Neg表示分类为背景;j为真实框序号;p为类别序号,p=1代表人体,p=0代表背景;表示第i个搜索框与第j个真实框关于类别p是否匹配,若匹配度大于阈值则取值为1,否则取为第i个搜索框对应类别p的softmax概率;为第i个搜索框对应类别p的真实概率。
位置回归损失Lloc为
(7)
式中:smoothL1为防止训练梯度爆炸的函数;为第i个搜索框的位置信息;表示与第i个搜索框的交并比大于阈值的真实框的位置信息;m为包含框的中心点横纵坐标、宽度和高度的集合。
总损失L为
(8)
式中:K为匹配成功的边框数目;α为位置损失权重。
训练过程中的损失曲线对比如图7所示。通过半自动标注方法扩增训练数据集后,模型的学习速度和效率表现更好。图7中,橙色曲线为200张训练图像经20 000次迭代后的损失情况,其下降缓慢,振荡严重,误检、漏检情况严重。蓝色曲线为通过半自动标注方法扩增到1 000张训练图像后经20 000次迭代的损失情况,其收敛迅速,振荡相对较小,漏检、误检情况较少。
模型训练过程中损失值变化情况对比见表2。由表2及图7可知,在深度学习训练中,随着样本数量的增加,训练初始损失值增大,但损失值会更快速、平稳地下降,最终结果更接近于真实情况。
(a) 分类损失
(b) 定位损失
(c) 总损失
图7 训练过程中的损失曲线对比
Fig.7 Comparison of loss curves during training
表2 损失值变化情况对比
Table 2 Comparison of loss value changes
损失类型200张训练图像损失值1 000张训练图像损失值初始值结果值初始值结果值分类损失9.2782.8439.4841.194定位损失3.0150.5943.1900.146总损失12.5903.76612.9701.669
模型在大部分测试数据上的检测表现良好,但在一些数据上的结果还有改进的空间,尤其是将背景检测成人员的误检情况相对较多,此类情况有很大的改进空间。鉴于此类误检情况光照情况良好,在正常光照下,一般工服为偏蓝色,图像中蓝色通道(B)数值较大,工帽为偏红色,红色通道数值(R)偏大。
通过计算B、R通道均值与候选框像素点差值之和,剔除差值和在10以下的候选框,可以对深度学习模型的检测框进行进一步筛选,剔除一些误检框。颜色信息修正结果如图8所示,结果表明,利用矿工服装颜色信息对结果框进行二次筛选,能有效剔除将背景检测为人体的误检框。
(a) 误检情况1
(b) 二次筛选结果1
(c) 误检情况2
(d) 二次筛选结果2
(e) 误检情况3
(f) 二次筛选结果3
图8 颜色信息修正结果
Fig.8 Color information correction result
经过井下数据集训练及颜色信息修正的轻量化井下人体实时检测模型在测试集上的部分检测结果如图9所示。测试结果表明,本文模型在井下各种复杂的人体形态及光照条件下都能得到准确的检测结果。
(a) 仰面人体
(b) 强光仰面人体
(c) 背蹲人体
(d) 正蹲人体
(e) 背趴人体
(f) 半身人体
图9 井下人体实时检测模型测试结果
Fig.9 Test results of real-time detection model of underground human body
井下人体检测任务具有二分类特性,故选取精度J与召回率Z作为评价指标。精度指检测出的区域确实为井下人员的占比,召回率指检测出的井下人员占实际人员数量的比例,其计算公式分别为
(9)
(10)
式中:ITP为正样本(井下人员)被正确分为正样本的数量;IFP为负样本(背景)被错误分为正样本的数量;IFN为正样本被错误分为负样本的数量。
用轻量化井下人体实时检测模型对100张测试图像(共包含106个井下人员)进行检测,结果见表3。
表3 井下人体实时检测模型评价指标
Table 3 Evaluation index of real-time detection model of underground human body
指标数值ITP104IFP8IFN2J/%92.86Z/%98.11
从表3可见,模型的精度为92.86%,即模型误检率为7.14%;召回率为98.11%,即漏检率不足2%,可以满足应用要求。
(1) 井下人体实时检测模型通过深度可分离卷积压缩参数量和运算量,通过倒置残差结构保证特征提取网络的精确度,采用SSD多尺度检测方法平衡检测速度和精度。测试结果表明,该模型的大小为18 MB,帧率约为35帧/s,性能优于常用的VGG16+Faster R-CNN模型和VGG16+多尺度检测模型。
(2) 设计了基于Faster R-CNN的人体数据半自动标注方法,将训练数据集由200张训练图像扩增到1 000张。测试结果表明,在深度学习训练中,随着样本数量的增加,训练初始损失值增大,但损失值会更快速、平稳地下降,最终结果更接近于真实情况。
(3) 利用矿工服装颜色信息对检测结果框进行二次筛选,剔除将背景检测为人体的误检框。测试结果表明,轻量化井下人体实时检测模型的精度达92.86%,召回率为98.11%,有效解决了井下人员漏检及误检问题。
(4) 基于参数轻量化的井下人体实时检测算法对袁店一矿监控图像的检测效果良好,但未对其他矿井监控图像进行测试,接下来将对算法的泛化能力进行进一步研究。
[1] 杨建忠.煤矿采矿作业事故的原因及策略[J].能源与节能,2020(8):141-142.
YANG Jianzhong.Causes and strategies of mining accidents in coal mines[J].Energy and Energy Conservation,2020(8):141-142.
[2] 曹相.综放工作面安全避险系统的设计[J].煤,2020,29(6):57-58.
CAO Xiang.The design of safety system for fully-mechanized caving face[J].Coal,2020,29(6):57-58.
[3] 吕勇.煤矿采矿工程中的不安全技术因素[J].当代化工研究,2020(2):47-48.
LYU Yong.Unsafe technical factors in coal mine mining engineering[J].Modern Chemical Research,2020(2):47-48.
[4] 吕鹏飞,何敏,陈晓晶,等.智慧矿山发展与展望[J].工矿自动化,2018,44(9):84-88.
LYU Pengfei,HE Min,CHEN Xiaojing,et al.Development and prospect of wisdom mine[J].Industry and Mine Automation,2018,44(9):84-88.
[5] 段志强.煤矿智能化开采关键核心技术分析[J].中国设备工程,2020(4):21-22.
DUAN Zhiqiang.Analysis on the key core technology of intelligent mining in coal mines[J].China Plant Engineering,2020(4):21-22.
[6] 罗元,王薄宇,陈旭.基于深度学习的目标检测技术的研究综述[J].半导体光电,2020,41(1):1-10.
LUO Yuan,WANG Boyu,CHEN Xu.Research progresses of target detection technology based on deep learning[J].Semiconductor Optoelectronics,2020,41(1):1-10.
[7] 王文豪,高利,吴绍斌,等.行人检测综述[J].摩托车技术,2019(1):29-32.
WANG Wenhao,GAO Li,WU Shaobin,et al.Review of pedestrian detection[J].Motorcycle Technology, 2019(1):29-32.
[8] 徐涛,马克,刘才华.基于深度学习的行人多目标跟踪方法[J].吉林大学学报(工学版),2021,51(1):27-38.
XU Tao,MA Ke,LIU Caihua.Multi object pedestrian tracking based on deep learning[J].Journal of Jilin University(Engineering and Technology Edition),2021,51(1):27-38.
[9] 董永昌,单玉刚,袁杰.基于改进SSD算法的行人检测方法[J].计算机工程与设计,2020,41(10):2921-2926.
DONG Yongchang,SHAN Yugang,YUAN Jie.Pedestrian detection based on improved SSD[J].Computer Engineering and Design,2020,41(10):2921-2926.
[10] 谢林江,季桂树,彭清,等.改进的卷积神经网络在行人检测中的应用[J].计算机科学与探索,2018,12(5):708-718.
XIE Linjiang,JI Guishu,PENG Qing,et al.Application of preprocessing convolutional neural network in pedestrian detection[J].Journal of Frontiers of Computer Science & Technology,2018,12(5):708-718.
[11] 高宗,李少波,陈济楠,等.基于YOLO网络的行人检测方法[J].计算机工程,2018,44(5):215-219.
GAO Zong,LI Shaobo,CHEN Jinan,et al.Pedestrian detection method based on YOLO network[J].Computer Engineering,2018,44(5):215-219.
[12] 徐喆,王玉辉.基于候选区域和并行卷积神经网络的行人检测[J].计算机工程与应用,2019,55(22):91-98.
XU Zhe,WANG Yuhui.Pedestrian detection based on candidate regions and parallel convolutional neural network[J].Computer Engineering and Applications,2019,55(22):91-98.
[13] 姜建勇,吴云,龙慧云,等.PD-CenterNet:基于CenterNet的实时行人检测模型[J/OL].计算机工程:1-9[2021-05-31].https://doi.org/10.19678/j.issn.1000-3428.005904.
JIANG Jianyong,WU Yun,LONG Huiyun,et al.PD-CenterNet:real-time pedestrian detection model based on CenterNet[J/OL].Computer Engineering:1-9[2021-05-31].https://doi.org/10.19678/j.issn.1000-3428.005904.
[14] 唐士宇,朱艾春,张赛,等.基于深度卷积神经网络的井下人员目标检测[J].工矿自动化,2018,44(11):32-36.
TANG Shiyu,ZHU Aichun,ZHANG Sai,et al.Target detection of underground personnel based on deep convolutional neural network[J].Industry and Mine Automation,2018,44(11):32-36.
[15] 王勇.煤矿井下人员视频图像识别跟踪的研究与应用[J].电子测量技术,2020,43(1):28-31.
WANG Yong.Research and application of video image recognition and tracking for underground personnel in coal mine[J].Electronic Measurement Technology,2020,43(1):28-31.
[16] JIAO L,ZHANG F,LIU F,et al.A survey of deep learning-based object detection[J].IEEE Access,2019,7:128837-128868.
[17] 任宇杰,杨剑,刘方涛,等.基于SSD和MobileNet网络的目标检测方法的研究[J].计算机科学与探索,2019,13(11):1881-1893.
REN Yujie,YANG Jian,LIU Fangtao,et al.Research on target detection method based on SSD and MobileNet network[J].Journal of Frontiers of Computer Science & Technology,2019,13(11):1881-1893.
[18] SANDLER M,HOWARD A,ZHU M,et al.MobileNetV2:inverted residuals and linear bottlenecks[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition,Salt Lake City,2018.
[19] 赵永强,饶元,董世鹏,等.深度学习目标检测方法综述[J].中国图象图形学报,2020,25(4):629-654.
ZHAO Yongqiang,RAO Yuan,DONG Shipeng,et al.Survey on deep learning object detection[J].Journal of Image and Graphics,2020,25(4):629-654.
[20] REN S,HE K,GIRSHICK R,et al.Faster R-CNN:towards real-time object detection with region proposal networks[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.
DONG Xinyu,SHI Jie,ZHANG Guoying.Real-time detection algorithm of underground human body based on lightweight parameters[J].Industry and Mine Automation,2021,47(6):71-78.