epratt96

06-24-2008, 01:09 AM

Hi,

Below is a copy of my original posting, and a Summary of the Responses received. Thanks to all who responded. In conclusion we have decided to investigate by completing FFT of data, before and after filtering with the Woltring Filter with different MSE values (e.g. 5, 10, 15 & 20) to check the cut-off frequencies seen, and the effect on data. We are planning to do this for a range of both 'normal' and pathological gait data.

Thanks again

Emma

Emma Pratt, Pre-Registration Clinical Scientist, Sheffield Teaching Hospitals, UK. __________________________________________________ ____________________________________________

Original Posting:

Can anyone suggest some experimental techniques that will highlight the relative problems of using the GCV smoothing and different values of MSE in the Woltering filter routine, for gait analysis? I have done a bit of literature research regarding the formats of the filters and understand the fundamental differences, however I still do not feel I can make an informed decision about which to use in what situation.

I work in a clinical gait laboratory which utilises both kinematic, moment and power information. I have been advised different values of the MSE (i.e 10, 15 & 20) to apply to data, which I have subsequently applied to 'normal' gait data and compared results, with expected findings of smoother data with higher MSE values. Has anyone got suggestions of any further experiments I could complete in a gait lab that would improve my understanding of the parameters, their effect on data, and help me make an informed decision in regards to MSE value used and effects on data from different patients.

__________________________________________________ _________________________________

Replies:

- - - - - - - - - - - - - -- - - -

Hi Emma-

You might consider doing a Fourier spectrum analysis of your unfiltered signal to understand the frequency content. You may be able to utilize your own filter tailored to your specific data depending on where your signal has the highest power and ensuring your filtering adheres to the Nyquist criterion to avoid aliasing. I have done this with human injurious impact experiment data that does not necessarily need to be filtered to SAE J211 requirements, so I suppose your gait data may be somewhat similar type impact data

Best regards,

Adam Bartsch

Cleveland Clinic Spine Research Laboratory

- - - - - - - - - - - - - - - - - -

Hi Emma,

I used MSE to smooth my data. I use the square of an estimation of the marker error ( 1 to 2 mm) thus I use a value of 3 or 4 in the MSE. GCV smooth not very well the data. The filtered data follow "strongly" the raw data. You can also compare your data with a butterworth filtering approach.

Best regards

Patrick Salvia Ph. D.

Center for functional evaluation, Laboratoire d'Anatomie, Biomécanique et Organogénèse (LABO)Department of Anatomy (CP 619), Université Libre de Bruxelles (ULB)

- - - - - - - - - - - - - - - - - - -

Have a look at the attached paper (J of Electromyography and Kinesiology 2003, 3: 569-573). I have looked into the original GCV filter written by Woltring (I modified the Fortran code to accept my own data).As Woltring stated the filter is similar to the zero-lag Butterworth filter.I found that the MSE values suggested by Vicon greatly over smoothed the data. I would be interested in your analysis. As a test signal I used a waveform that included a sine wave, an impulse, a square wave and a triangle wave. I have included the ASCII file.

Gordon Robertson

University of Ottowa

- - - - - - - - - - - - - - - -

Emma,I suspect within the range of sensible MSE values that you have chosen you will find very little difference. The one thing I would point out is that the filter characteristics have been especially chosen to give smooth kinetics (moments and powers). You should probably thus focus on these when comparing output.

Richard Baker

Royal Childrens Hospital, Victoria, Australia

- - - - - - - - - - - - - - - - - - -

And finally a response that was e-mailed to the entire biomch-l forum, but I have included in the summary for the sake of completeness

Emma Pratt wrote:> Can anyone suggest some experimental techniques that will

> highlight the relative problems of using the GCV smoothing

> and different values of MSE in the Woltering filter routine,

> for gait analysis?

There was a related question today by Julius Verrel.

I may be one of the earliest users of GCVSPL, Herman Woltring sent it tome on a 9 track tape in 1985. This eventually led to the formation of Biomch-L, but that is a different story. GCVSPL can be used in three modes: GCV, MSE, and fixed smoothing. I am writing the following from memory, please consult the documentation for authoritative information. Also I recommend reading Woltring's 1985 paper in Human Movement Science. That paper presents some tests on actual data. The Generalized Cross Validation (GCV) mode determines the optimal amount of smoothing based on statistical analysis of the signal. The amount of smoothing is chosen such that you get minimal error in estimating a data point that was left out. While this is intuitively appealing, I quickly found out that this does not always give good results. If the noise is not perfectly uncorrelated and Gaussian, GCV may think that some of your noise contains useful information, and do insufficient smoothing. This may not be apparent when you look at joint angles, but if you do inverse dynamic analysis, joint moments (which contain second derivatives) may become too noisy. The MSE mode is useful if you know the magnitude of the noise. In this mode, GCVSPL will increase the amount of smoothing just enough that the difference between smoothed signal and original signal is equal to the square root of the MSE. I found this to be give better results than GCV. For instance, if your raw data is motion capture data (in mm) and you know your noise is 0.5 mm, set MSE to a value of 0.25 to get the desired result. If it is not smooth enough, you probably under estimated the noise level and you can try a higher MSE.In fixed smoothing, you set the amount of smoothing (p value) yourself. This is the fastest mode because it does not involve iteration. In the release notes, Woltring explains that (except for boundary effects) the GCVSPL acts like a Butterworth filter, and there is a relationship between p and the cutoff frequency. This is how I always use GCVSPLnow. The advantage is that you can report your cutoff frequency when describing Methods and this relates to other filtering methods. It also avoids the situation that every trial is smoothed differently. If you use GCVSPL this way, it does not really do anything different than a Butterworth filter, with the following differences:- Different results near the beginning and end of data. What is "near" depends on the cutoff frequency. - GCVSPL can process data that is not sampled at a constant samplingrate (but large gaps are not interpolated well!)- GCVSPL can resample filtered data at arbitrary time points- GCVSPL can calculate signal derivatives from splines, without finitedifferencesFor most applications, you can use a Butterworth filter (e.g. Matlabfunctions "butter" and "filtfilt") and get the same results.By the way, there have been several Matlab interfaces developed forGCVSPL, and they can be found in the ISB software repository(www.isbweb.org). These may need to be updated for new Matlab versions.ISB also has the original Fortran code and an Windows/MSDOS command-lineinterface which I adapted from Woltring's original test program.Finally a specific answer to Julius' question: from the aboveexplanation it should be clear that there is no relationship between MSEand cutoff frequency. In MSE mode, the cutoff frequency will depend onthe MSE value you provide, and on the signal. If it is a very lowfrequency signal, the cutoff frequency will be lower Afterwards,GCVSPL tells you which p value it used, and you can convert this into acutoff frequency (in Hz) using the formula in the GCVSPL release notes.There are probably other relevant postings in the Biomch-L archives,search for "GCVSPL".Ton van den BogertA.J. (Ton) van den Bogert, PhD Department of Biomedical Engineering Cleveland Clinic Foundation________________________________________ _________________________

__________________________________________________ _______________

Great deals on almost anything at eBay.co.uk. Search, bid, find and win on eBay today!

http://clk.atdmt.com/UKM/go/msnnkmgl0010000004ukm/direct/01/

Below is a copy of my original posting, and a Summary of the Responses received. Thanks to all who responded. In conclusion we have decided to investigate by completing FFT of data, before and after filtering with the Woltring Filter with different MSE values (e.g. 5, 10, 15 & 20) to check the cut-off frequencies seen, and the effect on data. We are planning to do this for a range of both 'normal' and pathological gait data.

Thanks again

Emma

Emma Pratt, Pre-Registration Clinical Scientist, Sheffield Teaching Hospitals, UK. __________________________________________________ ____________________________________________

Original Posting:

Can anyone suggest some experimental techniques that will highlight the relative problems of using the GCV smoothing and different values of MSE in the Woltering filter routine, for gait analysis? I have done a bit of literature research regarding the formats of the filters and understand the fundamental differences, however I still do not feel I can make an informed decision about which to use in what situation.

I work in a clinical gait laboratory which utilises both kinematic, moment and power information. I have been advised different values of the MSE (i.e 10, 15 & 20) to apply to data, which I have subsequently applied to 'normal' gait data and compared results, with expected findings of smoother data with higher MSE values. Has anyone got suggestions of any further experiments I could complete in a gait lab that would improve my understanding of the parameters, their effect on data, and help me make an informed decision in regards to MSE value used and effects on data from different patients.

__________________________________________________ _________________________________

Replies:

- - - - - - - - - - - - - -- - - -

Hi Emma-

You might consider doing a Fourier spectrum analysis of your unfiltered signal to understand the frequency content. You may be able to utilize your own filter tailored to your specific data depending on where your signal has the highest power and ensuring your filtering adheres to the Nyquist criterion to avoid aliasing. I have done this with human injurious impact experiment data that does not necessarily need to be filtered to SAE J211 requirements, so I suppose your gait data may be somewhat similar type impact data

Best regards,

Adam Bartsch

Cleveland Clinic Spine Research Laboratory

- - - - - - - - - - - - - - - - - -

Hi Emma,

I used MSE to smooth my data. I use the square of an estimation of the marker error ( 1 to 2 mm) thus I use a value of 3 or 4 in the MSE. GCV smooth not very well the data. The filtered data follow "strongly" the raw data. You can also compare your data with a butterworth filtering approach.

Best regards

Patrick Salvia Ph. D.

Center for functional evaluation, Laboratoire d'Anatomie, Biomécanique et Organogénèse (LABO)Department of Anatomy (CP 619), Université Libre de Bruxelles (ULB)

- - - - - - - - - - - - - - - - - - -

Have a look at the attached paper (J of Electromyography and Kinesiology 2003, 3: 569-573). I have looked into the original GCV filter written by Woltring (I modified the Fortran code to accept my own data).As Woltring stated the filter is similar to the zero-lag Butterworth filter.I found that the MSE values suggested by Vicon greatly over smoothed the data. I would be interested in your analysis. As a test signal I used a waveform that included a sine wave, an impulse, a square wave and a triangle wave. I have included the ASCII file.

Gordon Robertson

University of Ottowa

- - - - - - - - - - - - - - - -

Emma,I suspect within the range of sensible MSE values that you have chosen you will find very little difference. The one thing I would point out is that the filter characteristics have been especially chosen to give smooth kinetics (moments and powers). You should probably thus focus on these when comparing output.

Richard Baker

Royal Childrens Hospital, Victoria, Australia

- - - - - - - - - - - - - - - - - - -

And finally a response that was e-mailed to the entire biomch-l forum, but I have included in the summary for the sake of completeness

Emma Pratt wrote:> Can anyone suggest some experimental techniques that will

> highlight the relative problems of using the GCV smoothing

> and different values of MSE in the Woltering filter routine,

> for gait analysis?

There was a related question today by Julius Verrel.

I may be one of the earliest users of GCVSPL, Herman Woltring sent it tome on a 9 track tape in 1985. This eventually led to the formation of Biomch-L, but that is a different story. GCVSPL can be used in three modes: GCV, MSE, and fixed smoothing. I am writing the following from memory, please consult the documentation for authoritative information. Also I recommend reading Woltring's 1985 paper in Human Movement Science. That paper presents some tests on actual data. The Generalized Cross Validation (GCV) mode determines the optimal amount of smoothing based on statistical analysis of the signal. The amount of smoothing is chosen such that you get minimal error in estimating a data point that was left out. While this is intuitively appealing, I quickly found out that this does not always give good results. If the noise is not perfectly uncorrelated and Gaussian, GCV may think that some of your noise contains useful information, and do insufficient smoothing. This may not be apparent when you look at joint angles, but if you do inverse dynamic analysis, joint moments (which contain second derivatives) may become too noisy. The MSE mode is useful if you know the magnitude of the noise. In this mode, GCVSPL will increase the amount of smoothing just enough that the difference between smoothed signal and original signal is equal to the square root of the MSE. I found this to be give better results than GCV. For instance, if your raw data is motion capture data (in mm) and you know your noise is 0.5 mm, set MSE to a value of 0.25 to get the desired result. If it is not smooth enough, you probably under estimated the noise level and you can try a higher MSE.In fixed smoothing, you set the amount of smoothing (p value) yourself. This is the fastest mode because it does not involve iteration. In the release notes, Woltring explains that (except for boundary effects) the GCVSPL acts like a Butterworth filter, and there is a relationship between p and the cutoff frequency. This is how I always use GCVSPLnow. The advantage is that you can report your cutoff frequency when describing Methods and this relates to other filtering methods. It also avoids the situation that every trial is smoothed differently. If you use GCVSPL this way, it does not really do anything different than a Butterworth filter, with the following differences:- Different results near the beginning and end of data. What is "near" depends on the cutoff frequency. - GCVSPL can process data that is not sampled at a constant samplingrate (but large gaps are not interpolated well!)- GCVSPL can resample filtered data at arbitrary time points- GCVSPL can calculate signal derivatives from splines, without finitedifferencesFor most applications, you can use a Butterworth filter (e.g. Matlabfunctions "butter" and "filtfilt") and get the same results.By the way, there have been several Matlab interfaces developed forGCVSPL, and they can be found in the ISB software repository(www.isbweb.org). These may need to be updated for new Matlab versions.ISB also has the original Fortran code and an Windows/MSDOS command-lineinterface which I adapted from Woltring's original test program.Finally a specific answer to Julius' question: from the aboveexplanation it should be clear that there is no relationship between MSEand cutoff frequency. In MSE mode, the cutoff frequency will depend onthe MSE value you provide, and on the signal. If it is a very lowfrequency signal, the cutoff frequency will be lower Afterwards,GCVSPL tells you which p value it used, and you can convert this into acutoff frequency (in Hz) using the formula in the GCVSPL release notes.There are probably other relevant postings in the Biomch-L archives,search for "GCVSPL".Ton van den BogertA.J. (Ton) van den Bogert, PhD Department of Biomedical Engineering Cleveland Clinic Foundation________________________________________ _________________________

__________________________________________________ _______________

Great deals on almost anything at eBay.co.uk. Search, bid, find and win on eBay today!

http://clk.atdmt.com/UKM/go/msnnkmgl0010000004ukm/direct/01/