OpenCV
4.5.0
Open Source Computer Vision

Functions  
void  cv::sfm::applyTransformationToPoints (InputArray points, InputArray T, OutputArray transformed_points) 
Apply Transformation to points. More...  
void  cv::sfm::isotropicPreconditionerFromPoints (InputArray points, OutputArray T) 
Point conditioning (isotropic). More...  
void  cv::sfm::normalizeIsotropicPoints (InputArray points, OutputArray normalized_points, OutputArray T) 
This function normalizes points. (isotropic). More...  
void  cv::sfm::normalizePoints (InputArray points, OutputArray normalized_points, OutputArray T) 
This function normalizes points (non isotropic). More...  
void  cv::sfm::preconditionerFromPoints (InputArray points, OutputArray T) 
void cv::sfm::applyTransformationToPoints  (  InputArray  points, 
InputArray  T,  
OutputArray  transformed_points  
) 
#include <opencv2/sfm/conditioning.hpp>
Apply Transformation to points.
points  Input vector of Ndimensional points. 
T  Input 3x3 transformation matrix such that \(x = T*X\), where \(X\) are the points to transform and \(x\) the transformed points. 
transformed_points  Output vector of Ndimensional transformed points. 
void cv::sfm::isotropicPreconditionerFromPoints  (  InputArray  points, 
OutputArray  T  
) 
#include <opencv2/sfm/conditioning.hpp>
Point conditioning (isotropic).
points  Input vector of Ndimensional points. 
T  Output 3x3 transformation matrix. 
Computes the transformation matrix such that each coordinate direction will be scaled equally, bringing the centroid to the origin with an average centroid \((1,1,1)^T\).
Reference: [97] 4.4.4 pag.107.
void cv::sfm::normalizeIsotropicPoints  (  InputArray  points, 
OutputArray  normalized_points,  
OutputArray  T  
) 
#include <opencv2/sfm/conditioning.hpp>
This function normalizes points. (isotropic).
points  Input vector of Ndimensional points. 
normalized_points  Output vector of the same Ndimensional points but with mean 0 and average norm \(\sqrt{2}\). 
T  Output 3x3 transform matrix such that \(x = T*X\), where \(X\) are the points to normalize and \(x\) the normalized points. 
Internally calls preconditionerFromPoints in order to get the scaling matrix before applying applyTransformationToPoints. This operation is an essential step before applying the DLT algorithm in order to consider the result as optimal.
Reference: [97] 4.4.4 pag.107.
void cv::sfm::normalizePoints  (  InputArray  points, 
OutputArray  normalized_points,  
OutputArray  T  
) 
#include <opencv2/sfm/conditioning.hpp>
This function normalizes points (non isotropic).
points  Input vector of Ndimensional points. 
normalized_points  Output vector of the same Ndimensional points but with mean 0 and average norm \(\sqrt{2}\). 
T  Output 3x3 transform matrix such that \(x = T*X\), where \(X\) are the points to normalize and \(x\) the normalized points. 
Internally calls preconditionerFromPoints in order to get the scaling matrix before applying applyTransformationToPoints. This operation is an essential step before applying the DLT algorithm in order to consider the result as optimal.
Reference: [97] 4.4.4 pag.109
void cv::sfm::preconditionerFromPoints  (  InputArray  points, 
OutputArray  T  
) 
#include <opencv2/sfm/conditioning.hpp>
Point conditioning (non isotropic).
points  Input vector of Ndimensional points. 
T  Output 3x3 transformation matrix. 
Computes the transformation matrix such that the two principal moments of the set of points are equal to unity, forming an approximately symmetric circular cloud of points of radius 1 about the origin.
Reference: [97] 4.4.4 pag.109