此示例显示如何使用升降来逐步更改完美的重建滤波器库的属性。下图显示了提升的三个规范步骤:拆分,预测和更新。
提升的第一步只是将信号分成偶数和奇数索引的样本。这些称为多相组分,并且在提升过程中的步骤通常被称为“懒惰”提升步骤,因为你真的没有做那么多工作。您可以通过使用“懒惰”提升方案来在Matlab™中执行此操作liftingScheme
使用默认设置。
LS = liftingScheme;
使用提升方案获得随机信号的1级小波分解。
x = randn(8,1);[alazy,dlazy] = lwt(x,“LiftingScheme”LS,'等级'1);
MATLAB从1开始索引奥拉塞
包含X和X的奇数索引样本dlaze.
包含偶数索引的样本。对提升的大多数解释都假设信号从样本0开始,所以奥拉塞
将是均匀索引的样本和dlaze.
奇数样本。本例遵循后一种约定。“惰性”小波变换将信号的一半作为小波系数,dlaze.
,另一半是比例系数,奥拉塞
。这在提升的背景下是完全一致的,但是数据的简单拆分确实稀疏或捕获任何相关细节。
提升方案中的下一步是基于偶数样本预测奇数样本。理论基础是大多数自然信号和图像表现出相邻样本之间的相关性。因此,您可以使用偶数索引样本“预测”奇数索引样本。您的预测和实际值之间的差异是预测器错过的数据中的“细节”。丢失的细节包括小波系数。
在方程形式中,可以将预测步骤写成 在哪里 小波系数在更小的尺度和 是一些更精细的缩放缩放系数。 是预测算子。
添加一个简单的(Haar)预测步骤,从奇数(细节)系数减去偶数(近似)系数。在这种情况下,预测操作符很简单 。换句话说,它通过基于紧接在前面的样本来预测奇数样本。
ElemLiftStep = liftingStep (“类型”那'预测'那'系数', 1“MaxOrder”, 0);
上面的代码说:“使用多项式创建基本预测提升步骤 功率最高 。系数是-1。更新延迟提升方案。
LSN = addlift (LS, ElemLiftStep);
将新的提升方案应用于信号。
[D] =轻型(x,“LiftingScheme”LSN,'等级'1);
的元素一种
和那些是一样的吗奥拉塞
。这是预期的,因为您没有修改近似系数。
(ALazy)
ans =.4×20.5377 0.5377 -2.2588 -2.2588 0.3188 0.3188 0.3188 -0.4336 -0.4336
如果你看看的元素D {1}
,你看到他们等于dlazy {1} -alazy
。
dnew = dlazy {1} -alazy;[dnew d {1}]
ans =.4×21.2962 1.2962 3.1210 3.1210 -1.6265 -1.6265 0.7762 0.7762
比较德尼克
至D.
。想象一个例子,信号在每两个样品上都是恒定的。
v = [1 -1 1 -1 1 -1];U = Repelem(v,2)
u =1×121 1 -1 -1 1 1 -1 1 -1 1 -1 1 -1 -1
应用新的提升方案你
。
[au,du] = lwt(你,“LiftingScheme”LSN,'等级'1);杜{1}
ans =.6×10 0 0 0 0 0
你看到了所有的杜
是零。该信号已被压缩,因为所有信息现在包含在6个样本中而不是12个样本中。您可以轻松地重建原始信号
urecon = ilwt(au,du,“LiftingScheme”,LSN);max(abs(u(:) - urecon(:)))
ans = 0.
在你的预测步骤中,你预测你的信号中相邻的奇样本值与紧随其后的偶数样本值相同。显然,这只适用于平凡的信号。小波系数捕捉预测值和实际值之间的差异(在奇数样本)。最后,根据预测步骤中得到的差异,利用更新步骤更新均匀样本。在这种情况下,使用以下方法进行更新 。这通过偶数和奇数系数的算术平均值来替换每个偶数索引系数。
elsupdate =升降步骤(“类型”那“更新”那'系数'1/2,“MaxOrder”, 0);LSupdated = addlift (LSN elsUpdate);
用更新后的提升方案得到信号的小波变换。
[D] =轻型(x,“LiftingScheme”,lsupdated,'等级'1);
如果你比较一种
到原始信号,X
,你可以看到信号的平均值在近似系数中被捕获。
(意思是(A)的意思是(x))
ans =.1×2-0.0131 -0.0131
事实上,元素一种
容易得到吗X
通过以下内容。
n = 1;为了II = 1:2:数值(x)意味着(n)=平均值([x(ii)x(ii + 1)]);n = n + 1;结尾
比较meanz
和一种
。一如既往,您可以反转提升方案以获得对数据的完美重建。
XREC = ILWT(A,D,“LiftingScheme”,lsupdated);max(abs(x-xrec))
ANS = 2.2204E-16
通常在最后添加一个归一化步骤,使信号中的能量( (范数)保留为尺度系数和小波系数的能量之和。没有这个正规化步骤,能量就不能保持。
规范(x, 2) ^ 2
ans = 11.6150
规范(A,2)^ 2 +常量(d {1},2)^ 2
ans = 16.8091.
添加必要的标准化步骤。
lssteps = lsupdated.liftingSteps;LSScaled =升降机(“LiftingSteps”,lssteps,'正常化物质', (sqrt (2)));[D] =轻型(x,“LiftingScheme”,lsscaled,'等级'1);规范(A,2)^ 2 +常量(d {1},2)^ 2
ans = 11.6150
现在 信号的范数等于尺度系数和小波系数的能量之和。您在本例中开发的提升方案是哈尔提升方案。
小波工具箱™支持许多常用的提升方案万博1manbetxliftingScheme
具有预定义的预测和更新步骤,以及归一化因子。例如,您可以通过以下方法获得Haar提升方案。
lshaar =升降机(“小波”那'哈尔');
要了解到,并非所有提升方案包括单个预测和更新提升步骤,请检查对应的提升方案bior3.1
小波。
lsbior3_1 = liftingScheme (“小波”那'bior3.1')
lsbior3_1 =小波:'bior3.1'升降步骤:[3×1]升降步骤标准化:[-0.3750 -1.1250] maxOrder:1类型:'更新'系数:0.4444 maxOrder:0