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

template<class ArrayT>
ArrayT* Impala::Core::Matrix::MatConcatenateHorizontal ( std::vector< ArrayT * >  matrices  )  [inline]

Definition at line 17 of file MatConcatenate.h.

References ILOG_ERROR, ILOG_VAR, MatNrCol(), MatNrRow(), and Impala::Core::Vector::SetPart().

Referenced by Impala::Core::Feature::CalculateFISTDescriptors(), Impala::Core::Feature::CalculateSurfDescriptors(), and Impala::Core::Feature::InterestPointFeature::ComputeDescriptors().

00018 {
00019     ILOG_VAR(Core.Matrix.MatConcatenateHorizontal);
00020     int rows = MatNrRow(matrices[0]);
00021     int cols = 0;
00022     for(int i = 0; i < matrices.size(); i++)
00023     {
00024         cols += MatNrCol(matrices[i]);
00025         if(rows != MatNrRow(matrices[i]))
00026             ILOG_ERROR("nonconformant MatConcatenateHorizontal operands.");
00027     }
00028 
00029     ArrayT* res = MatCreate<ArrayT>(rows, cols);
00030     int startCol = 0;
00031     for(int i = 0; i < matrices.size(); i++)
00032     {
00033         SetPart(res, matrices[i], 0, 0, MatNrCol(matrices[i]), MatNrRow(matrices[i]), startCol, 0);
00034         startCol += MatNrCol(matrices[i]);
00035     }
00036     return res;
00037 }

Here is the call graph for this function:


Generated on Thu Jan 13 09:20:12 2011 for ImpalaSrc by  doxygen 1.5.1