Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Isis Developer Reference
OsirisRexOcamsOpenCVDistortionMap.h
Go to the documentation of this file.
1#ifndef OsirisRexOcamsOpenCVDistortionMap_h
2#define OsirisRexOcamsOpenCVDistortionMap_h
21
22#include <QSharedPointer>
23
24#include "CameraDistortionMap.h"
25#include "CameraFocalPlaneMap.h"
26#include "Camera.h"
27
28namespace Isis {
75 public:
113 OsirisRexOcamsOpenCVDistortionMap(Camera *parent, int naifIkCode,
114 int functionIkCode,
115 const QString &filtername,
116 const double zdir = 1.0);
117
120
127 void SetCameraTemperature(const double temp);
128
141 virtual bool SetFocalPlane(const double dx, const double dy);
142
143
156 virtual bool SetUndistortedFocalPlane(const double ux, const double uy);
157
158 protected:
159 void image_to_distortion_frame(const double dx, const double dy,
160 double *u, double *v,
161 double *xpp, double *ypp) const;
162 void distortion_to_pointing_frame(const double xp, const double yp,
163 double *x, double *y,
164 double *ux, double *uy) const;
165
166 void pointing_to_distortion_frame(const double ux, const double uy,
167 double *x, double *y,
168 double *xp, double *yp) const;
169 void distortion_to_image_frame(const double xpp, const double ypp,
170 double *u, double *v,
171 double *dx, double *dy) const;
172
173 void apply_distortion(const double xp, const double yp,
174 double *xpp, double *ypp) const;
175
176
177 private:
178 // parameters below are from camera calibration report
179 double p_k1;
180 double p_k2;
181 double p_k3;
182 double p_k4;
183 double p_k5;
184 double p_k6;
185 double p_p1;
186 double p_p2;
187 double p_fx;
188 double p_fy;
189 double p_cx;
190 double p_cy;
191 double p_a1 ;
193 double p_camTemp;
194 double p_tolerance;
195 bool p_debug;
196
197 double p_xoffset;
198 double p_yoffset;
199
200 QSharedPointer<CameraFocalPlaneMap> m_focalMap; // Local focal plane map
201
202 bool load_model(Camera *camera, const int naifIKcode = 0, const QString &suffix = "");
203 bool load_polycam_model(Camera *camera, const int naifIKcode, const int focusIkCode);
204
205 };
206};
207#endif
CameraDistortionMap(Camera *parent, double zDirection=1.0)
Camera distortion map constructor.
Definition CameraDistortionMap.cpp:24
Definition Camera.h:237
void image_to_distortion_frame(const double dx, const double dy, double *u, double *v, double *xpp, double *ypp) const
Compute distortion model point from distorted focal plane coordinates.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:298
virtual bool SetUndistortedFocalPlane(const double ux, const double uy)
Compute distorted focal plane x/y.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:251
void pointing_to_distortion_frame(const double ux, const double uy, double *x, double *y, double *xp, double *yp) const
Normalize ISIS3 focal plane coordinate to model point.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:396
OsirisRexOcamsOpenCVDistortionMap(Camera *parent, int naifIkCode, int functionIkCode, const QString &filtername, const double zdir=1.0)
Constructs a Distortion Map object for the OSIRIS-REx TagCams Camera.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:59
virtual bool SetFocalPlane(const double dx, const double dy)
Compute undistorted focal plane x/y.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:167
~OsirisRexOcamsOpenCVDistortionMap()
Destroys OsirisRexOcamsOpenCVDistortionMap object.
Definition OsirisRexOcamsOpenCVDistortionMap.h:119
void distortion_to_pointing_frame(const double xp, const double yp, double *x, double *y, double *ux, double *uy) const
Compute ISIS3 undistorted focal plane coordinates from model.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:345
void SetCameraTemperature(const double temp)
Set camera head temperature for the model.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:148
void apply_distortion(const double xp, const double yp, double *xpp, double *ypp) const
Apply OpenCV model equations to normalized parameters.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:484
void distortion_to_image_frame(const double xpp, const double ypp, double *u, double *v, double *dx, double *dy) const
Converts a distortion model coordinate to ISIS3 focal plane coordinate.
Definition OsirisRexOcamsOpenCVDistortionMap.cpp:445
Definition JigsawWorkOrder.h:28
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16