大面陣CCD相機(jī)高速圖像壓縮系統(tǒng)設(shè)計
摘 要: 針對大面陣CCD相機(jī)高分辨率、高幀頻等特點,提出了一種適用于大面陣CCD相機(jī)高速實時圖像壓縮的系統(tǒng)。實驗結(jié)果表明,該方案在壓縮比為53:1時峰值信噪比可以達(dá)到36 dB,取得了很好的壓縮性能。
關(guān)鍵詞: 面陣CCD;圖像壓縮;JPEG2000;FPGA
目前有很多常用的壓縮算法,其中JPEG2000圖像壓縮標(biāo)準(zhǔn)可以在獲得高壓縮比的同時確保高圖像質(zhì)量,另外還具有非常好的抗誤碼性能,在大面陣CCD相機(jī)圖像壓縮領(lǐng)域得到了廣泛的應(yīng)用。JPEG2000壓縮的實現(xiàn)方法有多種,通常采用專用DSP芯片和FPGA芯片編程實現(xiàn)[1-3],兩者分別利用各自的優(yōu)點完成不同的功能。其中,專用DSP主要完成DWT變換等高速整型和浮點型運算功能,F(xiàn)PGA主要完成EBCOT等高效并行編碼算法功能[4-5],但這種實現(xiàn)方法JPEG2000需要處理的數(shù)據(jù)量比較大,還需要外擴(kuò)SRAM等大容量數(shù)據(jù)存儲器,從而使系統(tǒng)的集成度降低,而且其實時性受編程方法所制約。同時,目前大面陣CCD相機(jī)的成像和圖像壓縮存儲是兩個獨立的部分,中間連接包括復(fù)雜的接口和繁重的線纜,增加了相機(jī)的復(fù)雜度和重量。
本文提出了一種基于FPGA嵌入式處理器MicroBlaze和ADV212壓縮芯片相結(jié)合的高速、實時圖像壓縮系統(tǒng)[6-7],系統(tǒng)中圖像采集和圖像壓縮等功能均由同一個核心處理器FPGA來完成,使系統(tǒng)的處理速度和集成度都有所提高。
1 大面陣CCD相機(jī)高速圖像壓縮系統(tǒng)組成
本系統(tǒng)以Analog公司生產(chǎn)的AD212作為圖像壓縮芯片,采用內(nèi)有嵌入式處理器的高性能FPGA作為核心處理器,完成大面陣CCD模擬信號處理、視頻信號采集、圖像數(shù)據(jù)緩存、ADV212初始化、固件程序和參數(shù)注入、數(shù)字圖像傳輸?shù)裙δ???紤]到衛(wèi)星平臺對系統(tǒng)穩(wěn)定性的要求,系統(tǒng)應(yīng)用FPGA和專用圖像壓縮集成芯片ADV212的高速、實時圖像壓縮方案,將壓縮后數(shù)據(jù)流送給圖像采集卡,由上位機(jī)對圖像壓縮性能進(jìn)行分析。該方法實時性強,硬件接口電路設(shè)計簡單[8-10],其系統(tǒng)組成框圖如圖1所示。
2 FPGA嵌入式處理器設(shè)計
Microblaze是Xilinx公司推出的32 bit軟處理器核,支持CoreConnect總線的標(biāo)準(zhǔn)外設(shè)集合,具有兼容性和重復(fù)利用性。Microblaze在VirtexⅡPro FPGA中的工作頻率可達(dá)到200 MHz,處理速度超過166 MIPS,是用途廣泛的CPU軟核。作為完整的CPU軟核,Microblaze允許用戶根據(jù)需要進(jìn)行配置。了解Microblaze結(jié)構(gòu)不但有助于用戶了解配置,還可以輔助分析Microblaze應(yīng)用軟件的效率。
FPGA片外晶振為50 MHz,Microblaze軟核主頻為100 MHz,使用片外低復(fù)位,支持硬件調(diào)試方式,并使用16 KB片內(nèi)BlockRAM作為CPU核的數(shù)據(jù)和指令暫存,同時還包括看門狗和定時器等基本外設(shè)。添加完硬件后,系統(tǒng)自動生成每個硬件模塊的地址范圍,如圖2所示。
dlmb_cntlr和ilmb_cntlr作為CPU核的數(shù)據(jù)和指令暫存,分配16 KB空間。Opb_central_dma_0作為讀取ADV212壓縮數(shù)據(jù)流的DMA控制器,Generic_External_Memory_1和Generic_External_Memory作為訪問SDRAM控制器的尋址空間。由于SDRAM控制器的SYS_ADDR共25 bit地址,所以這里分配32 MB尋址空間。其他還包括定時器、WDT、調(diào)試空間等。
3 壓縮處理器設(shè)計