Blender  V3.3
Static Public Member Functions | List of all members
libmv::homography::homography2D::AsymmetricError Struct Reference

#include <homography_error.h>

Static Public Member Functions

static void Residuals (const Mat &H, const Mat &x1, const Mat &x2, Mat2X *dx)
 
static void Residuals (const Mat &H, const Vec &x1, const Vec &x2, Vec2 *dx)
 
static double Error (const Mat &H, const Mat &x1, const Mat &x2)
 
static double Error (const Mat &H, const Vec &x1, const Vec &x2)
 

Detailed Description

Structure for estimating the asymmetric error between a vector x2 and the transformed x1 such that Error = ||x2 - Psi(H * x1)||^2 where Psi is the function that transforms homogeneous to euclidean coords.

Note
It should be distributed as Chi-squared with k = 2.

Definition at line 37 of file homography_error.h.

Member Function Documentation

◆ Error() [1/2]

static double libmv::homography::homography2D::AsymmetricError::Error ( const Mat H,
const Mat x1,
const Mat x2 
)
inlinestatic

Computes the squared norm of the residuals between a set of 2D points x2 and the transformed 2D point set x1 such that Error = || x2 - Psi(H * x1) ||^2 where Psi is the function that transforms homogeneous to euclidean coords.

Parameters
[in]HThe 3x3 homography matrix. The estimated homography should approximatelly hold the condition y = H x.
[in]x1A set of 2D points (2xN or 3xN matrix of column vectors).
[in]x2A set of 2D points (2xN or 3xN matrix of column vectors).
Returns
The squared norm of the asymmetric residuals errors

Definition at line 100 of file homography_error.h.

References H, Residuals(), and x2.

Referenced by libmv::homography::homography2D::SymmetricError::Error().

◆ Error() [2/2]

static double libmv::homography::homography2D::AsymmetricError::Error ( const Mat H,
const Vec x1,
const Vec x2 
)
inlinestatic

Computes the squared norm of the residuals between a 2D point x2 and the transformed 2D point x1 such that rms = || x2 - Psi(H * x1) ||^2 where Psi is the function that transforms homogeneous to euclidean coords.

Parameters
[in]HThe 3x3 homography matrix. The estimated homography should approximatelly hold the condition y = H x.
[in]x1A 2D point (vector of size 2 or 3 (euclidean/homogeneous))
[in]x2A 2D point (vector of size 2 or 3 (euclidean/homogeneous))
Returns
The squared norm of the asymmetric residual error

Definition at line 116 of file homography_error.h.

References H, Residuals(), and x2.

◆ Residuals() [1/2]

static void libmv::homography::homography2D::AsymmetricError::Residuals ( const Mat H,
const Mat x1,
const Mat x2,
Mat2X dx 
)
inlinestatic

Computes the asymmetric residuals between a set of 2D points x2 and the transformed 2D point set x1 such that Residuals_i = x2_i - Psi(H * x1_i) where Psi is the function that transforms homogeneous to euclidean coords.

Parameters
[in]HThe 3x3 homography matrix. The estimated homography should approximatelly hold the condition y = H x.
[in]x1A set of 2D points (2xN or 3xN matrix of column vectors).
[in]x2A set of 2D points (2xN or 3xN matrix of column vectors).
[out]dxA 2xN matrix of column vectors of residuals errors

Definition at line 50 of file homography_error.h.

References libmv::EuclideanToHomogeneous(), H, libmv::HomogeneousToEuclidean(), and x2.

Referenced by Error().

◆ Residuals() [2/2]

static void libmv::homography::homography2D::AsymmetricError::Residuals ( const Mat H,
const Vec x1,
const Vec x2,
Vec2 dx 
)
inlinestatic

Computes the asymmetric residuals between a 2D point x2 and the transformed 2D point x1 such that Residuals = x2 - Psi(H * x1) where Psi is the function that transforms homogeneous to euclidean coords.

Parameters
[in]HThe 3x3 homography matrix. The estimated homography should approximatelly hold the condition y = H x.
[in]x1A 2D point (vector of size 2 or 3 (euclidean/homogeneous))
[in]x2A 2D point (vector of size 2 or 3 (euclidean/homogeneous))
[out]dxA vector of size 2 of the residual error

Definition at line 76 of file homography_error.h.

References libmv::EuclideanToHomogeneous(), H, libmv::HomogeneousToEuclidean(), and x2.


The documentation for this struct was generated from the following file: