胡 偉,應(yīng) 駿
(上海師范大學(xué)信息與機電工程學(xué)院上海 200234)
離散小波變換[1-2](DWT)現(xiàn)在被大量采用于不同的應(yīng)用領(lǐng)域。其中它以其良好的時頻區(qū)域性和多分辨率分析能力,在圖像處理方面拓展出新的領(lǐng)域。小波變換是一種很好的圖像分解方法,非常適合于分析突變信號而用于靜止圖像邊緣的提取和壓縮。因此,小波變換在圖像處理中具有十分優(yōu)越的性能。
另外,由文獻[3]得知:當前的小波變換主流設(shè)計系統(tǒng)基本采用DSP+FPGA+RAM的架構(gòu),但是資源消耗比較大,不利于大規(guī)模集成。如果DWT處理能全部用FPGA實現(xiàn),將十分有利于系統(tǒng)的集成設(shè)計。因此,研究一種基于硬件實現(xiàn)的小波變換方法就成為實時圖像處理系統(tǒng)的一個關(guān)鍵問題。
離散小波表換快速算法——Mallat算法,通過一組低通濾波器和高通濾波器,對行、列分別進行濾波實現(xiàn)。
圖像為2維信號,2維離散小波變換融合的方法是先對原圖進行小波變換,分解成低頻近似圖像,水平、垂直、對角線3個方向的高頻圖像;低頻部分還可以繼續(xù)分解。
從式(1)中分析得出結(jié)論:小波分解的正交性可使經(jīng)過多分辨分析得到圖像信號的低頻、高頻分量,消除了數(shù)據(jù)的相關(guān)性。
下面是2種分解情況:
1)在一尺度下的空間分解情況如圖2所示。
這里實現(xiàn)的硬件搭建平臺是System Generator。在該平臺中可以利用wavescope模塊進行波形仿真。進行小波變換的原始圖像數(shù)據(jù)尺寸為64×64,如下圖4所示。
圖4 原始圖像
經(jīng)分析,硬件電路可以分為數(shù)據(jù)處理鏈路模塊、控制模塊、外部圖像存儲模塊和顯示變量,如下圖5所示。
圖5 小波變換的頂層結(jié)構(gòu)
圖5中外部圖像存儲器是一個雙口存儲器的實現(xiàn),讀者可以將其當做外部的SDRAM。存儲器1和存儲器2為在每個小波變換階段結(jié)束時將數(shù)據(jù)寫入到其中。Start是系統(tǒng)給的一個激勵,讓系統(tǒng)開始運行。
圖5中的數(shù)據(jù)處理鏈路模塊完成的功能為將外部存儲器讀取的數(shù)據(jù)經(jīng)過濾波處理后輸出給外部存儲器??刂齐娐纺K主要是控制外部存儲器的讀寫地址以及使能信號。外部圖形存儲器模塊(即外部SDRAM)可以分為Bank1和Bank2,在程序起始階段,圖像數(shù)據(jù)分成2塊分別存儲在Bank1和Bank2中,并且已經(jīng)寫入到存儲1模塊和存儲2模塊中。不過為了之后的濾波操作比較便利,所以數(shù)據(jù)分塊存儲的結(jié)構(gòu)如圖6a和6b所示。
圖6 圖像數(shù)據(jù)分布
說明:圖6中的數(shù)據(jù)按照圖像垂直方向存儲,黑色表示存儲該像素位置的數(shù)據(jù)。這個分塊方法在以后的小波變換中也是如此,即每個小波變換階段結(jié)束時,所看到的圖像像素的排列分布就是按照上圖經(jīng)行的。
所有階段的高頻分量和低頻分量分離都是通過將數(shù)據(jù)經(jīng)過濾波器得到的,高頻分量和低頻分量濾波器公式為
從程序運行的時間角度來看,整個2級小波變換可以分為4個階段:1級變換列方向濾波、1級變換行方向濾波、2級變換列方向濾波以及2級變換行方向濾波。
第1階段為第1級垂直方向小波變換,即將垂直方向的低頻分量保留在圖像的上半部分,將垂直方向的高頻分量保留在圖像的下半部分,如圖7b。
第2階段為第1級水平向小波變換,即將水平方向的低頻分量保留在圖像的左半邊,將水平的高頻分量保留在圖像的右半邊,如圖7c。
第3階段為第2級水平向小波變換,即將水平方向的低頻分量保留在圖像的左半邊,將水平方向的高頻分量保留在圖像的右半邊,如圖7d。
第4階段為第2級水平向小波變換,即將水平方向的低頻分量保留在圖像的左半邊,將水平方向的高頻分量保留在圖像的右半邊,如圖7e。圖7f是一個復(fù)合圖像。
圖7 程序運行各個階段變換結(jié)果
本文中的仿真器使用的是matlab中的wavescope模塊,仿真結(jié)果如圖8所示。B1 Addr In和B2 Addr In分別是外部存儲器Bank1和Bank2的讀地址控制線,B1 Addr Out和B2 Addr Out分別是寫地址控制線,B1 WE和B2 WE是寫數(shù)據(jù)使能控制端,B1 Out和B2 Out是外部存儲器的數(shù)據(jù)傳輸端。
圖8 仿真波形
本文在System Generator平臺是提出一種區(qū)別于傳統(tǒng)的Mallat算法的快速2維離散小波變換算法?,F(xiàn)在圖像的數(shù)據(jù)量越來越大,傳統(tǒng)的變換將圖像由空間域轉(zhuǎn)換為頻率域的算法越來越不能滿足現(xiàn)實的要求,而本文提出的算法能較好的體現(xiàn)基于System Generator的小波變換的優(yōu)越性。
:
[1]RAFAEL C G,RICHARD E W.數(shù)字圖像處理[M].阮秋琦,阮宇智,譯.2版.北京:電子工業(yè)出版社,2007.
[2]紀志成,高春能.FPGA數(shù)字信號處理設(shè)計教程[M].西安:西安電子科技大學(xué)出版社,2008.
[3]顏學(xué)龍,余君.二維離散小波變換的FPGA實現(xiàn)[J].電視技術(shù),2007,31(4):20-22.
[4]劉桂華,馮全源.圖像的二維提升小波變換的FPGA實現(xiàn)[J].電子技術(shù)應(yīng)用,2008,34(3):108-111
[5]盧春暉,王英健,陳麗.提升小波算法的FPGA硬件實現(xiàn)[J].微處理機,2010,31(2):41-43.