DSPRelated.com
Forums

cleaning physiological data for FFT

Started by dsjo...@gmail.com September 29, 2011
Hi all,

I'm new to DSP and Matlab and come from a non-engineering background (so go easy on me!), and have a few basic questions. As part of my psych studies im tracking the diameter of the pupil over 60s, at 60 samples a second. This is in response to stimuli of varying frequencies between 0 and 7 Hz. I plan to investigate the responses using FFT in Matlab

My problem is that if someone blinks, or the pupil is lost by the tracking software, this returns a data value of 0 for the duration of the blink/loss of tracking. In practice this can be anything from 3 to hundreds of samples.

1) I have read about zero padding, but it is only mentioned as being applied at the beginning or end of data. I assume then that my 0 values that automatically get applied will mess up the FFT? One option is to cut the missing data values out (that is, those that have a 0 value). This however would mess with the sampling rate of the data. As i know the sampling rate, should i cut out these 0 values and then specify the time again starting from 0 using the known sample rate? Any better suggestions?

2) I am trying to pick a filter that will give me the best resolution for values between roughly 0.25 and 6.5 Hz. Anything to either side of this is noise for my purposes. The accuracy of the amplitude in this range is of importance to me. There seem to be a whole heap with very subtle differences, any suggestion would be great. Of course, I need to be able to easily implement it in Matlab.

Cheers for your help,

Daniel