yymn

小波

最近要用到小波,matlab中有现成的小波函数,但opencv中没有,很好奇opencv怎么没把这么重要的工具包含进去。

网上找了资料很多,但太杂,重复太多。

终于发现了一篇系统介绍小波的,O(∩_∩)O哈哈~  分享之:http://ivm.sjtu.edu.cn/files/wavelet/%E7%AC%AC3%E7%AB%A0wavelet_original.pdf

http://media.cs.tsinghua.edu.cn/~ahz/digitalimageprocess/chapter12/chapt12_ahz.htm#d1 这是清华的一个课件很好!!!同事推荐的

此外:二维离散小波变换(Mallat快速算法) matlab

 

个人理解:

1. 小波是指满足某些条件的一个函数簇,已经有人提出了一些,但是人们还在构造新的小波函数。

matlab 中实现的:

 Available wavelet names \'wname\' are:
%   Daubechies: \'db1\' or \'haar\', \'db2\', ... ,\'db45\'
%   Coiflets  : \'coif1\', ... ,  \'coif5\'
%   Symlets   : \'sym2\' , ... ,  \'sym8\', ... ,\'sym45\'
%   Discrete Meyer wavelet: \'dmey\'
%   Biorthogonal:
%       \'bior1.1\', \'bior1.3\' , \'bior1.5\'
%       \'bior2.2\', \'bior2.4\' , \'bior2.6\', \'bior2.8\'
%       \'bior3.1\', \'bior3.3\' , \'bior3.5\', \'bior3.7\'
%       \'bior3.9\', \'bior4.4\' , \'bior5.5\', \'bior6.8\'.
%   Reverse Biorthogonal: 
%       \'rbio1.1\', \'rbio1.3\' , \'rbio1.5\'
%       \'rbio2.2\', \'rbio2.4\' , \'rbio2.6\', \'rbio2.8\'
%       \'rbio3.1\', \'rbio3.3\' , \'rbio3.5\', \'rbio3.7\'
%       \'rbio3.9\', \'rbio4.4\' , \'rbio5.5\', \'rbio6.8\'.

 

详见:wfilters函数

 

2. 小波变换:也可以理解为小波分解。因为本人做的是图像处理领域的工作,就针对图像说一下。小波分解可将一幅图像分成四部分:

LL:水平低频,垂直低频

LH:水平低频,垂直高频

HL:水平高频,垂直低频

HH:水平高频,垂直高频

不理解的同学,可以看一下:二维离散小波变换(Mallat快速算法) matlab 中的多尺度分解图。或者小波文档中的p27/66中的图像。

 

3. 程序实现小波变换和逆变换: 
现在要用的一般是Mallat的方法——用一个低通滤波器,一个高通滤波实现,博文二维离散小波变换(Mallat快速算法) matlab中显示了其过程,并提供了matlab程序。

 

之后自己写的小波变换:小波变换 C++ opencv 实现

分类:

技术点:

相关文章: