PDA

View Full Version : Re: Woltring Filter cutt-off-frequency <--> VAL/P-value

Van Den Bogert, Ton
09-18-2006, 03:22 AM
First some background for the Biomch-L subscriber. In the GCVSPL
software, VAL is the "smoothing parameter" of the spline, which occurs
as a weighting factor in a cost function which is minimized. This
produces a compromise between how well the spline fits the measurements
and its smoothness (for a more detailed explanation, see my notes in
http://isbweb.org/software/sigproc/bogert/filter.pdf).

Woltring describes the relationship between VAL and frequency domain
filter characteristics in his release notes:
http://isbweb.org/software/sigproc/gcvspl/gcvspl.memo. This states that
a smoothing spline is equivalent to a

"double, phase-symmetric
Butterworth filter, with transfer function H(w) = [1 +
(w/wo)^2M]^-1,
where w is the frequency, wo = (p*T)^(-0.5/M) the filter's
cut-off
frequency, p the smoothing parameter, T the sampling interval,
and 2M
the order of the spline. If T is expressed in seconds, the
frequen-

The VAL calculations that you cited can be derived from this.

The equation for the transfer function has the property H(w0)= 0.5.
This is because it is a double Butterworth filter (applied twice).
Cut-off frequency is usually defined as the frequency at which
H=1/sqrt(2), and this is why Tony Reina and I have an extra factor in
the equation.

You can easily verify the correctness of your spline smoothing by
processing a sine wave signal at the cut-off frequency. If it comes out
as a sine wave with its amplitude reduced by a factor 1.41 (=sqrt(2)),
you have used the correct VAL. I have done this and it came out as
expected.

--

Ton van den Bogert

> -----Original Message-----
> From: * Biomechanics and Movement Science listserver
> [mailto:BIOMCH-L@NIC.SURFNET.NL] On Behalf Of Rettig, Oliver
> Sent: Friday, September 15, 2006 5:30 AM
> To: BIOMCH-L@NIC.SURFNET.NL
> Subject: [BIOMCH-L] Woltring Filter cutt-off-frequency
> VAL/P-value
>
> Dear all,
>
> we implement an algorithm for gait event detection.
>
> For smoothing and derivating the data we want to use the WOLTRING
> filter. We have found Tony Reina's Matlab MEX interface for the
> GCVSPL and SPLDER packages based on Dwight Meglan's C Code on the web
>
> We have the problem to find the correct VAL value for the WOLTRING
> GCVSPL package.
> We found three approaches:
>
> 1. From dan@indy1.motorlab.nsi.eduSun
>
> VAL = sampling_freq/(2*PI*cut_off_freq)**(2*order)
>
> 2. from Ton van den Bogert
>
> w0factor = (sqrt(2.0)-1)**(0.5/m)
>
> val = 1.0/dt*(2*pi*f0/w0factor)**(-2*m)
>
> 3. Tony Reina
>
> VAL = (EMG-sampling_freqency/1000.0) /
> pow(2*PI*EMG_CUTOFF_FREQUENCY/1000.0/pow( (sqrt(2.0)-1),0.5/M),2.0*M)
>
> (including in EMG example)
>
>
> Our questions are:
>
> Do anybody know what is the correct equation for calculating the mode
> value VAL from given cut-off-frequeny?
>
> And why the factor 1000 appears in the equation from Tony Reina?
>
> Many thanks
>
> Kai Kraft
> Oliver Rettig

===================================
Cleveland Clinic is ranked one of the top 3 hospitals in America by U.S.News & World Report. Visit us online at http://www.clevelandclinic.org for a complete listing of our services, staff and locations.

Confidentiality Note: This message is intended for use only by the individual or entity to which it is addressed and may contain information that is privileged, confidential, and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please contact the sender immediately and destroy the material in its entirety, whether electronic or hard copy. Thank you.