葛 垚, 孙 强, 王坤东
(1.上海交通大学 精密工程及智能系统研究所,上海 200240;2.兖矿东华重工有限公司 采掘装备制造分公司,山东 邹城 273500)
基于CNN与SVDD的掘进机智能监测系统设计
葛 垚1, 孙 强2, 王坤东1
(1.上海交通大学 精密工程及智能系统研究所,上海 200240;2.兖矿东华重工有限公司 采掘装备制造分公司,山东 邹城 273500)
通过激光标志物的卷积神经网络(CNN)检测,与标志物中心点的奇异值分解(SVD)重构,实现了掘进机在巷道坐标系下的坐标估计。通过基于支撑向量数据描述(SVDD)的陀螺仪静止状态抖动抑制,与参考系变换,实现了机身与掘进臂的姿态检测。通过基于OpenGL的图形学引擎,实现了工作面场景的实时虚拟渲染。测试结果表明:系统能够准确可靠地完成工作面场景下掘进机监测任务。
卷积神经网络; 奇异值分解; 支撑向量数据描述; 三维重构; 姿态估计
随着矿山机械化水平的提高,采用悬臂式掘进机进行开采已成为相关企业的标准生产方式。但是受限于有限的自动化程度,目前操作工人仍需进入高粉尘、有塌方危险的工作面最前线监测生产情景。这样的生产实践与当前国家建设数字矿山,推进危险生产环境无人化的号召是不相合的。近些年来,工业机器人定位[1]与姿态检测[2]取得了长足进步。但是,这些解决方案在设计时均未考虑矿山生产这一特殊应用环境。因此,设计一套适用于矿山环境的掘进机智能检测系统,准确、可靠地完成工作面场景下掘进机监测,成为了一个急需解决的课题。
本文根据矿山生产的特殊环境需求,综合基于卷积神经网络(CNN)的坐标估计、以及基于支撑向量数据描述(SVDD)的姿态估计,设计了支持场景实时渲染的掘进机智能监测系统,实现了掘进机状态参数的有效监测。
掘进机智能监测系统的原理图如图1所示。系统硬件由加装防爆工业摄像机、防爆陀螺仪与防爆工业计算机的掘进机,以及十字形激光指示器组成。工业摄像机采用震有科技的KBA12W矿用本安无线摄像仪,两台工业摄像机分别安装在掘进机机身前部左、右两侧,两工业摄像机的作用如下:一是负责采集工作面的图像,将经过增强后的图像呈现给后方的操作工人,供操作工人生产决策使用;二是配合工业计算机,完成十字形激光标志物的检测,进而完成整个场景的三维重构。系统中使用的防爆陀螺仪,系通过对TI TM4C129姿态检测评估套件加装防爆外壳获得,两枚防爆陀螺仪分别安装对心安装在掘进臂与掘进机机身上,以完成掘进臂与掘进机机身的姿态检测。工业计算机为上海铄放电子科技提供的高配置工业计算机,工业计算机用于实现整个系统所需的全部算法,并且通过图形界面,汇总性地向操作工人展示工作面的全部信息。
图1 系统原理图Fig 1 System principle diagram
系统软件由以下五个子系统组成:工作面场景采集、场景图像增强、场景三维重构、掘进机姿态估计以及虚拟场景渲染。工作面场景采集通过封装震有科技提供的传输服务实现;场景图像增强通过对比度均衡算法与小波降噪算法,增强工作面场景图像质量;场景三维重构通过CNN算法实现标志物中心点检测,在此基础上,基于对极几何、奇异值分解(SVD)与平移变换实现了掘进机在巷道参考系下坐标的三维重构;掘进机姿态估计通过SVDD算法,实现了陀螺仪静止状态下的抖动抑制,通过坐标变换算法,实现了以巷道为参考系的姿态检测;虚拟场景渲染基于OpenGL,将掘进机在巷道内的位置,与机身、掘进臂的姿态以三维图形的形式展示给操作工人,帮助工人实现360°无死角场景观察。
图像处理子系统的流程如图2所示。
图2 图像处理流程图Fig 2 Workflow of image processing
2.1 图像增强
当系统在工作面条件下工作时,下列两个因素将对工业摄像机的成像产生不利影响:一是工作面处不充分的照明会导致场景的轮廓信息无法有效地被操作工人感知;二是工业摄像机成像过程本身会给图像引入一定的噪声。为了解决上述两个问题,采用了先对图像进行对比度均衡,然后再对图像进行小波降噪的方案,实现工作面原始场景的图像增强。
对比度均衡算法[5]是图像处理中的经典算法。其算法原理是通过对原始图像的像素值进行变换,使变换后像素值分布接近均匀分布,从而增强人眼对图像中信息感知能力的一种算法。算法可通过调用OpenCV的相关服务实现。
在测试过程中发现,对比度均衡算法会放大工业摄像机的成像噪声,故对均衡后的图像进一步采用Wavelet Shrinkage算法进行进一步降噪。小波算法的开发通过调用Matlab Wavelet Toolbox完成,算法相关参数设定如下:小波基选择Daubechies族的sym6小波,分解层数为4,降噪方法选择Penalize Low。将选择的小波滤波器组导出为Matlab脚本文件,然后使用Matlab Compiler交叉编译为DLL库,即可集成入系统软件之中使用。
2.2 标志物中心点检测
为了实现场景的三维重构,首先需要完成十字形激光标志物中心点检测。在测试过程中发现,由于标志物所在平面的不规则性,基于Hough变换与模板匹配[3]的传统检测方案无法可靠地检出光斑中心,故最终采用基于CNN的方案进行检测。
相比基于Hough变换的解决方案,基于CNN的方案无需人工设计特征模板,能大幅减轻人工调参的工作量,只需要采集并标注的足够多的图像,然后进行数值优化即可完成检测与识别的任务[6]。
首先,将中心点检测问题化为如下的有监督回归问题进行求解。原始数据集由1 000张含有标志物的图像(来自左、右摄像头的图像各500张)及相应的中心点像素坐标组成,其中原始图像作为输入特征,中心点像素坐标的两个分量作为待预测的变量。训练CNN网络,使其预测的中心点像素坐标,与实际像素坐标的L2范数误差最小,即
(1)
式中 g:X→Y为将含十字形光斑图像映射为光斑中心点像素坐标的CNN网络;Xn,Yn分别为在训练集中序号为n的训练图像与其中标志物中心点的像素坐标。
最终部署的CNN结构如表1与表2所示。
表1 卷积层网络结构
表2 全相连层网络结构
其中,全相连层的激活函数为ReLU,输出层不采用Softmax层,直接以最后一次线性变换的结果作为输出进行预测。在全相连层,采用Dropout与全相连层系数的L2范数约束进行规约,防止过拟合。在整个训练过程中,按8︰2的比例切分训练集与测试集,以测试集上的误差为模型性能表现的评估依据,引入Early Stopping的机制进一步约束,以保证模型的检测性能。最终部署的CNN网络在训练集与测试集上的重构RMSE误差分别为0.457与0.680。上述算法可借助Caffe框架方便地实现,并集成到系统软件中。
2.3 巷道参考系下掘进机坐标的三维重构
检出标志物中心点后,由于可以事先设定标志物中心点在巷道参考系中的坐标,故只需估计标志物在左侧摄像机参考系内的三维坐标,即可得到重巷道参考系下掘进机的三维坐标。
重构算法首先需要对两台工业摄像机分别进行单目标定,以减轻镜头成像畸变对重构的影响;在此基础上,算法还需估计双目摄像机的几何参数,从而将原始成像场景变换到标准场景下。上述两部分算法均可通过调用OpenCV的相关服务实现。
(2)
由于观测误差的存在与数值稳定性的要求,上述方程需要使用SVD分解进行求解。由于OpenCV未提供相关服务,系统使用C++实现了上述算法。
得到标志物在左侧摄像机参考系内的三维坐标后,由于左侧摄像机在机身参考系中的坐标,以及标志物在巷道参考系内的坐标均为已知,故对相关坐标进行平移变换,即可算出掘进机在巷道参考系中的三维坐标,从而实现场景的三维重构。
姿态检测子系统首先通过移植TI官方的驱动库实现了掘进臂与机身在北—偏—东参考系下的姿态估计。相比标准扩展卡尔曼滤波(EKF)姿态估计算法[4],系统在以下两个方面进行了创新。完整的算法流程如图3所示。
图3 姿态估计流程图Fig 3 Workflow of altitude estimation
首先,通过使用SVDD[8]算法,实现了静止状态与运动状态的二分类,抑制了传统姿态估计算法在静止状态下估计值的震荡现象。
SVDD是一个单类分类器,考虑到掘进机采用液压传动,静止状态在整个工作周期中所占比例较大,故将静止状态下九轴传感器的输出数据作为NormalData,运动状态下输出数据作为负样本,进行模型训练。原始数据集由10万条九轴传感器的输出数据组成,其中NormalData占80 %,负样本占20 %。SVDD的两个参数,核与异常率分别选择如下:由于测试结果表明,二类数据在高维空间中近似线性可分,故选择线性核;通过参数枚举,发现当异常率取0.05时,模型分类的准确率最高,故取异常率为0.05。在整个训练过程中,按8∶2的比例切分训练集与测试集,当模型取上述参数时,SVDD的分类准确率为99.87 %,可以达到委托方的应用需求。
考虑到井下电磁环境极其复杂,以及掘进作业的特点,系统选择以掘进作业起始姿态定义的参考系为参考系,进行姿态估计,即
u0=RNED(ψ0,θ0,φ0)TRNED(ψ,θ,φ)u
(3)
式中 ψ,θ,φ/ψ0,θ0,φ0为当前姿态、掘进作业起始姿态在北—偏—东参考系下的欧拉角;RNED(ψ,θ,φ)/RNED(ψ0,θ0,φ0)为从北—偏—东参考系到当前姿态、掘进作业起始姿态定义的参考系的旋转变换矩阵;u/u0分别为掘进臂、以及机身上参考点,以陀螺仪安装处为原点,在当前姿态、掘进作业起始姿态定义的参考系下的坐标。
测试结果表明:上述参考系选择能够大幅简化标定过程:系统只需通过多次测量取平均值的方法,估计作业起始姿态,即可实现掘进臂与机身当前姿态的实时跟踪。
虚拟场景渲染子系统的流程如图4所示。子系统以图像处理子系统给出的位移估计,以及姿态估计子系统给出的机身、掘进臂姿态估计为输入,通过计算机图形学,生成虚拟工作面场景,并输出到GUI。
图4 场景渲染流程图Fig 4 Workflow of scene rendering
整个系统由通用脚本解析器,与场景描述脚本两部分组成。通用脚本解析器能够解析ASCII码编码的字符串格式的绘图命令,然后通过OpenGL相关服务实现绘图操作。综合考虑显示需求,系统总共设计了光照、材质定义,平移、尺度及旋转变换,基本图元—正方体与球体绘制7大类共计11条绘图命令,这些命令都采用了命令名后附加命令参数的格式,这样,通过将输入参数转化为适当的命令参数,即可实现基于参数的场景渲染。场景描述脚本使用预定义的绘图命令描述待渲染场景。系统在启动后会将描述脚本以字符数组的形式加载到内存中,当场景参数发生更新后,只需修改对应参数所在内存单元的数值,即可实现场景的实时更新。
为了克服传统三视图观察视角的局限性,子系统还实现了水晶球观测模型,这样操作工人可通过键盘操作,实现对场景360°远近可调的无死角观察。通过进一步丰富检测细节,子系统能够比传统的三视图提供更多的有效信息。
系统测试在兖矿集团东华重工掘进机测试车间进行。整个系统安装在EBZ220型掘进机上,主要对系统与正前方壁面距离的估计能力、机身与掘进臂姿态的估计能力以及系统的实时渲染能力进行了测试。
图5 实验测试Fig 5 Experimental test
5.1 正前方壁面距离估计能力测试
测定了系统在距离的典型动态范围:3.00~7.00m内的估计性能。测试结果如表3所示。系统估计精度已达到生产需求。
表3 距离估计测试结果
5.2 姿态估计与实时渲染能力测试
当两陀螺仪的姿态估计更新速率设定为25 Hz时,姿态估计与渲染系统能够实时跟踪系统的运动。渲染结果如图6所示。
图6 姿态估计与实时渲染测试Fig 6 Test of altitude estimation and realtime rendering
本文论述了掘进机智能监测系统中关键技术及其实现,重点论述了图像处理子系统中基于CNN网络的标志物中心点检测算法,姿态估计子系统中基于SVDD的静止状态下抖动抑制算法,相对掘进起始位置姿态估计算法,以及虚拟场景渲染子系统中基于计算机图形学的实时渲染系统的实现。实验测试结果表明:选择的算法能够达到预定的检测精度,相比传统系统,新系统能够更好地满足一线操作工人的监控需求,能够为国家数字矿山与安全生产的战略规划提供有效保障。
[1] 王殿君.双目视觉在移动机器人定位中的应用[J].中国机械工程,2013,24(9):1155-1158.
[2] 秦 勇,臧希喆,王晓宇,等.基于MEMS惯性传感器的机器人姿态检测系统的研究[J].传感技术学报,2007,20(2):298-301.
[3] 田 娟,郑郁正.模板匹配技术在图像识别中的应用[J].传感器与微系统,2008,27(1):112-117.
[4] 陈航科,张东升,盛晓超,等.基于Kalman滤波算法的姿态传感器信号融合技术研究[J].传感器与微系统,2013,32(12):82-89.
[5] Gonzalez R C.Digital image processing[M].New York:Prentice-Hall,2014:205-215.
[6] Benigo Y,Courville A,Vincent P.Representation learning:A review and new perspectives[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,35(8):1798-1828.
[7] Hartley R,Zisserman A.Multiple view geometry in computer vision[M].New York:Cambridge University Press,2004:312-315.
[8] Tax D M,Duin R P.Support vector data description[J].Machine Learning,2004,56(2):45-66.
王坤东,通讯作者,E—mail:kdwang@sjtu.edu.cn。
Design of intelligent monitoring system for mining machines based on CNN and SVDD
GE Yao1, SUN Qiang2, WANG Kun-dong1
(1.Institute of Precision Engineering and Intelligent Systems,Shanghai Jiao Tong University, Shanghai 200240,China; 2.Mining Machinery Manufacturing Co Ltd,Yankuang Donghua Group, Zoucheng 273500,China)
By detection of convolutional neural network(CNN)of laser marker and reconstruction of singular value decomposition(SVD) of center of markers,coordinates estimation of machine in tunnel coordinate is achieved.By jitter suppression of gyro in resting state based on supporting vector data description(SVDD)and transformation of
ystem,body and robotic arm altitude estimation are achieved. Based on OpenGL,real-time virtual rendering of scene of working face is achieved.Experimental results show that the system is able to monitor mining machine in working face scene accurately and reliably.
convolutional neural network(CNN); singular value decomposition(SVD); support vector data description(SVDD); 3D reconstruction; altitude estimation
2015—11—09
10.13873/J.1000—9787(2016)10—0076—04
TP 242
A
1000—9787(2016)10—0076—04
葛 垚(1990-),男,山西太原人,硕士研究生,研究方向为机器学习在工程问题中的应用。