OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
#include <ossimMeanRadialLensDistortion.h>
Public Member Functions | |
ossimMeanRadialLensDistortion () | |
ossimMeanRadialLensDistortion (ossimDpt calibratedPrincipalPoint, const NEWMAT::ColumnVector &radialDistance, const NEWMAT::ColumnVector &radialDistortion) | |
const std::vector< double > & | getCoefficients () const |
std::vector< double > & | getCoefficients () |
virtual std::ostream & | print (std::ostream &out) const |
Generic print method. More... | |
double | deltaR (double r) const |
virtual void | undistort (const ossimDpt &input, ossimDpt &output) const |
void | solveCoefficients (const NEWMAT::ColumnVector &radialDistance, const NEWMAT::ColumnVector &radialDistortion) |
void | solveCoefficients (const std::vector< double > &radialDistance, const std::vector< double > &radialDistortion) |
virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
![]() | |
ossimLensDistortion (const ossimDpt &callibratedCenter=ossimDpt(0, 0)) | |
void | setCenter (const ossimDpt ¢er) |
const ossimDpt & | getCenter () const |
virtual void | forward (const ossimDpt &input, ossimDpt &output) const |
virtual void | inverse (const ossimDpt &input, ossimDpt &output) |
virtual void | distort (const ossimDpt &input, ossimDpt &output) const |
![]() | |
virtual void | forward (ossimDpt &modify_this) const |
virtual void | inverse (const ossimDpt &input, ossimDpt &output) const |
virtual void | inverse (ossimDpt &modify_this) const |
virtual const ossim2dTo2dTransform & | operator= (const ossim2dTo2dTransform &rhs) |
virtual ossimDpt | getOrigin () const |
void | setConvergenceThreshold (const double &new_threshold) |
void | setMaxIterations (int new_max_iters) |
void | setDxDy (const ossimDpt &dxdy) |
![]() | |
ossimObject () | |
virtual | ~ossimObject () |
virtual ossimObject * | dup () const |
virtual ossimString | getShortName () const |
virtual ossimString | getLongName () const |
virtual ossimString | getDescription () const |
virtual ossimString | getClassName () const |
virtual RTTItypeid | getType () const |
virtual bool | canCastTo (ossimObject *obj) const |
virtual bool | canCastTo (const RTTItypeid &id) const |
virtual bool | canCastTo (const ossimString &parentClassName) const |
virtual bool | isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const |
virtual void | accept (ossimVisitor &visitor) |
![]() | |
ossimReferenced () | |
ossimReferenced (const ossimReferenced &) | |
ossimReferenced & | operator= (const ossimReferenced &) |
void | ref () const |
increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
void | unref () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
void | unref_nodelete () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
int | referenceCount () const |
Protected Attributes | |
std::vector< double > | theCoefficients |
![]() | |
ossimDpt | theCenter |
![]() | |
double | theConvergenceThreshold |
int | theMaxIterations |
ossimDpt | theDxDy |
Additional Inherited Members | |
![]() | |
ossim2dTo2dTransform () | |
virtual | ~ossim2dTo2dTransform () |
![]() | |
virtual | ~ossimReferenced () |
Definition at line 19 of file ossimMeanRadialLensDistortion.h.
|
inline |
Definition at line 22 of file ossimMeanRadialLensDistortion.h.
References theCoefficients.
|
inline |
Instantiate a ossimMeanRadialLens with the calibrated data. The data consists of the Principal point, focal distance, radialDistance measures for the distortion deltas, the radial distortion values.
example of construction:
lets say we have the following:
principal point = (.008 , -.001) mm
and
field angle radial distance deltaR (distortion)
7.5 deg. .004 mm .0202 mm 15 deg. .007 mm .0411 mm 22.5 deg. .007 mm .0635 mm : : :
then construct the ossimMeanRadialLensDistortion class to construct the given focal length and principal point and the middle column as the radial distance column vector and the third column as the distortion values.
Definition at line 62 of file ossimMeanRadialLensDistortion.h.
References solveCoefficients(), and theCoefficients.
double ossimMeanRadialLensDistortion::deltaR | ( | double | r | ) | const |
dletaR computes how much we should adjust r. The return value is the adjustment amount. This method is used by adjustPoint.
Definition at line 84 of file ossimMeanRadialLensDistortion.cpp.
References theCoefficients.
Referenced by undistort().
|
inline |
Returns the coefficients (k1, k2, k3, k4) for the deltaR polynomial:
deltaR = k1*r + k2*r^3 + k3*r^5 + k4*r^7
Definition at line 76 of file ossimMeanRadialLensDistortion.h.
References theCoefficients.
|
inline |
Definition at line 77 of file ossimMeanRadialLensDistortion.h.
References theCoefficients.
|
virtual |
Method to the load (recreate) the state of the object from a keyword list. Return true if ok or false on error.
Reimplemented from ossimLensDistortion.
Definition at line 141 of file ossimMeanRadialLensDistortion.cpp.
References distance(), ossimKeywordlist::find(), ossimLensDistortion::loadState(), solveCoefficients(), theCoefficients, ossimString::toDouble(), and ossimString::toString().
|
inlinevirtual |
Generic print method.
Derived classes should re-implement as they see fit.
Reimplemented from ossim2dTo2dTransform.
Definition at line 81 of file ossimMeanRadialLensDistortion.h.
|
virtual |
Method to save the state of the object to a keyword list. Return true if ok or false on error.
Reimplemented from ossimLensDistortion.
Definition at line 116 of file ossimMeanRadialLensDistortion.cpp.
References ossimKeywordlist::add(), ossimLensDistortion::saveState(), and theCoefficients.
Referenced by ossimApplanixUtmModel::saveState(), and ossimApplanixEcefModel::saveState().
void ossimMeanRadialLensDistortion::solveCoefficients | ( | const NEWMAT::ColumnVector & | radialDistance, |
const NEWMAT::ColumnVector & | radialDistortion | ||
) |
solves the coefficients given the radial distances and distortion for each distance.
Definition at line 44 of file ossimMeanRadialLensDistortion.cpp.
References theCoefficients.
Referenced by loadState(), ossimMeanRadialLensDistortion(), and solveCoefficients().
void ossimMeanRadialLensDistortion::solveCoefficients | ( | const std::vector< double > & | radialDistance, |
const std::vector< double > & | radialDistortion | ||
) |
solves the coefficients given the radial distances and distortion for each distance.
Definition at line 21 of file ossimMeanRadialLensDistortion.cpp.
References solveCoefficients(), and theCoefficients.
|
virtual |
Implements ossimLensDistortion.
Definition at line 94 of file ossimMeanRadialLensDistortion.cpp.
References deltaR(), FLT_EPSILON, ossimLensDistortion::theCenter, ossimDpt::x, and ossimDpt::y.
Referenced by ossimApplanixUtmModel::imagingRay(), and ossimApplanixEcefModel::imagingRay().
|
protected |
Definition at line 113 of file ossimMeanRadialLensDistortion.h.
Referenced by deltaR(), getCoefficients(), loadState(), ossimMeanRadialLensDistortion(), saveState(), and solveCoefficients().