《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 多光譜可見光遙感圖像壓縮系統(tǒng)設(shè)計
多光譜可見光遙感圖像壓縮系統(tǒng)設(shè)計
范志麗,徐抒巖,胡 君
中國科學(xué)院
摘要: 為了實現(xiàn)多光譜可見光遙感圖像高質(zhì)量壓縮的要求,提出以JPEG2000壓縮標(biāo)準(zhǔn)為理論,將FPGA與專用壓縮芯片ADV212相結(jié) 合的空間遙感圖像壓縮方法。該系統(tǒng)設(shè)計采用ADV212,通過小波變換及熵編碼實現(xiàn)對大數(shù)據(jù)量的空間遙感圖像進(jìn)行高質(zhì)量實時壓縮,并且采用FPGA完成圖 像數(shù)據(jù)輸入、壓縮碼流輸出、圖像預(yù)處理以及對ADV212的工作模式進(jìn)行控制。實驗結(jié)果表明,該系統(tǒng)設(shè)計功耗低、成本低、調(diào)試簡單合理,具有較好的壓縮效 果??蓾M足多光譜可見光遙感圖像對高質(zhì)量壓縮比的要求。
Abstract:
Key words :



    近年來,隨著航天遙感技術(shù)的發(fā)展空間遙感數(shù)據(jù)量日益龐大,圖像數(shù)據(jù)量的巨大帶來傳輸?shù)钠款i。同時,空間相機圖像細(xì)節(jié)豐富,衛(wèi)星飛行高度通常幾百千米以上, 對地面覆蓋范圍廣,地面上的小目標(biāo)在衛(wèi)星成像后,通常只有幾個像素,因此研究空間相機圖像壓縮系統(tǒng)具有重要意義。由于JPEG2000標(biāo)準(zhǔn)采用了許多新的 壓縮編碼技術(shù);全幀離散小波變換、整數(shù)DWT濾波器、帶中央死區(qū)的均勻量化器實現(xiàn)嵌入式編碼等。由此得到最佳的嵌入式碼流,改進(jìn)了抗誤碼能力和部分空間隨 機存取能力,簡化了某些幾何操作,得到常靈活的碼流語法,其在遙感圖像壓縮中的應(yīng)用也受到重視,因此,本文研制了基于JPEG2000的空間相機圖像壓縮 系統(tǒng)。

1 JPEG2000圖像壓縮標(biāo)準(zhǔn)
    JPEG2000是JPEG工作組制定的靜止圖像壓縮編碼的國際標(biāo)準(zhǔn),JPEG2000采用全幀離散小波變換(DWT),DWT自身具有 多分辨率圖像表示性能,而且在大范圍內(nèi)去除圖像的相關(guān)性,將圖像能量更好集中,使壓縮效率得到提高;由于使用整數(shù)DWT濾波器,在單一碼流中可以同時實現(xiàn) 有失真和無失真壓縮;通過使用一種帶中央“死區(qū)”的均勻量化器實現(xiàn)嵌入式編碼。由此得到最佳的嵌入式碼流,改進(jìn)的抗誤碼能力,部分空間隨機存取能力,簡化 了某些幾何操作,得到了活躍的碼流語法。JPEG2000圖像壓縮標(biāo)準(zhǔn)主要特征:
    1)良好的低比特率壓縮性能 這是JPEC2000最主要的特征。之前的JPEG標(biāo)準(zhǔn),對于細(xì)節(jié)分量多的灰度圖像,當(dāng)壓縮碼率低于0.25 bpp時,視覺失真大。JFPEG2000格式的圖片壓縮比可以在JPEG的基礎(chǔ)上再提高10%~30%,而且壓縮后的圖像顯得更細(xì)膩平滑。尤其在低比特 壓縮碼率下,具有良好的性能,以適應(yīng)窄帶網(wǎng)絡(luò)、移動通信等帶寬有限的應(yīng)用需要。
    2)累進(jìn)式傳輸 現(xiàn)采用JPEG壓縮的圖像下載時是按“塊”傳輸,因此只能一行一行顯示,而采用JPEG2000格式的圖像支持累進(jìn)傳輸(Prog-ressive Transmission)。累進(jìn)式圖像傳輸允許圖像按照所需的分辨率或像素精度進(jìn)行編碼和重構(gòu)。用戶根據(jù)需要,對圖像傳輸進(jìn)行控制,在獲得所需的圖像分辨率或質(zhì)量要求后,在不必接收解碼整個圖像的壓縮碼流情況下,便可終止解碼。
    3)碼流的隨機訪問和處理 這一特征允許用戶在圖像中隨機地定義感興趣的區(qū)域,使得這一區(qū)域的圖像質(zhì)量高于其他圖像區(qū)域;碼流的隨機處理允許用戶進(jìn)行旋轉(zhuǎn)、移動、濾波和特征提取等操作。
    4)良好的抗誤碼性 在碼流中提供抗誤碼性對于通信是必要的。例如在無線傳輸?shù)日`碼很高的通信信道中傳輸圖像時,JPEG2000系統(tǒng)采取一定的編碼措施和碼流格式來減小因解碼失敗造成的圖像失真。

2 JPEG2000圖像專用壓縮芯片ADV212
    實現(xiàn)JPEG2000的方案主要有基于DSP處理器的系統(tǒng)、基于FPGA進(jìn)行的硬件實現(xiàn),以及采用專用集成電路。由于DSP處理器處理的 串行性,其很難達(dá)到實時性。而采用FPGA硬件實現(xiàn)可以加快處理速度,但JPEG2000算法會占用大量的FPGA資源,同時系統(tǒng)功耗也會增加。采用專用 集成電路實現(xiàn)則可以很好解決上述問題。JPEG2000編解碼器ADV212采用具有專利技術(shù)的空間超效率回歸濾波(SURF)技術(shù),具有低功耗和低成本 的特點。它是具有實時壓縮和解壓縮標(biāo)準(zhǔn)(SD)視屏信號和高清晰度(HDTV)視屏信號功能的編解碼器。
    圖l是ADV212功能框圖。該編解碼器主要由像素接口、小波變換引擎、熵編解碼器、嵌入式處理器、存儲器系統(tǒng)和內(nèi)部DMA引擎等組成。專利最大圖塊/圖 像高度為4 096像素;不可逆模式最大輸入速度為65 Ms/s??赡婺J阶畲筝斎胨俣葹?0 Ms/s的任何視頻格式;靈活的異步主機接口能無縫連接到大多數(shù)16/32位微控制器。視頻接口支持8、10、12位單一或多元格式,支持8、10、12 雙通道位格式的視頻和靜止圖像數(shù)據(jù),支持單通道輸入模式下YCrCb格式的數(shù)字視頻和雙通道輸入模式下Y和CrCb分離的數(shù)字視頻信號,但YCrCb數(shù)據(jù) 必須是4:2:2格式。VDATA總線可支持多種格式視頻數(shù)據(jù)的輸入輸出。

a.JPG



3 圖像壓縮系統(tǒng)設(shè)計
    系統(tǒng)硬件整體框架如圖2所示,圖像壓縮工作主要是由ADV212和’Virtex-ⅡPro系列芯片XC2VP20共同完成的。由于ADV212幾乎支持所有格式的視頻圖像信號的壓縮,且單片最高輸入數(shù)據(jù)速率為65 MHz/s,允許最大圖像的高度和寬度均為4 096像素。

b.JPG


3.1 系統(tǒng)輸入模塊
    ADV212的像素接口工作在視頻模式和原始數(shù)據(jù)模式,本系統(tǒng)采用原始數(shù)據(jù)模式。由于ADV212不能對空間相機輸出的圖像信號直接進(jìn)行處理,因此需要把 圖像信號轉(zhuǎn)換為ADV212像素接口可以接收的信號輸入模式。在信號輸入之前采用視頻解碼器AD9843A把輸入的圖像信號進(jìn)行處理并輸出標(biāo)準(zhǔn)的圖像信 號。此時AD9843A輸出圖像信息流、同步時鐘以及行場同步輸入到FPGA中。
3.2 系統(tǒng)控制模塊
    系統(tǒng)中,F(xiàn)PGA主要完成整個系統(tǒng)的控制功能。輸入圖像信號經(jīng)過視頻編碼器后,進(jìn)入FPGA進(jìn)行去噪預(yù)處理以提高編碼效率,主要是直方圖 均衡和低通濾波。對于AD9843A視頻編碼器的配置可以通過FPGA軟件模擬I2C總線來實現(xiàn)。同時FIGA系統(tǒng)還要向ADV212提供復(fù)位、讀寫、片 選以及時鐘等信號來控制其工作時序和工作模式,并要實現(xiàn)對ADV212的初始化和固件下載功能,F(xiàn)PGA控制系統(tǒng)時序關(guān)系圖如圖3所示。系統(tǒng)運行的所有程 序以及ADV212所需的固件都是存儲在FPGA內(nèi)部的Flash中。系統(tǒng)工作后,需要把這些固件寫入ADV212相應(yīng)的RAM空間中,進(jìn)行一些軟件的運 行。

c.JPG
    由于遙感圖像數(shù)據(jù)量龐大,需采用緩存技術(shù)改善系統(tǒng)的整體性能(如吞吐量、查詢響應(yīng)時間等),構(gòu)建大規(guī)模視頻服務(wù)系統(tǒng)時,可以減少對磁盤的訪問,提高系統(tǒng)性 能。2塊SRAM之間采用“乒乓”方式對圖像數(shù)據(jù)碼流進(jìn)行存取以提高傳輸速率。這種結(jié)構(gòu)是將輸入數(shù)據(jù)流通過輸入數(shù)據(jù)選擇單元等時地將數(shù)據(jù)流分配到2個數(shù)據(jù) 緩沖區(qū)。在第1個緩沖周期,將輸入的數(shù)據(jù)流緩存到數(shù)據(jù)緩沖模塊1上,在第2個緩沖周期,通過輸入數(shù)據(jù)選擇單元的切換,將輸入的數(shù)據(jù)流緩存到數(shù)據(jù)緩沖模塊 2,同時,將數(shù)據(jù)緩沖模塊1緩存的第1個周期的數(shù)據(jù)通過輸出數(shù)據(jù)選擇單元的
選擇,送到運算處理單元進(jìn)行處理,第3個緩沖周期,再次切換數(shù)據(jù)的輸入與輸出緩沖模塊。如此循環(huán),周而復(fù)始。當(dāng)系統(tǒng)中收到傳輸指令后,F(xiàn)PGA再將存放在 SRAM中的待發(fā)送碼流經(jīng)過FPGA讀取出來。同時FPGA還要實現(xiàn)壓縮系統(tǒng)與外部的接口功能,用于分發(fā)數(shù)據(jù)流,并產(chǎn)生所需的時序。
3.3 系統(tǒng)壓縮模塊
    系統(tǒng)控制器件FPGA需對ADV212寄存器進(jìn)行初始化,加載ADV212編碼模式所需的固件并設(shè)置ADV212編碼參數(shù),ADV212 才能開始硬件編碼工作產(chǎn)生JPGA2000格式的壓縮碼流。ADV212包含16個直接訪問的寄存器,主機必須首先初始化這些寄存器來保證其他操作正確。 圖4是ADV212編碼流程圖。

d.JPG
    當(dāng)系統(tǒng)上電復(fù)位后由FPGA把Flash中的固件數(shù)據(jù)通過訪問間接寄存器加載到ADV212的固件RAM空間。FPGA設(shè)置ADV212編碼參數(shù)包括:壓 縮比、量化步長、小波變換級別、小波變換模式、JPEG2000漸進(jìn)模式等。如果ADV212固件加載正確,嵌入式處理器會將應(yīng)用程序ID寫入 SWFLAG
寄存器。通過檢驗SWFLAG寄存器是否為所預(yù)知的值(編碼模式的應(yīng)用程序ID為OXFF82),就可判定固件加載是否正確。ADV212寄存器初始化 后,在VALID和HOLD握手協(xié)議的配合下,通過讀信號讀CODE FIFO。VDATA總線為原始圖像數(shù)據(jù)輸入接口,HDATA總線和ADDR總線為FPGA對ADV-212的配置總線,JDATA總線為ADV212中 JDATA模式的壓縮數(shù)據(jù)輸出接口。當(dāng)ADV212正常工作后產(chǎn)生的JPEG2000格式的壓縮碼流經(jīng)HDATA總線輸出。再將壓縮碼流傳送到FPGA中 對圖像數(shù)據(jù)進(jìn)行行串轉(zhuǎn)并,轉(zhuǎn)換輸出的并行數(shù)據(jù)送人SRAM中存放。
3.4 系統(tǒng)輸出模塊
    ADV212編碼后產(chǎn)生的JPEG2000格式碼流首先被送入FPGA中進(jìn)行處理,處理之后再將碼流存放在SRAM中等待系統(tǒng)發(fā)送“傳 送”指令。當(dāng)系統(tǒng)發(fā)出“傳送”指令后,F(xiàn)PGA將存放在SRAM中的待發(fā)送壓縮碼流傳回FPGA中,在FPGA中轉(zhuǎn)換成串行碼流最后通過以太網(wǎng)接口器件發(fā) 送出去。

4 結(jié)束語
    空間相機圖像壓縮系統(tǒng)對壓縮比、實時性及抗誤碼能力等都提出很高要求,為了滿足這些要求,采用了基于FPEG+ADV212結(jié)構(gòu)的圖像壓縮系統(tǒng),該系統(tǒng)根 據(jù)空間相機圖像壓縮質(zhì)量和碼率的要求,選擇從400:1到2:l可調(diào)壓縮比,經(jīng)測試該系統(tǒng)工作穩(wěn)定性強,基本滿足空間相機圖像壓縮系統(tǒng)對圖像細(xì)節(jié)豐富、數(shù) 據(jù)量龐大、高壓縮比和抗誤碼率等各方面的要求。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。