|
static void | compute (InputArray src, OutputArray w, OutputArray u, OutputArray vt, int flags=0) |
| decomposes matrix and stores the results to user-provided matrices More...
|
|
static void | compute (InputArray src, OutputArray w, int flags=0) |
| computes singular values of a matrix More...
|
|
static void | backSubst (InputArray w, InputArray u, InputArray vt, InputArray rhs, OutputArray dst) |
| performs back substitution More...
|
|
template<typename _Tp , int m, int n, int nm> |
static void | compute (const Matx< _Tp, m, n > &a, Matx< _Tp, nm, 1 > &w, Matx< _Tp, m, nm > &u, Matx< _Tp, n, nm > &vt) |
|
template<typename _Tp , int m, int n, int nm> |
static void | compute (const Matx< _Tp, m, n > &a, Matx< _Tp, nm, 1 > &w) |
|
template<typename _Tp , int m, int n, int nm, int nb> |
static void | backSubst (const Matx< _Tp, nm, 1 > &w, const Matx< _Tp, m, nm > &u, const Matx< _Tp, n, nm > &vt, const Matx< _Tp, m, nb > &rhs, Matx< _Tp, n, nb > &dst) |
|
static void | solveZ (InputArray src, OutputArray dst) |
| finds dst = arg min_{|dst|=1} |m*dst| More...
|
|
Singular Value Decomposition class
The class is used to compute Singular Value Decomposition of a floating-point matrix and then use it to solve least-square problems, under-determined linear systems, invert matrices, compute condition numbers etc.
For a bit faster operation you can pass flags=SVD::MODIFY_A|... to modify the decomposed matrix when it is not necessarily to preserve it. If you want to compute condition number of a matrix or absolute value of its determinant - you do not need SVD::u or SVD::vt, so you can pass flags=SVD::NO_UV|... . Another flag SVD::FULL_UV indicates that the full-size SVD::u and SVD::vt must be computed, which is not necessary most of the time.