主要内容

使用2-D小波分析的数据压缩

这个例子的目的是展示如何使用二维小波分析压缩图像。压缩是小波最重要的应用之一。与去噪一样,压缩过程包含三个步骤:

  • 分解:选择一个小波,选择一个电平N,计算N级信号的小波分解。

  • 阈值细节系数:对于从1到N的每一级,都选择一个阈值,并对细节系数进行硬阈值处理。

  • 重构:利用第N层的原始逼近系数和1到N层的修正细节系数计算小波重构。

在步骤2中发现了与去噪程序的差异。有两个压缩方法可用:

  • 第一种方法是对信号进行小波展开,并保留最大的绝对值系数。在这种情况下,可以设置全局阈值、压缩性能或相对平方范数恢复性能。因此,只需要选择一个参数。

  • 第二种方法包括应用视觉确定的级别相关的阈值。

加载图像

让我们检查给定和未优化的小波选择的真实例子,以产生图像的几乎完全的方形常规恢复。

负载女人%加载原始图像图像(X)标题(原始图像的)Colormap(地图)

图中包含一个轴对象。标题为“Original Image”的axis对象包含一个类型为Image的对象。

x = x (100:200,100:200);%选择ROI

方法1:全局阈值设置

给定小波的压缩特征主要与信号的小波域表示的相对短缺相连。The notion behind compression is based on the concept that the regular signal component can be accurately approximated using the following elements: a small number of approximation coefficients (at a suitably chosen level) and some of the detail coefficients.

n = 5;%分解水平w =“sym8”近对称子波[c,l] = wavedec2(x,n,w);%多级2-D小波分解

在第一种方法中,WDENCMP函数对小波分解结构进行压缩处理[c、l]图像。

选择='GBL'%全局阈值用力推= 20;% 临界点索赫=“h”%硬阈值keepapp = 1;不能设定近似系数的阈值[xd, cxd lxd、perf0 perfl2] = wdencmp(选择c l, w, n,用力推,sorh, keepapp);图像(x)标题(原始图像的)Colormap(地图)

图中包含一个轴对象。标题为“Original Image”的axis对象包含一个类型为Image的对象。

图图像(XD)标题('压缩图像 - 全局阈值= 20')Colormap(地图)

图中包含一个轴对象。具有标题压缩图像的轴对象 - 全局阈值= 20包含类型图像的对象。

压缩的分数(%)

perf0
perf0 = 74.3067

L2-NOM恢复(%)

perfl2
perfl2 = 99.9772

当前分解稀疏矩阵的密度为:

cxd =稀疏(cxd);cxd_density = nnz (cxd) /元素个数(cxd)
cxd_density = 0.2569

方法2:分级依赖阈值

WDENCMP功能还允许水平和方向相关的阈值。在这种情况下,近似不变。水平、对角线和垂直三个方向的水平相关阈值如下:

选择='lvd'%等级相关阈值Thr_h = [17 18];%的水平阈值Thr_d = [19 20];%对角线阈值Thr_v = [21 22];%垂直阈值THR = [thr_h;thr_d;thr_v];

在第二个示例中,请注意WDENCMP函数对图像执行压缩处理x

[xd2,cxd2,lxd2,perf02,perfl22] = wdencmp(opt,x,w,2,thr,sorh);图像(x)标题(原始图像的)Colormap(地图)

图中包含一个轴对象。标题为“Original Image”的axis对象包含一个类型为Image的对象。

图图像(xd2)标题('压缩图像 - 级别依赖的阈值')Colormap(地图)

图中包含一个轴对象。标题为Compressed Image - Level-Dependent threshold的axes对象包含一个Image类型的对象。

压缩的分数(%)

perf02
perf02 = 77.3435

L2-NOM恢复(%)

perfl22
perfl22 = 99.6132

当前分解稀疏矩阵的密度为:

CXD2 =稀疏(CXD2);CXD2_DENTES = NNZ(CXD2)/ NUMER(CXD2)
cxd2_density = 0.2266

概括

采用水平相关阈值方法,小波分解密度降低3%,l2范数恢复率提高3%。如果小波表示过于密集,可以在小波包框架中使用类似的策略来获得更稀疏的表示。然后,您可以根据适当选择的类熵标准确定最佳分解,该标准对应于所选的目的(去噪或压缩)。