Isis Developer Reference
ApolloPanIO.h
Go to the documentation of this file.
1 #ifndef ApolloPanIO_h
2 #define ApolloPanIO_h
3 
10 /* SPDX-License-Identifier: CC0-1.0 */
11 
12 namespace Isis {
13  /* Numbering scheme for the fiducial marks
14  * (gages on the right)
15  * :--------------------------------------------------------------------------------------------:0
16  * :0 2 4 .... ... 84 86 88:0
17  * : :0
18  * :1 3 5 .... ... 85 87 89:0
19  * ----------------------------------------------------------------------------------------------0
20  */
21 
22 
43  {
44  private:
45 
50  typedef struct Affine2D {
51  int flag;
52  double A2I[6];
53  double A2M[6];
54 
58  double rotM[2];
59 
63  double rotI[2];
64 
65  double mI;
66  double mM;
67  int indeces[2];
68  }Affine2D;
69 
73  typedef struct FidObs {
74  int flag;
75  double mach[2];
76  double image[2];
77  double residuals[2];
78  }FidObs;
79 
84  Affine2D affines[44];
85 
86  FidObs obs[90];
87  int n;
88  double maxR;
89  double meanR;
90  double stdevR;
91 
92  void calc_residual_stats();
93 
94  public:
95 
96  ApolloPanIO();
97 
98  ~ApolloPanIO();
99 
100  void initialize();
101 
102  int fiducialObservation(int fiducialNumber, double machine_x, double machine_y);
103 
104  int clearFiducialObservation(int fiducialNumber);
105 
107 
108  int machine2Image(double *machineX, double *machineY);
109 
110  int machine2Image(double machineX, double machineY, double *imageX, double *imageY);
111 
112  int image2Machine(double *imageX, double *imageY);
113 
114  int image2Machine(double imageX, double imageY, double *machineX, double *machineY);
115 
116  double stdevResiduals();
117  double meanResiduals();
118  double maxResiduals();
119  };
120 } //end namespace Isis
121 #endif
FIDS
#define FIDS
Definition: ApolloPanIO.cpp:19
Isis::ApolloPanIO::~ApolloPanIO
~ApolloPanIO()
Destroys the ApolloPanObject.
Definition: ApolloPanIO.cpp:35
Isis::ApolloPanIO::initialize
void initialize()
Initilizes member variables in preparation for solving for the interior orientation affines.
Definition: ApolloPanIO.cpp:42
Ransac.h
Isis::ApolloPanIO::machine2Image
int machine2Image(double *machineX, double *machineY)
This method does an in place (overwriting input) conversion of a cube coordinate (sample,...
Definition: ApolloPanIO.cpp:546
Isis::ApolloPanIO::maxResiduals
double maxResiduals()
Accessor for the mean (average) of the residual vector lenghts Call after computeInteriorOrienation()...
Definition: ApolloPanIO.cpp:777
Isis::ApolloPanIO::stdevResiduals
double stdevResiduals()
Accessor for the standard deviation of the residual vector lenghts Call after computeInteriorOrienati...
Definition: ApolloPanIO.cpp:754
Isis::ApolloPanIO::ApolloPanIO
ApolloPanIO()
Constructs an ApolloPanIO object.
Definition: ApolloPanIO.cpp:28
Isis::isymp
int isymp(int row, int col)
Definition: Ransac.h:20
Isis::ApolloPanIO::image2Machine
int image2Machine(double *imageX, double *imageY)
This method does an in place (overwriting input) conversion of an image coordinate into cube (machine...
Definition: ApolloPanIO.cpp:629
FIDL
#define FIDL
This is free and unencumbered software released into the public domain.
Definition: ApolloPanIO.cpp:18
Isis::choleski_solve
int choleski_solve(double *a, double *b, int nsize, int flag)
Definition: Ransac.h:131
ApolloPanIO.h
Isis::ApolloPanIO::clearFiducialObservation
int clearFiducialObservation(int fiducialNumber)
This method removes a measurement of the center of an apollo panoramic image fiducial mark from consi...
Definition: ApolloPanIO.cpp:140
std
Namespace for the standard library.
Isis::ApolloPanIO
Calculates a series of affine transformations from the measured coordinates of the up to 90 fiducial ...
Definition: ApolloPanIO.h:43
Isis::ApolloPanIO::fiducialObservation
int fiducialObservation(int fiducialNumber, double machine_x, double machine_y)
This method adds a measurement of the center of an apollo panoramic image fiducial mark for considera...
Definition: ApolloPanIO.cpp:96
Isis::ApolloPanIO::computeInteriorOrienation
int computeInteriorOrienation()
This method leverages all the fiducial obersatvions to caculate a series of affine transformations fo...
Definition: ApolloPanIO.cpp:160
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::ApolloPanIO::meanResiduals
double meanResiduals()
Accessor for the mean (average) of the residual vector lenghts Call after computeInteriorOrienation()...
Definition: ApolloPanIO.cpp:766