基于图像特征匹配的煤泥浮选泡沫速度特征提取方法
2022-11-09郭中天王然风付翔魏凯王宇龙
郭中天,王然风,付翔,2,魏凯,王宇龙
(1.太原理工大学 矿业工程学院,山西 太原 030024;2.山西焦煤集团有限责任公司 博士后工作站,山西 太原 030024)
0 引言
煤泥浮选工艺是典型的多输入多输出复杂工艺,在实际浮选生产过程中,浮选司机主要通过肉眼观察浮选泡沫特征变化,依靠个人经验对浮选工况进行判断并对浮选过程进行控制[1]。这种凭借人工经验的操作方式存在准确性和稳定性不足的劣势,严重影响了浮选过程控制优化[2]。浮选泡沫图像中包含许多与浮选过程变量和产品质量相关的信息,准确并快速地提取浮选泡沫图像特征,建立浮选泡沫图像特征与浮选过程关键参数间的非线性映射关系,对浮选过程的实时在线监测与控制是十分有意义的[3-4]。
煤泥浮选泡沫图像特征一般包括基于单帧图像提取的静态特征(包括泡沫颜色特征、纹理特征、形态特征等)和基于图像序列帧提取的动态特征(包括泡沫速度、稳定度等,泡沫速度是动态特征中的一个关键特征参数)。许多学者对泡沫图像静态特征提取进行了分析。文献[5]从多种图像特征中选择恰当的物理参数(颜色、纹理 )描述精选泡沫图像,研究了基于图像处理技术的泡沫颜色和纹理特征提取方法。文献[6]将泡沫图像进行颜色空间转换并计算颜色共生矩阵,从归一化后的颜色共生矩阵中提取特征统计量来表征泡沫纹理状况,设计有效描述浮选泡沫纹理的新特征参数。文献[7]采用小波阈值去噪和形态学操作对泡沫图像进行标记,然后对处理后图像进行距离变换、灰度重构,并用分水岭算法完成分割,统计泡沫形态特征。由于浮选泡沫图像局部静态特征相似,难以很好地用于浮选实时监测与控制,一些较为复杂的工况判断需要用到浮选泡沫图像的动态特征。基于图像处理的浮选泡沫动态特征参数提取,文献[8]提出了一种基于尺度不变特征转换(Scale-Invariant Feature Transform,SIFT)和改进卡尔曼滤波的在线泡沫速度测量方法,并讨论了泡沫速度与生产性能指标的关系。文献[9]根据泡沫速度大小和方向对应分布范围改进SIFT 算法匹配条件,利用随机抽样一致(Random Sample Consensus,RANSAC)算法进一步剔除误匹配点,并根据匹配结果提取泡沫速度特征。以上算法在图像发生缩放、光照和仿射变换时仍保持稳定,但在匹配过程中出现了大量误匹配且实时性不足的问题。文献[10]采用同态滤波和直方图均衡化相结合的方法对井下图像进行预处理,在加速KAZE(Accelerated-KAZE,AKAZE)和暴力匹配(Brute Force,BF)的基础上利用RANSAC 进行精准匹配,但RANSAC 在剔除错误匹配的同时也剔除了较多正确匹配。
针对上述问题,本文提出了一种基于AKAZE 与基于网格的运动统计(Grid-based Motion Statistics,GMS)算法[11]和卡尔曼运动估计的煤泥浮选泡沫速度特征提取方法。首先,采用限制对比度自适应直方图均衡化(Contrast Limited Adaptive Histogram Equalization,CLAHE)和三维块匹配滤波(Blockmatching and 3D filtering,BM3D)对浮选泡沫图像进行预处理,保留更多的纹理和边缘细节信息。然后,采用AKAZE 特征匹配算法和BF 对预处理后的图像特征进行网格划分,采用GMS 算法快速可靠地区分正确与错误的特征匹配,从而提高泡沫图像特征匹配的准确性和实时性。最后,根据匹配结果计算浮选泡沫速度,并以此为测量值,利用卡尔曼运动估计对测量值进行修正,得到更稳定的煤泥浮选泡沫速度。
1 煤泥浮选泡沫速度特征提取流程
煤泥浮选泡沫速度特征是实现浮选状态客观评价不可或缺的特征参量,其与浮选生产速率、泡沫带矿量及精煤回收率等浮选性能参数有极大关联。
基于图像特征匹配可大大降低煤泥浮选泡沫速度特征提取的难度,是一种快速、非接触式的软测量方法。基于图像特征匹配的煤泥浮选泡沫速度特征提取是通过分析泡沫视频图像中相邻帧的相互关系,从而进行特征匹配来实现的。由于高帧率数字相机相邻帧间的间隔时间很短,相邻帧间同一目标煤泥浮选泡沫的亮度和位置不会发生剧烈变化。泡沫在三维空间中的位置变化可看作在二维图像空间的平移。相邻帧泡沫位置信息会发生变化,但其主要特征不会发生剧烈变化,如图1 所示。
基于图像特征匹配的煤泥浮选泡沫速度特征提取方法主要包括泡沫图像获取、图像预处理、特征检测与匹配和速度提取4 个部分,其流程如图2 所示。通过浮选泡沫图像采集系统得到质量清晰及特征明显的视频,从中提取泡沫序列帧图像。对泡沫序列帧图像进行锐化和去噪处理,并对处理后的泡沫图像进行特征点检测、特征匹配和错误匹配过滤。根据特征匹配结果计算泡沫特征点的速度,为浮选泡沫速度特征提供测量值。在此基础上利用卡尔曼运动估计方法对得到的测量值进行迭代修正,得到更稳定的煤泥浮选泡沫速度特征。
图2 煤泥浮选泡沫速度特征提取流程Fig.2 Coal slime flotation froth velocity feature extraction process
2 煤泥浮选泡沫速度特征提取算法
2.1 图像预处理
实验采集到的煤泥浮选泡沫图像存在光照分布不均匀、起泡边缘信息模糊、相邻泡沫间存在阴影及噪声干扰等问题,采用CLAHE-BM3D 算法对原始泡沫图像进行增强和去噪处理,使泡沫图像的纹理细节和对比度更加突出。首先,将输入的原始图像分割为多个子块,计算每个子块与其相邻子块的对比度变换函数,进而增强每个子块的对比度[12]。其次,使用双线性插值合并相邻子块得到均衡化后的对比度增强图像。然后,对增强图像进行去噪处理,对图像进行分块,计算待匹配块与参考块的相似性,根据相似性进行分组提取相似块[13]。最后,将这些相似块堆叠成三维群组,对其进行协同滤波处理[14],再将处理后的结果聚合返还到原图像块的位置上,得到预处理后的图像。
2.2 AKAZE-GMS 特征匹配
针对传统AKAZE 特征匹配算法存在误匹配的问题,在利用BF 算法进行粗匹配的基础上,采用GMS 算法进行精匹配,提高匹配准确率和实时性。首先,采用快速显式扩散数学框架(Fast Explicit Diffusion,FED)构建泡沫图像尺度空间,引入改进局部差分二进制描述符(Modified-Local Difference Binary,M-LDB)描述每个特征点,寻找不同尺度下Hessian 极大值点,以完成局部特征点提取[15]。然后,利用K 近邻算法检测出目标特征点的最近邻点和次近邻点,采用BF 算法对所有特征点进行特征粗匹配。最后,采用GMS 算法快速可靠地区分正确与错误的特征匹配,得到高质量的匹配点对。
2.3 卡尔曼运动估计
卡尔曼滤波器可利用线性系统状态方程对泡沫状态进行最优估计,由于根据图像特征匹配结果得到的泡沫速度测量值受系统的噪声和干扰影响,泡沫速度估计可看作滤波过程[16]。设泡沫初始时刻位置为p0,速度为v0,由于相邻帧时间间隔很短,泡沫位置变化很小,近似看作泡沫做匀速运动,在 Δt时间后泡沫的位置pt和速度vt分别为
将式(1)和式(2)转换为矩阵向量。
通过变量代换可得状态转移公式,对t时刻泡沫状态进行预测。
式中:St为泡沫在t时刻预测状态矩阵;S0为泡沫在初始时刻的状态矩阵;A为状态转移矩阵,
采用测量值来修正预测状态的误差,在测量值与预测状态间寻找泡沫状态最优估计。
式中:F为最优估计矩阵;Zt为测量矩阵;K为卡尔曼系数。
3 实验结果分析
煤泥浮选泡沫图像采集系统主要由煤泥浮选系统和图像处理系统2 个部分组成,如图3 所示。煤泥浮选系统由储料桶、矿浆预处理器、药剂桶、给料泵、微量给药泵、驱动下置式浮选柱等组成,主要负责产生连续的煤泥浮选泡沫。图像处理系统由光源、图像采集装置、图像处理平台组成。光源由2 条机器视觉专用 LED 光源组合而成,图像采集装置采用4.5 倍光学变焦,1 200 万像素CMOS 自动聚焦的工业相机,500 万像素3 倍变焦镜头。图像处理平台包括硬件和软件2 个部分:硬件环境为Intel(R)Core(TM)i7-11800H @ 2.30 GHz,内存为32 GB,显卡为NVIDIA GeForce GTX3060;软件环境为OpenCV开源计算机视觉库和 Python 平台。本文实验所用样品来自山西汾西矿业(集团)有限责任公司柳湾选煤厂,粒级为0~0.25 mm。
图3 煤泥浮选泡沫图像采集系统Fig.3 Image acquisition system for coal slime flotation froth
为验证本文AKAZE-GMS 特征匹配算法的性能,采用SIFT 算法、SURF(Speeded Up Robust Features,加速稳健特征)算法、传统AKAZE 算法与AKAZEGMS 算法进行对比,结果如图4 所示。可看出SIFT 算法检测到的特征点分布较为稀疏;SURF 算法虽然检测到了较多的特征点,但出现了明显的簇集现象,不能很好地表示图像特征;传统AKAZE算法检测的特征点大部分均匀分布在泡沫边缘区域,有效解决了簇集现象,但存在特征点数量较少的问题;AKAZE-GMS 算法较好地解决特征点簇集的同时又尽量保留了更多数量的特征点,这是因为预处理后图像所受噪声影响降低、对比度增强、边缘特征更突出。
图4 各算法特征检测结果对比Fig.4 Comparison of the feature test results of each algorithm
为验证AKAZE-GMS 算法特征匹配效果,将SIFT、SURF、传统AKAZE 算法与AKAZE-GMS 算法进行对比,匹配结果如图5 所示。可看出SIFT 算法匹配结果仍有较多的误匹配;SURF 算法匹配结果相较于SIFT 算法匹配对数量和匹配精度提高,但匹配对分布在集中的一个区域内;传统AKAZE 算法相较于前2 种算法匹配对分布更均匀,匹配精度更高,但过滤了较多的正确匹配对;AKAZE-GMS 算法匹配精度最高,匹配对分布更均匀,同时保留了更多的匹配对。
图5 各算法特征匹配结果对比Fig.5 Comparison of the feature matching results of each algorithm
对不同匹配算法结果进行分析,匹配精度和算法运行时间见表1。可看出AKAZE-GMS算法匹配正确率提高,保留了更多匹配对,且运行时间更短。
表1 匹配精度及运行时间Table 1 Matching accuracy and running time
煤泥浮选泡沫速度计算结果如图6 所示。可看出根据特征匹配结果计算得到的泡沫速度测量值波动较大,测量值经过卡尔曼运动估计修正后的速度估计值较为平稳,更符合真实工况。
图6 煤泥浮选泡沫速度计算结果Fig.6 Calculated coal slime flotation froth velocity results
为了对比不同算法提取泡沫速度特征的稳定性,选取速度均值和标准差作为衡量标准,对不同算法直接根据匹配结果及经过卡尔曼运动估计修正后提取的速度特征进行分析,结果见表2。可看出AKAZE-GMS 算法经过卡尔曼运动估计修正后提取的速度特征更加稳定。
表2 不同算法提取速度特征统计分析Table 2 Statistical analysis of speed features extracted by different algorithms 像素/s
4 结论
(1)通过预处理降低了噪声对图像质量的影响并增强了图像的对比度,提高了泡沫图像质量,突出了泡沫的边缘细节特征,解决了特征点检测中特征点簇集的同时又尽量保留了更多数量的特征点。
(2)采用AKAZE-GMS 算法得到的匹配对分布更均匀,匹配精度最高,达99.99%,保留的正确匹配对远高于其他算法,同时运行时间缩短至3.73 s,实时性更好。
(3)经过卡尔曼运动估计修正后的特征匹配结果得到的泡沫速度稳定性更高,更接近其实际速度,能更好地为浮选过程中泡沫监测提供指示参量。