声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2127|回复: 1

[小波] [转帖]多孔算法的实践与思考

[复制链接]
发表于 2006-5-23 14:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
  小波的问题在那里?其中之一,平移不变性。说白了,先将源信号平移n位,再做小波变换,和先将源信号做小波变换,再平移n位,结果不同。这对于实时处理和一些场合是极为不便的。(gibbs效应于此也有关)。<br>     怎么办?多孔算法(a trous)可以解决此瓶颈。多孔算法,又称非抽取小波变换,即undecimated wavelet transform or nonsampled wavelet transform,简写(NSWT)。(有可能二进小波变换也是一个意思)。<br>     实现多孔算法,需要什么呢?回答MALLAT算法是基础。若你不懂MALLAT,请去学习,或看我置顶的贴子。我可以告诉大家,我写TROUS代码从看论文到完成只用了10分钟。<br>     但单单MALLAT算法够吗?答案否定的。我们必须找到两种算法的不同点。方可得心应手。这里我浅谈一二。<br>     首先,为什么MALLAT不具有移不变特点而TROUS具有移不变特点。根源就在抽取插值上。看这个系统Y(N)=X(2N),它是不是移不变系统,显然不是。现在大家明白了吧。所以非抽取算法,是移不变的。而这个移不变所付出的代价,就是高频分量加低频分量长度再不是源信号的长度,而是源信号长度的2倍。<br>     其次,滤波器还是可以用,WFILTERS()。而且重构和分解滤波器的关系,还是逆序后再右移一位(圆周卷积+周期延托)。但所有的滤波器系数要乘以SQRT(2)/2。为什么,答案在PR条件上。MALLET算法PR条件有两个,一个是抗混叠,另一个是完全重构。而多孔算法由于非插值抽取,只有完全重构,且等式的右边常数是“1”,而不是MALLET-PR条件的“2”。所以MALLET的PR条件要乘以“1/2”才和TROUS一致,而这个因子“1/2”正好被分配到两个滤波器上,所以是SQRT(2)/2。<br>     再次,在每一层的下一层,滤波器中间要插值0。为什么?从谱上看,这是小波最经典的物理意义。数字信号一个周期的频谱范围为[-PI PI],MALLAT算法的低通滤波[-PI/2 PI/2],高通滤波[-PI -PI/2] U [PI/2 PI],则滤波后低频分量频谱范围[-PI/2 PI/2]。这时注意“开始抽取,频谱展宽”,又回到源信号频谱[-PI PI],然后再低通、高通滤波,周而复始。(小波包的问题顺便也说一下,实际上将高频抽取,频谱展宽后,发生了频谱颠倒现象,论坛里对此有精彩讨论,对此不再赘述。)而多孔呢?情况变了。低频分量始终是[-PI/2 PI/2],若低通滤波器仍是[-PI/2 PI/2],高通滤波器[-PI -PI/2] U [PI/2 PI],岂不是有些可笑吗?于是“滤波器插值”极其精妙的登场。低通和高通滤波器频谱变窄,低通[-PI/4 PI/4],高通[-PI/2 -PI/4] U [PI/4 PI/2],这下物理概念对了。那多孔有没有小波包呢,留给大家探讨。
[此贴子已经被作者于2006-5-23 14:52:11编辑过]

回复
分享到:

使用道具 举报

发表于 2013-10-16 12:04 | 显示全部楼层
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-17 09:52 , Processed in 0.052887 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表