資源描述:
《基于dct的圖像編解碼設計》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、1.緒論MATLAB是由美國mathworks公司發(fā)布的主要而對科學計算、可視化以及交互式程序設計的高科技計算環(huán)境。它將數(shù)值分析、矩陣計算、科學數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境屮,為科學研究、工程設計以及必須進行冇效數(shù)值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進水平。隨著信息技術的發(fā)展,閣像信息被廣泛應用于多媒體通信和計算機系統(tǒng)屮,但是圖像數(shù)據(jù)的一個妞著特點就是信息量大。具有龐大的數(shù)據(jù)量,如果不經過壓縮,不僅超出了計算機的
2、存儲和處理能力,而且在現(xiàn)冇的通信信道的傳輸速率下,是無法完成大量多媒體信息實時傳輸?shù)?,因此,為了更冇效的存儲、處理和傳輸這些圖像數(shù)據(jù),必須對其進行壓縮,因此有必要對圖像壓縮編碼進行研究。由于組成圖像的各像素之間,無論是在水平方向還是在垂直方向上都存在著一定的相關性,因此只耍應用某種閣像壓縮編碼方法提取或者減少這種相關性,就可以達到壓縮數(shù)據(jù)的目的。數(shù)字圖像包含的冗余信息一般有以下兒種:空問元余、時間冗余、信息;腦冗余、統(tǒng)計冗余、結構冗余、視覺冗余以及知識冗余等。閣像壓縮算法就是耍在保證圖像一定的熏建質量的同時,盡可能多的去除這些元余信息.以達到對圖像壓縮的目的。隨著科學技術的發(fā)展,圖像
3、壓縮編碼技術越來越引起人們的關注。所謂的閣像壓縮編碼技術就是對耍處理的閣像數(shù)據(jù)按一定的規(guī)則進行變換和組合,從而達到以盡可能少的數(shù)據(jù)流來表示盡可能多的數(shù)據(jù)信息。本設計基于DCT的JPEG、PNG、BMP等格式圖像編解碼設計算法進行研究,介紹了編碼屮DCT變換、景化、游程編碼等模塊的原理和數(shù)學推異以及各模塊的功能分析。最后應用MATLAB進行了實驗仿真并分析結果得出結論。DCT變換后具有絕對的去相關性,并且變換后的矩陣從左上角到心下角頻率規(guī)律的漸高。冇損壓縮方法利用了人類視覺對聞像屮的某些頻率成分不敏感的特性,允許壓縮過程中損失一定的信息;雖然不能完全恢復原始數(shù)據(jù),但是所損失的部分對理解
4、原始圖像的影響較小,卻換來了大得多的壓縮比。因此舍棄高頻分量保留低頻分景的做法,對丁?閣像壓縮具有絕對的優(yōu)勢。只要損失的數(shù)據(jù)不太影響人眼主觀接收的效果,就可采用。DCT變換后的壓縮此本設計采用經典的游程編碼實現(xiàn)。1.設計任務2.1任務描述基于DCT的圖像編解碼設計(1)獲取圖像;(2)釆用DCT實現(xiàn)對圖像編解碼設計;(3)分析編解碼性能2.2技術指標(1)可對JPEG、PNG、BMP等格式圖像進行基于DCT的圖像編解碼。(2)為Y便于分析比較,定義一個量化系數(shù)叩otiety,越大壓縮率越高。(3)壓縮編碼、量化系數(shù)統(tǒng)一寫入存儲文件compressed_data.mat,實現(xiàn)口I移植解
5、壓。(4)觀察壓縮后圖片大小,簡便起見,分析以關心compressed_data.mat文件的大小。(5)實現(xiàn)DCT變換和反變換以及JPEG標準景化矩陣的景化、反景化。(6)根據(jù)DCT量化后矩陣特點,木設計編碼采用Z字型掃描游程編碼、解碼。(7)DCT壓縮前后比較,以及不同量化系數(shù)比較。3.設計原理2.1原理框圖基于DCT的圖像編碼包括三個階段:DCT變換、量化、編碼。根據(jù)DCT量化后矩陣特點,本設計編碼采用Z字型掃描游程編碼、解碼。首先將輸入圖像顏色空間轉換后分解為8X8大小的數(shù)據(jù)塊,然后用正向二維DCT把每個塊轉變成64個DCT系數(shù)值,其屮1個數(shù)值是直流(DC)系數(shù),即8X8空域
6、圖像子塊的平均值,其余的63個是交流(AC)系數(shù),接下來對DCT系數(shù)進行暈化,最后將變換得到的暈化的DCT系數(shù)進行編碼和傳送,這樣就完成丫圖像的壓縮過程。碼表原始閣像數(shù)據(jù)>DCT變量化—3^游程編碼—#壓縮閣像數(shù)據(jù)竄:化表圖3-1編碼過程基于DCT的圖像編碼包括三個階段:譯碼、反量化、IDCT變換。在解碼過程中,形成壓縮肜的圖像格式,先對己編碼的量了化的DCT系數(shù)進行解碼,然后求逆量化并把DCT系數(shù)轉化為8X8樣本像塊(使用二維DCT反變換),最后將操作完成后的塊組合成一個爭一的圖像。這樣,就完成Y圖像的解壓過程。壓縮圖像數(shù)據(jù)—游程譯碼—>碼表反雖化雖化表"
7、
8、IDCT資原始圖像數(shù)據(jù)
9、圖3-2解碼過程3.2程序流程圖基于DCT的圖像編解碼沒計的MATLAB實現(xiàn)的流程圖如圖3_3所示。輸入S化系數(shù)分成8*8像尜塊,DCT變換輸入笊化表,對變換結果氘化對辯:化結果進行扣描編碼保存編W結災爪縮圖像打開編碼文反坫化反DCT變顯示恢復圖像圖3-3程序流程圖3.3離散余弦變換DCT變換利用傅立葉變換的性質。采用閣像邊界裙翻將像變換為偶函數(shù)形式,然后對圖像進行二維傅立葉變換,變換后僅乜含余弦項,所以稱之為離散余弦變換。DCT編碼展于正交變換編碼方式,