Hypercomplex Wavelets

(Difference between revisions)
Jump to: navigation, search
m (Wavelet Editor)
m (Wavelet Editor)
Line 19: Line 19:
 
[[Image:Waveletedit.png|thumb|240px|right|Wavelet editor]]
 
[[Image:Waveletedit.png|thumb|240px|right|Wavelet editor]]
 
An editor for visualising linear combinations of wavelets was implemented.
 
An editor for visualising linear combinations of wavelets was implemented.
The code requires [http://rubyforge.org/projects/korundum/ qt4-qtruby] and [[HornetsEye]]. See [http://www.wedesoft.demon.co.uk/hornetseye-api/files/Installation-txt.html here] for more information. Here is the source code:
+
The code requires [http://rubyforge.org/projects/korundum/ qt4-qtruby], [[HornetsEye]], and the code above. See [http://www.wedesoft.demon.co.uk/hornetseye-api/files/Installation-txt.html here] for more information. Here is the source code:
 
* Ruby program: [http://vision.eng.shu.ac.uk/jan/waveletEdit.rb waveletEdit.rb]
 
* Ruby program: [http://vision.eng.shu.ac.uk/jan/waveletEdit.rb waveletEdit.rb]
 
* Qt4 design: [http://vision.eng.shu.ac.uk/jan/waveletEdit.ui waveletEdit.ui]
 
* Qt4 design: [http://vision.eng.shu.ac.uk/jan/waveletEdit.ui waveletEdit.ui]

Revision as of 13:48, 30 September 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

The implementation makes use of Selesnick's Hilbert transform pairs of wavelet bases. The implementation also requires the Ruby-extension HornetsEye which offers fast operations for n-dimensional arrays and hypercomplex numbers as element-types.

The source file can be downloaded here: kingsbury.rb.

Working.gif Under construction ...

Wavelet Editor

File:Waveletedit.png
Wavelet editor

An editor for visualising linear combinations of wavelets was implemented. The code requires qt4-qtruby, HornetsEye, and the code above. See here for more information. Here is the source code:

You need to compile the design file using rbuic4 like this:

rbuic4 waveletEdit.ui > ui_waveletEdit.rb

Working.gif Under construction ...

See Also

External Links

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox