Documentation of 'boofcv.alg.geo.calibration.Zhang99OptimizationJacobian' Java class
Zhang99OptimizationJacobian
boofcv.alg.geo.calibration

Class Zhang99OptimizationJacobian

  • All Implemented Interfaces:
    FunctionNtoMxN


    public class Zhang99OptimizationJacobian
    extends java.lang.Object
    implements FunctionNtoMxN

    Analytical Jacobian for optimizing calibration parameters.

    NOTE: Accuracy is tested in a unit test using a numerical Jacobian. A very crude tolerance was required to make it pass. I think this implementation is correct, but hand computing the Jacobian is error prone. In practice it produces virtually the same final results as the numerical Jacobian.

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      int getNumOfInputsN()
      Number of input parameters and columns in output matrix.
      int getNumOfOutputsM()
      Number of rows in output matrix.
      void process(double[] input, double[] output)
      Processes the input vector to output a 2D a matrix.
      • Methods inherited from class java.lang.Object

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

      • Zhang99OptimizationJacobian

        public Zhang99OptimizationJacobian(boolean assumeZeroSkew,
                                           int numRadial,
                                           boolean includeTangential,
                                           java.util.List<CalibrationObservation> observationSets,
                                           java.util.List<Point2D_F64> grid)
        Configurations the optimization function.
        Parameters:
        grid - Location of points on the calibration grid. z=0
    • Method Detail

      • getNumOfInputsN

        public int getNumOfInputsN()
        Description copied from interface: FunctionNtoMxN
        Number of input parameters and columns in output matrix. Typically the parameters you are optimizing.
        Specified by:
        getNumOfInputsN in interface FunctionNtoMxN
        Returns:
        Number of input parameters
      • getNumOfOutputsM

        public int getNumOfOutputsM()
        Description copied from interface: FunctionNtoMxN
        Number of rows in output matrix. Typically the functions that are being optimized.
        Specified by:
        getNumOfOutputsM in interface FunctionNtoMxN
        Returns:
        Number of rows in output matrix.
      • process

        public void process(double[] input,
                            double[] output)
        Description copied from interface: FunctionNtoMxN

        Processes the input vector to output a 2D a matrix. The matrix has a dimension of M rows and N columns and is formatted as a row major 1D-array. EJML can be used to provide a matrix wrapper around the output array: DenseMatrix J = DenseMatrix.wrap(m,n,output);

        The user can modify the input parameters here and the optimizer must use those changes.

        Specified by:
        process in interface FunctionNtoMxN
        Parameters:
        input - Vector with input parameters.
        output - Row major array with M rows and N columns.

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.