DCT變換原理剖析
《DCT變換原理剖析》由會員分享,可在線閱讀,更多相關(guān)《DCT變換原理剖析(16頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、數(shù)字圖像的冗余包括空間冗余、結(jié)構(gòu)冗余、知識冗余和視覺冗余等。 空間冗余是指規(guī)則物體和規(guī)則背景的表面物理特性都具有相關(guān)性,數(shù)字化 后表現(xiàn)為數(shù)字冗余。例如:某圖片的畫面中有一個規(guī)則物體 , 其表面顏色 均勻, 各部分的亮度、飽和度相近 , 把該圖片作數(shù)字化處理 ,生成位圖后 , 很 大數(shù)量的相鄰像素的數(shù)據(jù)是完全一樣或十分接近的 , 完全一樣的數(shù)據(jù)當然 可以壓縮 , 而十分接近的數(shù)據(jù)也可以壓縮 , 因為恢復(fù)后人亦分辨不出它與 原圖有什么區(qū)別 , 這種壓縮就是對空間冗余的壓縮。再比如視覺冗余,視 覺系統(tǒng)對于圖像場的注意是非均勻和非線性的,視覺系統(tǒng)不是對圖像的任 何變化都能感知,因此對圖像進行壓縮后人眼
2、也并不會非常敏銳地察覺畫 面內(nèi)容有所刪減。 所謂的圖像壓縮 編碼技術(shù) 就 是對要 處理的圖像 數(shù)據(jù)按 一定的規(guī)則 進 行變換和組合 , 從而達到以盡可能少的數(shù)據(jù)流 (代碼 ) 來表示盡可能多的 數(shù)據(jù)信 息。 在眾 多的 圖像 壓 縮編碼標 準中, JPEG(Joint Photographic Experts Group) 格式是一種稱為聯(lián)合圖像專家組的圖像壓縮格式,它適用 于不同類型、不同分辨率的彩色和黑白靜止圖像。 而在JPEG圖像壓縮算法中, 有一種是以離散余弦變換 (DCT, Discrete Cosine Transform) 為基礎(chǔ)的有損壓縮算法,是為本論文的主要研究對象。
3、 DCT變換利用傅立葉變換的性質(zhì)。采用圖像邊界褶翻將像變換為偶函 數(shù)形式,然后對圖像進行二維傅立葉變換,變換后僅包含余弦項,所以稱 之為離散余弦變換。 DCT編碼屬于正交變換編碼方式,用于去除圖像數(shù)據(jù)的空間冗余。變 換編碼就是將圖像光強矩陣 ( 時域信號 )變換到系數(shù)空間 (頻域信號 )上進 行處理的方法。在空間上具有強相關(guān)的信號,反映在頻域上是在某些特定 的區(qū)域內(nèi)能量常常被集中在一起,或者是系數(shù)矩陣的分布具有某些規(guī)律。 我們可以利用這些規(guī)律在頻域上減少量化比特數(shù),達到壓縮的目的。圖像 經(jīng)DCT變換以后,DCT系數(shù)之間的相關(guān)性就會變小。而且大部分能量集中 在少數(shù)的系數(shù)上,因此, DCT變換在
4、圖像壓縮中非常有用,是有損圖像壓 縮國際標準 JPEG的核心。從原理上講可以對整幅圖像進行 DCT變換,但 由于圖像各部位上細節(jié)的豐富程度不同,這種整體處理的方式效果不好。 為此,發(fā)送者首先將輸入圖像分解為 8*8 或 16*16 塊,然后再對每個圖像 塊進行二維 DCT變換,接著再對 DCT系數(shù)進行量化、編碼和傳輸;接收者 通過對量化的 DCT系數(shù)進行解碼,并對每個圖像塊進行的二維 DCT反變換。 最后將操作完成后所有的塊拼接起來構(gòu)成一幅單一的圖像。對于一般的圖 像而言,大多數(shù) DCT系數(shù)值都接近于 0,所以去掉這些系數(shù)不會對重建圖 像的質(zhì)量產(chǎn)生較大影響。因此,利用 DCT進行圖像
5、壓縮確實可以節(jié)約大量 的存儲空間。在實驗中,先將輸入的原始圖像分為 8*8 塊,然后再對每個 塊進行二維DCT變換。 編碼 DCT 編碼屬于正交變換編碼。 這類算法通常是將空間域上的圖像經(jīng)過 正交變換映射到系數(shù)空間,使變換后的系數(shù)直接相關(guān)性降低。圖像變換本 身并不能壓縮數(shù)據(jù),但變換后圖像大部分能量集中到了少數(shù)幾個變換系數(shù) 上,再采用適當?shù)牧炕挽鼐幋a便可以有效地壓縮圖像。 信息論的研究表明,正交變換不改變信源的熵值,變換前后圖像的信 息量并無損失,完全可以通過反變換得到原來的圖像值。但圖像經(jīng)過正交 變換后,把原來分散在原空間的圖像數(shù)據(jù)在新的坐標空間中得到集中,對 于大多數(shù)圖像而言
6、,大量的變換系數(shù)很小,只要刪除接近于 0 的系數(shù),并 對較小的系數(shù)進行粗量化,而保留包含圖像主要信息的系數(shù),以此進行壓 縮編碼。在重建圖像進行解碼(逆變換)時,所損失的將是些不重要的信 息,幾乎不會引起圖像失真,圖像的變換編碼就是利用這些來壓縮圖像并 得到很高的壓縮比。 由于圖像可看成二維數(shù)據(jù)矩陣,所以在圖像編碼中多采用二維正交變 換方式,然而其正交變換的計算量太大,所以在實用中變換編碼并不是對 整幅圖像進行變換和編碼,而是將圖像分成若干個 nxn的子圖像分別處 理。這是因為小塊圖像的變換計算比較容易,而且距離較遠的像素之間的 相關(guān)性比距離較近的像素之間的相關(guān)性要小。實踐證明 4x 4、
7、8x 8、16x 16 適合圖像壓縮,這是因為: ① 如果子圖像尺寸取得太小,雖然計算速度快,實現(xiàn)簡單,但壓縮能 力有限; ② 如果子圖像尺寸取得太大,雖然去相關(guān)效果好,因為 DCT等正弦類 變換均漸近最佳化, 同時也漸近飽和, 猶豫圖像本身的相關(guān)性很小, 反而使得壓縮效果不明顯,并且增加了計算的復(fù)雜度。 變換系數(shù)的選擇 對子圖像經(jīng)過變換后,保留變換后的哪些系數(shù)用作編碼和傳輸將直接 影響信號恢復(fù)的質(zhì)量,變換系數(shù)的選擇原則是保留能量集中、方差大的系 數(shù)。 系數(shù)選擇通常有變換變換區(qū)域編碼和變換閾值編碼兩種方法。 1) 變換區(qū)域編碼 變換區(qū)域編 碼是對設(shè) 定形狀的 區(qū)域內(nèi)的 變換系
8、數(shù)進 行量化 編碼區(qū)域 外的系數(shù)被舍去。一般來說,變換后的系數(shù)值較大的會集中在區(qū)域的左上 部,即低頻分量都集中在左上部。保留的也是這一部分。其他部分的系數(shù) 被舍去,在恢復(fù)信號時對它們補 0。這樣以來,由于保留了大部分圖像信 號能量,在恢復(fù)信號后,其質(zhì)量不會產(chǎn)生顯著變化。變換區(qū)域編碼的明顯 缺陷是高頻分量完全丟失。反應(yīng)在恢復(fù)圖像上將是輪廓及細節(jié)模糊。為克 服這一缺陷,可預(yù)先設(shè)定幾個區(qū)域,根據(jù)實際系數(shù)分布自動選取能力最大 的區(qū)域。 2) 變換閾值編碼 變換閾值編碼是根據(jù)實際情況設(shè)定某一大小幅度的閾值,若變換系數(shù) 超過該閾值,則保留這些系數(shù)進行編碼傳輸,其余補 0.這樣,多數(shù)低頻成 分被編碼
9、輸出,而且少數(shù)超過閾值的高頻成分也將被保留下來進行編碼輸 出。這在一定程度上彌補了區(qū)域變換法的不足。 但也有兩個問題需要解決: 一是被保留下來的系數(shù)在矩陣中的位置不是不確定的,因此需增加地質(zhì)編 碼比特數(shù),其碼率相對要高一些;二是閾值需要通過實驗來確定,當然也 可以根據(jù)總比特數(shù)進行自適應(yīng)閾值選擇,但需要一定技術(shù),將增加編碼的 復(fù)雜程度。 基于DCT編碼的JPEGS碼壓縮 基于DCT編碼的JPEG編碼壓縮過程框圖,如圖 2-1所示 圖2-1 基于DCT編碼的JPEG壓縮過程簡化圖 上圖是基于 DCT變換的圖像壓縮編碼的壓縮過程,解壓縮與上圖的 過程相反。 在編碼過程中,首先將輸入圖
10、像分解為 8X8大小的數(shù)據(jù)塊,然后用 正向二維DCT把每個塊轉(zhuǎn)變成 64個DCT系數(shù)值,其中左上角第一個數(shù)值 是直流(DC)系數(shù),即8X 8空域圖像子塊的平均值, 其余的63個是交流(AC) 系數(shù),接下來對 DCT系數(shù)進行量化,最后將變換得到的量化的 DCT系數(shù) 進行編碼和傳送,這樣就完成了圖像的壓縮過程。 在解碼過程中,形成壓縮后的圖像格式,先對已編碼的量子化的 DCT 系數(shù)進行解碼,然后求逆量化并把 DCT系數(shù)轉(zhuǎn)化為8 X 8樣本像塊(使用二 維DCT反變換),最后將操作完成后的塊組合成一個單一的圖像。這樣就 完成了圖像的解壓過程。 1.2 二維離散余弦變換 圖像數(shù)據(jù)壓縮的目
11、的是在滿足一定圖像質(zhì)量的條件下,用盡可 能少的 比特數(shù)來表示原始圖像,以提高圖像傳輸?shù)男屎蜏p少圖像存儲的容量, 在信息論中稱為信源編碼。圖像壓縮是通過刪除圖像數(shù)據(jù)中冗余的或者不 必要的部分來減小圖像數(shù)據(jù)量的技術(shù),壓縮過程就是編碼過程,解壓縮過 程就是解碼過程。 假設(shè)有一個無記憶的信源 ,它產(chǎn)生的消息為 £ ?, 1乞i乞N ,其出現(xiàn)的概 率是已知的,記為P ai o則其信息量定義為: I q i=-log2 P ai (2-1) 由此可見一個消息出現(xiàn)的可能性越小,其信息量就越多,其出現(xiàn)對信 息的貢獻量越大,反之亦然。 信源的平均信息量稱為“熵” entropy,可以表示為: N
12、 N H 八 P a: I P 可 小 P ai logP ai (2-2) i 4 i -4 對上式取以2為底的對數(shù)時,單位為比特( bits ): N H - 八 P ai log2 P ai (2-3) i -4 在圖像壓縮中,壓縮比是一個重要的衡量指標。 可以定義壓縮比為: C=原始數(shù)據(jù)的平均比特率( B) /壓縮數(shù)據(jù)的平均比特率( H) DCT變換后系數(shù)的量化是引起失真的主要原因 ,壓縮效果與圖像內(nèi)容本身 有較大的關(guān)系 在傅里葉級數(shù)展開式中,如果被展開的函數(shù)是實偶函數(shù),那么,其傅 里葉技術(shù)中只包含余弦項,在將其離散化由此可導出余弦變換,或稱之為 離散余弦變換(D
13、CT, Discrete Cosine Transform)。 2 n」n」 (2x+1 ) f2y + 1 、 F(u,v )=c(u C(v )書瓦 Z f(x,y)cos^-u 兀[cos ^-v 兀 (2-4) N xm v i 2N 丿 I 2N 丿 u =0, v =0 其它 式中,x,y,u,v=0「N_1。c(u—12 i1 二維離散余弦逆變換公式為 f x,y = 2 N A 、 N u z0 N」 c u c v F u,v cos v z0 廣 2x+1 i 2N u二 cos2y S二 丿I 2N 丿 (2-5) 式中,x,
14、 y,u,v =0,1, , N -1 [丄 c(u)二 c(v) = 2 i1 u = 0,v = 0 其它 JPEG采用的是8X 8大小的子塊的二維離散余弦變換。在編碼器的輸 入端,把原始圖像順序地分割成一系列 8X8的子塊,子塊的數(shù)值在 到127之間。采用余弦變換獲得 變換公式,如式(2-6)所示。 1 7 F u,v c u c v ' 4 64個變換系數(shù)。 x =0 7 _ 二f x,y cos - V 16 y=0 2x cos^v二 丿I 16 丿 -128 (2-6) 式中,x, y,u,v =0,1, ,7。 c(u) = c(
15、v)=丿 72 i 1 u =0,v =0 其它 在MATLAB仿真實現(xiàn)中,主要是采用二維 DCT變換的矩陣式定義來實現(xiàn) 的,矩陣式定義可以表示為: 〔F (u , v) I -丨 A 丨丨 F (u, v) I 丨 A I, [ f (x, y)丨-丨 A 丨丨 f ( x, y)丨丨 A 丨(2-7 ) 其中f(x, y)是空間數(shù)據(jù)陣列,F(xiàn)(u,v)是變換系數(shù)陣列,I.A 1是變換矩陣 I.A T是I.A 的轉(zhuǎn)置。 The basis functions of the DCT of 64X64 an Image 系數(shù)的量化 量化是對經(jīng)過 DCT變換后的頻率系數(shù)
16、進行量化, 其目的是減小非 “ 0” 系數(shù)的幅度以及增加“ 0”值系數(shù)的數(shù)目,它是圖像質(zhì)量下降的最主要原 因。 量化過程定義了一種從實數(shù)到整數(shù)映射的方法,它是通過降低 DCT 變換產(chǎn)生的數(shù)值結(jié)果的精確度,來減少存儲變換后的系數(shù)需要的比特數(shù)。 定義量化公式為: K(u, v)=int F(u, V) (2-8) 2(u,v)丿 其中,F(xiàn)(u,v)為量化前的 DCT系數(shù),K(u,v)為量化后的 DCT系數(shù), 而Q(u,v)為量化步長,int 表示取整。 對于基于DCT的JPEG圖像壓縮編碼算法,量化步距是按照系數(shù)所在 的位置和每種顏色分量的色調(diào)值來確定。因為人眼對亮度信號比對色差
17、信 號更敏感,因此使用了表 2-1所示的量化表。此外,由于人眼對低頻分量 的圖像比對高頻分量的圖像更敏感,因此表中的左上角的量化步距要比右 下角的量化步距小。 亮度和色度因為代表的圖像的信息量不同,亮度代表了圖像的低頻分 量,色度代表了圖像的高頻分量,要分別對亮度和色度進行量化,所以量 化表也是不同的。 量化就是用 DCT變換后的系數(shù)除以量化表中想對應(yīng)的量化階后四舍 五入取整。由于量化表中,左上角的數(shù)值比較小,而右下角的數(shù)值比較 大, 因而能夠起到保持低頻分量,抑制高頻分量的作用。 JPEG壓縮色度和亮度量化表如表 2-1所示。 表2-1 JPEG壓縮色度和亮度量化表 亮度量化表
18、色度量化表 16 11 10 16 24 40 51 61 17 18 24 47 99 99 99 99 12 12 14 19 26 58 60 55 18 21 26 66 99 99 99 99 14 13 16 24 40 57 69 56 24 26 56 99 99 99 99 99 14 17 22 29 51 87 80 62 47 66 99 99 99 99 99 99 18 22 37 56 68 109 103 77 99
19、 99 99 99 99 99 99 99 24 35 55 64 81 104 113 92 99 99 99 99 99 99 99 99 49 64 78 87 103 121 120 101 99 99 99 99 99 99 99 99 79 92 95 98 112 100 103 99 99 99 99 99 99 99 99 99 量化會產(chǎn)生誤差,上圖是綜合大量的圖像測試的實驗結(jié)果,對于大部 分圖像都有很好的結(jié)果。表中可以看出,高頻部分對應(yīng)的量化值大,目的 就是將高
20、頻部分編程接近于 0,以便以后處理。 JPEG可以在壓縮比和圖像 質(zhì)量間作取舍。方法就是改變量化值。如果量化值放大一倍,則有更多的 系數(shù)量化為0,提高了壓縮比。 在本課題研究中,用于 DCT變換的圖像為灰度圖像,故只考慮亮度即 可。 量化系數(shù)的編排 經(jīng)過DCT變換后,低頻分量集中在左上角,其中 F(0 , 0)(即第一行第 一列元素)代表了直流(DC)系數(shù),即8X 8子塊的平均值,要對它單獨編碼。 由于兩個相鄰的 8X8子塊的DC系數(shù)相差很小,所以對它們采用差分編碼 DPC M可以提高壓縮比,也就是說對相鄰的子塊 DC系數(shù)的差值進行編碼。 8X 8的其它63個元素是交流(AC)系數(shù)
21、,采用行程編碼。 所以量化后的系數(shù)要重新編排,目的是為了增加連續(xù)的“ 0”系數(shù)的 個數(shù),就是“ 0”的游程長度,方法是按照 Z字形的式樣編排。 DCT變換后低頻分量多呈圓形輻射狀向高頻率衰減,因此可以看成按 Z字形衰減。因此,量化系數(shù)按 Z字形掃描讀數(shù),這樣就把一個 8X 8的矩 陣變成一個1 X 64的矢量,頻率較低的系數(shù)放在矢量的頂部。 量化后的DCT系數(shù)的編排如圖 2-2所示。 蘭值 AC系數(shù)開始 圖2-2量化DCT系數(shù)的編排 量化后的DCT系數(shù)的序號如表2-2所示。 表2-2 量化DCT系數(shù)的序號 0 1 5 6 14 15 27 28 2 4
22、 7 13 16 26 29 42 3 8 12 17 25 30 41 43 9 11 18 24 31 40 44 53 10 19 23 32 39 45 52 54 20 22 33 38 46 51 55 60 21 34 37 47 50 56 59 61 35 36 48 49 57 58 62 63 1.3 2D-DCT 與 2D-FFT 的比較 這兩種運算體現(xiàn)在程序中, 分別調(diào)用了 1D-FFT和1D-DCT變換,而1D-DCT 又是以1D-FFT為核心的。 設(shè)計
23、的程序是以頻率抽取的基 2FFT算法為基本理論的,因此蝶形運算 后,需要進行排序,根據(jù)理論推算應(yīng)該采取倒位序的方法,對于一個 N=8 的蝶形運算,其結(jié)果下標排列應(yīng)是: 0, 4, 2,6,1,5,3,7。倒位序后 回到了自然排列順序 0, 1,2, 3,4, 5,6,7。一維快速傅立葉正反變換 包含于一個核心子程序中,所以在求其反變換時,先將 X(K)取共軛變換, 在將X(K)的虛部乘以-1 ,然后就可以直接訪問 FFT的子程序,最后再對運 算結(jié)果取一次共軛變換并乘以常數(shù) 1/N即可得到x (n)值。這種IFFT算 法可以完全不改動 FFT的程序。在進行二維的 FFT變換時,可把二
24、維的FFT 變換變成一維后直接調(diào)用 FFT子程序。因為,二維離散傅立葉變換 (DFT) 處理圖像的時間比較長,其處理結(jié)果和 FFT處理結(jié)果相同;FFT運算量非 常大,實時性差,處理圖像時沒有實用性。 傅里葉變換的不足之處在于子圖像的變換系數(shù)在邊界處的不連續(xù)而造 成恢復(fù)的子圖像在其邊界也不連續(xù),于是由于各恢復(fù)子圖像構(gòu)成的整幅圖 像將呈現(xiàn)隱約可見的子圖像的方塊狀結(jié)構(gòu),影響圖像質(zhì)量。 圖2-3 2D-FFT的變換譜 圖2-4 2D-DCT的變換譜 可以看出,原圖像經(jīng) FFT變換后頻域能的量主要集中在兩條對角線附 近;DCT變換后變換域的能量主要集中在低頻分量附近(即左上角)。圖
25、 像壓縮中的DCT編碼正是利用DCT變換的這一特性,在對二維圖像進行 DCT 變換后,只對變換域低頻分量進行編碼,拋棄部分高頻分量,減少攜帶的 信息量,從而實現(xiàn)對圖像的有損壓縮編碼 DCT 變換與 FFT 變換類似,但 DCT 變換可以使用較少的頻譜系數(shù)來 表示被變換的圖像數(shù)據(jù)。在接收端,用逆變換 IDCT 將這些頻譜系數(shù)恢復(fù) 成的圖像數(shù)據(jù),與變換前的數(shù)據(jù)更接近。因此在圖像壓縮算法中常用 DCT 變換。 實驗結(jié)果及分析 離散余弦變換 DCT的MATLAB實現(xiàn)有兩種方法,一種是基于FFT的快 速算法,這是通過 MATLAB工具箱提供的 dct2函數(shù)實現(xiàn)的;另一種是DCT 變換矩陣方
26、法。變換矩陣方法非常適合做 8*8 或16*16 的圖像塊的DCT 變換,工具箱提供了 dctmtx函數(shù)來計算變換矩陣。 方法1: 該方法出發(fā)點是對整幅圖像進行 DCT變換,主要應(yīng)用MATLAB勺圖像處理 工具箱中的基于FFT的有大量輸入的快速算法進行處理的 dct2函數(shù):具體 程序?qū)崿F(xiàn)如下: A=imread('D:\rabit\rabit.bmp'); l=rgb2gray(A); DCT=dct2(I); % 余弦變化 DCT(abs(DCT)<10)=0; % 把變換矩陣中小于 10的值置換為0,然后用 idct2重構(gòu) IDCT=idct2(DCT); subpl
27、ot(2,2,1),imshow(l);title(' 灰度圖像') subplot(2,2,2),imshow(IDCT,[0 255]); title(' 反余弦變換恢復(fù)圖') subplot(2,2,3),imshow(DCT);title('DCT 變換') subplot(2,2,4),imshow(log(abs(DCT)),[]); title(' 余弦變換系數(shù)'); figure,mesh(DCT);title(' 變換譜三維彩色圖') 灰度團像 (c) (d) 變換i普三維彩魚團 8000「 6XoJ--" 4000^-' 2000 L- -2
28、000 (e) 圖4-1 DCT變換 從(b)圖,“反余弦變換恢復(fù)圖”中,可以看出,該方法偏重圖像的視 覺效果,按照這種方法重構(gòu)的圖像與原圖幾乎沒有差別。 從(c)圖,“ DC■變換”圖中可以看出, DCT譜集中在左上部,只有左 上部分不為零值。 通過觀察(e)圖DCT譜的彩色三維圖也可得到這一結(jié) 論。需要說明的是,對于本課題選取的這幅圖像而言,其低頻信息比較多, 分布擴散至右下部。因此并未像傳統(tǒng)使用的 Lena圖一樣,僅有少部分有效 信息集中在左上角。 DC■變換系數(shù)如下: Array fiditGr - DCT 審 x e ■ ■ t. Stack:] E
29、:.:j.c 田EH曰曰| 口丹K 1 2 3 4 5 6 7 8 9 1 5439.8 47.6as -2601.5 47.706 1867.7 -7E.571 ■1361 9 270 44 709.51 2 -1520.6 -136.23 750 S7 G7.381 ■€54.45 -113 82 330.51 139 73 133.^3 n 3 -1790.9 276 J1 ^377 51 ■27564 ■ 1492.4 263.71 657.56 -462 58 -17S.41 4 467
30、 23 ■163.75 -1017 49.D73 2034.5 163.63 ■1260.2 I-404 66 &40 93 5 -734 OS ■108.舊 B19.79 344.71 1059.5 ^437.05 986.4 713.91 □ 6 ^389.08 -37.96 B6B.14 73.627 -92B. 17 -60.940 -442.25 274.11 衛(wèi) B6.33 7 @ -236.69 440.99 ^6.32 -581.79 673.17 525.37 -9&3. IS -623.
31、77 -326.32 -647.44 -330.92 577.B2 363.46 -9B9.71 -112.35 453.54 -157.49 51.587 g 528.52 -154.32 -370 4' 413.96 0 -318.B 28.255 406.73 ■12.&31 w 343.63 14779 -370.43 -304.51 -437.29 27 263 E31.47 42.753 128.% 11 316 83 250.73 93.873 -280.53 -108.64 113 99
32、 2327 18.317 -119.68 12 -2U75 泉開.92 -52.072 107 54 0 13B1E 100,54 -233 77 14.014 13 ■27日 75 76 276 81S13 50.434 ^406.4 -25 亦3 ■92 259 d47 07 ~0 14 256 S9 ■134.12 ^760.76 (66.99 40Q.54 -3U.03 61 Q08 35D 72 -1B6.57 15 296.99 ■11&35 .^247.97 -159.57 211.94
33、 94.339 -125.21 134,03 166.44 IB ^7.09 59.098 144.95 ^210.11 ^36.167 229.4 102.05 -277.24 ^63.324 17 -175.94 24.596 351.IB 39.474 ■€2.559 34.35B ■^1.696 -157.01 0 1S -431.95 -21712 373.98 317 8G -223 91 -240.34 125.51 1B7.18 -340.06 19 -97746 90.77S 250.66
34、 -20.383 鈕血 -112.51 59.536 18S.78 29.275 20 -528 42 63.947 565.58 -263.09 -476.75 3C0.38 1S9.24 ■1M.3 -120.12 - 21 103 65 43.85S 19.523 -32.512 71 319 -14.966 -74.93 0 -39.292 22 214 74 -143.23 -2S6 96 266.01 0 499 68 -10 582 5S.5S7 ^154.07 A I ±1 | OCT> I
35、> A x IDCT > 方法2: 該方法的出發(fā)點是先將圖像分解為 8*8或16*16個數(shù)據(jù)塊,然后分別對 分解后的每個數(shù)據(jù)小方塊進行 DC■變換,主要應(yīng)用 MATLA的圖像處理工具 箱中dctmtx函數(shù)返回DC■變換矩陣,而后進行相關(guān)處理。樣本程序?qū)崿F(xiàn)如 下: A=imread('D:\rabit\rabit.bmp'); l=rgb2gray(A); 匸im2double(l);% 將圖像轉(zhuǎn)換為雙精度格式 T=dctmtx(8);%返回一個8*8的DCT變換矩陣 B=blkproc(l,[8 8],'P1*x*P2',T,T');% 對原圖像進行 DCT 變換 ma
36、sk=[1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];% 保留了 10個DCT系數(shù)重構(gòu)圖像 B2=blkproc(B,[8 8],'P1.*x',mask); %數(shù)據(jù)壓縮,丟棄右下角高頻數(shù)據(jù) l2=blkproc(B2,[8 8],'P1*x*P2',T',T); 泌行DCT反變換,得到壓縮后的圖像 subplot(1,2,1),imshow(l) title(' 原始圖像') subplot(1,2,2),imshow(l2) title('
37、壓縮圖像1') disp('壓縮后圖像I2的大小’);whos('I2'); disp('壓縮前圖像 A的大小’);whos('A'); disp('壓縮后圖像I的大小’);whos(T); (a) (b) 壓縮團像2 (c) 壓縮團像d (d) (e) (f) 圖4-3 基于DCT的圖像壓縮 對于(b)圖“壓縮圖像 1”,仿真中僅保留了 3個DCT系數(shù),約占 5%
38、從結(jié)果來看,圖像壓縮的效果出現(xiàn)了“塊”失真。并且隨著量化系數(shù) 的進一步減少,失真情況會越來越嚴重,這說明圖像信息丟失嚴重。 對于(c)圖“壓縮圖像2”,仿真中保留了 10個DCT系數(shù),占15%,比 較原圖和重構(gòu)圖像,可以發(fā)現(xiàn):在拋棄 85%的系數(shù)后,重構(gòu)圖像基本上恢 復(fù)了原圖像的信息,可以比較清楚地辨清亮度上的差異,大部分的信息都 很好的保留下來。然而細節(jié)部分,即邊緣部分,也就是高頻分量所攜帶的 信息,并沒有很好地重現(xiàn)出來。因為我們把高頻分量通過 mask表中的0值 控制全部舍棄了。而且從方法 1中的“ DCT變換” 一圖中,我們可以清楚地 看到,對于本圖來說,非 0值并非很好地集中在
39、左上部很小的部分,而是 分布在幾乎85%的區(qū)域。因此,當我們只取了左上部 15%的DCT系數(shù)時,當 然不能很好地恢復(fù)剩余大部分的細節(jié)。當然,在采用這種方法來實現(xiàn)壓縮 算法時,可以通過修改 mask變量中的DCT系數(shù)來更好地比較仿真結(jié)果。 在(d)圖“壓縮圖像3 ”中,則是對半取舍 DCT系數(shù)。較之(c)圖的 效果又有了明顯的進步,邊緣細節(jié)信息已經(jīng)得到了很好的保留和重現(xiàn)。 在(e)圖“壓縮圖像 4”中,便是把 mask中的DC係數(shù)取85%地進行了 保留,而只舍去了 10個右下角的DCTS數(shù)。可以看出,該圖中的細節(jié)信息 較之(d)圖又有了更好的體現(xiàn),邊緣等部分輪廓比較清晰,與之前的壓 縮圖
40、像進行對比,圖像的恢復(fù)重現(xiàn)效果明顯好了很多。 而在(f)圖“壓縮圖像5”中,則是把“壓縮圖像 1”中的DCT系數(shù)的 取舍完全顛倒過來,即,“壓縮圖像 2”中,左上部分取1的系數(shù)變?yōu)槿?, 同時右下部分取為 0的DCT系數(shù)則變?yōu)槿?保留。從低頻和高頻的角度來說, 即是將承載了灰度圖像很大部分重要亮度信息的低頻部分舍棄,而僅僅將 右下角的承載邊緣細節(jié)信息的高頻部分予以保留。效果如“壓縮圖像 5 ” 所示,我們可以明顯看到僅僅有圖像的邊緣信息顯示,而原始圖像最重要 的信息則沒有保留和顯現(xiàn)。 而當把圖像分為 16*16數(shù)據(jù)塊進行 DCT變換時,算法的復(fù)雜度急劇上 升,但采用較大的子塊可以明顯減
41、少圖像分塊效應(yīng)。 實驗結(jié)果如下:(程序見附錄五) b )圖“壓縮圖像 1”是 16*16 子塊模式中僅保留了 6 個左上角 DCT 系數(shù)的效果,可以看出明顯的塊失真效果。 (c)圖“壓縮圖像 2”是保留 了 10個DCT系數(shù),效果與 8*8子塊模式中保留 3個DCT系數(shù)的效果差不 多,但要稍微好一點。 (d) 圖“壓縮圖像 3”中保留了 36個DCT系數(shù),約占14%,此時與 8*8子塊模式中的保留了 15%的DCT系數(shù)的“壓縮圖像 2”效果相近,并 且稍微更清晰一些。 (e) 圖保留了 3/8的DCT系數(shù),而(f)圖“壓縮圖像5”中保留了 50% 的DCT系數(shù),和8*8子塊模式中同樣對半取舍系數(shù)的( d)圖進行對比, 可以看出 16*16 子塊的效果要更好一些。 由此可見,將圖像劃分為更小的數(shù)據(jù)塊進行 DCT變換和壓縮的效果更 好,然而復(fù)雜度上升。 當圖像壓縮比增大時,也即壓縮效率減小時,圖像的質(zhì)量也將降低, 人們可以根據(jù)需要的圖像的質(zhì)量來規(guī)定壓縮比的大小。
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復(fù)習題含答案
- 1 各種煤礦安全考試試題含答案