tftb-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

FW: Re: [Tftb-help] RE: Tftb-help Digest, Vol 2, Issue 5


From: jocelyn lu
Subject: FW: Re: [Tftb-help] RE: Tftb-help Digest, Vol 2, Issue 5
Date: Sat, 22 Apr 2006 11:00:23 +0800

Hi, Eric,
Sorry, one more doubt,
=> tfr(indices,icol)=x(ti+tau,1).*conj(h(Lh+1+tau));

but in equaton of the defination of STFT, http://gdr-isis.org/tftb/tutorial/node22.html, it should be x(u)h*(u-t). I'm not sure how you make the codes tally with the eqn.Kindly advise.

Thanks,
Jocelyn

From: "jocelyn lu" <address@hidden>
To: address@hidden
CC: address@hidden
Subject: Re: [Tftb-help] RE: Tftb-help Digest, Vol 2, Issue 5
Date: Sat, 22 Apr 2006 09:57:10 +0800


Hi,Eric,

Thank you very much.I'm very surprised that your group's response so fast and responsible.
I have two more doubts actually:
1) => tau=-min([round(N/2)-1,Lh,ti-1]):min([round(N/2)-1,Lh,xrow-ti]);
why to choose the tau range like above?how to think it in this way?
2) =>indices= rem(N+tau,N)+1;
Is this row index correct in such way to be defined by tau range? Because I found that all the tfr value(before fft) falls on the top and the bottom area of the time-freq domain.Or other words, all zero values in the middle area. You can test it by disable all the codes below
=> tfr(indices,icol)=x(ti+tau,1).*conj(h(Lh+1+tau));
=> end;

then in Matlab command window, you could enter:
=>X=fmlin(128); tfr=tfrstft(X);imagesc(abs(tfr));

I hope you get the same plot result as mine, components seperately located on the top and bottom. Do you think all the signal values transformed by stft?
A nice fmlin signal is only obtained by doing fft(tfr).
I'm wondering why to implement in such way?Besides practical cases, is there any other reason, like math method, or others?

thanks,
Jocelyn




From: Eric Chassande-Mottin <address@hidden>
To: jocelyn lu <address@hidden>
CC: address@hidden
Subject: Re: [Tftb-help] RE: Tftb-help Digest, Vol 2, Issue 5
Date: Fri, 21 Apr 2006 13:58:24 +0200 (CEST)


Hi,

Is there anybody could help to explain tfrstft?why using frequency smoothing window H, instead of time smoothing window based on the STFT time-domain equation?

TFRSTFT Short time Fourier transform.
        [TFR,T,F]=TFRSTFT(X,T,N,H,TRACE) computes the short-time Fourier
        transform of a discrete-time signal X.
        X     : signal.
        T     : time instant(s)          (default : 1:length(X)).
        N     : number of frequency bins (default : length(X)).
        H     : frequency smoothing window, H being normalized so as to
                be  of unit energy.      (default : Hamming(N/4)).

I think you are misled by the termilogy of the above online help. the input parameter H of tfrstft is the analysis window in the _time_ domain. In fact, the terms of the online help of tfrsp should be used here instead, namely

       H     : analysis window, H being normalized so as to
                be  of unit energy.      (default : Hamming(N/4)).

I guess the words "frequency smoothing" were meant here to explain that this window produces some kind of smoothing in the frequency domain.

see http://gdr-isis.org/tftb/tutorial/node22.html

I'll fix the CVS version if agreed by all developers.

And why choose the window size as /4?

i think that it is an arbitrary choice. by experience, it gives reasonable in many practical cases.

eric.

_________________________________________________________________
Get cheap fares online with MSN Travel http://www.msn.com.sg/travel/


_________________________________________________________________
Take a break! Find destinations on MSN Travel. http://www.msn.com.sg/travel/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]