柳勝超,王夏黎,張 琪,趙嘉興
(長安大學 信息工程學院,陜西 西安710064)
橋梁在陸路交通中屬于一種特殊的道路結構,是日常生活的基礎設施之一。 自古至今,橋梁作為交通樞紐中較為重要的一環,其安全性一直是人們關注的焦點。橋梁安全性主要分為建設安全性與使用安全性。 基于各種因素,橋梁在施工與運營期間會出現結構變形[1-2],橋梁變形程度能夠直接反映出橋梁的健康狀況。隨著國民經濟的日益增長和近現代交通技術的不斷發展,橋梁的體積越來越大,橋梁結構越來越復雜,橋梁的應用環境越來越多樣。 因此在橋梁建設過程中,如何實時地檢測橋梁的變形程度,以確保橋梁工程的安全就成為橋梁建設的一項重要技術。
目前,圖像檢測作為一種新興的檢測技術,它相比于傳統檢測的優越性在于:非接觸式檢測、高精度。 它通過把被測對象的圖像作為檢測和傳遞信息的手段,從圖像中提取有用信息進而獲得待測參數。
2006 年,趙文光等人設計了以含有特殊黑白圖案的標定板為基礎的視覺位移監測法[3];2015 年,合肥工業大學的胡夢嵐開發了一套基于圖像處理技術的橋梁動態位移檢測系統[4],通過實驗驗證了該系統的精度,并把該系統運用到黃山廣宇大橋和黃山太平湖大橋的位移監測中,取得了較好的效果。前者需聚焦于人工標志,后者是圖像內單點的監測,而兩者皆是平面內的變形監測。 結構變形定位主要利用圖像特征追蹤,現有的主流算法有模板匹配相關系數法[5]:優點在于計算簡單準確和速度快,缺點是不能適應劇烈光照變化和目標劇烈形變;Mean Shift 算法[6]優勢是計算量不大,在目標區域已知的情況下完全可以做到實時跟蹤,但是,在窗口大小保持不變的情況下,當目標尺度發生變化或目標結構變形速度較快時,會跟蹤失敗;基于深度學習的目標追蹤方法[7]優點在于對物體的姿態變化、尺寸變化、旋轉變化、光照變化和復雜背景雜波等影響因素具有較強的魯棒性,缺點在于檢測精度較低。
為此,本文提出一種基于數字圖像技術與深度學習的無接觸式、遠距離、實時、高精度和高魯棒性的結構檢測方法。 該方法的主要思想是首先通過高分辨率攝影設備獲取橋梁結構的動態視頻序列圖像;其次對圖像進行預處理;然后提取圖像ROI 用于確定待處理的具體橋梁結構部位; 最后利用卷積神經網絡與改進后的SURF 算法的結合實現橋梁結構的變形檢測。
實驗在滬通大橋28# 與29#橋塔上進行,圍繞施工引起的主塔變形問題展開。圖1 所示為采集系統示意圖,主要由天文望遠鏡頭、與鏡頭匹配的天文攝影CCD[8-9]組成攝影設備,采集橋梁結構的動態視頻序列圖像。

圖1 圖像采集系統
圖2所示為采用自主選型的攝影設備在滬通大橋28# 橋塔最高處(30 m)拍攝的原始圖像,拍攝距離331 m,拍攝天氣為大霧,實驗拍攝圖像尺寸為1 920×1 080,拍攝對象為塔頂一角。

圖2 滬通大橋28# 橋塔原始圖像
從圖2 可以看出:橋塔監測結構為多邊形;在大霧天氣下,由于光照不足,橋塔結構與背景對比度較小;由于現場攝影設備受污、光照不足與拍攝距離過遠等,圖像噪聲干擾比較嚴重。 這些因素對橋梁結構特征的提取與追蹤會產生負影響。 因此需要對原始圖像進行預處理。
隨著拍攝距離的增加,空氣質量對攝影質量的影響就越大,特別是在大霧、雨和雪等天氣下圖像質量下降嚴重。因此,必須對圖像進行預處理。預處理的過程是,首先采用暗通道去雨霧算法[10-15],去除天氣因素對圖像的影響;然后對圖像進行灰度轉換并使用中值濾波去除圖像噪聲;最后通過直方圖均衡增加圖像對比度。 經過預處理后在保留了橋梁結構信息的前提下,去除了大霧對原始圖像影響。圖2 預處理結果如圖3 所示。

圖3 預處理后的圖像
高分辨率圖像內進行全局特征提取與匹配較為費時,特別是對橋梁多個結構進行檢測時。 為了提高實時性,在圖像內選擇待檢測結構區域,使用局部圖像進行特征提取。 從局部圖像中提取橋梁結構特征,可以去除圖像中其他信息的干擾,找到最能代表橋梁結構的區域,即橋梁表面有明顯紋理特征的地方,例如橋頂、拐角等。圖4 為所選擇的橋頂結構。

圖4 局部結構區域選擇
為了能夠處理各種圖像變換問題,在設計圖像特征描述子的時候,應同時考慮不變性(魯棒性)和區分性。 在諸多局部特征描述子中,SIFT[16]是應用最廣的,SURF[17]算子是對SIFT 的改進,它利用Haar小波來近似SIFT 方法中的梯度操作,利用積分圖技術進行快速計算,SURF 的速度是SIFT 的3 倍,大部分情況下它和SIFT 的性能相當。 此外,還有應用廣泛的ORB[18]算法,其優勢在于計算,速度是SURF的5 倍,但是在旋轉魯棒性、模糊魯棒性、尺度變換魯棒性上比SURF 差[19-20]。
由于橋梁結構圖像采集環境復雜,對算法的實時性要求高,檢測算法要求在局部特征描述時具有高效性和強魯棒性,SURF 算法不僅對圖像旋轉、縮放具有極強的適應性,而且在光照變化、視角變化、仿射變換和噪聲等情況下也能保持穩定性。 因此,基于SURF 算法進行特征提取。
SURF 特征提取算法主要有3 個步驟:構建Hessian(黑塞矩陣)、計算特征點主方向、生成特征點描述子。
(1)構建Hessian(黑塞矩陣)
在離散空間上,為了得到Hessian 矩陣的四個元素,SURF 采用二階標準高斯核函數對圖像進行卷積運算。 在尺度σ 下,點X=(x,y)處對應的Hessian矩陣為:

式中,Lxx(X,σ)、Lxy(X,σ)、Lyy(X,σ)是標準高斯函數G(x,y,σ)的二階偏導數與圖像在點(x,y)處卷積的結果。

這樣可以計算出圖像上所有點的Hessian 行列式值。
(2)計算特征點主方向
在特征點區域內統計其Haar 小波特征,以60°扇形為單位,統計扇形區域內所有特征點的水平和垂直Haar 小波特征總和,然后 60°扇形以一定間隔進行旋轉,旋轉一周后以小波特征最大的扇形方向作為該特征點的主方向,過程示意圖如圖5 所示。

圖5 特征點主方向
(3)生成特征點描述子
以特征點為中心,沿主方向將20 s×20 s 的圖像劃分為4×4 個子塊(s 代表特征點的尺度),每個子塊用尺寸2 s 的Harr 模板進行響應值計算,統計16個子區域的響應信息,每個子區域采用式(4)進行統計, 其中dx 和dy 分別代表像素在x 軸與y 軸上的物理尺寸,同時每個像素點的響應要乘以對應位置的高斯權重(σ=3.3 s)。

每個子區域攜帶4 個信息,共有16 個子區域,共64 維。 最后為了防止光照與對比度的影響,對特征矢量歸一化處理。
在圖像預處理去除雨霧等天氣因素的影響后,發現橋梁結構特征主要分布在圖像的高頻信息。 使用Sobel 算子提取圖像高頻信息。 在對500 幅高頻圖片進行分析后,發現圖像中不僅包含水平和垂直特征,還包括線特征、對角線特征。
本文通過實驗,添加45°斜方向的邊緣特征、線特征和對角線特征濾波器模板。 本文采用的濾波器模板如圖6 所示。

圖6 本文使用的特征
如圖6 所示,從左到右依次是邊緣特征{de1,…,de4}、線性特征{dl1,…,dl4}和對角線特征{dt1,dt2},其中邊緣特征和線性特征包含了水平方向、垂直方向、正反45°斜向特征。 生成特征點描述子公式改進為如式(5)所示:

相比于原SURF 算法每個子區域攜帶信息增加至20 個,共有16 個子區域,共320 維。 向量維度增加提升了特征的鑒別力,特征檢測的效果更佳,但一定程度上使算法復雜程度更高。 改進前后SURF算法的特征提取結果如圖7 所示。

圖7 特征提取結果
如圖7 所示,源圖像經過預處理,去除了光照、大霧和椒鹽噪聲的影響,直接使用SURF 算法所檢測的特征點只有8 個(圖7(a)中的黑點),丟失大量結構信息。 而使用本文改進的SURF 算法進行特征提取后的特征點數量有46 個(圖7(b),特征點標記有重疊)。
可見改進后的SURF 算法比SURF 算法提取特征點更多,能夠更準確地反映橋梁結構信息。
變形檢測先要進行結構匹配。 結構匹配的過程是調整好攝影設備,對第一張圖像進行特征提取,作為基準特征點序列S,然后逐次與后面的圖像提取的特征點E 進行匹配。 匹配使用基于暴力匹配算法的交叉修正匹配算法。算法先使用暴力匹配獲取第一次匹配序列F,然后使用反向匹配去除掉僅單向匹配的點,得到匹配序列P,最后進行匹配修正去除誤匹配得到匹配序列P′。 交叉修正匹配算法原理如下。
暴力匹配是計算序列S 的每一個點與序列E每一個點的歐式距離,計算公式見式(6),距離最小者即為匹配點,見式(7)。

假如S1與E3匹配,min 返回最小值,SE1=SE1.3。循環進行得到匹配序列F。 所以該暴力匹配算法的時間復雜度為平方階:Tn=O(n2)。
反向匹配:E3與特征序列S 執行一次暴力匹配,若ES3=ES3.1,則真正表示E3與S1匹配成功。P1=(S1,E3,SE1),依次重復式(6)最終可得到匹配序列P。 而交叉匹配就是暴力匹配與反向匹配的結合,所以該交叉匹配算法的時間復雜度為平方階:Tn=O(2n2)。
匹配修正:計算出最小歐氏距離d,見式(8):

對匹配序列P 進行篩選,使得滿足SE1≤2.5d且SE1≤0.2 的歐氏距離插入到新的匹配序列P′,0.2 是本文所給出的一個經驗值。 所以交叉修正匹配算法的時間復雜度為平方階:Tn=O(2n2+n),與暴力匹配時間復雜度的階位是一致的。圖8 所示為各匹配算法的匹配效果圖。

圖8 匹配效果圖
分別使用暴力匹配、交叉匹配、修正匹配對特征匹配序列進行統計,當歐式距離超過0.2 時誤匹配的錯誤率如表1 所示。

表1 歐式距離超過0.2 時各方法的匹配錯誤率
從表1 可看出,在算法時間復雜度的階位一致的情況下,雖然使用耗時較短的暴力匹配得到更多的匹配關系,但是在該次實驗中,匹配序列F 的誤匹配率高達10.86%。 而使用交叉匹配后,誤匹配率降低到2.78%,使用交叉修正匹配后,可以剔除誤匹配,所以,交叉修正匹配算法能夠在相同階位的時間復雜度準確地找到優秀匹配點,剔除誤匹配。
完成匹配后,通過分別定位匹配序列P′中屬于特征點序列S 和E 在圖像上的位置,便可獲取圖像內橋梁結構特征的像素相對變化,使用的方法是在外包矩形中心和多點平均重心的基礎上新提出來的多點加權重心。 最后通過攝像機標定,將像素距離轉化為物理距離。
外包矩形中心:特征點坐標就是特征序列最小外包矩形中心,由于需要統計當前圖像序列與第一張圖像的P′最小最大坐標,因此該算法的時間復雜度為線性階:Tn=O(n)。
多點平均重心:

所以該算法的時間復雜度為線性階:Tn=O(n)。多點加權重心:

所以該算法的時間復雜度為線性階:Tn=O(n)。

圖9 多點平均重心法示意圖 圖10 多點加權重心法示意圖
從圖9 與圖10 可以發現,多點加權重心相比于使用矩形中心點和多點平均重心法,在特征點序列定位結構時考慮每個匹配點的性能也就是歐式距離,然后對每個點進行加權,匹配效果好的其權重較大,實驗發現這樣具有較強的抗噪聲能力。 其中實驗中的數據為結構變形在圖像上的像素值。
表2 是使用三種方法對圖8 的變形檢測結果,在圖像內偏移的相對坐標為(6,11),根據攝像機標定[21]可以得到變形物理值為(3.1 mm,5.7 mm)。 圖像內右下方為正方向。 在距離鏡頭50 m~300 m,每隔25 m 測量一次,最后所得校驗系數為0.001 6/m,即在331 m 處一個像素代表0.53 mm。

表2 對圖8 的變形檢測結果
進行了16 次實驗,平均誤差結果如表3 所示,匹配誤差公式如下:


表3 16 次實驗,不同方法的平均誤差(%)
經過實驗發現在匹配序列存在誤匹配時,在時間復雜度相同的情況下,多點加權重心算法性能表現更好,在匹配序列F 與P 上尤為明顯。
當檢測異常時,存在兩種情況:一種是變形過大時,目標結構超出局部圖像區域;另一種是目標結構異常丟失。因此,為解決匹配異常問題,采用發生匹配異常時間超過預定值時,使用深度學習方法進行異常搜索檢測。 若檢測結果為第一種情況,則需重新劃分結構所在局部區域,否則只需給出報警信息。
隨著深度學習技術的不斷發展,多種基于深度學習的目標檢測法被提出,最矚目的兩個方向為:一個是基于區域候選網絡(RPN)的目標檢測算法,如R-CNN、Faster R-CNN 等,這類算法分為兩個階段,首先使用(RPN)來提取候選目標信息,再經過檢測網絡完成對候選目標的位置和類別的預測和識別;另一個是回歸的目標檢測算法,如SSD、YOLOv3[22-23]等,此類算法不需要使用RPN,直接通過網絡來產生目標的位置和類別信息。 因此,基于回歸檢測算法具有更快的檢測速度。
深度學習的目標追蹤對象是基于前文所述的圖像處理方法的橋梁結構。 因為各式各樣的橋梁結構太多,不對所有橋梁結構進行訓練,只對當前檢測任務的結構目標進行訓練。
本文對YOLOv3 網絡進行改進,對549 張橋梁結構圖使用改進的SURF 方法進行處理,所得結果制作數據集,進行訓練和目標的檢測。
YOLOv3 采用了Darknet53 的網絡結構,共包含53 個卷積層,Darknet53 網絡由5 個殘差塊組成,每個殘差塊開頭進行了5 次下采樣,在最后3 次下采樣分別輸出三個8×8,16×16 和32×32 尺度特征,送入檢測網絡進行目標檢測。其中32×32 尺度特征圖感受野最小,適合檢測小尺寸的對象。
針對橋梁結構多中小目標的情況,需要高分辨率的特征圖,也需要開闊的感受視野,本文對YOLOv3 網絡進行修改, 取消最后一個殘差塊的下采樣,輸出兩個16×16 和一個32×32 尺度特征,增加輸出特征圖的分辨率,同時將Darknet53 改為采用更小網絡結構的Darknet33。 這是由于深度學習中網絡規模過大會增加學習的參數數量,而本文的數據集采集是基于不同項目動態制作的,規模較小,輸入數據無法提供大量的特征信息,也會導致識別率的下降。
與YOLOv3 的對比試驗表明,改進后的網絡結構對橋梁中小目標的檢測的召回率與準確率都有明顯的提升。 改進后的網絡結構如圖11 所示。

圖11 改進后的YOLOv3 網絡結構
對YOLOv3 和改進的YOLOv3 分別進行訓練,訓練集圖像為486 張,驗證集53 張,測試集為12 張,初始學習率為0.000 1,當經過3 個Epoch 模型性能不再提升時,減少10 倍學習率,使損失函數進一步收斂。 當經過10 個Epoch 模型性能不再提升時,訓練結束。 利用旋轉圖像、增加對比度等方法對數據集中的圖像進行增強和擴充。 圖12 為批尺寸為4時訓練過程中損失值的收斂曲線。
在圖12 中,原網絡在迭代Epoch 60 時停止訓練,此時loss 收斂為18.3,val_loss 收斂為18.3。 新網絡迭代103 時停止訓練,此時loss 為8.3,val_loss為7.6。 可以看出新網絡訓練誤差和驗證誤差都優于YOLOv3。
目標召回率R 和檢測準確率S 的公式分別如式(14)、(15)所示。 XTP表示正確檢測出來的目標,XFN表示沒有被檢測出來的目標,XFP表示被錯誤檢出的目標。 為了避免網絡結構的特殊性,分別設置訓練批尺寸為2、4、8,對網絡進行3 次訓練以及測試。 表4 為實驗統計結果。


圖12 訓練過程的損失值函數曲線

表4 3 次實驗準確率與召回率
由表4 可看出,通過對YOLOv3 網絡進行優化,檢測時間降低為原來的三分之一,檢測目標的準確性與目標的召回率也相比YOLOv3 得到了提高。
利用改進的SURF 算法與卷積神經網絡進行研發的系統流程圖如圖13 所示。
表5 是依據本文算法開發的系統與其他設備或者算法的對比,可以發現本文算法測量精度高,結構目標選取方式簡單,可進行多結構目標的同時觀測。
實驗在滬通大橋29# 橋塔展開, 檢測時, 由于橋塔表面是水泥面,結構表面特征不明顯,在檢測區域加裝模板設備。 2019 年3 月10 日晚9 點主塔張拉,對塔頂進行檢測,此時距塔頂為235 m。 測量單位:mm,檢測精度0.3 mm,檢測結果如圖14 所示。

圖13 橋梁變形檢測系統流程圖
圖14 中橫坐標為時間軸,上圖表示的是橋塔東西偏移的時序圖,正方向為東偏移。 下圖表示的是橋塔南北偏移的時序圖,正方向為向北偏移。 圖中散點是設備每一次的測量值,線是散點的平均擬合曲線。 可看出檢測系統在運行正常期間,能夠遠距離無接觸地實時反映主塔在施工時的變形情況,在橋塔張拉時,橫向塔偏范圍在12 mm 內,縱向塔偏范圍在11 mm 內。

表5 本文方法與其他方法的對比

圖14 檢測實驗結果圖
具有高精度、多目標、遠距離非接觸式、實時性檢測等特點的數字圖像檢測已經成為了物體結構表面檢測的有效工具。 本文研究了把傳統數字圖像技術與深度學習結合,深度學習模塊增加了傳統算法的魯棒性,同時傳統數字圖像技術可以彌補在訓練樣本不足的情況下,深度學習檢測結果穩定性低的缺點。 由于實際應用中對滬通長江大橋29# 主塔檢測在235~325 m 之間,檢測目標與鏡頭距離過遠,發現在空氣濕度較大且溫度變化劇烈時,空氣折射率的變化會影響檢測精度,下一步將重點研究如何在此情景下,增加溫度與濕度補償措施以提高檢測精度。