基于Mask RCNN的矿仓入料口 | ![]() |
b. 江西理工大学江西省矿冶机电工程研究中心,江西 赣州 341000
b. Jiangxi Mining and Metallurgy Engineering Research Center, Jiangxi University of Science and Technology, Ganzhou 341000, Jiangxi, China
矿业是我国的基础产业,随着工业4.0的提出,智慧矿山取代传统矿山已成为未来发展的趋势。5G网络、人工智能、云计算等新兴技术的快速发展为智慧矿山提供了强有力的技术支持。在矿物加工过程中,为了保证磨机的工作效率,会对磨机入料口的矿石粒径有一定要求,所以会在矿仓入口设置爬栏式倒矿口来保证矿石粒径的要求,但经常会出现较大的矿石堵塞倒矿口的现象,如果不及时处理,将直接影响矿仓仓储,严重影响磨机工作效率和矿山产能的释放。常规做法是人工判断堵塞矿石位置,并用机械手沿垂直方向自上而下破碎堵塞矿石,由于人工操作存在着较大的误差,且现场工况环境比较复杂,这些因素都极大地影响倒矿口的清堵效率,因此研究一种智能清堵机械手成为迫切的需求。
近年来,随着深度学习[1]的快速发展,卷积神经网络已经广泛地应用到目标检测领域[2],主要由两部分组成。一是One-stage目标检测算法,代表算法有YOLO(you only look once)[3-5]、SSD[6]等基于CNN[7]网络和回归网络的目标检测算法,其采用端到端的检测方法,具有较高的检测速度,但是在检测精度上还有待提升[8];二是Two-stage目标检测算法,代表算法有R-CNN[9]、Fast R-CNN[10]、Faster R-CNN[11]以及本文所采用的Mask RCNN等[12]基于CNN网络和RPN网络的目标检测算法,相对于One-stage目标检测算法,Two-stage目标检测算法具有更高的检测精度[13],适用于对精度要求较高的场合。Mask RCNN是在2017年提出的,采用的是基于掩码区域卷积神经网络,其在Faster R-CNN基础上增加了语义分割的分支,实现了在一个网络中同时做到目标检测和语义分割[12]。陶志勇等利用Mask RCNN实现对无分割手写字符串的识别[14];钟伟镇等利用Mask RCNN实现了复杂背景下多目标叶片的分割与识别,实验证明该算法具有很好的迁移学习能力[15]。
本文在Mask RCNN的基础上提出了基于HSV模型的矿石定位方法,可根据矿石轮廓进行精确定位,有效避免了因矿石形状和位姿带来的定位误差,提高了对矿石的定位精度。该研究结果可以为智能清堵机械手提供精确的视觉引导,对于提高倒矿效率,降低矿山生产成本,消除安全隐患具有实践意义。
1 Mask RCNN网络架构Mask RCNN是由何凯明在2017年提出的目标检测分割算法[12],采用两阶段的框架:第一阶段扫描图像并生成提议(Proposals,即有可能包含一个目标的区域);第二阶段分类提议并生成边界框和掩码。Mask RCNN是在Faster R-CNN基础上增加一个语义分割的分支,实现在进行目标检测的同时进行语义分割。Mask RCNN的网络架构主要由主干网络CNN(采用ResNet101+FPN作为特征提取器)、区域建议网络(RPN)、ROI分类器和边界框回归器、分割掩码4部分组成,网络结构如图 1所示。
![]() |
图 1 MaskRCNN网络结构 Fig. 1 Network structure of Mask RCNN |
将矿石图像传送到CNN网络进行特征提取,由于矿石图像环境背景复杂,所以采用特征提取能力更强的深度残差网络ResNet101与FPN相结合作为特征提取模块对矿石图像进行特征提取,其中ResNet101可以提取出低级特征(矿石边缘,角点)和高级特征(矿石种类和形状,背景等),形成5层不同大小和维度的特征层,FPN的加入是为了弥补ResNet101无法检测较小矿石的特征,可以将各层特征更好地融合,充分利用ResNet101各个特征层提取的特征,将CNN网络提取的特征图传送到区域候选网络。区域候选网络是将图像分为目标矿石和背景2个分类,并用贴合目标矿石的方框将矿石框选出来,此时只能得到目标矿石的大致区域,而无法进行细致的分类和目标矿石分割。经过候选区域网络可以得到多个包含目标矿石的候选框,再由ROIAlign池化为固定大小的特征图,将得到的特征图分别输入后续的2个分支中,其中的一个分支网络通过兴趣区域(ROI)分类器和边框回归器进行目标矿石的识别,兴趣区域(ROI)分类器和边框回归器均是由一个全连接层组成,兴趣区域(ROI)分类器通过全连接层获取准确的目标矿石类别,边框回归器通过全连接层选取合适的兴趣区域的中心点坐标和长宽比,使兴趣区域尽可能贴合目标矿石的边缘;另一个分支是分割掩码生成网络,由一个全卷积网络构成,该网络会生成一个与目标矿石大小和形状一致的掩膜对目标矿石进行实例分割。最终会将目标矿石检测与分割的结果相融合,得到与原图大小一致且包含目标矿石类别和形状的检测结果。
2 基于HSV模型的矿石定位Mask RCNN在对目标矿石的定位中只能得到目标矿石外接矩形框的中心点坐标,因此其定位精度很大程度上受回归边框以及矿石形状和位姿的影响。本文主要在Mask RCNN的基础上添加基于HSV模型[16]的轮廓检测,通过计算轮廓的几何矩来求解目标矿石的形心坐标。首先,令Mask RCNN输出用蓝色标记的矿石轮廓的图片作为形心坐标求解的输入,将图片由RGB空间转换到本文采用的HSV空间,通过颜色识别提取矿石轮廓,采用二值化和高斯滤波[17]滤除噪声,利用开运算进行形态学处理,最后通过计算轮廓几何矩[18]求取矿石轮廓的形心坐标。流程简图如图 2所示。
![]() |
图 2 矿石形心坐标求解流程 Fig. 2 Flow chart for solving the centroid coordinates of ore |
2.1 HSV与RGB颜色空间模型
在图像处理领域存在着多种描述颜色的空间模型,最为常见的是RGB空间模型,是由R(Red:红)、G(Green:绿)、B(Blue:蓝)3种基本颜色为基础,进行不同比例的叠加,产生广泛而丰富的颜色,此外还有HIS和HSV 2种以圆柱坐标系中的圆锥体所表示的颜色空间模型。由于RGB空间模型受光照的影响较大[19],相近颜色的R、G、B值相差可能很大,而HSV模型由H(色度)、S(饱和度)、V(亮度)构成的均匀的颜色空间,即相近颜色的H、S、V值接近,是一种比较直观的颜色模型,更符合人眼的视觉特征[20]。因此本文选择在HSV颜色空间下进行图像处理。HSV模型如图 3所示。
![]() |
图 3 HSV颜色空间模型 Fig. 3 Model of HSV color space |
2.2 RGB到HSV转换
由RGB模型到HSV模型的转换遵循以下表达式:
![]() |
(1) |
![]() |
(2) |
![]() |
(3) |
式(1)、式(2)、式(3)中:Δ为R、G、B三分量的最大差值,Max为R、G、B三分量的最大值。
2.3 基于HSV颜色特征的矿石轮廓提取通过对RGB到HSV空间模型的转换分析,将Mask RCNN输出的RGB矿石图像通过设定HSV空间蓝色取值范围对其进行分割,从复杂背景中将矿石轮廓提取出来。HSV空间蓝色的取值范围如表 1所列。
表 1 HSV分量取值范围 Table 1 Value range of each HSV component |
![]() |
点击放大 |
根据表 1的HSV空间下蓝色取值范围对矿石轮廓进行分割。设RGB矿石图像为f(x, y), 其大小设为[m, n, l],矿石轮廓提取的步骤为:
1)将原始的RGB矿石图像转换到HSV空间,得到HSV空间图像G(x, y)。
2)定义目标矩阵1,大小设为[m, 1],将HSV空间图像G(x, y)在H分量[0.56~0.71]、S分量[0.36~1]、V分量[0.36, 1]范围内的所有像素点在y方向上进行标记,并把标记后的结果存储在目标矩阵1中,定位区间位置为[1:m]。
3)定义目标矩阵2,大小设为[1, n],将HSV空间图像G(x, y)在H分量[0.56~0.71]、S分量[0.36~1]、V分量[0.36, 1]范围内的所有像素点在x方向上进行标记,并把标记后的结果存储在目标矩阵2中,并确定标记蓝色像素点的最小位置pos1和最大位置pos2,定位区间位置为[pos1, pos2]。
4)将2个定位区间位置[1:m]和[pos1, pos2]返回到原图,即可得到图像分割后的结果。
如图 4所示,从上到下依次是修改后的模型识别的结果和基于HSV颜色空间的矿石轮廓提取的结果。
![]() |
图 4 矿石轮廓提取示意 Fig. 4 Extraction map of ore profile |
2.4 基于HSV颜色特征的矿石定位
在对矿石定位时,原始的Mask RCNN网络模型只能获取矿石外接矩形框的位置,为了满足机械手对矿石精准定位的要求,需要求解能够代表矿石位置的精准坐标即矿石的形心坐标,首先要计算矿石轮廓的几何矩,如式(4)所示:
![]() |
(4) |
式(4)中:I(x, y)表示的是(x, y)处的像素值。当i和j同时取0时,称为零阶矩,可以用于计算矿石轮廓的形心坐标,即:
![]() |
以某企业钨矿石作为训练样本,共采集图像1 352张,为保证数据集的普适性,选取1 000张包含各种形状、数量和位姿的矿石图像作为网络的训练集和测试集,数据集包括单个矿石(图 5(a))、多个分散矿石(图 5(b))和多个矿石堆叠(图 5(c))的矿石图像。随机选取各类型矿石图像共900张作为网络的训练集,余下的100张矿石图像作为网络的验证集。用标注软件Labelme将矿石图像中目标矿石进行标注,并使用数字标签对矿石进行识别和区分。标注所生成的标签文件和标注点坐标等标注信息都保存到与原图相对应的json文件中。将标注好的数据集转换成网络训练所用的coco数据集格式。
![]() |
图 5 模型训练的数据集 Fig. 5 Data set for model training |
3.2 训练平台与模型训练
本文所有实验均在Win10操作系统下进行,计算机的处理器是AMD Ryzen 74800H with Radeon Graphics 2.90 GHz,显卡为GeForce GTX 1060Ti,显存为6 GB。在此计算机的基础上搭建Tensorflow-GPU的深度学习环境,用Python语言在VScode编译器下实现Mask RCNN网络的训练和测试。
对Mask RCNN网络模型进行训练时,首先将训练集的图像调到512像素×512像素,设置预训练模型的网络参数,将RPN的anchor设为(16,32,64,128,256),迭代次数(max epoch)设置为200,初始学习率为0.01,动量因子设置为0.9。
3.3 结果分析Mask RCNN网络在train_data数据集上的损失函数值变化曲线如图 6所示。图 6中横坐标为网络训练时的迭代次数。由图 6可知,随着迭代次数的增加,网络训练模型在train_data数据集上的损失值持续下降,前10次的迭代损失值下降较快,说明网络训练模型的参数和最佳参数之间存在较大的差异,通过验证集不断地对网络训练模型参数进行优化,最终使其逼近最优值。迭代次数在10~150之间的损失值下降较为平缓,说明此时网络训练模型的参数已接近最优值,为了避免出现网络训练过拟合的现象,通过降低学习率来对网络模型参数进行微调。当迭代次数达到150次之后,训练集的损失值稳定在0.025左右,说明此时网络模型的训练已经基本收敛,达到了较好的训练效果。
![]() |
图 6 网络训练损失变化曲线 Fig. 6 Network training loss change curve |
为进一步验证网络模型的准确性,将训练好的网络模型在测试集上进行测试,最终得到该模型的准确率(P)、召回率(R)及度量准确率和召回率的函数(F1)如表 2所列。
表 2 Mask RCNN在测试集上的准确率(P)召回率(R)和F1 Table 2 Mask RCNN's accuracy (P), recall (R) and F1 on the test set |
![]() |
点击放大 |
由表 2可得该模型的准确率可以达到97.6%,表明Mask RCNN在矿石识别方面有着较为出色的表现,具有一定的工业应用潜力。但是在对矿石定位时只能给出矿石外接矩形框的位置,无法满足机械手对定位精度的要求,因此提出在HSV颜色空间下依据矿石轮廓求取矿石轮廓形心坐标来代替矩形框的定位方法,以避免因矿石形状特异而带来的定位误差。
为验证定位算法的优越性,选取了4种典型形状的矿石进行定位效果对比,为避免因拍摄角度导致矿石轮廓的差异,采用垂直向下的固定视角进行矿石图像采集,对比结果如图 7所示,2种定位算法对于椭圆形矿石和矩形矿石都有着很好的表现,但对于凹三角形矿石,Mask RCNN外接矩形框的中心点会落在矿石外部,对于近似三角形矿石,其外接矩形框的中心点会落在矿石的边缘,所以Mask RCNN外接矩形框的定位算法无法准确地表述这类矿石的实际位置,而基于HSV模型的矿石定位方法不受矿石形状的影响,始终可以定位到矿石的形心,更能准确地表述矿石的实际位置。
![]() |
图 7 2种定位效果对比结果 Fig. 7 Comparison results of two positioning effects |
为验证本文算法的普适性和准确性,共采集100张包含不同数量、位姿和堆叠情况的矿石图片进行测试,测试结果如图 8所示,可见本文改进的定位算法可以实现在复杂环境下对矿石的精准定位。
![]() |
图 8 改进后MaskRCNN矿石识别定位结果 Fig. 8 Recognition and positioning results of the improved Mask RCNN |
4 结论
1)提出了基于Mask RCNN的矿石识别方法,实验结果表明:该方法在复杂的工况背景下对矿仓入料口堵塞矿石的识别精度高,鲁棒性好。训练后的模型在测试集上的识别准确率为97.6%,在GPU上的检测速度可以达到3 FPS。
2)针对Mask RCNN在对矿石的定位上只能给出矿石的外接矩形框的坐标,提出在HSV颜色空间下根据矿石的轮廓求解矿石形心坐标的定位方法,与原始的Mask RCNN定位效果相比极大地提高了矿石的定位精度。
[1] |
LECUN Y, BENGIO Y, HINTON G. Deep learning[J].
Nature, 2015, 521(7553): 436–44. |
[2] |
张顺, 龚怡宏, 王进军. 深度卷积神经网络的发展及其在计算机视觉领域的应用[J].
计算机学报, 2019, 42(3): 453–482.
|
[3] |
REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: unified, real-time object detection[C]// IEEE Conference on Computer Vision and Pattern Recognition, 2016: 779-788.
|
[4] |
REDMON J, FARHADI A. YOLO9000: Better, faster, stronger[C]// IEEE Conference on Computer Vision and Pattern Recognition, 2017: 6517-6525.
|
[5] |
REDMON J, FARHADI A. YOLOV3: An incremental improvement[C] //IEEE Conference on Computer Vision and Pattern Recognition, 2018: 1-6.
|
[6] |
LIU W, ANGUELOY D, ERHAN D, et al. SSD: single shot multibox detector[C]// European Conference on Computer Vision, 2016: 21-37.
|
[7] |
周飞燕, 金林鹏, 董军. 卷积神经网络研究综述[J].
计算机学报, 2017, 40(6): 1229–1251.
|
[8] |
范丽丽, 赵宏伟, 赵浩宇, 等. 基于深度卷积神经网络的目标检测研究综述[J].
光学精密工程, 2020, 28(5): 1152–1164.
|
[9] |
GIRSHICK R, DONAHUE J, DARRELLAND T, et al. Rich feature hierarchies for object detection and semantic segmentation[C]//Conference on Computer Vision and Pattern Recognition, 2014: 580-587.
|
[10] |
GIRSHICK R. Fast R-CNN[C]//Proceedings of the IEEE International Conference on Computer Vision, 2015: 1440-1448.
|
[11] |
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: 1137-1149.
|
[12] |
HE K M, GKIOXARI G, DOLLÁR P, et al. Mask RCNN[C]//IEEE International Conference on Computer Vision, 2017: 2980-2988.
|
[13] |
李维刚, 叶欣, 赵云涛, 等. 基于改进YOLOv3算法的带钢表面缺陷检测[J].
电子学报, 2020, 48(7): 1284–1292.
DOI: 10.3969/j.issn.0372-2112.2020.07.006.
|
[14] |
陶志勇, 韩月明, 林森. 基于Mask-RCNN无分割手写数字字符串的识别[J].
激光与光电子学进展, 2020, 57(14): 122–129.
|
[15] |
钟伟镇, 刘鑫磊, 杨坤龙, 等. 基于Mask-RCNN的复杂背景下多目标叶片的分割和识别[J].
浙江农业学报, 2020, 32(11): 2059–2066.
DOI: 10.3969/j.issn.1004-1524.2020.11.17.
|
[16] |
南栋, 毕笃彦, 查宇飞, 等. 基于参数估计的无参考型图像质量评价算法[J].
电子与信息学报, 2013, 35(9): 2066–2072.
|
[17] |
李健, 丁小奇, 陈光, 等. 基于改进高斯滤波算法的叶片图像去噪方法[J].
南方农业学报, 2019, 50(6): 1385–1391.
DOI: 10.3969/j.issn.2095-1191.2019.06.31.
|
[18] |
何锐波, 狄岚, 梁久祯. 一种改进的深度学习的道路交通标识识别算法[J].
智能系统学报, 2020, 15(6): 1121–1130.
|
[19] |
李俊峰. 基于RGB色彩空间自然场景统计的无参考图像质量评价[J].
自动化学报, 2015, 41(9): 1601–1615.
|
[20] |
马玲, 张晓辉. HSV颜色空间的饱和度与明度关系模型[J].
计算机辅助设计与图形学学报, 2014, 26(8): 1272–1278.
|