Hypercomplex Wavelets
m (→Wavelet Editor) |
m (→Wavelet Editor) |
||
Line 21: | Line 21: | ||
rbuic4 waveletEdit.ui > ui_waveletEdit.rb | rbuic4 waveletEdit.ui > ui_waveletEdit.rb | ||
</pre> | </pre> | ||
− | |||
− | |||
=See Also= | =See Also= |
Revision as of 16:59, 2 October 2007
Contents |
Introduction
Complex wavelets are superior to real-valued wavelets because they are nearly shift-invariant. Complex wavelets yield amplitude-phase information in a similar way as the Fourier transform does. In contrast to the Fourier transform, wavelets allow to analyse the signal locally and thus can be applied to signals with a non-stationary statistic (such as images of a natural scene). In the same way as a one-dimensional signal requires complex numbers to represent the local structure of the signal, two-dimensional signals require hypercomplex numbers. Kingsbury has developed the Dual-Tree Hypercomplex Wavelet Transform (DHWT) which allows to recursively decompose a two-dimensional image.
Implementation
HornetsEye now contains an implementation of the Dual-Tree Hypercomplex Wavelet Transform (DHWT). The implementation makes use of Selesnick's Hilbert transform pairs of wavelet bases. The wavelet transform makes use of HornetsEye's MultiArray class.
Wavelet Editor
An editor for visualising linear combinations of wavelets was implemented. The code requires qt4-qtruby, and HornetsEye. Here is the source code:
- Ruby program: waveletEdit.rb
- Qt4 design: waveletEdit.ui
You need to compile the design file using rbuic4 like this:
rbuic4 waveletEdit.ui > ui_waveletEdit.rb