Class Odometry

java.lang.Object
org.opencv.ptcloud.Odometry

public class Odometry extends Object
  • Field Details

    • nativeObj

      protected final long nativeObj
  • Constructor Details

    • Odometry

      protected Odometry(long addr)
    • Odometry

      public Odometry()
    • Odometry

      public Odometry(int otype)
    • Odometry

      public Odometry(int otype, OdometrySettings settings, int algtype)
  • Method Details

    • getNativeObjAddr

      public long getNativeObjAddr()
    • __fromPtr__

      public static Odometry __fromPtr__(long addr)
    • prepareFrame

      public void prepareFrame(OdometryFrame frame)
      Prepare frame for odometry calculation
      Parameters:
      frame - odometry prepare this frame as src frame and dst frame simultaneously
    • prepareFrames

      public void prepareFrames(OdometryFrame srcFrame, OdometryFrame dstFrame)
      Prepare frame for odometry calculation
      Parameters:
      srcFrame - frame will be prepared as src frame ("original" image)
      dstFrame - frame will be prepared as dsr frame ("rotated" image)
    • compute

      public boolean compute(OdometryFrame srcFrame, OdometryFrame dstFrame, Mat Rt)
      Compute Rigid Transformation between two frames so that Rt * src = dst Both frames, source and destination, should have been prepared by calling prepareFrame() first
      Parameters:
      srcFrame - src frame ("original" image)
      dstFrame - dst frame ("rotated" image)
      Rt - Rigid transformation, which will be calculated, in form: { R_11 R_12 R_13 t_1 R_21 R_22 R_23 t_2 R_31 R_32 R_33 t_3 0 0 0 1 }
      Returns:
      true on success, false if failed to find the transformation
    • compute

      public boolean compute(Mat srcDepth, Mat dstDepth, Mat Rt)
      Compute Rigid Transformation between two frames so that Rt * src = dst
      Parameters:
      srcDepth - source depth ("original" image)
      dstDepth - destination depth ("rotated" image)
      Rt - Rigid transformation, which will be calculated, in form: { R_11 R_12 R_13 t_1 R_21 R_22 R_23 t_2 R_31 R_32 R_33 t_3 0 0 0 1 }
      Returns:
      true on success, false if failed to find the transformation
    • compute

      public boolean compute(Mat srcDepth, Mat srcRGB, Mat dstDepth, Mat dstRGB, Mat Rt)
      Compute Rigid Transformation between two frames so that Rt * src = dst
      Parameters:
      srcDepth - source depth ("original" image)
      srcRGB - source RGB
      dstDepth - destination depth ("rotated" image)
      dstRGB - destination RGB
      Rt - Rigid transformation, which will be calculated, in form: { R_11 R_12 R_13 t_1 R_21 R_22 R_23 t_2 R_31 R_32 R_33 t_3 0 0 0 1 }
      Returns:
      true on success, false if failed to find the transformation
    • getNormalsComputer

      public RgbdNormals getNormalsComputer()
      Get the normals computer object used for normals calculation (if presented). The normals computer is generated at first need during prepareFrame when normals are required for the ICP algorithm but not presented by a user. Re-generated each time the related settings change or a new frame arrives with the different size.
      Returns:
      automatically generated