Class LowLevelMultiViewOps
- java.lang.Object
-
- boofcv.alg.geo.LowLevelMultiViewOps
-
public class LowLevelMultiViewOps extends java.lang.ObjectLists of operations used by various multi-view algorithms, but not of use to the typical user.
-
-
Constructor Summary
Constructors Constructor and Description LowLevelMultiViewOps()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static voidapplyPixelNormalization(org.ejml.data.DenseMatrix64F N, Point2D_F64 orig, Point2D_F64 normed)Given the normalization matrix computed fromcomputeNormalization(java.util.List, org.ejml.data.DenseMatrix64F)normalize the point.static voidcomputeNormalization(java.util.List<AssociatedPair> points, org.ejml.data.DenseMatrix64F N1, org.ejml.data.DenseMatrix64F N2)Computes two normalization matrices for each set of point correspondences in the list ofAssociatedPair.static voidcomputeNormalization(java.util.List<AssociatedTriple> points, org.ejml.data.DenseMatrix64F N1, org.ejml.data.DenseMatrix64F N2, org.ejml.data.DenseMatrix64F N3)Computes three normalization matrices for each set of point correspondences in the list ofAssociatedTriple.static voidcomputeNormalization(java.util.List<Point2D_F64> points, org.ejml.data.DenseMatrix64F N)Computes a normalization matrix used to reduce numerical errors inside of linear estimation algorithms.
-
-
-
Method Detail
-
computeNormalization
public static void computeNormalization(java.util.List<Point2D_F64> points, org.ejml.data.DenseMatrix64F N)
Computes a normalization matrix used to reduce numerical errors inside of linear estimation algorithms. Pixels coordinates are poorly scaled for linear algebra operations resulting in excessive numerical error. This function computes a transform which will minimize numerical error by properly scaling the pixels.
N = [ 1/σ_x 0 -μ_x/σ_x ] [ 0 1/σ_y 0 -μ_y/σ_y ] [ 0 0 1 ]Y. Ma, S. Soatto, J. Kosecka, and S. S. Sastry, "An Invitation to 3-D Vision" Springer-Verlad, 2004
- Parameters:
points- Input: List of observed points. Not modified.N- Output: 3x3 normalization matrix for first set of points. Modified.
-
computeNormalization
public static void computeNormalization(java.util.List<AssociatedPair> points, org.ejml.data.DenseMatrix64F N1, org.ejml.data.DenseMatrix64F N2)
Computes two normalization matrices for each set of point correspondences in the list of
AssociatedPair. Same ascomputeNormalization(java.util.List, org.ejml.data.DenseMatrix64F), but for two views.- Parameters:
points- Input: List of observed points that are to be normalized. Not modified.N1- Output: 3x3 normalization matrix for first set of points. Modified.N2- Output: 3x3 normalization matrix for second set of points. Modified.
-
computeNormalization
public static void computeNormalization(java.util.List<AssociatedTriple> points, org.ejml.data.DenseMatrix64F N1, org.ejml.data.DenseMatrix64F N2, org.ejml.data.DenseMatrix64F N3)
Computes three normalization matrices for each set of point correspondences in the list of
AssociatedTriple. Same ascomputeNormalization(java.util.List, org.ejml.data.DenseMatrix64F), but for three views.- Parameters:
points- Input: List of observed points that are to be normalized. Not modified.N1- Output: 3x3 normalization matrix for first set of points. Modified.N2- Output: 3x3 normalization matrix for second set of points. Modified.N3- Output: 3x3 normalization matrix for third set of points. Modified.
-
applyPixelNormalization
public static void applyPixelNormalization(org.ejml.data.DenseMatrix64F N, Point2D_F64 orig, Point2D_F64 normed)Given the normalization matrix computed fromcomputeNormalization(java.util.List, org.ejml.data.DenseMatrix64F)normalize the point.- Parameters:
N- Normalization matrix.orig- Unnormalized coordinate in pixels.normed- Normalized coordinate.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG