CovarianceMatrix class
A 2D covariance matrix for computation with 2D vertices.
Contents
The matrix is real, symmetric, positive semidefinite. See dip::Polygon::CovarianceMatrix
for how to create a covariance matrix.
The elements stored are xx
, xy
and yy
, with xx
the top-left element, and xy
both
the off-diagonal elements, which are equal by definition.
Constructors, destructors, assignment and conversion operators
- CovarianceMatrix() defaulted
- Default-initialized covariance matrix is all zeros.
- CovarianceMatrix(dip::VertexFloat v) explicit
- Construct a covariance matrix as the outer product of a vector and itself.
Classes
- struct Eigenvalues
- Container for matrix eigenvalues.
- struct EllipseParameters
- Container for ellipse parameters.
Functions
- auto xx() const -> dip::dfloat
- Read matrix element.
- auto xy() const -> dip::dfloat
- Read matrix element.
- auto yy() const -> dip::dfloat
- Read matrix element.
- auto Det() const -> dip::dfloat
- Compute determinant of matrix.
- auto Inv() const -> dip::CovarianceMatrix
- Compute inverse of matrix.
- auto Project(dip::VertexFloat const& v) const -> dip::dfloat
- Computes v’ * C * v, with v’ the transpose of v. This is a positive scalar if v is non-zero, because C (this matrix) is positive semidefinite.
- auto Eig() const -> dip::CovarianceMatrix::Eigenvalues
- Compute eigenvalues of matrix.
- auto Ellipse() const -> dip::CovarianceMatrix::EllipseParameters
- Compute parameters of ellipse with same covariance matrix.
Operators
- auto operator+=(dip::CovarianceMatrix const& other) -> dip::CovarianceMatrix&
- Add other matrix to this matrix.
- auto operator*=(dip::dfloat d) -> dip::CovarianceMatrix&
- Scale matrix.
- auto operator/=(dip::dfloat d) -> dip::CovarianceMatrix&
- Scale matrix.
Class documentation
struct EllipseParameters
Container for ellipse parameters.
Variables | |
---|---|
dip::dfloat majorAxis | Major axis length |
dip::dfloat minorAxis | Minor axis length |
dip::dfloat orientation | Orientation of major axis |
dip::dfloat eccentricity | Ellipse eccentricity |