USGS

Isis 3.0 Object Programmers' Reference

Home

Isis::ApolloMetricDistortionMap Class Reference

Apollo Metric Distortion Map. More...

#include <ApolloMetricDistortionMap.h>

Inheritance diagram for Isis::ApolloMetricDistortionMap:
Inheritance graph
Collaboration diagram for Isis::ApolloMetricDistortionMap:
Collaboration graph

Public Member Functions

 ApolloMetricDistortionMap (Camera *parent, double xp, double yp, double k1, double k2, double k3, double j1, double j2, double t0)
 Constructs a Distortion Map object for the Apollo Metric Camera.
 
 ~ApolloMetricDistortionMap ()
 Destroys ApolloMetricDistortionMap object.
 
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
 Principal point x-coordinate.
 
double p_yp
 Principal point y-coordinate.
 
double p_k1
 First coefficient of radial distortion.
 
double p_k2
 Second coefficient of radial distortion.
 
double p_k3
 Third coefficient of radial distortion.
 
double p_j1
 First coefficient of decentering distortion.
 
double p_j2
 Second coefficient of decentering distortion.
 
double p_t0
 
 Angle between positive x-axis of image and vector to

imaged point.

 

Detailed Description

Apollo Metric Distortion Map.

Author
????-??-?? Unknown
History:

2011-05-03 Jeannie Walldren - Updated documentation. Removed Apollo namespace wrap inside Isis namespace. Added Isis Disclaimer to files.

2013-03-18 Debbie A. Cook - Added flag to flip focal plane z axis

Definition at line 36 of file ApolloMetricDistortionMap.h.

Constructor & Destructor Documentation

Isis::ApolloMetricDistortionMap::ApolloMetricDistortionMap ( Camera parent,
double  xp,
double  yp,
double  k1,
double  k2,
double  k3,
double  j1,
double  j2,
double  t0 
)

Constructs a Distortion Map object for the Apollo Metric Camera.

Parameters
parentPointer to parent Camera object
xpPricipal point x-coordinate
ypPricipal point y-coordinate
k1First coefficient of radial distortion
k2Second coefficient of radial distortion
k3Third coefficient of radial distortion
j1First coefficient of decentering distortion
j2Second coefficient of decentering distortion
t0Angle between positive x-axis of image and vector to imaged point
History:

2011-05-03 Jeannie Walldren - Added documentation.

2013-03-18 Debbie A. Cook - Added flag to flip focal plane z axis

Definition at line 43 of file ApolloMetricDistortionMap.cpp.

References p_j1, p_j2, p_k1, p_k2, p_k3, p_t0, p_xp, and p_yp.

Isis::ApolloMetricDistortionMap::~ApolloMetricDistortionMap ( )
inline

Destroys ApolloMetricDistortionMap object.

Definition at line 42 of file ApolloMetricDistortionMap.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::ApolloMetricDistortionMap::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. fter 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
whether the conversion was successful

Reimplemented from Isis::CameraDistortionMap.

Definition at line 71 of file ApolloMetricDistortionMap.cpp.

References p_j1, p_j2, p_k1, p_k2, p_k3, p_t0, p_xp, and p_yp.

bool Isis::ApolloMetricDistortionMap::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
whether the conversion was successful

Reimplemented from Isis::CameraDistortionMap.

Definition at line 109 of file ApolloMetricDistortionMap.cpp.

References p_j1, p_j2, p_k1, p_k2, p_k3, p_t0, p_xp, 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::ApolloMetricDistortionMap::p_j1
private

First coefficient of decentering distortion.

Definition at line 52 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_j2
private

Second coefficient of decentering distortion.

Definition at line 53 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_k1
private

First coefficient of radial distortion.

Definition at line 49 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_k2
private

Second coefficient of radial distortion.

Definition at line 50 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_k3
private

Third coefficient of radial distortion.

Definition at line 51 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_t0
private

 Angle between positive x-axis of image and vector to

imaged point.

Used in computation of decentering distortion.

Definition at line 54 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_xp
private

Principal point x-coordinate.

Definition at line 47 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().

double Isis::ApolloMetricDistortionMap::p_yp
private

Principal point y-coordinate.

Definition at line 48 of file ApolloMetricDistortionMap.h.

Referenced by ApolloMetricDistortionMap(), SetFocalPlane(), and SetUndistortedFocalPlane().


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