I have a fourier analysis signal as in the picture attached, where red represents the FFT of movement of the hand of a stroke subject and the blue one is the movement of a healthy subject.
I am doing some analysis called Spectral Arc Length, where I will calculate the spectral arc length to compute the smootheness of movement. (check out this paper: On the analysis of movement smoothness by Sivakumar Balasubramanian), where in the metric, the longer the spectral arc length, the less smooth the movement is.
The first image down here is the original data, where we can see that the DC component of the stroke subject is higher than the healthy subject, and the amplitude of the frequency signal is higher, causing the arc length of the signal to be larger, signifies less smooth movement.
MATLAB CODE:
y=variable;
Ts=1/Fs;
L= size(y,2); % Length of signal
NFFT = 2^(ceil(log2(L))+4); % Next power of 2 from length of y
Y = fft( y, NFFT )/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
however, I have a problem with my signal where the metric suggest than we should normalised the signal to the DC component of the signal (Y=Y/max(Y))
. By doing this, my signal turn out to be like the second picture, and when I calculate the spectral arc length metric, turns out that stroke 'apparently' have smoother movement than the healthy (due to shorter spectral arc length), which I am pretty sure should't be the case.
- My question is, does the normalization to the DC component makes sense? Does the DC component has any effect on the rest of the signal, where larger DC will cause larger amplitude of the signal?
- another option for me is to calculate the arc length after the DC signal (starting from the black marker is put on the signal here)
- I would also try to do some wavelet analysis if Fourier analysis doesn't work for my calculation...