一種多光譜可見光遙感圖像壓縮系統(tǒng)設計
3.1 系統(tǒng)輸入模塊
ADV212的像素接口工作在視頻模式和原始數據模式,本系統(tǒng)采用原始數據模式。由于ADV212不能對空間相機輸出的圖像信號直接進行處理,因此需要把 圖像信號轉換為ADV212像素接口可以接收的信號輸入模式。在信號輸入之前采用視頻解碼器AD9843A把輸入的圖像信號進行處理并輸出標準的圖像信 號。此時AD9843A輸出圖像信息流、同步時鐘以及行場同步輸入到FPGA中。
3.2 系統(tǒng)控制模塊
系統(tǒng)中,FPGA主要完成整個系統(tǒng)的控制功能。輸入圖像信號經過視頻編碼器后,進入FPGA進行去噪預處理以提高編碼效率,主要是直方圖 均衡和低通濾波。對于AD9843A視頻編碼器的配置可以通過FPGA軟件模擬I2C總線來實現。同時FIGA系統(tǒng)還要向ADV212提供復位、讀寫、片 選以及時鐘等信號來控制其工作時序和工作模式,并要實現對ADV212的初始化和固件下載功能,FPGA控制系統(tǒng)時序關系圖如圖3所示。系統(tǒng)運行的所有程 序以及ADV212所需的固件都是存儲在FPGA內部的Flash中。系統(tǒng)工作后,需要把這些固件寫入ADV212相應的RAM空間中,進行一些軟件的運 行。
由于遙感圖像數據量龐大,需采用緩存技術改善系統(tǒng)的整體性能(如吞吐量、查詢響應時間等),構建大規(guī)模視頻服務系統(tǒng)時,可以減少對磁盤的訪問,提高系統(tǒng)性 能。2塊SRAM之間采用“乒乓”方式對圖像數據碼流進行存取以提高傳輸速率。這種結構是將輸入數據流通過輸入數據選擇單元等時地將數據流分配到2個數據 緩沖區(qū)。在第1個緩沖周期,將輸入的數據流緩存到數據緩沖模塊1上,在第2個緩沖周期,通過輸入數據選擇單元的切換,將輸入的數據流緩存到數據緩沖模塊 2,同時,將數據緩沖模塊1緩存的第1個周期的數據通過輸出數據選擇單元的選擇,送到運算處理單元進行處理,第3個緩沖周期,再次切換數據的輸入與輸出緩沖模塊。如此循環(huán),周而復始。當系統(tǒng)中收到傳輸指令后,FPGA再將存放在 SRAM中的待發(fā)送碼流經過FPGA讀取出來。同時FPGA還要實現壓縮系統(tǒng)與外部的接口功能,用于分發(fā)數據流,并產生所需的時序。
3.3 系統(tǒng)壓縮模塊
系統(tǒng)控制器件FPGA需對ADV212寄存器進行初始化,加載ADV212編碼模式所需的固件并設置ADV212編碼參數,ADV212 才能開始硬件編碼工作產生JPGA2000格式的壓縮碼流。ADV212包含16個直接訪問的寄存器,主機必須首先初始化這些寄存器來保證其他操作正確。 圖4是ADV212編碼流程圖。
當系統(tǒng)上電復位后由FPGA把Flash中的固件數據通過訪問間接寄存器加載到ADV212的固件RAM空間。FPGA設置ADV212編碼參數包括:壓 縮比、量化步長、小波變換級別、小波變換模式、JPEG2000漸進模式等。如果ADV212固件加載正確,嵌入式處理器會將應用程序ID寫入 SWFLAG寄存器。通過檢驗SWFLAG寄存器是否為所預知的值(編碼模式的應用程序ID為OXFF82),就可判定固件加載是否正確。ADV212寄存器初始化 后,在VALID和HOLD握手協(xié)議的配合下,通過讀信號讀CODE FIFO。VDATA總線為原始圖像數據輸入接口,HDATA總線和ADDR總線為FPGA對ADV-212的配置總線,JDATA總線為ADV212中 JDATA模式的壓縮數據輸出接口。當ADV212正常工作后產生的JPEG2000格式的壓縮碼流經HDATA總線輸出。再將壓縮碼流傳送到FPGA中 對圖像數據進行行串轉并,轉換輸出的并行數據送人SRAM中存放。
3.4 系統(tǒng)輸出模塊
ADV212編碼后產生的JPEG2000格式碼流首先被送入FPGA中進行處理,處理之后再將碼流存放在SRAM中等待系統(tǒng)發(fā)送“傳 送”指令。當系統(tǒng)發(fā)出“傳送”指令后,FPGA將存放在SRAM中的待發(fā)送壓縮碼流傳回FPGA中,在FPGA中轉換成串行碼流最后通過以太網接口器件發(fā) 送出去。
4 結束語
空間相機圖像壓縮系統(tǒng)對壓縮比、實時性及抗誤碼能力等都提出很高要求,為了滿足這些要求,采用了基于FPEG+ADV212結構的圖像壓縮系統(tǒng),該系統(tǒng)根 據空間相機圖像壓縮質量和碼率的要求,選擇從400:1到2:l可調壓縮比,經測試該系統(tǒng)工作穩(wěn)定性強,基本滿足空間相機圖像壓縮系統(tǒng)對圖像細節(jié)豐富、數 據量龐大、高壓縮比和抗誤碼率等各方面的要求。
評論