嚴(yán)小紅
(新疆交通職業(yè)技術(shù)學(xué)院,新疆 烏魯木齊 831401)
經(jīng)濟(jì)的發(fā)展,為人們?cè)诳茖W(xué)技術(shù)領(lǐng)取取得突破性成果奠定了雄厚的物質(zhì)基礎(chǔ)。近年來(lái),隨著互聯(lián)網(wǎng)的迅猛發(fā)展,多媒體技術(shù)的應(yīng)用和發(fā)展越來(lái)越受到人們的關(guān)注,而數(shù)字圖像壓縮算法的研究與實(shí)現(xiàn)對(duì)于多媒體技術(shù),特別是數(shù)字圖像技術(shù)的發(fā)展起著決定性的作用。在信息化時(shí)代的大背景下,數(shù)字圖像處理技術(shù)的到了廣泛的應(yīng)用,圖像成為當(dāng)今時(shí)代人們交流溝通、數(shù)字應(yīng)用等方面的重要元素之一,而數(shù)字圖像需要占據(jù)大量的數(shù)據(jù)空間,對(duì)于數(shù)字圖像的存儲(chǔ)和網(wǎng)絡(luò)的傳輸都產(chǎn)生了重要的影響。因此,加大數(shù)字圖像壓縮算法的研究與實(shí)現(xiàn)有著鮮明的時(shí)代意義。
數(shù)字圖像信息離開不計(jì)算機(jī)技術(shù),數(shù)字圖像的信息需要存儲(chǔ)在存儲(chǔ)器設(shè)備中,數(shù)字圖像信息是通過(guò)二進(jìn)制數(shù)據(jù)形式在存儲(chǔ)器上存儲(chǔ)的[1]。與文字信息不同的是數(shù)字圖像信息數(shù)據(jù)量比較大,因此數(shù)字圖像信息占據(jù)的存儲(chǔ)空間也較大;另外數(shù)字圖像信息在互聯(lián)網(wǎng)上進(jìn)行傳輸時(shí)消耗的網(wǎng)絡(luò)流量也較大。例如當(dāng)前一顆衛(wèi)星每天的衛(wèi)星云圖數(shù)據(jù)大概就要占據(jù)1.1G的存儲(chǔ)空間,一張100G的硬盤只能存儲(chǔ)大約90天的衛(wèi)星云圖數(shù)據(jù),這與海量的數(shù)據(jù)存儲(chǔ)需求嚴(yán)重不相符。圖像數(shù)據(jù)之間存在一定的冗余,而數(shù)字圖像壓縮就是通過(guò)減少這些冗余空間來(lái)實(shí)現(xiàn)數(shù)字圖像信息占用空間的壓縮。所有的數(shù)字圖像信息都存在冗余,因此可以看出,數(shù)字圖像其實(shí)是數(shù)據(jù)信息和數(shù)據(jù)冗余的組合[2]。
通過(guò)上面的介紹我們,已經(jīng)知道數(shù)字圖像之間存在冗余,這些數(shù)據(jù)冗余為數(shù)字圖像的壓縮提供了可能。不同的數(shù)字圖像的數(shù)據(jù)冗余不同,也就是說(shuō)數(shù)字圖像的冗余度不同。不難看出,數(shù)字圖像的壓縮就是降低冗余度的過(guò)程,而降低數(shù)字圖像的冗余度需要考慮數(shù)字信號(hào)源的統(tǒng)計(jì)特性或者建立信號(hào)源的統(tǒng)計(jì)模型[3]。
圖像的冗余分為以下幾種情況:
1、時(shí)間冗余:數(shù)字圖像的時(shí)間冗余指的是數(shù)字圖像的活動(dòng)圖像的兩個(gè)連續(xù)幀之間的冗余。
2、空間冗余:空間冗余其實(shí)就是數(shù)字圖像內(nèi)部像素點(diǎn)之間存在的相關(guān)性造成的冗余。
3、知識(shí)冗余:知識(shí)冗余一般是指數(shù)字圖像中包含某種結(jié)構(gòu)、與驗(yàn)證知識(shí)有關(guān)的信息冗余。
4、視覺(jué)冗余:視覺(jué)冗余指的是數(shù)字圖像中那些人眼無(wú)法感知或者不敏感的那部分圖像信息形成的冗余。
5、結(jié)構(gòu)冗余:結(jié)構(gòu)冗余是指在數(shù)字圖像中存在很強(qiáng)的紋理結(jié)構(gòu)或者自相似性的冗余。
6、信息熵冗余:信息熵冗余也被稱為編碼冗余,指的是數(shù)字圖像中平均每個(gè)像素使用的二進(jìn)制數(shù)據(jù)大于該圖像的信息熵而存在的冗余。
數(shù)字圖像的壓縮原理就是通過(guò)去除數(shù)字圖像之間存在的冗余,減少數(shù)字圖像的二進(jìn)制比特?cái)?shù)據(jù)[4]。數(shù)字圖像的壓縮原理一般遵循兩個(gè)基本原理:
1、數(shù)字圖像的相關(guān)性。研究表明,數(shù)字圖像的內(nèi)部像素之間往往存在某種很強(qiáng)的相關(guān)性,這些相關(guān)性主要分布在數(shù)字圖像的同一行像素中的相鄰像素或者活動(dòng)圖像的相鄰幀的對(duì)應(yīng)像素之間。這種相關(guān)性對(duì)于數(shù)字圖像的壓縮有著一定的影響,因此,在對(duì)數(shù)字圖像壓縮時(shí)應(yīng)該去除或者減少這些像素之間的相關(guān)性。只有減少甚至去除這些數(shù)字圖像像素之間的相關(guān)性才能有效降低數(shù)字圖像的冗余度,才能真正實(shí)現(xiàn)數(shù)字圖像的壓縮。
2、人的視覺(jué)心理特征
在數(shù)字圖像之中,人眼能夠感知圖像中的大部分像素,但是有部分像素是人眼無(wú)法感知的或者人眼敏感度較低的。由于視覺(jué)的掩蓋效應(yīng),人眼對(duì)于邊緣產(chǎn)生急劇變化的像素不敏感,對(duì)顏色分辨力較弱。利用人眼的視覺(jué)掩蓋效應(yīng)可以適當(dāng)去除數(shù)字圖像中的這部分無(wú)法感知或者感知度較低的數(shù)據(jù),降低數(shù)字圖像的編碼精度,從而降低數(shù)字圖像的數(shù)據(jù)大小。采用這個(gè)方法壓縮數(shù)字圖像,既能夠?qū)?shù)字圖像有效壓縮,減少數(shù)字圖像的數(shù)據(jù)量,同時(shí)也能夠保證人并不會(huì)使人從視覺(jué)上感受到數(shù)字圖像的失真變化。
關(guān)于數(shù)字圖像的壓縮算法一般分為兩種:一種是有損壓縮;另一種是無(wú)損壓縮。有損壓縮一般采用變換編碼方法,對(duì)數(shù)字圖像中那些人類感知不到或者感知度較低的成分進(jìn)行壓縮[5]。有損壓縮從名稱可以看出這種壓縮方法會(huì)使數(shù)字圖像損失一定的信息,并且損失的這部分信息無(wú)法還原,但是損失信息的數(shù)字圖像并不會(huì)對(duì)人們理解圖像產(chǎn)生太大的影響。例如JPEG格式的二進(jìn)制圖片,這種格式就是采用了有損壓縮。有損壓縮的方法主要有基于小波變換的方法、基于離散余弦變換的變換編碼方法等。離散余弦變化方法會(huì)去除數(shù)字圖像中人眼不敏感的數(shù)據(jù)信息,進(jìn)而提高圖像的壓縮比率。無(wú)損壓縮主要是利用數(shù)字圖像中的數(shù)據(jù)統(tǒng)計(jì)冗余進(jìn)行壓縮,這種壓縮方法可以在解壓縮后恢復(fù)原始數(shù)據(jù),使得數(shù)字圖像不會(huì)失真[6]。不難發(fā)現(xiàn),無(wú)損壓縮的壓縮比率受到冗余度的影響。PNG是無(wú)損數(shù)據(jù)壓縮的圖片數(shù)據(jù)格式,這種格式的數(shù)字圖像一般采用LZ77派生的無(wú)損壓縮算法。LZ77壓縮算法采用的是基于窗口的詞典方式,該壓縮算法將看到的數(shù)據(jù)信息作為詞典,詞典中會(huì)存在一個(gè)指針,該指針會(huì)會(huì)代替數(shù)據(jù)信息中的短語(yǔ)以實(shí)現(xiàn)數(shù)據(jù)壓縮。該壓縮算法的主要數(shù)據(jù)結(jié)構(gòu)是一個(gè)固定大小的窗口,而這個(gè)窗口又會(huì)被劃分成兩個(gè)不同的部分,其中一部分是由最近被編碼的正文構(gòu)成的字典,窗口的另一部分是尚未編碼的字符構(gòu)成的緩沖區(qū)。該算法的核心是在文本構(gòu)成的詞典中尋找超前緩沖區(qū)內(nèi)輸入的數(shù)據(jù)串的最長(zhǎng)數(shù)據(jù)匹配串。
人眼對(duì)圖像顏色的感知程度是有損壓縮技術(shù)的基本依據(jù),有損壓縮能夠有效減少數(shù)字圖像的大小,但是有損壓縮是一種破壞性壓縮,并且這種破壞性不具備可復(fù)原性。有損壓縮的具體做法是保持?jǐn)?shù)字圖像顏色的逐漸變化,將圖像中突然變化的顏色去除。據(jù)科學(xué)研究表明,人腦會(huì)利用與周圍最相近的顏色來(lái)填充圖像中缺失的顏色。在有損壓縮過(guò)程中,數(shù)字圖像的信息會(huì)損失一部分,因此,數(shù)字圖像會(huì)產(chǎn)生一定的失真,但是,這卻大大提高了數(shù)字圖像的壓縮比率,經(jīng)過(guò)有損壓縮后得到的數(shù)字圖像跟原圖大部分相似。采用有損壓縮需要根據(jù)數(shù)字圖像的使用場(chǎng)合而定。通常情況下,流媒體、視頻社交、電話會(huì)議、互聯(lián)網(wǎng)傳輸?shù)葓?chǎng)合下使用的數(shù)字圖像都會(huì)經(jīng)過(guò)有損壓縮。需要注意的是采用有損壓縮時(shí)應(yīng)該注意控制壓縮比率,壓縮比率太大會(huì)使圖像信息過(guò)分失真,影響到對(duì)圖像的觀察和理解。色彩空間、色度抽樣、分形壓縮、變換編碼等方法是有損壓縮經(jīng)常采用的具體方法。
通過(guò)上面的論述我們已經(jīng)知道無(wú)損數(shù)據(jù)壓縮是采用數(shù)據(jù)的統(tǒng)計(jì)冗余進(jìn)行壓縮,經(jīng)過(guò)無(wú)損數(shù)據(jù)壓縮后,數(shù)字圖像的數(shù)據(jù)信息不會(huì)受到損失,被壓縮后的數(shù)據(jù)經(jīng)過(guò)解壓縮操作可以恢復(fù)原始數(shù)據(jù)。
無(wú)損數(shù)據(jù)壓縮的基本原理是對(duì)于數(shù)字圖像中相同顏色的只保存一次。因此,無(wú)損壓縮要首先對(duì)數(shù)字圖像進(jìn)行掃描,確定哪些區(qū)域的顏色是相同的,哪些區(qū)域的顏色是不同的。比如,數(shù)字圖像中有一片樹葉,無(wú)損壓縮軟件會(huì)記錄下來(lái)這片樹葉的數(shù)據(jù)起始點(diǎn)和終止點(diǎn),然后會(huì)這個(gè)數(shù)據(jù)區(qū)間的顏色進(jìn)行識(shí)別,將相同顏色的數(shù)據(jù)只保留一次,多余的進(jìn)行去除,注意在這個(gè)過(guò)程中,顏色相似的數(shù)據(jù)并不會(huì)被去除。可見(jiàn)無(wú)損壓縮的比率取決于數(shù)字圖像中的相同顏色的重復(fù)率,重復(fù)率越高,無(wú)損壓縮的比率也就越高。需要特別指出的是無(wú)損壓縮可以有效減少數(shù)字圖像的磁盤存儲(chǔ)空間,但是,并不會(huì)減少圖像在內(nèi)存中的信息量,因?yàn)?,將?shù)字圖像的二進(jìn)制數(shù)據(jù)讀取到內(nèi)存時(shí),會(huì)將壓縮的信息重新填充到數(shù)字圖像中。無(wú)損壓縮在當(dāng)前的很多領(lǐng)域都受到的廣泛的應(yīng)用,比如計(jì)算機(jī)程序、移動(dòng)端的手機(jī)APP、醫(yī)療圖像、指紋圖像、工程制圖等。無(wú)損壓縮的具體方法主要有:游程編碼、Huffman編碼、LZW編碼、熵編碼、Shannon-Fano編碼等。雖然無(wú)損壓縮可以完全恢復(fù)壓縮的數(shù)據(jù)信息,也正是基于這個(gè)原因,無(wú)損壓縮的壓縮比并不高,造成無(wú)損壓縮后的數(shù)字圖像的空間占用量依然較大,這是無(wú)損壓縮的一個(gè)難以取舍的關(guān)鍵點(diǎn)。
零樹熵編碼的擴(kuò)展和SA-DWT編碼方式以及嵌入式小波編碼共同組成了SA-DWT編碼。
在形狀自適應(yīng)離散小波變化中通過(guò)SA-DWT之后的系數(shù)個(gè)數(shù),與原來(lái)任意形狀的可視化對(duì)象的像素個(gè)數(shù)是完全相同的;嵌入式小波編碼則是采用了嵌入式編碼和漸進(jìn)式量化編碼,這種編碼方式打破了常規(guī),其編碼復(fù)雜度較低。嵌入式小波編碼采用了較低復(fù)雜度的編碼算法完成了高效的壓縮編碼。
Egger方法提出了一個(gè)應(yīng)用于任意形狀對(duì)象的小波變換方案。具體說(shuō)來(lái),該方法是利用了小波變換的局域特性,在需要壓縮的數(shù)字圖像中,將可視對(duì)象的行像素推到邊界框的右側(cè)邊界相平齊的位置處,然后對(duì)每一行的有用像素實(shí)施小波變換,然后再接下來(lái)的工作中,將另一方向再實(shí)施小波變換。這種變換方法存在一個(gè)問(wèn)題,使用Egger方法,很可能引起數(shù)字圖像重要的高頻部分同邊界部分合并,不能保證分布系數(shù)彼此之間有正確的相同相位,以及可能引起第二個(gè)方向小波分解的不連續(xù)性等問(wèn)題。
離散余弦變化(DCT)是數(shù)字圖像壓縮中的重要算法之一,形狀自適應(yīng)DCT算法的設(shè)計(jì)原理是通過(guò)把一個(gè)任意形狀的可視對(duì)象劃分為兩個(gè)8×8的圖像塊,然后對(duì)每一個(gè)圖像塊進(jìn)行DCT變換,這種變換類似于形狀自適應(yīng)的Gilge DCT變換,但是SA-DCT變換的復(fù)雜度要比Gilge DCT變換復(fù)雜度低的多[6]。SA-DCT會(huì)對(duì)數(shù)字圖像的各列像素進(jìn)行一維DCT變換,之后,SA-DCT會(huì)對(duì)數(shù)據(jù)的下標(biāo)進(jìn)行統(tǒng)計(jì),將下標(biāo)相同的DCT系數(shù)集中到一起,集中起來(lái)之后會(huì)再作一個(gè)一維DCT,最后會(huì)得到一個(gè)DCT系數(shù)位于NxN大小的圖像塊,這樣的圖像塊個(gè)數(shù)并不會(huì)發(fā)生變化,其中直流系數(shù)在圖像塊的左上角,在圖像解碼時(shí),會(huì)根據(jù)隨傳過(guò)來(lái)的形狀信息進(jìn)行數(shù)字圖像的恢復(fù)。但是,SA-DCT并不是沒(méi)有缺點(diǎn),SA-DCT,會(huì)把像素推到一個(gè)正方形邊框的一個(gè)側(cè)邊相平齊。因此,數(shù)字圖像的一些空域相關(guān)性可能因此而導(dǎo)致丟失,倘若再進(jìn)行數(shù)字圖像的行列DCT變換,就可能使數(shù)字圖像的失真較大。
綜上所述,數(shù)字圖像技術(shù)在如今的互聯(lián)網(wǎng)大發(fā)展的背景下,被廣泛應(yīng)用在網(wǎng)絡(luò)互聯(lián)、媒體傳播、醫(yī)療圖像等各個(gè)方面。數(shù)字圖像壓縮算法對(duì)于數(shù)字圖像技術(shù)在多媒體領(lǐng)域的應(yīng)用和發(fā)展有著決定性的作用。優(yōu)秀的數(shù)字圖像壓縮算法能夠極大的減少編碼的復(fù)雜程度,同時(shí)還能夠大大增加圖像的壓縮比率,這對(duì)于數(shù)字圖像在網(wǎng)絡(luò)間的傳輸,在多媒體領(lǐng)域的應(yīng)用發(fā)展都將產(chǎn)生巨大的推動(dòng)作用。近年來(lái),不斷有創(chuàng)新性的理論技術(shù)出現(xiàn)并發(fā)展完善,隨著這些理論技術(shù)研究的不斷深入,未來(lái)數(shù)字圖像處理技術(shù)的發(fā)展前景將會(huì)越發(fā)光明。