15 #ifndef mitkCameraCalibrationFacade_h
16 #define mitkCameraCalibrationFacade_h
18 #include "niftkOpenCVExports.h"
20 #include <mitkPoint.h>
25 #include <mitkVector.h>
41 std::vector<IplImage*>& images,
42 std::vector<std::string>& fileNames
54 std::vector<IplImage*>& images,
55 std::vector<std::string>& fileNames
72 const int& numberCornersX,
73 const int& numberCornersY,
74 const double& sizeSquareMillimeters,
75 const mitk::Point2D& pixelScaleFactor,
76 std::vector<std::string>& successfulLeftFiles, std::vector<std::string>& successfulRightFiles
87 const std::vector<IplImage*>& images,
int&
width,
int&
height
109 const std::vector<IplImage*>& images,
110 const std::vector<std::string>& fileNames,
111 const int& numberCornersWidth,
112 const int& numberCornersHeight,
113 const bool& drawCorners,
114 const double& squareSizeInMillimetres,
115 const mitk::Point2D& pixelScaleFactor,
116 std::vector<IplImage*>& outputImages,
117 std::vector<std::string>& outputFileNames,
118 CvMat*& outputImagePoints,
119 CvMat*& outputObjectPoints,
120 CvMat*& outputPointCounts
136 const cv::Mat&
image,
137 const int& numberCornersWidth,
138 const int& numberCornersHeight,
139 const bool& drawCorners,
140 const double& squareSizeInMillimetres,
141 const mitk::Point2D& pixelScaleFactor,
142 std::vector<cv::Point2d>& outputImagePoints,
143 std::vector<cv::Point3d>& outputObjectPoints
158 const CvMat& objectPoints,
159 const CvMat& imagePoints,
160 const CvMat& pointCounts,
162 CvMat& outputIntrinsicMatrix,
163 CvMat& outputDistortionCoefficients,
164 CvMat* outputRotationVectors,
165 CvMat* outputTranslationVectors,
181 const CvMat& objectPoints,
182 const CvMat& imagePoints,
183 const CvMat& pointCounts,
185 CvMat& outputIntrinsicMatrix,
186 CvMat& outputDistortionCoefficients,
187 CvMat& outputRotationVectors,
188 CvMat& outputTranslationVectors
196 const CvMat& objectPoints,
197 const CvMat& imagePoints,
198 const CvMat& pointCounts,
199 const CvMat& intrinsicMatrix,
200 const CvMat& distortionCoefficients,
201 const bool& useExtrinsicGuess,
202 CvMat& outputRotationVectors,
203 CvMat& outputTranslationVectors
216 const CvMat& rotationVectors,
217 const CvMat& translationVectors,
218 const int& viewNumber,
219 CvMat& outputExtrinsicMatrix
239 const CvMat& rotationVectorsLeft,
240 const CvMat& translationVectorsLeft,
241 const CvMat& rotationVectorsRight,
242 const CvMat& translationVectorsRight,
243 CvMat& rotationVectorsRightToLeft,
244 CvMat& translationVectorsRightToLeft
260 const int& numberSuccessfulViews,
261 const int& pointCount,
262 const CvMat& objectPoints,
263 const CvMat& intrinsicMatrix,
264 const CvMat& distortionCoeffictions,
265 const CvMat& rotationVectors,
266 const CvMat& translationVectors,
267 CvMat& outputImagePoints
276 const CvMat& projectedPoints,
277 const CvMat& goldStandardPoints
286 const CvMat& objectPointsLeft,
287 const CvMat& imagePointsLeft,
288 const CvMat& pointCountsLeft,
290 const CvMat& objectPointsRight,
291 const CvMat& imagePointsRight,
292 const CvMat& pointCountsRight,
293 CvMat& outputIntrinsicMatrixLeft,
294 CvMat& outputDistortionCoefficientsLeft,
295 CvMat& outputRotationVectorsLeft,
296 CvMat& outputTranslationVectorsLeft,
297 CvMat& outputIntrinsicMatrixRight,
298 CvMat& outputDistortionCoefficientsRight,
299 CvMat& outputRotationVectorsRight,
300 CvMat& outputTranslationVectorsRight,
301 CvMat& outputRightToLeftRotation,
302 CvMat& outputRightToLeftTranslation,
303 CvMat& outputEssentialMatrix,
304 CvMat& outputFundamentalMatrix,
305 const bool& fixedIntrinsics =
false,
306 const bool& fixedRightToLeft =
false
317 std::ostream& outputStream,
320 const CvMat& objectPoints,
321 const CvMat& imagePoints,
322 const CvMat& pointCounts,
323 const CvMat& intrinsicMatrix,
324 const CvMat& distortionCoefficients,
325 const CvMat& rotationVectors,
326 const CvMat& translationVectors,
327 const double& projectionError,
332 std::vector<std::string>& fileNames
344 const std::string& inputDistortionCoefficientsFileName,
356 const CvMat& intrinsicParams,
357 const CvMat& distortionCoefficients,
367 const CvMat& intrinsicParams,
368 const CvMat& distortionCoefficients,
378 const IplImage &mapX,
379 const IplImage &mapY,
389 const IplImage &mapX,
390 const IplImage &mapY,
391 const IplImage &inputImage,
392 IplImage &outputImage
415 const CvMat& modelPointsIn3D,
416 const CvMat& leftCameraIntrinsic,
417 const CvMat& leftCameraDistortion,
418 const CvMat& leftCameraRotationVector,
419 const CvMat& leftCameraTranslationVector,
420 const CvMat& rightCameraIntrinsic,
421 const CvMat& rightCameraDistortion,
422 const CvMat& rightToLeftRotationMatrix,
423 const CvMat& rightToLeftTranslationVector,
424 CvMat& output2DPointsLeft,
425 CvMat& output2DPointsRight,
426 const bool& cropPointsToScreen =
false,
427 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
428 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
458 const CvMat& leftCameraWorldPointsIn3D,
459 const CvMat& leftCameraWorldNormalsIn3D,
460 const CvMat& leftCameraPositionToFocalPointUnitVector,
461 const CvMat& leftCameraIntrinsic,
462 const CvMat& leftCameraDistortion,
463 const CvMat& rightCameraIntrinsic,
464 const CvMat& rightCameraDistortion,
465 const CvMat& rightToLeftRotationMatrix,
466 const CvMat& rightToLeftTranslationVector,
467 CvMat*& outputLeftCameraWorldPointsIn3D,
468 CvMat*& outputLeftCameraWorldNormalsIn3D,
469 CvMat*& output2DPointsLeft,
470 CvMat*& output2DPointsRight,
471 const bool& cropPointsToScreen =
false,
472 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
473 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
489 const cv::Mat& cameraIntrinsics3x3,
490 const cv::Mat& cameraDistortionParams5x1,
491 cv::Mat& outputIdealPointsNx2,
492 const bool& cropPointsToScreen =
false,
493 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
494 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
510 const cv::Mat& cameraIntrinsics3x3,
511 const cv::Mat& cameraDistortionParams5x1,
512 std::vector<cv::Point2d>& outputIdealPoints,
513 const bool& cropPointsToScreen =
false,
514 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
515 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
531 const cv::Mat& cameraIntrinsics3x3,
532 const cv::Mat& cameraDistortionParams,
533 cv::Point2d& outputIdealPoint,
534 const bool& cropPointsToScreen =
false,
535 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
536 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
554 const std::vector< std::pair<cv::Point2d, cv::Point2d> >& inputUndistortedPoints,
555 const cv::Mat& leftCameraIntrinsicParams,
556 const cv::Mat& rightCameraIntrinsicParams,
557 const cv::Mat& rightToLeftRotationMatrix,
558 const cv::Mat& rightToLeftTranslationVector,
559 const double& tolerance,
560 const bool& preserveVectorSize =
false
568 const cv::Point2d& inputUndistortedPoint,
569 const cv::Mat& cameraIntrinsicParams,
570 const double& rayLength = 1000
580 const std::pair<cv::Point2d, cv::Point2d> & inputUndistortedPoints,
581 const cv::Mat& leftCameraIntrinsicParams,
582 const cv::Mat& rightCameraIntrinsicParams,
583 const cv::Mat& rightToLeftRotationMatrix,
584 const cv::Mat& rightToLeftTranslationVector
591 const CvMat& leftCameraUndistortedImagePoints,
592 const CvMat& rightCameraUndistortedImagePoints,
593 const CvMat& leftCameraIntrinsicParams,
594 const CvMat& leftCameraRotationVector,
595 const CvMat& leftCameraTranslationVector,
596 const CvMat& rightCameraIntrinsicParams,
597 const CvMat& rightCameraRotationVector,
598 const CvMat& rightCameraTranslationVector,
599 CvMat& output3DPoints
607 const std::vector < mitk::ProjectedPointPair >& onScreenPoints,
608 const cv::Mat& leftIntrinsicMatrix,
609 const cv::Mat& leftDistortionVector,
610 const cv::Mat& rightIntrinsicMatrix,
611 const cv::Mat& rightDistorionVector,
612 const cv::Mat& rightToLeftRotationMatrix,
613 const cv::Mat& rightToLeftTranslationVector,
614 const bool& cropPointsToScreen =
false,
615 const double& xLow = 0.0 ,
const double& xHigh = 0.0 ,
616 const double& yLow = 0.0 ,
const double& yHigh = 0.0 ,
const double& cropValue = 0.0
623 const cv::Point2d& inputUndistortedPoint,
const cv::Mat& CameraIntrinsicParams);
645 const std::vector< std::pair<cv::Point2d, cv::Point2d> >& inputUndistortedPoints,
646 const cv::Mat& leftCameraIntrinsicParams,
647 const cv::Mat& leftCameraRotationVector,
648 const cv::Mat& leftCameraTranslationVector,
649 const cv::Mat& rightCameraIntrinsicParams,
650 const cv::Mat& rightCameraRotationVector,
651 const cv::Mat& rightCameraTranslationVector
664 const cv::Matx34d& P1,
665 const cv::Matx34d& P2,
666 const cv::Point3d&
u1,
667 const cv::Point3d&
u2,
682 const cv::Matx34d& P1,
683 const cv::Matx34d& P2,
684 const cv::Point3d&
u1,
685 const cv::Point3d&
u2
699 std::vector<double>& residuals);
707 cv::Mat& handeye, cv::Mat& tracker );
716 cv::Mat& handeye, cv::Mat& tracker );
724 std::vector <cv::Point2d>& dstPoints ,
725 const double& xLow,
const double& xHigh,
const double& yLow,
const double& yHigh,
726 const double& cropValue );
std::vector< int > ProjectVisible3DWorldPointsToStereo2D(const CvMat &leftCameraWorldPointsIn3D, const CvMat &leftCameraWorldNormalsIn3D, const CvMat &leftCameraPositionToFocalPointUnitVector, const CvMat &leftCameraIntrinsic, const CvMat &leftCameraDistortion, const CvMat &rightCameraIntrinsic, const CvMat &rightCameraDistortion, const CvMat &rightToLeftRotationMatrix, const CvMat &rightToLeftTranslationVector, CvMat *&outputLeftCameraWorldPointsIn3D, CvMat *&outputLeftCameraWorldNormalsIn3D, CvMat *&output2DPointsLeft, CvMat *&output2DPointsRight, const bool &cropPointsToScreen, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Takes 3D world points, and normals, and if the normal is pointing towards camera, will project the po...
Definition: mitkCameraCalibrationFacade.cxx:1315
double CalculateRPE(const CvMat &projectedPoints, const CvMat &goldStandardPoints)
Calculates the RMS projection error.
Definition: mitkCameraCalibrationFacade.cxx:594
void CropToScreen(const std::vector< cv::Point2d > &src, std::vector< cv::Point2d > &dst, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Iterates through a vector of points and checks whether they are within the bounds passed...
Definition: mitkCameraCalibrationFacade.cxx:2226
void UndistortPoints(const cv::Mat &inputObservedPointsNx2, const cv::Mat &cameraIntrinsics, const cv::Mat &cameraDistortionParams, cv::Mat &outputIdealPointsNx2, const bool &cropPointsToScreen, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Takes image points, and undistorts them to ideal locations.
Definition: mitkCameraCalibrationFacade.cxx:1420
void CStyleTriangulatePointPairsUsingSVD(const CvMat &leftCameraUndistortedImagePoints, const CvMat &rightCameraUndistortedImagePoints, const CvMat &leftCameraIntrinsicParams, const CvMat &leftCameraRotationVector, const CvMat &leftCameraTranslationVector, const CvMat &rightCameraIntrinsicParams, const CvMat &rightCameraRotationVector, const CvMat &rightCameraTranslationVector, CvMat &output3DPoints)
C Wrapper for the other TriangulatePointPairsUsingSVD.
Definition: mitkCameraCalibrationFacade.cxx:1754
void ExtractExtrinsicMatrixFromRotationAndTranslationVectors(const CvMat &rotationVectors, const CvMat &translationVectors, const int &viewNumber, CvMat &outputExtrinsicMatrix)
The above method CalibrateSingleCameraParameters outputs a whole load of rotation and translation vec...
Definition: mitkCameraCalibrationFacade.cxx:484
void ProjectAllPoints(const int &numberSuccessfulViews, const int &pointCount, const CvMat &objectPoints, const CvMat &intrinsicMatrix, const CvMat &distortionCoeffictions, const CvMat &rotationVectors, const CvMat &translationVectors, CvMat &outputImagePoints)
Bulk method to project all points for all calibrations back to 2D, useful for validating calibration...
Definition: mitkCameraCalibrationFacade.cxx:621
GLenum GLsizei GLenum GLenum const GLvoid * image
Definition: glew.h:4052
bool CheckAndAppendPairOfFileNames(const std::string &leftFileName, const std::string &rightFileName, const int &numberCornersX, const int &numberCornersY, const double &sizeSquareMillimeters, const mitk::Point2D &pixelScaleFactor, std::vector< std::string > &successfulLeftFiles, std::vector< std::string > &successfulRightFiles)
Utility method to check and load stereo pairs of chessboards.
Definition: mitkCameraCalibrationFacade.cxx:76
void LoadImagesFromDirectory(const std::string &fullDirectoryName, std::vector< IplImage * > &images, std::vector< std::string > &fileNames)
Scans a directory for all filenames, and uses OpenCV to load images.
Definition: mitkCameraCalibrationFacade.cxx:65
cv::Point3d TriangulatePointPairUsingGeometry(const std::pair< cv::Point2d, cv::Point2d > &inputUndistortedPoint, const cv::Mat &leftCameraIntrinsicParams, const cv::Mat &rightCameraIntrinsicParams, const cv::Mat &rightToLeftRotationMatrix, const cv::Mat &rightToLeftTranslationVector)
Triangulates a single point from two 2D points by calling TriangulatePointPairsUsingGeometry().
Definition: mitkCameraCalibrationFacade.cxx:1499
Definition: ReceptorMemberCommandTest.cxx:25
std::vector< std::pair< cv::Point3d, double > > TriangulatePointPairsUsingGeometry(const std::vector< std::pair< cv::Point2d, cv::Point2d > > &inputUndistortedPoints, const cv::Mat &leftCameraIntrinsicParams, const cv::Mat &rightCameraIntrinsicParams, const cv::Mat &rightToLeftRotationMatrix, const cv::Mat &rightToLeftTranslationVector, const double &tolerance, const bool &preserveVectorSize)
Triangulates a vector of un-distorted (i.e. already correction for distortion) 2D point pairs back in...
Definition: mitkCameraCalibrationFacade.cxx:1518
GLuint GLdouble u1
Definition: glew.h:3085
void LoadResult(const std::string &FileName, cv::Mat &result, std::vector< double > &residuals)
loads a result file into a residual vector and matrix
Definition: mitkCameraCalibrationFacade.cxx:2078
bool ExtractChessBoardPoints(const cv::Mat &image, const int &numberCornersWidth, const int &numberCornersHeight, const bool &drawCorners, const double &squareSizeInMillimetres, const mitk::Point2D &pixelScaleFactor, std::vector< cv::Point2d > &corners, std::vector< cv::Point3d > &objectPoints)
Extracts the chess board points, using OpenCV routines.
Definition: mitkCameraCalibrationFacade.cxx:149
std::vector< double > OutputCalibrationData(std::ostream &os, const std::string &outputDirectoryName, const std::string &intrinsicFlatFileName, const CvMat &objectPoints, const CvMat &imagePoints, const CvMat &pointCounts, const CvMat &intrinsicMatrix, const CvMat &distortionCoeffs, const CvMat &rotationVectors, const CvMat &translationVectors, const double &projectionError, const int &sizeX, const int &sizeY, const int &cornersX, const int &cornersY, std::vector< std::string > &fileNames)
Utility method to dump output to a stream.
Definition: mitkCameraCalibrationFacade.cxx:847
void CorrectDistortionInSingleImage(const CvMat &intrinsicParams, const CvMat &distortionCoefficients, IplImage &image)
Assuming image is pre-allocated, will take the intrinsic and distortion parameters and calculate a pi...
Definition: mitkCameraCalibrationFacade.cxx:1107
GLuint64EXT * result
Definition: glew.h:12084
void ComputeRightToLeftTransformations(const CvMat &rotationVectorsLeft, const CvMat &translationVectorsLeft, const CvMat &rotationVectorsRight, const CvMat &translationVectorsRight, CvMat &rotationVectorsRightToLeft, CvMat &translationVectorsRightToLeft)
Method to take a set of rotation and translation vectors for left and right cameras, and compute transformations from right to left.
Definition: mitkCameraCalibrationFacade.cxx:529
void UndistortPoint(const cv::Point2d &inputPoint, const cv::Mat &cameraIntrinsics, const cv::Mat &cameraDistortionParams, cv::Point2d &outputPoint, const bool &cropPointsToScreen, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Takes an image point, and undistorts it to ideal locations, which is a C++ wrapper for the above meth...
Definition: mitkCameraCalibrationFacade.cxx:1477
void CalibrateSingleCameraExtrinsics(const CvMat &objectPoints, const CvMat &imagePoints, const CvMat &pointCounts, const CvMat &intrinsicMatrix, const CvMat &distortionCoefficients, const bool &useExtrinsicGuess, CvMat &outputRotationVectors, CvMat &outputTranslationVectors)
Calculates JUST the extrinsic parameters for a whole bunch of calibrations.
Definition: mitkCameraCalibrationFacade.cxx:414
std::vector< cv::Point3d > TriangulatePointPairsUsingSVD(const std::vector< std::pair< cv::Point2d, cv::Point2d > > &inputUndistortedPoints, const cv::Mat &leftCameraIntrinsicParams, const cv::Mat &leftCameraRotationVector, const cv::Mat &leftCameraTranslationVector, const cv::Mat &rightCameraIntrinsicParams, const cv::Mat &rightCameraRotationVector, const cv::Mat &rightCameraTranslationVector)
Triangulates a vector of un-distorted (i.e. already correction for distortion) 2D point pairs back in...
Definition: mitkCameraCalibrationFacade.cxx:1811
double CalibrateStereoCameraParameters(const CvMat &objectPointsLeft, const CvMat &imagePointsLeft, const CvMat &pointCountsLeft, const CvSize &imageSize, const CvMat &objectPointsRight, const CvMat &imagePointsRight, const CvMat &pointCountsRight, CvMat &outputIntrinsicMatrixLeft, CvMat &outputDistortionCoefficientsLeft, CvMat &outputRotationVectorsLeft, CvMat &outputTranslationVectorsLeft, CvMat &outputIntrinsicMatrixRight, CvMat &outputDistortionCoefficientsRight, CvMat &outputRotationVectorsRight, CvMat &outputTranslationVectorsRight, CvMat &outputRightToLeftRotation, CvMat &outputRightToLeftTranslation, CvMat &outputEssentialMatrix, CvMat &outputFundamentalMatrix, const bool &fixedIntrinsics, const bool &fixedRightToLeft)
Performs a stereo calibration, including all intrinsic, extrinsic, distortion co-efficients, and also outputs the rotation and translation vector between the two cameras. Now we also have an option to fix the intrinsics, and an option to fix the right to left calculation.
Definition: mitkCameraCalibrationFacade.cxx:676
void CheckConstImageSize(const std::vector< IplImage * > &images, int &width, int &height)
Iterates through the list of images, checking that the width and height are consistent.
Definition: mitkCameraCalibrationFacade.cxx:123
void GenerateFullHandeyeMatrices(const std::string &directory)
reads the handeye and r2l transforms and writes out a set of left, centre and right hand eye matrices...
Definition: mitkCameraCalibrationFacade.cxx:2099
cl_event GLbitfield flags
Definition: glew.h:3231
Derived point types to contain data for projection and analysis.
#define NIFTKOPENCV_EXPORT
Definition: niftkSequentialCpuQds.h:27
cv::Mat_< double > InternalTriangulatePointUsingSVD(const cv::Matx34d &P1, const cv::Matx34d &P2, const cv::Point3d &u1, const cv::Point3d &u2, const double &w1, const double &w2)
Don't call this: Triangulates a 3D point using SVD.
Definition: mitkCameraCalibrationFacade.cxx:2006
void ApplyDistortionCorrectionMap(const IplImage &mapX, const IplImage &mapY, const IplImage &inputImage, IplImage &outputImage)
Assumes all image buffers are pre-allocated and the same size, and applies mapX and mapY to the input...
Definition: mitkCameraCalibrationFacade.cxx:1137
cv::Point3d LeftLensToWorld(cv::Point3d PointInLensCS, cv::Mat &Handeye, cv::Mat &Tracker)
Definition: mitkCameraCalibrationFacade.cxx:2147
void UndistortImageUsingDistortionMap(const IplImage &mapX, const IplImage &mapY, IplImage &image)
Assumes all image buffers are pre-allocated and the same size, and applies mapX and mapY to image...
Definition: mitkCameraCalibrationFacade.cxx:1124
cv::Point3d ReProjectPoint(const cv::Point2d &point, const cv::Mat &IntrinsicMatrix)
Reprojects undistorted screen points to normalised points (x/z, y/z, 1.0) in lens coordinates...
Definition: mitkCameraCalibrationFacade.cxx:2215
cv::Point3d WorldToLeftLens(cv::Point3d PointInWorldCS, cv::Mat &Handeye, cv::Mat &Tracker)
Definition: mitkCameraCalibrationFacade.cxx:2181
std::pair< cv::Point3d, cv::Point3d > GetRay(const cv::Point2d &inputUndistortedPoint, const cv::Mat &cameraIntrinsicParams, const double &rayLength)
Projects a ray from un-distorted (i.e. already correction for distortion) 2D point.
Definition: mitkCameraCalibrationFacade.cxx:1691
void Project3DModelPositionsToStereo2D(const CvMat &modelPointsIn3D, const CvMat &leftCameraIntrinsic, const CvMat &leftCameraDistortion, const CvMat &leftCameraRotationVector, const CvMat &leftCameraTranslationVector, const CvMat &rightCameraIntrinsic, const CvMat &rightCameraDistortion, const CvMat &rightToLeftRotationMatrix, const CvMat &rightToLeftTranslationVector, CvMat &output2DPointsLeft, CvMat &output2DPointsRight, const bool &cropPointsToScreen, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Used to project 3D points into 2D locations for a stereo pair. Here, 3D model points means that the 3...
Definition: mitkCameraCalibrationFacade.cxx:1149
GLint GLint GLint GLint GLint GLint GLsizei GLsizei height
Definition: glew.h:1236
double CalibrateSingleCameraParameters(const CvMat &objectPoints, const CvMat &imagePoints, const CvMat &pointCounts, const CvSize &imageSize, CvMat &outputIntrinsicMatrix, CvMat &outputDistortionCoefficients, CvMat *outputRotationVectors, CvMat *outputTranslationVectors, const int &flags)
Calibrate a single camera's intrinsic parameters, by directly calling cvCalibrationCamera2.
Definition: mitkCameraCalibrationFacade.cxx:344
GLint GLint GLint GLint GLint GLint GLsizei width
Definition: glew.h:1236
std::vector< mitk::WorldPoint > Triangulate(const std::vector< mitk::ProjectedPointPair > &onScreenPointPairs, const cv::Mat &leftIntrinsicMatrix, const cv::Mat &leftDistortionVector, const cv::Mat &rightIntrinsicMatrix, const cv::Mat &rightDistortionVector, const cv::Mat &rightToLeftRotationMatrix, const cv::Mat &rightToLeftTranslationVector, const bool &cropPointsToScreen, const double &xLow, const double &xHigh, const double &yLow, const double &yHigh, const double &cropValue)
Wrapper to triangulate vector of mitk::ProjectedPointPair to vector of mitk::WorldPoint.
Definition: mitkCameraCalibrationFacade.cxx:1933
GLuint GLdouble GLdouble u2
Definition: glew.h:3085
double CalibrateSingleCameraUsingMultiplePasses(const CvMat &objectPoints, const CvMat &imagePoints, const CvMat &pointCounts, const CvSize &imageSize, CvMat &outputIntrinsicMatrix, CvMat &outputDistortionCoefficients, CvMat &outputRotationVectors, CvMat &outputTranslationVectors)
Calibrate a single camera's intrinsic parameters by using 3 passes, firstly with fixed principal poin...
Definition: mitkCameraCalibrationFacade.cxx:371
void LoadImages(const std::vector< std::string > &files, std::vector< IplImage * > &images, std::vector< std::string > &fileNames)
Uses OpenCV to load images.
Definition: mitkCameraCalibrationFacade.cxx:36
GLsizei const GLcharARB ** string
Definition: glew.h:5194
cv::Point3d InternalIterativeTriangulatePointUsingSVD(const cv::Matx34d &P1, const cv::Matx34d &P2, const cv::Point3d &u1, const cv::Point3d &u2)
Don't call this: Triangulates a 3D point using SVD by calling TriangulatePointUsingSVD with different...
Definition: mitkCameraCalibrationFacade.cxx:2039
GLint GLenum GLsizei GLint GLsizei imageSize
Definition: glew.h:1363
void CorrectDistortionInImageFile(const std::string &inputFileName, const CvMat &intrinsicParams, const CvMat &distortionCoefficients, const std::string &outputFileName)
Method that reads a single image (eg. png, jpg or anything that OpenCV recognises) and corrects it us...
Definition: mitkCameraCalibrationFacade.cxx:1061