周华平,郑 锐
(安徽理工大学 计算机科学与工程学院,安徽 淮南 232001)
目前我国在煤矿开采、运输以及人员调度过程中,有轨电机车的辅助运输发挥着重要作用,但是矿井下环境复杂,电机车造成的人员安全事故频发,造成恶劣的社会影响,井下电机车无人驾驶技术成为今后发展的必然趋势,而对列车前方轨道高效准确的识别,是实现无人驾驶技术的关键任务之一.煤矿井下环境复杂,轨道周围时常有碎石、积水等障碍物,又因为井下缺少光照以及巷道内灯光照射不均匀,导致井下轨道图像细节模糊、对比度低等特点,上述情况使得轨道检测变得困难.使用摄像头采集图像进行轨道的实时语义分割可以协助电机车感知前方的巷道环境,使其具备行进方向上的环境感知能力,提高煤矿生产过程中的生产效率.
当前对于轨道检测的研究,传统方法主要是基于手工设计特征[1-3],对轨道图像进行处理,手工提取轨道特征.但是手工设计轨道特征的检测方法大部分只能实现在轨道环境较为理想的情况下的检测工作,当实际情况较为复杂时,很难提取出轨道特征,并且无法在光照不均匀,轨道环境模糊的情况下进行检测.因此传统轨道检测方法在环境复杂时具有局限性,无法适用于井下环境的轨道检测工作.
近年来,随着深度学习技术的快速发展,研究人员开始探索将深度学习技术引入轨道检测领域,目前利用深度学习进行道路车道线检测算法[4-8]的研究较多,其特征结构与轨道十分相似,而直接应用到轨道检测的研究相对较少.Neven等[9]提出将每个车道视为一个实例,进行端到端训练,将车道检测问题转化为实例分割问题,使车道检测过程中遇到道路平面变化时具有鲁棒性.Pan等[10]提出空间卷积神经网络,将传统的深度逐层卷积概括为特征映射中的逐片卷积,从而实现了一层中跨行、跨列的像素之间的信息传递,结果表明,神经网络能够学习结构之间的空间关系,显著提高了性能.韩江洪等[11]提出在空间卷积神经网络的基础上,引入不同扩张率的扩张卷积,以此来改善网络整体的感受野,从而提高对具有大尺度特点的轨道特征的检测,然而由于计算量太大,无法满足实时性要求.卫星等[12]提出一种改进双边分割深度学习网络,改进了原网络的金字塔注意力模块以及通道注意力融合模块,实验表明,检测精度有一定的提升,可以有效识别轨道区域.
语义分割作为计算机视觉重要组成部分,如今已经广泛应用到了人们生产生活当中,特别在无人驾驶等领域,越来越多的语义分割方法在实际的使用中得到检验,使其日益成熟,这些方法在许多城市街道图像数据集上取得了良好的效果.Romera等[13]提出了一个能够实时运行的深度架构,使用了剩余连接和分解卷积,以保持高效的同时保持较好的准确性.Mehta等[14]提出了一种基于扩张卷积的高效空间金字塔模块(ESP),使其在计算、内存和精度方面都有高效的表现.Wu等[15]提出一种新的上下文引导网络(CGNet),该网络可以有效地学习局部特征和周围上下文的联合特征,通过周围上下文特征进一步改进联合特征,从而提高网络的实时性和准确率.Li等[16]提出网络从一个单一的轻量级骨干网络出发,通过子网络和子级联分别聚合鉴别特征,减少参数数量的同时,仍然获得了足够的感受野,增强了模型的学习能力,在速度和分割性能之间达到了平衡.BiSeNet( Bilateral Segmentation Network)[17]将分割任务分成两个并行的模块(空间路径模块和上下文路径模块),兼顾了高级特征和感受野的同时显著提高了网络的检测速度.
综上所述,由于基于手工设计特征的轨道检测方法具有一定的局限性,煤矿井下轨道识别从最初采用手工设计特征的检测方式逐渐开始采用深度学习技术.目前,利用深度学习技术的煤矿井下轨道检测的研究不多,现有研究存在实时性较差以及没有足够重视轨道连续长条形这一特殊结构.虽然语义分割网络BiSeNet具有良好的实时性,并在分类能力和感受野之间取得较好的平衡,但由于并行分支之间缺少信息交流,其在具有长条形结构特点的轨道检测任务中不能达到最好的效果.
因此,本文提出一种适用于煤矿井下轨道检测的改进BiSeNet实时语义分割网络.首先描述改进后的分割网络整体结构及其与原双边分割网络之间的区别,重点阐述提出的子网络特征融合模块在上下文路径中的作用.其次重点描述了用于将不同深度的特征进行聚合的子网络特征融合模块,详细描述子网络特征融合模块的结构.最后进行实验验证,对采集的煤矿井下轨道图像数据进行标注,制作煤矿井下轨道环境数据集,将改进网络与原网络以及现行2种代表性的语义分割网络进行对比分析.
语义分割技术作为计算机视觉的主要任务之一,它是基于图像的像素层面给图像某些区域打上对应的语义标签.近年来为实现语义分割实时性的要求,实时语义分割模型的加速取得一定进展,但目前主流的实时语义分割模型加速方法都是折中精度以求速度,如通过图像处理,对原图进行裁剪或直接改变原图的尺寸,来限定网络输入大小,从而降低计算复杂度.尽管这些方法在提升网络速度方面简单而有效,但是空间细节的损失还是会影响检测效果,尤其是边界部分,从而导致度量和可视化的精度下降.
双边分割网络(BiSeNet)包含两个组件,分别是空间路径(Spatial Path,SP)与上下文路径(Context Path,CP),前者通过获取更多的低级特征来解决深度网络存在空间信息缺失问题,后者主要解决感受野缩小的问题.双边分割网络如图1所示.
图1 双边分割网络
改进BiSeNet的语义分割网络模型总体结构也分为两个分支:空间路径(Spatial Path,SP)与上下文路径(Context Path,CP).SP模块用于获取高分辨率特征图,得到较为精确的空间信息.其结构由3层卷积层构成,每一层都包含一个步长为2的卷积层,然后进行批量标准化处理和ReLU非线性激活,经过此路径输出的图像尺寸是原始图像的1/8.
CP模块使网络获得较大的感受野.为保证实时性,提高计算计算速率,主干网络采用浅层残差网络(Residual Network-18,ResNet-18),作为轻量特征提取网络,ResNet-18可以进行快速下采样操作从而获得较大感受野.改进BiSeNet的语义分割网络模型如图2所示.在实时双边语义分割网络结构基础上,针对井下轨道呈现长条形结构等特点,提出用于将不同深度的特征进行聚合的子网络特征融合模块,进一步对高级特征进行处理,使高级特征得到精炼,同时融合主干网络各阶段相同尺寸的特征图,使上下文路径模块相对拥有更多低层特征和空域信息,保留轨道结构的空间细节信息,提升其对如轨道这种大尺度目标和精细结构边缘的判断能力.
图2 网络模型整体结构
子网络特征融合模块将主干网络的输出作为输入,精炼特征同时进一步提升网络性能,接着在子网络特征融合模块尾部追加一个全局平均池化层(Global Average Pooling,GAP)来获取较大的感受野,之后使用注意力优化模块(Attention Refinement Module,ARM),ARM通过全局平均池化获取原始图像全局语境的基础上,进一步计算注意力向量以指导特征学习,继而通过双线性插值上采样,使特征图尺寸与SP分路特征相同大小.通过特征融合模块(Feature Fusion Module,FFM),连接空间路径和上下文路径输出的特征,接着通过批归一化平衡特征的尺度,将相连接的特征池化为一个特征向量,并计算一个权重向量,这一权重向量可以重新加权特征以实现结合SP与CP的特征输出.
井下轨道具有长结构的形状特点,对于此类形状的检测需要较大感受野以及更多的低层特征和空间信息.语义分割任务中,空域金字塔池化(SPP)模块经常被用于解决高层特征,其被用于抽取高层语义上下文信息并提升感受野,然而,SPP模块很耗费时间.
运用主干网络输出的上采样结果代替高层操作,使用新增的子网络特征融合模块来融合主干网络各阶段特征,并精细化特征图.子网络采用与主干网络相同的轻量级特征提取网络,不同于SPP模型,子网络使特征图在较大分辨率下进行了细化,同时学习了亚像素的细节.
如图3所示,在主干网络16倍下采样之后,将其输出的特征图通过双线性插值进行4倍上采样,从而使输出的特征图尺寸与原图像经过4倍下采样的特征图尺寸相同,之后通过横向连接,将这些同尺寸的特征图进行拼接得到320通道的图片样本,再通过一层尺寸为3×3,步长为1,边缘像素填充为1的卷积层,将通道数量压缩至64,从而输入到子网络特征融合模块进行下一步的下采样操作,也就是可以看作一个从粗尺度到细尺度的像素分类.
图3 子网络特征融合模块
横向连接在每一阶段层级进行语义和空间信息的融合,也就是主干网络的某个阶段输出是子网络对应阶段的输入.子网络之后的每一步结果都与主干网络同一阶段特征进行融合,并通过相应的卷积层来有效降低特征的通道数,使子网络拥有更多的语义和空域信息.横向连接可以看作是将粗尺度和精细尺度的特征表达进行聚合,通过将大小相同的层级结合起来,可以保持感受野和高维结构细节信息,有利于对轨道长条形结构特点的识别.
最后经过3次下采样得到最终高级特征图.子网络特征融合模块使上下文路径可以在不增加过多计算成本的情况下充分利用分辨率较大的低层特征,传递融合了更多的空域信息来进行语义理解,从而在与空间路径的结合时达到更好的效果,提升网络对井下轨道这类大尺度目标的检测能力.
为验证改进网络对井下环境图像分割的有效性,通过统计平均交并比(Mean Intersection over Union,MIoU)、像素精度(Pixel Accuracy,PA)、平均像素精度(Mean Pixel Accuracy,MPA)3个指标来评价模型的综合性能.假定图像中分割类别有k+1类(包括k个目标类和1个背景类),pij(False Positives)表示本属于i类但被预测为j类的像素数量,pji(False Negatives)表示本属于j类但被预测为i类的像素数量,pii(True Positives)表示真实像素数量.
像素精度定义如下:
平均像素精度定义如下:
平均交并比定义如下:
其中:式(1)表示图像中分类正确的像素点数和所有的像素点数的比例;式(2)表示每一类分类正确的像素点数和该类的所有像素点数的比例然后求平均值;式(3)表示图像中预测区域和实际区域交集除以预测区域和实际区域的并集.
获取井下电机车车顶前部的大华摄像仪视频数据,通过smartplayer视频播放软件对视频数据进行截取,可以得到井下巷道环境以及轨道图像数据.过多单一场景下的图像数据,会造成数据冗余、图像差异性小等因素从而导致网络泛化能力差,因此,在截取轨道图像数据时,尽量截取多场景下、差异性大的轨道图像,对截取到的光线过强或过弱的,以及模糊不清的图像进行去除,避免对网络训练造成干扰.最后在总共256G的视频数据中获得1 500帧多场景、具有代表性、图片大小为960×720的图像数据.
使用标注软件labelme对轨道图像进行标注,根据井下巷道环境,数据集的图像标注区域有左安全区、左导轨、中间区、右导轨和右安全区,数据集标注区域如图4所示,图像其余未标注部分默认为背景.标注后图像不同区域会被不同颜色覆盖代表不同标签,并记录不同颜色RGB值及其所代表的标签,标注色对应的RGB值如表1所示.将数据集按7∶2∶1的比例划分训练集、测试集和验证集,其中训练集有1 050张,测试集有300张,验证集有150张.
图4 井下轨道环境标注
表1 各类别对应标注色
改进BiSeNet的煤矿井下轨道检测算法在win10+Intel(R)Core(TM)i7-9700 3.0GHz处理器+32GB内存+PyCharm+NVIDIATeslap100 16GB显卡+CUDA10.2+opencv4.0的软硬件平台上使用在井下采集并标注后的列车前方轨道环境数据集进行训练,采用resnet-18作为主干网络并初始化参数,设置学习率为0.002 5,衰减率为0.995,训练批次设置为1 000,批处理大小设置为12.
改进网络和原网络训练过程中,在数据集上的平均交并比变化曲线如图5所示,随着迭代次数增加平均交并比逐渐升高然后趋于稳定,最后原网络的平均交并比稳定在69.5%,改进网络达到了72.6%.
图5 实验对比
为验证改进网络对井下轨道环境的图像分割优势,将改进后算法与其他2种当前具有代表性语义分割网络(DFANet,CGNet)在同一轨道图像数据集下,采用相同的训练参数进行训练,并对训练结果进行对比测试.
不同网络在测试集中,对每一种分割目标的交并比测试结果统计如表2所示.
表2 不同方法对分割目标的交并比对比
对比不同方法在每一类分割目标上的交并比测试结果可知,改进网络在所有分割目标上均取得最高的交并比,达到最好的效果.对左侧安全区、右侧安全区、中间区、左导轨和右导轨五种类别的语义分割,分别达到了71.7%、72.4%、75.6%、69.2%、66.4%和72.3%的交并比.因此改进网络对井下轨道环境图像中的各类目标检测具有精度上的优势.
对4种网络进行综合对比测试,各网络的平均交并比、像素进度、平均像素精度和检测速率4个方面的表现结果如表3所示.
表3 不同方法性能指标对比
分析表3所展示的对比结果可以看出,在井下轨道环境图像语义分割精度上,改进网络在平均交并比、像素精度和平均像素精度上均具有明显优势,例如与原BiSeNet相比,在平均交并比上提高了6.3%,在像素精度上提高了5.5%,在平均像素精度上提高了7.1%,总体精度上得到了明显的提升.在检测速率上,改进网络检测一帧图像的平均时间需要23ms,帧率达到42帧/s,帧率略低于原BiSeNet,也低于对实时性特别优化的DFANet网络.实验结果表明改进网络在增加较少检测时间的情况下,在检测精度上相较于其他两种实时语义分割网络有较为明显的提高,具有更好的分割效果.
针对井下轨道及轨道周围环境检测问题,提出了一种基于实时双边语义分割网络的检测网络.该网络在原网络的结构基础上,在其上下文路径上添加了子网络融合模块,充分利用网络内低级特征的同时进一步精细化特征图.实验结果表明,该网络在采集到的井下轨道环境数据集上达到了72.8%的平均交并比,同时达到42帧/s的检测速率,在检测精度上相比于其他实时语义分割网络具有明显优势,基本满足对井下轨道环境的实时语义分割.今后可以采用更高效的实时语义分割模型针对井下轨道环境进行改进,同时扩充井下轨道环境数据集,以达到更好的井下轨道检测效果.