基于DSP數(shù)字信號(hào)處理器的墻體裂縫測(cè)圖像的處理
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:為了對(duì)建筑物中的墻體裂縫進(jìn)行高精度和高清晰度地測(cè)量、計(jì)算和處理。文中給出了使用DSP數(shù)字信號(hào)處理器來(lái)對(duì)墻體裂縫圖像進(jìn)行預(yù)處理的具體方法及相關(guān)算法,同時(shí)給出了相應(yīng)的仿真結(jié)果。
關(guān)鍵字:墻體裂縫監(jiān)測(cè);圖像處理;DSP
0 引言
現(xiàn)代各種建筑行業(yè)中,墻體因?yàn)橥饬ε鲎?、建筑質(zhì)量、熱脹冷縮等原因,往往會(huì)產(chǎn)生一些裂縫。因此,對(duì)墻體裂縫的監(jiān)測(cè)與分析就顯得十分必要。利用圖像處理的方法來(lái)對(duì)墻體裂縫進(jìn)行監(jiān)測(cè)和分析是比較方便且有效的方法之一。但由于人為或自然因素的影響,復(fù)雜的背景噪聲一般都會(huì)疊加在有用的墻體表面圖像數(shù)據(jù)中,所以,在對(duì)裂縫進(jìn)行圖像分割前,必須通過(guò)濾波來(lái)減少噪聲,增強(qiáng)裂縫邊緣效果,然后再進(jìn)行圖像分割。
傳統(tǒng)的數(shù)字圖像處理系統(tǒng)一般是基于PC機(jī)來(lái)實(shí)現(xiàn)的,即由圖像采集卡采集圖像,再將圖像數(shù)據(jù)通過(guò)總線或網(wǎng)絡(luò)傳輸給PC機(jī),然后在PC機(jī)上進(jìn)行圖像處理。此類(lèi)系統(tǒng)通常比較復(fù)雜。且難以小型化,不方便隨身攜帶和檢測(cè)。因此,本文介紹一種基于DSP芯片來(lái)完成數(shù)字圖像處理的實(shí)現(xiàn)方法。該方法利用CCD傳感器進(jìn)行圖像采集,然后在DSP內(nèi)部通過(guò)算法對(duì)圖像進(jìn)行處理,再將處理后的圖像通過(guò)液晶進(jìn)行顯示,最后由圖像來(lái)判定裂縫的狀態(tài)和細(xì)節(jié)等。此方案可使系統(tǒng)更加簡(jiǎn)潔、實(shí)時(shí)性更強(qiáng),因此,可在便攜式圖像檢測(cè)設(shè)備中得到一定的應(yīng)用。
1 算法簡(jiǎn)介
通過(guò)CCD圖像傳感器采集的圖像,還需對(duì)其進(jìn)行一定的處理,才能更好的反映出墻體裂縫的細(xì)節(jié)。對(duì)圖像進(jìn)行處理需要一定的算法支持,要根據(jù)算法內(nèi)容進(jìn)行編程,最后通過(guò)移植程序到DSP中,以最終實(shí)現(xiàn)圖像處理。本文使用的是中值濾波、圖像灰度值修正、迭代閾值法二值化圖像分割等算法。
由于采集的初始圖像中的噪聲會(huì)降低圖像的質(zhì)量,使圖像特征淹沒(méi),給分析帶來(lái)困難。因此,去除噪聲、恢復(fù)原始圖像是裂縫圖像處理中的一個(gè)重要內(nèi)容。中值濾波是一種非線性的信號(hào)處理方法,可在一定條件下克服線性濾波器帶來(lái)的圖像細(xì)節(jié)模糊問(wèn)題,對(duì)濾除脈沖干擾最為有效。中值濾波一般采用一個(gè)含有奇數(shù)點(diǎn)的滑動(dòng)窗口(通常為二維窗口)來(lái)用窗口中各點(diǎn)灰度值的中值來(lái)替代指定點(diǎn)(一般是窗口的中心點(diǎn))的灰度值。中值濾波的窗口形狀和尺寸對(duì)濾波器的效果影響較大,因此,需根據(jù)不同要求選用不同的窗口形狀和尺寸。由于裂縫圖像中的脈沖干擾較多,因此,為了保證去噪時(shí)失真小,本文筆者選擇3×3的方形窗口來(lái)進(jìn)行中值濾波。
直方圖修正主要是為了調(diào)整圖像的亮度,增強(qiáng)圖像中感興趣的灰度區(qū)域。中值濾波后,由于墻體裂縫圖像的特殊性,圖像中的裂縫灰度值往往較小、較灰暗,而背景灰度值往往較大、較明亮。因此,筆者采用了一種線性拉伸變換的方法來(lái)增強(qiáng)圖像的灰度效果。若由用戶(hù)輸入感興趣的灰度區(qū)域范圍,當(dāng)某點(diǎn)的像素值小于范圍的最小值時(shí),該點(diǎn)像素值賦值為0;大于范圍的最大值時(shí),該點(diǎn)像素值賦值為255。若在范圍中,則計(jì)算出該值在范圍中的比例,再用比例乘以255,以得到新的像素值。這樣,就將感興趣的灰度區(qū)域拉伸到0~255,從而達(dá)到對(duì)比度增強(qiáng)的目的。
在圖像進(jìn)行灰度值拉伸修正后,為了便于裂縫觀察,還需要將裂縫從圖像中分割出來(lái)。由于墻體裂縫與背景在灰度級(jí)上有明顯的區(qū)別,所以,選擇合適的閾值T便能實(shí)現(xiàn)分割。若像素灰度值小于T,則將其灰度值設(shè)置為0,否則,將其灰度值設(shè)置為255。閾值的選取是關(guān)系圖像分割質(zhì)量好壞的關(guān)鍵,本文采用迭代閾值法來(lái)求得閾值T。其灰度的閾值分割變換公式如下:
式(1)中,T為采用迭代閾值法得到的閾值。
[!--empirenews.page--]
2 硬件系統(tǒng)設(shè)計(jì)
利用DSP完成墻體裂縫圖像的采集與處理時(shí),需要建立相應(yīng)的硬件平臺(tái)。該平臺(tái)需要能實(shí)時(shí)完成圖像的采集、處理與分析。本文采用TI公司的DSP芯片TMS320DM642作為主處理芯片,并完成相應(yīng)的外部電路設(shè)計(jì),其具體結(jié)構(gòu)如圖1所示。
用DSP處理器TMS320DM642作為主處理器,其最高能達(dá)到600 MHz的工作頻率,完全能滿足本文的墻體裂縫圖像分割提取的實(shí)時(shí)處理要求。設(shè)計(jì)時(shí),先利用CCD圖像傳感器采集墻體裂縫圖像,再經(jīng)過(guò)AD轉(zhuǎn)換將圖像數(shù)據(jù)送到CPLD中,并在緩沖后將數(shù)據(jù)傳輸?shù)紻SP進(jìn)行處理,該DSP芯片可利用各種算法對(duì)圖像進(jìn)行處理。若數(shù)據(jù)需要存儲(chǔ),則可以利用CPLD將所需存儲(chǔ)的數(shù)據(jù)在DSP與FLASH、SDRAM之間進(jìn)行傳遞。當(dāng)圖像處理完成后,再通過(guò)LCD接口電路將圖像在LCD上顯示,從而完成圖像的實(shí)時(shí)分析、處理與顯示。
3 算法實(shí)現(xiàn)流程
該圖像處理算法需要由相關(guān)的程序來(lái)實(shí)現(xiàn),最后再將程序嵌入到DSP處理器中。當(dāng)墻體裂縫圖像通過(guò)CCD圖像傳感器采集以后,其后的處理過(guò)程首先要對(duì)圖像進(jìn)行中值濾波,其次通過(guò)灰度值修正,取得最優(yōu)閾值后再進(jìn)行二值化分割,以完成對(duì)圖像的處理。
中值濾波算法的C語(yǔ)言實(shí)現(xiàn)過(guò)程首先是確定中值濾波窗口與形狀,然后將窗口內(nèi)的像素值存入數(shù)組中,再通過(guò)冒泡法對(duì)該數(shù)組進(jìn)行排序以取出中值,最后用該中值替換原來(lái)窗口的中心像素,至此,便實(shí)現(xiàn)了圖像的中值濾波。由于墻體裂縫圖像的特殊性,灰度值修正算法的C語(yǔ)言實(shí)現(xiàn)過(guò)程是先獲取用戶(hù)感興趣的灰度區(qū)域[A,B],再利用循環(huán)對(duì)每個(gè)像素點(diǎn)的值M進(jìn)行判斷,若M<A,則將M賦值為0,若M>B,則將M賦值為25 5,若A<M<B,則有:
式中INT為取整,通過(guò)以上運(yùn)算,便可實(shí)現(xiàn)感興趣區(qū)域的灰度拉伸,使對(duì)比度增強(qiáng)。圖2所示是通過(guò)C語(yǔ)言實(shí)現(xiàn)中值濾波與灰度修正的具體
流程圖。
[!--empirenews.page--]
在閾值分割算法的C語(yǔ)言實(shí)現(xiàn)過(guò)程中,由于裂縫圖像中的裂縫和墻體背景的灰度值相差較大,因此,其直方圖會(huì)呈現(xiàn)明顯的雙峰形狀,而將該谷值作為分割的閾值來(lái)進(jìn)行二值分割會(huì)得到較好的分割圖像。一般情況下,采用迭代閾值分割法比較適合。用迭代的方法來(lái)對(duì)閾值進(jìn)行迭代,能夠自適應(yīng)地尋找出最優(yōu)的閾值。然后將每個(gè)像素值與閾值進(jìn)行比較,大于閾值時(shí),將該點(diǎn)的像素值置為255;小于閾值時(shí),將該點(diǎn)的像素值置為0。此時(shí),便完成圖像的二值化分割。在整個(gè)過(guò)程的運(yùn)行中,主函數(shù)先開(kāi)始執(zhí)行,并先進(jìn)行初始化,包括將圖像數(shù)據(jù)裝入到指定的存儲(chǔ)空間,設(shè)置圖像的邊界和大小,通過(guò)迭代閾值法得到最佳閾值T等,接著再進(jìn)行中值濾波,然后進(jìn)行灰度修正,再后進(jìn)行閾值分割,至此便完成了整個(gè)圖像的處理過(guò)程。通過(guò)C語(yǔ)言實(shí)現(xiàn)閾值分割算法以及整個(gè)圖像處理的流程如圖3所示。
4 仿真結(jié)果分析
本文利用DSP集成開(kāi)發(fā)平臺(tái)CCS對(duì)裂縫圖像的處理進(jìn)行了仿真,并通過(guò)建立新的工程將主程序以及相關(guān)的庫(kù)函數(shù)加入到工程中,然后在配置存儲(chǔ)空間和編譯鏈接后,鏈接了仿真器,并將生成的下載文件下載到仿真器中,最后設(shè)置斷點(diǎn),開(kāi)始運(yùn)行程序,觀察每次圖像處理的結(jié)果。其具體的仿真結(jié)果如圖4所示。
在圖4中,圖4(a)為原圖像,(b)為經(jīng)過(guò)中值濾波后的圖像,該圖像中的噪聲有所減少,但圖像也開(kāi)始有點(diǎn)模糊; (c)為灰度調(diào)整后的圖像,該圖像中亮度明顯增加,裂縫與背景的對(duì)比度明顯提高,細(xì)節(jié)也較明顯; (d)為利用迭代閾值法進(jìn)行二值分割后的圖像,可以看出,該圖像中的裂縫基本被分割出來(lái),粗的裂縫清晰明顯,細(xì)的裂縫分割效果也基本滿意,可以達(dá)到裂縫圖像去噪、增強(qiáng)、分割的目的。
5 結(jié)束語(yǔ)
本文主要探討墻體裂縫圖像的預(yù)處理過(guò)程以及算法的DSP實(shí)現(xiàn)。該方法通過(guò)C語(yǔ)言編程并利用DSP可完成圖像采集、中值濾波、圖像增強(qiáng)、圖像分割四個(gè)步驟,從而完成整個(gè)裂縫圖像的處理過(guò)程。墻體裂縫圖像經(jīng)處理后,裂縫能較清晰的得到顯示與分割,而且細(xì)節(jié)信息基本保留,因而可為其他處理做準(zhǔn)備。由于該方法是通過(guò)DSP來(lái)實(shí)現(xiàn)整個(gè)過(guò)程,故其硬件系統(tǒng)結(jié)構(gòu)簡(jiǎn)潔。事實(shí)上,本文的方法也可在一些便攜式墻體裂縫檢測(cè)設(shè)備中得到應(yīng)用。