圖像的二維提升小波變換的FPGA實(shí)現(xiàn)
在提升算法的實(shí)現(xiàn)中,它的系數(shù)分布存在的特點(diǎn),可以簡(jiǎn)化設(shè)計(jì)的實(shí)現(xiàn)。
(1)對(duì)輸入數(shù)據(jù)的處理,只牽涉到了兩兩相鄰的數(shù)據(jù)(圓圈中的數(shù)字表示執(zhí)行的時(shí)鐘序號(hào)),數(shù)據(jù)相關(guān)性圖如圖3所示。對(duì)圖像數(shù)據(jù)進(jìn)行行/列變換時(shí),只需要得到該數(shù)據(jù)以及同一行(列)的相鄰兩個(gè)數(shù)據(jù),就可以進(jìn)行當(dāng)前數(shù)據(jù)的行/列變換,而與其他數(shù)據(jù)無(wú)關(guān),其本質(zhì)是將奇序列數(shù)據(jù)與偶序列數(shù)據(jù)順次逐一輸入。因此,對(duì)數(shù)據(jù)輸入部分的處理可以通過(guò)構(gòu)建兩個(gè)地址生成模塊,實(shí)現(xiàn)對(duì)奇偶地址數(shù)據(jù)的讀取。
(2)提升算法具有原位計(jì)算的特點(diǎn),因此計(jì)算的系數(shù)可以直接替代原始數(shù)據(jù)而不需要附加數(shù)據(jù)存儲(chǔ)空間。對(duì)于它的行、列變換都可以只使用同一個(gè)存儲(chǔ)器RAM進(jìn)行原始數(shù)據(jù)、中間數(shù)據(jù)和變換后數(shù)據(jù)的存儲(chǔ)。由圖4可以清楚地看到,二維提升小波變換后的系數(shù)在存儲(chǔ)空間的分布情況。原位存儲(chǔ)的特點(diǎn)大大地節(jié)省了片上資源,最有效地提高了系統(tǒng)利用率。
(3)行方向與列方向的提升小波變換是一樣的,因此可以將一維提升小波變換設(shè)計(jì)成一個(gè)獨(dú)立的模塊,之后對(duì)它進(jìn)行反復(fù)調(diào)用。這也是簡(jiǎn)化系統(tǒng)的有效途徑之一。
一維小波變換是二維小波變換的前提,對(duì)于它的FPGA實(shí)現(xiàn),由圖2可以看出,5/3提升小波變換中主要計(jì)算是加、減運(yùn)算,而除法運(yùn)算是除以2和除以4,這在硬件實(shí)現(xiàn)中可通過(guò)“右移”操作實(shí)現(xiàn)快速運(yùn)算。因此在設(shè)計(jì)中只需將圖2中的乘法器模塊用相應(yīng)的移位操作模塊代替。而圖2中乘以-1/2模塊被替代為右移1位模塊之后,便少了一個(gè)負(fù)號(hào),因此再將此乘法器后面的加法器模塊改為減法器,同樣達(dá)到了乘以-1/2的效果。這樣的改進(jìn)還簡(jiǎn)化了負(fù)數(shù)在硬件電路中的運(yùn)算。改進(jìn)后的硬件實(shí)現(xiàn)框圖如圖5所示。
二維小波變換的硬件原理結(jié)構(gòu)如圖6所示,其工作原理如下:采用RAM1功能模塊來(lái)實(shí)現(xiàn)圖像數(shù)據(jù)的存儲(chǔ);通過(guò)地址生成模塊來(lái)實(shí)現(xiàn)對(duì)存儲(chǔ)器中奇偶地址數(shù)據(jù)的分裂操作,先進(jìn)行行方向的奇偶序列地址分裂,并做一維小波變換;行方向的操作一結(jié)束,立即進(jìn)行列方向的奇偶序列地址分裂,并做一維小波變換。以上兩步反復(fù)進(jìn)行,便可完成圖像的多級(jí)二維小波變換,最終的小波變換系數(shù)將被存儲(chǔ)在RAM2中。
4 二維5/3提升小波變換的FPGA實(shí)現(xiàn)
4.1 主要功能模塊的設(shè)計(jì)
(1)RAM模塊。要實(shí)現(xiàn)對(duì)同一個(gè)數(shù)據(jù)塊的雙輸出,以便進(jìn)行一維提升小波變換,因此選擇了具備雙端口功能的宏模塊,用來(lái)存儲(chǔ)行小波變換系數(shù)和存儲(chǔ)列小波變換系數(shù),這樣的結(jié)構(gòu)能更加清晰地反映算法的實(shí)現(xiàn)流程,能夠?qū)崿F(xiàn)算法中對(duì)奇偶地址數(shù)據(jù)的同時(shí)讀取。
(2)行方向奇地址發(fā)生模塊和行方向偶地址發(fā)生模塊。行方向奇地址發(fā)生模塊實(shí)現(xiàn)功能是在每個(gè)時(shí)鐘周期內(nèi),依次輸出如圖7所示的白色圓圈所示存儲(chǔ)器行方向奇數(shù)單元的地址,這實(shí)際上是一個(gè)計(jì)數(shù)功能。行方向偶地址發(fā)生模塊實(shí)現(xiàn)的功能與行方向奇地址發(fā)生模塊類似,不同的是在每個(gè)時(shí)鐘周期內(nèi)按行輸出圖7所示的灰色圓圈的序號(hào)。
(3)列方向奇地址發(fā)生模塊和列方向偶地址發(fā)生模塊。在計(jì)數(shù)結(jié)束時(shí),列方向奇地址發(fā)生模塊在每個(gè)時(shí)鐘周期內(nèi)依次輸出如圖8所示的白色圓圈所示的存儲(chǔ)器列方向奇數(shù)單元的地址。列方向偶地址發(fā)生模塊實(shí)現(xiàn)的功能與列方向奇地址發(fā)生模塊類似,不同的是在每個(gè)時(shí)鐘周期內(nèi)按列輸出圖8所示的灰色圓圈的序號(hào)。
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論