USGSCSM Distortion Class

Enums

enum DistortionType

Values:

enumerator RADIAL
enumerator TRANSVERSE
enumerator KAGUYALISM
enumerator DAWNFC
enumerator LROLROCNAC
enumerator CAHVOR

Functions

void distortionJacobian(double x, double y, double *jacobian, const std::vector<double> opticalDistCoeffs)
void computeTransverseDistortion(double ux, double uy, double &dx, double &dy, const std::vector<double> opticalDistCoeffs)

Compute distorted focal plane (dx,dy) coordinate given an undistorted focal plane (ux,uy) coordinate. This uses the third order Taylor approximation to the distortion model.

Parameters
  • ux – Undistored x

  • uy – Undistored y

  • opticalDistCoeffs – For both X and Y coefficients

Returns

distortedPoint Newly adjusted focal plane coordinates as an x, y tuple

void removeDistortion(double dx, double dy, double &ux, double &uy, const std::vector<double> opticalDistCoeffs, DistortionType distortionType, const double tolerance = 1.0E-6)
void applyDistortion(double ux, double uy, double &dx, double &dy, const std::vector<double> opticalDistCoeffs, DistortionType distortionType, const double desiredPrecision = 1.0E-6, const double tolerance = 1.0E-6)