Isis 3.0
Home
BundleResults.h
Go to the documentation of this file.
1 #ifndef BundleResults_h
2 #define BundleResults_h
3 
26 // Qt Library
27 #include <QList>
28 #include <QObject>
29 #include <QPair>
30 #include <QString>
31 #include <QVector>
32 
33 // hdf5 Library
34 #include <H5Cpp.h>
35 #include <hdf5_hl.h>
36 #include <hdf5.h>
37 
38 // Isis Library
39 #include "BundleControlPoint.h"
41 #include "BundleSettings.h"
42 #include "ControlNet.h"
43 #include "Distance.h"
45 #include "PvlObject.h"
46 #include "Statistics.h" // ???
47 #include "XmlStackedHandler.h"
48 
49 // Qt Library
50 class QDataStream;
51 class QUuid;
52 class QXmlStreamWriter;
53 
54 namespace Isis {
55  // Isis Library
56  class ControlNet;
57  class CorrelationMatrix;
58  class FileName;
59  class Project;// ??? does xml stuff need project???
60  class PvlObject;
61  class SerialNumberList;
64 
90  class BundleResults : public QObject {
91  Q_OBJECT
92  public:
93  BundleResults(QObject *parent = 0);
94  // TODO: does xml stuff need project???
95  BundleResults(Project *project, XmlStackedHandlerReader *xmlReader, QObject *parent = 0);
96  BundleResults(const BundleResults &src);
99  void initialize();
100 
101  // mutators and computation methods
102  void resizeSigmaStatisticsVectors(int numberImages);
106  void setRmsImageResidualLists(QVector<Statistics> rmsImageLineResiduals,
107  QVector<Statistics> rmsImageSampleResiduals,
108  QVector<Statistics> rmsImageResiduals);
109  void setSigmaLatitudeRange(Distance minLatDist, Distance maxLatDist,
110  QString minLatPointId, QString maxLatPointId);
111  void setSigmaLongitudeRange(Distance minLonDist, Distance maxLonDist,
112  QString minLonPointId, QString maxLonPointId);
113  void setSigmaRadiusRange(Distance minRadDist, Distance maxRadDist,
114  QString minRadPointId, QString maxRadPointId);
115  void setRmsFromSigmaStatistics(double rmsFromSigmaLatStats,
116  double rmsFromSigmaLonStats,
117  double rmsFromSigmaRadStats);
121  void initializeResidualsProbabilityDistribution(unsigned int nodes = 20);
122  void initializeProbabilityDistribution(unsigned int nodes = 20);
124  void addProbabilityDistributionObservation(double obsValue);
125  void addProbabilityDistributionObservation(double obsValue, bool residuals);
127 
128  void incrementFixedPoints();
129  int numberFixedPoints() const;
130  void incrementHeldImages();
131  int numberHeldImages() const;
132  void incrementIgnoredPoints();
133  int numberIgnoredPoints() const; // currently unused ???
134 #if 0
135  double computeRejectionLimit(ControlNet *p_Cnet,
136  double outlierRejectionMultiplier,
137  int numObservations);
138 #endif
139  void setRejectionLimit(double rejectionLimit);
140 #if 0
141  double computeResiduals(
142  ControlNet *pCnet,
143  std::vector< boost::numeric::ublas::bounded_vector< double, 3 > > pointWeights,
144  std::vector< boost::numeric::ublas::bounded_vector< double, 3 > > pointCorrections,
145  LinearAlgebra::Vector image_Corrections,
146  std::vector< double > imageParameterWeights,
147  int numImagePartials,
148  int rank);
149 #endif
150  void setRmsXYResiduals(double rx, double ry, double rxy);
151 #if 0
152  bool flagOutliers(ControlNet *pCnet);
153 #endif
155  void setNumberObservations(int numberObservations);
156  void setNumberImageParameters(int numberParameters); // ??? this is the same value an m_nRank
158  void incrementNumberConstrainedPointParameters(int incrementAmount);
160  void incrementNumberConstrainedImageParameters(int incrementAmount);
162  void incrementNumberConstrainedTargetParameters(int incrementAmount);
163  void setNumberUnknownParameters(int numberParameters);
165  void computeSigma0(double dvtpv, BundleSettings::ConvergenceCriteria criteria);
167  void setSigma0(double sigma0);
168  void setElapsedTime(double time);
169  void setElapsedTimeErrorProp(double time);
170  void setRadiansToMeters(double rtm);
171  void setConverged(bool converged); // or initialze method
173  void setOutputControlNet(ControlNetQsp outNet);
174  void setIterations(int iterations);
176 
177  // Accessors...
181  QVector<Statistics> rmsImageXSigmas() const; // currently unused ???
182  QVector<Statistics> rmsImageYSigmas() const; // currently unused ???
183  QVector<Statistics> rmsImageZSigmas() const; // currently unused ???
184  QVector<Statistics> rmsImageRASigmas() const; // currently unused ???
185  QVector<Statistics> rmsImageDECSigmas() const; // currently unused ???
186  QVector<Statistics> rmsImageTWISTSigmas() const; // currently unused ???
193  QString maxSigmaLatitudePointId() const;
194  QString minSigmaLatitudePointId() const;
195  QString minSigmaLongitudePointId() const;
196  QString maxSigmaLongitudePointId() const;
197  QString minSigmaRadiusPointId() const;
198  QString maxSigmaRadiusPointId() const;
199  double sigmaLatitudeStatisticsRms() const;
200  double sigmaLongitudeStatisticsRms() const;
201  double sigmaRadiusStatisticsRms() const;
202  double rmsRx() const; // currently unused ???
203  double rmsRy() const; // currently unused ???
204  double rmsRxy() const; // currently unused ???
205  double rejectionLimit() const;
206  double radiansToMeters() const;
207  int numberRejectedObservations() const;
208  int numberObservations() const;
209 
210  int numberImageParameters() const; // ??? this is the same value an m_nRank
214  int numberUnknownParameters() const;
215  int degreesOfFreedom() const;
216  double sigma0() const;
217  double elapsedTime() const;
218  double elapsedTimeErrorProp() const;
219  bool converged() const; // or initialze method
222  int iterations() const;
223  const BundleObservationVector &observations() const;
224 
225  int numberMaximumLikelihoodModels() const;
226  int maximumLikelihoodModelIndex() const;
229  double maximumLikelihoodMedianR2Residuals() const;
231  double maximumLikelihoodModelQuantile(int modelIndex) const;
232 
234 
235  bool setNumberHeldImages(SerialNumberList pHeldSnList,
236  SerialNumberList *pSnList);
237 
238  PvlObject pvlObject(QString name = "BundleResults") const;
239 
240  // Correlation Matrix accessors for cnetsuite and mutators for bundle adjust.
242  void setCorrMatCovFileName(FileName name);
244 
245  // TODO: does xml stuff need project???
246  void save(QXmlStreamWriter &stream, const Project *project) const;
247 
248  QDataStream &write(QDataStream &stream) const;
249  QDataStream &read(QDataStream &stream);
250 
251  void createH5Group(hid_t locationId, QString locationName) const;// delete these
252  void parseH5Group(hid_t locationId, QString locationName); // delete these
253 
254  void createH5Group(H5::CommonFG &locationObject, QString locationName) const;
255  void openH5Group(H5::CommonFG &locationObject, QString locationName);
256  BundleResults(H5::CommonFG &locationObject, QString locationName);
257 
258  private:
268  class XmlHandler : public XmlStackedHandler {
269  public:
270  // TODO: does xml stuff need project???
271  XmlHandler(BundleResults *statistics, Project *project);
272  ~XmlHandler();
273 
274  virtual bool startElement(const QString &namespaceURI, const QString &localName,
275  const QString &qName, const QXmlAttributes &atts);
276  virtual bool characters(const QString &ch);
277  virtual bool endElement(const QString &namespaceURI, const QString &localName,
278  const QString &qName);
279 
280  private:
281  Q_DISABLE_COPY(XmlHandler);
282 
283  BundleResults *m_xmlHandlerBundleResults;
284  Project *m_xmlHandlerProject; // TODO: does xml stuff need project???
285  QString m_xmlHandlerCharacters;
286  int m_xmlHandlerResidualsListSize;
287  int m_xmlHandlerSampleResidualsListSize;
288  int m_xmlHandlerLineResidualsListSize;
289  int m_xmlHandlerXSigmasListSize;
290  int m_xmlHandlerYSigmasListSize;
291  int m_xmlHandlerZSigmasListSize;
292  int m_xmlHandlerRASigmasListSize;
293  int m_xmlHandlerDECSigmasListSize;
294  int m_xmlHandlerTWISTSigmasListSize;
295  QList<Statistics *> m_xmlHandlerStatisticsList;
296  StatCumProbDistDynCalc *m_xmlHandlerCumProCalc;
297 
298  QString m_xmlHandlerCorrelationImageId;
299  QStringList m_xmlHandlerCorrelationParameterList;
300  QMap<QString, QStringList> m_xmlHandlerCorrelationMap;
301  };
302 
307  QUuid *m_id;
308 //??? QString m_instrumentId; //!< The spacecraft instrument id for this observation.
309  CorrelationMatrix *m_correlationMatrix;
310 
311 // ??? Statistics m_statsx; //!< x errors
312 // ??? Statistics m_statsy; //!< y errors
313 // ??? Statistics m_statsrx; //!< x residuals
314 // ??? Statistics m_statsry; //!< y residuals
315 // ??? Statistics m_statsrxy; //!< xy residuals
316 
317  int m_numberFixedPoints;
318  // Currently set but unused
319  int m_numberIgnoredPoints;
320  int m_numberHeldImages;
321 
322  // The following three members are set but unused.
323  double m_rmsXResiduals;
324  double m_rmsYResiduals;
325  double m_rmsXYResiduals;
326 
327  double m_rejectionLimit;
328  // TODO:??? reorder read/write data stream, init, copy constructor, operator=
329  int m_numberObservations;
330  int m_numberRejectedObservations;
331  int m_numberUnknownParameters;
332  int m_numberImageParameters;
333  int m_numberConstrainedImageParameters;
334  int m_numberConstrainedPointParameters;
335  int m_numberConstrainedTargetParameters;
336  int m_degreesOfFreedom;
337  double m_sigma0;
338  double m_elapsedTime;
339  double m_elapsedTimeErrorProp;
340  double m_radiansToMeters;
341  bool m_converged;
342 
343  // Variables for output methods in BundleSolutionInfo
344 
345  QVector<BundleControlPointQsp> m_bundleControlPoints;
353  ControlNetQsp m_outNet;
355  int m_iterations;
357  BundleObservationVector m_observations;
361  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
362  // variables set in computeBundleResults()
363  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
364  // QList??? jigsaw apptest gives - ASSERT failure in QList<T>::operator[]: "index out of range",
365  QList<Statistics> m_rmsImageSampleResiduals;
367  QList<Statistics> m_rmsImageLineResiduals;
369  QList<Statistics> m_rmsImageResiduals;
372  QVector<Statistics> m_rmsImageXSigmas; // unset and unused ???
375  QVector<Statistics> m_rmsImageYSigmas; // unset and unused ???
377  QVector<Statistics> m_rmsImageZSigmas; // unset and unused ???
379  QVector<Statistics> m_rmsImageRASigmas; // unset and unused ???
381  QVector<Statistics> m_rmsImageDECSigmas; // unset and unused ???
383  QVector<Statistics> m_rmsImageTWISTSigmas; // unset and unused ???
384 
385  Distance m_minSigmaLatitudeDistance;
386  Distance m_maxSigmaLatitudeDistance;
387  Distance m_minSigmaLongitudeDistance;
388  Distance m_maxSigmaLongitudeDistance;
389  Distance m_minSigmaRadiusDistance;
390  Distance m_maxSigmaRadiusDistance;
391 
392  QString m_minSigmaLatitudePointId;
393  QString m_maxSigmaLatitudePointId;
394  QString m_minSigmaLongitudePointId;
395  QString m_maxSigmaLongitudePointId;
396  QString m_minSigmaRadiusPointId;
397  QString m_maxSigmaRadiusPointId;
398 
399  double m_rmsSigmaLatitudeStats;
400  double m_rmsSigmaLongitudeStats;
401  double m_rmsSigmaRadiusStats;
402 
403  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
404  // variables for maximum likelihood estimation
405  //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
406 
408  QList< QPair< MaximumLikelihoodWFunctions, double > > m_maximumLikelihoodFunctions;
409 
421  int m_maximumLikelihoodIndex;
424  StatCumProbDistDynCalc *m_cumPro;
429  StatCumProbDistDynCalc *m_cumProRes;
433  double m_maximumLikelihoodMedianR2Residuals;
435  };
436  // operators to read/write BundleResults to/from binary disk file
437  QDataStream &operator<<(QDataStream &stream, const BundleResults &bundleResults);
438  QDataStream &operator>>(QDataStream &stream, BundleResults &bundleResults);
439 };
440 
442 
443 #endif // BundleResults_h
QDataStream & read(QDataStream &stream)
Reads the data from a QDataStream into the BundleResults object.
Definition: BundleResults.cpp:2385
void save(QXmlStreamWriter &stream, const Project *project) const
Saves the BundleResults object to an XML file.
Definition: BundleResults.cpp:1577
void parseH5Group(hid_t locationId, QString locationName)
void setObservations(BundleObservationVector observations)
Sets the vector of BundleObservations.
Definition: BundleResults.cpp:894
double sigmaLongitudeStatisticsRms() const
Returns the RMS of the adjusted longitude sigmas.
Definition: BundleResults.cpp:1127
This class is a container class for BundleObservations.
Definition: BundleObservationVector.h:65
double rmsRy() const
Returns the RMS of the y residuals.
Definition: BundleResults.cpp:1157
int numberHeldImages() const
Returns the number of &#39;held&#39; images.
Definition: BundleResults.cpp:616
QString minSigmaRadiusPointId() const
Returns the minimum sigma radius point id.
Definition: BundleResults.cpp:1097
void incrementFixedPoints()
Increase the number of &#39;fixed&#39; (ground) points.
Definition: BundleResults.cpp:588
The main project for cnetsuite.
Definition: Project.h:105
void setElapsedTime(double time)
Sets the elapsed time for the bundle adjustment.
Definition: BundleResults.cpp:824
void setNumberImageParameters(int numberParameters)
Sets the number of image parameters.
Definition: BundleResults.cpp:688
int iterations() const
Returns the number of iterations taken by the BundleAdjust.
Definition: BundleResults.cpp:1344
void setRmsFromSigmaStatistics(double rmsFromSigmaLatStats, double rmsFromSigmaLonStats, double rmsFromSigmaRadStats)
Sets the root mean square values of the adjusted latitiude sigmas, adjusted longitude sigmas...
Definition: BundleResults.cpp:456
void setCorrMatCovFileName(FileName name)
Set the covariance file name for the matrix used to calculate the correlation matrix.
Definition: BundleResults.cpp:1554
This is a container for the correlation matrix that comes from a bundle adjust.
Definition: CorrelationMatrix.h:72
File name manipulation and expansion.
Definition: FileName.h:111
void resetNumberConstrainedPointParameters()
Resets the number of contrained point parameters to 0.
Definition: BundleResults.cpp:696
QString minSigmaLongitudePointId() const
Returns the minimum sigma longitude point id.
Definition: BundleResults.cpp:1077
QSharedPointer< ControlNet > ControlNetQsp
This typedef is for future implementation of target body.
Definition: ControlNet.h:446
const BundleObservationVector & observations() const
Returns a reference to the observations used by the BundleAdjust.
Definition: BundleResults.cpp:1354
QString maxSigmaRadiusPointId() const
Returns the maximum sigma radius point id.
Definition: BundleResults.cpp:1107
void printMaximumLikelihoodTierInformation()
Prints out information about which tier the solution is in and the status of the residuals.
Definition: BundleResults.cpp:514
void incrementNumberConstrainedImageParameters(int incrementAmount)
Increase the number of constrained image parameters.
Definition: BundleResults.cpp:724
QString maxSigmaLongitudePointId() const
Returns the maximum sigma longitude point id.
Definition: BundleResults.cpp:1087
int numberConstrainedTargetParameters() const
Return the number of constrained target parameters.
Definition: BundleResults.cpp:1247
QVector< Statistics > rmsImageDECSigmas() const
Returns the list of RMS image declination sigma statistics.
Definition: BundleResults.cpp:977
void setRmsImageResidualLists(QList< Statistics > rmsImageLineResiduals, QList< Statistics > rmsImageSampleResiduals, QList< Statistics > rmsImageResiduals)
Sets the root mean square image residual Statistics lists.
Definition: BundleResults.cpp:388
CorrelationMatrix correlationMatrix() const
Returns the Correlation Matrix.
Definition: BundleResults.cpp:1537
Distance minSigmaLatitudeDistance() const
Returns the minimum sigma latitude distance.
Definition: BundleResults.cpp:997
void addProbabilityDistributionObservation(double obsValue)
Adds an observation to the cumulative probability distribution of |R^2 residuals|.
Definition: BundleResults.cpp:560
void setSigmaLongitudeRange(Distance minLonDist, Distance maxLonDist, QString minLonPointId, QString maxLonPointId)
Sets the min and max sigma longitude distances and point ids.
Definition: BundleResults.cpp:422
double sigma0() const
Returns the Sigma0 of the bundle adjustment.
Definition: BundleResults.cpp:1277
Q_DECLARE_METATYPE(Isis::Cube *)
This allows Cube *&#39;s to be stored in a QVariant.
Unless noted otherwise, the portions of Isis written by the USGS are public domain.
int numberImageParameters() const
Returns the total number of image parameters.
Definition: BundleResults.cpp:1217
void createH5Group(hid_t locationId, QString locationName) const
void resetNumberConstrainedImageParameters()
Resets the number of constrained image parameters to 0.
Definition: BundleResults.cpp:714
int numberIgnoredPoints() const
Returns the number of ignored points.
Definition: BundleResults.cpp:634
void maximumLikelihoodSetUp(QList< QPair< MaximumLikelihoodWFunctions::Model, double > > modelsWithQuantiles)
This method steps up the maximum likelihood estimation solution.
Definition: BundleResults.cpp:472
double sigmaLatitudeStatisticsRms() const
Returns the RMS of the adjusted latitude sigmas.
Definition: BundleResults.cpp:1117
void setOutputControlNet(ControlNetQsp outNet)
Sets the output ControlNet.
Definition: BundleResults.cpp:874
void setNumberUnknownParameters(int numberParameters)
Sets the total number of parameters to solve for.
Definition: BundleResults.cpp:752
void setElapsedTimeErrorProp(double time)
Sets the elapsed time for error propegation.
Definition: BundleResults.cpp:834
Unless noted otherwise, the portions of Isis written by the USGS are public domain.
Distance measurement, usually in meters.
Definition: Distance.h:47
BundleResults & operator=(const BundleResults &src)
Assignment operator for BundleResults.
Definition: BundleResults.cpp:185
double rejectionLimit() const
Returns the rejection limit.
Definition: BundleResults.cpp:1177
ControlNetQsp outputControlNet() const
Returns a shared pointer to the output control network.
Definition: BundleResults.cpp:1329
void computeDegreesOfFreedom()
Computes the degrees of freedom of the bundle adjustment and stores it internally.
Definition: BundleResults.cpp:760
QVector< Statistics > rmsImageXSigmas() const
Returns the list of RMS image x sigma statistics.
Definition: BundleResults.cpp:937
double elapsedTimeErrorProp() const
Returns the elapsed time for error propagation.
Definition: BundleResults.cpp:1297
QVector< BundleControlPointQsp > & bundleControlPoints()
Returns a reference to the BundleControlPoint vector.
Definition: BundleResults.cpp:1317
int degreesOfFreedom() const
Returns the degrees of freedom.
Definition: BundleResults.cpp:1267
StatCumProbDistDynCalc cumulativeProbabilityDistribution() const
Returns the cumulative probability distribution of the |R^2 residuals|.
Definition: BundleResults.cpp:1385
QVector< Statistics > rmsImageTWISTSigmas() const
Returns the list of RMS image twist sigma statistics.
Definition: BundleResults.cpp:987
void setRejectionLimit(double rejectionLimit)
Sets the rejection limit.
Definition: BundleResults.cpp:658
This class is used to approximate cumulative probibility distributions of a stream of observations wi...
Definition: StatCumProbDistDynCalc.h:79
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
Definition: LinearAlgebra.h:124
int numberRejectedObservations() const
Returns the number of observation that were rejected.
Definition: BundleResults.cpp:1197
a control network
Definition: ControlNet.h:207
int maximumLikelihoodModelIndex() const
Returns which step the bundle adjustment is on.
Definition: BundleResults.cpp:1374
void setBundleControlPoints(QVector< BundleControlPointQsp > controlPoints)
Sets the bundle control point vector.
Definition: BundleResults.cpp:864
StatCumProbDistDynCalc residualsCumulativeProbabilityDistribution() const
Returns the cumulative probability distribution of the residuals used for reporting.
Definition: BundleResults.cpp:1395
QVector< Statistics > rmsImageYSigmas() const
Returns the list of RMS image y sigma statistics.
Definition: BundleResults.cpp:947
int numberFixedPoints() const
Returns the number of &#39;fixed&#39; (ground) points.
Definition: BundleResults.cpp:598
void incrementIgnoredPoints()
Increase the number of ignored points.
Definition: BundleResults.cpp:624
double maximumLikelihoodMedianR2Residuals() const
Returns the median of the |R^2 residuals|.
Definition: BundleResults.cpp:1405
void incrementNumberConstrainedPointParameters(int incrementAmount)
Increase the number of contrained point parameters.
Definition: BundleResults.cpp:706
std::istream & operator>>(std::istream &is, CSVReader &csv)
Input read operator for input stream sources.
Definition: CSVReader.cpp:463
QList< Statistics > rmsImageResiduals() const
Returns the list of RMS image residuals statistics.
Definition: BundleResults.cpp:927
QVector< Statistics > rmsImageZSigmas() const
Returns the list of RMS image z sigma statistics.
Definition: BundleResults.cpp:957
XML Handler that parses XMLs in a stack-oriented way.
Definition: XmlStackedHandler.h:47
bool setNumberHeldImages(SerialNumberList pHeldSnList, SerialNumberList *pSnList)
QString maxSigmaLatitudePointId() const
Returns the maximum sigma latitude point id.
Definition: BundleResults.cpp:1067
void addResidualsProbabilityDistributionObservation(double obsValue)
Adds an observation to the cumulative probability distribution of residuals used for reporting...
Definition: BundleResults.cpp:571
void resizeSigmaStatisticsVectors(int numberImages)
Resizes all image sigma vectors.
Definition: BundleResults.cpp:359
double sigmaRadiusStatisticsRms() const
Returns the RMS of the adjusted raidus sigmas.
Definition: BundleResults.cpp:1137
void computeSigma0(double dvtpv, BundleSettings::ConvergenceCriteria criteria)
Computes the sigma0 and stores it internally.
Definition: BundleResults.cpp:780
Class provides maximum likelihood estimation functions for robust parameter estimation, e.g.
Definition: MaximumLikelihoodWFunctions.h:62
void setNumberRejectedObservations(int numberObservations)
Sets the number of rejected observations.
Definition: BundleResults.cpp:668
BundleResults(QObject *parent=0)
Constructs a BundleSettings object.
Definition: BundleResults.cpp:44
Distance minSigmaRadiusDistance() const
Returns the minimum sigma redius distance.
Definition: BundleResults.cpp:1037
void initializeResidualsProbabilityDistribution(unsigned int nodes=20)
Initializes or resets the cumulative probability distribution of residuals used for reporting...
Definition: BundleResults.cpp:549
void openH5Group(H5::CommonFG &locationObject, QString locationName)
Reads from an hdf5 group.
Definition: BundleResults.cpp:2841
void setCorrMatImgsAndParams(QMap< QString, QStringList > imgsAndParams)
Set the images and their associated parameters of the correlation matrix.
Definition: BundleResults.cpp:1565
QDataStream & write(QDataStream &stream) const
Writes the BundleResults object to a QDataStream.
Definition: BundleResults.cpp:2335
QString minSigmaLatitudePointId() const
Returns the minimum sigma latitude point id.
Definition: BundleResults.cpp:1057
void initializeProbabilityDistribution(unsigned int nodes=20)
Initializes or resets the cumulative probability distribution of |R^2 residuals|. ...
Definition: BundleResults.cpp:539
bool converged() const
Returns whether or not the bundle adjustment converged.
Definition: BundleResults.cpp:1307
int numberObservations() const
Returns the number of observations.
Definition: BundleResults.cpp:1207
Distance maxSigmaLongitudeDistance() const
Returns the maximum sigma longitude distance.
Definition: BundleResults.cpp:1027
Definition: Calculator.h:33
int numberConstrainedImageParameters() const
Returns the number of constrained image parameters.
Definition: BundleResults.cpp:1237
QVector< Statistics > rmsImageRASigmas() const
Returns the list of RMS image right ascension sigma statistics.
Definition: BundleResults.cpp:967
void setNumberObservations(int numberObservations)
Sets the number of observations.
Definition: BundleResults.cpp:678
Distance maxSigmaLatitudeDistance() const
Returns the maximum sigma latitude distance.
Definition: BundleResults.cpp:1007
void setSigmaLatitudeRange(Distance minLatDist, Distance maxLatDist, QString minLatPointId, QString maxLatPointId)
Sets the min and max sigma latitude distances and point ids.
Definition: BundleResults.cpp:405
void setRadiansToMeters(double rtm)
Sets the radians to meters conversion constant for the target body.
Definition: BundleResults.cpp:844
int numberUnknownParameters() const
Returns the number of unknown parameters.
Definition: BundleResults.cpp:1257
QList< Statistics > rmsImageSampleResiduals() const
Returns the list of RMS image sample residuals statistics.
Definition: BundleResults.cpp:907
void setRmsXYResiduals(double rx, double ry, double rxy)
Sets the root mean square of the x and y residuals.
Definition: BundleResults.cpp:646
void initialize()
Initializes the BundleResults to a default state where all numeric members are set to 0 or another de...
Definition: BundleResults.cpp:266
void incrementMaximumLikelihoodModelIndex()
Increases the value that indicates which stage the maximum likelihood adjustment is currently on...
Definition: BundleResults.cpp:580
Definition: BoxcarCachingAlgorithm.h:29
~BundleResults()
Destroys this BundleResults object.
Definition: BundleResults.cpp:162
void incrementHeldImages()
Increases the number of &#39;held&#39; images.
Definition: BundleResults.cpp:606
A container class for statistical results from a BundleAdjust solution.
Definition: BundleResults.h:90
Distance maxSigmaRadiusDistance() const
Returns the maximum sigma redius distance.
Definition: BundleResults.cpp:1047
void resetNumberConstrainedTargetParameters()
Resets the number of constrained target parameters to 0.
Definition: BundleResults.cpp:732
PvlObject pvlObject(QString name="BundleResults") const
Saves the BundleResults object as a PvlObject.
Definition: BundleResults.cpp:1447
double elapsedTime() const
Returns the elapsed time for the bundle adjustment.
Definition: BundleResults.cpp:1287
QList< Statistics > rmsImageLineResiduals() const
Returns the list of RMS image line residuals statistics.
Definition: BundleResults.cpp:917
void setSigmaRadiusRange(Distance minRadDist, Distance maxRadDist, QString minRadPointId, QString maxRadPointId)
Sets the min and max sigma radius distances and point ids.
Definition: BundleResults.cpp:439
double rmsRx() const
Returns the RMS of the x residuals.
Definition: BundleResults.cpp:1147
void setSigma0(double sigma0)
Sets the sigma0.
Definition: BundleResults.cpp:814
Distance minSigmaLongitudeDistance() const
Returns the minimum sigma longitude distance.
Definition: BundleResults.cpp:1017
QList< QPair< MaximumLikelihoodWFunctions, double > > maximumLikelihoodModels() const
QDebug operator<<(QDebug debug, const Hillshade &hillshade)
Print this class out to a QDebug object.
Definition: Hillshade.cpp:308
void incrementNumberConstrainedTargetParameters(int incrementAmount)
Increases the number of constrained target parameters.
Definition: BundleResults.cpp:742
void setConverged(bool converged)
Sets if the bundle adjustment converged.
Definition: BundleResults.cpp:854
Serial Number list generator.
Definition: SerialNumberList.h:78
Definition: CubeIoHandler.h:39
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:74
void setIterations(int iterations)
Sets the number of iterations taken by the BundleAdjust.
Definition: BundleResults.cpp:884
int numberConstrainedPointParameters() const
Returns the number of constrained point parameters.
Definition: BundleResults.cpp:1227
double radiansToMeters() const
Returns the radians to meters conversion factor for the target body.
Definition: BundleResults.cpp:1187
his enables stack-based XML parsing of XML files.
Definition: XmlStackedHandlerReader.h:26
double rmsRxy() const
Returns the RMS of the x and y residuals.
Definition: BundleResults.cpp:1167
MaximumLikelihoodWFunctions maximumLikelihoodModelWFunc(int modelIndex) const
Returns the maximum likelihood model at the given index.
Definition: BundleResults.cpp:1417
ConvergenceCriteria
This enum defines the options for the bundle adjustment&#39;s convergence.
Definition: BundleSettings.h:185
void setDegreesOfFreedom(double degreesOfFreedom)
Sets the degrees of freedom.
Definition: BundleResults.cpp:804
int numberMaximumLikelihoodModels() const
Returns how many maximum likelihood models were used in the bundle adjustment.
Definition: BundleResults.cpp:1364
double maximumLikelihoodModelQuantile(int modelIndex) const
Returns the quantile of the maximum likelihood model at the given index.
Definition: BundleResults.cpp:1429