1 引言 隨著社會的發(fā)展和醫(yī)療技術(shù)的進步,人們對身體健康的關(guān)心程度越來越高。醫(yī)學影像已經(jīng)不再是僅供醫(yī)生參考的信息而成為診斷疾病的重要依據(jù)。在網(wǎng)絡(luò)傳輸條件下的圖像壓縮編碼成為建立數(shù)字化醫(yī)院的關(guān)鍵技術(shù)。目前,二維圖像的壓縮標準有JPEG、GIF及采用了小波變換的JPEG2000等。醫(yī)學圖像具有特殊性,它一般不允許丟失有用的細節(jié)信息。傳統(tǒng)的DCT(Discrete Cosine Transform,離散余弦變換)和第一代小波在圖像變換后會產(chǎn)生浮點數(shù),因而必須對變換后的數(shù)據(jù)進行量化處理,這樣就會產(chǎn)生不同程度的失真。可見,量化器的設(shè)計是決定圖像保真度的關(guān)鍵環(huán)節(jié)。由于第二代小波采用提升方法能夠?qū)崿F(xiàn)整數(shù)變換,因而能夠?qū)崿F(xiàn)圖像的無損壓縮,顯然,它是一種很適于醫(yī)學圖像的壓縮方法。 2 SPIHT算法 基于分層樹的集合劃分算法(Set Partitioning inHierarchical Trees,SPIHT)改進了內(nèi)嵌零樹編碼算法(EZW)。在對圖像進行小波變換后,它更有效地利用了不同尺度子帶重要系數(shù)間的相似性。它呈現(xiàn)出良好的特性:不依賴傅立葉變換而在空間域中構(gòu)造小波;較高的PSNR(Peak Signal Noise Ratio,峰值信噪比)保證了良好的重現(xiàn)圖像質(zhì)量;整數(shù)運算利于實現(xiàn)實時快速編解碼和網(wǎng)絡(luò)傳輸;圖像碼流的逐漸呈現(xiàn)便于用戶上網(wǎng)檢索感興趣的圖像。 SPIHT算法對圖像信息采用如下的編碼步驟。 首先,定義三個隊列:不顯著性系數(shù)隊列LIP,顯著性系數(shù)隊列LSP和不顯著性集合隊列LIS。 設(shè),O(i,j)表示節(jié)點(i,j)的直接節(jié)點的集合;D(i,j)表示節(jié)點(i,j)的子節(jié)點集合;L(i,j)表示子節(jié)點中排除直接節(jié)點后的集合。 在隊列中,每個元素由一個坐標唯一識別,它在LIP和LSP中代表孤立系數(shù)(無子節(jié)點的根節(jié)點),在LIS中代表第一類元素的D(i,j)或者第二類元素的L(i,j)。 對某個閾值T進行顯著性測試。將大于T的元素移入LSP,并在LIP隊列中移除該元素。對LIS也進行同樣的測試,將顯著的元素移入LSP,其他的再進行樹的分裂。 ![]() 用類C++語言描述的SPIHT算法如下: 第一步,閾值T和三個隊列(LSP、LIS和LIP)初始化。 ![]() 的坐標; ![]() ![]() (2)if(x,y)是第二類元素,對L(i,j)進行顯著性測試 if(L(i,j))==1 all(k,l)∈O(i,j)作為第一類元素移入LIS,從LIS出隊。 第三步,比特傳輸/存儲。將LSP中的每個系數(shù)轉(zhuǎn)化成二進制傳輸/存儲。 第四步,閾值更新并轉(zhuǎn)至第二步:T/=2;gotostep2。 3 提升方案與第二代小波 提升方法構(gòu)造小波分為分裂、預(yù)測和更新三個步驟。 3.1 分裂(split) 將一原始信號序列Sj按偶數(shù)和奇數(shù)序號分成兩個較小的、互不相交的小波子集Sj-1和dj-1: ![]() 3.2 預(yù)測(predict) 由于數(shù)據(jù)間存在相關(guān)性,因而可以定義一個預(yù)測算子P,使dj-1=P(Sj-1),這樣可用相鄰的偶數(shù)序列來預(yù)測奇數(shù)序列。若用dj-1與 P(Sj-1)的差值代替dj-1,則其數(shù)據(jù)量要比原始dj-1小得多。 ![]() 最簡單的情況下,取兩個相鄰偶數(shù)序號所在數(shù)據(jù)的均值作為它們間奇數(shù)序號所在數(shù)據(jù)的預(yù)測值。即, ![]() 3.3 更新(update) 由于上述兩個過程一般不能保持原圖像中的某些整體性質(zhì)(如亮度),為此,我們要構(gòu)造一個U算子去更新Sj-1,使之保持原有數(shù)據(jù)集的某些特性。 4 編/解碼方案 本文中前端采用第二代小波(lifting wavelet),接著對小波系數(shù)采用SPIHT算法,然后,采用Amir Said的自適應(yīng)算術(shù)編碼。解碼是編碼的逆過程,包括與正向SPIHT對應(yīng)的三個步驟:恢復(fù)更新、恢復(fù)預(yù)測和合并(merge)。編/解碼方案如圖1所示。 ![]() 如果前端利用第一代小波進行有損壓縮,可以取得更高的壓縮比。顯然,第二代小波變換對數(shù)據(jù)壓縮的高保真性與高壓縮比的要求是矛盾的。 5 實驗結(jié)果及結(jié)論 對上一編碼方案,我們分別對醫(yī)學圖像和Lena圖像進行了測試,碼率bbp采用bit/pixel。由于采用了無損壓縮方案,所以,表1中的三種不同編碼方法均有PSNR=∞。 從表1可以看出,在對標準測試圖像Lena進行編碼時性能差別不是很大,但由于一般的醫(yī)學圖像的邊緣存在大量的“零像素”,因此,在用SPIHT編碼時可以產(chǎn)生大量的“零樹”,大大減少了數(shù)據(jù)量。所以,在對醫(yī)學圖像進行壓縮時,更適合采用本文的方法。 ![]() 進一步的分析表明,與目前廣為使用的JPEG相比較,本壓縮方案占用內(nèi)存小、編碼效率高且無馬賽克現(xiàn)象。在低碼率時,兩者間的差距更為明顯。如果該方案采用并行快速算法和硬件實現(xiàn),其實時性會進一步提高,所以,該醫(yī)學圖像壓縮方案有較好的應(yīng)用前景。 參考文獻 1. A Said.W A Pearlman A New Fast and Efficient Image Code Based on Set Partitioning in Hierarchical Trees 1996(3) 2. Erik Sjoblom Compression of Medical Image Stacks Using Wavelets and Zero Tree Coding 2002 3. 徐佩霞 小波分析與應(yīng)用實例 2001 4. 陳武凡 小波分析及其在圖像處理中的應(yīng)用 2002 5. 胡學龍.姜楠.郭振民 數(shù)字化醫(yī)院的圖像存檔與通信系統(tǒng)(PACS) 2001(z1) 6. 羅文斌.張立明 第二代小波在醫(yī)學圖像無損壓縮中的應(yīng)用 1999(10) 7. 湯焱.莫玉龍 第二代小波變換應(yīng)用于圖像的無損壓縮編碼 2000(8) 作者:胡學龍(揚州大學信息工程學院,江蘇揚州,225009;蘇州大學江蘇省計算機信息處理技術(shù)重點實驗室,江蘇蘇州,215006) 陸峰, 郭振民,李云(揚州大學信息工程學院,江蘇揚州,225009) 來源:電子工程師 2003 29(4) |