20 #ifndef _svlCCCalibrationGrid_h
21 #define _svlCCCalibrationGrid_h
38 double refine(
const cv::Mat& localRvec,
const cv::Mat& localTvec,
const cv::Mat& localCameraMatrix,
const cv::Mat& localDistCoeffs,
float threshold,
bool runHomography);
73 int findGridPointIndex(cv::Point3f point);
74 void create2DChessboardCorners(
bool visible);
75 void homographyCorrelation(
float threshold);
76 int applyHomography(
double homography[],
float threshold);
77 bool updateHomography(
float threshold);
78 float distanceBetweenTwoPoints (
float x1,
float y1,
float x2,
float y2);
79 cv::Point2f extrapolateFromTwoPoints(
float x1,
float y1,
float x2,
float y2);
80 cv::Point2f midPointBetweenTwoPoints(
float x1,
float y1,
float x2,
float y2);
81 void findInitialCornerHelper(CvMat* coordsSrc, CvMat* coordsDst,
bool initial);
82 void findInitialCorners(CvMat* coordsSrc, CvMat* coordsDst);
83 float nearestCorner(cv::Point2f targetPoint, cv::Point2f* corner,
float distanceThreshold);
84 std::vector<cv::Point3f> getAllCalibrationGridPoints3D();
85 double runCalibration();
86 bool isHighDefinition();
90 cv::Point2f calibrationGridOrigin;
91 cv::Point2f imageOrigin;
92 int homographyInlierLevel;
93 CvMat* calibrationGridColorBlobs;
94 CvMat* imageColorBlobs;
95 std::vector<cv::Point2f> corners;
97 std::vector<cv::Point2f> colorBlobsFromDetector;
98 cv::Point2f originFromDetector;
99 double calibrationError;
100 std::vector<cv::Point2f> projectedImagePoints;
101 double projectedImagePointsCalibrationError;
102 int originColorModeFlag;
int minGridPoints
Definition: svlCCCalibrationGrid.h:70
void setGroundTruthTransformation(CvMat *groundTruthCameraTransformation)
bool ** visibility
Definition: svlCCCalibrationGrid.h:51
CvMat * groundTruthRmatrix
Definition: svlCCCalibrationGrid.h:59
float gridSizePixel
Definition: svlCCCalibrationGrid.h:54
float gridSize
Definition: svlCCCalibrationGrid.h:52
cv::Mat tvec
Definition: svlCCCalibrationGrid.h:64
std::vector< cv::Point2f > groundTruthImagePoints
Definition: svlCCCalibrationGrid.h:55
svlSampleCameraGeometry * GetCameraGeometry()
std::vector< cv::Point2f > getGoodProjectedImagePoints()
cv::Size boardSize
Definition: svlCCCalibrationGrid.h:53
double refine(const cv::Mat &localRvec, const cv::Mat &localTvec, const cv::Mat &localCameraMatrix, const cv::Mat &localDistCoeffs, float threshold, bool runHomography)
bool hasTracking
Definition: svlCCCalibrationGrid.h:68
std::vector< cv::Point2f > getGoodImagePoints()
svlCCCalibrationGrid(IplImage *iplImage, cv::Size boardSize, float size)
void IplImage
Definition: svlTypes.h:70
void optimizeCalibration()
cv::Point2f ** calibrationGridPoints
Definition: svlCCCalibrationGrid.h:49
std::vector< cv::Point3f > getGoodCalibrationGridPoints3D()
cv::Mat groundTruthTvec
Definition: svlCCCalibrationGrid.h:60
CvMat * worldToTCP
Definition: svlCCCalibrationGrid.h:61
Definition: svlCCOriginDetector.h:27
Definition: svlCCCalibrationGrid.h:33
cv::Point2f ** imagePoints
Definition: svlCCCalibrationGrid.h:50
void correlate(svlCCOriginDetector *originDetector, svlCCCornerDetector *cornerDetector)
Macros to export the symbols of cisstStereoVision (in a Dll).
cv::Mat groundTruthRvec
Definition: svlCCCalibrationGrid.h:58
cv::Mat distCoeffs
Definition: svlCCCalibrationGrid.h:62
cv::Mat rmatrix
Definition: svlCCCalibrationGrid.h:65
void printCalibrationParameters()
std::string Mat
Definition: svlTypes.h:72
bool valid
Definition: svlCCCalibrationGrid.h:66
cv::Mat cameraMatrix
Definition: svlCCCalibrationGrid.h:57
Definition: svlCCCornerDetector.h:27
cv::Mat rvec
Definition: svlCCCalibrationGrid.h:63
bool validGroundTruth
Definition: svlCCCalibrationGrid.h:67
Definition: svlSampleCameraGeometry.h:34
float refineThreshold
Definition: svlCCCalibrationGrid.h:69
std::vector< cv::Point3f > groundTruthCalibrationGridPoints
Definition: svlCCCalibrationGrid.h:56
void compareGroundTruth()