SPRAAK
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Functions
sspmod_deriv.c File Reference

Calculation of first and second time derivatives. More...

Functions

void spr_deriv_free (SprSspInfo *Info)
 
int spr_deriv_setup (SprSspInfo *Info, const char **descript, void *aux_info)
 
int spr_deriv_process (SprSspInfo *Info, const void *frame_in, void *frame_out)
 
void spr_deriv_reset (SprSspInfo *Info, SprSspStatus *action)
 

Detailed Description

Calculation of first and second time derivatives.

Calculation of first and second time derivatives

Simple first time derivatives are computed as
    ys(t) = -x(t-1) +x(t+1)
Robust first time derivatives are computed as
    yr(t) = -2x(t-2) -x(t-1) +x(t+1) +2x(t+2)
Second time derivatives are computed as
    z(t) = 2x(t-3) +x(t-2) -2x(t-1) -2x(t) -2x(t+1) +x(t+2) +2x(t+3)
 or z(t) = -yr(t-1) +yr(t+1) = ys(yr(t))

The calculation is frame based. To garantee time synchrony with the input, the first and last frame of the input are both multipled accordingly.


[deriv]
order <first/second>(first) [robust/simple](robust) [mirror/dup](dup)
Calculation of first or second order time derivative. The first order derivatie can be either based on 3 points (simple) or 5 points (robust). The robust/simple option has no effect on the second order derivative. The first/last frames are handled by either mirroring the input or by duplcating the very first/last input frame.

See Also
ssp_master.c
Revision History:
Replaces former deriv.c and the derivation in cderiv.c
Date
4 Oct 1994
Author
Jacques Duchateau