Functions
LinearAlgebra Namespace Reference

Mathematic functions operating on the data types CFloatMatrix, CFloatVector, CDoubleMatrix, and CDoubleVector. More...

Functions

void AddMatMat (const CFloatMatrix *pMatrix1, const CFloatMatrix *pMatrix2, CFloatMatrix *pResultMatrix)
void AddMatMat (const CDoubleMatrix *pMatrix1, const CDoubleMatrix *pMatrix2, CDoubleMatrix *pResultMatrix)
void AddToMat (CFloatMatrix *pMatrix, const CFloatMatrix *pMatrixToAdd)
void AddToMat (CDoubleMatrix *pMatrix, const CDoubleMatrix *pMatrixToAdd)
void AddToVec (CFloatVector *pVector, const CFloatVector *pVectorToAdd)
void AddToVec (CDoubleVector *pVector, const CDoubleVector *pVectorToAdd)
void AddVecVec (const CFloatVector *pVector1, const CFloatVector *pVector2, CFloatVector *pResultVector)
void AddVecVec (const CDoubleVector *pVector1, const CDoubleVector *pVector2, CDoubleVector *pResultVector)
bool CalculatePseudoInverseSimple (const CFloatMatrix *pInputMatrix, CFloatMatrix *pResultMatrix)
bool CalculatePseudoInverseSimple (const CDoubleMatrix *pInputMatrix, CDoubleMatrix *pResultMatrix)
void CalculatePseudoInverseSVD (const CFloatMatrix *pInputMatrix, CFloatMatrix *pOutputMatrix)
void CalculatePseudoInverseSVD (const CDoubleMatrix *pInputMatrix, CDoubleMatrix *pOutputMatrix)
bool DetermineAffineTransformation (const Vec2d *pSourcePoints, const Vec2d *pTargetPoints, int nPoints, Mat3d &A, bool bUseSVD=false)
 Determines an affine transformation based on a set of 2d-2d point correspondences.
bool DetermineHomography (const Vec2d *pSourcePoints, const Vec2d *pTargetPoints, int nPoints, Mat3d &A, bool bUseSVD=false)
 Determines a homography based on a set of 2d-2d point correspondences.
bool Invert (const CFloatMatrix *pInputMatrix, CFloatMatrix *pResultMatrix)
bool Invert (const CDoubleMatrix *pInputMatrix, CDoubleMatrix *pResultMatrix)
void MulMatMat (const CFloatMatrix *A, const CFloatMatrix *B, CFloatMatrix *pResultMatrix, bool bTransposeB=false)
void MulMatMat (const CDoubleMatrix *pMatrix1, const CDoubleMatrix *pMatrix2, CDoubleMatrix *pResultMatrix, bool bTransposeB=false)
void MulMatVec (const CFloatMatrix *pMatrix, const CFloatVector *pVector, CFloatVector *pResultVector)
void MulMatVec (const CFloatMatrix *pMatrix, const CFloatVector *pVector1, const CFloatVector *pVector2, CFloatVector *pResultVector)
void MulMatVec (const CDoubleMatrix *pMatrix, const CDoubleVector *pVector, CDoubleVector *pResultVector)
void MulMatVec (const CDoubleMatrix *pMatrix, const CDoubleVector *pVector1, const CDoubleVector *pVector2, CDoubleVector *pResultVector)
void PCA (const CFloatMatrix *pData, CFloatMatrix *pTransformationMatrix, CFloatMatrix *pTransformedData, int nTargetDimension)
void PCA (const CFloatMatrix *pData, CFloatMatrix *pTransformationMatrix, CFloatMatrix *pEigenValues)
void SelfProduct (const CFloatMatrix *pMatrix, CFloatMatrix *pResultMatrix, bool AAT=false)
void SelfProduct (const CDoubleMatrix *pMatrix, CDoubleMatrix *pResultMatrix, bool AAT=false)
void SolveLinearLeastSquaresHomogeneousSVD (const CFloatMatrix *A, CFloatVector *x)
void SolveLinearLeastSquaresHomogeneousSVD (const CDoubleMatrix *A, CDoubleVector *x)
bool SolveLinearLeastSquaresSimple (const CFloatMatrix *A, const CFloatVector *b, CFloatVector *x)
bool SolveLinearLeastSquaresSimple (const CDoubleMatrix *A, const CDoubleVector *b, CDoubleVector *x)
void SolveLinearLeastSquaresSVD (const CFloatMatrix *A, const CFloatVector *b, CFloatVector *x)
void SolveLinearLeastSquaresSVD (const CDoubleMatrix *A, const CDoubleVector *b, CDoubleVector *x)
void SubtractFromMat (CFloatMatrix *pMatrix, const CFloatMatrix *pMatrixToSubtract)
void SubtractFromMat (CDoubleMatrix *pMatrix, const CDoubleMatrix *pMatrixToSubtract)
void SubtractFromVec (CFloatVector *pVector, const CFloatVector *pVectorToSubtract)
void SubtractFromVec (CDoubleVector *pVector, const CDoubleVector *pVectorToSubtract)
void SubtractMatMat (const CFloatMatrix *pMatrix1, const CFloatMatrix *pMatrix2, CFloatMatrix *pResultMatrix)
void SubtractMatMat (const CDoubleMatrix *pMatrix1, const CDoubleMatrix *pMatrix2, CDoubleMatrix *pResultMatrix)
void SubtractMeanFromColumns (const CFloatMatrix *pMatrix, CFloatMatrix *pResultMatrix)
void SubtractMeanFromColumns (const CDoubleMatrix *pMatrix, CDoubleMatrix *pResultMatrix)
void SubtractMeanFromRows (const CFloatMatrix *pMatrix, CFloatMatrix *pResultMatrix)
void SubtractMeanFromRows (const CDoubleMatrix *pMatrix, CDoubleMatrix *pResultMatrix)
void SubtractVecVec (const CFloatVector *pVector1, const CFloatVector *pVector2, CFloatVector *pResultVector)
void SubtractVecVec (const CDoubleVector *pVector1, const CDoubleVector *pVector2, CDoubleVector *pResultVector)
void SVD (const CFloatMatrix *A, CFloatMatrix *W, CFloatMatrix *U=0, CFloatMatrix *V=0, bool bAllowModifyA=false, bool bReturnUTransposed=false, bool bReturnVTransposed=false)
void SVD (const CDoubleMatrix *A, CDoubleMatrix *W, CDoubleMatrix *U=0, CDoubleMatrix *V=0, bool bAllowModifyA=false, bool bReturnUTransposed=false, bool bReturnVTransposed=false)
void Transpose (const CFloatMatrix *pMatrix, CFloatMatrix *pResultMatrix)
void Transpose (const CDoubleMatrix *pMatrix, CDoubleMatrix *pResultMatrix)
void Zero (CFloatMatrix *pMatrix)
void Zero (CFloatVector *pVector)
void Zero (CDoubleMatrix *pMatrix)
void Zero (CDoubleVector *pVector)

Detailed Description

Mathematic functions operating on the data types CFloatMatrix, CFloatVector, CDoubleMatrix, and CDoubleVector.


Function Documentation

void LinearAlgebra::AddMatMat ( const CFloatMatrix pMatrix1,
const CFloatMatrix pMatrix2,
CFloatMatrix pResultMatrix 
)

Definition at line 346 of file LinearAlgebra.cpp.

void LinearAlgebra::AddMatMat ( const CDoubleMatrix pMatrix1,
const CDoubleMatrix pMatrix2,
CDoubleMatrix pResultMatrix 
)

Definition at line 1160 of file LinearAlgebra.cpp.

void LinearAlgebra::AddToMat ( CFloatMatrix pMatrix,
const CFloatMatrix pMatrixToAdd 
)

Definition at line 416 of file LinearAlgebra.cpp.

void LinearAlgebra::AddToMat ( CDoubleMatrix pMatrix,
const CDoubleMatrix pMatrixToAdd 
)

Definition at line 1230 of file LinearAlgebra.cpp.

void LinearAlgebra::AddToVec ( CFloatVector pVector,
const CFloatVector pVectorToAdd 
)

Definition at line 448 of file LinearAlgebra.cpp.

void LinearAlgebra::AddToVec ( CDoubleVector pVector,
const CDoubleVector pVectorToAdd 
)

Definition at line 1262 of file LinearAlgebra.cpp.

void LinearAlgebra::AddVecVec ( const CFloatVector pVector1,
const CFloatVector pVector2,
CFloatVector pResultVector 
)

Definition at line 382 of file LinearAlgebra.cpp.

void LinearAlgebra::AddVecVec ( const CDoubleVector pVector1,
const CDoubleVector pVector2,
CDoubleVector pResultVector 
)

Definition at line 1196 of file LinearAlgebra.cpp.

bool LinearAlgebra::CalculatePseudoInverseSimple ( const CFloatMatrix pInputMatrix,
CFloatMatrix pResultMatrix 
)

Definition at line 654 of file LinearAlgebra.cpp.

bool LinearAlgebra::CalculatePseudoInverseSimple ( const CDoubleMatrix pInputMatrix,
CDoubleMatrix pResultMatrix 
)

Definition at line 1575 of file LinearAlgebra.cpp.

void LinearAlgebra::CalculatePseudoInverseSVD ( const CFloatMatrix pInputMatrix,
CFloatMatrix pOutputMatrix 
)

Definition at line 606 of file LinearAlgebra.cpp.

void LinearAlgebra::CalculatePseudoInverseSVD ( const CDoubleMatrix pInputMatrix,
CDoubleMatrix pOutputMatrix 
)

Definition at line 1527 of file LinearAlgebra.cpp.

bool LinearAlgebra::DetermineAffineTransformation ( const Vec2d pSourcePoints,
const Vec2d pTargetPoints,
int  nPoints,
Mat3d A,
bool  bUseSVD = false 
)

Determines an affine transformation based on a set of 2d-2d point correspondences.

The affine transformation is determined by solving the over-determined system $ \left( \begin{array}{cccccc} u_1 & v_1 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & u_1 & v_1 & 1 \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\ u_n & v_n & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & u_n & v_n & 1 \end{array} \right) \left( \begin{array}{c} a_1 \\ a_2 \\ a_3 \\ a_4 \\ a_5 \\ a_6 \end{array} \right) = \left( \begin{array}{c} u_1' \\ v_1' \\ \vdots \\ u_n' \\ v_n' \end{array} \right) $.

This is solved optimally in the sense of the Euclidean norm by using the method of least squares.

The n-th entry in pSourcePoints must correspond with the n-th entry in pTargetPoints.

Parameters:
pSourcePointsThe source points.
pTargetPointsThe target points.
nPointsNumber of points.

Definition at line 1616 of file LinearAlgebra.cpp.

bool LinearAlgebra::DetermineHomography ( const Vec2d pSourcePoints,
const Vec2d pTargetPoints,
int  nPoints,
Mat3d A,
bool  bUseSVD = false 
)

Determines a homography based on a set of 2d-2d point correspondences.

The homography is determined by solving the over-determined system $ \left( \begin{array}{cccccccc} u_1 & v_1 & 1 & 0 & 0 & 0 & -u_1 u_1' & -v_1 u_1 ' \\ 0 & 0 & 0 & u_1 & v_1 & 1 & -u_1 v_1' & -v_1 v_1' \\ \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots & \vdots \\ u_n & v_n & 1 & 0 & 0 & 0 & -u_n u_n' & -v_n u_n' \\ 0 & 0 & 0 & u_n & v_n & 1 & -u_n v_n' & -v_n v_n' \end{array} \right) \left( \begin{array}{c} a_1 \\ a_2 \\ a_3 \\ a_4 \\ a_5 \\ a_6 \\ a_7 \\ a_8 \end{array} \right) = \left( \begin{array}{c} u_1' \\ v_1' \\ \vdots \\ u_n' \\ v_n' \end{array} \right) $.

This is solved optimally in the sense of the Euclidean norm by using the method of least squares.

The n-th entry in pSourcePoints must correspond with the n-th entry in pTargetPoints.

Parameters:
pSourcePointsThe source points.
pTargetPointsThe target points.
nPointsNumber of points. Must be at least 4.

Definition at line 1670 of file LinearAlgebra.cpp.

bool LinearAlgebra::Invert ( const CFloatMatrix pInputMatrix,
CFloatMatrix pResultMatrix 
)

Definition at line 758 of file LinearAlgebra.cpp.

bool LinearAlgebra::Invert ( const CDoubleMatrix pInputMatrix,
CDoubleMatrix pResultMatrix 
)

Definition at line 1352 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatMat ( const CFloatMatrix A,
const CFloatMatrix B,
CFloatMatrix pResultMatrix,
bool  bTransposeB = false 
)

Definition at line 136 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatMat ( const CDoubleMatrix pMatrix1,
const CDoubleMatrix pMatrix2,
CDoubleMatrix pResultMatrix,
bool  bTransposeB = false 
)

Definition at line 950 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatVec ( const CFloatMatrix pMatrix,
const CFloatVector pVector,
CFloatVector pResultVector 
)

Definition at line 292 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatVec ( const CFloatMatrix pMatrix,
const CFloatVector pVector1,
const CFloatVector pVector2,
CFloatVector pResultVector 
)

Definition at line 340 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatVec ( const CDoubleMatrix pMatrix,
const CDoubleVector pVector,
CDoubleVector pResultVector 
)

Definition at line 1106 of file LinearAlgebra.cpp.

void LinearAlgebra::MulMatVec ( const CDoubleMatrix pMatrix,
const CDoubleVector pVector1,
const CDoubleVector pVector2,
CDoubleVector pResultVector 
)

Definition at line 1154 of file LinearAlgebra.cpp.

void LinearAlgebra::PCA ( const CFloatMatrix pData,
CFloatMatrix pTransformationMatrix,
CFloatMatrix pTransformedData,
int  nTargetDimension 
)

Definition at line 682 of file LinearAlgebra.cpp.

void LinearAlgebra::PCA ( const CFloatMatrix pData,
CFloatMatrix pTransformationMatrix,
CFloatMatrix pEigenValues 
)

Definition at line 728 of file LinearAlgebra.cpp.

void LinearAlgebra::SelfProduct ( const CFloatMatrix pMatrix,
CFloatMatrix pResultMatrix,
bool  AAT = false 
)

Definition at line 68 of file LinearAlgebra.cpp.

void LinearAlgebra::SelfProduct ( const CDoubleMatrix pMatrix,
CDoubleMatrix pResultMatrix,
bool  AAT = false 
)

Definition at line 882 of file LinearAlgebra.cpp.

Definition at line 538 of file LinearAlgebra.cpp.

Definition at line 1459 of file LinearAlgebra.cpp.

Definition at line 582 of file LinearAlgebra.cpp.

Definition at line 1503 of file LinearAlgebra.cpp.

Definition at line 563 of file LinearAlgebra.cpp.

Definition at line 1484 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractFromMat ( CFloatMatrix pMatrix,
const CFloatMatrix pMatrixToSubtract 
)

Definition at line 432 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractFromMat ( CDoubleMatrix pMatrix,
const CDoubleMatrix pMatrixToSubtract 
)

Definition at line 1246 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractFromVec ( CFloatVector pVector,
const CFloatVector pVectorToSubtract 
)

Definition at line 464 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractFromVec ( CDoubleVector pVector,
const CDoubleVector pVectorToSubtract 
)

Definition at line 1278 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMatMat ( const CFloatMatrix pMatrix1,
const CFloatMatrix pMatrix2,
CFloatMatrix pResultMatrix 
)

Definition at line 364 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMatMat ( const CDoubleMatrix pMatrix1,
const CDoubleMatrix pMatrix2,
CDoubleMatrix pResultMatrix 
)

Definition at line 1178 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMeanFromColumns ( const CFloatMatrix pMatrix,
CFloatMatrix pResultMatrix 
)

Definition at line 481 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMeanFromColumns ( const CDoubleMatrix pMatrix,
CDoubleMatrix pResultMatrix 
)

Definition at line 1295 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMeanFromRows ( const CFloatMatrix pMatrix,
CFloatMatrix pResultMatrix 
)

Definition at line 510 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractMeanFromRows ( const CDoubleMatrix pMatrix,
CDoubleMatrix pResultMatrix 
)

Definition at line 1324 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractVecVec ( const CFloatVector pVector1,
const CFloatVector pVector2,
CFloatVector pResultVector 
)

Definition at line 399 of file LinearAlgebra.cpp.

void LinearAlgebra::SubtractVecVec ( const CDoubleVector pVector1,
const CDoubleVector pVector2,
CDoubleVector pResultVector 
)

Definition at line 1213 of file LinearAlgebra.cpp.

void LinearAlgebra::SVD ( const CFloatMatrix A,
CFloatMatrix W,
CFloatMatrix U = 0,
CFloatMatrix V = 0,
bool  bAllowModifyA = false,
bool  bReturnUTransposed = false,
bool  bReturnVTransposed = false 
)

Definition at line 1660 of file SVD.cpp.

void LinearAlgebra::SVD ( const CDoubleMatrix A,
CDoubleMatrix W,
CDoubleMatrix U = 0,
CDoubleMatrix V = 0,
bool  bAllowModifyA = false,
bool  bReturnUTransposed = false,
bool  bReturnVTransposed = false 
)

Definition at line 1697 of file SVD.cpp.

void LinearAlgebra::Transpose ( const CFloatMatrix pMatrix,
CFloatMatrix pResultMatrix 
)

Definition at line 254 of file LinearAlgebra.cpp.

void LinearAlgebra::Transpose ( const CDoubleMatrix pMatrix,
CDoubleMatrix pResultMatrix 
)

Definition at line 1068 of file LinearAlgebra.cpp.

Definition at line 865 of file LinearAlgebra.cpp.

Definition at line 870 of file LinearAlgebra.cpp.

Definition at line 1608 of file LinearAlgebra.cpp.

Definition at line 1603 of file LinearAlgebra.cpp.



asr_ivt
Author(s): Allgeyer Tobias, Hutmacher Robin, Kleinert Daniel, Meißner Pascal, Scholz Jonas, Stöckle Patrick
autogenerated on Thu Jun 6 2019 21:46:59