USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::Chandrayaan1M3DistortionMap Class Reference

Distortion map for the Chandrayaan1 M3 camera. More...

#include <Chandrayaan1M3DistortionMap.h>

Inheritance diagram for Isis::Chandrayaan1M3DistortionMap:
Inheritance graph
Collaboration diagram for Isis::Chandrayaan1M3DistortionMap:
Collaboration graph

Public Member Functions

 Chandrayaan1M3DistortionMap (Camera *parent, double xp, double yp, double k1, double k2, double k3, double p1, double p2)
 
bool SetFocalPlane (const double dx, const double dy)
 Compute undistorted focal plane x/y.
 
bool SetUndistortedFocalPlane (const double ux, const double uy)
 Compute distorted focal plane x/y.
 
void SetDistortion (int naifIkCode)
 Load distortion coefficients.
 
std::vector< double > OpticalDistortionCoefficients () const
 Return optical distortion polynomial coefficients.
 
double ZDirection () const
 Return the direction of the focal plane Z-axis.
 
double FocalPlaneX () const
 Return distorted focal plane x.
 
double FocalPlaneY () const
 Return distorted focal plane y.
 
double UndistortedFocalPlaneX () const
 Return undistorted focal plane x.
 
double UndistortedFocalPlaneY () const
 Return undistorted focal plane y.
 
double UndistortedFocalPlaneZ () const
 Return undistorted focal plane z.
 

Protected Attributes

Camerap_camera
 
double p_focalPlaneX
 
double p_focalPlaneY
 
double p_undistortedFocalPlaneX
 
double p_undistortedFocalPlaneY
 
double p_zDirection
 
std::vector< double > p_odk
 

Private Attributes

double p_xp
 
double p_yp
 principal point coordinates
 
double p_k1
 
double p_k2
 
double p_k3
 coefficients of radial distortion
 
double p_p1
 
double p_p2
 
double p_p3
 coefficients of decentering distortion
 

Detailed Description

Distortion map for the Chandrayaan1 M3 camera.

This class is used by the Chandrayaan1 M3 camera model as its distortion map. Equations provided by Randy Kirk and code provided by Ken Edmundson.

Author
????-??-?? Ken Edmundson
History:
2013-11-24 Stuart Sides - Modified from ApolloMetricDistortionMap

Definition at line 48 of file Chandrayaan1M3DistortionMap.h.

Member Function Documentation

double Isis::CameraDistortionMap::FocalPlaneX ( ) const
inlineinherited
double Isis::CameraDistortionMap::FocalPlaneY ( ) const
inlineinherited
std::vector< double > Isis::CameraDistortionMap::OpticalDistortionCoefficients ( ) const
inherited

Return optical distortion polynomial coefficients.

Definition at line 195 of file CameraDistortionMap.cpp.

void Isis::CameraDistortionMap::SetDistortion ( int  naifIkCode)
inherited

Load distortion coefficients.

This method loads the distortion coefficients from the instrument kernel. The coefficients in the NAIF instrument kernel are expected to be in the form of:

INSxxxxx_OD_K = ( coef1, coef2, ..., coefN)
where xxxxx is the instrument code (always a negative number)

These coefficient will be used to convert from focal plane x,y to undistorted x,y as follows (add equation here)

Parameters
naifIkCodeCode to search for in instrument kernel
Todo:

Generalize to read variable number of coefficients

Add latex equation to the documentation

Definition at line 65 of file CameraDistortionMap.cpp.

References Isis::toString().

Referenced by Isis::AmicaCamera::AmicaCamera(), Isis::CTXCamera::CTXCamera(), Isis::HiriseCamera::HiriseCamera(), Isis::LroWideAngleCameraDistortionMap::LroWideAngleCameraDistortionMap(), Isis::LoHighDistortionMap::SetDistortion(), and Isis::LoMediumDistortionMap::SetDistortion().

bool Isis::Chandrayaan1M3DistortionMap::SetFocalPlane ( const double  dx,
const double  dy 
)
virtual

Compute undistorted focal plane x/y.

Compute undistorted focal plane x/y given a distorted focal plane x/y. after calling this method, you can obtain the undistorted x/y via the UndistortedFocalPlaneX and UndistortedFocalPlaneY methods

Parameters
dxdistorted focal plane x in millimeters
dydistorted focal plane y in millimeters
Returns
if the conversion was successful

Reimplemented from Isis::CameraDistortionMap.

Definition at line 59 of file Chandrayaan1M3DistortionMap.cpp.

References p_k3, and p_yp.

bool Isis::Chandrayaan1M3DistortionMap::SetUndistortedFocalPlane ( const double  ux,
const double  uy 
)
virtual

Compute distorted focal plane x/y.

Compute distorted focal plane x/y given an undistorted focal plane x/y. After calling this method, you can obtain the distorted x/y via the FocalPlaneX and FocalPlaneY methods

Parameters
uxundistorted focal plane x in millimeters
uyundistorted focal plane y in millimeters
Returns
if the conversion was successful

Reimplemented from Isis::CameraDistortionMap.

Definition at line 101 of file Chandrayaan1M3DistortionMap.cpp.

References p_k3, and p_yp.

double Isis::CameraDistortionMap::UndistortedFocalPlaneX ( ) const
inlineinherited
double Isis::CameraDistortionMap::UndistortedFocalPlaneY ( ) const
inlineinherited
double Isis::CameraDistortionMap::UndistortedFocalPlaneZ ( ) const
inlineinherited

Return undistorted focal plane z.

Definition at line 92 of file CameraDistortionMap.h.

References Isis::Camera::FocalLength().

Referenced by Isis::BundleAdjust::ApproximatePoint_ClosestApproach(), and Isis::Camera::SetImage().

double Isis::CameraDistortionMap::ZDirection ( ) const
inherited

Return the direction of the focal plane Z-axis.

Definition at line 201 of file CameraDistortionMap.cpp.

Member Data Documentation

double Isis::Chandrayaan1M3DistortionMap::p_k3
private

coefficients of radial distortion

Definition at line 60 of file Chandrayaan1M3DistortionMap.h.

Referenced by SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::Chandrayaan1M3DistortionMap::p_p3
private

coefficients of decentering distortion

Definition at line 61 of file Chandrayaan1M3DistortionMap.h.

double Isis::Chandrayaan1M3DistortionMap::p_yp
private

principal point coordinates

Definition at line 59 of file Chandrayaan1M3DistortionMap.h.

Referenced by SetFocalPlane(), and SetUndistortedFocalPlane().


The documentation for this class was generated from the following files: