,,,
中國空間技術研究院 西安分院 空間微波技術重點實驗室,西安 710100
空間技術的發展,特別是太空軍事技術的發展,使遙感成像傳感器的空間分辨率飛速提高,空間遙感圖像的數據量也隨之呈幾何級數增加。但是星上有限的信道傳輸和計算能力無法適應空間遙感圖像的海量數據,這已成為制約空間遙感圖像分辨率提高的瓶頸[1]。目前JPEG2000等圖像壓縮方法[2-4]成為解決海量的遙感數據和有限的傳輸能力之間矛盾的有效途徑,但受制于壓縮倍數的限制,仍然無法滿足用戶對海量遙感數據的實時傳輸要求。因此,高分辨率遙感圖像產生的數據量必須進一步減少,以滿足遙感圖像數據的空間傳輸要求。
目前在信息隱藏與圖像壓縮相結合方面國內外已有研究,例如,文獻[5]提出了一種基于信息隱藏的語義圖像壓縮,利用原始圖像的部分像素生成語義圖像,采用信息隱藏技術將剩余像素的估計誤差嵌入到生成的語義圖像中,采用此方法實現原始圖像的壓縮。文獻[6-7]提出了基于邊緣匹配矢量量化(Side Match Vector Quantization,SMVQ)的信息隱藏和圖像壓縮相結合的方案,優化圖像壓縮性能。文獻[8]提出了一種用于矢量量化(Vector Quantization,VQ)壓縮的信息隱藏方法,壓縮性能優于同類型的算法。在將信息隱藏應用于遙感圖像方面,文獻[9]提出了一種基于直方圖修改技術的衛星遙感圖像無損隱藏傳輸方法,但該方法的研究重點在信息隱藏容量。由此可見,利用信息隱藏技術可以提升圖像壓縮算法的性能,但應用于遙感圖像壓縮的研究較少。因此,本文將信息隱藏技術和遙感圖像壓縮相結合,提出一種基于信息隱藏的遙感圖像分塊壓縮方法。
信息隱藏技術,是將秘密信息隱藏于另一公開信息(載體信息)中形成隱蔽載體,然后通過隱蔽載體的傳輸來傳遞隱藏信息[10-11]。信息隱藏的目的在于保證隱藏的信息不引起攻擊者的注意,從而減少被侵犯的可能性,擺脫數據加密技術的致命缺陷。目前用來作為信息隱藏的載體有文字、圖像、語音或視頻等多種不同格式的文件,但使用的方法沒有本質區別。其中圖像由于冗余空間大,是目前用于隱藏儲存和隱蔽通信最多的信息隱藏載體。
基于圖像的信息隱藏技術,可以歸類于基于變換域的隱藏技術和基于空間域的隱藏技術兩種。基于空間域的隱藏技術是直接改變圖像元素的值,一般是在圖像的亮度或色度中加入隱藏的內容。最簡單和有代表性的基于空間域的信息隱藏方案是將要隱藏的信息代替圖像的最低有效位(LSB)[12]。LSB算法首先將每個像素值從8 bit壓縮為7 bit,然后將編碼信息作為像素值的第8位(即像素值的LSB),這一方法是單個LSB編碼方法的擴展,在單個LSB編碼方法中,LSB直接被編碼信息所代替。LSB算法的嵌入比為12.5%,是目前公認信息隱藏量大的一種算法,同時還有算法簡單、嵌入速度快等優點。
基于信息隱藏的遙感圖像分塊壓縮方法由圖像分塊隱藏方法和標準格式壓縮方法組成。JPEG2000作為新一代靜止圖像壓縮標準,可以在獲得高壓縮比的同時確保高圖像質量,另外還具有非常好的抗誤碼性能,在星載遙感圖像壓縮領域得到了廣泛的應用[13-15],因此基于信息隱藏的遙感圖像分塊壓縮方法中的標準格式壓縮采用了JPEG2000壓縮算法。
(1)圖像分塊

(2)圖像塊相似性判決
峰值信噪比(PSNR)基于圖像像素灰度值進行統計和平均計算,是常用的衡量信號失真的指標[16-18],因此,本文也將PSNR作為衡量圖像塊是否相似的依據。PSNR計算如下:
(1)

當兩個圖像塊滿足以下條件時,則認為兩個圖像塊相似:
PSNR(Bi,Bj)≥T,1≤i≤k,1≤j≤k
(2)
式中:T為判定兩個圖像塊相似的PSNR閾值,其取值可根據相似圖像塊數目占比為1/3時的PSNR值作為參考值。
根據以上圖像分塊和圖像塊相似性判斷依據,形成了基于信息隱藏的遙感圖像分塊壓縮方法具體實現過程,包含遙感圖像壓縮過程和恢復過程兩部分。
(1)基于信息隱藏的遙感圖像壓縮過程
步驟1:按照圖像塊的分塊方法,得到B1,B2,…,Bk共k個圖像塊,對應圖像塊編號為序列n=(1,2,...,k)。
步驟2:計算PSNR(Bi,Bj)的值,確定閾值T,1≤i≤k,1≤j≤k,i≠j。將每個PSNR的值和閾值T相比較,該PSNR計算得到的值大于等于閾值T,則判定進行PSNR計算的這兩個圖像塊Bi與Bj相似,并記錄與Bi相似的圖像塊Bj的編號為bi,Bi作為基準圖像塊,其編號i替換Bj的編號j,同時更新圖像塊編號序列n;若PSNR計算得到的值小于閾值T,則判定進行PSNR計算的這兩個圖像塊Bi與Bj不相似,兩者編號不進行替換。
步驟3:i≠k時,i+1,此時判斷i是否在序列n中,若i∈n,則返回步驟2;若i?n,則i=i+1,直到i∈n;i=k時,停止進行PSNR計算。
步驟4:將相似圖像塊編號bi進行二進制編碼得到二進制碼流,并將該二進制碼流利用LSB信息隱藏算法嵌入到基準圖像塊Bi中,然后只對基準圖像塊Bi采用JPEG2000圖像壓縮進行無損壓縮。
(2)基于信息隱藏的遙感圖像恢復過程
步驟1:接收端對壓縮圖像進行解壓縮,得到該圖像的原始數據,即為基準圖像塊Bi。
步驟2:對基準圖像塊Bi進行信息解隱藏,得到相似圖像塊編號bi的信息。
步驟3:在步驟2得到每一個Bi圖像塊和與Bi相似的圖像塊編號bi后,先將Bi圖像塊數據根據壓縮的圖像塊Bi的編號信息放置在序列中的相應位置,然后在bi相應的位置用Bi圖像塊的數據進行填充,直到最后一個Bi圖像塊結束,則獲得完整的原始圖像。
基于信息隱藏的遙感圖像分塊壓縮方法流程如圖1所示。
本文以標準圖像庫中的圖像為例對該方法進行仿真分析,圖像大小為512×512。
1)對原始圖像進行分塊:將這些標準圖像劃分為8×8的圖像塊,共4 096個,B1,B2,…,B4 096。
2)尋找相似圖像塊:從B1開始與每個圖像塊互相進行PSNR計算,對PSNR大于或等于T的圖像塊則認為兩個圖像塊是相似的,并記錄下與B1相似的圖像塊的編號,B1作為基準圖像塊;然后B2開始與每個圖像塊互相進行PSNR計算,若B2已被B1替換,則從B3開始,以此類推,直到B4 095;若找到相似的圖像塊,則記錄該基準圖像塊Bi和與之相似的圖像塊編號bi。不同圖像所取的T的值及相似的圖像塊的數目如表1所示。

圖1 基于信息隱藏的遙感圖像分塊壓縮方法流程Fig.1 Flow chart of block compression of remote sensing image based on data-hiding

表1 不同圖像所取的T的值及相似的圖像塊的數目
3)接著將bi的編號進行二進制編碼,利用LSB隱藏算法將以上編碼后的編號分別隱藏進基準圖像塊Bi中,然后對圖像進行壓縮:只對除去bi的剩余基準圖像塊進行壓縮,替換后減少的圖像塊即相當于對原始圖像進行了一次壓縮,壓縮倍數=1/[1-(相似圖像塊數/4 096)]=1.5。
4)對壓縮后的圖像數據按照一定數據格式進行傳輸。
1)接收端收到壓縮后的圖像數據后根據同步字節識別出每個圖像塊的數據,然后根據圖像塊編號識別出相應的圖像塊;
2)對圖像塊的壓縮數據進行解壓縮,得到壓縮前每個圖像塊的原始數據;
3)通過幀類型字節判斷出載荷數據中所隱藏的數據為相似的圖像塊,利用相應的解隱藏算法恢復出隱藏的圖像塊編號bi;
4)將每個圖像塊按照編號排列在相應的位置,編號為bi的圖像塊則直接以編號為Bi的圖像塊數據替代,得到完整的圖像數據。
本文提出的壓縮方法將信息隱藏技術與遙感圖像壓縮算法相結合,在對圖像進行JPEG2000壓縮前通過判決圖像塊的相似性對圖像的原始數據進行預處理,然后再利用JPEG2000進行4倍壓縮。
圖2所示為經本方法預處理得到的壓縮圖像以及恢復圖像與原始圖像的比較。其中經預處理得到的壓縮圖像中白色區域為相似圖像塊的占比區域。

圖2 壓縮圖像、恢復圖像與原始圖像比較Fig.2 Comparion of pretreatment, recovery and original image
壓縮性能對比如表2所示。由表2可以看出,通過本方法壓縮得到的PSNR值與JPEG2000進行6倍壓縮的PSNR值接近,因此本方法使用JPEG2000對圖像進行了4倍壓縮卻達到了6倍壓縮的效果,提升了圖像的壓縮性能;另外,本方法不需要進行復雜的數學運算,只需計算每個圖像塊之間的PSNR值,復雜度大大下降。
本文提出一種基于信息隱藏的遙感圖像分塊壓縮方法,利用圖像塊的相似性判別出基準圖像塊和相似圖像塊,并利用信息隱藏算法將相似圖像塊的標號隱藏在基準圖像塊中,只對基準圖像塊進行JPEG2000壓縮傳輸。通過仿真結果分析,并與JPEG2000標準壓縮進行對比可以看出,該方法將圖像壓縮比提高1.5倍。同時,本方法不需要進行復雜的數學運算,復雜度大大下降,適合星上應用。