0,0 → 1,28 |
This is a draft version of my Fast Hartley Transform (FHT) routine for KolibriOS |
|
Hartley transform is a real-basis version of well-known Fourier transform: |
|
1) basis function: cas(x) = cos(x) + sin(x); |
2) forward transform: H(f) = sum(k=0..N-1) [X(k)*cas(kf/(2*pi*N))] |
3) reverse transform: X(k) = 1/N * sum(f=0..N-1) [H(f)*cas(kf/(2*pi*N))] |
|
FHT is known to be faster than most conventional fast Fourier transform (FHT) methods. |
It also uses half-length arrays due to no need of imaginary data storage. |
|
FHT can be easily converted to FFT (and back) with no loss of information. |
Most of general tasks FFT used for (correlation, convolution, energy spectra, noise |
filtration, differential math, phase detection ect.) may be done directly with FHT. |
|
==================================================================================== |
|
Copyright (C) A. Jerdev 1999, 2003 and 2010. |
|
The code can be used, changed and redistributed in any KolibriOS application |
with only two limitations: |
|
1) the author's name and copyright information cannot be deleted or changed; |
|
2) the code is not allowed to be ported to or distributed with other operation systems. |
|
18/09/2010 |
Artem Jerdev <kolibri@jerdev.co.uk> |