|
OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
#include <ossimNitfRpcModel.h>
Public Member Functions | |
| ossimNitfRpcModel () | |
| ossimNitfRpcModel (const ossimNitfRpcModel &rhs) | |
| ossimNitfRpcModel (const ossimFilename &nitfFile) | |
| virtual ossimObject * | dup () const |
| dup() Returns pointer to a new instance, copy of this. More... | |
| virtual void | worldToLineSample (const ossimGpt &world_point, ossimDpt &image_point) const |
| worldToLineSample() Calls ossimRpcModel::worldToLineSample(), then applies (if needed) decimation. More... | |
| virtual void | lineSampleHeightToWorld (const ossimDpt &image_point, const double &heightEllipsoid, ossimGpt &worldPoint) const |
| lineSampleHeightToWorld() Backs out decimation of image_point (if needed) then calls: ossimRpcModel::lineSampleHeightToWorld This is a temp work around for decimation RPC NITFs. More... | |
| virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
| Saves "decimation". More... | |
| virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
| Looks for decimation. More... | |
| virtual bool | parseFile (const ossimFilename &nitfFile, ossim_uint32 entryIndex=0) |
| Method to parse an nitf file and initialize model. More... | |
| virtual bool | parseImageHeader (const ossimNitfImageHeader *ih) |
Public Member Functions inherited from ossimRpcModel | |
| ossimRpcModel () | |
| default constructor More... | |
| ossimRpcModel (const ossimRpcModel ©_this) | |
| copy construtor More... | |
| void | setAttributes (ossim_float64 theSampleOffset, ossim_float64 theLineOffset, ossim_float64 theSampleScale, ossim_float64 theLineScale, ossim_float64 theLatOffset, ossim_float64 theLonOffset, ossim_float64 theHeightOffset, ossim_float64 theLatScale, ossim_float64 theLonScale, ossim_float64 theHeightScale, const std::vector< double > &xNumeratorCoeffs, const std::vector< double > &xDenominatorCoeffs, const std::vector< double > &yNumeratorCoeffs, const std::vector< double > &yDenominatorCoeffs, PolynomialType polyType=B, bool computeGsdFlag=true) |
| void | setMetersPerPixel (const ossimDpt &metersPerPixel) |
| void | setPositionError (const ossim_float64 &biasError, const ossim_float64 &randomError, bool initNominalPostionErrorFlag) |
| Sets data member theBiasError, theRandError. More... | |
| virtual std::ostream & | print (std::ostream &out) const |
| print() Extends base-class implementation. More... | |
| virtual void | lineSampleToWorld (const ossimDpt &image_point, ossimGpt &world_point) const |
| virtual void | imagingRay (const ossimDpt &image_point, ossimEcefRay &image_ray) const |
| imagingRay() Overrides base class pure virtual. More... | |
| virtual void | updateModel () |
| virtual void | initAdjustableParameters () |
| virtual bool | useForward () const |
| virtual bool | setupOptimizer (const ossimString &init_file) |
| uses file path to init model More... | |
| virtual ossimDpt | getForwardDeriv (int parmIdx, const ossimGpt &gpos, double h) |
| Compute partials of samp/line WRT ground point. More... | |
| double | getBiasError () const |
| Returns Error - Bias. More... | |
| double | getRandError () const |
| Returns Error - Random. More... | |
| void | getRpcParameters (ossimRpcModel::rpcModelStruct &model) const |
| Returns RPC parameter set in structure. More... | |
| void | setImageOffset (const ossimDpt &offset_to_chip_ul) |
| Allows setting an offset to a subimage while using the coefficients of a full-image model. More... | |
| bool | toJSON (std::ostream &json) const |
| Serializes RPC to JSON format. More... | |
| bool | toRPB (std::ostream &out) const |
| Serialize to WorldView-style .RPB file to the stream provided. More... | |
Public Member Functions inherited from ossimSensorModel | |
| 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... | |
| 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 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... | |
Public Member Functions inherited from ossimProjection | |
| 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 |
Public Member Functions inherited from ossimObject | |
| 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) |
Public Member Functions inherited from ossimReferenced | |
| 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 |
Public Member Functions inherited from ossimErrorStatusInterface | |
| 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 |
Public Member Functions inherited from ossimOptimizableProjection | |
| ossimOptimizableProjection () | |
| ossimOptimizableProjection (const ossimOptimizableProjection &source) | |
| virtual | ~ossimOptimizableProjection () |
| virtual ossimOptimizableProjection & | operator= (const ossimOptimizableProjection &source) |
Public Member Functions inherited from ossimAdjustableParameterInterface | |
| 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... | |
Private Member Functions | |
| void | getGsd (const ossimNitfImageHeader *ih) |
| Attempts to get gsd from nitf tags and initialize ossimSensorModel::theGsd. More... | |
| void | getSensorID (const ossimNitfImageHeader *ih) |
| Attempts to get sensor ID from nitf tags and initialize ossimSensorModel::theSensorID. More... | |
| bool | getRpcData (const ossimNitfImageHeader *ih) |
| Get model information from either the RPC00A or RPC00B tag. More... | |
Private Attributes | |
| ossim_float64 | theDecimation |
| Stored from header field "IMAG". More... | |
Additional Inherited Members | |
Public Types inherited from ossimRpcModel | |
| enum | PolynomialType { A ='A', B ='B' } |
Public Types inherited from ossimSensorModel | |
| 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 Public Member Functions inherited from ossimRpcModel | |
| static void | writeGeomTemplate (ostream &os) |
| STATIC METHOD: writeGeomTemplate(ostream) Writes a template of geom keywords processed by loadState and saveState to output stream. More... | |
Static Public Member Functions inherited from ossimSensorModel | |
| static void | writeGeomTemplate (ostream &os) |
Protected Types inherited from ossimRpcModel | |
| enum | AdjustParamIndex { INTRACK_OFFSET = 0, CRTRACK_OFFSET, INTRACK_SCALE, CRTRACK_SCALE, MAP_ROTATION, NUM_ADJUSTABLE_PARAMS } |
Protected Member Functions inherited from ossimRpcModel | |
| virtual | ~ossimRpcModel () |
| virtual destructor More... | |
| double | polynomial (const double &nlat, const double &nlon, const double &nhgt, const double *coeffs) const |
| double | dPoly_dLat (const double &nlat, const double &nlon, const double &nhgt, const double *coeffs) const |
| double | dPoly_dLon (const double &nlat, const double &nlon, const double &nhgt, const double *coeffs) const |
| double | dPoly_dHgt (const double &nlat, const double &nlon, const double &nhgt, const double *coeffs) const |
Protected Member Functions inherited from ossimSensorModel | |
| 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... | |
Protected Member Functions inherited from ossimReferenced | |
| virtual | ~ossimReferenced () |
Protected Member Functions inherited from ossimAdjustableParameterInterface | |
| 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... | |
Protected Attributes inherited from ossimRpcModel | |
| PolynomialType | thePolyType |
| double | theLineScale |
| double | theSampScale |
| double | theLatScale |
| double | theLonScale |
| double | theHgtScale |
| double | theLineOffset |
| double | theSampOffset |
| double | theLatOffset |
| double | theLonOffset |
| double | theHgtOffset |
| double | theIntrackOffset |
| double | theCrtrackOffset |
| double | theIntrackScale |
| double | theCrtrackScale |
| double | theCosMapRot |
| double | theSinMapRot |
| double | theBiasError |
| error More... | |
| double | theRandError |
| double | theLineNumCoef [20] |
| double | theLineDenCoef [20] |
| double | theSampNumCoef [20] |
| double | theSampDenCoef [20] |
Protected Attributes inherited from ossimSensorModel | |
| ossimIpt | theImageSize |
| ossimDpt | theSubImageOffset |
| ossimString | theImageID |
| ossimString | theSensorID |
| ossimDpt | theGSD |
| ossim_float64 | theMeanGSD |
| ossimGpt | theRefGndPt |
| ossimDpt | theRefImgPt |
| ossimPolygon | theBoundGndPolygon |
| ossimDrect | theImageClipRect |
| ossim_float64 | theRelPosError |
| ossim_float64 | theNominalPosError |
| ossimDpt | theParWRTx |
| Partials for current point. More... | |
| ossimDpt | theParWRTy |
| ossimDpt | theParWRTz |
| ossimDpt | theObs |
| Observations & residuals for current point. More... | |
| ossimDpt | theResid |
| ossimRefPtr< ossimProjection > | theSeedFunction |
| Used as an initial guess for iterative solutions and a guess for points outside the support bounds. More... | |
| bool | theExtrapolateImageFlag |
| bool | theExtrapolateGroundFlag |
Protected Attributes inherited from ossimErrorStatusInterface | |
| ossimErrorCode | theErrorStatus |
| ossimNitfRpcModel::ossimNitfRpcModel | ( | ) |
Definition at line 47 of file ossimNitfRpcModel.cpp.
Referenced by dup().
| ossimNitfRpcModel::ossimNitfRpcModel | ( | const ossimNitfRpcModel & | rhs | ) |
Definition at line 54 of file ossimNitfRpcModel.cpp.
| ossimNitfRpcModel::ossimNitfRpcModel | ( | const ossimFilename & | nitfFile | ) |
Definition at line 67 of file ossimNitfRpcModel.cpp.
|
virtual |
dup() Returns pointer to a new instance, copy of this.
Reimplemented from ossimRpcModel.
Definition at line 97 of file ossimNitfRpcModel.cpp.
References ossimNitfRpcModel().
|
private |
Attempts to get gsd from nitf tags and initialize ossimSensorModel::theGsd.
If unsuccessful theGsd will be initialized to OSSIM_DBL_NAN.
Definition at line 316 of file ossimNitfRpcModel.cpp.
References ossimNitfImageHeader::getTagData(), ossimDpt::line, ossim::nan(), ossimDpt::samp, and ossimSensorModel::theGSD.
|
private |
Get model information from either the RPC00A or RPC00B tag.
Definition at line 380 of file ossimNitfRpcModel.cpp.
References ossimNitfImageHeader::getTagData().
Referenced by parseImageHeader().
|
private |
Attempts to get sensor ID from nitf tags and initialize ossimSensorModel::theSensorID.
If unsuccessful theGsd will be initialized to UNKNOWN.
Definition at line 351 of file ossimNitfRpcModel.cpp.
References ossimNitfImageHeader::getTagData(), and ossimSensorModel::theSensorID.
|
virtual |
lineSampleHeightToWorld() Backs out decimation of image_point (if needed) then calls: ossimRpcModel::lineSampleHeightToWorld This is a temp work around for decimation RPC NITFs.
Reimplemented from ossimRpcModel.
Definition at line 273 of file ossimNitfRpcModel.cpp.
References ossimRpcModel::lineSampleHeightToWorld(), theDecimation, ossimDpt::x, and ossimDpt::y.
|
virtual |
Looks for decimation.
Then calls ossimRpcModel::loadState.
Reimplemented from ossimRpcModel.
Definition at line 297 of file ossimNitfRpcModel.cpp.
References ossimKeywordlist::find(), ossimRpcModel::loadState(), theDecimation, and ossimString::toFloat64().
|
virtual |
Method to parse an nitf file and initialize model.
| entryIndex | The entry to get model for. Note the nitf's can have multiple entries; each with a different projection. |
Definition at line 102 of file ossimNitfRpcModel.cpp.
References ossimRefPtr< T >::get(), ossimNitfFile::getNewImageHeader(), ossimNitfFile::parseFile(), parseImageHeader(), and ossimErrorStatusInterface::setErrorStatus().
|
virtual |
Definition at line 124 of file ossimNitfRpcModel.cpp.
References getRpcData().
Referenced by parseFile().
|
virtual |
Saves "decimation".
Then calls ossimRpcModel::saveState.
Reimplemented from ossimRpcModel.
Definition at line 287 of file ossimNitfRpcModel.cpp.
References ossimKeywordlist::add(), ossimRpcModel::saveState(), and theDecimation.
|
virtual |
worldToLineSample() Calls ossimRpcModel::worldToLineSample(), then applies (if needed) decimation.
This is a temp work around for decimation RPC NITFs.
Reimplemented from ossimRpcModel.
Definition at line 262 of file ossimNitfRpcModel.cpp.
References theDecimation, ossimRpcModel::worldToLineSample(), ossimDpt::x, and ossimDpt::y.
|
private |
Stored from header field "IMAG".
This is a temp work around to handle decimated rpc nitf's.
Definition at line 110 of file ossimNitfRpcModel.h.
Referenced by lineSampleHeightToWorld(), loadState(), saveState(), and worldToLineSample().
1.8.14