主要内容

构造小波的提升方法

所谓的第一代小波和尺度函数是单个函数的并进扩张和变换。傅里叶方法在这些小波的设计中起着关键作用。然而,小波基必须包含单个函数的转换和扩展,这就限制了小波分析核心的多分辨率思想的效用。

小波变换的设计扩展了小波变换的应用第二代小波通过提升

不能使用单个函数的平移和扩展的典型设置包括:

  • 有界域上的小波设计-这包括在区间或高维欧几里得空间的有界域上构造小波。

  • 加权小波-在某些应用中,如偏微分方程的解,需要小波相对于加权内积的双正交。

  • 间隔不规则数据—在许多实际应用中,数据样本之间的采样间隔是不相等的。

设计新的第一代小波需要傅里叶分析的专业知识。瑞典人提出的提升方法(见[Swe98])参考文献)消除了傅里叶分析专业知识的必要性,并允许您从初始的小波开始生成无限个离散双正交小波。除了世代第一代小波带有提升,提升的方法也能让你设计第二代小波,不能使用基于傅里叶的方法设计。通过提升,您可以设计小波来解决第一代小波。

有关提升的更多信息,参见[Swe98], [Mal98], [StrN96],和[MisMOP03]参考文献

提升背景

由滤波器组实现的小波变换由四个滤波器定义,如快速小波变换(FWT)算法.兴趣的两个主要性质是

  • 完美重构性

  • 与“真”小波的联系(如何从滤波器开始,产生有限能量函数空间的正交或双正交基)

为了说明完全重构特性,下面的滤波器组包含两个分解滤波器和两个合成滤波器。分解和综合滤波器可以构成一对双正交基或正交基。大写字母表示过滤器的z变换。

这导致了完美重构(PR)滤波器组的以下两个条件:

H z H z + G z G z 2 z - l + 1 H z H x加上G z G z等于2z的负L + 1次方

H - z H z + G - z G z 0 H -z H x加上G -z G z等于0

第一个条件通常被(不正确地)称为完美重构条件,第二个条件是抗锯齿条件。

z - l + 1 Z的-L + 1次方 术语意味着,当一个样本的延迟小于滤波器长度时,可以实现完美重构,l.如果分析过滤器转换为因果关系,就会产生这个结果。

提升从小波变换的基本性质出发,设计出完美的重构滤波器组。小波变换通过利用大多数真实数据中固有的相关性来构建稀疏表示。例如,绘制3天期间的电力消耗示例。

负载leleccum情节(leleccum)网格标题(的电力消耗

图中包含一个轴对象。标题为Electricity Consumption的轴对象包含一个类型为line的对象。

多相表示

多相信号的表示是提升中的一个重要概念。你可以把每个信号看作是由阶段,包括采取每一个N以某个索引开头的示例。例如,如果你索引一个时间序列n=0取其他样本的起始点n=0,提取偶数样本。如果你从n= 1,提取奇数样本。这些是数据中的偶数和奇数多相分量。因为样本之间的增量是2,所以只有两个阶段。如果将增量增加到4,则可以提取4个相。对于提升来说,集中于偶、奇多相分量就足够了。下面的图说明了输入信号的这个操作。

在哪里Z为单位前进算子,数字2的向下箭头表示向下采样2。在提升的语言中,将输入信号分离为偶数和奇数分量的操作称为分裂操作,或懒惰的小波

为了从数学上理解提升,有必要理解偶数和奇数多相分量的z域表示。

偶多相分量的z变换为

X 0 z n x 2 n z n

奇多相分量的z变换为

X 1 z n x 2 n + 1 z n

你可以把输入信号的z变换写成多相分量的z变换的扩展形式的和。

X z n x 2 n z 2 n + n x 2 n + 1 z 2 n + 1 X 0 z 2 + z 1 X 1 z 2

分割、预测和更新

单个提升步骤可以用以下三个基本操作来描述:

  • 分裂-将信号分解成不相交的分量。一种常见的方法是提取中解释的偶和奇多相分量多相表示.这也被称为懒惰的小波

  • 预测-基于偶多相分量样品的线性组合的奇多相分量。将奇多相分量的样本替换为奇多相分量与预测值的差值。

  • 更新-基于从预测步骤中获得的不同样品的线性组合的偶数多相组分。

在实践中,对预测和更新操作都进行了规范化。

下面的图表演示了一个提升步骤。

通过提升的哈尔小波

使用分割、预测和更新,可以通过提升实现Haar小波。

  • 分裂—将信号分为偶数和奇数多相分量

  • 预测——取代 x 2 n + 1 d n x 2 n + 1 - x 2 n .预测运算符很简单 x 2 n

  • 更新——取代 x 2 n x 2 n + d n / 2 .这个等于 x 2 n + x 2 n + 1 / 2

z域的预测算子可以写成如下矩阵形式:

1 0 - P z 1 X 0 z X 1 z

P z 1

update操作符可以写成如下矩阵形式:

1 年代 z 0 1 1 0 - P z 1 X 0 z X 1 z

年代 z 1 / 2

最后,更新和预测归一化可以合并为:

2 0 0 1 2 1 年代 z 0 1 1 0 - P z 1 X 0 z X 1 z

您可以使用liftingScheme构造与Haar小波相关的提升格式。

lscHaar = liftingScheme (“小波”“哈雾”);disp (lscHaar)
小波:'haar' LiftingSteps: [2 × 1] liftingStep NormalizationFactors: [1.4142 0.7071] CustomLowpassFilter: [] Details of LiftingSteps: Type: 'predict' Coefficients: -1 MaxOrder: 0 Type: 'update' Coefficients: 0.5000 MaxOrder: 0

请注意,为了方便起见,负号被合并到预测提升一步。的元素NormalizationFactors1.41420.7071,分别为预测和更新归一化因子。MaxOrder给出了描述相应提升步骤的洛朗多项式的最高次。在这种情况下,两者都是零,因为预测和更新提升都是用标量描述的。

Bior2.2小波提升

通过实例介绍了该系统的提升方案bior2.2双正交尺度和小波滤波器。

在哈尔提升方案中,预测算子对奇、偶样本进行差分。在这个例子中,定义一个新的预测算子来计算两个相邻的偶数样本的平均值。从中间的奇数样本中减去平均值。

d n x 2 n + 1 - 1 2 x 2 n + x 2 n + 2

在z域,你可以把预测算子写成

1 0 - 1 2 1 - z 1 X 0 z X 1 z

要获取更新操作符,请检查通过提升的哈尔小波.更新的定义是这样的:近似系数的总和与输入数据向量的平均值成正比。

n x n 1 2 n 一个 n

为了在这个提升步骤中获得相同的结果,将更新定义为

1 1 4 z - 1 + 1 0 1 1 0 - 1 2 1 + z 1 X 0 z X 1 z

您可以使用liftingScheme得到提升方案。

lscBior = liftingScheme (“小波”“bior2.2”);disp (lscBior)
小波:'bior2.2' LiftingSteps: [2 × 1] liftingStep NormalizationFactors: [1.4142 0.7071] CustomLowpassFilter: [] Details of LiftingSteps: Type: 'predict' Coefficients: [-0.5000 -0.5000] MaxOrder: 1 Type: 'update' Coefficients: [0.2500 0.2500] MaxOrder: 0

哈尔吊装方案增加吊装步骤

这个例子展示了如何将基本的提升步骤添加到提升方案中。

创建一个与哈尔小波相关的提升方案。

lsc = liftingScheme (“小波”“哈雾”);disp (lsc)
小波:'haar' LiftingSteps: [2 × 1] liftingStep NormalizationFactors: [1.4142 0.7071] CustomLowpassFilter: [] Details of LiftingSteps: Type: 'predict' Coefficients: -1 MaxOrder: 0 Type: 'update' Coefficients: 0.5000 MaxOrder: 0

创建一个更新小学提升一步。将步骤附加到提升方案中。

els = liftingStep (“类型”“更新”“系数”(-1/8 1/8),“MaxOrder”, 0);els lscNew = addlift (lsc);disp (lscNew)
小波:'custom' LiftingSteps: [3 × 1] liftingStep NormalizationFactors: [1.4142 0.7071] CustomLowpassFilter:[]详细的LiftingSteps:类型:'predict'系数:-1 MaxOrder: 0类型:'update'系数:0.5000 MaxOrder: 0类型:'update'系数:[-0.1250 0.1250]MaxOrder: 0

从新的提升方案中获得分解和重构滤波器。

[lod,藏,生气,hir] = ls2filt (lscNew);

使用bswfun到绘图的结果缩放函数和过滤器。

bswfun (lod、藏、卤、雇佣“阴谋”);

图中包含4个轴对象。轴对象1的标题分析缩放函数(phiA)包含一个类型为线的对象。轴对象2与标题分析小波函数(psiA)包含一个类型线对象。标题为合成缩放函数(phiS)的坐标轴对象3包含一个类型为line的对象。轴对象4,标题为合成小波函数(psiS)包含一个类型为线的对象。

Integer-to-Integer小波变换

在一些应用中,希望有一个小波变换将整数输入映射到整数尺度和小波系数。你可以很容易地使用升降机来完成。

创建一个与哈尔小波相关的提升方案。在提升方案中增加一个基本的提升步骤。

lsc = liftingScheme (“小波”“哈雾”);els = liftingStep (“类型”“更新”“系数”(-1/8 1/8),“MaxOrder”, 0);lscNew = lsc.addlift (els);

创建一个整数值信号。从小波变换中得到信号的整数到整数小波变换,利用提升方案“Int2Int”设置为真正的

rng默认的sig =兰迪(20日16日1);(ca、cd) =轻型(团体,“LiftingScheme”lscNew,“Int2Int”,真正的);

确定近似系数均为整数。

马克斯(abs (ca-floor (ca)))
ans = 0

确认细节系数都是整数。

len =长度(cd);k = 1: len disp ([k,马克斯(abs (cd {k}地板(cd {k})))));结束
1 0 2 0 3 0 4 0

反变换并演示完美的重构。

xrec = ilwt (ca, cd,“LiftingScheme”lscNew,“Int2Int”,真正的);马克斯(abs (xrec-sig))
ans = 0