Research and application of video fog concentration detection and real-time fog removal method in underground coal mine
-
摘要: 煤矿井下工作面在生产状态下由于喷雾除尘操作引起雾气浓度动态变化,导致视频图像画面模糊不清,严重影响煤矿井下可视化远程干预性采煤控制及操作。针对上述问题,提出了一种煤矿井下工作面视频雾浓度检测及实时去雾方法。首先利用颜色衰减先验计算含雾视频图像亮度值和饱和度值差异,实现雾浓度检测,进一步识别含雾图像和无雾图像。其次,使用颜色衰减先验和场景变化概率模型对视频时间连续代价函数进行矫正,减小视频相邻帧之间的透射率误差,减轻去雾后视频图像画面的闪烁影响。最后,分别利用煤矿井下工作面视频雾浓度检测及实时去雾方法和Kim方法对煤矿井下场景有雾视频进行处理。实验结果表明:① 雾浓度检测方法可以准确地计算出图像场景中的雾浓度分布,提取到的雾浓度最大连通区域占总图像像素的38.693%,大于雾浓度阈值20%,为含雾图像。根据含雾图像识别结果自动忽略无雾图像,有选择性地对有雾图像进行去雾处理。② 采用煤矿井下工作面视频雾浓度检测及实时去雾方法对煤矿井下工作面的不同区域(支架区域和煤壁区域)及不同雾浓度(中等雾浓度和较高雾浓度)的生产视频进行去雾处理,去雾后视频图像对比度明显增强,视觉效果也更加明亮清晰。③ 实时去雾方法的均方误差曲线在Kim方法的均方误差曲线下方,说明其对连续场景视频去雾后,视频相邻帧的均方误差值减小,有效抑制了去雾视频的闪烁现象;使用对比度代价函数和颜色信息损失代价函数估计含雾图像的透射率值,可在变化场景取得理想的去雾效果。④ 实时去雾方法的去雾视频相邻帧之间的均方误差均值较Kim实时方法减小4.26,提高了相邻帧之间的相似性,进一步抑制了相邻帧之间的图像闪烁现象。在运行时间方面,实时去雾方法每帧处理时间较Kim方法增加了2 ms,但是其每帧处理时间小于40 ms,满足实时性要求。Abstract: The dynamic change of scene fog concentration caused by spraying dust removal operation in the production state of underground coal mine working face leads to the blurred visual video image. This seriously affects the visual remote intervention coal mining control and operation in underground coal mine. Aiming at the above problems, a method of video fog concentration detection and real-time fog removal underground in coal mine working face is proposed. Firstly, the difference between the brightness value and the saturation value of the fog-containing video image is calculated based on the color attenuation prior to realize the fog concentration detection. The fog-containing image and the non-fog image are further identified. Secondly, the color attenuation prior and the scene change probability model are used for correcting the video time continuous cost function. The transmittance error between adjacent frames of the video is reduced. The flicker influence of the fog removed video image is reduced. Finally, the video fog concentration detection and real-time fog removal method in the coal mine working face and the Kim method are respectively used to process the foggy video of the coal mine underground scene. The experimental results show the following points. ① The fog concentration distribution in the image scene can be accurately calculated by the fog concentration detection method. The maximum connected region of the extracted fog concentration accounts for 38.693% of the total image pixels. The fog-containing images are those greater than 20% of the fog concentration threshold. According to the recognition result of the fog-containing image, the non-fog image is automatically ignored. The fog-containing image is selectively fog removed. ② The video fog concentration detection and real-time fog removal method in coal mine working face is used to remove the fog of the production video of different areas (a support area and a coal wall area) and different fog concentrations (a medium fog concentration and a higher fog concentration). The contrast of the video image is obviously enhanced after fog removal, and the visual effect is brighter and clearer. ③ The mean square error curve of the real-time fog removal method is lower than that of Kim method. This indicates that the mean square error value of the adjacent frames of the video is reduced after the continuous scene video is fog removed. The flicker phenomenon of the real-time fog removal result video is effectively suppressed. The contrast cost function and the color information loss cost function are used to estimate the transmittance of the fog-containing image. The ideal fog removal effect is obtained when the scene changes. ④ The mean value of mean square error between the adjacent frames of the fog removal result of the real-time fog removal method is reduced by 4.26 compared with the Kim method. The similarity between the adjacent frames is improved. The image flicker phenomenon between the adjacent frames is further suppressed. In the aspect of running time, the processing time of each frame of the real-time fog removal method is increased by 2 ms compared with the Kim method. However, the processing time of each frame is less than 40 ms, which meets the real-time requirement.
-
0. 引言
锚杆钻车是矿井巷道作业主力装备之一,在矿井巷道掘进和锚固支护方面发挥着重要作用。我国钻机整体技术水平比较落后,存在定位精度低、定位速度慢等问题,严重制约巷道施工效率。研究锚杆钻车钻臂的自动精准定位问题,对实现矿用生产装备智能化、提高巷道施工效率有重要意义。
锚杆钻车钻臂为冗余多自由度结构,可保障作业的灵活性,但自由度的增加导致逆运动学求解复杂,降低了求解效率和精度。目前常用代数法和几何法求解机械臂运动学问题。代数法根据逆矩阵变换构建钻臂各关节变量与目标位姿之间的函数,但效率低,且存在无解或多解情况。几何法效率高,但对于不同的对象需构造不同的求解模型,通用性差。针对上述问题,许多学者将智能算法用于机械臂定位控制研究,如:李国江等[1]使用多群协同进化方法补偿绳索牵引并联机器人末端定位偏差;吉阳珍等[2]将改进的鲸鱼优化算法用于机械臂逆运动学求解,提高了求解精度和稳定性。在各种智能算法中,粒子群优化(Particle Swarm Optimization,PSO)算法用于求解机械臂运动学问题时具有编程简单、易于计算机实现、搜索性能强、容错性优等优点,有利于钻臂定位控制的稳定性。但PSO算法易陷入局部最优解,求解性能欠佳。对此,学者对PSO算法进行了改进,如:史也等[3]提出了一种基于量子PSO(Quantum-behaved PSO,QPSO)算法的路径规划方法,通过规划机械臂关节角的运动,使基座姿态和机械臂末端姿态同时达到期望状态;刘洋[4]通过多目标PSO(Multiple Objective PSO,MOPSO)算法实现了机器人位姿精准控制。上述算法应用于机械臂运动学求解时未考虑粒子初始位置状态,导致粒子初始状态不佳,且粒子间信息交流不充分,个体和全局最优粒子易陷入局部最优而无法跳出,使得算法整体寻优效率较低,寻优时间过长。
本文在精英反向PSO(Elite Opposition-based PSO,EOPSO)算法基础上进行改进,提出混沌交叉精英变异反向PSO(Chaotic Crossover Elite Mutation Opposition-based PSO,CEMOPSO)算法,并将其用于锚杆钻车钻臂定位控制,提高了钻臂逆向运动学求解的速度和精度,实现了锚杆钻车钻臂精准定位。
1. 锚杆钻车钻臂运动模型
锚杆钻车钻臂为八自由度机构,含6个回转关节(大臂摇摆关节、大臂俯仰关节、推进梁俯仰关节、推进梁摆动关节、推进梁回转关节、锚杆关节)和2个移动关节(大臂伸缩关节、推进梁伸缩关节),如图1所示。
为简化钻臂坐标系的建立,分析钻臂基座到钻臂末端变换关系,利用D−H建立钻臂正向运动学模型[5-9]。钻臂坐标系如图2所示,o0x0y0z0为基坐标系,oixiyizi(i=1,2,…,8)分别为大臂摇摆关节坐标系、大臂俯仰关节坐标系、大臂伸缩关节坐标系、推进梁俯仰关节坐标系、推进梁摆动关节坐标系、推进梁回转关节坐标系、锚杆关节坐标系和推进梁伸缩关节坐标系。
根据D−H法,相邻2个关节坐标系之间的变换矩阵为
$$ \begin{split} {\boldsymbol{T}}_j^{j - 1} = \left[ {\begin{array}{*{20}{c}} {\cos \ {\theta _{ j}}}& { - \cos \ {\alpha _{ j}}\sin \ {\theta _{ j}}}& {\sin \ {\alpha _{ j}}\sin \ {\theta _{ j}}}& {{a_j}\cos \ {\theta _{ j}}} \\ {\sin \ {\theta _{ j}}}& {\cos \ {\theta _{ j}}\sin \ {\alpha _{ j}}}& { - \cos \ {\theta _{ j}}\sin \ {\alpha _{ j}}}& {{a_j}\sin \ {\theta _{ j}}} \\ 0& {\sin \ {\alpha _{ j}}}& {\cos \ {\alpha _{ j}}}& {{d_j}} \\ 0& 0& 0& 1 \end{array}} \right] \end{split} $$ (1) 式中:θj为关节j的关节角;αj为关节j所在杆件的扭转角;aj为关节j所在杆件长度;dj为关节j横距。
锚杆钻车钻臂的D−H参数见表1。
表 1 锚杆钻车钻臂D−H参数Table 1. D-H parameters of drilling arm of bolt drilling rig关节 $ {\theta _j}/(^\circ ) $ $ {\alpha _j}/(^\circ ) $ $ {a_j}/{\rm{m}} $ $ {d_j}/{\rm{m}} $ 1 [45,135] 90 0.30 0 2 [−150,−60] −90 0 0 3 180 −90 0 [0,1.8] 4 [−120,−30] −90 0.35 0 5 [−135,−45] 90 0 0 6 [−270,90] −90 0.60 0.4 7 [−90,0] 90 0 0.8 8 90 −90 0 [0,2.5] 将表1数据代入式(1),可得相邻2个关节坐标系之间的变换矩阵。由左乘法则联立各变换矩阵,得到钻臂末端(推进梁伸缩关节)坐标系相对基坐标系的位姿矩阵:
$$ {\boldsymbol{T}}_8^0 = {\boldsymbol{T}}_1^0{\boldsymbol{T}}_2^1{\boldsymbol{T}}_3^2{\boldsymbol{T}}_4^3{\boldsymbol{T}}_5^4{\boldsymbol{T}}_6^5{\boldsymbol{T}}_7^6{\boldsymbol{T}}_8^7 = \left[ {\begin{array}{*{20}{c}} {{N_x}}&{{O_x}}&{{A_x}}&{{L_x}} \\ {{N_y}}&{{O_y}}&{{A_y}}&{{L_y}} \\ {{N_{\textit{z}}}}&{{O_{\textit{z}}}}&{{A_{\textit{z}}}}&{{L_{\textit{z}}}} \\ 0&0&0&1 \end{array}} \right] $$ (2) 式中:
$ {[{N_x},{N_y},{N_{\textit{z}}}]^{\rm{T}}} $ ,$ {[{O_x},{O_y},{O_{\textit{z}}}]^{\rm{T}}} $ ,$ {[{A_x},{A_y},{A_{\textit{z}}}]^{\rm{T}}} $ 分别为钻臂末端的法向向量、滑动向量和接近向量;$ [{L_x}, {L_y},{L_{\textit{z}}}]^{\rm{T}} $ 为钻臂末端相对于基坐标系的位置向量。2. CEMOPSO算法
2.1 EOPSO算法改进
采用PSO算法对锚杆钻车钻臂进行逆运动求解时,适应度函数为钻臂末端位姿与目标位姿的误差分析函数,即
$$ h({{\boldsymbol{X}}_i}) = \left\| {{\boldsymbol{P}}({{\boldsymbol{X}}_{\text{i}}}) - {{\boldsymbol{P}}_{{\rm{obj}}}}} \right\| $$ (3) 式中:
$ h( \cdot ) $ 为适应度函数;Xi为粒子i位置;P(Xi)为粒子i在位置Xi时的钻臂末端位姿;Pobj为钻臂末端目标位姿。迭代时,设粒子i当前最优位置Xibest=(ei1,ei2,…,eiD),eiD为粒子i在D维空间的当前最优位置,全局最优位置Xgbest=(eg1,eg2,…,egD),egD为D维空间的全局最优位置。粒子i的速度和位置更新公式为
$$ \begin{split} {{\boldsymbol{V}}_i}(t + 1) = & \omega {{\boldsymbol{V}}_i}(t) + {c_1}{r_1}({{\boldsymbol{X}}_{i{\rm{best}}}} - {{\boldsymbol{X}}_i}(t)) + {c_2}{r_2}\left( { {{\boldsymbol{X}}{\boldsymbol{}}_{{\rm{gbest}}}} - {{\boldsymbol{X}}_i}(t) } \right) \end{split} $$ (4) $$ {{\boldsymbol{X}}_i}(t + 1) = {{\boldsymbol{X}}_i}(t) + {{\boldsymbol{V}}_i}(t + 1) $$ (5) 式中:ω为惯性权重;Vi(t)为第t次迭代时粒子i的速度;c1,c2为学习因子;r1,r2为[0,1]的随机数;Xi(t)为第t次迭代时粒子i的位置。
EOPSO算法在PSO算法基础上,对群体内的最优粒子(即精英个体)进行反向学习,增加搜索的目的性,尽可能避免搜索的盲目性,从而以最快速度得到最优解。但该算法存在种群内粒子间信息交流不充分、易局部最优、收敛性差等问题[5-7]。因此,将混沌初始化、交叉操作、变异操作和极值扰动引入EOPSO算法,提出CEMOPSO算法。
1) 混沌初始化。通过混沌映射空间对粒子群位置信息进行初始化,在不改变初始种群随机性的条件下,使得种群初始位置均匀分布在可行域内,提高种群初期多样性。
采用Logistic和Sinusoidal的复合混沌模型[10-12](式(6)),使粒子在设定空间内呈现混沌状态。
$$ {\varphi _{n + 1}} = 4\sin \; ({\text{π}} {\varphi _n})(1 - \sin \; ({\text{π}} {\varphi _n})) \;\;\;\;\; n \in {{{\bf{N}}}} $$ (6) 设粒子i的位置
$ {{\boldsymbol{X}}_i} = ({{{e}}_1},{{{e}}_2}, \cdots ,{{{e}}_D}) $ ,eD为粒子i在D维空间的位置,粒子i经过混沌映射变换后的初始位置$ {\boldsymbol{X}}_i^0 = ({{e}}_{i1}^0,{{e}}_{i2}^0, \cdots ,{{e}}_D^0) $ ,则$$ {\boldsymbol{X}}_i^0 = {{\boldsymbol{X}}_{\min }} + {\varphi _{n + 1}}({{\boldsymbol{X}}_{\max }} - {{\boldsymbol{X}}_{\min }}) $$ (7) 式中Xmin,Xmax分别为搜索空间内粒子位置最小值和最大值。
2) 交叉和高斯变异。第t次迭代时对粒子i的位置
$ {{\boldsymbol{X}}_i}(t) $ 与其历史最优位置$ {{\boldsymbol{X}}_{i{\rm{best}}}}(t - 1) $ 进行离散相交[13-15],则交叉后粒子i位置${{\boldsymbol{X}}'_i}(t){{ =({{e}}}}_{i1}'(t),{{{{e}}}}_{i2}'(t), \cdots , {{{{e}}}}_{iD}'(t))$ 。交叉算法公式为$$ e_{iJ}'(t) = \left\{ \begin{gathered} be_{iJ}(t) + (1 - b)e_{iJ{\rm{best}}}(t - 1)\;\; {\text{ }} {k_{\rm{c}}} >{\rm{rand}}(0,1) \\ be_{iJ{\rm{best}}}(t - 1) + (1 - b)e_{iJ}(t) \;\;{\text{ }} {k_{\rm{c}}} \leqslant {\rm{rand}}(0,1) \end{gathered} \right. $$ (8) 式中:b为交叉系数,取值为0~1;eiJ(t)为第t次迭代时粒子i在J维空间的位置,J=1,2,…,D;eiJbest(t)为第t次迭代时粒子i在J维空间的当前最优位置;kc为交叉概率。
则更新后的粒子i最优位置为
$$ {{\boldsymbol{X}}_{i{\rm{best}}}}(t) = \left\{ \begin{gathered} {{{\boldsymbol{X}}}_{i}^{}}(t) \qquad {\text{ }}h({{{\boldsymbol{X}}}_{i}^{}}(t)) < h({{\boldsymbol{X}}_{i{\rm{best}}}}(t)) \\ {{\boldsymbol{X}}_{i{\rm{best}}}}(t - 1) \qquad {\text{ }}h({{{\boldsymbol{X}}}_{i}^{}}(t)) \leqslant h({{\boldsymbol{X}}_{i{\rm{best}}}}(t)) \\ \end{gathered} \right. $$ (9) 为保证算法的求解精度,对交叉后的个体进行高斯变异,得
$$ {\boldsymbol{X}}_{i{\rm{best}}}^{*}(t) = {{\boldsymbol{X}}_{i{\rm{best}}}(t)} + ({{\boldsymbol{W}}_{\max }} - {{\boldsymbol{W}}_{\min }}) G $$ (10) 式中:
$ {\boldsymbol{X}}_{i{\rm{best}}}^ {*}(t) $ 为粒子i变异后的最优位置;Wmax,Wmin分别为搜索空间的最大值和最小值;G为标准高斯分布。更新后的粒子i最优位置为
$${\boldsymbol{ X}}_{i{\rm{best}}}^{ * * }(t) = \left\{ \begin{gathered} {\boldsymbol{X}}_{i{\rm{best}}}^ *(t) \qquad h({\boldsymbol{X}}_{i{\rm{best}}}^ * (t)) < h({{\boldsymbol{X}}_{i{\rm{best}}}} (t)) \\ {{\boldsymbol{X}}_{i{\rm{best}}}}(t) \qquad h({\boldsymbol{X}}_{i{\rm{best}}}^ * (t)) \geqslant h({{\boldsymbol{X}}_{i{\rm{best}}}} (t) ) \\ \end{gathered} \right. $$ (11) 3) 柯西变异。全局最优位置Xgbest引导群体朝向最优解。当Xgbest陷入局部最优时,群体搜索停滞,导致算法失效。采用柯西变异策略,以协助精英粒子跳出局部最优。全局最优位置变异值为
$$ {\boldsymbol{X}}_{{\rm{gbest}}}^ * = {{\boldsymbol{X}}_{{\rm{gbest}}}} + ({{\boldsymbol{W}}_{\max }} - {{\boldsymbol{W}}_{\min }}) {\rm{cauchy}}(0,s (t)) $$ (12) 式中:cauchy(0,s(t))为柯西分布表达式;s(t)为随迭代次数线性递减的柯西分布比例参数[16-18]。
$$ s(t + 1) = s(t) - \sin \; ({1 \mathord{\left/ {\vphantom {1 {{t_{\max }})}}} \right. } {{t_{\max }})}} $$ (13) 式中tmax为最大迭代次数。
更新后的全局最优位置为
$$ {\boldsymbol{X}}_{{\rm{gbest}}}^{ * * } = \left\{ \begin{gathered} {\boldsymbol{X}}_{{\rm{gbest}}}^ * \qquad h({\boldsymbol{X}}_{{\rm{gbest}}}^ * ) < h({{\boldsymbol{X}}_{{\rm{gbest}}}}) \\ {{\boldsymbol{X}}_{{\rm{gbest}}}} \qquad h({\boldsymbol{X}}_{{\rm{gbest}}}^ * ) \geqslant h({{\boldsymbol{X}}_{{\rm{gbest}}}}) \\ \end{gathered} \right. $$ (14) 4) 极值扰动。粒子种群具有趋同性,因此在算法后期,粒子飞行速度难以更新,导致难以发现更优位置。引入极值扰动避免粒子陷入停滞,速度更新公式为
$$\begin{split} {{\boldsymbol{V}}_i}(t + 1) = & \omega {{\boldsymbol{V}}_i}(t) + {c_1}{r_1}\left[ { \left( { \frac{1}{2} + \frac{{{r_3}}}{2} } \right){{\boldsymbol{X}}_{i{\rm{best}}}} - {{\boldsymbol{X}}_i}(t) } \right] +\\& {c_2}{r_2}\left[ { \left( { \frac{1}{2} + \frac{{{r_4}}}{2} } \right){{{{\boldsymbol{X}}}}_{{\rm{gbest}}}} - {{\boldsymbol{X}}_i}(t) } \right] \end{split} $$ (15) 式中r3,r4为[0,1]上均匀分布的随机数。
2.2 自适应参数控制
1) 交叉概率。在PSO算法中,交叉概率kc过大会消除部分优秀个体,过小则影响算法收敛速度。为提高算法性能,采用自适应交叉概率:
$$ {k_{\rm{c}}} = \left\{ \begin{gathered} \frac{{{k_{{\rm{c}}1}} + {k_{{\rm{c}}2}}}}{2} + \frac{{{k_{{\rm{c}}1}} - {k_{{\rm{c}}2}}}}{2} \sin \left( { \frac{{ h_{{\rm{max}}}' - {h_{{\rm{avg}}}}}}{{{h_{\max }} - {h_{{\rm{avg}}}}}} \frac{{\text{π}} }{2} } \right) \;\;\;\; h_{{\rm{max}}}' \geqslant {h_{{\rm{avg}}}} \\ {k_{{\rm{c}}1}} \;\;\;\; h_{{\rm{max}}}' < {h_{{\rm{avg}}}} \\ \end{gathered} \right. $$ (16) 式中:kc1,kc2分别为初始交叉概率最大值和最小值;
$ h_{{\rm{max}}}' $ 为2个粒子进行交叉操作时的适应度最大值;havg为适应度平均值;hmax为适应度最大值。2) 正态分布衰减惯性权重。惯性权重的取值直接影响算法性能。惯性权重应随迭代次数的增加而动态变化,即在迭代过程中由初期的较大值逐步线性减小。本文采取正态分布衰减的惯性权重:
$$ \omega = {\omega _{\min }} + ({\omega _{\max }} - {\omega _{\min }}) \dfrac{1}{{\sqrt {2{\text{π}} } \sigma }}{{\rm{exp}}\left( { - \frac{{{t^2}}}{{2{\sigma ^2}t_{\max }^2}}} \right)} $$ (17) 式中:ωmin,ωmax分别为惯性权重最小值和最大值;σ为趋势参数,根据文献[19-20]可知最佳值为0.443 3。
3. 锚杆钻车钻臂定位控制流程
基于CEMOPSO算法的锚杆钻车钻臂定位控制流程如图3所示。
1) 对种群进行混沌初始化,确定种群规模、自适应参数,并给定钻臂末端目标位姿。
2) 计算粒子个体适应度,确定个体最优位置和全局最优位置,其大小为钻臂当前位姿和目标位姿的误差。
3) 根据精英反向规则,计算精英个体的反向解。根据柯西变异公式,对精英个体实施柯西变异操作。
4) 根据交叉规则,对粒子个体实施交叉操作,并对交叉后的个体最优位置实施高斯变异操作。
5) 更新粒子个体最优位置和全局最优位置。
6) 根据式(5)和式(15)对粒子位置和速度进行更新。
7) 确定目标函数值是否达到收敛要求,若是则结束迭代,输出结果,否则重复步骤2),直至符合收敛要求。
4. CEMOPSO算法性能测试
为检验CEMOPSO算法性能,分别从稳定性、精度、收敛速度3个方面,将其与PSO算法、EOPSO算法和交叉精英反向粒子群优化(Crossover Elite Opposition-based PSO,CEOPSO)算法进行对比。算法参数设置:种群规模为90,惯性权重最大值、最小值分别为0.9,0.6,限制速度为0.5,初始变异概率最小值、最大值分别为0.2,0.3,柯西分布比例参数初值为1。4种算法分别对4个标准测试函数(表2)执行20次,根据测试结果计算标准差和最优解,以此反映算法稳定性和求解精度,结果见表3。可看出CEMOPSO算法的稳定性和精度最优。
表 2 标准测试函数Table 2. Standard test functions函数 维度 搜索范围 最优解 ${f}_{1}(g)\text{=}{\displaystyle \sum _{r=1}^{n}{g}_{r}^{2} }$ 30 [−100,100] 0 ${f_2}(g) =\displaystyle \sum\limits_{r = 1}^n {\left| { {g_r} } \right|} + \prod\limits_{r = 1}^n {\left| { {g_r} } \right|}$ 30 [−10,10] 0 ${f_3}(g) = \displaystyle \sum\limits_{r = 1}^n {(\sum\limits_{q = 1}^n { {g_q}{)^2} } }$ 30 [−100,100] 0 $\mathop f\nolimits_4 (g) = \max \{ \left| {\mathop g\nolimits_r } \right|,1 \leqslant r \leqslant n\}$ 30 [−100,100] 0 为便于直观分析各算法性能,随机选择其中1组测试结果进行曲线可视化比较,如图4所示。可看出在算法迭代初期,CEMOPSO算法与其他算法没有显著差别,但随着迭代次数增加,其收敛速度迅速增大,明显优于其他3种算法。
表 3 标准测试函数计算结果Table 3. Calculation results of standard test functions函数 PSO算法 EOPSO算法 CEOPSO算法 CEMOPSO算法 $ {f_1}(g) $ 标准差:$3.223\; 2 \times {10^{ { { - } }2} }$ 标准差:$ 6.193\;9 \times {10^{{{ - }}2}} $ 标准差:$2.925\;9 \times {10^{{{ - 6}}}}$ 标准差:$2.870\;6 \times {10^{{{ - 18}}}}$ 最优解:$ 2.807\;2 \times {10^{{{ - }}2}} $ 最优解:$ 2.979\;5 \times {10^{{{ - }}2}} $ 最优解:$1.393\;2 \times {10^{{{ - 6}}}}$ 最优解:$4.794\;3 \times {10^{{{ - 19}}}}$ $ {f_2}(g) $ 标准差:$ 1.001\;8 \times {10^0} $ 标准差:$ 1.255\;4 \times {10^0} $ 标准差:$ 7.436\;1 \times {10^{{{ - }}2}} $ 标准差:$5.045\;2 \times {10^{{{ - 13}}}}$ 最优解:$ 8.349\;6 \times {10^{{{ - }}1}} $ 最优解:$ 8.012\;2 \times {10^{{{ - }}1}} $ 最优解:$ 6.558\;2 \times {10^{{{ - }}2}} $ 最优解:$1.479\;4 \times {10^{{{ - 13}}}}$ $ {f_3}(g) $ 标准差:$ 39.100\;3 \times {10^0} $ 标准差:$ 36.417\;4 \times {10^0} $ 标准差:$ 34.092\;9 \times {10^0} $ 标准差:$9.092\;9 \times {10^{{{ - }}2}}$ 最优解:$ 32.092\;9 \times {10^0} $ 最优解:$ 31.565\;9 \times {10^0} $ 最优解:$ 32.073\;7 \times {10^0} $ 最优解:$7.686\;5 \times {10^{{{ - }}2}}$ $ {f_4}(g) $ 标准差:$ 1.268\;5 \times {10^0} $ 标准差:$ 1.820\;8 \times {10^0} $ 标准差:$ 5.433\;3 \times {10^{{{ - }}1}} $ 标准差:$1.683\;6 \times {10^{{{ - 3}}}}$ 最优解:$ 1.167\;1 \times {10^0} $ 最优解:$ 1.035\;9 \times {10^0} $ 最优解:$ 5.398\;9 \times {10^{{{ - }}1}} $ 最优解:$1.327\;9 \times {10^{{{ - 3}}}}$ 5. 钻臂定位控制建模与仿真分析
为验证基于CEMOPSO算法的锚杆钻车钻臂定位控制方法的可行性及效果,采用Matlab2020a软件进行仿真验证。
5.1 锚杆钻车钻臂模型
根据钻臂D−H参数在Matlab2020a中建立锚杆钻车钻臂模型,如图5所示。
为便于观察锚杆钻车钻臂末端在空间中的运动范围,通过调节钻臂各关节变量来控制钻臂末端位姿。利用蒙特卡罗法绘制钻臂末端三维工作空间及其平面投影,如图6所示。
5.2 仿真分析
根据锚杆钻车钻臂末端位姿矩阵,采用欧拉角形式定义钻臂末端位姿:
$$ {\boldsymbol{P}}({{\boldsymbol{X}}_i}) = [{p_x},{p_y},{p_{\textit{z}}},\beta ,\gamma ,\eta ] $$ (18) $$ \beta = \arctan \ 2({O_{\textit{z}}},{A_{\textit{z}}}) $$ (19) $$ \gamma = \arctan \ 2\left( - {N_{\textit{z}}},\sqrt {{O_{\textit{z}}}^2 + {A_{\textit{z}}}^2} \right) $$ (20) $$ \eta = \arctan\ 2({N_x},{N_y}) $$ (21) 式中:
$ ({p_x},{p_y},{p_z}) $ 为钻臂末端目标位置坐标;$ (\beta ,\gamma ,\eta ) $ 为钻臂末端目标位置坐标系与基坐标系对应坐标轴的夹角。针对4种算法,选取相同的初始参数进行仿真。针对多冗余自由度钻臂结构特点,为提高钻臂定位控制精度,取种群规模为300[14-16];惯性权重最大值、最小值分别为0.8,0.5。CEMOPSO算法采用正态分布衰减的惯性权重,限制速度为0.2。c1,c2均取1.5[17]。初始交叉概率最大值、最小值分别为0.9,0.7;柯西分布比例参数初值为1,迭代次数为500。
4种算法的位置误差和姿态误差收敛曲线如图7所示。可看出在相同的迭代次数和误差精度约束条件下,无论是位置误差还是姿态误差,CEMOPSO算法从迭代初期即具有极快的收敛速度,收敛性能优于其他算法。
在相同的约束条件下,采用4种算法重复进行多次钻车钻臂定位控制,结果如图8所示。可看出CEMOPSO算法的位置误差和姿态误差均小于其他算法,误差曲线较平稳,最大位置误差为0.005 m,最大姿态误差为0.005 rad,验证了该算法用于锚杆钻车钻臂定位控制时具有较好的性能。
实际工程应用中一般要求控制算法能够在指定精度下快速收敛[21-22]。在相同定位精度下,4种算法的迭代次数如图9所示。可看出当设定位置误差为1 mm、姿态误差为0.01 rad时,PSO算法、EOPSO算法、CEOPSO算法、CEMOPSO算法的平均迭代次数分别为651,607,543,343 ;当设定位置误差为0.1 mm、姿态误差为0.001 rad时,PSO算法、EOPSO算法、CEOPSO算法、CEMOPSO算法的平均迭代次数分别为1 090,949,784,473,CEMOPSO算法的收敛速度最快,稳定性最佳,且求解精度越高,其优越性越突出。
6. 结论
1) CEMOPSO算法将混沌初始化、变异操作和交叉操作引入EOPSO算法,在保持初始种群多样性的基础上,增强了粒子个体之间的信息交流,平衡了算法局部搜索力和全局搜索力,使粒子个体能够更快地到达最优解,提高了算法的收敛速度和精度。
2) 将CEMOPSO算法应用于锚杆钻车钻臂定位控制可避免产生无解状态,且能够保证在满足定位精度要求下,改善求解速度和稳定性,提高钻臂定位效率,具有良好的工程实用价值。
-
表 1 不同去雾方法去雾后的视频相邻帧均方误差值和消耗时间统计
Table 1 Statistics of mean square error value and consumption time of adjacent video frames after different fog removal methods
去雾方法 均方误差均值 每帧处理时间/ms Kim方法 17.29 33 本文方法 13.03 35 -
[1] LIU Zhigang,CAO Anye,GUO Xiaosheng,et al. Deephole water injection technology of strong impact tendency coal seam-a case study in Tangkou Coal Mine[J]. Arabian Journal of Geosciences,2018,11(2):1-9.
[2] 肖军良. 辛置煤矿2−208工作面喷雾降尘技术研究与应用[J]. 煤矿现代化,2021,30(6):46-48. XIAO Junliang. Research and application of spray dust suppression technology in 2-208 working face of Xinzhi Coal Mine[J]. Coal Mine Modernization,2021,30(6):46-48.
[3] 张立亚,郝博南,孟庆勇,等. 基于HSV空间改进融合Retinex算法的井下图像增强方法[J]. 煤炭学报,2020,45(增刊1):532-540. ZHANG Liya,HAO Bonan,MENG Qingyong,et al. Method of image enhancement in coal mine based on improved Retinex fusion algorithm in HSV space[J]. Journal of China Coal Society,2020,45(S1):532-540.
[4] 龚云,杨庞彬,颉昕宇. 结合同态滤波与直方图均衡化的井下图像匹配算法[J]. 工矿自动化,2021,47(10):37-41,61. GONG Yun,YANG Pangbin,JIE Xinyu. Underground image matching algorithm combining homomorphic filtering and histogram equalization[J]. Industry and Mine Automation,2021,47(10):37-41,61.
[5] TAN R. Visibility in bad weather from a single image[C]. IEEE Computer Society Conference on Computer Vision and Pattern Recognition(CVPR), Anchorage, 2008: 1-8.
[6] FATTAL R. Single image dehazing[J]. ACM TransActions on Graphics,2008,27(3):1-9.
[7] HE Kaiming, SUN Jian, TANG Xiao'ou. Single image haze removal using dark channel prior[C]. 2nd International Conference on Computer Science and Intelligent Communicatio(CSIC), Xi'an, 2018: 135-141.
[8] TAREL J, HAUTIERE N. Fast visibility restoration from a single color or gray level image[C]. Proceedings of the 12th IEEE International Conference on Computer Vision, Kyoto, 2009: 2201-2208.
[9] TAREL J,HAUTIERE N,CARAFFA L. Vision enhancement in homogeneous and heterogeneous fog[J]. IEEE Intelligent Transportation Systems Magazine,2012,4(2):6-20. DOI: 10.1109/MITS.2012.2189969
[10] ANCUTI C O, ANCUTI C, HERMANS C, et al. A fast semi-inverse approach to detect and remove the haze from a single image[C]. Asian Conference on Computer Vision(ACCV), Queenstown, 2011: 501-514.
[11] KRATZ L, NISHINO K. Factorizing scene albedo and depth from a single foggy image[C]. Proceedings of the 2009 IEEE International Conference on Vision, Piscataway, 2009: 1701-1708.
[12] MENG Gaofeng, WANG Ying, DUAN Jiangyong, et al. Efficient image dehazing with boundary constraint and contextual regularization[C]. Proceedings of the 2013 IEEE International Conference on Computer Vision, Sydney, 2013: 617-624.
[13] 杨红,崔艳. 基于开运算暗通道和优化边界约束的图像去雾算法[J]. 光子学报,2018,47(6):244-250. YANG Hong,CUI Yan. Image defogging algorithm based on opening dark channel and improved boundary constraint[J]. Acta Photonica Sinica,2018,47(6):244-250.
[14] KIM J H,JANG W D,SIM J Y,et al. Optimized contrast enhancement for real-time image and video dehazing[J]. Journal of Visual Communication and Image Representation,2013,24(3):410-425. DOI: 10.1016/j.jvcir.2013.02.004
[15] YU Jing, LIAO Qingmin. Fast single image fog removal using edge-preserving smoothing[C]. IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Prague, 2011: 1245-1248.
[16] CARR P, HARTLEY P. Improved single image dehazing using geometry[C]. Digital Imagee Computing: Techniques & Applications, Melbourne, 2009: 103-110.
[17] CAI Bolun,XU Xiangmin,JIA Kuiqing,et al. DehazeNet:an end-to-end system for single image haze removal[J]. IEEE Transactions on Image Processing,2016,25(11):5187-5198. DOI: 10.1109/TIP.2016.2598681
[18] ZHU Qingsong,MAI Jiaming,SHAO Ling. A fast single image haze removal algorithm using color attenuation prior[J]. IEEE Transactions on Image Processing,2015,24(11):3522-3533. DOI: 10.1109/TIP.2015.2446191
[19] HIDE R. Optics of the atmosphere:scattering by molecules and particles[J]. Physics Bulletin,1977,28(11):521.
[20] HE Kaiming,SUN Jian,TANG Xiao'ou. Guided image filtering[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2013,35(6):1397-1409. DOI: 10.1109/TPAMI.2012.213
[21] CHAPMAN B, JOST G, PAS R. Using OpenMP: portable shared memory parallel programming(scientific and engineering computation)[M]. Massachusetts(United Sates), The MIT Press, 2007.
-
期刊类型引用(2)
1. 陈伟,陈志良,侯强. 煤矿井下液压锚杆钻机钻臂定位控制方法. 自动化与仪表. 2024(08): 29-33+39 . 百度学术
2. 李富强. 锚杆钻车施工影响因素分析. 中国机械. 2023(33): 90-93 . 百度学术
其他类型引用(2)