61 retVal.resize(rTCSGram.
getSize(), 0.0);
65 for (
int iPosition = 0; iPosition < rTCSGram.
getSize(); iPosition++)
74 iSkipLower = -iLowerPos;
78 if (iUpperPos >= rTCSGram.
getSize())
80 int iMaxIndex = rTCSGram.
getSize() - 1;
81 iUpperPos = iMaxIndex;
87 for (
int iPC = 0; iPC < 6; iPC++)
90 double dSmoothedValue = 0.0;
93 for (
int i = iLowerPos; i <= iUpperPos; i++)
96 dSmoothedValue +=
m_vaGaussian[iSkipLower + j++] * rCV[iPC];
99 smoothedVector[iPC] = dSmoothedValue;
105 for (
int iPosition = 0; iPosition < rTCSGram.
getSize(); iPosition++)
120 smoothedTCSGram.
getTCSVector(iPosition-iWindow, previousTCS);
129 smoothedTCSGram.
getTCSVector(iPosition+iWindow, nextTCS);
133 double distance = 0.0;
135 for (
size_t j = 0; j < 6; j++)
137 distance += std::pow(nextTCS[j] - previousTCS[j], 2.0);
140 retVal[iPosition] = std::pow(distance, 0.5);