[][src]Struct opencv::core::SVD

pub struct SVD { /* fields omitted */ }

Singular Value Decomposition

Class for computing Singular Value Decomposition of a floating-point matrix. The Singular Value Decomposition is used to solve least-square problems, under-determined linear systems, invert matrices, compute condition numbers, and so on.

If you want to compute a condition number of a matrix or an absolute value of its determinant, you do not need u and vt. You can pass flags=SVD::NO_UV|... . Another flag SVD::FULL_UV indicates that full-size u and vt must be computed, which is not necessary most of the time.

See also

invert, solve, eigen, determinant

Implementations

impl SVD[src]

pub fn as_raw_SVD(&self) -> *const c_void[src]

pub fn as_raw_mut_SVD(&mut self) -> *mut c_void[src]

impl SVD[src]

pub fn default() -> Result<SVD>[src]

the default constructor

initializes an empty SVD structure

pub fn new(src: &dyn ToInputArray, flags: i32) -> Result<SVD>[src]

the default constructor

initializes an empty SVD structure

Overloaded parameters

initializes an empty SVD structure and then calls SVD::operator()

Parameters

  • src: decomposed matrix. The depth has to be CV_32F or CV_64F.
  • flags: operation flags (SVD::Flags)

C++ default parameters

  • flags: 0

pub fn compute_ext(
    src: &dyn ToInputArray,
    w: &mut dyn ToOutputArray,
    u: &mut dyn ToOutputArray,
    vt: &mut dyn ToOutputArray,
    flags: i32
) -> Result<()>
[src]

decomposes matrix and stores the results to user-provided matrices

The methods/functions perform SVD of matrix. Unlike SVD::SVD constructor and SVD::operator(), they store the results to the user-provided matrices:

Mat A, w, u, vt;
SVD::compute(A, w, u, vt);

Parameters

  • src: decomposed matrix. The depth has to be CV_32F or CV_64F.
  • w: calculated singular values
  • u: calculated left singular vectors
  • vt: transposed matrix of right singular vectors
  • flags: operation flags - see SVD::Flags.

C++ default parameters

  • flags: 0

pub fn compute(
    src: &dyn ToInputArray,
    w: &mut dyn ToOutputArray,
    flags: i32
) -> Result<()>
[src]

@todo document

Overloaded parameters

computes singular values of a matrix

Parameters

  • src: decomposed matrix. The depth has to be CV_32F or CV_64F.
  • w: calculated singular values
  • flags: operation flags - see SVD::Flags.

C++ default parameters

  • flags: 0

pub fn back_subst_multi(
    w: &dyn ToInputArray,
    u: &dyn ToInputArray,
    vt: &dyn ToInputArray,
    rhs: &dyn ToInputArray,
    dst: &mut dyn ToOutputArray
) -> Result<()>
[src]

performs back substitution

pub fn solve_z(
    src: &dyn ToInputArray,
    dst: &mut dyn ToOutputArray
) -> Result<()>
[src]

solves an under-determined singular linear system

The method finds a unit-length solution x of a singular linear system A*x = 0. Depending on the rank of A, there can be no solutions, a single solution or an infinite number of solutions. In general, the algorithm solves the following problem: block formula

Parameters

  • src: left-hand-side matrix.
  • dst: found solution.

Trait Implementations

impl Boxed for SVD[src]

impl Drop for SVD[src]

impl SVDTrait for SVD[src]

impl Send for SVD[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.