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
12namespace 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
97
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
Calculates a series of affine transformations from the measured coordinates of the up to 90 fiducial ...
Definition ApolloPanIO.h:43
void initialize()
Initilizes member variables in preparation for solving for the interior orientation affines.
Definition ApolloPanIO.cpp:42
int machine2Image(double *machineX, double *machineY)
This method does an in place (overwriting input) conversion of a cube coordinate (sample,...
Definition ApolloPanIO.cpp:546
double maxResiduals()
Accessor for the mean (average) of the residual vector lenghts Call after computeInteriorOrienation()...
Definition ApolloPanIO.cpp:777
double stdevResiduals()
Accessor for the standard deviation of the residual vector lenghts Call after computeInteriorOrienati...
Definition ApolloPanIO.cpp:754
ApolloPanIO()
Constructs an ApolloPanIO object.
Definition ApolloPanIO.cpp:28
double meanResiduals()
Accessor for the mean (average) of the residual vector lenghts Call after computeInteriorOrienation()...
Definition ApolloPanIO.cpp:766
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
~ApolloPanIO()
Destroys the ApolloPanObject.
Definition ApolloPanIO.cpp:35
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
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
int computeInteriorOrienation()
This method leverages all the fiducial obersatvions to caculate a series of affine transformations fo...
Definition ApolloPanIO.cpp:160
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16