latest version v1.9 - last update 10 Apr 2010 |
This functor takes a vector, which is supposed to be periodic, and generates a second "normalized" shifted one. More...
#include <ltiShiftInvariance.h>
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 |
shiftInvariance & | copy (const shiftInvariance &other) |
virtual functor * | clone () const |
const parameters & | getParameters () const |
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
lti::shiftInvariance::shiftInvariance | ( | ) |
default constructor
lti::shiftInvariance::shiftInvariance | ( | const shiftInvariance & | other | ) |
copy constructor
other | the object to be copied |
virtual lti::shiftInvariance::~shiftInvariance | ( | ) | [virtual] |
destructor
operates on a copy of the given 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 |
operates on a copy of the given parameters.
src | dvector with the source data. | |
dest | dvector where the result will be left. |
bool lti::shiftInvariance::apply | ( | dvector & | srcdest | ) | const |
operates on the given parameter.
srcdest | dvector with the source data. The result will be left here too. |
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.
other | the functor to be copied |
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.