Documentation of 'boofcv.alg.geo.DecomposeHomography' Java class
DecomposeHomography
boofcv.alg.geo

Class DecomposeHomography



  • public class DecomposeHomography
    extends java.lang.Object

    Decomposes a homography matrix to extract its internal geometric structure. There are four possible solutions, with two that are physically possible. The physically possible solution can be found by imposing a positive depth constraint. See PositiveDepthConstraintCheck for details on how to do that.

    A homography matrix is defined as H = (R + (1/d)*T*NT), where R is a 3x3 rotation matrix, d is the distance of the plane, N is the plane's normal, T is the translation vector. The decomposition works by computing the SVD of HTH and the following the procedure outlines in [1].

    The input homography is assumed to be from view 'a' to view 'b'. Then the resulting transform (R,T) is the transform from view 'a' to view 'b'

    "An Invitation to 3-D Vision" 1st edition page 137.

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      void decompose(org.ejml.data.DenseMatrix64F H)
      Decomposed the provided homography matrix into its R,T/d,N components.
      java.util.List<Vector3D_F64> getSolutionsN()
      Returns the normal of the plane part of the solution
      java.util.List<Se3_F64> getSolutionsSE()
      Returns the camera motion part of the solution.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DecomposeHomography

        public DecomposeHomography()
    • Method Detail

      • decompose

        public void decompose(org.ejml.data.DenseMatrix64F H)
        Decomposed the provided homography matrix into its R,T/d,N components. Four solutions will be produced and can be accessed with getSolutionsN() and getSolutionsSE().
        Parameters:
        H - Homography matrix. Not modified.
      • getSolutionsSE

        public java.util.List<Se3_F64> getSolutionsSE()

        Returns the camera motion part of the solution. Note that se.T=(1/d)T

        WARNING: Data is reused each time decompose is called.

        Returns:
        Set of rigid body camera motions
      • getSolutionsN

        public java.util.List<Vector3D_F64> getSolutionsN()

        Returns the normal of the plane part of the solution

        WARNING: Data is reused each time decompose is called.

        Returns:
        Set of plane normals

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.