文章出處

摘要摘要:大型建筑、道路及橋梁等表面裂縫問題是其安全性檢測中不能回避的問題,傳統的人工檢測手段,不僅速度慢,其計算精度也有待提高,更重要的是對于不安全的位置,使用人工檢測危險性高。針對該問題,提出基于Sobel算子的改進邊緣檢測算法對圖像進行處理,能夠準確識別混凝土表面裂縫的邊緣。

  關鍵詞關鍵詞:裂縫檢測;邊緣檢測;Sobel算子
  DOIDOI:10.11907/rjdk.162279
  中圖分類號:TP319文獻標識碼:A文章編號文章編號:16727800(2017)001011203
  引言
  2006年,伊蘭[1]在圖像增強中結合對比度增強、濾波和銳化等方法,在裂縫識別中使用梯度閾值提取邊緣,使用最小距離法進行計算,以獲得混凝土表面裂縫寬度。2011年,曾艷霞[2]在混凝土裂縫特征信息識別研究中提出對采集系統進行標定,得到圖像中一個像素代表的實際物理長度。2014年,劉宇飛等[3]基于數字圖像處理對混凝土表面裂縫進行識別,提出對采樣圖像進行背景減除以消除噪聲,為了減少內部空腔造成的影響,對處理圖像進行形態學閉運算,這樣不僅將斷裂的小邊緣連接起來,還能夠填充空腔。本文采用基于Sobel算子的改進邊緣檢測算法對混凝土表面裂縫進行檢測,以達到更精確的效果。1裂縫邊緣識別
  1.1裂縫圖像預處理
  現場采集的圖像是RGB彩色圖像,在進行圖像計算前需要將其轉換成二位灰度圖,并盡量去除圖像背景中的噪聲,以去除圖像中不需要或妨礙邊緣識別的信息,為后續處理作好準備。1.2裂縫邊緣識別算法
  基于Sobel算子的改進的邊緣檢測算法提取完成去噪圖像中的裂縫邊緣。Sobel算子對最靠近中心點的上下左右位置權值設為2,相鄰行或列的其它位置權值設1,用中心像素上下或左右行或列的差值作為水平或垂直方向的梯度值。但是由于其主要對水平和垂直兩個方向的邊緣最為敏感,因此檢測方向較為受限。這樣處理的結果是,圖像往往可以發現水平和垂直方向的邊緣檢測的較為明顯,相比之下其它方向就沒那么明顯。對于現實圖像中不確定的邊緣方向,對不同方向設計對應的梯度模板,使其僅對該方向邊緣最為敏感,這樣就可以更精確檢測相應方向的邊緣。不同方向的模板就構成了方向匹配檢測模板,用其中的每一個模板與圖像分別卷積,最后計算出的梯度值最大的那個模板對應的方向就是該邊緣點的方向。2015年,沈德海[4]提出一種多方向算子模板的邊緣檢測算法,該算法采用0°、22.5°、45°、67.5°、90°、112.5°、135°和157.5°等8個方向的算子模板來計算圖像梯度。該算法檢測效果雖然有較大提高,但是邊緣出現了很多顆粒狀像素,檢測的邊緣有些粗糙,仍舊不夠細致、精確。有些邊緣已經達到了單像素邊緣,但大部分邊緣仍然還不是單像素的。2015年,宋爽等[5]利用多個閾值進行邊緣檢測,提出連點畫圖的方法,在目標輪廓上作零星標記點,從一個標記點開始順序鄰接這些點,結合多閾值思想,這樣就可以把目標輪廓精確細致地描繪出來。
  本文改進算法對沈德海提出的5×5模板8方向檢測算子處理后的圖像進行再處理,因此著重改進的是對已獲得的邊緣進行再細化處理。由于模板8方向檢測算子得到的邊緣比經典Sobel算子處理結果更細,因此具體的邊緣像素選擇算法則不同于宋爽等提出的算法。采用水平、垂直、45°和135°等4個方向的 大小的卷積模板進行檢測,同時對梯度圖像采用局部標準差進行梯度增強,使得監測的邊緣較為完整,細節較為豐富,連續性好。對于4個模板的權值分配問題,提出不同位置賦予不同權值,權值大小根據該位置的像素對中心點相應方向梯度值貢獻大小來決定,也反映了該位置與距離模板中心的位置關系,距離最近的為4或-4,其次為2或-2,再次為1或-1,最遠的為0。8方向邊緣檢測算子如圖1所示。圖1八方向梯度算子
  為獲取圖像梯度,需要將這8個模板分別與圖像進行卷積運算以獲得模板中心點對應方向的梯度g0,g45,g90,g135,g22.5,g67.5,g112.5,g157.5,則中心點對應的梯度幅值MAG(x,y)計算公式如式(1):
  MAG(x,y)=sqrt((g20+g245+g290+g2135+g222.5+g267.5+g2112.5+g2157.5)/10)(1)
  根據像素水平方向梯度與垂直梯度的關系,將像素邊緣類型分為水平邊緣和垂直邊緣,其中TAG(x,y)表示(x,y)處的邊緣類型,分類公式如式(2):
  (1)使用TH1模板8方向檢測算子與圖像進行模板運算,獲得各方向梯度值,將這些梯度值的平方和開方,將其除以一個調節因子,以免開方后的梯度值過大超出范圍,將開方結果作為模板中心點像素的梯度幅值。
  (2)比較該像素點水平和垂直梯度值,注意這里要加絕對值比較,不然對由暗向明變化的邊緣,由于模板總是下一行或者右一行減去上一行或者左一行,導致梯度值為負,直接比較則像素點的邊緣方向就會被標記為與真實邊緣方向相反,致使最后右側或下側邊緣容易出現斷點現象。水平梯度值大的標記像素為垂直邊緣;反之,標記為水平邊緣。
  (3)設置第一個閾值TH1,對上述幅度值進行判斷,若其幅值大于TH1,并且該點幅值大于其左右兩像素幅值或者大于上下�上袼胤�值,則將其標記為邊緣區域。
  (4)設置第二個閾值TH2,在邊緣區域,若像素為縱向邊緣,并且左邊像素屬于邊緣區域,則該像素梯度幅值減去左邊像素梯度幅值大于TH2或者其右邊像素屬于邊緣區域;如果該像素梯度幅值減去右邊像素梯度幅值大于TH2,則將該像素標記為標兵點,同時標記為邊緣。
  (5)在邊緣區域,若像素為橫向邊緣,并且上邊像素屬于邊緣區域,則如果該像素梯度幅值減去上邊像素梯度幅值大于TH2或者其下邊像素屬于邊緣區域;如果該像素梯度幅值減去下邊像素梯度幅值大于TH2,則將該像素標記為標兵點,同時標記為邊緣。   (6)從標兵點開始連接邊緣,若為縱向標兵點,則先向4-鄰域上方走;若其4-鄰域左右像素均在邊緣區域,則標記其中幅值最大的那個作為邊緣,并以其為下一輪判斷起點;若左右像素只有一個屬于邊緣區域,則標記幅值大的那個像素為邊緣,并以其為下一輪判斷起點;若左右像素均不屬于邊緣區域,則將其標記為邊緣,并以其為下一輪判斷起點,循環結束的條件是檢查的像素點不再屬于邊緣區域或者邊緣類型變為橫向或者已經被標記為邊緣,向下走結束后回到該段起點,接著再往4-鄰域上方走,展開同樣的判斷,循環結束后回到該段起點。
  (7)若為橫向標兵點,則先向4-鄰域右方走;若其4-鄰域上下像素均在邊緣區域,則標記其中幅值最大的那個作為邊緣,并以其為下一輪判斷起點,若上下像素只有一個屬于邊緣區域,則標記幅值大的那個像素為邊緣,并以其為下一輪判斷起點;若上下像素均不屬于邊緣區域,則將其標記為邊緣,并以其為下一輪判斷起點,循環結束的條件是檢查的像素點不再屬于邊緣區域或者邊緣類型變為縱向或者已經被標記為邊緣,向右走結束后回到該段起點,接著再往4-鄰域左方走,展開同樣的判斷,循環結束后回到該段起點。
  2改進算法的檢測分析與結果
  該改進算法實質上就是對經模板處理后的圖像邊緣進行剔除操作,若邊緣是多像素寬度,則僅保留梯度幅值最大的那個像素作為邊緣;若邊緣已是單像素就直接保留為邊緣,經過邊緣“瘦身”后圖像邊緣不僅更平滑而且更為清晰。如圖(2)所示,圖2(a)表示只是用8方向模板檢測裂縫邊緣獲得的邊緣圖像,對比圖2(b)可以發現,改進后的算法檢測的裂縫邊緣去除了多于的邊緣像素,對真實邊緣進行了更準確的定位,去除了假邊緣點對裂縫寬度計算的干擾,使得計算更貼近實際。
  3結語
  本文主要對混凝土表面裂縫進行有效識別,為計算裂縫長寬提供了更精確的方法。對于改進的邊緣檢測算法中兩個閾值的確定,采用控制變量的思想,確定其中一個閾值,調節另外一個,觀察圖像邊緣隨閾值變化而變化的規律,最后在這些閾值中選擇一個較為合適的配合作為參考,運用于圖像處理,結果顯示可以達到較好效果。
  參考文獻:
  [1]伊蘭.基于數字圖像處理技術的混凝土表面裂縫特征測量和分析[D].南京:東南大學,2006.
  [2]曾艷霞.混凝土裂縫特征信息識別研究[D].長沙:中南大學,2011.
  [3]劉宇飛,樊建生,陶慕軒.基于數字圖像處理的混凝土表面裂縫識別[J].建筑結構學報,2014,35(2):356361.
  [4]沈德海,鄂旭,侯建等.基于Sobel的多方向算子模板�緣檢測算法[J].現代電子技術,2015,38(4):9197.
  [5]宋爽,任洪娥,官俊.基于Sobel梯度模板的多閾值實時邊緣檢測方法[J].計算機工程與運用,2015,51(23):199202.
百度搜索“看文倉”,專業資料、生活學習,盡在看文倉,您的在線圖書館!
歡迎轉載:http://www.kanwencang.com/xuexi/20170312/120320.html

文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()