周方祺,郭世元,馮家旗,麥麥提阿力木·麥提努爾,秦同臻,姜涌泉






摘要:地下管道連接城市的各個角落,承擔了極其重要的功能,準確定位和修復管道病害有重要意義。但由于地下管道的特殊性,為了減少技術人員在管道內潛在的風險,提高檢測和修復效率,用帶有攝像頭的排水管道機器人采集地下管道視頻信息,提取圖像的LBP特征,訓練SVM分類模型實現(xiàn)管道病害分類,模型對地下管道的病害自動識別,使用YOLOv4檢測病害,這有效地提高了檢測效率與準確度。還使用SLAM技術對以往的圖像檢測所不具備的三維信息—深度進行了估計,這將有利于管道病害的檢測。
關鍵詞:計算機視覺;SVM分類;特征提取;病害自動識別;SLAM
中圖分類號:TP391.41? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)34-0013-06
1 背景
隨著我國經(jīng)濟建設,城市快速發(fā)展,城市地下管道設施正從建設期進入養(yǎng)護期,城市地下管道的鋪設作為城市發(fā)展的一個重要部分,承擔著城市的天然氣供應、排水、供水等重要職責,對城市而言,地下管道的完整和安全運行就像血管之于人一樣重要。由此城市管道安全成為熱點話題,管道腐蝕、裂縫、淤泥等各種病害都會對管道造成巨大的危害。假如不對管道病害進行管理,管道健康受到威脅甚至得到破壞,將會對城市居民生活、工業(yè)生產(chǎn)、交通管制等社會生產(chǎn)生活活動造成阻塞和不便,產(chǎn)生的經(jīng)濟損失更是不可估量。因此,管道病害的檢測與修復工作是城市建設的重要組成部分。
當前檢測管道病害的過程效率低下且昂貴。要求參與人員技術水平高。管道內部不僅危險還很復雜,維修人員難以進入。一般來說,管道影像利用攝像頭獲取。完成圖像采集后,技術人員根據(jù)水道狀況分類手冊重新觀看視頻,并標記管道病害。但是,檢測員對視頻分析解釋需要時間,且這種方法價格高昂,在較長的檢測時間內也需要中斷管道的使用。所以為了減少技術人員在管道內潛在的風險,提高檢測和修復效率,如何及時發(fā)現(xiàn)和獲取管道病害圖像、如何對不同的病害類型做分類和定位,成為計算機圖像領域具有價值的研究方向,也是當前擁有極其廣闊應用前景的計算機科學研究熱點。傳統(tǒng)檢測方式下,深度這個三維信息并未考慮,而只是應用圖像二維數(shù)據(jù)。單目視覺SLAM技術可以利用二維圖像對三維信息—深度進行估計,這將有利于管道病害的檢測。
2 數(shù)據(jù)的采集和處理
本文通過車載攝像頭自動掃描采樣地下管道內部巖壁原始病害圖像數(shù)據(jù),然后用圖像標注軟件對圖像病害類型進行框選和特征描述,將特征位置信息寫到外部文件中。地下管道病害視頻圖像采集設備與自制病害圖像標注軟件樣例分別見圖1與圖2。
本文使用SVM方法分類病害,使用YOLOv4檢測病害,這需要把圖像的包圍盒(Bounding Box)信息作為監(jiān)督(Ground Truth)。標注出病害對象的左上角坐標(Xmin,Ymin),右下角坐標(Xmax,Ymax),類別、圖像名、圖像大小等信息一起寫入xml文件,與圖像一起作為輸入送入神經(jīng)網(wǎng)絡訓練。本文將采集到的病害數(shù)據(jù)分為輕度腐蝕、中度腐蝕、輕度破裂、中度破裂四類。
3 管道病害檢測
管道病害檢測過程包括圖像采集,消除繩索干擾,圖像分割,發(fā)現(xiàn)可疑病害,提取病害的LBP特征,訓練SVM模型,識別管道病害,使用YOLOv4檢測病害。
3.1 圖像分割
本課題可疑管道病害位置對應圖像分割部位。由于管道病害的紋理信息非常復雜,目標僅是最外輪廓,因此基于相似度的分割效果不令人滿意。因此,選擇基于不連續(xù)性的分割來發(fā)現(xiàn)管道病害的邊緣。本文使用canny邊緣檢測算子[1]針對圖像進行高斯濾波處理,使其噪聲得以消掉,以2N+1規(guī)格的模板對所有項目進行掃描,對鄰域像素的加權灰度均值通過模板進行確定,然后將模板中心像素灰度值進行取代。根據(jù)一維高斯函數(shù)計算給定大小和Sigma的高斯卷積核參數(shù),并將計算出的高斯卷積核與灰度圖像進行卷積。
對梯度的方向、幅度完成計算,再進行非最大抑制處理,實現(xiàn)邊緣細化。計算梯度相應值并將邊緣獲取以后,邊緣模糊性并未得到改善。正負梯度方向的像素邊緣程度與當下像素對應的邊緣程度對比分析。與掩模內方向抑制的像素對比,后者邊緣程度更高,因此對應數(shù)值保留。否則,該值將被抑制。
Canny算子邊緣檢測效果利用邊緣檢測、雙閾值來獲取。將Canny、Laplace和Sobel三種算子邊緣檢測效果對比分析,效果最為理想的就是Canny算子,對應檢測效果圖如圖3所示。其中左側為管道病害,右側為Canny算子邊緣檢測。
3.2 發(fā)現(xiàn)可疑病害
考慮到不同類型的管道疾病可能出現(xiàn)在管道的不同位置,管道圖像被分為四個區(qū)域。區(qū)域A代表管道的頂部,區(qū)域B和區(qū)域C代表管道的兩側,區(qū)域D是系統(tǒng)輸出信息,在圖4中查找管線病害的步驟中將忽略區(qū)域D。
將管線圖像劃分為四個區(qū)域后,找到圖像中的所有病害輪廓,并根據(jù)質心的位置判斷輪廓的劃分。為了確定可疑病害區(qū)域的重要性,每個區(qū)域的最大輪廓將繪制在圖5中。
3.3 提取病害的LBP特征
病害邊緣獲取到還需要對其級別和種類進行判斷。首先將其對應的LBP特征獲取到,病害類型的區(qū)分通過線性SVM分類器實現(xiàn)。
LBP(局部二進制圖案)[2]可以對圖像一部分的紋理特點進行描述。最大的特點在于灰度和旋轉都是固定的。1994年T.Ojala等學者將其應用在提取紋理特征上,并且這種觀點是第一次被提出。由于其簡單性和易計算性,盡管其總體效果不如Haar功能,但它比Haar功能要快,因此已經(jīng)被廣泛使用。
3.4 訓練SVM模型
本課題對于管道病害的辨別是通過支持向量機算法來實現(xiàn)的。將提取的LBP特征輸入SVM[3-4]分類器訓練模型。
假設線性分離的情況為式(1),歸一化得到式(2)。
[H1:ωTxi+b≥1, yi=1H2:ωTxi+b≤-1, yi=-1]? ? ? ? ? ? ? ? ? (1)
[yi(ωTxi+b)≥1,i=1,….]? ? ? ? ? ? ? ? ? ? ? (2)
其中,[ω]是法線向量,[b]是位移項,平面最初位置和超平面的間距因此而確定。[xi]是每個采樣點的特征,[yi]是采樣點[xi]的類別標簽。H1和H2之間的距離是[1|ω|],分類間隔就是[2|ω|],最大和最小分類間隔面的間隔大小則為[2|ω|2],被稱為最佳分類超平面,也稱為SVM分類決策超平面,并且訓練樣本點在H1和H2之間被稱為支持向量。因此,尋求最佳([ω],[ b])可以概括為式(3)的二次規(guī)劃問題。
[min12∥ω∥2s.t. yiωTxi+b≥1,i=1,2,….]? ? ? ? ? ? ?(3)
相應的分類決策函數(shù)如下:
[h(x)=i=1nαiyixTix+b]? ? ? ? ? ? ? ? ? ? ? ?(4)
其中,[b]是模型參數(shù),而[αi]是拉格朗日乘數(shù),[n]是采樣點個數(shù)。
SVM針對非線性狀態(tài)下,在預定非線性映射的作用下實現(xiàn)向量向高維特征空間的映射,并在其中完成最佳超平面的建立。
3.5 病害自動識別的結果分析與比較
本文收集了20條具有不同類型管道病害和正常管道的管道視頻。對于具有管道病害的視頻,逐幀標記了它們的管道病害。對于無病害的視頻,將其隨機分成多個部分。最終,獲得了8100例輕度腐蝕樣品,5100例中度腐蝕樣品,8600例輕度裂紋樣品和6400例中度裂紋樣品。本文隨機裁剪了31000個無病害管道圖像樣本。對管道圖像進行預處理,以定位管道病害區(qū)域,如圖6所示,原圖對應(a),Canny算子圖像和病害檢測圖像分別對應(b)和(c)。
完成病害位置確定以后需要對其LBP特征進行獲取。為了便于觀察和判斷,繪制病害特征的直方圖,如圖7所示。圖7(a)是中等腐蝕特征的直方圖,圖7(b)是輕度腐蝕特征的直方圖。
考慮到相同類型和不同等級的某些病害特征沒有顯著差異,針對管道病害的每個級別訓練一個模型。如果僅訓練一個多分類模型,分類精度將被很大程度地降低,由于部分輕度腐蝕和中等腐蝕圖像之間的特征差異很小,因此可以大大減少此類腐蝕。對于所有模型訓練,數(shù)據(jù)集分成測試集、訓練集,占比分別為30%和70%。本課題SVM確定應用C_SVC,即C類支持向量分類器,核函數(shù)選擇線性核。
針對SVM模型訓練精度的提升問題,設定最大迭代次數(shù)是1000。將c和γ兩個訓練參數(shù)數(shù)值設定為1,除此以外的所有參數(shù)數(shù)值都設定為0。
在測試集中,四種模式的準確性輕度腐蝕,中等腐蝕,輕度裂紋和中度裂紋分別為95.18%,92.63%,91.59%和93.82%。以學習者預測結果為依據(jù)通過ROC曲線完成樣本排序,以此為標準,將樣本作為一個正樣本進行預測,并每次計算兩個重要變量(TPR和FPR)的值,分別將它們作為水平和垂直坐標進行繪圖。輕度腐蝕模型的ROC曲線圖如下圖所示。位于ROC曲線以下位置的面積用AUC表示,其范圍為0.1-1。分類器對于數(shù)值能夠直接評估。該值越大越好。輕度腐蝕模型的AUC為0.77。
最后,將管道病害的類型,程度和位置輸出到具有指定格式的二進制文件。如圖8所示。病害檢測程序界面、記錄病害信息的輸出二進制文件分別如圖9(a)和9(b)所示。
3.6 使用YOLOv4檢測病害
YOLO全稱You Only Look Once。YOLOv4[5]是one-stage檢測算法。屬于Proposal-free方法,候選區(qū)形成是沒有必要的,對各種目標定位或類型確定都可以通過CNN網(wǎng)絡直接進行預測,物體位置和類型概率也能夠直接形成,檢測結果利用單次檢測能夠一次性獲取,檢測效率得到有效保證。
YOLOv4 的目標識別使用了Multi-Scale策略,包括Multi-Scale Train和Multi-Scale Predict。Multi-Scale Train是在訓練時采用不同尺寸的圖片作為輸入,這樣可以使模型適應不同大小的圖片;Multi-Scale Predict是在預測時取不同尺寸的下采樣——即FPN(Feature Pyramid Networks)架構,YOLOv4分別在sub_sample=32、16和8處做目標檢測,這樣可以預測多尺寸的目標。預測類別只是在標簽方面有所改變,即單標簽分類向多標簽分類轉變。YOLOv4 的數(shù)據(jù)增強Mosaic(馬賽克),把四張圖拼成一張圖來訓練,變相等價于增大了mini-batch。YOLO v4 的Self-Adversarial Training(自對抗訓練)在一張圖上,讓神經(jīng)網(wǎng)絡反向更新圖像,對圖像做改變擾動,然后在這個圖像上訓練。通常圖像實現(xiàn)風格化都會選擇該方法來完成,風格化過程實際上就是利用網(wǎng)絡將圖像進行反向處理。
YOLOv4的訓練結果與檢測效果分別見圖10、圖11,mAP@0.5達到了92%。
4 基于SLAM的深度獲取
在以往的檢測中,只利用了圖片的二維信息,缺失了三維信息—深度,單目視覺SLAM技術[6]能夠通過二維圖像完成深度這個三維信息的預測。
照片本質上是拍照時的場景(Scene)在相機的成像平面上留下的一個投影。將三維空間通過二維模式展示,展示過程中距離或者深度這個三維空間的維度就會被忽略。
想要恢復三維結構,需要單目相機拍攝的臨近的照片,這樣就能使用單目SLAM估計它的運動(Motion),同時估計場景中物體的遠近和大小與結構(Structure)。當相機移動方向為右,圖像移動方向為左時,可以借此規(guī)律完成運動的推測。并且,距離更近的移動速度就更快,距離較遠的運動速度就慢。移動相機的過程中,圖像運動會隨之產(chǎn)生視差,利用視差可以對物體距離進行判定。
4.1 特征提取和匹配
SLAM中重點部分就是視覺前端,以臨近圖像信息對相機運動進行預測。基于特征點法的前端來說始終是計算視覺里程的最廣泛的計算方法。動態(tài)物體與光照對其沒有影響,并且運行更加平穩(wěn),在如今應用非常廣泛。本文將使用特征點法,提取、匹配圖像特征點,然后估計兩幀之間的相機運動和場景結構,從而完成深度的估計。
4.1.1 特征點
特征點由兩部分構成,其一為描述子,其二為關鍵點。本文將使用ORB[7]提取特征。對于描述子來說,其本質是向量,以特定設計方法完成該點附近像素信息的獲取。其設計原則為特征相似則對應描述子也是相似的。提取過程中主要負責對ORB關鍵點的提取,然后對ORB描述子進行計算。圖像中特征點位置即為關鍵點,還有一部分特征將大小和方向等信息也包含在內。所以向量空間中這兩個特征點相距很近的情況下,就判定為相同特征點。
4.1.2 ORB特征
ORB特征也是由兩部分構成,其一為描述子,其二為關鍵點(Oriented FAST)。是一種改進的FAST角點[8]。它的描述子稱為BRIEF(Binary Robust Independent Elementary Features)[9]。提取過程如下:
1)提取FAST角點:將圖像內角點確定,與原圖FAST對比,特征點主方向在ORB內計算過,使后面的BRIEF描述子具有旋轉不變特性。
2)BRIEF描述子:對上部特征點附近圖像完成描述。
4.1.3 特征匹配
視覺SLAM中特征匹配是非常重要的,簡單來講SLAM數(shù)據(jù)關聯(lián)這一問題通過特征匹配有效解決,也就是對前面看到的以及當下看到的特征點關聯(lián)性進行確定。精準的完成圖像和地圖、圖像之間的描述子的匹配,使相機運動求解負擔大幅減緩。
視覺SLAM中特征匹配是非常重要的。精準的完成圖像和地圖、圖像之間的描述子的匹配,使相機運動求解負擔大幅減緩。本課題對于特征匹配方法的選擇最終確定為蠻力匹配(Brute-Force Matcher)。即對一張圖片中所有特征點與另一張圖片中所有特征點測量描述子的距離,然后排序,取最近的一個作為匹配點。特征間相似度通過描述子間距來體現(xiàn)。實踐中距離度量范數(shù)也需要選擇不同的。本課題采用BRIEF二進制描述子,通過漢明距離(Hamming distance)作為度量——2個二進制串不同位數(shù)的數(shù)量就是漢明距離。
特征匹配過程沒有進行篩選,因此誤匹配的情況比較多(圖14)。本課題篩選標準是漢明距離是比最小距離2倍要小,這種方法是根據(jù)工程經(jīng)驗進行總結的。以此為標準篩選結束后,匹配總量會變少,不過基本上沒有誤匹配(圖15)。
4.2 求解相機運動
結合匹配點對之間的聯(lián)系將兩幀之中攝像機運動進行恢復。
相機姿態(tài)解算——本質矩陣求解。
本質矩陣(Essential Matrix),是對極幾何(Epipolar geometry)[10]理論中的一個基本參量,是在三維坐標系下,用來連接兩個對應點的矩陣關系。
計算流程是利用兩張照片的匹配的點對估算本質矩陣(Essential Matrix)[11-12],最后通過對本質矩陣的SVD分解和其他操作取得相機的平移(Shifting)和旋轉(Rotation)。
由得到的匹配點對求得的相機運動如圖16。
4.3 求解深度
在上文中,使用對極幾何約束估計了相機運動,也討論這種方法的局限性。相機運動獲取后,要對相機運動估計特征點空間位置進行應用。SLAM內憑借一個圖像不能對像素更深層次的理解,地圖點深度在建立三角測量后能夠實現(xiàn)預估。
三角測量方法是針對相同夾角通過兩個角度進行觀測,進而對其距離進行確定。高斯最先提出這種方法,如今在地理學和天文學等多個領域廣泛應用。比如,針對同一顆星星在四季中觀測,對視角和距離無法成比例。SLAM下像素點的間距的預算是通過三角化方法來實現(xiàn)的。
由匹配點和相機運動通過三角測量可以求得深度,例如第一對匹配點對(圖17)的深度如圖18。
5 結束語
本課題是以視頻為基礎的管道病害檢測,將LBR特征成功獲取,以LBR訓練SVM分類模型,進而得到測試模型分類辨別效果。測試證明,本文訓練SVM模型的準確性可以達到超過90%,則AUC可以達到0.77。使用YOLOv4的管道病害檢測,mAP@0.5達到了92%。本方法克服了傳統(tǒng)人工識別的成本大、主觀性強、效率低等缺點,有良好的泛化性和魯棒性,這有利于未來的城市管道維修工作。當然,該方法仍有很多不足,比如實際工程中管道病害類型不止這四種,還有裂縫、侵蝕等。還可以加入深度學習處理方法,可以省去一些復雜的方法,同時具有良好的識別準確率。
本文用單目視覺SLAM技術求得了深度,但這仍然只是一個相對的值。若將場景和相機運動共同擴大隨意倍數(shù),能夠看到的像都是相同的,對應深度也一樣。利用單目SLAM對深度進行估測,與實際情況對比少了尺度因子。深度計算必須在平移后進行,而且只依靠圖像還不能對其實際尺寸進行確定,這是單目SLAM面臨的最大問題。其根本原因是通過單張圖像無法確定深度,所以可以使用雙目和深度相機以求得真實的深度。
參考文獻:
[1] 余洪山,王耀南.一種改進型Canny邊緣檢測算法[J].計算機工程與應用,2004,40(20):27-29.
[2] Ojala T,Pietikainen M,Harwood D.Performance evaluation of texture measures with classification based on Kullback discrimination of distributions[C]//Proceedings of 12th International Conference on Pattern Recognition.October 9-13,1994,Jerusalem,Israel.IEEE,1994:582-585.
[3] Vapnik V N.Statistical Learning Theory[J].Annals of the Institute of Statistical Mathematics,2003,55(2):371-389.
[4] Huang K Z,Zheng D N,Sun J,et al.Sparse learning for support vector classification[J].Pattern Recognition Letters,2010,31(13):1944-1951.
[5] Bochkovskiy A,Wang C Y,Liao H Y M.YOLOv4:optimal speed and accuracy of object detection[EB/OL].[2021-05-26].https://arxiv.org/abs/2004.10934.
[6] Liu H,Zhang G,Bao H.A survey of monocular simultaneous localization and mapping[J]. Journal of Computer-Aided Design & Computer Graphics, 2016,28(6):855-868.
[7] Rublee E,Rabaud V,Konolige K,et al.ORB:an efficient alternative to SIFT or SURF[C]//2011 International Conference on Computer Vision.November 6-13,2011,Barcelona,Spain.IEEE,2011:2564-2571.
[8] Rosten E,Drummond T.Machine learning for high-speed corner detection[M]//Computer Vision – ECCV 2006.Berlin,Heidelberg:Springer Berlin Heidelberg,2006:430-443.
[9] Calonder M,Lepetit V,Strecha C,et al.BRIEF:binary robust independent elementary features [C]//European Conference on Computer Vision.Springer,Berlin,Heidelberg,2010.
[10] Hartley R,Zisserman A.Multiple view geometry in computer vision[M].2nd ed.Cambridge University Press,2003.
[11] Li H,Hartley R.Five-Point Motion Estimation Made Easy[C]//18th International Conference on Pattern Recognition (ICPR'06).IEEE,2006.
[12] Nister D.An efficient solution to the five-point relative pose problem[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2004,26(6):756-770.
【通聯(lián)編輯:謝媛媛】