use hilbert transform