MRPT  1.9.9
Classes | Macros | Functions
checkerboard_ocamcalib_detector.h File Reference
#include <mrpt/3rdparty/do_opencv_includes.h>
#include <mrpt/img/CImage.h>
#include <cmath>
#include <cstdio>
#include <memory>
Include dependency graph for checkerboard_ocamcalib_detector.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  CvContourEx
 
struct  CvCBCorner
 
struct  CvCBQuad
 

Macros

#define VIS   0
 

Functions

int cvFindChessboardCorners3 (const mrpt::img::CImage &img_, CvSize pattern_size, std::vector< CvPoint2D32f > &out_corners)
 
bool find_chessboard_corners_multiple (const mrpt::img::CImage &img_, CvSize pattern_size, std::vector< std::vector< CvPoint2D32f >> &out_corners)
 
int icvGenerateQuads (std::vector< CvCBQuad::Ptr > &quads, std::vector< CvCBCorner::Ptr > &corners, const mrpt::img::CImage &img, int flags, int dilation, bool firstRun)
 
void mrFindQuadNeighbors2 (std::vector< CvCBQuad::Ptr > &quads, int dilation)
 
int mrAugmentBestRun (std::vector< CvCBQuad::Ptr > &new_quads, int new_dilation, std::vector< CvCBQuad::Ptr > &old_quads, int old_dilation)
 
void icvFindConnectedQuads (std::vector< CvCBQuad::Ptr > &in_quads, std::vector< CvCBQuad::Ptr > &out_quad_group, const int group_idx, const int dilation)
 
void mrLabelQuadGroup (std::vector< CvCBQuad::Ptr > &quad_group, const CvSize &pattern_size, bool firstRun)
 
void icvCleanFoundConnectedQuads (std::vector< CvCBQuad::Ptr > &quads, const CvSize &pattern_size)
 
int myQuads2Points (const std::vector< CvCBQuad::Ptr > &output_quads, const CvSize &pattern_size, std::vector< CvPoint2D32f > &out_corners)
 
void quadListMakeUnique (std::vector< CvCBQuad::Ptr > &quads)
 
bool do_special_dilation (mrpt::img::CImage &thresh_img, const int dilations, IplConvKernel *kernel_cross, IplConvKernel *kernel_rect, IplConvKernel *kernel_diag1, IplConvKernel *kernel_diag2, IplConvKernel *kernel_horz, IplConvKernel *kernel_vert)
 

Macro Definition Documentation

◆ VIS

#define VIS   0

Definition at line 25 of file checkerboard_ocamcalib_detector.h.

Function Documentation

◆ cvFindChessboardCorners3()

int cvFindChessboardCorners3 ( const mrpt::img::CImage img_,
CvSize  pattern_size,
std::vector< CvPoint2D32f > &  out_corners 
)

Definition at line 225 of file checkerboard_ocamcalib_detector.cpp.

References mrpt::img::CImage::asCvMat(), mrpt::img::CH_GRAY, do_special_dilation(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), icvCleanFoundConnectedQuads(), icvFindConnectedQuads(), icvGenerateQuads(), mrAugmentBestRun(), mrFindQuadNeighbors2(), mrLabelQuadGroup(), myQuads2Points(), and mrpt::img::SHALLOW_COPY.

Referenced by mrpt::vision::findChessboardCorners().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ do_special_dilation()

bool do_special_dilation ( mrpt::img::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 82 of file checkerboard_ocamcalib_detector.cpp.

References mrpt::img::CImage::asCvMat(), and mrpt::img::SHALLOW_COPY.

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ find_chessboard_corners_multiple()

bool find_chessboard_corners_multiple ( const mrpt::img::CImage img_,
CvSize  pattern_size,
std::vector< std::vector< CvPoint2D32f >> &  out_corners 
)

Definition at line 35 of file checkerboard_multiple_detector.cpp.

References mrpt::img::CImage::asCvMat(), mrpt::img::CH_GRAY, mrpt::img::CImage::clear(), CvCBQuad::corners, mrpt::math::distance(), do_special_dilation(), mrpt::img::FAST_REF_OR_CONVERT_TO_GRAY, mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), icvCleanFoundConnectedQuads(), icvFindConnectedQuads(), icvGenerateQuads(), mrpt::keep_min(), mrpt::math::kmeanspp(), mrFindQuadNeighbors2(), mrLabelQuadGroup(), myQuads2Points(), quadListMakeUnique(), and mrpt::img::SHALLOW_COPY.

Referenced by mrpt::vision::findMultipleChessboardsCorners().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ icvCleanFoundConnectedQuads()

void icvCleanFoundConnectedQuads ( std::vector< CvCBQuad::Ptr > &  quads,
const CvSize &  pattern_size 
)

Definition at line 545 of file checkerboard_ocamcalib_detector.cpp.

References median(), and triangleArea().

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ icvFindConnectedQuads()

void icvFindConnectedQuads ( std::vector< CvCBQuad::Ptr > &  in_quads,
std::vector< CvCBQuad::Ptr > &  out_quad_group,
const int  group_idx,
const int  dilation 
)

Definition at line 715 of file checkerboard_ocamcalib_detector.cpp.

References MRPT_UNUSED_PARAM.

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the caller graph for this function:

◆ icvGenerateQuads()

int icvGenerateQuads ( std::vector< CvCBQuad::Ptr > &  quads,
std::vector< CvCBCorner::Ptr > &  corners,
const mrpt::img::CImage img,
int  flags,
int  dilation,
bool  firstRun 
)

(flags & CV_CALIB_CB_FILTER_QUADS) ||

Definition at line 1878 of file checkerboard_ocamcalib_detector.cpp.

References mrpt::img::CImage::asCvMat(), CvContourEx::counter, mrpt::img::CImage::getHeight(), mrpt::img::CImage::getWidth(), MAX_CONTOUR_APPROX, MRPT_UNUSED_PARAM, and mrpt::img::SHALLOW_COPY.

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mrAugmentBestRun()

int mrAugmentBestRun ( std::vector< CvCBQuad::Ptr > &  new_quads,
int  new_dilation,
std::vector< CvCBQuad::Ptr > &  old_quads,
int  old_dilation 
)

Definition at line 1491 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().

Here is the caller graph for this function:

◆ mrFindQuadNeighbors2()

void mrFindQuadNeighbors2 ( std::vector< CvCBQuad::Ptr > &  quads,
int  dilation 
)

Definition at line 1230 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().

Here is the caller graph for this function:

◆ mrLabelQuadGroup()

void mrLabelQuadGroup ( std::vector< CvCBQuad::Ptr > &  quad_group,
const CvSize &  pattern_size,
bool  firstRun 
)

Definition at line 769 of file checkerboard_ocamcalib_detector.cpp.

References CvCBQuad::corners, CvCBQuad::count, and CvCBQuad::labeled.

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the caller graph for this function:

◆ myQuads2Points()

int myQuads2Points ( const std::vector< CvCBQuad::Ptr > &  output_quads,
const CvSize &  pattern_size,
std::vector< CvPoint2D32f > &  out_corners 
)

Definition at line 2056 of file checkerboard_ocamcalib_detector.cpp.

Referenced by cvFindChessboardCorners3(), and find_chessboard_corners_multiple().

Here is the caller graph for this function:

◆ quadListMakeUnique()

void quadListMakeUnique ( std::vector< CvCBQuad::Ptr > &  quads)

Definition at line 2240 of file checkerboard_ocamcalib_detector.cpp.

Referenced by find_chessboard_corners_multiple().

Here is the caller graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 3a26b90fd Wed Mar 25 20:17:03 2020 +0100 at miƩ mar 25 23:05:41 CET 2020