KrisLibrary  1.0.0
Namespaces | Functions
rotationfit.h File Reference

Least-squares fitting for rotations (and rigid body transformations) More...

#include "AABB3D.h"
#include <vector>

Go to the source code of this file.

Namespaces

 Math3D
 Contains all the definitions in the Math3D package.
 

Functions

Real Math3D::RotationFit (const std::vector< Vector3 > &a, const std::vector< Vector3 > &b, Matrix3 &R)
 Calculates the least squares rotation fit min_R sum||R*a[i]-b[i]||^2. Returns the sum-of-squared errors.
 
void Math3D::AxisRotationFit (const std::vector< Vector3 > &a, const std::vector< Vector3 > &b, const Vector3 &z, Real &theta)
 Calculates the least squares rotation angle min_theta sum||R(theta,z)*a[i]-b[i]||^2.
 
Real Math3D::TransformFit (std::vector< Vector3 > &a, std::vector< Vector3 > &b, Matrix3 &R, Vector3 &t)
 Calculate the least squares rotation fit min_R,t sum||R*a[i]+t-b[i]||^2. Returns the sum-of-squared errors. More...
 
Real Math3D::WeightedTransformFit (const std::vector< Point3D > &a, const std::vector< Point3D > &b, const std::vector< Real > &w, const std::vector< Vector3 > &c, const std::vector< Vector3 > &d, const std::vector< Real > &v, Matrix3 &R, Vector3 &t)
 Solve the mixed point/vector fitting problem min sum_j wj||R*aj+t-bj||^2 + sum_k vk||Rc-d||^2. More...
 
Real Math3D::FitFrames (const std::vector< Vector3 > &a, const std::vector< Vector3 > &b, RigidTransform &Ta, RigidTransform &Tb, Vector3 &cov)
 Calculate the translations and rotations that match a,b in an axis-aligned frame. The cov vector stores the covariance in each axis.
 

Detailed Description

Least-squares fitting for rotations (and rigid body transformations)