LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::shiftInvariance Class Reference

This functor takes a vector, which is supposed to be periodic, and generates a second "normalized" shifted one. More...

#include <ltiShiftInvariance.h>

Inheritance diagram for lti::shiftInvariance:
Inheritance graph
[legend]
Collaboration diagram for lti::shiftInvariance:
Collaboration graph
[legend]

List of all members.

Classes

class  parameters
 the parameters for the class shiftInvariance More...

Public Member Functions

 shiftInvariance ()
 shiftInvariance (const shiftInvariance &other)
virtual ~shiftInvariance ()
virtual const char * getTypeName () const
bool apply (dvector &srcdest) const
bool apply (const dvector &src, dvector &dest) const
bool apply (const dvector &src, dvector &dest, int &shft) const
shiftInvariancecopy (const shiftInvariance &other)
virtual functorclone () const
const parametersgetParameters () const

Detailed Description

This functor takes a vector, which is supposed to be periodic, and generates a second "normalized" shifted one.

It uses different modi.

This first one uses the property of the fourier transform to represent a vector "shift" as the addition of a factor k*w (w=2*Pi*f) to the phase of its representation in the frecuency space. To get rid of this term, the phase is twice derived, and the result is subracted from the first order derivative. This resulting vector should represent a constant value k, but due to the phase "discontinuities" is not the case. The average of the vector values which lie in a given tolerance interval will be used to calculate the shift.

This hasn't beed documented anywere

The second one calculates and centers the first momentum of the cyclic vector at the position 0


Constructor & Destructor Documentation

lti::shiftInvariance::shiftInvariance (  ) 

default constructor

lti::shiftInvariance::shiftInvariance ( const shiftInvariance other  ) 

copy constructor

Parameters:
other the object to be copied
virtual lti::shiftInvariance::~shiftInvariance (  )  [virtual]

destructor


Member Function Documentation

bool lti::shiftInvariance::apply ( const dvector src,
dvector dest,
int &  shft 
) const

operates on a copy of the given parameters.

Parameters:
src dvector with the source data.
dest dvector where the result will be left.
shft will contain the number of elements the vector was shifted
Returns:
true if apply successful or false otherwise.
bool lti::shiftInvariance::apply ( const dvector src,
dvector dest 
) const

operates on a copy of the given parameters.

Parameters:
src dvector with the source data.
dest dvector where the result will be left.
Returns:
true if apply successful or false otherwise.
bool lti::shiftInvariance::apply ( dvector srcdest  )  const

operates on the given parameter.

Parameters:
srcdest dvector with the source data. The result will be left here too.
Returns:
true if apply successful or false otherwise.
virtual functor* lti::shiftInvariance::clone (  )  const [virtual]

returns a pointer to a clone of this functor.

Reimplemented from lti::globalFeatureExtractor.

shiftInvariance& lti::shiftInvariance::copy ( const shiftInvariance other  ) 

copy data of "other" functor.

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::globalFeatureExtractor.

const parameters& lti::shiftInvariance::getParameters (  )  const

returns used parameters

Reimplemented from lti::globalFeatureExtractor.

virtual const char* lti::shiftInvariance::getTypeName (  )  const [virtual]

returns the name of this type ("shiftInvariance")

Reimplemented from lti::globalFeatureExtractor.


The documentation for this class was generated from the following file:

Generated on Sat Apr 10 15:27:51 2010 for LTI-Lib by Doxygen 1.6.1