当前位置:首页 期刊杂志

基于机器视觉的注水泵智能监控方法研究

时间:2024-07-28

刘珈铨 ,侯磊 *,毕新忠,段闯,任赆慈

1 中国石油大学(北京)机械与储运工程学院,北京 102249

2 中国石油大学(北京)油气管道输送安全国家工程实验室/石油工程教育部重点实验室,北京 102249

3 中国石化胜利油田有限公司桩西采油厂,东营 257237

0 引言

机器视觉是视频处理技术的重要领域之一[1]。基于机器视觉的注水泵智能监控方法是指利用泵房监控视频实时在线检测泵的运行状态以进行智能监控。

视频序列中运动目标检测方法包括背景差分法[2-3]、光流法[4-5]及帧间差分法[6-7]。背景差分法将当前帧图像与实时背景图像相减,差值超过一定阀值的区域被判定为运动区域,该算法简单、计算速度快,但只有建立精确背景模型才能获得较高精度[6],受到环境光线变化及干扰目标影响时易出现误判。光流法利用序列图像中各帧像素矢量特征的变化检测运动目标,该算法复杂,计算量大,难以进行实时处理[8]。帧间差分法对时间上连续的两帧图像进行差分运算,当差值超过一定阈值时,即可判定为运动目标。传统帧间差分法实现简单,计算速度快[9],但易受光线、阴影[10]、干扰目标等变化的影响。

针对传统帧间差分法存在的不足,已有研究做出改进。屈晶晶[11]融合连续帧间差分与背景差分法,对缓慢运动目标检测效果较好,但目标图像去噪效果仍不理想。胡敬舒[12]利用SIFT特征方法对运动背景下的运动目标检测效果较好,但特征构造过程复杂。邬大鹏[13]结合帧间差分法和Camshift算法,对高速运动、遮挡及有同色干扰的目标检测效果较好,但需满足主运动分量和目标短时间速度不发生跳变的假设,具有一定的局限性。上述改进算法虽提升了检测准确率,但检测效果主要依靠各类人为设计特征[14],适用范围相对局限,不具有普适性。

自深度学习理论提出[15]以来,为实现图像特征自动提取,已有研究将深度学习和运动目标检测相结合[16-19]。此类方法无需人工设计特征,而通过深层神经网络模型,直接从原始图像中自动提取相关特征对运动目标进行检测。Braham[20]将卷积神经网络特征用于背景减除,但该方法检测缓慢,无法实现实时性。郝骏[21]为应对低照度的恶劣情况,提出基于图像增强及YOLO的运动目标检测算法,但检测准确率仍不理想。卢裕秋[22]利用深度卷积神经网络,在缺乏训练数据集的情况下,利用仿射变换生成合成数据集,对间歇运动目标检测效果较好,但检测准确率还有提升空间。

在设备智能监测研究领域,周龙[23]利用边缘检测Sobel算子对发动机连杆表面缺陷进行检测测量,并用于现场实际生产,但系统适应性与标定精度仍需优化。杨子琦[24]利用特定局部阈值进行图像分割,对泵活塞表面的划伤、磕碰、擦伤、木纹、螺旋划伤和沙粒打伤6种缺陷进行检测,但对竖直光源的光照情况还未研究。马浩鹏[25]改进YOLOv3网络模型,实现了泵的10种缺陷检测,但模型的泛化能力还有待优化。庾浩桓[26]基于卷积神经网络对泵进行缺陷检测,解决泵结构干扰或姿态干扰多的问题,但算法执行速度还需提高。

Faster R-CNN[27]自2015年提出以来,在铁路[28]、公路[29]、林业[30]、地质[31]、电力[32]等领域已成功应用,在Fast R-CNN[33]基础上提出的RPN候选框生成算法,使目标检测速度大大提高。

本文针对注水泵运动目标检测问题进行深入研究,将Faster R-CNN的自动检测与定位融入帧间差分法应用于动态目标检测中,改进图像预处理方式及动态判定标准,提出一种实现泵柱塞区域运动状态检测的方法,并运用油田生产现场的真实视频对该方法进行有效性验证。

1 基于机器视觉的注水泵智能监控方法

1.1 传统帧间差分法低准确率原因分析

由于传统方法计算整个监控区域的帧间差值,原始监控视频噪点多,将导致帧间差值显著增大(图1),造成泵运动状态的检测失误,准确率降低。同时当干扰目标闯入泵房时,整个区域帧间差值也将显著增大(图2),导致泵运动状态的检测失误,准确率降低。

图1 未经处理的原图像及帧间差值图像Fig. 1 The original image and the frame difference image without processing

图2 未经处理的原图像及帧间差值图像(干扰目标闯入)Fig. 2 The original image and the frame difference image without processing when jamming target is invading

1.2 传统帧间差分法的改进

1.2.1 增加目标检测与定位环节

为避免监控视频中干扰目标的影响,利用Faster R-CNN算法对每帧图像进行处理,识别图像中的柱塞区域,并计算柱塞区域坐标。

Faster R-CNN算法由特征提取网络(FEN)、区域推荐网络(RPN)和目标检测网络(ODN) 3部分组成(图3)。对于输入图像,利用FEN进行特征提取,将提取特征图输入RPN生成一系列候选区域,在RPN产生的候选区域位置上,利用RoI池化操作提取FEN特征图上的区域特征,进行目标分类和边界框回归。

该算法的实现步骤如下:

(1)利用VGG-16网络模型[34]作为特征提取网络(FEN),在大规模分类数据集ImageNet[35]的预训练参数基础上,利用注水泵图像数据集对VGG-16的网络参数进行再训练。

(2)利用区域推荐网络(RPN)在FEN特征图上进行扫描,对各特征点产生以当前点(锚点)为中心的多尺寸多比例的多个边界框,分别送入两个全连接层进行背景判断及边界框坐标回归。

(3)根据FEN特征图及RPN产生的m个候选区域,利用目标检测网络(ODN)中的RoI池化层提取候选区域的对应特征,进行后续的选框坐标精修和框内目标分类。

完成柱塞区域识别及定位后,帧间差分法将仅对柱塞区域进行差分计算,有效避免干扰目标影响。

1.2.2 增加图像预处理环节

传统帧间差分法对时间上连续的两帧图像进行差分运算,相邻帧对应的像素点相减,得到帧间差值,但由于图像噪点多,将使帧间差值显著变化。为处理图像噪点,增加灰度化、二值化及高斯滤波的图像预处理环节。

计算两帧图像灰度差的绝对值,当绝对值超过设定阈值时,即可判断为运动目标。视频序列中第n帧和第n-1帧图像为fn和fn-1,两帧对应像素点的灰度值记为fn(x,y)和fn-1(x,y),将两帧图像对应像素点的灰度值进行相减,并取其绝对值,进行二值化及滤波后,得到差分值Dn(式1)。

式中,x表示像素点横坐标,y表示像素点纵坐标。

1.2.3 改进运动状态判定标准

为进一步降低运动状态检测失误率,将基于单个帧间差值的运动状态判定标准改为基于多个帧间差值的运动状态判定标准。

根据设定阈值T,计算每帧图像的Rn′(式2)。

当每秒24帧图像中Rn′=0的帧数量大于20%时,认为泵处于停止状态,进行报警,否则,认为泵处于运行状态,整体流程如图4所示。

图3 Faster R-CNN算法示意图Fig. 3 The sketch map of the Faster R-CNN

图4 基于选框的帧间差分法流程图Fig. 4 The framework of the frame difference method based on region of interest

2 实验结果与分析

2.1 柱塞区域检测方法测试

采集来自某油田生产现场的注水泵视频,泵柱塞运动状态有运行和停止两种,帧速率24 FPS,图像像素为720×480。实验数据集从视频中截取训练集图像400张,测试集图像100张,用于测试选框推荐算法(图5)。从监控视频中截取1 min的片段,用于测试基于选框的帧间差分法(图5)。

图5 现场拍摄图像Fig. 5 The images from the field

软件开发环境为:Windows10操作系统,软件平台Python 3.6。硬件开发环境为:PC机一台,Intel(R)Core(TM)I7-7850H-CPU- 2.2GHz,16 G的DDR4内存、英伟达NVIDIA-GeForce- GTX-1050Ti显卡。基于此开发环境对400张训练集图片进行训练,Faster R-CNN网络训练参数如表1所示。

表1 网络训练参数设置表Table 1 The parameter setting of network training

Faster R-CNN网络训练收敛曲线如图6所示,总损失呈下降趋势。当迭代到 500 步时,Faster R-CNN的最佳模型总损失率为0.124,完成模型训练。将100张测试集图像导入上述模型,测试集准确率达到97%。

图6 网络训练收敛曲线图Fig. 6 The convergence curve of network training

2.2 运动状态判别方法测试

利用注水泵现场采集的视频对提出的方法进行测试。将测试集中每一帧图像作为一组测试数据,即总测试数据数量为序列总帧数 (1440 组),测试评价标准为:

式中:rF为误报率,rO为漏报率,rtotal为总准确率。

(1)图像预处理

为提高检测准确率,需对差分图像进行预处理操作。其中,预处理方法一为原图像帧间差值灰度化后的结果,预处理方法二为帧间差值灰度化后进行高斯滤波的结果,本文预处理方法为帧间差值灰度化后进行二值化与高斯滤波的结果,其检测准确率如表2所示。本文对灰度图进行二值化处理,使得柱塞区域图像中的柱塞部分像素值显著增大,如图7(c)、图7(d)、图7(e)所示。高斯滤波能够有效去除图像的低频分量进而消除噪点,使得非柱塞部分像素值显著减小,如图7(b)、图7(c)、图7(d)所示。由此柱塞不同运动状态的帧间差值Dn(x,y)显著增大,误报率显著减小。

图7 柱塞区域预处理效果对比图Fig. 7 The comparison of pretreatment of plunger area

表2 预处理方法对检测率的影响Table 2 The influence of preprocessing method on detection rate

(2)检测方法对比

使用上述预处理后的图像作为输入,对比传统帧间差分法、光流法及本文方法(Faster R-CNN+帧间差分法)的检测准确率(表3)。由于未能确定柱塞区域的具体位置,传统帧间差分法在有人员等干扰目标出现时,出现了误报情况。光流法受光线变化影响也出现了明显的误报情况。本文方法则克服了上述缺点,检测总准确率达到了96.75%。

表3 注水泵运行状况检测结果Table 3 The detection results of water injection pump operation

2.3 测试结果分析

应用本文方法对油田生产现场的泵柱塞区域图像(图8)进行上述实验处理,由于图像噪点多及干扰目标多,传统方法(以传统帧间差分法为例)处理起来难度较大,但通过Faster R-CNN与帧间差分法的结合,检测效果良好。

图8 泵柱塞原图像Fig. 8 The original images of pump plunger

利用Faster R-CNN的RPN模块,基于CNN网络提取的柱塞区域图像特征,自动检测出图像中柱塞位置(图9),无需工作人员手动标注柱塞区域,不受光线明暗及监控角度的影响。

图9 柱塞区域识别结果Fig. 9 The detection results of plunger area

当监控区有人员进入时(图10),传统帧间差分法的帧间差值明显增大(帧间差值图像的白色区域面积明显增大),导致漏报率上升。本文利用ODN模块,对候选区域内的图像进行分类识别,使得检测方法能够仅计算柱塞区域内的帧间差值,有效排除区域外干扰目标的影响(图11)。

图10 传统帧间差分法的原图像及帧间差值图像Fig. 10 The original image and processed image of traditional frame difference method

图11 本文方法的原图像及帧间差值图像Fig. 11 The original image and the frame difference image of proposed method

利用帧间差分法计算两帧图像的差值,并进行灰值化、二值化及高斯滤波,当帧间差值小于阈值后进行自动报警(图12)。当泵柱塞发生故障停止运转时,该方法能够迅速进行识别并报警,相比于传统帧间差分法,本方法准确率高、抗噪性能好。

图12 柱塞停止时的原图像及帧间差值图像Fig. 12 The original image and the frame difference image when the pump stoped

3 结论

(1)针对注水泵原始视频进行二值化与高斯滤波,发现该方法能有效减少图像噪点对运动状态判别的影响,通过预处理方法对比实验表明,该方法能使非柱塞部分像素值显著减小,柱塞部分像素值显著增大。

(2)针对单个帧间差值作为运动状态判别标准的不足,提出基于多个帧间差值的判别标准,有效避免了单帧图像误判对整体准确率的影响,进一步降低了运动状态判别失误率。

(3)针对注水泵监控视频的干扰目标问题,通过与传统帧间差分法及光流法的对比实验,提出利用Faster R-CNN算法,根据图像特征在变化背景中自动检测并确定泵的柱塞区域位置,使检测准确率显著提升至96.75%。

(4)本研究提出的基于机器视觉的注水泵智能监控方法,对油田其它设备的智能化管理具有一定指导意义。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!