Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

void Impala::Core::Tracking::Classifier::SommateTransposeMultiplications ( Array::Array2dScalarReal64 *&  matrix,
const Array::Array2dScalarReal64 samples 
) [inline, private]

Todo:
should move to Core/Matrix, except relies on mDimensionality

Definition at line 286 of file Classifier.h.

References Impala::Core::Array::Add(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CH(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CPB(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CW(), mDimensionality, and MultiplyWithTranspose().

Referenced by UpdateBackGroundModel().

00288     {
00289         double* dst = matrix->CPB();
00290         int i;
00291         for(i=0 ; i<matrix->CW()*matrix->CH() ; i++)
00292             dst[i] = 0;
00293 
00294         Array::Array2dScalarReal64* temp =
00295             new Array::Array2dScalarReal64(mDimensionality, mDimensionality, 0, 0);
00296         for(i=0 ; i<samples->CH() ; i++)
00297         {
00298             const double* sample = samples->CPB(0,i);
00299             MultiplyWithTranspose(temp, sample);
00300             Array::Add(matrix, matrix, temp);
00301         }
00302         delete temp;
00303         for(i=0 ; i<matrix->CH()*matrix->CH() ; i++)
00304             dst[i] /= (double)samples->CH();
00305     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:21:02 2011 for ImpalaSrc by  doxygen 1.5.1