I normally implement the Hilbert transform using the Fourier transform.

I have noise related issues I want to solve. Does anybody have an (apodized) implementation of the Hilbert transform handy, preferably using a wavelet transform or some other kind of band limited convolution?

Any hints on how to generate a 1D or 2D kernel for instantaneous phase extract would be appreciated.

  • 1
    $\begingroup$ Questions asking for a code written to specification, are generally considered as off-topic. $\endgroup$ – jojek Apr 24 '16 at 8:33
  • $\begingroup$ @Mikhail Did you find want you were looking for, despite the closing? $\endgroup$ – Laurent Duval Sep 21 '16 at 18:00

Shameless plug ahead.

A 1D $M$-band dual-tree wavelet toolbox can be found in 1D Wavelet decompositions : Matlab toolbox for 1D dual-tree M-band wavelet decomposition, and we just shared the 2D version embedded in a code for multivariate Gaussian noise image filtering in $M$-band 2D dual-tree (Hilbert) wavelet multicomponent image denoising. It is not as clean as I wished, I hope I can work on a specific version soon.

Actually, although the primal wavelet fiters are FIR, these wavelets are implemented in the Fourier domain, as for splines. We found that pure time- or space- FIR approximations for their implemetation included directional issues. We choosed $M$-band wavelets because they allow orthogonality, symmmetry and finite support. We suspect that the finer frequency decomposition is beneficial to the Hilbert transform, that works better on band-limited signals.

Another discussion can be found in What are the most popular wavelet or tight frame regularizers for image reconstruction problems? and in How to implement a $j$-level $M$-band wavelet transform of an image?

For the sake of diversity, you can find other ($2$-band) codes here.

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.