PCL
|
In-place singular value decomposition algorithm for FMatrix and FVector objects. More...
#include <Algebra.h>
Public Types | |
using | algorithm_implementation = GenericInPlaceSVD< float > |
using | matrix = algorithm_implementation::matrix |
using | matrix_element = matrix::element |
using | vector = algorithm_implementation::vector |
using | vector_component = vector::component |
Public Types inherited from pcl::GenericInPlaceSVD< float > | |
using | matrix = GenericMatrix< float > |
using | matrix_element = typename matrix::element |
using | vector = GenericVector< float > |
using | vector_component = typename vector::component |
Public Member Functions | |
FInPlaceSVD (matrix &A) | |
Public Member Functions inherited from pcl::GenericInPlaceSVD< float > | |
GenericInPlaceSVD (matrix &A) | |
int | IndexOfLargestSingularValue () const |
int | IndexOfSmallestSingularValue () const |
Additional Inherited Members | |
Public Attributes inherited from pcl::GenericInPlaceSVD< float > | |
matrix | V |
vector | W |
FInPlaceSVD is a template instantiation of GenericInPlaceSVD for the float type. FInPlaceSVD works with FMatrix and FVector objects. FMatrix and FVector are template instantiations of GenericMatrix and GenericVector, respectively, for the float type.
using pcl::FInPlaceSVD::algorithm_implementation = GenericInPlaceSVD<float> |
|
inline |
Singular Value Decomposition: A = U*W*Vt
The dimensions of A are n rows and m columns. U is an n x m matrix. The m components of W are the positive diagonal elements of W, and each column of V (m x m) is the eigenvector for the corresponding element of W.
On output, this constructor replaces the specified matrix A with the matrix U that results from the SVD decomposition (indeed that's why this is an in-place decomposition). W and V are stored in the corresponding members of this object.