焦 贊
基于TOF原理的橋梁病害檢測與三維可視化研究
焦 贊
(同濟大學,上海 200092)
以無人機結合深度學習對橋梁進行病害檢測和識別的研究越來越多,也越來越成熟,然而大多數研究僅停留在病害表層二維圖像分析處理上,對重點病害的深度信息和三維可視化的相關研究較少。該文提出了一種采用基于TOF原理的Azure Kinect深度相機對橋梁重點病害進行檢測并獲取深度信息的方法,通過對深度相機采集到的原始深度圖像保邊去噪和圖像增強得到病害深度圖像,以裂縫病害為例通過Revit建模軟件二次開發重構裂縫病害三維模型并結合病害定位信息整合在橋梁可視化模型上。深度信息的獲取與病害三維重構將為橋梁病害檢測工作提供直觀便捷的新方式,有利于提高橋梁病害信息的展示效果和橋梁行業的信息化水平。
橋梁病害;可視化;深度相機;三維重構
由于中國橋梁大規模的建成,橋梁的管理和維護的重要性日益凸顯,對橋梁病害的檢測、識別、管理系統和可視化這些方面的研究越來越多。目前隨著計算技術的快速發展,特別是2012年卷積神經網絡(CNN)的興起,基于深度學習的病害識別研究日趨火熱,但是這些研究大多是對病害進行二維圖像檢測識別,利用自然光(被動式)的計算機視覺技術,部分區域的橋梁病害受到外界環境影響較大以致識別準確率低,也無法反映部分病害的深度信息,不利于提高橋梁病害信息的準確獲取。而目前基于主動視覺技術的結構光法和飛行時間法(TOF)能夠獲取深度數據,并通過這些數據進行三維可視化模型構建,為后續病害處理(如裂縫填補工作等)提供信息支持。
基于TOF原理的橋梁病害檢測與三維可視化病害模型重構,除了可以單獨作為一種檢測手段,還可以與基于深度學習的無人機病害檢測相結合。因為后者檢測識別的速度較快,識別范圍廣,幾乎實時監測并整合到整橋病害信息系統,是對橋梁整體而言較為全面的檢測手段。而前者作為一種能夠較為全面反映病害信息的重點病害檢測手段,二者可以在橋梁整體快速檢測和重要病害全面信息檢測之間相互補充,共同提高橋梁病害檢測的信息化水平。
自從微軟第一代即Kinect v1出現以來,深度相機技術在各方面得到了廣泛應用,相比較一般RGB相機,在功能上添加了一個深度測量,通過RGB彩色圖像和深度圖像,結合深度圖像處理算法,從而更方便準確的感知周圍的環境及變化。
Azure Kinect(微軟第四代)深度相機采用調幅連續波時差測距原理。該相機將近紅外(NIR)頻譜中的調制光投射到場景中。然后,它會記錄光線從相機傳播到場景,然后從場景返回到相機所花費的間接時間測量值。處理這些測量值可以生成深度圖,深度圖像每個像素的一組z坐標值,以毫米為單位。
Azure Kinect提供了深度、視覺、聲音、方向四類傳感器SDK接口,可以不同程度的訪問不同傳感器的底層數據。主要結構包括:1)100萬像素深度傳感器,具有寬、窄視場角選項;2)7麥克風;3)1200萬像素RGB攝像頭,與深度圖像匹配的彩色圖像;4)加速計和陀螺儀(IMU),傳感器方向和空間跟蹤。
為確定圖像上某點和其實際位置兩個坐標系的轉換關系,必須通過相機成像原理建立幾何模型來分析,這些模型參數(包括內參、外參、畸變參數)即相機參數。由于相機本身制造誤差和器件精度原因,一般數情況下需要通過棋盤法實地實驗并結合有效的算法才能得到相關參數,相機標定目標即獲取這些相機參數。
相機參數的標定非常重要,因為標定結果的精度直接影響后續依靠深度圖像進行建立病害三維模型的準確性。標定完成后,通過得到的標定的幾何模型參數,建立原深度圖像與畸變校正圖像的坐標變換矩陣,為深度圖像坐標與橋梁病害實際坐標間確定變換關系,實現準確定位和病害模型重構。
本次采用張正友相機標定法,打印一張棋盤格貼在目標病害底部所在平面上,從同一高度不同角度拍攝數張圖像,在Matlab應用程序中找到Camera Calibration,使用這個工具箱自動檢測,獲取標定結果(表1)。

表1 相機標定結果
Kinect不是十分精密的橋梁病害三維掃描檢測專用設備,由于標定不是十分準確的,或圖像采集的環境條件(特別是光照因素)也會造成一定的誤差,被測病害內部一些區域無法反射光線或者光線無法到達,以及混凝土表面背景等因素,所采集的原始圖像存在許多噪點,直接運用一般不能滿足橋梁病害檢測的要求,因此對原始數據做預處理操作是非常必要的。
RGB相機的分辨率是3840x2160像素,深度照相機的分辨率是1024x1024像素,二者攝像頭的位置也不是完全一致的,所以二者采集到的圖像不是完全對齊的,也無法直接使用這些數據,否則會給病害三維重構帶來難以避免的錯誤。因此,預處理首先要通過分析攝像機成像原理,結合二者相對固定距離,用一個剛體變換矩陣表示二者坐標系轉換[1],由標定結果參數,得到二者坐標直接轉換關系,就可以深度圖像深度像素與RGB圖像像素之間一一對齊。
對于深度圖像空洞修復,利用深度圖的集群特性,用對應灰度直方圖取得閾值范圍,并將圖像二值化生成掩膜,再使用改進算法深度擴充[2]。對于噪點去除過程需要對較強的邊緣性信息予以保留,采用一種利用已經對齊的兩個相機采集的圖像,改進的雙邊濾波算法來有效平滑圖像[3]。
濾波之后的深度圖像,可能存在病害如裂縫,其深度淺或者寬度小,與周圍無病害混凝土的灰度值對比不是很明顯,為了更好區分并突出病害,避免光照不均以及背景影響,所以還需要對深度圖像做增強處理。使用拉普拉斯增強和LBP算子特性提取[4],對圖像邊緣非常敏感,可以提高相對背景對比度,使圖像的背景灰度值幾近0,病害處深度信息依然存在,基本排除背景對建模影響(圖1)。

圖1 裂縫深度圖像預處理前后
病害三維坐標相關系數計算,由Kinect標定得到的為確定空間病害某點的三維坐標與其在圖像中對應像素點坐標的數學關系,以確定病害圖像所在模型表面位置、圖像像素點間與實際病害點間擴大比例、圖像灰度值與實際深度值的擴大比例。
經過圖像預處理之后的深度圖像,可以使用Dynamo可視化編程建模,將病害模型展示在Revit軟件中,實現可視化。功能實現如下:通過通過路徑批量獲取文件,加載圖像;將原圖像在x、y兩個方向上等距劃分為100*100網格,形成xy平面坐標點集(裂縫底面網格)并根據點間擴大比例放縮;然后返回指定網格位置灰度值,根據深度值擴大比例使xy平面網絡各點沿z軸方向平移,形成裂縫深度曲面表面各點坐標點集;根據兩大坐標點集生成對應平面和曲面,然后將兩個平面閉合形成對應實體病害模型;根據病害圖像實際位置將其移動到Revit模型對應位置。(圖2)

圖2 裂縫病害深度圖像、裂縫三維曲面及其細節(從左到右)
本文研究了使用基于TOF原理的Kinect深度相機對橋梁病害進行檢測與并利用Dynamo可視化編程進行基于預處理后的病害深度圖像的病害三維可視化兩方面內容,先后通過深度相機簡介、Kinect標定、圖像預處理,最后進行病害(以裂縫為例)三維模型重構并定位,初步驗證了該方法可以完成病害檢測和模型構建兩方面的任務,為橋梁運維工作提供了一個病害三維可視化方案。由于包含深度信息,大大提高了病害檢測信息密度和可視化程度,有利于提高橋梁行業信息化程度和BIM技術的進一步應用。
[1]夏文玲,顧照鵬,楊唐勝.實時三維重建算法的實現——基于Kinect與單目視覺SLAM的三維重建[J].計算機工程與應用,2014,50(24):199-203.
[2]李應彬,馮杰,張華熊,李晨勤.基于改進雙邊濾波的Kinect深度圖像空洞修復算法研究[J].工業控制計算機,2013,26(11):105-106+109.
[3]杜海洋. 基于Kinect的三維重建與動作交互技術研究[D].北京交通大學,2016.
[4]Panning,A. K. Al-Hamadi,R. Niese,B. Michaelis. Facial expressiOn recOgnitiOn based On Haar-like feature detectiOn[J]. Pattern RecOgnitiOn and Image Analysis,2008,18(3).
焦贊(1995.01- ),男,漢族,籍貫:河南省許昌,學歷:研究生在讀,單位:同濟大學,研究方向:橋梁病害智能檢測與可視化。
S210
A
1007-6344(2021)04-0274-02