10 #ifndef INTERNAL_CHECKERBOARD_INCL_H
11 #define INTERNAL_CHECKERBOARD_INCL_H
14 #include <mrpt/otherlibs/do_opencv_includes.h>
59 CvCBQuad() :
count(0),group_idx(0),edge_len(0),labeled(false),area(0.0), area_ratio(1.0)
79 std::vector<CvPoint2D32f> &out_corners);
85 std::vector< std::vector<CvPoint2D32f> > &out_corners);
91 int icvGenerateQuads( std::vector<CvCBQuadPtr> &quads, std::vector<CvCBCornerPtr> &corners,
98 std::vector<CvCBQuadPtr> &old_quads,
int old_dilation );
101 std::vector<CvCBQuadPtr> &in_quads,
102 std::vector<CvCBQuadPtr> &out_quad_group,
104 const int dilation );
106 void mrLabelQuadGroup( std::vector<CvCBQuadPtr> &quad_group,
const CvSize &pattern_size,
bool firstRun );
112 int myQuads2Points(
const std::vector<CvCBQuadPtr> &output_quads,
const CvSize &pattern_size, std::vector<CvPoint2D32f> &out_corners);
119 IplConvKernel *kernel_cross,
120 IplConvKernel *kernel_rect,
121 IplConvKernel *kernel_diag1,
122 IplConvKernel *kernel_diag2,
123 IplConvKernel *kernel_horz,
124 IplConvKernel *kernel_vert
void icvCleanFoundConnectedQuads(std::vector< CvCBQuadPtr > &quads, const CvSize &pattern_size)
void mrFindQuadNeighbors2(std::vector< CvCBQuadPtr > &quads, int dilation)
int myQuads2Points(const std::vector< CvCBQuadPtr > &output_quads, const CvSize &pattern_size, std::vector< CvPoint2D32f > &out_corners)
int icvGenerateQuads(std::vector< CvCBQuadPtr > &quads, std::vector< CvCBCornerPtr > &corners, const mrpt::utils::CImage &img, int flags, int dilation, bool firstRun)
int mrAugmentBestRun(std::vector< CvCBQuadPtr > &new_quads, int new_dilation, std::vector< CvCBQuadPtr > &old_quads, int old_dilation)
void quadListMakeUnique(std::vector< CvCBQuadPtr > &quads)
void icvFindConnectedQuads(std::vector< CvCBQuadPtr > &in_quads, std::vector< CvCBQuadPtr > &out_quad_group, const int group_idx, const int dilation)
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)
bool find_chessboard_corners_multiple(const mrpt::utils::CImage &img_, CvSize pattern_size, std::vector< std::vector< CvPoint2D32f > > &out_corners)
std::shared_ptr< CvCBQuad > CvCBQuadPtr
std::shared_ptr< CvCBCorner > CvCBCornerPtr
void mrLabelQuadGroup(std::vector< CvCBQuadPtr > &quad_group, const CvSize &pattern_size, bool firstRun)
A class for storing images as grayscale or RGB bitmaps.
GLenum GLenum GLvoid * row
GLenum GLenum GLvoid GLvoid * column
GLuint GLuint GLsizei count