Hilbert Transform usage in Envelope Detection

Status
Not open for further replies.

anishsingh

Junior Member level 2
Joined
Feb 27, 2012
Messages
20
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,283
Activity points
1,421
Hi
I am working on envelope detection of a speech signal using Hilbert transform in matlab.. It's mentioned that assuming signal is y
abs(y + j*hilbert(y) gives envelope of the signal..

How can this be interpreted intuitively?? I didn't understand the logic behind this... Could someone explain this to me
 

For example, y(t) = A cos(w_n * t)
Hilbert( y(t) ) => applying -90 degree phase shift (exp(-j*pi/2)) to the positive frequency components and +90 degree phase shift (exp(j*pi/2)) to the negative frequency components.

y(t) can be rewritten as, y(t) = A cos(w_n * t)
= (A/2) [exp( j * w_n * t ) + exp ( -j * w_n * t )]

Hilbert => (A/2) [exp( j * w_n * t ) exp( -j*pi/2 ) + exp( -j * w_n * t ) exp( +j*pi/2 ) ]
= (A/2) [-j * exp( j * w_n * t ) + j * exp(- j * w_n * t )]
= (A/2) [2 sin(w_n * t )]
= A sin( w_n * t )

Now, y(t) + j Hilbert(y(t)) = A cos( w_n * t ) + j A sin( w_n * t )
= A [cos( w_n * t ) + j sin( w_n * t )]
= A exp( j * w_n * t)

If you take the absolute value of the above expression => A since absolute value of exp is 1.
=> A can be a constant or time varying
=> Envelope is detected.

Hope this helps.
 

Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…