OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
#include <ossimSonomaSensor.h>
Classes | |
class | ossimPlane |
Public Member Functions | |
ossimSonomaSensor () | |
ossimSonomaSensor (const ossimSonomaSensor &src) | |
virtual ossimObject * | dup () const |
virtual void | imagingRay (const ossimDpt &image_point, ossimEcefRay &image_ray) const |
virtual void | lineSampleHeightToWorld (const ossimDpt &image_point, const double &heightEllipsoid, ossimGpt &worldPoint) const |
void | lineSampleToWorld (const ossimDpt &image_point, ossimGpt &gpt) const |
virtual void | updateModel () |
void | setRollPitchHeading (double r, double p, double y) |
void | setFocalLength (double value) |
void | setPlatformPosition (const ossimGpt &value) |
void | setPrincipalPoint (const ossimDpt &value) |
void | setPixelSize (const ossimDpt &value) |
virtual bool | useForward () const |
virtual void | initAdjustableParameters () |
ground to image faster (you don't need DEM) //TBC More... | |
virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
![]() | |
ossimSensorModel () | |
ossimSensorModel (const ossimSensorModel ©_this) | |
ossimSensorModel (const ossimKeywordlist &geom_kwl) | |
const ossimSensorModel & | operator= (const ossimSensorModel &rhs) |
assignment operator More... | |
virtual ossimObject * | getBaseObject () |
virtual const ossimObject * | getBaseObject () const |
virtual ossimGpt | origin () const |
virtual ossimDpt | getMetersPerPixel () const |
virtual const double & | getNominalPosError () const |
Returns the estimated Absolute horizontal position error (CE90) of the sensor model. More... | |
virtual const double & | getRelativePosError () const |
Returns the estimated RELATIVE horizontal position error (CE90) of the sensor model. More... | |
virtual void | setNominalPosError (const double &ce90) |
Assigns the absolute image position error uncertainty (abs CE90) More... | |
virtual void | setRelativePosError (const double &ce90) |
Assigns the relative image position error uncertainty (rel CE90) More... | |
virtual void | worldToLineSample (const ossimGpt &world_point, ossimDpt &image_point) const |
virtual std::ostream & | print (std::ostream &out) const |
void | setRefImgPt (const ossimDpt &pt) |
Sets the center line sampe of the image. More... | |
void | setRefGndPt (const ossimGpt &pt) |
Sets the center latitude, longitude, height of the image. More... | |
void | setImageRect (const ossimDrect &imageRect) |
void | setGroundRect (const ossimGpt &ul, const ossimGpt &ur, const ossimGpt &lr, const ossimGpt &ll) |
ossimDpt | imageSize () const |
void | setImageSize (const ossimDpt &size) |
virtual void | adjustableParametersChanged () |
virtual bool | insideImage (const ossimDpt &p) const |
virtual bool | operator== (const ossimProjection &proj) const |
const ossimString & | getImageID () const |
Access methods: More... | |
const ossimDrect & | getImageClipRect () const |
virtual ossim_uint32 | degreesOfFreedom () const |
virtual bool | needsInitialState () const |
needsInitialState() More... | |
virtual double | optimizeFit (const ossimTieGptSet &tieSet, double *targetVariance=0) |
virtual ossimDpt | getForwardDeriv (int parmIdx, const ossimGpt &gpos, double hdelta=1e-11) |
virtual ossimGpt | getInverseDeriv (int parmIdx, const ossimDpt &ipos, double hdelta=1e-11) |
virtual ossimSensorModel::CovMatStatus | getObsCovMat (const ossimDpt &ipos, NEWMAT::SymmetricMatrix &Cov, const ossim_float64 defPointingSigma=0.5) const |
Gives 2X2 covariance matrix of observations. More... | |
virtual bool | isAffectedByElevation () const |
Implementation of pure virtual ossimProjection::isAffectedByElevation method. More... | |
void | computeGsd () |
This method computes the ground sample distance(gsd) and sets class attributes theGSD and theMeanGSD by doing a lineSampleHeightToWorld on four points and calculating the distance from them. More... | |
virtual bool | getImageGeometry (const ossimString &, const ossimString &, ossimKeywordlist &) const |
Extracts geometry info from a non-ossim key,value pair to an ossim keyword list. More... | |
![]() | |
ossimProjection () | |
virtual | ~ossimProjection () |
virtual ossimDpt | forward (const ossimGpt &wp) const |
virtual ossimGpt | inverse (const ossimDpt &pp) const |
virtual void | getRoundTripError (const ossimDpt &imagePoint, ossimDpt &errorResult) const |
virtual void | getRoundTripError (const ossimGpt &groundPoint, ossimDpt &errorResult) const |
virtual void | getGroundClipPoints (ossimGeoPolygon &gpts) const |
virtual bool | isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const |
virtual bool | operator!= (const ossimProjection &projection) const |
![]() | |
ossimObject () | |
virtual | ~ossimObject () |
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 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 |
![]() | |
ossimErrorStatusInterface () | |
virtual | ~ossimErrorStatusInterface () |
virtual ossimErrorCode | getErrorStatus () const |
virtual ossimString | getErrorStatusString () const |
virtual void | setErrorStatus (ossimErrorCode error_status) const |
virtual void | setErrorStatus () const |
virtual void | clearErrorStatus () const |
bool | hasError () const |
![]() | |
ossimOptimizableProjection () | |
ossimOptimizableProjection (const ossimOptimizableProjection &source) | |
virtual | ~ossimOptimizableProjection () |
virtual ossimOptimizableProjection & | operator= (const ossimOptimizableProjection &source) |
virtual bool | setupOptimizer (const ossimString &setup) |
setupFromString() Derived classes should implement as needed. Initialize parameters needed for optimizeFit and degreesOfFreedom More... | |
![]() | |
ossimAdjustableParameterInterface () | |
ossimAdjustableParameterInterface (const ossimAdjustableParameterInterface &rhs) | |
virtual | ~ossimAdjustableParameterInterface () |
void | newAdjustment (ossim_uint32 numberOfParameters=0) |
void | setAdjustmentDescription (const ossimString &description) |
ossimString | getAdjustmentDescription () const |
ossimString | getAdjustmentDescription (ossim_uint32 adjustmentIdx) const |
Returns adjustmentDescription of specific adjustmentInfo. More... | |
void | setCurrentAdjustment (ossim_uint32 adjustmentIndex, bool notify=false) |
bool | setCurrentAdjustment (const ossimString &description, bool notify=false) |
Sets the current adjustment to the adjustment with a matching description. More... | |
void | eraseAdjustment (bool notify) |
void | eraseAdjustment (ossim_uint32 idx, bool notify) |
void | resetAdjustableParameters (bool notify=false) |
void | copyAdjustment (ossim_uint32 idx, bool notify) |
void | copyAdjustment (bool notify=false) |
void | keepAdjustment (ossim_uint32 idx, bool createCopy) |
virtual void | keepAdjustment (bool createCopy=true) |
const ossimAdjustableParameterInterface & | operator= (const ossimAdjustableParameterInterface &rhs) |
void | removeAllAdjustments () |
ossim_uint32 | getNumberOfAdjustableParameters () const |
double | getAdjustableParameter (ossim_uint32 idx) const |
virtual void | setAdjustableParameter (ossim_uint32 idx, double value, bool notify=false) |
virtual void | setAdjustableParameter (ossim_uint32 idx, double value, double sigma, bool notify=false) |
double | getParameterSigma (ossim_uint32 idx) const |
void | setParameterSigma (ossim_uint32 idx, double value, bool notify=false) |
ossimUnitType | getParameterUnit (ossim_uint32 idx) const |
void | setParameterUnit (ossim_uint32 idx, ossimUnitType unit) |
void | setParameterUnit (ossim_uint32 idx, const ossimString &unit) |
void | setParameterCenter (ossim_uint32 idx, double center, bool notify=false) |
double | getParameterCenter (ossim_uint32 idx) const |
double | computeParameterOffset (ossim_uint32 idx) const |
void | setParameterOffset (ossim_uint32 idx, ossim_float64 value, bool notify=false) |
ossimString | getParameterDescription (ossim_uint32 idx) const |
void | setParameterDescription (ossim_uint32 idx, const ossimString &descrption) |
ossim_int32 | findParameterIdxGivenDescription (ossim_uint32 adjustmentIdx, const ossimString &name) const |
ossim_int32 | findParameterIdxContainingDescription (ossim_uint32 adjustmentIdx, const ossimString &name) const |
bool | isParameterLocked (ossim_uint32 idx) const |
void | setParameterLockFlag (ossim_uint32 idxParam, bool flag) |
bool | getParameterLockFlag (ossim_uint32 idx) const |
void | lockAllParametersCurrentAdjustment () |
void | unlockAllParametersCurrentAdjustment () |
void | lockAllParameters (ossim_uint32 idxAdjustment) |
void | unlockAllParameters (ossim_uint32 idxAdjustment) |
void | resizeAdjustableParameterArray (ossim_uint32 numberOfParameters) |
void | setAdjustment (const ossimAdjustmentInfo &adj, bool notify=false) |
void | setAdjustment (ossim_uint32 idx, const ossimAdjustmentInfo &adj, bool notify=false) |
void | addAdjustment (const ossimAdjustmentInfo &adj, bool notify) |
void | getAdjustment (ossimAdjustmentInfo &adj) const |
void | getAdjustment (ossim_uint32 idx, ossimAdjustmentInfo &adj) const |
ossim_uint32 | getNumberOfAdjustments () const |
ossim_uint32 | getCurrentAdjustmentIdx () const |
void | setDirtyFlag (bool flag=true) |
void | setAllDirtyFlag (bool flag=true) |
bool | hasDirtyAdjustments () const |
virtual void | saveCurrentAdjustmentOnly (ossimKeywordlist &kwl, const ossimString &prefix=ossimString("")) |
Saves the current active adjustment to the KWL file. More... | |
bool | saveAdjustments (ossimKeywordlist &kwl, const ossimString &prefix=ossimString("")) const |
Save all adjustments to the KWL file. More... | |
bool | loadAdjustments (const ossimKeywordlist &kwl, const ossimString &prefix=ossimString("")) |
std::ostream & | print (std::ostream &out) const |
Dumps the currently active adjustment to ostream. More... | |
Protected Member Functions | |
bool | intersectRay (const ossimMapProjection &proj, ossimDpt3d &result, ossimDpt3d &origin, ossimDpt3d &dir) const |
bool | intersectRayWithHeight (const ossimMapProjection &proj, ossimDpt3d &result, ossimDpt3d &origin, ossimDpt3d &dir, double h) const |
![]() | |
virtual | ~ossimSensorModel () |
virtual ossimDpt | extrapolate (const ossimGpt &gp) const |
virtual ossimGpt | extrapolate (const ossimDpt &ip, const double &height=ossim::nan()) const |
void | buildNormalEquation (const ossimTieGptSet &tieSet, NEWMAT::SymmetricMatrix &A, NEWMAT::ColumnVector &residue, NEWMAT::ColumnVector &projResidue, double pstep_scale) |
NEWMAT::ColumnVector | getResidue (const ossimTieGptSet &tieSet) |
NEWMAT::ColumnVector | solveLeastSquares (NEWMAT::SymmetricMatrix &A, NEWMAT::ColumnVector &r) const |
NEWMAT::Matrix | invert (const NEWMAT::Matrix &m) const |
stable invert stolen from ossimRpcSolver More... | |
![]() | |
virtual | ~ossimReferenced () |
![]() | |
bool | paramChanged (ossim_uint32 param_idx) const |
Returns true if specified parameter has been modified since last setAllChangeFlag(false) call. More... | |
void | setAllChangeFlags (bool areChanged) |
Sets all the change flags to the boolean indicated to indicate parameters are changed (TRUE) or not (FALSE). More... | |
void | initChangeFlags () |
Initializes the change flags to TRUE. More... | |
Additional Inherited Members | |
![]() | |
enum | CovMatStatus { COV_INVALID = 0, COV_PARTIAL = 1, COV_FULL = 2 } |
enum | DeriveMode { OBS_INIT =-99, EVALUATE =-98, P_WRT_X = -1, P_WRT_Y = -2, P_WRT_Z = -3 } |
![]() | |
static void | writeGeomTemplate (ostream &os) |
Definition at line 52 of file ossimSonomaSensor.h.
ossimSonomaSensor::ossimSonomaSensor | ( | ) |
Definition at line 30 of file ossimSonomaSensor.cpp.
References ossimMatrix4x4::createIdentity(), initAdjustableParameters(), m_mount, m_mountInverse, m_utmProjection, and ossimSensorModel::theSensorID.
|
inline |
Definition at line 56 of file ossimSonomaSensor.h.
|
inlinevirtual |
|
virtual |
METHOD: imagingRay(image_point, &ossimEcefRay) Given an image point, returns a ray originating at some arbitrarily high point (ideally at the sensor position) and pointing towards the target. Implemented here but should be overriden for more efficient solution.
Reimplemented from ossimSensorModel.
Definition at line 39 of file ossimSonomaSensor.cpp.
References ossimAdjustableParameterInterface::computeParameterOffset(), m_compositeMatrix, m_ecefPlatformPosition, m_focalLength, m_mount, m_pixelSize, m_pixelToCamera, m_principalPoint, ossimEcefVector::magnitude(), ossimEcefVector::normalize(), ossimSensorModel::theRefImgPt, ossimDpt::x, and ossimDpt::y.
Referenced by lineSampleToWorld().
|
virtual |
ground to image faster (you don't need DEM) //TBC
Reimplemented from ossimAdjustableParameterInterface.
Definition at line 324 of file ossimSonomaSensor.cpp.
References ossimAdjustableParameterInterface::resizeAdjustableParameterArray(), ossimAdjustableParameterInterface::setAdjustableParameter(), ossimAdjustableParameterInterface::setParameterDescription(), ossimAdjustableParameterInterface::setParameterSigma(), and ossimAdjustableParameterInterface::setParameterUnit().
Referenced by loadState(), and ossimSonomaSensor().
|
protected |
Definition at line 522 of file ossimSonomaSensor.cpp.
References distance(), ossimElevManager::getHeightAboveEllipsoid(), ossimDpt3d::hasNans(), ossimGpt::height(), ossimElevManager::instance(), ossimSonomaSensor::ossimPlane::intersect(), ossimMapProjection::inverse(), ossim::isnan(), ossimDpt3d::makeNan(), ossimSensorModel::origin(), ossimSonomaSensor::ossimPlane::setOffset(), ossimDpt3d::x, ossimDpt3d::y, and ossimDpt3d::z.
Referenced by lineSampleToWorld().
|
protected |
Definition at line 592 of file ossimSonomaSensor.cpp.
References ossimSonomaSensor::ossimPlane::intersect(), and ossimSensorModel::origin().
Referenced by lineSampleHeightToWorld().
|
virtual |
METHOD: lineSampleHeightToWorld This is the pure virtual that performs the actual work of projecting the image point to the given elevation above Ellipsoid.
Implements ossimSensorModel.
Definition at line 76 of file ossimSonomaSensor.cpp.
References ossimSensorModel::extrapolate(), ossimRefPtr< T >::get(), ossimGpt::height(), ossimSensorModel::insideImage(), intersectRayWithHeight(), ossimUtmProjection::inverse(), ossim::isnan(), ossimDpt3d::length(), m_compositeMatrix, m_mountInverse, m_pixelToCamera, m_utmProjection, ossimGpt::makeNan(), ossimSensorModel::origin(), ossimDpt3d::x, ossimDpt::x, ossimDpt3d::y, ossimDpt::y, and ossimDpt3d::z.
|
virtual |
Implementation of base-class pure virtual projection methods. These methods may be overriden by derived classes if those have more efficient schemes. The implementations here are iterative (relatively slow). Both depend on calls to the pure virtual lineSampleHeightToWorld() method.
Reimplemented from ossimSensorModel.
Definition at line 116 of file ossimSonomaSensor.cpp.
References ossimRefPtr< T >::get(), ossimDpt::hasNans(), ossimGpt::height(), imagingRay(), ossimElevManager::instance(), ossimElevSource::intersectRay(), intersectRay(), ossimUtmProjection::inverse(), ossimDpt3d::length(), m_compositeMatrix, m_mountInverse, m_pixelToCamera, m_utmProjection, ossimGpt::makeNan(), ossimSensorModel::origin(), ossimDpt3d::x, ossimDpt::x, ossimDpt3d::y, ossimDpt::y, and ossimDpt3d::z.
Referenced by updateModel().
|
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 ossimSensorModel.
Definition at line 366 of file ossimSonomaSensor.cpp.
References ossimSensorModel::computeGsd(), ossimMatrix3x3::createIdentity(), ossimMatrix4x4::createIdentity(), ossimString::empty(), ossimKeywordlist::find(), ossimAdjustableParameterInterface::getNumberOfAdjustableParameters(), ossimDpt::hasNans(), ossimGpt::height(), ossimDrect::height(), initAdjustableParameters(), ossimGeoidManager::instance(), ossimDpt::isNan(), ossim::isnan(), ossimSensorModel::loadState(), m_focalLength, m_heading, m_mount, m_mountInverse, m_pitch, m_pixelSize, m_platformPosition, m_platformPositionEllipsoid, m_principalPoint, m_roll, ossimDpt::makeNan(), ossimDrect::midPoint(), ossimGeoidManager::offsetFromEllipsoid(), ossimString::split(), ossimSensorModel::theGSD, ossimSensorModel::theImageClipRect, ossimSensorModel::theImageSize, ossimSensorModel::theRefImgPt, ossimString::toDouble(), ossimDpt::toPoint(), ossimGpt::toPoint(), ossimString::trim(), updateModel(), and ossimDrect::width().
|
virtual |
METHODS: saveState, loadState Fulfills ossimObject base-class pure virtuals. Loads and saves geometry KWL files.
Reimplemented from ossimSensorModel.
Definition at line 493 of file ossimSonomaSensor.cpp.
References ossimKeywordlist::add(), m_focalLength, m_heading, m_mount, m_pitch, m_pixelSize, m_platformPosition, m_principalPoint, m_roll, ossimSensorModel::saveState(), ossimDpt::toString(), ossimGpt::toString(), ossimString::toString(), and ossimString::trim().
|
inline |
Definition at line 97 of file ossimSonomaSensor.h.
|
inline |
Definition at line 111 of file ossimSonomaSensor.h.
|
inline |
Definition at line 101 of file ossimSonomaSensor.h.
|
inline |
Definition at line 107 of file ossimSonomaSensor.h.
|
inline |
|
virtual |
VIRTUAL METHOD: updateModel() Following a change to the adjustable parameter set, this virtual is called to permit instances to compute derived quantities after parameter change.
Reimplemented from ossimSensorModel.
Definition at line 159 of file ossimSonomaSensor.cpp.
References ossimSensorModel::computeGsd(), ossimUtmProjection::computeZone(), ossimMatrix3x3::create(), ossimMatrix4x4::createIdentity(), ossimMatrix4x4::createRotationXMatrix(), ossimMatrix4x4::createRotationZMatrix(), ossimMatrix4x4::createTranslationMatrix(), ossim::degreesToRadians(), ossimLsrSpace::ecefToLsrRotMatrix(), ossimUtmProjection::forward(), ossimMatrix4x4::getData(), ossimGpt::height(), ossimDrect::height(), ossimGpt::latd(), lineSampleToWorld(), ossimDrect::ll(), ossimDrect::lr(), m_compositeMatrix, m_compositeMatrixInverse, m_ecefPlatformPosition, m_focalLength, m_heading, m_pitch, m_pixelSize, m_pixelToCamera, m_platformPositionEllipsoid, m_roll, m_utmProjection, ossimEcefVector::normalize(), ossimPolygon::resize(), ossimUtmProjection::setHemisphere(), ossimUtmProjection::setZone(), ossimSensorModel::theBoundGndPolygon, ossimSensorModel::theImageClipRect, ossimSensorModel::theImageSize, ossimSensorModel::theRefGndPt, ossimSensorModel::theRefImgPt, ossimDrect::ul(), ossimDrect::ur(), ossimDrect::width(), ossimEcefPoint::x(), ossimIpt::x, ossimDpt::x, ossimEcefPoint::y(), ossimIpt::y, ossimDpt::y, y, and ossimEcefPoint::z().
Referenced by loadState().
|
inlinevirtual |
useForward() return true when it's better (more accurate / fast) to use forward (from ground to image) than inverse(from image to ground)
Implements ossimOptimizableProjection.
Definition at line 115 of file ossimSonomaSensor.h.
|
protected |
Definition at line 170 of file ossimSonomaSensor.h.
Referenced by imagingRay(), lineSampleHeightToWorld(), lineSampleToWorld(), and updateModel().
|
protected |
Definition at line 171 of file ossimSonomaSensor.h.
Referenced by updateModel().
|
protected |
Definition at line 181 of file ossimSonomaSensor.h.
Referenced by imagingRay(), and updateModel().
|
protected |
Definition at line 180 of file ossimSonomaSensor.h.
Referenced by imagingRay(), loadState(), saveState(), and updateModel().
|
protected |
Definition at line 177 of file ossimSonomaSensor.h.
Referenced by loadState(), saveState(), and updateModel().
|
protected |
Definition at line 173 of file ossimSonomaSensor.h.
Referenced by imagingRay(), loadState(), ossimSonomaSensor(), and saveState().
|
protected |
Definition at line 174 of file ossimSonomaSensor.h.
Referenced by lineSampleHeightToWorld(), lineSampleToWorld(), loadState(), and ossimSonomaSensor().
|
protected |
Definition at line 176 of file ossimSonomaSensor.h.
Referenced by loadState(), saveState(), and updateModel().
|
protected |
Definition at line 179 of file ossimSonomaSensor.h.
Referenced by imagingRay(), loadState(), saveState(), and updateModel().
|
protected |
Definition at line 172 of file ossimSonomaSensor.h.
Referenced by imagingRay(), lineSampleHeightToWorld(), lineSampleToWorld(), and updateModel().
|
protected |
Definition at line 182 of file ossimSonomaSensor.h.
Referenced by loadState(), and saveState().
|
protected |
Definition at line 183 of file ossimSonomaSensor.h.
Referenced by loadState(), and updateModel().
|
protected |
Definition at line 178 of file ossimSonomaSensor.h.
Referenced by imagingRay(), loadState(), and saveState().
|
protected |
Definition at line 175 of file ossimSonomaSensor.h.
Referenced by loadState(), saveState(), and updateModel().
|
protected |
Definition at line 169 of file ossimSonomaSensor.h.
Referenced by lineSampleHeightToWorld(), lineSampleToWorld(), ossimSonomaSensor(), and updateModel().