39 #ifndef VPPLANAROBJECTDETECTOR_H_ 40 #define VPPLANAROBJECTDETECTOR_H_ 42 #include <visp3/core/vpConfig.h> 44 #if (VISP_HAVE_OPENCV_VERSION >= 0x020000) && \ 45 (VISP_HAVE_OPENCV_VERSION < 0x030000) // Require opencv >= 2.0.0 and < 3.0.0 47 #if (VISP_HAVE_OPENCV_VERSION >= 0x020101) // Require opencv >= 2.1.1 48 #include <opencv2/calib3d/calib3d.hpp> 49 #include <opencv2/features2d/features2d.hpp> 50 #include <opencv2/imgproc/imgproc.hpp> 51 #elif (VISP_HAVE_OPENCV_VERSION >= 0x020000) // Require opencv >= 2.0.0 56 #include <visp3/core/vpCameraParameters.h> 57 #include <visp3/core/vpHomogeneousMatrix.h> 58 #include <visp3/core/vpImage.h> 59 #include <visp3/core/vpImagePoint.h> 60 #include <visp3/core/vpPoint.h> 61 #include <visp3/core/vpRect.h> 62 #include <visp3/vision/vpFernClassifier.h> 63 #include <visp3/vision/vpHomography.h> 193 const unsigned int width);
196 void recordDetector(
const std::string &objectName,
const std::string &dataFile);
197 void load(
const std::string &dataFilename,
const std::string &objName);
209 std::vector<vpImagePoint> getDetectedCorners()
const;
231 inline unsigned int getNbRefPoints() {
return (
unsigned int)currentImagePoints.size(); }
241 void getReferencePoint(
const unsigned int _i,
vpImagePoint &_imPoint);
274 void computeRoi(
vpImagePoint *ip,
const unsigned int nbpt);
275 void initialiseRefCorners(
const cv::Rect &_modelROI);
unsigned int getNbRefPoints()
vpFernClassifier & getFernClassifier()
std::vector< cv::Point2f > ref_corners
The corners in the reference image.
cv::Rect modelROI
The ROI for the reference image.
cv::Mat H
Computed homography in the OpenCV format.
void setMinNbPointValidation(const unsigned int _min)
Implementation of an homography and operations on homographies.
std::vector< cv::Point2f > dst_corners
std::vector< vpImagePoint > currentImagePoints
vpHomography homography
Computed homography in the ViSP format.
unsigned int getMinNbPointValidation() const
bool isCorrect
Flag to indicate wether the last computed homography is correct or not.
unsigned int minNbMatching
Defines a rectangle in the plane.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
Class used to detect a planar surface.
void getHomography(vpHomography &_H) const
std::vector< vpImagePoint > refImagePoints
Class that implements the Fern classifier and the YAPE detector thanks to the OpenCV library...