Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vpgl_ortho_procrustes Class Reference

Solve orthogonal Procrustes problem. More...

#include <vpgl_ortho_procrustes.h>

Public Member Functions

 vpgl_ortho_procrustes (vnl_matrix< double > const &X, vnl_matrix< double > const &Y)
 only one constructor X and Y must both have dimensions 3 x N. More...
 
vgl_rotation_3d< double > R ()
 the resulting rotation matrix. More...
 
vnl_vector_fixed< double, 3 > t ()
 the resulting translation vector. More...
 
double s ()
 The scale factor, s. More...
 
double residual_mean_sq_error ()
 the residual error. More...
 
bool compute_ok () const
 successful computation. More...
 

Protected Member Functions

 vpgl_ortho_procrustes ()
 No default constructor. More...
 
void compute ()
 

Protected Attributes

bool cannot_compute_
 members. More...
 
bool computed_
 
vnl_matrix< double > X_
 
vnl_matrix< double > Y_
 
vgl_rotation_3d< double > R_
 
vnl_vector_fixed< double, 3 > t_
 
double s_
 
double residual_
 

Detailed Description

Solve orthogonal Procrustes problem.

Solve the orthogonal Procrustes problem by finding a rotation matrix, R, scale factor, s, and translation vector, t, that minimizes the distance between two pointsets, X and Y, where Y is transformed to produce X.

Definition at line 18 of file vpgl_ortho_procrustes.h.

Constructor & Destructor Documentation

◆ vpgl_ortho_procrustes() [1/2]

vpgl_ortho_procrustes::vpgl_ortho_procrustes ( vnl_matrix< double > const &  X,
vnl_matrix< double > const &  Y 
)

only one constructor X and Y must both have dimensions 3 x N.

only one constructor. X and Y must have dimensions 3 x N.

Definition at line 13 of file vpgl_ortho_procrustes.cxx.

◆ vpgl_ortho_procrustes() [2/2]

vpgl_ortho_procrustes::vpgl_ortho_procrustes ( )
protected

No default constructor.

Member Function Documentation

◆ compute()

void vpgl_ortho_procrustes::compute ( )
protected

Definition at line 26 of file vpgl_ortho_procrustes.cxx.

◆ compute_ok()

bool vpgl_ortho_procrustes::compute_ok ( ) const
inline

successful computation.

Definition at line 38 of file vpgl_ortho_procrustes.h.

◆ R()

vgl_rotation_3d< double > vpgl_ortho_procrustes::R ( )

the resulting rotation matrix.

Definition at line 107 of file vpgl_ortho_procrustes.cxx.

◆ residual_mean_sq_error()

double vpgl_ortho_procrustes::residual_mean_sq_error ( )

the residual error.

Definition at line 122 of file vpgl_ortho_procrustes.cxx.

◆ s()

double vpgl_ortho_procrustes::s ( )

The scale factor, s.

Definition at line 114 of file vpgl_ortho_procrustes.cxx.

◆ t()

vnl_vector_fixed< double, 3 > vpgl_ortho_procrustes::t ( )

the resulting translation vector.

Definition at line 129 of file vpgl_ortho_procrustes.cxx.

Member Data Documentation

◆ cannot_compute_

bool vpgl_ortho_procrustes::cannot_compute_
protected

members.

Definition at line 46 of file vpgl_ortho_procrustes.h.

◆ computed_

bool vpgl_ortho_procrustes::computed_
protected

Definition at line 47 of file vpgl_ortho_procrustes.h.

◆ R_

vgl_rotation_3d<double> vpgl_ortho_procrustes::R_
protected

Definition at line 50 of file vpgl_ortho_procrustes.h.

◆ residual_

double vpgl_ortho_procrustes::residual_
protected

Definition at line 53 of file vpgl_ortho_procrustes.h.

◆ s_

double vpgl_ortho_procrustes::s_
protected

Definition at line 52 of file vpgl_ortho_procrustes.h.

◆ t_

vnl_vector_fixed<double, 3> vpgl_ortho_procrustes::t_
protected

Definition at line 51 of file vpgl_ortho_procrustes.h.

◆ X_

vnl_matrix<double> vpgl_ortho_procrustes::X_
protected

Definition at line 48 of file vpgl_ortho_procrustes.h.

◆ Y_

vnl_matrix<double> vpgl_ortho_procrustes::Y_
protected

Definition at line 49 of file vpgl_ortho_procrustes.h.


The documentation for this class was generated from the following files: