基于小波變換的JPEG2000圖像壓縮編碼系統的仿真與設計(07-100)
在本系統中,采用第二代小波變換的快速提升算法CDF9/7雙正交小波變換,小波變換取CDF9/7雙正交小波基,該小波基具有線性相位,因而有著極好的圖像壓縮性能。其實現過程如圖2所示。
本文引用地址:http://www.j9360.com/article/91928.htm
圖2 CDF9/7雙正交小波變換的實現過程
圖3是用CDF9/7小波族對一個的圖像做兩級DWT分析的情況。在第二級中,第一級得到的低通近似本身被分成4個子圖像,提取出了細節,留下一個新的低通近似。低通濾波的效果很容易從圍巾、桌布的花紋,藤椅的方格,遠處羅列的書籍這些細節的丟失看出。第二級低通近似也可以繼續變換,以生成4幅新的子圖像。這種變換可以一直進行下去知道子圖像只包含一個像素為止。
a 原始圖像
b二維DWT分析圖像
圖3 兩級二維DWT分析
在圖3中,垂直細節對應于分析塊的右上角,水平細節對應于左下角,而對角細節對應于右下角,它們都表現出了較強的外觀。當數字圖像需要通過二維DWT子圖像重建時,就要用向上采樣和卷積的辦法將細節與低通近似組合起來。
SPIHT圖像編碼
為了驗證JPEG2000系統的可行性及性能,采用MATLAB對系統中的小波變換部分進行了仿真,然后用C++語言對小波變換后的系數進行編解碼,實現系統中第二部分的仿真,以大幅降低數據量。SPIHT是基于內嵌零樹編碼(EZW)的集分割算法,C++中的鏈表類能實現SPIHT算法中的三個控制鏈表(LSP,LIP和LIS),方便的位操作命令適合處理算法中基于位平面的編解碼功能。
為了對小波變換和SPIHT編碼算法有更直觀的認識,下面從一幅圖像中選取尺寸的像素矩陣進行處理,分析每一步處理后數據的變化。
初始圖像矩陣如圖4所示,所用圖像是256色(每像素8位),像素灰度圖。
圖4 圖像xiaoshutiao.bmp中的一部分數據
由上圖可以看出圖像幅值分布比較隨機,沒有什么規律。對上數據進行離散小波變化后的數據如圖5所示,小波變換采用基于提升的CDF9/7雙正交小波基,進行5級分解。
圖5 三級小波變換后的系數數據
評論