專利名稱:一種符合ccsds標(biāo)準(zhǔn)的圖像無損壓縮處理系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種圖像無損壓縮處理系統(tǒng)及方法,特別是涉及一種適用于空間應(yīng)用 的符合CCSDS標(biāo)準(zhǔn)的圖像無損壓縮處理系統(tǒng)及方法。
背景技術(shù):
近年來,隨著我國航天技術(shù)的迅猛發(fā)展,星上傳感和探測設(shè)備無論在數(shù)量還是精 度上都比以前大大增加,形成了海量數(shù)據(jù),從而對星上數(shù)據(jù)存儲和下行傳輸造成了一定的 困難。由于航天器通信帶寬有限,不可能無限制的增大存儲設(shè)備的容量,于是在軌圖像壓縮 就成為星上數(shù)據(jù)處理的一個必備環(huán)節(jié),而開發(fā)高性能星載圖像壓縮系統(tǒng)也成為當(dāng)務(wù)之急。
如何能在具有嚴(yán)格功耗、重量、體積的要求下,最優(yōu)的實現(xiàn)高速圖像無損壓縮系 統(tǒng),取決于設(shè)計的方案。以通用微處理器或者DSP為核心的嵌入式系統(tǒng),雖然能夠相對較為 方便的完成壓縮算法,但存在一個嚴(yán)重的缺陷 一 需要較高的時鐘頻率(超過200MHz),才能 滿足實時性要求,這將引發(fā)一系列電磁兼容問題,帶來設(shè)計上的諸多不便。
發(fā)明內(nèi)容
本發(fā)明的目的在于,為了克服上述現(xiàn)有技術(shù)的不足,從而提供了一種符合CCSDS 標(biāo)準(zhǔn)的圖像無損壓縮處理系統(tǒng)及方法。本發(fā)明的圖像無損壓縮處理系統(tǒng)及方法,對CCSDS 建議的無損數(shù)據(jù)壓縮標(biāo)準(zhǔn)進行了兩個方面的改進(1)采用了基于JPEG-LS的預(yù)處理模塊, 有效提高了壓縮比;(2)最優(yōu)編碼選項的選取無須遍歷計算所有編碼選項,本發(fā)明的編碼
模塊僅利用預(yù)處理器輸出(預(yù)測殘差)的和t《直接得到最優(yōu)編碼選項,大大提高了硬件
,=0
的處理速度(頻率為100MHz時的數(shù)據(jù)處理速度為25Mpixels/s),可以滿足低功耗和實時性 要求。 為實現(xiàn)上述目的,本發(fā)明提供的的圖像無損壓縮處理系統(tǒng)包括基于JPEG-LS預(yù) 測方式的預(yù)處理模塊,RICE熵編碼模塊和碼字拼接模塊。 本發(fā)明采用基于CCSDS121.0-B-1推薦的圖像壓縮算法,并根據(jù)空間應(yīng)用的特點 改進了編碼選項選擇算法,輸入的圖像數(shù)據(jù)經(jīng)控制模塊按16個采樣點分組;分組后的數(shù)據(jù) 進入預(yù)處理模塊進行去相關(guān)處理得到一組相互獨立的數(shù)據(jù),再經(jīng)RICE編碼模塊和碼流拼 接模塊得到壓縮碼流。 所述預(yù)處理模塊通過數(shù)據(jù)線每次接收一個n位的圖像數(shù)據(jù)Dataln,信號NewBlock 表示是否為一個新數(shù)據(jù)塊Block的開始,若NewBlock信號置位則開始對該數(shù)據(jù)塊Block的 圖像數(shù)據(jù)進行預(yù)處理,即去相關(guān)處理,并將預(yù)處理結(jié)果Data0ut通過數(shù)據(jù)線送入RICE熵編 碼模塊。 所述RICE熵編碼模塊對預(yù)處理結(jié)果DataOut進行累加得到和S咖,然后對和Sum 查表,得到編碼選項K,最后根據(jù)編碼選項K對預(yù)處理結(jié)果DataOut進行編碼,產(chǎn)生不定碼 長Len的碼字Word,并將碼字Word和碼長Len送入碼字拼接模塊,當(dāng)前塊編碼結(jié)束后,置位
4EndBlock信號; 所述編碼選項K的選擇公式為
J/2+J (2k+1) < F0《J/2+J (2k+2) 其中,J為編碼塊的長度;尸。+1/;^>,為預(yù)處理結(jié)果DataOut的和Sum ;
當(dāng)F。 > J/2[(n-k)2k+1+l-2k]成立時,不進行編碼。 所述碼字拼接模塊接收碼字Word和碼長Len,拼接碼流按8位或16位定長碼字 Byte輸出。 其中,所述預(yù)處理模塊包括預(yù)測器和映射器。 所述預(yù)測器將輸入為n比特的圖像數(shù)據(jù),與對應(yīng)像素的預(yù)測值DataPre相減,得到 n+1比特的數(shù)據(jù)DataM即。 所述映射器對數(shù)據(jù)DataM即做映射變換,產(chǎn)生預(yù)處理結(jié)果Data0ut,該預(yù)處理結(jié)果 DataOut為近似幾何分布的預(yù)測殘差序列。 其中,所述RICE熵編碼模塊包括累加器、選擇器和編碼器。 所述累加器對預(yù)處理結(jié)果DataOut進行累加得到和Sum,并將和Sum送入選擇器。
所述選擇器對和Sum進行查表操作,得到最優(yōu)編碼選項K。 所述編碼器根據(jù)最優(yōu)編碼選項K對于預(yù)處理結(jié)果DataOut進行編碼,輸出碼字 Word和碼長Len,當(dāng)本數(shù)據(jù)塊Block編碼結(jié)束后置位EndBlock。 通常最優(yōu)編碼選項的選取是通過遍歷所有編碼選項來完成的,這種串行的選擇算 法會大大降低硬件系統(tǒng)的性能,成為整個壓縮系統(tǒng)的瓶頸。本發(fā)明則僅僅利用預(yù)處理模塊
輸出(預(yù)測殘差)Si的和^《,直接得到最優(yōu)編碼選項。對于最優(yōu)編碼選項的選取,僅僅
通過累加、移位和比較等易于硬件實現(xiàn)的操作就可以完成。 本發(fā)明提供的一種符合CCSDS標(biāo)準(zhǔn)的圖像無損壓縮處理方法,包括以下步驟
(1)預(yù)處理模塊通過數(shù)據(jù)線每次接收一個n位的圖像數(shù)據(jù)Dataln,若NewBlock信 號置位則開始對該數(shù)據(jù)塊的圖像數(shù)據(jù)進行預(yù)處理,即去相關(guān)處理,并將預(yù)處理結(jié)果DataOut 通過數(shù)據(jù)線送入RICE熵編碼模塊;所述信號NewBlock表示是否為一個新數(shù)據(jù)塊的開始。
(2) RICE熵編碼模塊對預(yù)處理結(jié)果DataOut進行累加得到和Sum,然后對和Sum查 表,得到編碼選項K,最后根據(jù)編碼選項K對預(yù)處理結(jié)果DataOut進行編碼,產(chǎn)生不定碼長 Len的碼字Word,并將碼字Word和碼長Len送入碼字拼接模塊,當(dāng)前塊編碼結(jié)束后,置位 EndBlock信號; 所述編碼選項K的選擇公式為
J/2+J (2k+1) < F0《J/2+J (2k+2) 其中,J為編碼塊的長度;F。=f《+ J,'2^為預(yù)處理結(jié)果DataOut的和Sum ;
當(dāng)F。 > J/2 [ (n-k) 2k+1+l_2k]成立時,不進行編碼; (3)碼字拼接模塊接收碼字Word和碼長Len,拼接碼流按定長碼字Byte輸出。
其中,所述預(yù)處理模塊采用基于CCSDS121. 0-B-1推薦的圖像壓縮算法,并根據(jù)空 間應(yīng)用的特點改進了編碼選項選擇算法,輸入的圖像數(shù)據(jù)Dataln經(jīng)控制模塊按16個采樣
5點分組;分組后的數(shù)據(jù)進入預(yù)處理器進行去相關(guān)處理得到一組相互獨立的數(shù)據(jù),再經(jīng)RICE 編碼模塊和碼流拼接模塊得到壓縮碼流。 其中,所述步驟(1)進一步包括預(yù)處理模塊中的預(yù)測器將輸入為n比特的圖像數(shù) 據(jù)與該圖像數(shù)據(jù)對應(yīng)像素的預(yù)測值DataPre相減,得到n+l比特的數(shù)據(jù)DataM即,然后將該 數(shù)據(jù)DataMap送到預(yù)處理模塊中的映射器;所述映射器對數(shù)據(jù)DataMap做映射變換,產(chǎn)生預(yù) 處理結(jié)果Data0ut的步驟;所述預(yù)處理結(jié)果DataOut為近似幾何分布的預(yù)測殘差序列。
本發(fā)明的優(yōu)點在于 1、本發(fā)明的圖像無損壓縮處理系統(tǒng)及方法的無損壓縮編碼效率高(利用CCSDS提 供的實驗圖像進行測試,無損壓縮比平均為2. 0)。 2、本發(fā)明的圖像無損壓縮處理系統(tǒng)及方法的核心設(shè)計是針對分組后原始數(shù)據(jù)進 行運算,采用解碼的重同步機制可以防止空間數(shù)據(jù)傳輸中的誤碼擴散,功耗低(《lwatt/ Msamples/sec)。 3、本發(fā)明的圖像無損壓縮處理系統(tǒng)及方法采用改進的編碼選項計算方法的編碼 模塊大大提高了硬件的處理速度(頻率為100MHz時的數(shù)據(jù)處理速度為25Mpixels/s),能滿 足星載圖像無損壓縮的要求。 4、本發(fā)明的圖像無損壓縮處理系統(tǒng)及方法支持基于幀(Frame)的輸入圖像格式 和基于條帶(Strip)的輸入圖像格式,適合于近地觀測和深層空間探測任務(wù)。
圖1是現(xiàn)有技術(shù)的無損壓縮算法的框圖; 圖2是本發(fā)明圖像無損壓縮處理系統(tǒng)的頂層設(shè)計電路框圖;
圖3是本發(fā)明圖像無損壓縮處理系統(tǒng)中預(yù)處理模塊的電路框圖;
圖4是本發(fā)明圖像無損壓縮處理系統(tǒng)中預(yù)測器的電路框圖; 圖5是本發(fā)明圖像無損壓縮處理系統(tǒng)及方法中為說明預(yù)測方法的像素位置示意 圖; 圖6是本發(fā)明圖像無損壓縮處理系統(tǒng)中RICE熵編碼模塊的電路框圖。
具體實施例方式
CCSDS在1997年公布了適用于空間科學(xué)數(shù)據(jù)的無損壓縮標(biāo)準(zhǔn)(CCSDS121. 0_B_1), 建議采用RICE算法,如圖l所示。本發(fā)明對該算法進行了改進并對改進后算法進行了高速 硬件實現(xiàn)。 本發(fā)明提供的圖像無損壓縮處理系統(tǒng)包括基于JPEG-LS預(yù)測方式的預(yù)處理模塊 和自適應(yīng)熵編碼模塊。預(yù)處理模塊包含預(yù)測器和映射器,預(yù)測器去除了數(shù)據(jù)的相關(guān)性,然后 映射它們?yōu)槔陟鼐幋a的特征值,對這些特征值進行自適應(yīng)熵編碼可以得到很好的壓縮效 果。熵編碼模塊是一系列變長編碼器的集合,選定一種最高壓縮比的編碼器與標(biāo)識符一起 傳輸。由于每塊(J個前處理樣本)均可選擇編碼模式(基本序列編碼、分裂樣本編碼、低 熵值編碼和無壓縮編碼四種模式),所以RICE算法能適應(yīng)信源統(tǒng)計特性的變化。
本發(fā)明對CCSDS建議的無損數(shù)據(jù)壓縮標(biāo)準(zhǔn)進行了兩個方面的改進(1)采用了基 于JPEG-LS的預(yù)處理模塊,有效提高了壓縮比;(2)最優(yōu)編碼選項的選取無須遍歷計算所有編碼選項,本發(fā)明的編碼模塊僅利用預(yù)處理器輸出(預(yù)測殘差)的和^《直接得到最優(yōu)編
/=0
碼選項,大大提高了硬件的處理速度(頻率為100MHz時的數(shù)據(jù)處理速度為25Mpixels/s)。
圖像無損壓縮處理系統(tǒng)總體架構(gòu) 本發(fā)明的無損壓縮處理系統(tǒng)采用的算法基于CCSDS 121. 0_B_1數(shù)據(jù)壓縮算法,壓 縮處理系統(tǒng)的頂層結(jié)構(gòu),如圖2所示。主要包括預(yù)處理模塊PrePrcessor和熵編碼模塊 Encoder 。預(yù)處理模塊通過數(shù)據(jù)線Dataln每次接收一個n位的圖像數(shù)據(jù),信號NewBlock表 示是否為一個新Block的開始,若此信號置位則開始對這個Block的圖像數(shù)據(jù)進行預(yù)處理; 預(yù)處理的結(jié)果通過數(shù)據(jù)線DataOut送入RICE熵編碼器產(chǎn)生不定碼長Len的碼字Word,當(dāng)前 Block編碼結(jié)束后,置位EndBlock信號;碼字拼接模塊ByteBuilder接收碼字Word和碼長 Len,拼接碼流按定長碼字Byte輸出。
預(yù)處理模塊 預(yù)處理模塊硬件結(jié)構(gòu)設(shè)計,如圖3所示,主要包括預(yù)測器Predictor (如圖4)和映
射器M即per。本發(fā)明采用JPEG-LS預(yù)測器,在像素位置如圖5所示的情況下,JPEG-LS預(yù)測
器如下
x0
min:
max1
, x3)如果;\:2 = max(x!, x2, x3) 、,-x3) 如果12 = min(XpX2,X3) (1) 其他 其中,S。為x。的預(yù)測值。 其中,輸入圖像數(shù)據(jù)Dataln為n比特,與對應(yīng)像素的預(yù)測值DataPre相減,得到 n+l比特的數(shù)據(jù)DataM即。映射器Ma卯er對DataM即做映射變換,產(chǎn)生輸出數(shù)據(jù)Data0ut。 預(yù)測結(jié)果;。由多路選擇器進行選擇,待選值分別為min(Xl,x3) ,max(Xl,x3)和Xl-X2+x3 ;再通 過映射可以得到近似幾何分布的預(yù)測殘差序列。
熵編碼模塊 RICE熵編碼模塊結(jié)構(gòu),如圖6所示。其中,累加器Accumulator對預(yù)處理器 Preprocessor的輸出Data0ut進行累力口,將禾口 Sum送入選擇器Selector,在Selector中 進行一個簡單的查表操作,得到最優(yōu)編碼選項K ;編碼器Encoder根據(jù)最優(yōu)編碼選項K對 Data0ut進行編碼,輸出碼字Word和碼長Len,當(dāng)本數(shù)據(jù)塊編碼結(jié)束后置位EndBlock。
通常最優(yōu)編碼選項的選取是通過遍歷所有編碼選項來完成的,這種串行的選擇算 法會大大降低硬件系統(tǒng)的性能,成為整個壓縮系統(tǒng)的瓶頸。本發(fā)明則僅僅利用預(yù)處理器輸
出(預(yù)測殘差)S i的和^A ,直接得到最優(yōu)編碼選項。最優(yōu)編碼選項k的選擇公式為 J/2+J (2k+1) < F?!禞/2+J (2k+2) (2) 其中,J為編碼塊的長度,F(xiàn)。 =土《^,當(dāng) F0 > J/2[(n-k)2k+1+l_2k] (3) 成立時,不進行編碼。由式(2)、 (3)可以看出,對于最優(yōu)編碼選項的選取,僅僅通 過累加、移位和比較等易于硬件實現(xiàn)的操作就可以完成。
權(quán)利要求
一種符合CCSDS標(biāo)準(zhǔn)的圖像無損壓縮處理系統(tǒng),其特征在于,所述系統(tǒng)包括基于JPEG-LS預(yù)測方式的預(yù)處理模塊,RICE熵編碼模塊和碼字拼接模塊;所述預(yù)處理模塊通過數(shù)據(jù)線每次接收一個n位的圖像數(shù)據(jù)DataIn,若NewBlock信號置位則開始對該數(shù)據(jù)塊的圖像數(shù)據(jù)進行預(yù)處理,即去相關(guān)處理,并將預(yù)處理結(jié)果DataOut通過數(shù)據(jù)線送入RICE熵編碼模塊;所述信號NewBlock表示是否為一個新數(shù)據(jù)塊的開始;所述RICE熵編碼模塊對預(yù)處理結(jié)果DataOut進行累加得到和Sum,然后對和Sum查表,得到編碼選項K,最后根據(jù)編碼選項K對預(yù)處理結(jié)果DataOut進行編碼,產(chǎn)生不定碼長Len的碼字Word,并將碼字Word和碼長Len送入碼字拼接模塊,當(dāng)前塊編碼結(jié)束后,置位EndBlock信號;所述編碼選項K的選擇公式為J/2+J(2k+1)<F0≤J/2+J(2k+2)其中,J為編碼塊的長度;為預(yù)處理結(jié)果DataOut的和Sum;當(dāng)F0>J/2[(n-k)2k+1+1-2k]成立時,不進行編碼;所述碼字拼接模塊接收碼字Word和碼長Len,拼接碼流按定長碼字Byte輸出。F2008102267204C0000011.tif,F2008102267204C0000012.tif
2. 根據(jù)權(quán)利要求1所述的圖像無損壓縮處理系統(tǒng),其特征在于,所述預(yù)處理模塊采用 基于CCSDS121. O-B-l推薦的圖像壓縮算法;輸入的圖像數(shù)據(jù)Dataln經(jīng)控制模塊按16個采 樣點分組,分組后的數(shù)據(jù)進入預(yù)處理模塊進行去相關(guān)處理得到一組相互獨立的數(shù)據(jù),再經(jīng) RICE編碼模塊和碼流拼接模塊得到壓縮碼流。
3. 根據(jù)權(quán)利要求1或2所述的圖像無損壓縮處理系統(tǒng),其特征在于,所述預(yù)處理模塊包 括預(yù)測器和映射器;所述預(yù)測器將輸入為n比特的圖像數(shù)據(jù)與該圖像數(shù)據(jù)對應(yīng)像素的預(yù)測值DataPre相 減,得到n+1比特的數(shù)據(jù)DataM即,然后將該數(shù)據(jù)DataM即送到映射器;所述映射器對數(shù)據(jù)DataM即做映射變換,產(chǎn)生預(yù)處理結(jié)果DataOut ;所述預(yù)處理結(jié)果 DataOut為近似幾何分布的預(yù)測殘差序列。
4. 根據(jù)權(quán)利要求1或2所述的圖像無損壓縮處理系統(tǒng),其特征在于,所述RICE熵編碼 模塊包括累加器、選擇器和編碼器;所述累加器對預(yù)處理結(jié)果DataOut進行累加得到和Sum,并將和Sum送入選擇器; 所述選擇器對和Sum進行查表操作,得到編碼選項K ;所述編碼器根據(jù)編碼選項K對于預(yù)處理結(jié)果DataOut進行編碼,輸出碼字Word和碼長 Len,當(dāng)本數(shù)據(jù)塊Block編碼結(jié)束后置位EndBlock。
5. —種符合CCSDS標(biāo)準(zhǔn)的圖像無損壓縮處理方法,所述方法包括以下步驟(1) 預(yù)處理模塊通過數(shù)據(jù)線每次接收一個n位的圖像數(shù)據(jù)Dataln,若NewBlock信號置 位則開始對該數(shù)據(jù)塊的圖像數(shù)據(jù)進行預(yù)處理,即去相關(guān)處理,并將預(yù)處理結(jié)果DataOut通 過數(shù)據(jù)線送入RICE熵編碼模塊;所述信號NewBlock表示是否為一個新數(shù)據(jù)塊的開始;(2) RICE熵編碼模塊對預(yù)處理結(jié)果DataOut進行累加得到和S咖,然后對和Sum查 表,得到編碼選項K,最后根據(jù)編碼選項K對預(yù)處理結(jié)果DataOut進行編碼,產(chǎn)生不定碼長 Len的碼字Word,并將碼字Word和碼長Len送入碼字拼接模塊,當(dāng)前塊編碼結(jié)束后,置位 EndBlock信號;所述編碼選項K的選擇公式為 J/2+J(2k+1) <F0《J/2+J(2k+2)其中,J為編碼塊的長度;F。 =^>,. ^A為預(yù)處理結(jié)果Data0ut的和Sum ; 當(dāng)F。 > J/2[(n-k)2k+1+l-2k]成立時,不進行編碼;(3)碼字拼接模塊接收碼字Word和碼長Len,拼接碼流按定長碼字Byte輸出。
6. 根據(jù)權(quán)利要求5所述的圖像無損壓縮處理方法,其特征在于,所述預(yù)處理模塊采用 基于CCSDS121. 0-B-1推薦的圖像壓縮算法;輸入的圖像數(shù)據(jù)Dataln經(jīng)控制模塊按16個 采樣點分組,分組后的數(shù)據(jù)進入預(yù)處理器進行去相關(guān)處理得到一組相互獨立的數(shù)據(jù),再經(jīng) RICE編碼模塊和碼流拼接模塊得到壓縮碼流。
7. 根據(jù)權(quán)利要求5或6所述的圖像無損壓縮處理方法,其特征在于,所述步驟(1)進一 步包括預(yù)處理模塊中的預(yù)測器將輸入為n比特的圖像數(shù)據(jù)與該圖像數(shù)據(jù)對應(yīng)像素的預(yù)測 值DataPre相減,得到n+1比特的數(shù)據(jù)DataMap,然后將該數(shù)據(jù)DataMap送到預(yù)處理模塊中 的映射器;所述映射器對數(shù)據(jù)DataMap做映射變換,產(chǎn)生預(yù)處理結(jié)果Data0ut的步驟;所述 預(yù)處理結(jié)果DataOut為近似幾何分布的預(yù)測殘差序列。
全文摘要
本發(fā)明涉及一種符合CCSDS標(biāo)準(zhǔn)的圖像無損壓縮處理系統(tǒng)及方法。該處理系統(tǒng)包括控制模塊、JPEG-LS預(yù)處理模塊、RICE編碼模塊和碼流拼接模塊。所述系統(tǒng)及方法的處理過程是輸入的圖像數(shù)據(jù)經(jīng)控制模塊按16個采樣點分組;分組后的數(shù)據(jù)進入預(yù)處理模塊進行去相關(guān)處理,得到一組相互獨立的數(shù)據(jù),再經(jīng)RICE編碼模塊和碼流拼接模塊得到壓縮碼流。本發(fā)明無損壓縮處理系統(tǒng)及方法的無損壓縮編碼效率高,且由于處理系統(tǒng)的核心設(shè)計是針對分組后原始數(shù)據(jù)進行運算,采用解碼的重同步機制可以防止空間數(shù)據(jù)傳輸中的誤碼擴散,功耗低;另外,改進的編碼選項計算方法大大提高了硬件的處理速度,能滿足星載圖像無損壓縮的要求。
文檔編號H04N7/26GK101742299SQ200810226720
公開日2010年6月16日 申請日期2008年11月21日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者王懷超, 陳曉敏, 陳裕華, 顧曉東 申請人:中國科學(xué)院空間科學(xué)與應(yīng)用研究中心