卓頡,張怡,劉雄厚,劉宗偉
?
閾值改進整數(shù)小波與LZW算法相結(jié)合的水聲數(shù)據(jù)壓縮方法
卓頡,張怡,劉雄厚,劉宗偉
(西北工業(yè)大學聲學工程研究所,陜西西安 710072)
提出一種閾值改進整數(shù)小波與基于字典編碼的LZW(Lempel-Ziv-Welch)算法相結(jié)合的數(shù)據(jù)壓縮方法,該方法旨在減少水聲數(shù)據(jù)傳輸量的同時盡可能地達到高保真。數(shù)據(jù)壓縮過程中,先對水聲數(shù)據(jù)進行整數(shù)小波變換,再對變換后的高頻系數(shù)采用改進的小波閾值算法和閾值函數(shù)進行處理,提高了數(shù)據(jù)壓縮倍數(shù)和信噪比,降低了誤差。最后通過LZW將處理后的系數(shù)進行編碼輸出,進一步提升壓縮效果。文中給出了相應的數(shù)據(jù)壓縮算法流程。實際艦船輻射噪聲數(shù)據(jù)的壓縮處理結(jié)果表明,該方法能有效提高信號信噪比、減少信號失真并能獲得更大的壓縮倍數(shù)。
信號壓縮;整數(shù)小波變換;LZW算法;閾值;閾值函數(shù)
隨著水下探測技術(shù)的快速發(fā)展,水聲數(shù)據(jù)的高速遠距離傳輸成為該領域研究的熱點之一。傳統(tǒng)水聲通信因水下信道的復雜性和海洋噪聲干擾的影響,無法進行高速率傳輸。短波和射頻通信方式受通信帶寬和傳播途徑的限制,無法進行大量數(shù)據(jù)傳輸。無線網(wǎng)橋、有限帶寬等傳輸方式受天線和發(fā)射功率的限制,只能在近距離內(nèi)進行傳輸。而微波通信方式可同時兼顧遠距離和高速率的特點。蒸發(fā)波導是一種可用來提供微波寬帶超視距傳輸?shù)臒o線信道資源,目前已引起了國內(nèi)外的高度重視,并被應用于水聲數(shù)據(jù)超視距傳輸[1]。對待傳輸水聲數(shù)據(jù)進行有效壓縮不僅可以節(jié)省信息的存儲空間,還可大幅提高信息的傳輸效率。
數(shù)據(jù)壓縮技術(shù)廣泛應用于信號處理領域,按壓縮的可逆性一般分為有損壓縮和無損壓縮兩種[2]。無損壓縮能實現(xiàn)信號的精確重構(gòu),但其壓縮倍數(shù)不高。有損壓縮則不能實現(xiàn)信號的精確重構(gòu),但壓縮倍數(shù)大大提升。水聲數(shù)據(jù)通常是多陣元的采樣數(shù)據(jù),具有寬頻帶、低信噪比、攜帶信息量大等特點,通常多采用單一的有損數(shù)據(jù)壓縮方法。基于K-L(Karhunen-Loeve)變換的有損壓縮方法雖實現(xiàn)簡單,運算量較小,但針對實際的水聲信號并不能實現(xiàn)精確重構(gòu)[3]。離散小波變換(Discrete Wavelet Transform, DWT)的壓縮方法針對語音信號的壓縮效果較好,但無法準確確定最佳小波基的選取[4]。
傳統(tǒng)的有損壓縮方法并不能實現(xiàn)信號的精確重構(gòu),且抗噪聲性能差,不利于遠距離傳輸。而基于小波變換的壓縮算法在處理非平穩(wěn)信號、數(shù)據(jù)壓縮方面具有優(yōu)越性,具有高的壓縮倍數(shù)、在傳遞中抗干擾性強等特點,因而得到了廣泛的應用[5]。LZW(Lempel-Ziv-Welch)是一種基于字典編碼的壓縮方法,是當今最具代表性的無損壓縮技術(shù)[6],特別適于對大量重復字符或字符串進行編碼。它在數(shù)據(jù)壓縮過程中動態(tài)地生成一個串表,比較之后的數(shù)據(jù)同串表中的數(shù)據(jù)相匹配,匹配成功則輸出串表的索引。由于串表索引所用的比特數(shù)遠小于串的比特數(shù),從而實現(xiàn)數(shù)據(jù)壓縮。文獻[7]采用小波變換與Huffman編碼的壓縮算法,有效提高了數(shù)據(jù)壓縮倍數(shù),但Huffman編碼遍歷所需的時間較長,不利于數(shù)據(jù)的實時傳輸。文獻[8]采用小波變換結(jié)合LZW的壓縮方式,實現(xiàn)了地震數(shù)據(jù)的無損壓縮。不過由于受無損壓縮的限制,其壓縮倍數(shù)有限。
本文以無線信道中的水聲數(shù)據(jù)傳輸為應用背景,提出了一種閾值改進的整數(shù)小波與LZW相結(jié)合的數(shù)據(jù)壓縮方法,最終實現(xiàn)水聲信號在蒸發(fā)波導中的超視距高速率傳輸。該方法是在LZW算法中引入整數(shù)小波變換,實現(xiàn)整數(shù)到整數(shù)的轉(zhuǎn)換,以方便對處理后的系數(shù)進行LZW再壓縮,提高壓縮效果。由于小波壓縮中,閾值及閾值函數(shù)的確定起著至關(guān)重要的作用[9-11]。所以,本文對變換過程中的小波閾值及閾值函數(shù)提出了改進方法,進一步提升了數(shù)據(jù)的壓縮性能。對實測艦船噪聲數(shù)據(jù)處理結(jié)果表明,基于閾值改進整數(shù)小波與LZW算法相結(jié)合的水聲數(shù)據(jù)壓縮方法比單一算法的壓縮性能明顯提升。較傳統(tǒng)的小波閾值方法而言,本文提出的閾值改進方法具有更好的壓縮效果和保真度及更少的能量損失等優(yōu)點。該方法不僅適用于水聲信號,也可對其它數(shù)據(jù)進行壓縮處理。
1.1 整數(shù)小波變換
整數(shù)小波變換能實現(xiàn)整數(shù)到整數(shù)的變換。其實質(zhì)就是將信號通過一系列的低通和高通濾波器,分別得到近似信號和細節(jié)信號。圖1給出整數(shù)小波分解和重構(gòu)的流程圖。整數(shù)小波分解過程一般可分為:分裂、預測和更新三個步驟。
(2)
(3) 更新:為保持原始數(shù)據(jù)集的整體特性,如均值、能量等,需找出一個更好的子數(shù)據(jù)集來替換原先的。其中為更新算子,更新后的為低頻系數(shù)。更新過程如下:
小波重構(gòu),就是小波變換的逆過程。過程如下:
(4)
1.2 LZW算法
LZW屬字典編碼,是利用數(shù)據(jù)本身包含的重復性而實現(xiàn)壓縮的。具體實現(xiàn)步驟如下[3]:
LZW編碼算法:
(1) 初始化字典,清空前綴;
(2) 讀入下一字符作為當前字符,形成詞條<,>;
(3) 判斷詞條<,>是否在字典中;
①若存在,將詞條<,>的編號賦給;
② 若不存在,將詞條<,>加入字典中,令=,輸出;
(4) 判斷串表是否已滿或已完成編碼;
①若滿或完成編碼,則清空字典,循環(huán)步驟(1)~(4)。
② 否則,置結(jié)束碼。
LZW譯碼就是編碼的逆運算。解壓縮執(zhí)行時,循環(huán)讀入編碼,將字符串表中與編碼對應的字符串輸出,同時向表中添加一項。
在小波壓縮中,分為小波基的選取、閾值確定、選取閾值函數(shù)和小波重構(gòu)四步驟。其中,閾值的確定起著至關(guān)重要的作用。整個過程中,因為閾值和閾值函數(shù)不是唯一的,閾值確定和閾值函數(shù)選取的靈活性很大,這也是小波壓縮的核心步驟,所以如何選取閾值和閾值函數(shù)起著至關(guān)重要的作用。
2.1 已有的閾值算法
(1) 通用閾值算法
文獻[9]在Donoho通用閾值的基礎上提出了改進方法,閾值的公式為
其中:為數(shù)據(jù)長度;為噪聲標準偏差,用第層小波系數(shù)中間幅值的絕對值估計,即;為當前的分解層數(shù)。局部閾值雖然克服了全局閾值對小波系數(shù)“過扼殺”或者“過保留”的傾向,但經(jīng)該閾值處理后的信號還是往往過于平滑,容易丟失原始信號信息。
(2) 修正NeighShrink閾值算法
NeighShrink法在對系數(shù)進行處理時,雖然考慮了其周圍系數(shù)的分布并將其引入收縮策略。但是,在進行系數(shù)收縮時對所有的子帶均采用通用全局閾值,而全局閾值存在著一定缺陷——要么信息損失過多,要么噪聲殘留較多。文獻[10]在原有的NeighShrink閾值上提出了改進,閾值的公式為
修正的NeighShrink閾值在壓縮效果上有了一定改進,但是對噪聲的適應性依然較差。所以,不適合作為閾值來處理低信噪比的水聲信號。
(3) Brige-Massart策略閾值
文獻[11]中提出的Brige-Massart策略閾值,將每級變換后的系數(shù)按絕對值從大到小的順序排列,按公式(7)選取第個系數(shù)作為第層的閾值。閾值的公式為
其中:為分解層數(shù),這里取4;一般指最高層低頻系數(shù)的長度;為經(jīng)驗值。
Brige-Massart策略閾值雖能自適應地對信號進行處理,但一般不能有效地降低原始信號的噪聲。所以,也不適合作為水聲信號壓縮的閾值。
2.2 改進的閾值算法
改進的閾值算法是在上述三種方法的基礎上提出的。假設噪聲為高斯白噪聲。由于白噪聲的Lipschitz指數(shù)小于零,而信號卻是相反的,即噪聲的小波變換模值隨分解尺度的增大而快速減小,信號的小波變換模值隨分解尺度的增大明顯增大[9]??梢哉J為較小的小波系數(shù)由噪聲產(chǎn)生,而較大的小波系數(shù)由信號產(chǎn)生。通過在各層設定閾值,將小于閾值的小波系數(shù)歸零,并由剩余的小波系數(shù)重構(gòu)信號。所以,本文提出的改進算法采用局部閾值處理。具體方法為:在較低尺度上選取較大閾值,有效地濾除噪聲;在較高尺度上選取較小閾值,盡可能多地保留信號。改進的閾值為
2.3 基于改進閾值函數(shù)的小波系數(shù)
目前,軟閾值函數(shù)和硬閾值函數(shù)為常用的兩種閾值函數(shù)。硬閾值函數(shù)是將絕對值大于閾值的系數(shù)予以保留,其余的系數(shù)變?yōu)榱?。它是不連續(xù)的,會在某些點產(chǎn)生振蕩。軟閾值函數(shù)在處理絕對值大于閾值的系數(shù)時不是完全保留而是作收縮處理,它克服了硬閾值函數(shù)的缺點,能在閾值點處連續(xù),處理的結(jié)果會光滑、無尖峰,但因為在函數(shù)中小波系數(shù)減去了一個常數(shù),從而使得處理后的小波系數(shù)與原小波系數(shù)存在恒定的偏差,影響重構(gòu)信號與原信號的逼近程度。為了克服軟、硬閾值函數(shù)的缺點,本文基于2.2節(jié)中提出的改進閾值函數(shù)定義了新的小波系數(shù),使其既能具有軟閾值函數(shù)一樣的連續(xù)性,又保證了重構(gòu)信號與原始信號的逼近度。定義改進閾值函數(shù)與小波系數(shù)間的關(guān)系式如下:
圖2 三種閾值函數(shù)曲線圖
Fig.2 The functions of three thresholds
采用整數(shù)小波變換與LZW算法相結(jié)合的水聲數(shù)據(jù)壓縮算法的流程如圖3所示,具體步驟如下:
(1) 將信號進行整數(shù)小波分解,得到對應的低頻系數(shù)與高頻系數(shù);
(2) 利用新閾值公式(8),計算各層相應的閾值;
(3) 通過改進閾值函數(shù),對高頻系數(shù)進行處理;
(4) 將低頻系數(shù)與處理后的高頻系數(shù)經(jīng)LZW編碼壓縮,并傳輸出去;
(5) 通過解壓得到相應的高頻系數(shù)與低頻系數(shù),將這些系數(shù)通過小波逆變換,重構(gòu)出信號。
4.1 壓縮效果的評價標準
本文采用壓縮率、信噪比和均方根誤差三個指標來衡量壓縮效果[12]。三個指標的定義如下:
(2) 信噪比(SNR):原始信號與重構(gòu)誤差間的比值,主要用于衡量原始信號與重構(gòu)信號的相似度及能量損失。
(11)
(3) 均方根誤差(RMSE):原始信號與重構(gòu)信號之間的偏差,是衡量信號保真度的評價標準之一。
4.2 實驗數(shù)據(jù)分析
為了驗證本文方法在水聲數(shù)據(jù)壓縮方面的有效性,選取文獻[13]中公布的由聲吶基陣記錄的美國二戰(zhàn)期間所用潛艇的輻射噪聲作為原始待壓縮數(shù)據(jù),采樣率為22 kHz,取數(shù)據(jù)長度(即采樣點個數(shù))=60000,小波分解為4層,閾值函數(shù)中經(jīng)驗值取為0.46。
圖4為采用5種不同小波基進行數(shù)據(jù)壓縮的結(jié)果對比。式(11)、(12)給出SNR和RMSE是衡量重構(gòu)信號保真度的主要評價標準。由圖4可以看出,雖然采用db4小波基時RMSE最低,但是相比其他的小波基而言,它的壓縮倍數(shù)較小。此外,它的壓縮倍數(shù)與SNR的關(guān)系趨勢并不十分穩(wěn)定。從圖4(a)中還可看出,在壓縮倍數(shù)達到最大的同時,db6小波基獲取的信噪比較高,RMSE較低,更好地保真了原始數(shù)據(jù)。結(jié)合壓縮倍數(shù)、SNR以及RMSE三種指標,采用db6小波基的壓縮效果最好。
圖5分別從SNR、RMSE兩個方面對不同閾值算法的壓縮性能分析比較。圖中的B-M策略閾值表示Brige-Massart策略閾值,修正的N-S閾值表示修正NeighShrink閾值法。從圖5可以明顯看出,相比其他閾值,本文提出的新閾值算法在獲得最大壓縮倍數(shù)的同時,可獲得最大信噪比和最小均方誤差。此外,與其它閾值算法相比,新閾值算法的壓縮倍數(shù)與SNR及RMSE間的關(guān)系趨勢也最穩(wěn)定。所以,采用新閾值算法的壓縮效果最佳。
圖6和圖7比較了原始信號和重構(gòu)信號的時域波形與頻譜。對比圖6中的原始信號與重構(gòu)信號的時域波形圖,可以看出新閾值算法能較好地重構(gòu)出原始信號波形;而在圖7的頻譜圖中,可以看出新閾值算法對低頻線譜成分的保真度較高,有利于后處理中利用線譜成分進行水下目標探測與識別。綜合這兩幅圖,可以得出:本文提出的閾值算法,不僅能使壓縮倍數(shù)得以提高,還能使數(shù)據(jù)的保真度得以提升。新閾值算法壓縮效果優(yōu)于現(xiàn)有閾值算法。
表1利用CR、SNR、RMSE和相關(guān)系數(shù)四個參數(shù)來衡量閾值函數(shù)選取的有效性。對比表1中性能參數(shù),可以看出,如果對數(shù)據(jù)只采用LZW壓縮,數(shù)據(jù)幾乎沒有被壓縮。而在LZW中引入小波變換后,通過選取一定的閾值去掉不重要的系數(shù),保留重要的系數(shù),帶來了比較明顯的數(shù)據(jù)壓縮效果。此外,分析各性能參數(shù)可得出,數(shù)據(jù)經(jīng)硬閾值函數(shù)處理后RMSE較大,經(jīng)軟閾值函數(shù)處理后得到的信噪比較低。而本文提出的新閾值函數(shù)同時克服了軟、硬閾值函數(shù)的缺點,使處理后的數(shù)據(jù)在獲得高信噪比的同時,均方根誤差較小,相關(guān)系數(shù)更高。
表1 幾種方法的壓縮效果對比
綜上所述,采用本文提出的基于閾值改進的整數(shù)小波與LZW相結(jié)合的壓縮方法對水聲數(shù)據(jù)進行處理,可以獲得更大的壓縮倍數(shù)、更高的信噪比以及更低的均方根誤差,能更好地保真原始信號。
本文提出了一種閾值改進的整數(shù)小波與LZW相結(jié)合的數(shù)據(jù)壓縮算法,可以有效地對水聲數(shù)據(jù)進行壓縮。實測艦船輻射噪聲數(shù)據(jù)的處理結(jié)果表明:本文提出的方法比僅采用LZW算法的壓縮倍數(shù)明顯提升;所獲得的信噪比、均方根誤差、相關(guān)系數(shù)均遠優(yōu)于以往的閾值算法;在壓縮倍數(shù)得到提升的同時,能獲得更高的保真度和更小的能量損耗。實際艦船噪聲處理結(jié)果表明該方法的有效性和實用性。由于在數(shù)據(jù)壓縮過程中沒有對信號特性進行預設,因此本文方法也適用于其它數(shù)據(jù)壓縮領域。
[1] 張鵬, 楊坤德, 劉艷, 等. 數(shù)字微波式遠程水聲數(shù)據(jù)采集系統(tǒng)設計[J]. 計算機測量與控制, 2009, 17(7): 1421-1423.
ZHANG Peng, YANG Kunde, LIU Yan, et al. Design of remote underwater acoustic data acquisition system based on digital microwave[J]. Computer Measurement & Control, 2009, 17(7): 1421-1423.
[2] 戴善榮. 數(shù)據(jù)壓縮[M]. 西安: 西安電子科技大學出版社, 2005.
DAI Shanrong. Data compression[M]. Xian: Xian University of Electronic Science and Technology Press, 2005.
[3] 郭曉樂. 水聲數(shù)據(jù)壓縮的可行性分析[D]. 西安: 西北工業(yè)大學, 2012.
GUO Xiaole. Compression methods to deal with acoustic data[D]. Xian: Northwestern Polytechnical University, 2012.
[4] Jalal Karam, Raed Saad. The effect of different compression schemes on speech signals[J]. World Academy of Science, Engineering and Technology, 2006, 18(1): 87-91.
[5] NING Jiaxin, WANG Jianhui, GAO Wenzhong, et al. A wavelet-based data compression technique for smart grid[J]. IEEE Trans. Smart Grid, 2011, 2(1): 212-218.
[6] 劉曉勝, 王新庫, 黃南天, 等. 基于模式相似度和LZW壓縮編碼的電能質(zhì)量數(shù)據(jù)壓縮方法[J]. 電力自動化設備, 2012, 32(3): 53-57.
LIU Xiaosheng, WANG Xinku, HUANG Nantian, et al. Power quality data compression based on pattern similarity and LZW compressed encoding[J]. Electric Power Automation Equipment, 2012, 32(3): 53-57.
[7] 張蕊, 王學偉, 王琳. 基于GHM多小波的電力系統(tǒng)故障錄波數(shù)據(jù)壓縮算法[J]. 電測與儀表, 2008, 45(10): 46-50.
ZHANG Rui, WANG Xuewei, WANG lin. Compression Algorithm of fault recording data in power system based on GHM multiwavelet[J]. Electrical Measurement & Instrumentation, 2008, 45(10): 46-50.
[8] 劉亮,葉進. 基于小波理論的動平衡信號濾波方法研究[J]. 機械制造與自動化, 2011, 46(1): 51-54.
LIU Liang, YE Jin. Research on method of dynamic balancing signal filtering based on wavelet theory[J]. Machine Building & Automation, 2011, 46(1): 51-54.
[9] Yasser Ghanbari, Mohammad Reza Karami-Mollaei. A new approach for speech enhancement based on the adaptive thresholding of the wavelet packets[J]. Speech Communication, 2006, 48(8): 927-940.
[10] 武海洋, 王慧, 裴寶全. 一種閾值改進的鄰域小波系數(shù)法圖像去噪[J]. 計算機工程與應用, 2011, 47(27): 203-205.
WU Haiyang, WANG Hui, PEI Baoquan. Improved threshold for image de-noising based on NeighShrink[J]. Computer Engineering and Applications, 2011, 47(27): 203-205.
[11] 許同樂, 張新義, 賈慶軒, 等. 基于小波閾值降噪滾動軸承信號的研究[J]. 船舶力學, 2012, 16(10): 1199-1203.
XU Tongle, ZHANG Xinyi, JIA Qingxuan, et al. Rolling bearing fault research on wavelet threshold denoising[J]. Journal of Ship Mechanics, 2012, 16(10): 1199-1203.
[12] 李蘭. 基于小波變換的流數(shù)據(jù)壓縮算法研究[D]. 長沙: 湖南大學, 2010.
LI Lan. The research on streaming data compression algorithm based on wavelet transform[D]. Changsha: Hunan University, 2010.
[13] http://www.hnsa.org/sound/#jp.
An underwater acoustic data compression method using improved threshold integer wavelet and LZW algorithm
ZHUO Jie, ZHANG Yi, LIU Xiong-hou, LIU Zong-wei
(Institute of Acoustic Engineering, Northwestern Polytechnical University, Xi’an710072,Shaanxi,China)
A new data compression method is proposed in this paper, which combines the improved threshold integer wavelet with LZW algorithm. Firstly, by using wavelet transform, the sampled underwater acoustic data are decomposed into low- and high-frequency coefficients. Then, after improved threshold processing to high frequency coefficients, the ones above the threshold are remained, thereby reducing the data amount effectively. Finally, the low-frequency coefficients and remained high-frequency ones are coded by LZW coding and transmitted subsequently. The compression algorithm process is given in the paper. By processing the real ship noise data, the new method can effectively improve SNR, reduce signal distortion level and achieve higher compression ratio, compared with the conventional threshold value method.
signal compression; integer wavelet transform; LZW algorithm; threshold value; threshold function
TB688
A
1000-3630(2015)-02-0115-06
10.16300/j.cnki.1000-3630.2015.02.003
2014-01-25;
2014-04-22
國家自然科學基金資助項目(11104222)。
卓頡(1978-), 女, 副教授, 碩士生導師, 研究方向為信號與信息處理。
張怡, E-mail: z_y608@sina.com