趙宇杰 石海麗 張妍 高楠 蘭州城市學院電子與信息工程學院
隨著信息處理技術和計算機技術的飛速發展,數字圖像處理技術在各個領域受到了廣泛重視并取得了眾多成就。語音、圖像、數據等多媒體的傳輸、處理、存儲、檢索技術成為網絡技術的重要組成部分,圖像壓縮技術尤為重要。離散余弦變換在圖像壓縮和其他處理中具有計算速度快的優勢。
DFT是數字圖像處理中常用變換,離散余弦變換(DCT)是其中的一種特殊情況。傅里葉變換使用無窮區間上的復正弦基函數和信號的內機描述信號中的總體頻率分布,或者是將信號向不同頻率變量基函數矢量投影。它存在的一個很大問題是參量均是復數,在數據的描述上相當于實數的兩倍。DCT的變換核為實數,計算復雜性低、可分離、有快速算法,因此計算速度比DFT 要快得多,被廣泛地使用。

其中,
其中

通常,數字圖像的DCT系數的值很接近于0,若忽略這些值,在進行圖像重構時不會使圖像質量明顯下降[2]。在合理近似時,壓縮技術應該使用最少的系數,壓縮大小取決于系數多少。DCT壓縮原理如圖1所示,G為輸入數字圖像,G′為逆變換后的復原圖像,U為二維正交變換,U′為二維正交逆變換,A為變換域中的變換系數,A′為量化后的變換系數。
DCT的Matlab實現有兩種方法:一種是基于FFT的快速算法,通過工具箱中的dct2函數實現;另一種是DCT變換矩陣法[3]。變換矩陣法常做8行8列或16行16列的DCT變換:首先進行圖像分解,然后進行二維DCT,再將DCT系數進行編碼和傳送,解碼時進行逆變換,最后進行圖像組合。在此過程中,工具箱中的dctmtx函數能夠用來計算變換矩陣。
通過使用Matlab語言中的imread、rgb2gray、dct2函數讀取圖片信息、進行灰度轉換、圖像余弦變換系數計算后,按照變換矩陣法,使用dctmtx、mask、blkproc等函數將圖像進行壓縮的效果如圖2所示。

圖2 原始圖像及其經壓縮、解壓縮后的效果對比
在上述采用DCT進行圖像壓縮的實例中,去掉了一些允許忽略的高頻成分,很好的保留了圖像的絕大部分成分,保證了圖像重構后失真很少,壓縮與解壓效果良好。
[1]趙小川,何灝,繆遠誠.MATLAB數字圖像處理實踐[M].北京:機械工業出版社,2013:42-75.
[2]崔春燕,李彩霞.基于DCT變換的數字圖像壓縮技術及其MATLAB實現[J].現代電子技術,2002,(9):7-9.
[3] 張汗靈.MATLAB在圖像處理中的應用[M].北京:清華大學出版社,2008:81-95.