#include "vision-precomp.h"
#include <stack>
#include "checkerboard_ocamcalib_detector.h"
#include <mrpt/utils/CArray.h>
#include <map>
Go to the source code of this file.
Macros | |
#define | MAX_CONTOUR_APPROX 7 |
Functions | |
bool | do_special_dilation (mrpt::utils::CImage &thresh_img, const int dilations, IplConvKernel *kernel_cross, IplConvKernel *kernel_rect, IplConvKernel *kernel_diag1, IplConvKernel *kernel_diag2, IplConvKernel *kernel_horz, IplConvKernel *kernel_vert) |
int | cvFindChessboardCorners3 (const mrpt::utils::CImage &img_, CvSize pattern_size, std::vector< CvPoint2D32f > &out_corners) |
double | triangleArea (double x0, double y0, double x1, double y1, double x2, double y2) |
double | median (const std::vector< double > &vec) |
void | icvCleanFoundConnectedQuads (std::vector< CvCBQuadPtr > &quad_group, const CvSize &pattern_size) |
void | icvFindConnectedQuads (std::vector< CvCBQuadPtr > &quad, std::vector< CvCBQuadPtr > &out_group, const int group_idx, const int dilation) |
void | mrLabelQuadGroup (std::vector< CvCBQuadPtr > &quad_group, const CvSize &pattern_size, bool firstRun) |
void | mrFindQuadNeighbors2 (std::vector< CvCBQuadPtr > &quads, int dilation) |
int | mrAugmentBestRun (std::vector< CvCBQuadPtr > &new_quads, int new_dilation, std::vector< CvCBQuadPtr > &old_quads, int old_dilation) |
int | icvGenerateQuads (vector< CvCBQuadPtr > &out_quads, vector< CvCBCornerPtr > &out_corners, const mrpt::utils::CImage &image, int flags, int dilation, bool firstRun) |
int | myQuads2Points (const std::vector< CvCBQuadPtr > &output_quads, const CvSize &pattern_size, std::vector< CvPoint2D32f > &out_corners) |
void | quadListMakeUnique (std::vector< CvCBQuadPtr > &quads) |
#define MAX_CONTOUR_APPROX 7 |
Definition at line 66 of file checkerboard_ocamcalib_detector.cpp.
Referenced by icvGenerateQuads().
int cvFindChessboardCorners3 | ( | const mrpt::utils::CImage & | img_, |
CvSize | pattern_size, | ||
std::vector< CvPoint2D32f > & | out_corners | ||
) |
Definition at line 193 of file checkerboard_ocamcalib_detector.cpp.
References CH_GRAY, do_special_dilation(), mrpt::utils::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::format(), mrpt::mrpt::format(), icvCleanFoundConnectedQuads(), icvFindConnectedQuads(), icvGenerateQuads(), MIN, mrAugmentBestRun(), mrFindQuadNeighbors2(), mrLabelQuadGroup(), myQuads2Points(), and mrpt::system::os::sprintf().
Referenced by mrpt::vision::findChessboardCorners().
bool do_special_dilation | ( | mrpt::utils::CImage & | thresh_img, |
const int | dilations, | ||
IplConvKernel * | kernel_cross, | ||
IplConvKernel * | kernel_rect, | ||
IplConvKernel * | kernel_diag1, | ||
IplConvKernel * | kernel_diag2, | ||
IplConvKernel * | kernel_horz, | ||
IplConvKernel * | kernel_vert | ||
) |
Definition at line 70 of file checkerboard_ocamcalib_detector.cpp.
References mrpt::utils::CImage::getAs().
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
void icvCleanFoundConnectedQuads | ( | std::vector< CvCBQuadPtr > & | quad_group, |
const CvSize & | pattern_size | ||
) |
Definition at line 767 of file checkerboard_ocamcalib_detector.cpp.
References median(), and triangleArea().
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
void icvFindConnectedQuads | ( | std::vector< CvCBQuadPtr > & | quad, |
std::vector< CvCBQuadPtr > & | out_group, | ||
const int | group_idx, | ||
const int | dilation | ||
) |
Definition at line 953 of file checkerboard_ocamcalib_detector.cpp.
References MRPT_UNUSED_PARAM.
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
int icvGenerateQuads | ( | vector< CvCBQuadPtr > & | out_quads, |
vector< CvCBCornerPtr > & | out_corners, | ||
const mrpt::utils::CImage & | image, | ||
int | flags, | ||
int | dilation, | ||
bool | firstRun | ||
) |
(flags & CV_CALIB_CB_FILTER_QUADS) ||
Definition at line 1988 of file checkerboard_ocamcalib_detector.cpp.
References CvContourEx::counter, MAX_CONTOUR_APPROX, and MRPT_UNUSED_PARAM.
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
double median | ( | const std::vector< double > & | vec | ) |
Definition at line 754 of file checkerboard_ocamcalib_detector.cpp.
Referenced by icvCleanFoundConnectedQuads().
int mrAugmentBestRun | ( | std::vector< CvCBQuadPtr > & | new_quads, |
int | new_dilation, | ||
std::vector< CvCBQuadPtr > & | old_quads, | ||
int | old_dilation | ||
) |
Definition at line 1652 of file checkerboard_ocamcalib_detector.cpp.
References mrpt::obs::gnss::a1, mrpt::obs::gnss::a2, mrpt::obs::gnss::a3, mrpt::obs::gnss::b1, mrpt::obs::gnss::b2, and mrpt::obs::gnss::b3.
Referenced by cvFindChessboardCorners3().
void mrFindQuadNeighbors2 | ( | std::vector< CvCBQuadPtr > & | quads, |
int | dilation | ||
) |
Definition at line 1428 of file checkerboard_ocamcalib_detector.cpp.
References mrpt::obs::gnss::a1, mrpt::obs::gnss::a2, mrpt::obs::gnss::a3, mrpt::obs::gnss::b1, mrpt::obs::gnss::b2, and mrpt::obs::gnss::b3.
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
void mrLabelQuadGroup | ( | std::vector< CvCBQuadPtr > & | quad_group, |
const CvSize & | pattern_size, | ||
bool | firstRun | ||
) |
Definition at line 1011 of file checkerboard_ocamcalib_detector.cpp.
References min.
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
int myQuads2Points | ( | const std::vector< CvCBQuadPtr > & | output_quads, |
const CvSize & | pattern_size, | ||
std::vector< CvPoint2D32f > & | out_corners | ||
) |
Definition at line 2165 of file checkerboard_ocamcalib_detector.cpp.
Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().
void quadListMakeUnique | ( | std::vector< CvCBQuadPtr > & | quads | ) |
Definition at line 2333 of file checkerboard_ocamcalib_detector.cpp.
Referenced by find_chessboard_corners_multiple().
double triangleArea | ( | double | x0, |
double | y0, | ||
double | x1, | ||
double | y1, | ||
double | x2, | ||
double | y2 | ||
) |
Definition at line 746 of file checkerboard_ocamcalib_detector.cpp.
Referenced by icvCleanFoundConnectedQuads().
Page generated by Doxygen 1.8.14 for MRPT 1.5.9 Git: 690a4699f Wed Apr 15 19:29:53 2020 +0200 at miƩ abr 15 19:30:12 CEST 2020 |