王 平,陳 欣,粘永健,喬 梁
(1.重慶工程學院軟件與計算機學院,重慶 400056; 2.陸軍軍醫(yī)大學生物醫(yī)學工程與影像醫(yī)學系,重慶 400038)
星載多光譜圖像龐大的數(shù)據(jù)量給存儲與傳輸帶來了巨大挑戰(zhàn),只有采用高效的數(shù)據(jù)壓縮技術對其進行壓縮,才能在現(xiàn)有帶寬條件下實現(xiàn)實時傳輸。無損壓縮的壓縮比較低,通常在2以內,難以滿足實際的壓縮需求。有損壓縮通過引入一定的信息損失來獲得較高的壓縮性能,能夠滿足多光譜圖像的數(shù)據(jù)存儲與實時傳輸需求。此外,衛(wèi)星上的計算資源和功耗都是極度受限的,這就對壓縮算法提出了較高要求,所采用的有損壓縮算法不但需要提供理想的壓縮性能,而且必須具有較低的計算復雜度。
目前,多光譜圖像的有損壓縮方法主要包括基于預測的方法和基于變換的方法。由于基于預測的方法難以精確控制壓縮碼率,CONOSCENTI提出了相應的碼率控制方案,并提出了幾種熵編碼方案用于提高算法的硬件運算效率[1],然而,基于預測的有損壓縮算法普遍存在著誤碼傳遞,性能不盡人意?;谧儞Q的方法利用一維和二維變換分別去除譜間與空間相關性,在有損壓縮中應用廣泛。典型的變換方法包括卡胡南-洛維變換(KLT)、離散余弦變換(DCT)與離散小波變換(DWT)等。TANG利用DWT去除譜間相關性,提出了適用于多光譜圖像壓縮的三維分層樹集合分裂(3D SPIHT)算法[2],但由于DWT在去除譜間相關性上性能遠不如KLT,這使得3D SPIHT算法的性能不盡人意。SHARMA比較了諸多基于三維變換的多光譜圖像壓縮算法,發(fā)現(xiàn)譜間一維KLT變換與空間二維DWT變換可以獲得較高的壓縮性能[3]。RUCKER在KLT與JPEG2000的壓縮框架下,提出了3種碼率分配方案,測試結果表明聯(lián)合率失真壓縮能夠獲得整體最優(yōu)的壓縮性能[4]。PENNA將異常檢測引入到多光譜圖像的有損壓縮中,利用譜間KLT與空間JPEG2000的壓縮方案,在壓縮過程中對異常點進行特殊保護[5]。CARVAJAL提出了一種有損壓縮與近無損壓縮相結合的壓縮算法[6],該算法以有損壓縮為主,近無損壓縮作為有損壓縮的補充。CAGNAZZO利用高效的分割算法把多光譜圖像分割成不同的區(qū)域[7],對每類區(qū)域分別進行光譜方向上的KLT,然后利用任意形狀小波變換對每個主成分的不同區(qū)域分別進行空間變換,最后,對不同區(qū)域進行任意形狀的SPIHT壓縮。BITA首先對每個波段進行二維小波變換,然后對每個子帶按照特定的順序進行掃描,再對所有波段的對應子帶進行譜間KLT,取得了較好的壓縮效果[8]。針對KLT可能難以捕捉用于分類的判別信息,LEE預先編碼特征信息,然后結合KLT變換實現(xiàn)多光譜圖像壓縮[9]。盡管KLT具有較好的去相關效果,但其復雜度較高。為此,PENNA提出了低復雜度譜間KLT變換[10],通過對原始圖像進行采樣來計算KLT的協(xié)方差矩陣,雖然在一定程度上降低了復雜度,但損失了部分壓縮性能。BLANES指出協(xié)方差矩陣的迭代分解是造成KLT復雜度高的主要原因,并提出了成對KLT變換用于去除譜間相關性,極大地降低了復雜度,但壓縮性能也有所損失[11]。NIAN提出了一種無分組的成對KLT變換結構,顯著降低了復雜度,但仍損失了部分壓縮性能[12]。文獻[13]提出了一種基于DWT和改進KLT的高效壓縮算法,首先利用二維DWT在空間方向上進行變換,然后再進行不同基的KLT,實驗結果表明該方法具有一定的壓縮性能。文獻[14]利用基于分塊的KLT去除譜間相關性,引入配對KLT降低算法的復雜度,其不足是KLT塊圖像會同時包含不同層下的小波子帶,在一定程度上影響去相關性能。針對以上不足,本文提出了基于子帶譜間變換的多光譜圖像低復雜度壓縮算法,該算法結合成對KLT變換結構降低算法的復雜度,同時利用子帶譜間KLT變換提高譜間去相關性能,與傳統(tǒng)KLT壓縮算法相比,在保證壓縮性能的同時,有效降低了計算復雜度。
多光譜圖像本質上是一個圖像序列,序列中的每個波段都是同一個地物在特定波長上的成像。多光譜圖像同時具有譜間相關性與空間相關性。因此,要獲得理想的壓縮性能,必須選取合理的變換方法去除譜間與空間相關性。
與全色圖像相比,多光譜圖像的空間相關性較低,這是由其較低的空間分辨率造成的,但在多光譜圖像的壓縮算法設計中,如何有效去除空間相關性,仍需要著重考慮。小波變換具有多分辨率分析的特性,能夠與人眼的視覺特性相吻合,已經(jīng)在圖像壓縮中獲得了廣泛的應用,這一點是DCT無法比擬的。因此,在空間相關性的去除上,本文采用性能較好的CDF9-7小波去除多光譜圖像每個波段的空間相關性。
KLT在多光譜圖像譜間變換中獲得了廣泛應用,取得了遠遠優(yōu)于DWT和DCT的去相關效果,其原因是KLT的基函數(shù)能夠與圖像特性較好地匹配。若多光譜圖像包含L個波段,每個波段的高度為M、寬度為N、波段數(shù)量為L,則坐標為(m,n)(m=1,2,…,M;n=1,2,…,N)處的光譜向量表示為
(1)
(2)
其中
Cmn=E[(Xmn-V)(Xmn-V)T]
(3)
式中,V=[v1,v2,…,vL]T為均值向量。對C進行特征值分解可得特征值λl(l=1,2,…,L)和特征向量U=[u1,u2,…,uL]。在此基礎上,譜間變換后的主成分圖像為
Yij=UT(Xij-V)。
(4)
多光譜圖像經(jīng)過譜間KLT變換后,整個圖像的能量會集中在少數(shù)幾個特征值較大的主成分上。圖像能量越集中,對后續(xù)壓縮性能的提高越有利。
KLT應用于多光譜圖像譜間去相關的傳統(tǒng)方法是將KLT直接作用于多光譜圖像的所有波段來完成譜間去相關。由于多光譜圖像通常包含數(shù)個波段,這使得整個譜間KLT的計算量較大,其原因是對協(xié)方差矩陣的特征值分解需要不斷地進行數(shù)值迭代。為了解決這個不足,BLANES提出了成對KLT變換[11],并給出了在成對變換情況下特征向量矩陣U的直接計算方法,其主要思想是對多光譜序列進行兩兩分組,KLT分別對每組的兩個波段進行譜間變換,這樣可以避免特征值分解的迭代運算,有效降低了計算量。此外,文獻[12]在上述算法基礎上提出了一種串行成對變換結構,首先對多光譜圖像的前兩個波段進行譜間KLT變換,然后將特征值較大的主成分與后續(xù)相鄰波段再次進行譜間KLT,依次變換直到最后一個波段。相比于BLANES提出的算法,該變換結構的優(yōu)點是無需事先進行分組。從實驗結果來看,與傳統(tǒng)KLT相比,兩種變換結構的壓縮性能較為接近。本文采用無分組的串行變換結構,為了保證壓縮性能,提出子帶譜間KLT變換,主要目標是獲得與傳統(tǒng)KLT相當?shù)膲嚎s性能。
多光譜圖像每個波段進行二維小波變換后,圖像會被分解成一系列高頻子帶和一個低頻子帶。其中,每一層小波變換后得到的3個高頻子帶分別代表了原圖像不同方向上的高頻成分,而最終得到的一個低頻子帶代表了原圖像的低頻成分。因此,不同層的子帶擁有不同的統(tǒng)計特性,代表了不同的頻率成分。在后續(xù)的譜間KLT變換過程中可以考慮針對不同的子帶分別進行譜間KLT,從而充分利用不同子帶的統(tǒng)計特性,提高譜間去相關性能。為了在成對變換的基礎上提高壓縮性能,借鑒文獻[8]提出的算法思路,本文提出了基于子帶譜間變換的多光譜圖像壓縮算法,該算法首先對每個波段分別進行二維小波變換,然后將每一層小波變換得到的所有高頻子帶看成一個整體,將最終的低頻子帶看成一個單獨的子帶。圖1給出了一幅經(jīng)過3層小波分解后的子帶圖像,如上所述,將具有相同標號的子帶進行合并,圖中共有4個合并后的子帶,后續(xù)的譜間KLT就是在波段間相同空間位置的子帶組合體之間進行。
圖1 子帶組合示意圖Fig.1 Diagram of sub-band combination
針對每一個合并后的子帶,在光譜方向上進行成對KLT變換,以此去除多光譜圖像的譜間相關性,從而得到空間與譜間去相關后的主成分。本文采用最優(yōu)截斷的嵌入式塊編碼(Embedded Block Coding with Optimized Truncation,EBCOT)對所有的主成分同時進行聯(lián)合率失真壓縮[15],從而獲得全局最優(yōu)的壓縮性能。整體的壓縮流程如圖2所示。需要指出的是,每個合并子帶進行成對KLT變換所得到的特征向量矩陣都需要作為附加信息傳輸?shù)浇獯a端用于KLT反變換。
圖2 本文提出的算法流程Fig.2 Flow chart of the proposed algorithm
為了驗證所提算法的有效性,采用法國SPOT-Vegetation探測器與美國IKNOS衛(wèi)星獲取的多光譜圖像作為實驗圖像,所有測試圖像的波段數(shù)為4(紅、綠、藍與近紅外),每個波段像素大小為1024×1024,每個像素占用2個字節(jié)。
采用碼率每波段每像素的比特數(shù)(bit per pixel per band,bpppb)和信噪比(SNR)評價壓縮算法的性能。本文提出的算法在光譜方向上對每個子帶組合體分別進行譜間KLT變換。因此,小波變換的層數(shù)會影響合并后的子帶數(shù)量,進而影響譜間去相關效果。圖3分別給出了SPOT和IKNOS圖像在不同的小波分解層數(shù)情況下的壓縮性能,可以看出,隨著小波分解層數(shù)的增加,壓縮性能逐步得以提高,其原因是小波分解層數(shù)越多,能量就越集中,但當小波分解層數(shù)過高時,最終得到的低頻子帶就越小。在后續(xù)的EBCOT編碼中,通常會將小波變換后的圖像分成像素大小為32×32的塊,然后以塊為單位進行率失真壓縮。因此,低頻子帶的合理像素大小應為32×32或者64×64。
圖3 小波分解層數(shù)對壓縮性能的影響Fig.3 The effect of wavelet decomposition levels on compression performance
從圖3可以看出,4層小波分解與5層小波分解所得到的壓縮性能幾乎相當,因此,從降低計算復雜度的角度考慮,4層小波分解是合理的選擇。
為了驗證算法的有效性,將本文算法與基于傳統(tǒng)KLT的壓縮算法以及低復雜度KLT壓縮算法(ρ=0.001)[10]的壓縮性能進行比較,如圖4與圖5所示。對于星載多光譜圖像,其后續(xù)應用主要集中在分類與目標檢測方面[16-17],為了保證圖像質量,低碼率壓縮是不被允許的。因此,這里的碼率bpppb取值范圍設為1~3。
圖4 SPOT衛(wèi)星圖像壓縮性能比較Fig.4 Comparison of compression performance of SPOT satellite images
從圖4可以看出,對于SPOT衛(wèi)星多光譜圖像,本文算法的壓縮性能明顯優(yōu)于后兩種算法。傳統(tǒng)KLT壓縮算法對整個圖像整體進行譜間KLT變換,雖然取得了良好的壓縮性能,但該變換方式無法利用圖像的局部相關性,這使得基于KLT的壓縮性能仍有提高的空間。低復雜度KLT算法通過對原始圖像采樣的方式降低協(xié)方差矩陣計算的復雜度,這使得協(xié)方差矩陣的估計產生誤差,降低了算法的壓縮性能,并且采樣率越低(ρ越小),壓縮性能下降得越快。對于本文算法而言,雖然成對KLT會在一定程度上降低了壓縮性能,但利用子帶譜間變換去除多光譜圖像的譜間相關性,能夠在一定程度上利用多光譜圖像的子帶統(tǒng)計特性,進而提高譜間去相關的效果,從而彌補了成對變換帶來的性能損失。
圖5 IKNOS衛(wèi)星圖像壓縮性能比較Fig.5 Comparison of compression performance of IKNOS satellite images
從圖5可以看出,對于IKNOS衛(wèi)星獲取的多光譜圖像,本文算法的壓縮性能與整體KLT算法的壓縮性能相當,并顯著優(yōu)于低復雜度KLT壓縮算法。以上結果充分表明,本文算法的壓縮性能不低于傳統(tǒng)KLT壓縮算法的壓縮性能,并且顯著高于低復雜度KLT壓縮算法的壓縮性能。
表1給出了各種算法對每個波段的編碼時間對比。從該表可以看出,JPEG2000由于未考慮去除多光譜圖像的譜間相關性,使得其編碼復雜度較低,但壓縮性能不理想。與傳統(tǒng)KLT算法相比,低復雜度KLT算法通過采樣的方式估計協(xié)方差矩陣,雖然在一定程度上降低了編碼復雜度,但這種復雜度的降低并不顯著,原因是該算法并未解決協(xié)方差矩陣分解的迭代計算問題。本文算法采用成對變換的方式,避免了上述不足,編碼時間顯著低于傳統(tǒng)KLT與低復雜度KLT,并且易于硬件實現(xiàn)。此外,本文算法每次只針對兩個波段的對應組合子帶進行譜間KLT變換,相比于傳統(tǒng)KLT和低復雜度KLT,顯著降低了計算內存需求。
表1 編碼時間比較Table 1 Comparison of encoding time ms
針對星載多光譜圖像壓縮的需求,本文提出了一種基于子帶譜間變換的多光譜圖像有損壓縮算法。該算法在空間二維小波變換的基礎上,利用子帶譜間KLT變換去除譜間相關性,通過成對變換的方式降低KLT的計算復雜度,結合JPEG2000中的EBCOT算法實現(xiàn)整體最優(yōu)的率失真壓縮。針對SPOT和IKNOS衛(wèi)星多光譜圖像的測試結果表明,該算法不但能夠獲得不低于傳統(tǒng)KLT壓縮算法的率失真性能,而且編碼復雜度較低,適用于實現(xiàn)星載多光譜圖像的高效壓縮。
參考文獻
[1]CONOSCENTI M,COPPOLA R,MAGLI E.Constant SNR, rate control,and entropy coding for predictive lossy hyper-spectral image compression[J].IEEE Transactions on Ima-ge Processing,2016,54(12):7431-7441.
[2] TANG X L,CHO S,PEARLMAN W A.Lossy-to-lossless block-based compression of hyperspectral volumetric data[C]//Proceedings of the IEEE International Conference on Image Processing,Atlanta,GA,America,2006:1133-1136.
[3]SHARMA S,DEWAL M L,ANAND R S.Performance evaluation of 3D hybrid transforms and 2D-set partitioning methods for lossy hyperspectral data compression[J].Signal,Image and Video Processing,2015,9(8):1881-1888.
[4] RUCKER J T,FOWLER J E,YOUNAN N H.JPEG2000 coding strategies for hyperspectral data[C]//Proceedings of the International Geoscience and Remote Sensing Symposium,Seoul,South Korea,2005:128-131.
[5] PENNA B,TILLO T,MAGLI E,et al.Hyperspectral image compression employing a model of anomalous pixels[J].IEEE Geoscience and Remote Sensing Letters,2007,4(4):664-668.
[6] CARVAJAL G,PENNA B,MAGLI E.Unified lossy and near-lossless hyperspectral image compression based on JPEG2000[J].IEEE Geoscience and Remote Sensing Letters,2008,5(4):593-597.
[7] CAGNAZZO M,POGGI G,VERDOLIVA L.Region-based transform coding of multispectral images[J].IEEE Tran-sactions on Image Processing,2007,16(12):2916-2926.
[8] BITA I P A,BARRET M,PHAM D T.On optimal transforms in lossy compression of multicomponent images with JPEG2000[J].Signal Processing,2010,90(3):759-773.
[9] LEE C,YOUN S,JEONG T,et al.Hybrid compression of hyperspectral images based on PCA with pre-encoding discriminant information[J].IEEE Geoscience and Remote Sensing Letters,2015,12(7):1491-1495.
[10] PENNA B,TILLO T,MAGLI E,et al.Transform coding techniques for lossy hyperspectral data compression[J].IEEE Transactions on Geoscience and Remote Sensing,2007,45(5):1408-1421.
[11]BLANES I,SERRA-SAGRISTA J.Pairwise orthogonal transform for spectral image coding[J].IEEE Transactions on Geoscience and Remote Sensing,2011,49(3):961-972.
[12] NIAN Y J,LIU Y,YE Z.Pairwise KLT-based compression for multispectral images[J].Sensing and Imaging,2016,17(1):1-15.
[13] 徐冬冬,付天驕,張宇.基于改進的K-L變換的多光譜圖像壓縮算法[J].光電子·激光,2015,26(6):1200-1205.
[14] 王平,陳欣,粘永健,等.基于分塊KLT的多光譜遙感圖像低復雜度有損壓縮[J].紅外技術,2018,40(2):151-157.
[15] TAUBMAN D.High performance scalable image compression with EBCOT[J].IEEE Transactions on Image Processing,2000,9(7):1158-1170.
[16] 呂俊偉,樊利恒,鄧江生,等.基于聚類集成的半監(jiān)督多/高光譜圖像分類方法[J].電光與控制,2016,23(5):30-36.
[17] 廖佳俊,劉志剛,姜江軍.基于改進雙邊濾波稀疏表示的高光譜目標檢測算法[J].電光與控制,2017,24(7):37-40.