Class BundleKannalaBrandt

java.lang.Object
boofcv.alg.geo.bundle.cameras.BundleKannalaBrandt
All Implemented Interfaces:
BundleAdjustmentCamera

public class BundleKannalaBrandt
extends Object
implements BundleAdjustmentCamera
Implementation of CameraKannalaBrandt for bundle adjustment
  • Field Summary

    Fields
    Modifier and Type Field Description
    boolean isAsymmetric
    True if a there are asymmetric distortion terms
    CameraKannalaBrandt model
    Camera model parameters
    boolean zeroSkew
    forces skew to be zero
  • Constructor Summary

    Constructors
    Constructor Description
    BundleKannalaBrandt()  
    BundleKannalaBrandt​(CameraKannalaBrandt model)  
  • Method Summary

    Modifier and Type Method Description
    void configure​(boolean zeroSkew, int numSymmetric, int numAsymmetric)
    Configures the parameters in the model
    void getIntrinsic​(double[] parameters, int offset)
    Copies the intrinsic camera into the array.
    int getIntrinsicCount()
    Returns the number of intrinsic parameters for this model.
    void jacobian​(double camX, double camY, double camZ, double[] pointX, double[] pointY, boolean computeIntrinsic, @org.jetbrains.annotations.Nullable double[] calibX, @org.jetbrains.annotations.Nullable double[] calibY)
    Computes the gradient for the projected pixel coordinate with partials for the input 3D point in camera reference frame and camera intrinsic parameters.
    void project​(double camX, double camY, double camZ, Point2D_F64 output)
    Project the 3D point in the camera reference frame onto the camera's image plane.
    void setIntrinsic​(double[] parameters, int offset)
    Specifies the intrinsic camera parameters.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • model

      public final CameraKannalaBrandt model
      Camera model parameters
    • zeroSkew

      public boolean zeroSkew
      forces skew to be zero
    • isAsymmetric

      public boolean isAsymmetric
      True if a there are asymmetric distortion terms
  • Constructor Details

    • BundleKannalaBrandt

      public BundleKannalaBrandt​(CameraKannalaBrandt model)
    • BundleKannalaBrandt

      public BundleKannalaBrandt()
  • Method Details

    • configure

      public void configure​(boolean zeroSkew, int numSymmetric, int numAsymmetric)
      Configures the parameters in the model
      Parameters:
      zeroSkew - If true, then skew will always be zero
      numSymmetric - Number of symmetric coefficients
      numAsymmetric - Number of asymmetric coefficients.
    • setIntrinsic

      public void setIntrinsic​(double[] parameters, int offset)
      Description copied from interface: BundleAdjustmentCamera
      Specifies the intrinsic camera parameters.
      Specified by:
      setIntrinsic in interface BundleAdjustmentCamera
      Parameters:
      parameters - Array containing the parameters
      offset - Location of first index in the array which the parameters are stored
    • getIntrinsic

      public void getIntrinsic​(double[] parameters, int offset)
      Description copied from interface: BundleAdjustmentCamera
      Copies the intrinsic camera into the array.
      Specified by:
      getIntrinsic in interface BundleAdjustmentCamera
      Parameters:
      parameters - Array containing the parameters
      offset - Location of first index in the array which the parameters are stored
    • project

      public void project​(double camX, double camY, double camZ, Point2D_F64 output)
      Description copied from interface: BundleAdjustmentCamera
      Project the 3D point in the camera reference frame onto the camera's image plane.
      Specified by:
      project in interface BundleAdjustmentCamera
      Parameters:
      camX - 3D point in camera reference frame
      camY - 3D point in camera reference frame
      camZ - 3D point in camera reference frame
      output - Storage for projected point.
    • jacobian

      public void jacobian​(double camX, double camY, double camZ, double[] pointX, double[] pointY, boolean computeIntrinsic, @Nullable @org.jetbrains.annotations.Nullable double[] calibX, @Nullable @org.jetbrains.annotations.Nullable double[] calibY)
      Description copied from interface: BundleAdjustmentCamera
      Computes the gradient for the projected pixel coordinate with partials for the input 3D point in camera reference frame and camera intrinsic parameters. [x',y'] is the projected pixel coordinate of the 3D point in camera reference frame.
      Specified by:
      jacobian in interface BundleAdjustmentCamera
      Parameters:
      camX - (Input) 3D point in camera reference frame
      camY - (Input) 3D point in camera reference frame
      camZ - (Input) 3D point in camera reference frame
      pointX - (Output) Partial of projected x' relative to input camera point.[@x'/@camX, @ x' / @ camY, @ x' / @ camZ] length 3
      pointY - (Output) Partial of projected y' relative to input camera point.[@y'/@camX, @ y' / @ camY, @ y' / @ camZ] length 3
      computeIntrinsic - If true the calibX and calibY is computed. Otherwise they are ignored and can be null
      calibX - (Output) Partial of projected x' relative to calibration parameters. length N
      calibY - (Output) Partial of projected y' relative to calibration parameters. length N
    • getIntrinsicCount

      public int getIntrinsicCount()
      Description copied from interface: BundleAdjustmentCamera
      Returns the number of intrinsic parameters for this model. If the camera is known then the number of parameters is zero
      Specified by:
      getIntrinsicCount in interface BundleAdjustmentCamera
      Returns:
      number of intrinsic parameters.