freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

數字圖像jpeg壓縮編碼算法研究-閱讀頁

2024-12-26 02:06本頁面
  

【正文】 塊間DPCM Z 字型掃描 Huffman編 碼 Huffman編 碼 DC 哈夫曼表 壓縮數據 AC 哈夫曼表 解 碼 碼 表 反量化 量化表 IDCT 恢復的圖像數據 量化表 數字圖像 JPEG 壓縮編碼算法研究 8 圖 22 矩陣分塊圖 離散余弦變換( DCT) 圖像數據塊分割后,即以 MCU 為單位順序將 DU 進行二維離散余弦變換。對每個 88 的數據塊 DU 進行 DCT 后,得到的 64 個系數代表了該圖像塊的頻率成分,其中低頻分量集中在左上角,高頻分量分布在右下角 。 系數量化 在 DCT 處理中得到的 64 個系數中 ,低頻分量包含了圖像亮度等主要信息,從空間域到頻域的變換中,圖像中的緩慢變化比快速變化更易引起的人眼的注意,所以在重建圖像時,低頻分量的重要性高于高頻分量。 在 JPEG 標準中,用具有 64 個獨立元素的量化表來規(guī)定 DCT 域中 相應的 64 個系數的量化精度,使得對某個系數的具體量化階取決于人眼對該頻率分量的視覺敏感程度。不過,一般采用表 21,表 22 所示的量化表。量化就是用 DCT 變換后的系數除以量化表中相對應的量化階后四舍五入取整。 表 21 亮度量化值表 16 11 10 16 24 40 51 61 12 12 14 19 26 58 60 55 14 13 16 24 40 57 69 56 14 17 22 29 51 87 80 62 18 22 37 56 68 109 103 77 24 35 55 64 81 104 113 92 49 64 78 87 103 121 120 101 72 92 95 98 112 100 103 99 1 2 5 6 3 4 7 8 …… Y矩陣 Cb Cr 1 2 3 …… 8 16 M 8 M/2 8 M/2 8 M/2 8 M/2 9 表 22 色度量化值表 用程序實現量化過程的原理步驟。經過量化后的 DCT 系數 矩陣,除DC 值一般不為零外, AC 系數大多是在零點附近的浮點數。經過 “Z”字形排序以后,新的 88 塊中的元素值如下:等式左邊表示元素位置,等式右邊表示元素值為排序之前某位置中的元素值:如 SB(15)= SB(5),則左邊表示排序后的 88 塊中第 15 個元素的值等于排序之前第 5 個元素的值。例如 SB(15)= CB(5)換成 SB(15)= SC(5)。 編碼 編碼的主要流程,如圖 26 所示: 11 圖 26 編碼的流程 圖 前面說到變換后的一個 88 頻率系數矩陣由一個 DC 值和 63 個 AC 值構成,編碼時對 DC 值和 AC 值用不同的哈夫曼編碼表,對亮度和色度也需用不同的哈夫曼編碼表,所以必須使用四張不同的哈夫曼編碼表,才能完成 JPEG 編碼。根據這個特點,才使用了差分脈沖調制編碼( DPCM)技術,對相鄰圖像塊之間量化 DC 系數的差值( Delta)進行編碼, Delta= DC(0, 0)kDC(0, 0)k1 具體做法是在 Y、 Cb、 Cr 頻率系數矩陣中,后一個 88 塊的 DC 值減去前一個 88塊的 DC 作為后一個 88 塊新的 DC 值,并保留后一個 88 塊的 DC 原值,用于后一個88 塊的差值 DC 運算,亦即每次后一個 88 塊的 DC 值減去的是第一個 88 塊的原來DC 值,而不是經運算后的差值。 表 23 Y矩陣 DC差值參考表 DC 差值二進制碼的碼長 Huffman 識別碼的碼長 Huffman 識別碼 0 2 00 1 3 010 2 3 011 3 3 100 4 3 101 5 3 110 6 4 1110 7 5 11110 8 6 111110 9 7 1111110 10 8 11111110 11 9 111111110 DCT 脈差調變編碼 ( DPCM) DC哈夫曼編碼 ( DC Huffman coding) ZIGZAG 掃描( SCAN) 行程編碼 ( RLE) AC 哈夫曼編碼 ( AC Huffman coding ) JPEG 檔案輸出 ( *.jpg) 數字圖像 JPEG 壓縮編碼算法研究 12 表 2 4 Cb、 Cr矩陣 DC差值參考表 二進制碼的碼長 Huffman 識別碼的碼長 Huffman 識別碼 0 2 00 1 2 01 2 2 10 3 3 110 4 4 1110 5 5 11110 6 6 111110 7 7 1111110 8 8 11111110 9 9 111111110 10 10 1111111110 11 11 11111111110 2. AC 編碼: 由于哈夫曼編碼的對象是整數,所以在做哈夫曼編碼之前,還得對量化后的 DCT系數矩陣進行取整。為了把盡可能多的其值為 0 的 AC 系數串在一起,以利于第四步的 AC 編碼及提高壓縮比,還必須把 YcbCr 矩陣中的每一個 88 塊中的 64 個元素進行 “Z”字形排序, 這樣就可以做到把盡可能多的 0 串在一起 。在這里 RLE 壓縮編碼的就是用一個數值表示為 0 的 AC 值前有幾個 AC 值為 0。 做完 RLE 壓縮后,再對不為 0 的 AC 值進行哈夫曼編碼,跟 DC 值一樣進行,只不過用的是另兩張哈夫曼編碼表,完整的 AC 編碼如圖 27: 圖 27 完整 AC 編碼 圖 完整的 AC 編碼碼串包括三部分:( 1)的位置記錄 “0”的個數;( 2)的位置為哈夫曼識別碼;( 3)的位置的 AC 值的二進制代碼值這樣的一個碼串才算是一個完整的 AC哈夫曼碼串 。 位計數是將幅度可變長度整型編碼所使用的位數目。下面是位計數及用這個數目編碼的系數幅度: 位計數 幅度 1 - 1, 1 2 - 3 到- 2, 2 到 3 3 - 7 到- 4, 4 到 7 4 - 15 到- 8, 8 到 15 5 - 31 到- 16, 16 到 31 6 - 63 到- 32, 32 到 63 7 - 127 到- 63, 64 到 127 8 - 255 到- 128, 128 到- 255 9 - 511 到- 256, 256 到 511 10 - 1023 到- 512, 512 到 1023 要注意的是每一個位計數編碼高低值的對稱序列,中間跳過的值用表中從 1 位開始的較小的位計數進行編碼。屬于無損壓縮編碼。這樣,處理全部信息的總碼長一定小于實際信息的符號長度。(注意,一定要遞減) 2)將最下面的兩個最小出現概率進行合并相加,得到的結果作為新符號的出現概率。 4)在合并運算時,概率大的符號用編碼 0 表示,概率小的符號用編碼 1 表示。 下面我舉個簡單例子 : 一串信號源 S= {s1,s2,s3,s4,s5}對應概率為 p= {40, 30, 15, 10, 5},(百分率) 按照遞減的格式排列概率后,根據第二步,會得到一個新的概率列表,依然按照遞減排列,注意:如果遇到相同概率,合并后的概率放在下面!最后概率最大的編碼為 0,最小的編碼為 1, 所以,編碼結果為 : s1=1 s2=00 s3=010 s4=0110 s5=0111 霍夫曼編碼具有如下特點: 數字圖像 JPEG 壓縮編碼算法研究 14 1 編出來的碼都是異字頭碼,保證了碼的唯一可譯性。因此譯碼時間較長,使得霍夫曼編碼的壓縮與還原相當費時。 4 對不同信號源的編碼效率不同,當信號源的符號概率為 2 的負冪次方時,達到 100%的編碼效率;若信號源符號的概率相等,則編碼效率最低。 限于篇幅原因,在此就不再詳述。 3 壓縮以后的數據,對于圖像數據的存儲來說,節(jié)省了存儲空間,使得原有的存儲設備, 能夠用來存儲更多的信息。 在整個壓縮過程中 ,最難的部分就是第四步,哈夫曼編碼用程序實現起非常繁瑣,必須判斷一個個 DC( AC)的值,以及轉換成二進制代碼后的碼長,再去對照哈夫曼編碼表進行編碼,比如對一個 DC值編碼,首先得先判斷該 DC的值在哪段范圍內,在某一段范圍內的數值,其二進制代碼長相等。 15 第 3 章 基于 MATLAB 的算法實現 在計算機數字圖像文件常用格式中 ,作為靜止圖像壓縮編碼技術國際標準推出的JPEG(Joint Photographic Experts Group)格式是一種稱為聯(lián)合圖像專家組的圖像壓縮格式 ,它適用于各種不同類型、不同分辨率要求的彩色和黑白靜止圖像 .在 JPEG 各類圖像壓縮算法中 ,基于離散余弦變換 (DCT,Discrete CosineTransform)的圖像壓縮編碼過程稱為基本順序過程 ,它應用于絕大多數圖像壓縮場合 ,并且它能在圖像的壓縮操作中獲得較高的壓縮比 ,另外 ,重構圖像與源圖像的視覺效果基本相同 .應用高級語言 (如 Basic,C,Fortran)編寫的仿真程序來實現這一基于 DCT 的 JPEG 圖像壓縮編碼算法則較為麻煩 ,而且仿真效 果也不是十分理想 .本文主要應用 中發(fā)布的影像處理工具箱中的相關函數和命令來實現基于 DCT 的 JPEG 圖像壓縮編碼理論算法的仿真 . 是一套功能十分強大的工程計算及數據分析應用軟件 ,廣泛應用于工業(yè)、電子、控制、信號及圖像處理等各領域 . 本身除了提供強大的圖形繪制和輸出功能外 ,同時還發(fā)布了影像處理工具箱 (Image Processing Toolbox),專門用于圖像的處理 . 基于 DCT的 JPEG圖像壓縮編碼理論算法及 MATLAB仿真基礎 基于 DCT 的 JPEG 圖像壓縮編碼算法的表述 在編碼過程中 ,首先將輸入圖像分解為 88 大小的數據塊 ,然后用正向二維 DCT 把每個塊轉變成 64 個 DCT 系數值 ,其中 1 個數值是直流 (DC)系數 ,即 88 空域圖像子塊的平均值 ,其余的 63 個是交流 (AC)系數 ,接下來對 DCT 系數進行量化 ,最后將變換得到的量化的 DCT 系數進行編碼和傳送 ,形成壓縮后的圖像格式 。 結合 仿真對上述算法的幾點解釋 1 離散余弦變換 (DCT)定義 二維 DCT 的解析式定義可以由下式表示 : ( 31) 其中 f(x,y)是空間域二維向量之元素 ,x,y=0,1,2,…,N 1,F(u,v)是變換系數陣列元素 。原始的RGB 真彩色圖像的一個像素用 R、 G、 B 等三基色來共同刻畫,那么一個 88 像素數據塊,可以得到 3 個 88 的三基色陣,記為 R 陣、 G 陣、 B 陣。顏色模式。因此,就不再包括這部分的程序。 利用 MATLAB 工具箱中 double 函數轉換數據為雙精度型; double 函數的語法格式: B=double( A) 用 rgb2gray 函數轉換 RGB 圖像或顏色映像表為灰度圖像; rgb2gray 函數的語法格式: I=rgb2gray( A), I= rgb2gray( RGB) 。 Dct2 函數的語法格式: B=dct(A),B=dct2(A,m,n),B=dct2( A,[m n]) 2 量化部分 88 的模塊經過 DCT 變換后,其低頻分量集中在左上角,高頻分量集中在右下角。這里的量化操作,就是將某一個值除以量化表中對應的值。 3 “之 ”字型排序 經過 DCT 變換后,低頻分量集中在 左上角,其中 F(0, 0)(即第一行第一列元素 )代表了直流 (DC)系數,即 88 子塊的平均值,要對它單獨編碼。 88 的其它 63 個元素是交流 (Ac)系數,采用行程編碼。 這一模塊主要使用函數 zzscan 實現: function zigzaged=zigzag(bloc
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1