臧 晶,劉冠楠,楊慧英
(沈陽理工大學 a.信息科學與工程學院;b.自動化與電氣工程學院,沈陽 110159)
Otsu算法的打捆鋼筋計數(shù)方法研究
臧 晶a,劉冠楠a,楊慧英b
(沈陽理工大學 a.信息科學與工程學院;b.自動化與電氣工程學院,沈陽 110159)
針對打捆鋼筋端面識別與統(tǒng)計過程中存在的非均勻光照、噪聲干擾等問題,提出將Otsu算法應用于鋼筋數(shù)目統(tǒng)計的研究,利用基于連通區(qū)域標記的中心點提取算法完成計數(shù)。通過Matlab軟件對圖像進行處理,驗證了Otsu算法具備優(yōu)越的抗干擾能力和自適應性,鋼筋端面圖像識別與統(tǒng)計的正確率高達98.48%。
圖像增強;Otsu;連通區(qū)域;鋼筋計數(shù)
在鋼筋線材廠家的生產(chǎn)及質(zhì)量檢驗過程中,成捆的鋼筋數(shù)目統(tǒng)計是物體識別層面上的典型問題,但在實際運作當中卻因為周邊復雜的生產(chǎn)環(huán)境加大了鋼筋識別統(tǒng)計的困難程度[1]:成捆鋼筋井字交錯堆放的問題;采集的圖像因為受光照不勻稱而導致亮度不一的問題;由于鋼筋間相互擠壓而造成的邊緣不清晰和粘連情況;一些鋼筋的端面顏色由于氧化作用而發(fā)暗的情況[2];大部分端面類圓形狀存在的不規(guī)則問題。
對于上面敘述的幾個問題,本文在對成捆鋼筋端面圖像進行圖像增強后,再應用最大類間方差(Otsu)算法對所得的鋼筋端面圖像進行分割,使目標鋼筋和背景之間達到良好的分離效果。最終利用所提出的基于連通區(qū)域標記的中心點提取算法對數(shù)目進行識別及統(tǒng)計。
在實際的鋼筋端面圖像分割中,Otsu算法盡管環(huán)境適應性好但仍存在不足:圖像在傳輸和處理階段受到來自圖像內(nèi)部及外部的噪聲干擾,隨機分布的噪聲點增多;光照不均而導致鋼筋圖像亮度不均勻。上述兩因素使得圖像在某些方面有一定程度的降質(zhì),影響鋼筋的識別及統(tǒng)計。選擇組合雙邊濾波相關(guān)算法對鋼筋端面圖像在多重環(huán)境因素的限定下完成不均勻光照校正和噪聲去除,并盡可能保留圖像的邊緣細節(jié)信息[3]。
考慮到鋼筋的端面圖像存在污染、噪聲、氧化生銹、光源照射不均勻等現(xiàn)象,因此在圖像的亮度提高預處理基礎(chǔ)上,再選擇組合雙邊濾波[4]相關(guān)算法對鋼筋端面圖像進行光照校正和噪聲去除。具體步驟如下:
(1)非均勻光照校正。選取成捆鋼筋端面灰度圖像上的某個像素點作為起始點,然后把一個大小為(2n+1)×(2n+1)窗口的中心點與其放置重合。當鄰域窗口中全部像素的平均值大于這個點的像素值(在求解邊界區(qū)域的均值時,就選取窗口內(nèi)部的像素值)的K倍時,此時將值置0,若是小于或等于就保留之前的像素值。對圖像上所有像素點進行逐個循環(huán)來解決光源照射不均的問題。經(jīng)過多次實驗,本步驟的參數(shù)n=18,K=0.5。
(2)中值濾波去噪。對經(jīng)過步驟(1)操作后的端面圖像應用濾波窗口大小為3×3的中值濾波方法進行椒鹽噪聲的有效濾除。
(3)擴展鋼筋端面圖像的邊界。把經(jīng)過步驟(2)操作后的圖像外圍全部增添r個像素點,同時用圖像四周最外邊的r個像素的灰度值去替換這些像素點的值。
(4) 雙邊濾波保邊去噪。對于進行過擴展邊界的端面圖像,應用雙邊濾波。各參數(shù)如下:濾波器半寬值是8;灰度測度擴散標準差取值0.2;幾何測度擴散標準差取值1。算法對鋼筋端面的信息及邊緣保留,實現(xiàn)圖像的增強,對后續(xù)分割鋼筋的端面圖像提供較好的基礎(chǔ)。預處理結(jié)果如圖1所示,其中圖1a是原始打捆鋼筋端面圖像,圖1b是經(jīng)過雙邊濾波的圖像。
圖1 鋼筋端面圖像預處理圖
在各種自適應閾值確定的方法中,Otsu算法能夠不受光照、噪聲等因素的影響,利用圖像灰度直方圖的統(tǒng)計特性取得一個最佳閾值,進而將灰度圖像里的目標分離,同時也區(qū)別背景部分[5]。當目標與背景的類間方差值越大時,則表示此時圖像目標和背景差別越明顯,分割效果越好。因此,其首要任務是在最小錯分概率的限定下得到整個鋼筋端面圖像中的最佳閾值。根據(jù)改進Otsu算法[6],在0≤t≤L-1條件下(L表示圖像的灰度級數(shù)),確定一個t,滿足目標和背景的類間方差值最大類內(nèi)方差最小,這個t為最佳閾值t*。
(1)
式中:w1、w2、u1、u2、δ1及δ2分別代表目標和圖像背景的概率,均值和方差。經(jīng)過預處理操作后,鋼筋的端面圖像有可觀的信噪比;同時在灰度上,目標鋼筋端面和圖像的背景有較大區(qū)別。因而,研究改進Otsu算法并結(jié)合形態(tài)學處理[7]能夠達到鋼筋和背景的成功區(qū)分,同時獲得鋼筋端面的二值圖像。Otsu算法運行結(jié)果如圖2所示。此時得到的最大類間方差為1.67×1013,最佳閾值t*為114。
圖2 Otsu算法運行結(jié)果圖
經(jīng)過圖像濾波、分割等一系列的前期處理,提出基于連通區(qū)域標記[8]的中心點提取算法對鋼筋端面圖像中的目標進行計數(shù),具體算法步驟如下:
(1)連通區(qū)域標記。利用連通區(qū)域標記的方法處理所得二值圖像img,并記下代表連通區(qū)域數(shù)目的num。
(2)單個連通區(qū)域提取。根據(jù)連通區(qū)域所對應的標號k去獲得每塊連通區(qū)域,表示為Rk。設置與img等尺寸的全0矩陣img1,把獲取連通區(qū)域坐標位置對應的像素值替換到對應的img1中的坐標點上,除連通區(qū)域Rk以外,其它部分都作為背景處理,即可獲得只含有標號是k的連通區(qū)域?qū)亩祱D像img2,灰度值為f(x,y)。
(3)生成內(nèi)部邊界點。依照由上到下,從左及右的次序逐個掃描二值圖像img2的像素點,若目標像素點P的八鄰域像素點滿足:
那么,若P的八鄰域像素灰度值相加和是0,則表明像素點P作為一個孤立點存在;若P的八鄰域像素灰度值相加以后和不是0,則表明像素點P是一個邊界點。在上述掃描結(jié)束后,對于判別結(jié)果是孤立點的像素點,把該像素點對應的灰度值重新設置為0;對于判別結(jié)果是邊界點的像素點,首先對其標記,然后記錄其對應的坐標值。如此便可對下面求得中心點的坐標信息奠定基礎(chǔ)。
(4)對內(nèi)部的邊界點存在進行檢測,然后標記出中心點,求取半徑值,能夠得到對應的圓,進而可以確定圖像的目標。在對邊界點的存在檢測和標記完成后,繼續(xù)確定同一個連通部分的內(nèi)部是否有非邊界點,如果目標像素P的八鄰域像素滿足:
則表明這個像素點是內(nèi)點。若有內(nèi)點,就將其對應的邊界點灰度值置0,同時對步驟(3)、(4)進行重復操作,以檢測不出內(nèi)點為終止。若檢測不到內(nèi)點的存在,就對最后一個標記點進行求均值,此時的位置即為最終中心點的坐標。
(5)識別與統(tǒng)計。對上述(2)、(3)、(4)步驟進行循環(huán)操作,以全部的連通區(qū)域部分被掃描作為結(jié)束標志,同時標明目標以達到可視化,最終識別的鋼筋個數(shù)可由中心點總數(shù)目得到。
對一幅存在部分氧化生銹、含有噪聲問題及光源照射不均勻的鋼筋圖像進行分析統(tǒng)計,以驗證本研究提出的算法有效性。圖3中共有130根鋼筋,首先對于圖像對比度的提升采用雙重濾波,同時減弱噪聲;然后對已增強圖像運用Otsu算法達到二值化;針對存在輕度粘連情況的鋼筋圖像采用形態(tài)學方法中的開操作進行處理;最后利用連通區(qū)域標記的中心點提取算法達到鋼筋數(shù)目統(tǒng)計的目的。圖3a是經(jīng)過形態(tài)學方法分離輕度粘連目標后的二值圖像,圖3b是采用基于連通區(qū)域標記中心點提取算法的鋼筋統(tǒng)計結(jié)果圖。
圖3 打捆的鋼筋端面圖像處理及計數(shù)過程
圖3表明,經(jīng)過預處理操作的圖像內(nèi)部及邊緣得到優(yōu)化,并基本濾除側(cè)面螺紋,既提升圖像的整體質(zhì)量,又突出生銹鋼筋目標;經(jīng)過Otsu分割并進行形態(tài)學操作后的圖像邊緣光滑,幾乎不存在離散小點與毛刺的現(xiàn)象,清晰的分割出生銹鋼筋部分,輕度粘連鋼筋大部分被分離。對于存在的嚴重粘連問題,通過單根鋼筋中心點的連通區(qū)域標記算法可以有效解決[9]。實驗采集圖像的打捆鋼筋中存在嚴重粘連的情況,導致識別統(tǒng)計出的結(jié)果是132根,出現(xiàn)偏差。對于上述問題,如果能引進關(guān)于結(jié)果的優(yōu)化模塊,并選用手動進行選取等操作的方式,能夠使統(tǒng)計結(jié)果的精確度得到更高的提升。
驗證基于連通區(qū)域標記的鋼筋端面圖像中心點提取算法的準確性,另外選擇9幅鋼筋端面圖像供實驗分析,統(tǒng)計的數(shù)據(jù)如表1所示。
表1 基于連通區(qū)域標記的中心點提取算法計數(shù)結(jié)果統(tǒng)計
多個實驗結(jié)果數(shù)據(jù)表明,本研究提出的算法可以不過度依賴目標圖像本身的大小和形狀,在多重限定條件下能夠準確地識別并統(tǒng)計鋼筋端面圖像。算法的自適應性較強,既成功處理鋼筋粘連的情況,又提高了統(tǒng)計結(jié)果準確率。
鑒于雙邊濾波和中值濾波的優(yōu)勢,提出一種兩者結(jié)合的預處理方法,使圖像的信噪比得到明顯提升;對圖像分割時采用改進后Otsu算法,并基于連通區(qū)域標記的中心點提取算法完成對鋼筋的識別與統(tǒng)計。實驗結(jié)果表明,本研究中的算法避免鋼筋端面目標的過分割,對粘連問題依賴少;統(tǒng)計結(jié)果準確,可信度高;具備自適應性好和抗干擾能力較強的優(yōu)勢。
[1] 房新亮,陳樹環(huán).基于機器視覺技術(shù)的棒材自動計數(shù)系統(tǒng)的研究與應用[J].工業(yè)控制計算機,2011,24(7):44-46.
[2] 孫忠貴.數(shù)字圖像光照不均勻校正及Matlab實現(xiàn)[J].微計算機信息,2008,24(4):313-314.
[3] 邱宇.基于雙邊濾波的圖像去噪及銳化技術(shù)研究[D].重慶:重慶大學,2011.
[4] 李俊峰.雙邊濾波算法的快速實現(xiàn)及其在圖像處理的應用[D].廣州:南方醫(yī)科大學,2013.
[5] 李媛媛,黃泉源,侯智新.基于霍夫變換的OSTU改進算法在路面裂縫檢測中的研究[J].電子設計工程,2016,24 (5):43-46.
[6] 臧晶,郭倩倩,李成華,等.復雜條件下多玉米籽粒識別與統(tǒng)計方法研究[J].沈陽農(nóng)業(yè)大學學報,2014,45 (5):633-636.
[7] 黃玲,齊保謙,胡波.基于圖像連通區(qū)域面積的成捆棒材自動計數(shù)方法[J].工礦自動化,2012,34(5):77-79.
[8] 王凱,施隆照.基于FPGA的快速連通區(qū)域標記算法的設計與實現(xiàn)[J].計算機工程與應用 2016,52 (18):192-198.
[9] 馬毅超,陶亞凡,吳龍勝,等.基于FPGA的二值圖片連通區(qū)域標記算法[J].微電子學與計算機,2017,34 (1):119-122.
[10]初琦,郭軍.利用 Hough 變換的棒線材位置檢測方法的研究[J].現(xiàn)代制造工程,2012,44(10):58-60.
AMethodofCountingPackedSteelBarBasedonOtsuAlgorithm
ZANG Jing,LIU Guannan,YANG Huiying
(Shenyang Ligong University,Shenyang 110159,China)
For current issues about non-uniform illumination and noise disturbance which exists in the image of bundled steel bar under complicated condition,the Otsu algorithm is proposed and applied to the research of steel bar counting.Steel bars number is counted by using the extraction algorithm of center point based on connected regions labeling.Through the progress of the image in Matlab software,Experimental results show that the proposed algorithm has strong ability in anti-disturbance and adaptive force.The counting accuracy is up to 98.48%.
image enhancement;Otsu;connected regions;steel bar counting
2017-05-02
遼寧省教育廳一般項目(L2015468);沈陽理工大學重點實驗室開放基金項目(4771004kfx14)
臧晶(1975—),女,副教授,研究方向:圖像處理與模式識別。
1003-1251(2017)06-0047-04
TP391
A
王子君)