徐 冰(北京空間科技信息研究所)
國外星上數據壓縮算法發展研究
徐 冰(北京空間科技信息研究所)
星上數據壓縮技術是與對地觀測衛星相伴產生的。近年來,隨著新型遙感技術的快速發展,以及用戶對遙感圖像質量需求的日益提高,對地觀測衛星所獲取的圖像分辨率也在不斷提高。在這樣的發展情況下,海量的高分辨率對地觀測衛星圖像數據對數傳系統形成了巨大的壓力,也直接影響了衛星對地觀測的時效性。為解決這個問題,國外的對地觀測衛星(特別是高分辨率對地觀測衛星)普遍采用了星上數據壓縮技術,在滿足成像質量的前提下,進行可控的數據壓縮處理,以滿足衛星數據傳輸和星上存儲的要求。
從原理上說,無論是星上數據壓縮,還是日常電子設備中的數據壓縮,其目的都是以盡可能有效的方式將原有信息轉換成另一種表現形式,使得數據源的每個信號用盡可能少的數據來表示,并在解碼時盡可能近乎無誤地恢復出原來的輸入信號。從信息論的角度看,數據壓縮的本質可以看作是去除數據中冗余信息的過程。根據統計,數據冗余信息包括空間冗余、時間冗余、信息熵冗余、結構冗余、知識冗余和視覺冗余等。
數據壓縮算法大體上可分為兩類:無損壓縮和有損壓縮。星上數據壓縮算法也遵循這種分類方法。
無損壓縮采用了不丟失信息的壓縮算法,主要基于信息熵原理進行編碼,能夠精確地獲得壓縮前的圖像數據。目前常用的無損壓縮算法包括霍夫曼編碼、游程編碼、二進制信源編碼、算術編碼和無損預測編碼等。無損壓縮可從壓縮數據準確無誤地恢復原始圖像,但壓縮比不高。
有損壓縮所得到的數據與原數據并不完全相同,存在一定的差值,但具有較高的壓縮比。在很多情況下,損失一部分特定的圖像信息,并不會對圖像的判讀造成重要影響,用有限的損失獲得壓縮性能方面較大的提升,常常是一種有效的數據壓縮應用方法。從信息論的角度看,有損壓縮不僅去掉了數據中的冗余信息,同時也刪除了其中的不相干信息,因此有損壓縮不能精確地恢復原始圖像數據,而只能對圖像數據進行近似重構,前提是這種重構所帶來的誤差并不影響人對原始數據所表達的信息的理解。有損壓縮算法主要包括有損預測編碼、變換編碼和矢量量化編碼等。
星上數據壓縮系統的關鍵在于核心壓縮算法的選取。目前,國外已發射的對地觀測衛星系統主要采用的壓縮算法包括差分脈沖調制編碼(DPCM)壓縮算法、賴斯(RICE)算法、離散余弦變換(DCT)壓縮算法以及離散小波變換(DWT)壓縮算法等。
DPCM算法
DPCM壓縮算法屬于有損壓縮的預測編碼法,其基本思想是用已經傳送的前一個抽樣值來預測當前抽樣值,對其真值與預測值的差值進行編碼。誤差主要包括預測誤差、量化誤差和系統誤差。與其他熵壓縮算法相比,DPCM算法失真小,易于硬件實現,但壓縮效率相對較低,對信道噪聲很敏感,易產生誤差擴散。
20世紀80年代中期,法國開發了固定碼長的一維DPCM壓縮算法,并成功應用到斯波特-1~4衛星上,壓縮比為1.33∶1。其基本原理是每3個像素中,第1個像素完整傳送(8bit),而后2個像素采用前后2個完整傳送的像素平均值進行預測,之后對這2個像素的真值與預測值的差值進行非均一量化,采用5bit進行編碼。
后來,伊士曼柯達(Eastman Kodak)公司基于DPCM壓縮算法開發了可變碼長的自適應差分脈沖調制編碼(ADPCM)壓縮算法,壓縮比有所提高,該壓縮算法采用帶寬壓縮(BWC)特定用途集成電路(ASIC),即BWCP進行實現。BWCP具有2種工作模式,一種是固定碼長輸出,另一種是可變碼長輸出。美國于1999年發射的第一代商業遙感衛星伊科諾斯-2采用了ADPCM壓縮算法,壓縮比為4.25∶1。此后美國發射的快鳥-2和世界觀測-1衛星也都采用了ADPCM壓縮算法。
RICE算法

伊科諾斯-2衛星

國外典型對地觀測衛星的星上數據壓縮算法
RICE算法是一種無損壓縮算法,屬于預測編碼法,由美國航空航天局(NASA)的羅伯特·賴斯(Robert Rice)博士于20世紀90年代初最先提出。1997年CCSDS正式公布了衛星數據無損壓縮建議標準,基于RICE基本算法提出了CCSDS-LDC無損壓縮算法,該算法在編碼方案中增加了2個低熵編碼選項。
RICE壓縮編碼由預處理器和自適應熵編碼器兩部分組成。其基本思想是輸入的數據流先處理成數據塊,再由預處理器根據數據特性對數據塊進行預處理,然后使用自適應熵編碼器進行壓縮編碼,最終選擇最短長度的編碼數據作為輸出。RICE壓縮算法的主要特點是可動態地根據數據特性實時調整編碼方式,具有較高的編碼效率,且硬件實現復雜度也較低。
國外有很多衛星任務都使用了CCSDS-LDC無損壓縮算法。例如,美國于2000年發射的“多光譜熱成像衛星”(MTI)和地球觀測-1衛星都采用了CCSDS-LDC算法進行無損數據壓縮,采用ASIC集成電路進行實現,“多光譜熱成像衛星”的壓縮比為2.5∶1。
DCT算法
DCT壓縮算法屬于變換編碼方法,其基本思想是對圖像進行DCT可逆變換,將原圖像從空間域映射到變換域,對變換域中得到的變換系數進行量化和編碼。因DCT變換后,大部分的圖像能量都集中于少數低頻變換系數上,因此對低頻和高頻變換系數分別量化,可達到數據壓縮的目的。
基于DCT的壓縮理論,國外已經提出了多種壓縮算法。其中,JPEG國際圖像壓縮標準就是以DCT理論為核心的壓縮算法。目前,JPEG和其他基于DCT的壓縮算法已經應用于許多空間任務中,特別是對地觀測任務。
蘇聯1988年發射的福布斯-1(Fobos-1)探測器最早使用了固定碼長的DCT壓縮算法,實現了壓縮比為4、8和12的離線軟件壓縮,但受當時處理技術的限制,壓縮一幅208×144的圖像約需1h。2002年,法國發射了斯波特-5衛星,采用了可變碼長的DCT壓縮算法,全色壓縮比為2.8∶1,多光譜壓縮比為2.28∶1。

斯波特-5衛星及其數據壓縮裝置(右)

斯波特-5星上圖像壓縮框圖
斯波特-5衛星的數據壓縮裝置將來自有效載荷的7種數據流分成3個通道進行壓縮,每個通道最后都輸出45.5Mbit/s的比特流,然后再進行格式化、編碼和加密,最后存儲在固態存儲器中。
此外,2008年發射的“泰國地球觀測系統”衛星也采用了DCT壓縮算法,壓縮比為2.8∶1或3.7∶1。印度發射的制圖衛星-1和2都采用了基本的JPEG壓縮算法,壓縮比達到3.2∶1。德國2008年發射的“快眼”衛星星座也采用JPEG壓縮算法進行實時壓縮,無損壓縮比為2∶1,有損壓縮比為10∶1。日本2006年發射的“先進陸地觀測衛星”(ALOS),星上全色立體測繪遙感相機獲取的數據采用JPEG有損壓縮算法,壓縮比為4∶1或8∶1;先進可見光和近紅外輻射計-2獲取的數據采用近無損DPCM算法,壓縮比為1.33∶1。
法國經研究發現,DCT壓縮算法在壓縮比大于3時,圖像數據恢復后將會出現“塊贗像”,主要是去相關器在高壓縮比下帶來的缺陷。因此,DCT算法只適用于壓縮比低于3的情況,也就是說為了不出現“塊贗像”,8bit量化的圖像數據,壓縮后每像元必須大于3bit。
DWT算法
DWT壓縮算法是法國針對DCT壓縮方法存在的問題,而開發出的一種新型變換編碼方法。與DCT變換編碼方法相比,DWT具有良好的時頻特性和多分辨率特性,同時獲得圖像整體的低頻和高頻分量,能量分布更集中,而且還包括重要的圖像邊緣信息,在高壓縮比的情況下可以獲得更好的重建圖像質量。

昴宿星-HR衛星及其數據壓縮裝置(右)
基于DWT的壓縮理論,國外已經提出了多種壓縮算法。其中,JPEG2000國際圖像壓縮標準就是以DWT理論為核心的壓縮算法。與基于DCT理論的JPEG標準相比,JPEG2000不僅可獲得更高的壓縮比,而且還提供了感興趣區域(ROI)壓縮新特性,使得我們可以根據圖像各部分的重要性來對圖像各部分進行不同壓縮比的壓縮。
法國于2011年發射的昴宿星-HR衛星就使用了DWT壓縮算法,采用ASIC實現小波圖像壓縮模塊(WICOM),模塊中包括去相關DWT模塊、位平面編碼器和存儲器。昴宿星-HR衛星的全色圖像以2.5bit/像素進行壓縮,壓縮比為4.8∶1,多光譜圖像以2.8bit/像素進行壓縮,壓縮比約為4.3∶1,速率最高達25兆像素/s。該小波圖像壓縮模塊利用小波圖像壓縮算法實現了接近于JPEG2000標準的壓縮性能,而在硬件實現上,又不會像JPEG2000標準復雜度過高。另外,該小波圖像壓縮模塊采用抗輻射加固設計。
盡管DWT壓縮算法比DCT壓縮算法可以獲得更高的壓縮比,但是當壓縮比過高時,DWT壓縮算法也會出現“塊贗像”,主要是由于低復雜度區域高值量化產生的模糊效應,限制了DWT算法的壓縮性能。
法國國家空間研究中心(CNES)作為JPEG2000標準委員會的成員,針對將JPEG2000壓縮標準應用于星上壓縮,從2000年開始開展了一系列JPEG2000抗輻射硬件研究工作,經研究發現,該算法利用現有硬件技術實現過于復雜,主要是因為算術編碼器和處理最優截斷點的碼率分配程序難于實現。
目前,國外對地觀測衛星主要采用DPCM、RICE、DCT和DWT壓縮算法進行星上數據壓縮。從算法本質來說,DPCM和RICE屬于預測編碼,DCT和DWT屬于變換編碼;從計算復雜度來說,DPCM和RICE原理簡單,易于硬件實現,DCT和DWT變換計算復雜度較高,硬件實現困難;從壓縮比角度來說,DPCM和RICE壓縮比較低,而DCT和DWT壓縮比較高。而對于DCT和DWT兩種變換壓縮算法來說,DCT算法復雜度較低,但壓縮比也較低,而DWT算法復雜度較高,但壓縮比較高,但二者有共同缺點,在達到較高壓縮比時,圖像恢復后均會出現“塊贗像”,導致圖像質量嚴重下降。
在星上數據壓縮算法選取方面,應綜合考慮多項因素,包括算法復雜度、硬件實現困難度、壓縮比要求、衛星數據傳輸和存儲能力等。例如,美國從“伊科諾斯”衛星到“世界觀測”衛星,都采用原理簡單、易于硬件實現的ADPCM壓縮算法,一部分原因是其星上數據存儲和數據下傳能力較強,因此放寬了對星上壓縮算法的要求。“世界觀測”衛星的星上存儲容量為2.2Tbit,X頻段數據傳輸速率達到800Mbit/s。
而法國作為星上數據壓縮領域的技術引領者,一直在研究和開發最新型的星上數據壓縮算法,并將其應用到實用衛星上進行驗證。法國最新發射的“昴宿星”采用DWT壓縮算法,對星上數據進行高效壓縮,降低了對星上數據存儲和數據下傳能力的要求。“昴宿星”的星上存儲容量僅為600Gbit,X頻段數據傳輸速率為465Mbit/s。區域相關系數上移,使其位于比背景區域較高的比特平面上,在編碼過程,這些上移的ROI系數將先被編碼,生成的比特流位于整個數據比特流的最前面,而比特平面較低的背景區域像素將被舍棄。在圖像恢復后,不僅保留了ROI區域信息,還保留了一部分背景區域信息,整體圖像質量較高。最大位移法適合于將云作為非ROI區域的情況,配合云判別技術實現ROI區域壓縮,可保留ROI區域的圖像信息,但不保留背景區域(云區域)的圖像信息。最大位移法是一般位移法的特例,其位移因子的選擇必須使ROI區域的最小系數大于背景區域的最大系數。
無論是一般位移法還是最大位移法,其關鍵技術都在于如何生成ROI掩模。經過小波變換后ROI信息就會分散到變換系數中去,掩模用于確定哪些變換系數與ROI信息有關應該保留,反之舍棄。
除了研究這些基本的壓縮算法外,國外還在研究選擇性壓縮方法,即ROI壓縮算法,其基本思想是首先對圖像數據進行檢測,確定感興趣區域和非感興趣區域,然后對感興趣區域進行較低壓縮比的壓縮,對非感興趣區域進行較高壓縮比的壓縮。遙感衛星獲取的數據量極大,而檢測方法過于復雜,很難準確確定ROI區域和非ROI區域。但光學圖像中的云信息可以看作是無用數據,利用云判別技術剔除云區域,剩余圖像數據將被認為是感興趣區域進行壓縮。近年來,法國國家空間研究中心一直在研究星上云判別技術,開發星上云判別硬件模塊。
JPEG2000標準中定義了兩種ROI壓縮算法,分別是一般位移法(Scaling)和最大位移法(Maxshift),這兩種方法應用領域不同,各具優缺點。一般位移法能夠適當保留背景圖像質量,適合于無法準確判別感興趣區域的情況。一般位移法的主要原理是選擇一個適當的位移因子,將ROI
目前,國外已經將星上數據壓縮作為緩解高分辨率衛星圖像數據存儲和下傳壓力的有效手段,并開發了眾多星上數據壓縮算法,這些算法各具優缺點。從發展方向來看,國外逐漸從計算復雜度低、壓縮比低的壓縮算法向計算復雜度高、壓縮比高的壓縮算法過渡。DWT壓縮算法能夠實現較高的壓縮比,但算法和硬件的復雜度較高,需要較長的運算時間。因此,隨著計算機技術和高速超大規模集成電路,特別是小波變換專用ASIC芯片技術的迅速發展,離散小波變換有望成為未來星上數據壓縮的一種熱點發展方向,但這些新型算法雖然性能先進,仍存在一系列工程化實現的問題亟待解決,比如空間環境適應性問題、計算復雜度降低和快速算法實現問題、高性能星載數據處理硬件等等。另外,選擇性星上數據壓縮以及智能化星上處理技術能夠根據不同用戶對遙感數據的不同需求在軌快速生產產品,有效提高下傳數據的利用率,因此將成為未來星上數據處理領域的另一個發展方向。