劉珈銓 ,侯磊 *,畢新忠,段闖,任贐慈
1 中國(guó)石油大學(xué)(北京)機(jī)械與儲(chǔ)運(yùn)工程學(xué)院,北京 102249
2 中國(guó)石油大學(xué)(北京)油氣管道輸送安全國(guó)家工程實(shí)驗(yàn)室/石油工程教育部重點(diǎn)實(shí)驗(yàn)室,北京 102249
3 中國(guó)石化勝利油田有限公司樁西采油廠,東營(yíng) 257237
機(jī)器視覺是視頻處理技術(shù)的重要領(lǐng)域之一[1]?;跈C(jī)器視覺的注水泵智能監(jiān)控方法是指利用泵房監(jiān)控視頻實(shí)時(shí)在線檢測(cè)泵的運(yùn)行狀態(tài)以進(jìn)行智能監(jiān)控。
視頻序列中運(yùn)動(dòng)目標(biāo)檢測(cè)方法包括背景差分法[2-3]、光流法[4-5]及幀間差分法[6-7]。背景差分法將當(dāng)前幀圖像與實(shí)時(shí)背景圖像相減,差值超過(guò)一定閥值的區(qū)域被判定為運(yùn)動(dòng)區(qū)域,該算法簡(jiǎn)單、計(jì)算速度快,但只有建立精確背景模型才能獲得較高精度[6],受到環(huán)境光線變化及干擾目標(biāo)影響時(shí)易出現(xiàn)誤判。光流法利用序列圖像中各幀像素矢量特征的變化檢測(cè)運(yùn)動(dòng)目標(biāo),該算法復(fù)雜,計(jì)算量大,難以進(jìn)行實(shí)時(shí)處理[8]。幀間差分法對(duì)時(shí)間上連續(xù)的兩幀圖像進(jìn)行差分運(yùn)算,當(dāng)差值超過(guò)一定閾值時(shí),即可判定為運(yùn)動(dòng)目標(biāo)。傳統(tǒng)幀間差分法實(shí)現(xiàn)簡(jiǎn)單,計(jì)算速度快[9],但易受光線、陰影[10]、干擾目標(biāo)等變化的影響。
針對(duì)傳統(tǒng)幀間差分法存在的不足,已有研究做出改進(jìn)。屈晶晶[11]融合連續(xù)幀間差分與背景差分法,對(duì)緩慢運(yùn)動(dòng)目標(biāo)檢測(cè)效果較好,但目標(biāo)圖像去噪效果仍不理想。胡敬舒[12]利用SIFT特征方法對(duì)運(yùn)動(dòng)背景下的運(yùn)動(dòng)目標(biāo)檢測(cè)效果較好,但特征構(gòu)造過(guò)程復(fù)雜。鄔大鵬[13]結(jié)合幀間差分法和Camshift算法,對(duì)高速運(yùn)動(dòng)、遮擋及有同色干擾的目標(biāo)檢測(cè)效果較好,但需滿足主運(yùn)動(dòng)分量和目標(biāo)短時(shí)間速度不發(fā)生跳變的假設(shè),具有一定的局限性。上述改進(jìn)算法雖提升了檢測(cè)準(zhǔn)確率,但檢測(cè)效果主要依靠各類人為設(shè)計(jì)特征[14],適用范圍相對(duì)局限,不具有普適性。
自深度學(xué)習(xí)理論提出[15]以來(lái),為實(shí)現(xiàn)圖像特征自動(dòng)提取,已有研究將深度學(xué)習(xí)和運(yùn)動(dòng)目標(biāo)檢測(cè)相結(jié)合[16-19]。此類方法無(wú)需人工設(shè)計(jì)特征,而通過(guò)深層神經(jīng)網(wǎng)絡(luò)模型,直接從原始圖像中自動(dòng)提取相關(guān)特征對(duì)運(yùn)動(dòng)目標(biāo)進(jìn)行檢測(cè)。Braham[20]將卷積神經(jīng)網(wǎng)絡(luò)特征用于背景減除,但該方法檢測(cè)緩慢,無(wú)法實(shí)現(xiàn)實(shí)時(shí)性。郝駿[21]為應(yīng)對(duì)低照度的惡劣情況,提出基于圖像增強(qiáng)及YOLO的運(yùn)動(dòng)目標(biāo)檢測(cè)算法,但檢測(cè)準(zhǔn)確率仍不理想。盧裕秋[22]利用深度卷積神經(jīng)網(wǎng)絡(luò),在缺乏訓(xùn)練數(shù)據(jù)集的情況下,利用仿射變換生成合成數(shù)據(jù)集,對(duì)間歇運(yùn)動(dòng)目標(biāo)檢測(cè)效果較好,但檢測(cè)準(zhǔn)確率還有提升空間。
在設(shè)備智能監(jiān)測(cè)研究領(lǐng)域,周龍[23]利用邊緣檢測(cè)Sobel算子對(duì)發(fā)動(dòng)機(jī)連桿表面缺陷進(jìn)行檢測(cè)測(cè)量,并用于現(xiàn)場(chǎng)實(shí)際生產(chǎn),但系統(tǒng)適應(yīng)性與標(biāo)定精度仍需優(yōu)化。楊子琦[24]利用特定局部閾值進(jìn)行圖像分割,對(duì)泵活塞表面的劃傷、磕碰、擦傷、木紋、螺旋劃傷和沙粒打傷6種缺陷進(jìn)行檢測(cè),但對(duì)豎直光源的光照情況還未研究。馬浩鵬[25]改進(jìn)YOLOv3網(wǎng)絡(luò)模型,實(shí)現(xiàn)了泵的10種缺陷檢測(cè),但模型的泛化能力還有待優(yōu)化。庾浩桓[26]基于卷積神經(jīng)網(wǎng)絡(luò)對(duì)泵進(jìn)行缺陷檢測(cè),解決泵結(jié)構(gòu)干擾或姿態(tài)干擾多的問題,但算法執(zhí)行速度還需提高。
Faster R-CNN[27]自2015年提出以來(lái),在鐵路[28]、公路[29]、林業(yè)[30]、地質(zhì)[31]、電力[32]等領(lǐng)域已成功應(yīng)用,在Fast R-CNN[33]基礎(chǔ)上提出的RPN候選框生成算法,使目標(biāo)檢測(cè)速度大大提高。
本文針對(duì)注水泵運(yùn)動(dòng)目標(biāo)檢測(cè)問題進(jìn)行深入研究,將Faster R-CNN的自動(dòng)檢測(cè)與定位融入幀間差分法應(yīng)用于動(dòng)態(tài)目標(biāo)檢測(cè)中,改進(jìn)圖像預(yù)處理方式及動(dòng)態(tài)判定標(biāo)準(zhǔn),提出一種實(shí)現(xiàn)泵柱塞區(qū)域運(yùn)動(dòng)狀態(tài)檢測(cè)的方法,并運(yùn)用油田生產(chǎn)現(xiàn)場(chǎng)的真實(shí)視頻對(duì)該方法進(jìn)行有效性驗(yàn)證。
由于傳統(tǒng)方法計(jì)算整個(gè)監(jiān)控區(qū)域的幀間差值,原始監(jiān)控視頻噪點(diǎn)多,將導(dǎo)致幀間差值顯著增大(圖1),造成泵運(yùn)動(dòng)狀態(tài)的檢測(cè)失誤,準(zhǔn)確率降低。同時(shí)當(dāng)干擾目標(biāo)闖入泵房時(shí),整個(gè)區(qū)域幀間差值也將顯著增大(圖2),導(dǎo)致泵運(yùn)動(dòng)狀態(tài)的檢測(cè)失誤,準(zhǔn)確率降低。
圖1 未經(jīng)處理的原圖像及幀間差值圖像Fig. 1 The original image and the frame difference image without processing
圖2 未經(jīng)處理的原圖像及幀間差值圖像(干擾目標(biāo)闖入)Fig. 2 The original image and the frame difference image without processing when jamming target is invading
1.2.1 增加目標(biāo)檢測(cè)與定位環(huán)節(jié)
為避免監(jiān)控視頻中干擾目標(biāo)的影響,利用Faster R-CNN算法對(duì)每幀圖像進(jìn)行處理,識(shí)別圖像中的柱塞區(qū)域,并計(jì)算柱塞區(qū)域坐標(biāo)。
Faster R-CNN算法由特征提取網(wǎng)絡(luò)(FEN)、區(qū)域推薦網(wǎng)絡(luò)(RPN)和目標(biāo)檢測(cè)網(wǎng)絡(luò)(ODN) 3部分組成(圖3)。對(duì)于輸入圖像,利用FEN進(jìn)行特征提取,將提取特征圖輸入RPN生成一系列候選區(qū)域,在RPN產(chǎn)生的候選區(qū)域位置上,利用RoI池化操作提取FEN特征圖上的區(qū)域特征,進(jìn)行目標(biāo)分類和邊界框回歸。
該算法的實(shí)現(xiàn)步驟如下:
(1)利用VGG-16網(wǎng)絡(luò)模型[34]作為特征提取網(wǎng)絡(luò)(FEN),在大規(guī)模分類數(shù)據(jù)集ImageNet[35]的預(yù)訓(xùn)練參數(shù)基礎(chǔ)上,利用注水泵圖像數(shù)據(jù)集對(duì)VGG-16的網(wǎng)絡(luò)參數(shù)進(jìn)行再訓(xùn)練。
(2)利用區(qū)域推薦網(wǎng)絡(luò)(RPN)在FEN特征圖上進(jìn)行掃描,對(duì)各特征點(diǎn)產(chǎn)生以當(dāng)前點(diǎn)(錨點(diǎn))為中心的多尺寸多比例的多個(gè)邊界框,分別送入兩個(gè)全連接層進(jìn)行背景判斷及邊界框坐標(biāo)回歸。
(3)根據(jù)FEN特征圖及RPN產(chǎn)生的m個(gè)候選區(qū)域,利用目標(biāo)檢測(cè)網(wǎng)絡(luò)(ODN)中的RoI池化層提取候選區(qū)域的對(duì)應(yīng)特征,進(jìn)行后續(xù)的選框坐標(biāo)精修和框內(nèi)目標(biāo)分類。
完成柱塞區(qū)域識(shí)別及定位后,幀間差分法將僅對(duì)柱塞區(qū)域進(jìn)行差分計(jì)算,有效避免干擾目標(biāo)影響。
1.2.2 增加圖像預(yù)處理環(huán)節(jié)
傳統(tǒng)幀間差分法對(duì)時(shí)間上連續(xù)的兩幀圖像進(jìn)行差分運(yùn)算,相鄰幀對(duì)應(yīng)的像素點(diǎn)相減,得到幀間差值,但由于圖像噪點(diǎn)多,將使幀間差值顯著變化。為處理圖像噪點(diǎn),增加灰度化、二值化及高斯濾波的圖像預(yù)處理環(huán)節(jié)。
計(jì)算兩幀圖像灰度差的絕對(duì)值,當(dāng)絕對(duì)值超過(guò)設(shè)定閾值時(shí),即可判斷為運(yùn)動(dòng)目標(biāo)。視頻序列中第n幀和第n-1幀圖像為fn和fn-1,兩幀對(duì)應(yīng)像素點(diǎn)的灰度值記為fn(x,y)和fn-1(x,y),將兩幀圖像對(duì)應(yīng)像素點(diǎn)的灰度值進(jìn)行相減,并取其絕對(duì)值,進(jìn)行二值化及濾波后,得到差分值Dn(式1)。
式中,x表示像素點(diǎn)橫坐標(biāo),y表示像素點(diǎn)縱坐標(biāo)。
1.2.3 改進(jìn)運(yùn)動(dòng)狀態(tài)判定標(biāo)準(zhǔn)
為進(jìn)一步降低運(yùn)動(dòng)狀態(tài)檢測(cè)失誤率,將基于單個(gè)幀間差值的運(yùn)動(dòng)狀態(tài)判定標(biāo)準(zhǔn)改為基于多個(gè)幀間差值的運(yùn)動(dòng)狀態(tài)判定標(biāo)準(zhǔn)。
根據(jù)設(shè)定閾值T,計(jì)算每幀圖像的Rn′(式2)。
當(dāng)每秒24幀圖像中Rn′=0的幀數(shù)量大于20%時(shí),認(rèn)為泵處于停止?fàn)顟B(tài),進(jìn)行報(bào)警,否則,認(rèn)為泵處于運(yùn)行狀態(tài),整體流程如圖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
采集來(lái)自某油田生產(chǎn)現(xiàn)場(chǎng)的注水泵視頻,泵柱塞運(yùn)動(dòng)狀態(tài)有運(yùn)行和停止兩種,幀速率24 FPS,圖像像素為720×480。實(shí)驗(yàn)數(shù)據(jù)集從視頻中截取訓(xùn)練集圖像400張,測(cè)試集圖像100張,用于測(cè)試選框推薦算法(圖5)。從監(jiān)控視頻中截取1 min的片段,用于測(cè)試基于選框的幀間差分法(圖5)。
圖5 現(xiàn)場(chǎng)拍攝圖像Fig. 5 The images from the field
軟件開發(fā)環(huán)境為:Windows10操作系統(tǒng),軟件平臺(tái)Python 3.6。硬件開發(fā)環(huán)境為:PC機(jī)一臺(tái),Intel(R)Core(TM)I7-7850H-CPU- 2.2GHz,16 G的DDR4內(nèi)存、英偉達(dá)NVIDIA-GeForce- GTX-1050Ti顯卡?;诖碎_發(fā)環(huán)境對(duì)400張訓(xùn)練集圖片進(jìn)行訓(xùn)練,F(xiàn)aster R-CNN網(wǎng)絡(luò)訓(xùn)練參數(shù)如表1所示。
表1 網(wǎng)絡(luò)訓(xùn)練參數(shù)設(shè)置表Table 1 The parameter setting of network training
Faster R-CNN網(wǎng)絡(luò)訓(xùn)練收斂曲線如圖6所示,總損失呈下降趨勢(shì)。當(dāng)?shù)?500 步時(shí),F(xiàn)aster R-CNN的最佳模型總損失率為0.124,完成模型訓(xùn)練。將100張測(cè)試集圖像導(dǎo)入上述模型,測(cè)試集準(zhǔn)確率達(dá)到97%。
圖6 網(wǎng)絡(luò)訓(xùn)練收斂曲線圖Fig. 6 The convergence curve of network training
利用注水泵現(xiàn)場(chǎng)采集的視頻對(duì)提出的方法進(jìn)行測(cè)試。將測(cè)試集中每一幀圖像作為一組測(cè)試數(shù)據(jù),即總測(cè)試數(shù)據(jù)數(shù)量為序列總幀數(shù) (1440 組),測(cè)試評(píng)價(jià)標(biāo)準(zhǔn)為:
式中:rF為誤報(bào)率,rO為漏報(bào)率,rtotal為總準(zhǔn)確率。
(1)圖像預(yù)處理
為提高檢測(cè)準(zhǔn)確率,需對(duì)差分圖像進(jìn)行預(yù)處理操作。其中,預(yù)處理方法一為原圖像幀間差值灰度化后的結(jié)果,預(yù)處理方法二為幀間差值灰度化后進(jìn)行高斯濾波的結(jié)果,本文預(yù)處理方法為幀間差值灰度化后進(jìn)行二值化與高斯濾波的結(jié)果,其檢測(cè)準(zhǔn)確率如表2所示。本文對(duì)灰度圖進(jìn)行二值化處理,使得柱塞區(qū)域圖像中的柱塞部分像素值顯著增大,如圖7(c)、圖7(d)、圖7(e)所示。高斯濾波能夠有效去除圖像的低頻分量進(jìn)而消除噪點(diǎn),使得非柱塞部分像素值顯著減小,如圖7(b)、圖7(c)、圖7(d)所示。由此柱塞不同運(yùn)動(dòng)狀態(tài)的幀間差值Dn(x,y)顯著增大,誤報(bào)率顯著減小。
圖7 柱塞區(qū)域預(yù)處理效果對(duì)比圖Fig. 7 The comparison of pretreatment of plunger area
表2 預(yù)處理方法對(duì)檢測(cè)率的影響Table 2 The influence of preprocessing method on detection rate
(2)檢測(cè)方法對(duì)比
使用上述預(yù)處理后的圖像作為輸入,對(duì)比傳統(tǒng)幀間差分法、光流法及本文方法(Faster R-CNN+幀間差分法)的檢測(cè)準(zhǔn)確率(表3)。由于未能確定柱塞區(qū)域的具體位置,傳統(tǒng)幀間差分法在有人員等干擾目標(biāo)出現(xiàn)時(shí),出現(xiàn)了誤報(bào)情況。光流法受光線變化影響也出現(xiàn)了明顯的誤報(bào)情況。本文方法則克服了上述缺點(diǎn),檢測(cè)總準(zhǔn)確率達(dá)到了96.75%。
表3 注水泵運(yùn)行狀況檢測(cè)結(jié)果Table 3 The detection results of water injection pump operation
應(yīng)用本文方法對(duì)油田生產(chǎn)現(xiàn)場(chǎng)的泵柱塞區(qū)域圖像(圖8)進(jìn)行上述實(shí)驗(yàn)處理,由于圖像噪點(diǎn)多及干擾目標(biāo)多,傳統(tǒng)方法(以傳統(tǒng)幀間差分法為例)處理起來(lái)難度較大,但通過(guò)Faster R-CNN與幀間差分法的結(jié)合,檢測(cè)效果良好。
圖8 泵柱塞原圖像Fig. 8 The original images of pump plunger
利用Faster R-CNN的RPN模塊,基于CNN網(wǎng)絡(luò)提取的柱塞區(qū)域圖像特征,自動(dòng)檢測(cè)出圖像中柱塞位置(圖9),無(wú)需工作人員手動(dòng)標(biāo)注柱塞區(qū)域,不受光線明暗及監(jiān)控角度的影響。
圖9 柱塞區(qū)域識(shí)別結(jié)果Fig. 9 The detection results of plunger area
當(dāng)監(jiān)控區(qū)有人員進(jìn)入時(shí)(圖10),傳統(tǒng)幀間差分法的幀間差值明顯增大(幀間差值圖像的白色區(qū)域面積明顯增大),導(dǎo)致漏報(bào)率上升。本文利用ODN模塊,對(duì)候選區(qū)域內(nèi)的圖像進(jìn)行分類識(shí)別,使得檢測(cè)方法能夠僅計(jì)算柱塞區(qū)域內(nèi)的幀間差值,有效排除區(qū)域外干擾目標(biāo)的影響(圖11)。
圖10 傳統(tǒng)幀間差分法的原圖像及幀間差值圖像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
利用幀間差分法計(jì)算兩幀圖像的差值,并進(jìn)行灰值化、二值化及高斯濾波,當(dāng)幀間差值小于閾值后進(jìn)行自動(dòng)報(bào)警(圖12)。當(dāng)泵柱塞發(fā)生故障停止運(yùn)轉(zhuǎn)時(shí),該方法能夠迅速進(jìn)行識(shí)別并報(bào)警,相比于傳統(tǒng)幀間差分法,本方法準(zhǔn)確率高、抗噪性能好。
圖12 柱塞停止時(shí)的原圖像及幀間差值圖像Fig. 12 The original image and the frame difference image when the pump stoped
(1)針對(duì)注水泵原始視頻進(jìn)行二值化與高斯濾波,發(fā)現(xiàn)該方法能有效減少圖像噪點(diǎn)對(duì)運(yùn)動(dòng)狀態(tài)判別的影響,通過(guò)預(yù)處理方法對(duì)比實(shí)驗(yàn)表明,該方法能使非柱塞部分像素值顯著減小,柱塞部分像素值顯著增大。
(2)針對(duì)單個(gè)幀間差值作為運(yùn)動(dòng)狀態(tài)判別標(biāo)準(zhǔn)的不足,提出基于多個(gè)幀間差值的判別標(biāo)準(zhǔn),有效避免了單幀圖像誤判對(duì)整體準(zhǔn)確率的影響,進(jìn)一步降低了運(yùn)動(dòng)狀態(tài)判別失誤率。
(3)針對(duì)注水泵監(jiān)控視頻的干擾目標(biāo)問題,通過(guò)與傳統(tǒng)幀間差分法及光流法的對(duì)比實(shí)驗(yàn),提出利用Faster R-CNN算法,根據(jù)圖像特征在變化背景中自動(dòng)檢測(cè)并確定泵的柱塞區(qū)域位置,使檢測(cè)準(zhǔn)確率顯著提升至96.75%。
(4)本研究提出的基于機(jī)器視覺的注水泵智能監(jiān)控方法,對(duì)油田其它設(shè)備的智能化管理具有一定指導(dǎo)意義。