对小波变换中DWT和CWT的理解
转载自
http://blog.sina.com.cn/s/blog_633750d90100hbco.html
连续小波变换的概念、操作、及时间尺度图的显示最近很多网友问到关于连续小波变换的诸多问题,我用了点时间,写了个底层程序,提供给大家参考。1。连续小波的概念。就是把一个可以称作小波的函数(从负无穷到正无穷积分为零)在某个尺度下与待处理信号卷积。改变小波函数的尺度,也就改变了滤波器的带通范围,相应每一尺度下的小波系数也就反映了对应通带的信息。本质上,连续小波也就是一组可控制通带范围的多尺度滤波器。2。连续小波是尺度可连续取值的小波,里面的a一般取整数,而不像二进小波a取2的整数幂。从连续小波到二进小波再到正交离散小波,其实就是a、b都连续,a不连续、b连续,a、b都不连续的过程。操作他们的快速算法也就是卷积(快速傅里叶),多孔(a trous),MALLAT。在MATLAB里,也就是CWT,SWT,DWT。SWT称平稳小波变换、二进小波变换、或者非抽取小波变换。3。从冗余性上:CWT>SWT>DWT,前面两个都冗余,后面的离散小波变换不冗余。4。从应用上:CWT适合相似性检测、奇异性分析;SWT适合消噪,模极大值分析;DWT适合压缩。5。操作。就是在某个尺度上得到小波的离散值和原信号卷积,再改变尺度重新得到小波的离散值和原信号卷积。每一个尺度得到一个行向量存储这个尺度下的小波系数,多个尺度就是一个矩阵,这个矩阵就是我们要显示的时间-尺度图。6。显示。“不要认为工程很简单”。我的一个老师说过的话。小波系数的显示还是有技巧的。很多人画出的图形“一片乌黑”就是个例子。第一步,一般将所有尺度下的小波系数取模;第二步,将每个尺度下的小波系数范围作映射,映射到你指定MAP的范围,比如如果是GRAY,你就映射到0-255;第三步,用IMAGE命令画图;第四步,设置时间和尺度坐标。MATLAB是个很专业的软件,它把这些做的很好,但也就使我们懒惰和糊涂,我是个好奇心重的人就研究了下。里面有个巧妙的函数把我说的(1,2)两个步骤封装在了一起,就是WCODEMAT,有兴趣的同学可以看看。希望大家深入研究小波。这里,还有要说的是,小波目前理论的热点: 1。不可分的小波或者具有可分性质的方向性小波; 2。XLET: CONTOURLET, WEDGELET, SHEARLET, BANDELET, RIDGELET, CURVELET; PLATELET. 3。多分辨率分析+多尺度几何分析的结合,才真正是我们所需要的。比如小波域的WEDGELET等等。最后,几点建议: 1。理论研究和实际应用不同,工程上很多问题小波并不是最好的,在做项目的时候大家要实际情况,实际对待。 2。做研究,有些话题太成熟了,对于小波本身几乎很难再做下去,要在方向性和几何性上下功夫。对此,我也做的工作很少,毕竟研究方向转了。 3。看看DAUBECHIES,MALLAT,Minh N. Do的personal web,特别是preprint的文章,会有些启发。 4。最终大家还是最好自己提一些新的XLET或算法出来,这样才是有挑战性的工作,否则我们永远是落后的。 5。交叉领域和结合是值得做的,最近R2007也就增加了PCA+WAVELET等内容,还有用小波在数值分析领域求解偏微分等,多尺度现在是个很热的东西,SIAM为此都开了专门的期刊,这是数值分析最前沿的期刊可以看看。还有ELSEVIER的Applied and Computational Harmonic Analysis,这些虽然数学多了一点,但毕竟才有可能在工程上是“新”的。大家可以到我的网站下载到.m文件 http://cem.ahu.edu.cn/Freecode/freecode.htm 各位共勉!!!安徽大学 沙威 2007年9月5日 % 编程人 沙威 安徽大学 % ws108@ahu.edu.cnfunction CWT_EXE(); % 多个尺度连续小波变换的实现 clc;clear% 下载信号 load vonkoch vonkoch=vonkoch(1:510);% 尺度1-32的连续小波变换 S_Min=1;S_Max=32;index=0; for scale=S_Max:-1:S_Min; index=index+1; cwt_coef(index,:)=CWT_FUNCTION(scale,32*(scale),vonkoch); end% 小波系数取模 cwtcoef_abs=abs(cwt_coef);% 显示 for index=S_Min:S_Max max_coef=max(cwtcoef_abs(index,:)); % 系数模最大 min_coef=min(cwtcoef_abs(index,:)); % 系数模最小 ext=max_coef-min_coef; % 系数模跨度 cwtcoef_abs(index,:)=64*(cwtcoef_abs(index,:)-min_coef)/ext; % 系数大小变换 endfigure(1)subplot(2,1,1); plot(vonkoch); xlabel('时间') ylabel('幅度') title('分形信号') axis([1 510 0 0.02])subplot(2,1,2) colormap(pink(64)); image(cwtcoef_abs) set(gca,'YTick',2:3:32) set(gca,'YTickLabel',32:-3:2) title('连续小波变换时间尺度图') xlabel('时间') ylabel('尺度')% 某个尺度的连续小波变换的M函数% delta 小波变换的尺度 % N 小波函数的长度 % s 原始信号 % g 原始信号某个尺度下的小波变换系数function g=CWT_FUNCTION(delta,N,s);% 原始信号长度 n=length(s);% 构造墨西哥帽子小波函数 for index_x=1:N; x=index_x-(N+1)/2; phi_x(index_x)=((pi^(-1/4))*(2/sqrt(3)))*(1-x.*x/(delta^2))*exp(-(x.*x)/(2*delta^2)); end; phi_x=phi_x/norm(phi_x); % 能量归一化% 对信号做卷积 g=conv(s,phi_x); % 卷积 g=wkeep(g,n); % 保持信号长度
转载于:https://www.cnblogs.com/seisjun/p/6702946.html
对小波变换中DWT和CWT的理解相关推荐
- 基于离散余弦变换(DCT)傅里叶变换(DFT)小波变换(DWT)的彩色图像数字水印的嵌入、提取简介及MATLAB实现
一.引言 该篇包括三部分,1)引言.2)图像变化技术简介和代码实现 .3)基于图像变换技术的数字水印技术及代码实现. 数字水印是一种有效的数字产品版权保护和数据安全维护技术, 是信息隐藏领域的一个重要 ...
- 离散小波变换(DWT)去噪
小波去噪(DWT) 小波变换去噪优势 方法 小波变换去噪优势 (1)能够很好的保留原有信号中所需的有用信号的峰值和突变部分,而用Fourior分析进行滤波时,由于有用信号集中在低频部分,而噪声集中在高 ...
- React router 的 Route 中 component 和 render 属性理解
React router 的 Route 中 component 和 render 属性理解 Route 标签的三个互斥属性 render.component.children Route 就是用来匹 ...
- python函数def里面嵌套def,python菜鸟求问关于嵌套函数中作用域范围应该怎么理解?,python嵌套,直接上代码def l(l...
python菜鸟求问关于嵌套函数中作用域范围应该怎么理解?,python嵌套,直接上代码def l(l 直接上代码def l(list): def d(): return list return d ...
- 7.STM32中对DMA_Config()函数的理解(自定义)测试DMA传输数据时CPU还可继续工作其他的事
STM32中对DMA_Config()函数的理解(自定义):
- 4.STM32中对USART1_Config()函数的理解(自定义)
STM32中对USART1_Config()函数的理解
- 3.STM32中对EXTI_PE5_Config()函数的理解(自定义)之中断控制按键LED
STM32中对EXTI_PE5_Config()函数的理解(自定义)
- 2.STM32中对Key_GPIO_Config()函数的理解(自定义)之轮询控制按键LED
STM32中对Key_GPIO_Config()函数的理解(自定义)
- 1.STM32中对LED_GPIO_Config()函数的理解(自定义)之流水灯
STM32中对LED_GPIO_Config()函数的理解(自定义)
- python threading模块的方法_Python THREADING模块中的JOIN()方法深入理解
看了oschina上的两个代码,受益匪浅.其中对join()方法不理解,看python官网文档的介绍: join([timeout]):等待直到进程结束.这将阻塞正在调用的线程,直到被调用join() ...
最新文章
- IP地址 DNS DHCP 路由器 NAT
- python使用tqdm实现程序运行进度条
- android excel 筛选功能,Android实现Excel表格展示数据
- Python File 介绍
- ListView的getFirstVisiblePosition等方法返回的是哪个对象
- 提取assemblyinfo.cs文件里的guid值
- ScrollView嵌套Gridview或者listview滚动问题
- bp神经网络算法原理 Levenberg Marquardt
- Dubbo实战入门,良心详解之作
- 2022-2028全球环氧水泥地坪漆行业调研及趋势分析报告
- opencv 轮廓提取文字
- 来自首次Ray聚会的记录
- Win10系统wifi图标消失无法联网怎么办
- Android生物认证Biometric 四十行代码轻松实现面部识别、指纹认证
- 英语四六级写作常用高分词汇句型替换
- Python基础 编写项目 学生管理系统
- 嵌入式系统分析与设计
- 中兴校招c语言在线笔试题,中兴2017校招软件在线笔试题
- 百篇大计敬本年之系统篇《十》 —— 系统文件名长度限制
- 猫眼即将上映的电影数据
热门文章
- [大数据技术] 淘宝双11数据分析与预测实验
- SDS新书的来龙去脉 amp;amp; SDS序言 - 倪光南:众筹出书也是一种创新
- [Nowcoder] [牛客网NOIP赛前集训TG4A] 动态点分治 [模拟]
- 软件测试工程师面试题之(计算机网络下)
- 防骗数据库,查询骗子电话QQ等
- 多元相关性分析_NAR:宏基因组网络分析工具MetagenoNets
- 勤做眼保健操,减轻眼睛疲劳
- Java 微信企业付款到零钱
- java-微信语言amr文件转码为Mp3文件
- Ceph Recovery分析