|
Isis Developer Reference
|
Go to the documentation of this file. 1 #ifndef IsisBundleObservation_h
2 #define IsisBundleObservation_h
12 #include <QStringList>
73 int &nPositionCoefficients,
int &nPointingCoefficients,
74 bool &useDefaultPosition,
bool &useDefaultPointing,
75 bool &useDefaultTwist);
88 bool initParameterWeights();
101 #endif // IsisBundleObservation_h
double GetBaseTime()
Accessor method to get the rotation base time.
Definition: SpiceRotation.cpp:2423
virtual bool GetdXYdPoint(std::vector< double > d_pB, double *dx, double *dy)
Compute derivative of focal plane coordinate w/r to ground point using current state.
Definition: CameraGroundMap.cpp:398
void updateBodyRotation()
Updates the body rotation.
Definition: IsisBundleObservation.cpp:288
void GetPolynomial(std::vector< double > &XC, std::vector< double > &YC, std::vector< double > &ZC)
Return the coefficients of a polynomial fit to each of the three coordinates of the position for the ...
Definition: SpicePosition.cpp:1103
static QString instrumentPositionSolveOptionToString(InstrumentPositionSolveOption option)
Translates an enumerated InstrumentPositionSolveOption to its string representation.
Definition: BundleObservationSolveSettings.cpp:1025
Obtain SPICE position information for a body.
Definition: SpicePosition.h:173
std::vector< double > EllipsoidPartial(SurfacePoint spoint, PartialType raxis)
Compute derivative of focal plane coordinate w/r to one of the ellipsoidal radii (a,...
Definition: CameraGroundMap.cpp:436
QString cubeSerialNumber() const
Accesses the serial number of the cube containing this control measure.
Definition: BundleMeasure.cpp:251
SurfacePoint adjustedSurfacePoint() const
Accesses the adjusted SurfacePoint associated with this BundleControlPoint.
Definition: BundleControlPoint.cpp:479
double computeObservationValue(BundleMeasure &measure, double deltaVal)
Converts the observed value from a focal plane coordinate to an image sample or line.
Definition: IsisBundleObservation.cpp:1370
@ NoPositionFactors
Solve for none of the position factors.
Definition: BundleObservationSolveSettings.h:161
virtual bool GetXY(const SurfacePoint &spoint, double *cudx, double *cudy, bool test=true)
Compute undistorted focal plane coordinate from ground position using current Spice from SetImage cal...
Definition: CameraGroundMap.cpp:152
int numberPointingParameters()
Returns the number of pointing parameters being solved for.
Definition: IsisBundleObservation.cpp:530
virtual bool setSolveSettings(BundleObservationSolveSettings solveSettings)
Set solve parameters.
Definition: IsisBundleObservation.cpp:122
bool computeRHSPartials(LinearAlgebra::Vector &coeffRHS, BundleMeasure &measure)
Calculates the sample, line residuals between the measured focal plane values and the focal plane coo...
Definition: IsisBundleObservation.cpp:1324
virtual BundleObservation & operator=(const BundleObservation &src)
Assignment operator.
Definition: BundleObservation.cpp:112
virtual bool GetdXYdOrientation(const SpiceRotation::PartialType varType, int coefIndex, double *cudx, double *cudy)
Compute derivative of focal plane coordinate w/r to instrument using current state from SetImage call...
Definition: CameraGroundMap.cpp:318
void SetPolynomial(const Source type=PolyFunction)
Set the coefficients of a polynomial fit to each of the components (X, Y, Z) of the position vector f...
Definition: SpicePosition.cpp:930
SpicePosition * spicePosition()
Accesses the instrument's spice position.
Definition: IsisBundleObservation.cpp:169
void SetPolynomialDegree(int degree)
Set the degree of the polynomials to be fit to the three camera angles for the time period covered by...
Definition: SpiceRotation.cpp:2343
const double DEG2RAD
Multiplier for converting from degrees to radians.
Definition: Constants.h:43
double GetBaseTime()
Return the base time for the position.
Definition: SpicePosition.h:271
@ Unknown
A type of error that cannot be classified as any of the other error types.
Definition: IException.h:118
@ WRT_X
Definition: SpicePosition.h:201
int numberPositionParameters()
Returns the number of position parameters there are.
Definition: IsisBundleObservation.cpp:520
double focalPlaneMeasuredY() const
Accesses the measured focal plane y value for this control measure //TODO verify?
Definition: BundleMeasure.cpp:299
std::vector< double > GetCenterAngles()
Return the camera angles at the center time of the observation.
Definition: SpiceRotation.cpp:1290
bool initializeExteriorOrientation()
Initializes the exterior orientation.
Definition: IsisBundleObservation.cpp:190
IsisBundleObservation()
Constructs a IsisBundleObservation initialized to a default state.
Definition: IsisBundleObservation.cpp:34
void SetPolynomial(const Source type=PolyFunction)
Set the coefficients of a polynomial fit to each of the three camera angles for the time period cover...
Definition: SpiceRotation.cpp:1739
Camera * camera() const
Accesses the associated camera for this bundle measure.
Definition: BundleMeasure.cpp:128
@ Two
Definition: SurfacePoint.h:151
QString bundleOutputCSV(bool errorPropagation)
Creates and returns a formatted QString representing the bundle coefficients and parameters in csv fo...
Definition: IsisBundleObservation.cpp:965
@ WRT_MajorAxis
Definition: CameraGroundMap.h:91
This class holds information about a control point that BundleAdjust needs to run correctly.
Definition: BundleControlPoint.h:91
@ Three
Definition: SurfacePoint.h:152
Definition: JigsawWorkOrder.h:28
virtual bool GetdXYdPosition(const SpicePosition::PartialType varType, int coefIndex, double *cudx, double *cudy)
Compute derivative w/r to position of focal plane coordinate from ground position using current Spice...
Definition: CameraGroundMap.cpp:279
boost::numeric::ublas::matrix< double > Matrix
Definition for an Isis::LinearAlgebra::Matrix of doubles.
Definition: LinearAlgebra.h:100
bool applyParameterCorrections(LinearAlgebra::Vector corrections)
Applies the parameter corrections.
Definition: IsisBundleObservation.cpp:405
LinearAlgebra::Vector m_weights
Parameter weights. Cumulative parameter correction vector.
Definition: BundleObservation.h:102
QString id() const
Accesses the Point ID associated with this BundleControlPoint.
Definition: BundleControlPoint.cpp:489
QString toString(bool boolToConvert)
Global function to convert a boolean to a string.
Definition: IString.cpp:211
void copy(const IsisBundleObservation &src)
bool computePoint3DPartials(LinearAlgebra::Matrix &coeffPoint3D, BundleMeasure &measure, SurfacePoint::CoordinateType coordType)
Calculates the ground partials for the ground point currently set in the sensor model.
Definition: IsisBundleObservation.cpp:1281
bool IsSpecial(const double d)
Returns if the input pixel is special.
Definition: SpecialPixel.h:197
QSharedPointer< BundleObservationSolveSettings > BundleObservationSolveSettingsQsp
Definition for BundleObservationSolveSettingsQsp, a QSharedPointer to a BundleObservationSolveSetting...
Definition: BundleObservationSolveSettings.h:293
const std::vector< double > & GetCenterCoordinate()
Compute and return the coordinate at the center time.
Definition: SpicePosition.cpp:1586
int index()
Accesses the observation's index.
Definition: BundleObservation.cpp:227
static QString instrumentPointingSolveOptionToString(InstrumentPointingSolveOption option)
Tranlsates an enumerated InstrumentPointingSolveOption value to its string representation.
Definition: BundleObservationSolveSettings.cpp:765
LinearAlgebra::Vector m_aprioriSigmas
A posteriori (adjusted) parameter sigmas.
Definition: BundleObservation.h:106
boost::numeric::ublas::vector< double > Vector
Definition for an Isis::LinearAlgebra::Vector of doubles.
Definition: LinearAlgebra.h:120
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
CoordinateType
Defines the coordinate typ, units, and coordinate index for some of the output methods.
Definition: SurfacePoint.h:139
InstrumentPointingSolveOption
Options for how to solve for instrument pointing.
Definition: BundleObservationSolveSettings.h:126
int numberParameters()
Returns the number of total parameters there are for solving.
Definition: IsisBundleObservation.cpp:548
LinearAlgebra::Vector m_corrections
Definition: BundleObservation.h:104
void bundleOutputString(std::ostream &fpOut, bool errorPropagation)
Takes in an open std::ofstream and writes out information which goes into the bundleout....
Definition: IsisBundleObservation.cpp:744
BundleControlPoint * parentControlPoint()
Accesses the parent BundleControlPoint for this bundle measure.
Definition: BundleMeasure.cpp:138
@ One
Definition: SurfacePoint.h:150
void initializeBodyRotation()
Intializes the body rotation.
Definition: IsisBundleObservation.cpp:273
@ WRT_Declination
With respect to Declination.
Definition: SpiceRotation.h:260
@ NoPointingFactors
Solve for none of the pointing factors.
Definition: BundleObservationSolveSettings.h:127
@ WRT_Twist
With respect to Twist or Prime Meridian Rotation.
Definition: SpiceRotation.h:261
QSharedPointer< IsisBundleObservation > IsisBundleObservationQsp
Typdef for IsisBundleObservation QSharedPointer.
Definition: IsisBundleObservation.h:98
SpiceRotation * spiceRotation()
Accesses the instrument's spice rotation.
Definition: IsisBundleObservation.cpp:159
const BundleObservationSolveSettingsQsp solveSettings()
Accesses the solve settings.
Definition: IsisBundleObservation.cpp:180
A container class for a ControlMeasure.
Definition: BundleMeasure.h:55
virtual bool GetdXYdTOrientation(const SpiceRotation::PartialType varType, int coefIndex, double *cudx, double *cudy)
Compute derivative of focal plane coordinate w/r to target body using current state.
Definition: CameraGroundMap.cpp:354
Isis exception class.
Definition: IException.h:91
std::vector< double > Partial(CoordinateType type, CoordIndex index)
Compute partial derivative of conversion from body-fixed coordinates to the specified.
Definition: SurfacePoint.cpp:773
bool computeImagePartials(LinearAlgebra::Matrix &coeffImage, BundleMeasure &measure)
Calculates the sensor partials with respect to the selected solve parameters and populates the coeffI...
Definition: IsisBundleObservation.cpp:1184
const double Null
Value for an Isis Null pixel.
Definition: SpecialPixel.h:95
~IsisBundleObservation()
Destructor.
Definition: IsisBundleObservation.cpp:90
void SetOverrideBaseTime(double baseTime, double timeScale)
Set an override base time to be used with observations on scanners to allow all images in an observat...
Definition: SpiceRotation.cpp:2110
void bundleOutputFetchData(QVector< double > &finalParameterValues, int &nPositionCoefficients, int &nPointingCoefficients, bool &useDefaultPosition, bool &useDefaultPointing, bool &useDefaultTwist)
Fetches data for the log file output methods.
Definition: IsisBundleObservation.cpp:646
Namespace for the standard library.
CameraGroundMap * GroundMap()
Returns a pointer to the CameraGroundMap object.
Definition: Camera.cpp:2856
double PixelPitch() const
Returns the pixel pitch.
Definition: Camera.cpp:2742
void GetPolynomial(std::vector< double > &abcAng1, std::vector< double > &abcAng2, std::vector< double > &abcAng3)
Return the coefficients of a polynomial fit to each of the three camera angles for the time period co...
Definition: SpiceRotation.cpp:2051
@ WRT_PolarAxis
Definition: CameraGroundMap.h:93
void SetOverrideBaseTime(double baseTime, double timeScale)
Set an override base time to be used with observations on scanners to allow all images in an observat...
Definition: SpicePosition.cpp:1147
LinearAlgebra::Vector m_adjustedSigmas
A posteriori (adjusted) parameter sigmas.
Definition: BundleObservation.h:108
virtual QStringList parameterList()
Returns the list of observation parameter names.
Definition: IsisBundleObservation.cpp:562
@ WRT_RightAscension
With respect to Right Ascension.
Definition: SpiceRotation.h:259
Class for observations that use ISIS camera models in bundle adjustment.
Definition: IsisBundleObservation.h:34
double GetTimeScale()
Accessor method to get the rotation time scale.
Definition: SpiceRotation.cpp:2433
@ WRT_Z
Definition: SpicePosition.h:201
This class is used to modify and manage solve settings for 1 to many BundleObservations.
Definition: BundleObservationSolveSettings.h:82
@ WRT_Y
Definition: SpicePosition.h:201
@ WRT_MinorAxis
Definition: CameraGroundMap.h:92
InstrumentPositionSolveOption
Options for how to solve for instrument position.
Definition: BundleObservationSolveSettings.h:160
const double RAD2DEG
Multiplier for converting from radians to degrees.
Definition: Constants.h:44
double GetTimeScale()
Return the time scale for the position.
Definition: SpicePosition.h:278
std::vector< double > MeanRadiusPartial(SurfacePoint spoint, Distance meanRadius)
Compute derivative of focal plane coordinate w/r to mean of the ellipsoidal radii (a,...
Definition: CameraGroundMap.cpp:486
This class defines a body-fixed surface point.
Definition: SurfacePoint.h:132
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
double focalPlaneMeasuredX() const
Accesses the measured focal plane x value for this control measure //TODO verify?
Definition: BundleMeasure.cpp:287
bool computeTargetPartials(LinearAlgebra::Matrix &coeffTarget, BundleMeasure &measure, BundleSettingsQsp &bundleSettings, BundleTargetBodyQsp &bundleTargetBody)
Computes any needed partials for the target body parameters.
Definition: IsisBundleObservation.cpp:1073
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126
QString instrumentId()
Accesses the instrument id.
Definition: BundleObservation.cpp:167
Abstract base class for an observation in bundle adjustment.
Definition: BundleObservation.h:35
Obtain SPICE rotation information for a body.
Definition: SpiceRotation.h:209
IsisBundleObservation & operator=(const IsisBundleObservation &src)
Assignment operator.
Definition: IsisBundleObservation.cpp:103
void SetPolynomialDegree(int degree)
Set the polynomial degree.
Definition: SpicePosition.cpp:1502