Distortion Model — Distortion Model Type Mix-ins

The mix-ins in this module are for common distortion models that are shared between multiple sensors. Distortion models that are unique to a sensor or mission are kept in the driver module for that mission.

New in version 0.1.0.

class ale.base.type_distortion.CahvorDistortion

Bases: object

Mix-in for sensors and data sets that have a CAHVOR distortion model.

This model is based on info from https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2003JE002199 Expects that cahvor_camera_dict and focal_length to be defined. This should be a dictionary defining the CAHVOR distortion parameters.

property usgscsm_distortion_model

Dictionary containing the usgscsm specification for CAHVOR distortion. This will be a list of coeffs for radial distortion (x0, x1, x2) followed by the optical center (x, y)

Returns

: dict

class ale.base.type_distortion.KaguyaSeleneDistortion

Bases: object

Mix-in for sensors on the Kaguya/Selene mission.

property usgscsm_distortion_model

Kaguya uses a unique radial distortion model so we need to overwrite the method packing the distortion model into the ISD.

from the IK:

Line-of-sight vector of pixel no. n can be expressed as below.

Distortion coefficients information: INS<INSTID>_DISTORTION_COEF_X = ( a0, a1, a2, a3) INS<INSTID>_DISTORTION_COEF_Y = ( b0, b1, b2, b3),

Distance r from the center: r = - (n - INS<INSTID>_CENTER) * INS<INSTID>_PIXEL_SIZE.

Line-of-sight vector v is calculated as v[X] = INS<INSTID>BORESIGHT[X] + a0 + a1*r + a2*r^2 + a3*r^3 , v[Y] = INS<INSTID>BORESIGHT[Y] + r+a0 + a1*r +a2*r^2 + a3*r^3 , v[Z] = INS<INSTID>BORESIGHT[Z]

Expects odkx and odky to be defined. These should be a list of optical distortion x and y coefficients respectively.

Returns

: dict

radial distortion model

class ale.base.type_distortion.LegendreDistortion

Bases: object

Mix-in for sensors that use a legendre distortion model.

property usgscsm_distortion_model

Expects odtx and odty to be defined. These should be lists containing the legendre distortion coefficients

Returns

: dict

Dictionary containing the usgscsm distortion model

class ale.base.type_distortion.NoDistortion

Bases: object

Mix-in for sensors and data sets that do not have a distortion model.

property usgscsm_distortion_model

Returns the specification for no distortion in usgscsm.

Returns

: dict

Dictionary containing the usgscsm specification for no distortion.

class ale.base.type_distortion.RadialDistortion

Bases: object

Mix-in for sensors that use a radial distortion model.

property usgscsm_distortion_model

Expects odtk to be defined. This should be a list containing the radial distortion coefficients

Returns

: dict

Dictionary containing the usgscsm distortion model