EstervQrCode 1.1.1
Library for qr code manipulation
objdetect.hpp
1 /*M///////////////////////////////////////////////////////////////////////////////////////
2 //
3 // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
4 //
5 // By downloading, copying, installing or using the software you agree to this license.
6 // If you do not agree to this license, do not download, install,
7 // copy or use the software.
8 //
9 //
10 // License Agreement
11 // For Open Source Computer Vision Library
12 //
13 // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
14 // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
15 // Copyright (C) 2013, OpenCV Foundation, all rights reserved.
16 // Third party copyrights are property of their respective owners.
17 //
18 // Redistribution and use in source and binary forms, with or without modification,
19 // are permitted provided that the following conditions are met:
20 //
21 // * Redistribution's of source code must retain the above copyright notice,
22 // this list of conditions and the following disclaimer.
23 //
24 // * Redistribution's in binary form must reproduce the above copyright notice,
25 // this list of conditions and the following disclaimer in the documentation
26 // and/or other materials provided with the distribution.
27 //
28 // * The name of the copyright holders may not be used to endorse or promote products
29 // derived from this software without specific prior written permission.
30 //
31 // This software is provided by the copyright holders and contributors "as is" and
32 // any express or implied warranties, including, but not limited to, the implied
33 // warranties of merchantability and fitness for a particular purpose are disclaimed.
34 // In no event shall the Intel Corporation or contributors be liable for any direct,
35 // indirect, incidental, special, exemplary, or consequential damages
36 // (including, but not limited to, procurement of substitute goods or services;
37 // loss of use, data, or profits; or business interruption) however caused
38 // and on any theory of liability, whether in contract, strict liability,
39 // or tort (including negligence or otherwise) arising in any way out of
40 // the use of this software, even if advised of the possibility of such damage.
41 //
42 //M*/
43 
44 #ifndef OPENCV_OBJDETECT_HPP
45 #define OPENCV_OBJDETECT_HPP
46 
47 #include "opencv2/core.hpp"
48 #include "opencv2/objdetect/aruco_detector.hpp"
49 #include "opencv2/objdetect/graphical_code_detector.hpp"
50 
136 typedef struct CvHaarClassifierCascade CvHaarClassifierCascade;
137 
138 namespace cv
139 {
140 
143 
145 
151 {
152 public:
153  SimilarRects(double _eps) : eps(_eps) {}
154  inline bool operator()(const Rect& r1, const Rect& r2) const
155  {
156  double delta = eps * ((std::min)(r1.width, r2.width) + (std::min)(r1.height, r2.height)) * 0.5;
157  return std::abs(r1.x - r2.x) <= delta &&
158  std::abs(r1.y - r2.y) <= delta &&
159  std::abs(r1.x + r1.width - r2.x - r2.width) <= delta &&
160  std::abs(r1.y + r1.height - r2.y - r2.height) <= delta;
161  }
162  double eps;
163 };
164 
180 CV_EXPORTS void groupRectangles(std::vector<Rect>& rectList, int groupThreshold, double eps = 0.2);
183  int groupThreshold, double eps = 0.2);
185 CV_EXPORTS void groupRectangles(std::vector<Rect>& rectList, int groupThreshold,
186  double eps, std::vector<int>* weights, std::vector<double>* levelWeights );
189  std::vector<double>& levelWeights, int groupThreshold, double eps = 0.2);
192  std::vector<double>& foundScales,
193  double detectThreshold = 0.0, Size winDetSize = Size(64, 128));
195 
198 
199 template<> struct DefaultDeleter<CvHaarClassifierCascade>{ CV_EXPORTS void operator ()(CvHaarClassifierCascade* obj) const; };
200 
205  };
206 
208 {
209 public:
211  virtual bool empty() const CV_OVERRIDE = 0;
212  virtual bool load( const String& filename ) = 0;
213  virtual void detectMultiScale( InputArray image,
214  CV_OUT std::vector<Rect>& objects,
215  double scaleFactor,
216  int minNeighbors, int flags,
217  Size minSize, Size maxSize ) = 0;
218 
219  virtual void detectMultiScale( InputArray image,
220  CV_OUT std::vector<Rect>& objects,
221  CV_OUT std::vector<int>& numDetections,
222  double scaleFactor,
223  int minNeighbors, int flags,
224  Size minSize, Size maxSize ) = 0;
225 
226  virtual void detectMultiScale( InputArray image,
227  CV_OUT std::vector<Rect>& objects,
228  CV_OUT std::vector<int>& rejectLevels,
229  CV_OUT std::vector<double>& levelWeights,
230  double scaleFactor,
231  int minNeighbors, int flags,
232  Size minSize, Size maxSize,
233  bool outputRejectLevels ) = 0;
234 
235  virtual bool isOldFormatCascade() const = 0;
236  virtual Size getOriginalWindowSize() const = 0;
237  virtual int getFeatureType() const = 0;
238  virtual void* getOldCascade() = 0;
239 
241  {
242  public:
243  virtual ~MaskGenerator() {}
244  virtual Mat generateMask(const Mat& src)=0;
245  virtual void initializeMask(const Mat& /*src*/) { }
246  };
247  virtual void setMaskGenerator(const Ptr<MaskGenerator>& maskGenerator) = 0;
249 };
250 
258 {
259 public:
269  CV_WRAP bool empty() const;
276  CV_WRAP bool load( const String& filename );
281  CV_WRAP bool read( const FileNode& node );
282 
298  CV_OUT std::vector<Rect>& objects,
299  double scaleFactor = 1.1,
300  int minNeighbors = 3, int flags = 0,
301  Size minSize = Size(),
302  Size maxSize = Size() );
303 
319  CV_WRAP_AS(detectMultiScale2) void detectMultiScale( InputArray image,
321  CV_OUT std::vector<int>& numDetections,
322  double scaleFactor=1.1,
323  int minNeighbors=3, int flags=0,
324  Size minSize=Size(),
325  Size maxSize=Size() );
326 
344  CV_WRAP_AS(detectMultiScale3) void detectMultiScale( InputArray image,
345  CV_OUT std::vector<Rect>& objects,
346  CV_OUT std::vector<int>& rejectLevels,
348  double scaleFactor = 1.1,
349  int minNeighbors = 3, int flags = 0,
350  Size minSize = Size(),
351  Size maxSize = Size(),
352  bool outputRejectLevels = false );
353 
356  CV_WRAP int getFeatureType() const;
357  void* getOldCascade();
358 
359  CV_WRAP static bool convert(const String& oldcascade, const String& newcascade);
360 
363 
365 };
366 
369 
373 
376 {
378  double scale;
383 };
384 
403 {
404 public:
405  enum HistogramNormType { L2Hys = 0
406  };
407  enum { DEFAULT_NLEVELS = 64
408  };
409  enum DescriptorStorageFormat { DESCR_FORMAT_COL_BY_COL, DESCR_FORMAT_ROW_BY_ROW };
410 
415  CV_WRAP HOGDescriptor() : winSize(64,128), blockSize(16,16), blockStride(8,8),
416  cellSize(8,8), nbins(9), derivAperture(1), winSigma(-1),
417  histogramNormType(HOGDescriptor::L2Hys), L2HysThreshold(0.2), gammaCorrection(true),
418  free_coef(-1.f), nlevels(HOGDescriptor::DEFAULT_NLEVELS), signedGradient(false)
419  {}
420 
435  CV_WRAP HOGDescriptor(Size _winSize, Size _blockSize, Size _blockStride,
436  Size _cellSize, int _nbins, int _derivAperture=1, double _winSigma=-1,
438  double _L2HysThreshold=0.2, bool _gammaCorrection=false,
439  int _nlevels=HOGDescriptor::DEFAULT_NLEVELS, bool _signedGradient=false)
440  : winSize(_winSize), blockSize(_blockSize), blockStride(_blockStride), cellSize(_cellSize),
441  nbins(_nbins), derivAperture(_derivAperture), winSigma(_winSigma),
442  histogramNormType(_histogramNormType), L2HysThreshold(_L2HysThreshold),
443  gammaCorrection(_gammaCorrection), free_coef(-1.f), nlevels(_nlevels), signedGradient(_signedGradient)
444  {}
445 
452  {
453  load(filename);
454  }
455 
460  {
461  d.copyTo(*this);
462  }
463 
466  virtual ~HOGDescriptor() {}
467 
470  CV_WRAP size_t getDescriptorSize() const;
471 
475 
478  CV_WRAP double getWinSigma() const;
479 
485  CV_WRAP virtual void setSVMDetector(InputArray svmdetector);
486 
490  virtual bool read(FileNode& fn);
491 
496  virtual void write(FileStorage& fs, const String& objname) const;
497 
502  CV_WRAP virtual bool load(const String& filename, const String& objname = String());
503 
508  CV_WRAP virtual void save(const String& filename, const String& objname = String()) const;
509 
513  virtual void copyTo(HOGDescriptor& c) const;
514 
524  CV_WRAP virtual void compute(InputArray img,
525  CV_OUT std::vector<float>& descriptors,
526  Size winStride = Size(), Size padding = Size(),
527  const std::vector<Point>& locations = std::vector<Point>()) const;
528 
540  CV_WRAP virtual void detect(InputArray img, CV_OUT std::vector<Point>& foundLocations,
541  CV_OUT std::vector<double>& weights,
542  double hitThreshold = 0, Size winStride = Size(),
543  Size padding = Size(),
544  const std::vector<Point>& searchLocations = std::vector<Point>()) const;
545 
556  virtual void detect(InputArray img, CV_OUT std::vector<Point>& foundLocations,
557  double hitThreshold = 0, Size winStride = Size(),
558  Size padding = Size(),
559  const std::vector<Point>& searchLocations=std::vector<Point>()) const;
560 
576  CV_WRAP virtual void detectMultiScale(InputArray img, CV_OUT std::vector<Rect>& foundLocations,
577  CV_OUT std::vector<double>& foundWeights, double hitThreshold = 0,
578  Size winStride = Size(), Size padding = Size(), double scale = 1.05,
579  double groupThreshold = 2.0, bool useMeanshiftGrouping = false) const;
580 
595  virtual void detectMultiScale(InputArray img, CV_OUT std::vector<Rect>& foundLocations,
596  double hitThreshold = 0, Size winStride = Size(),
597  Size padding = Size(), double scale = 1.05,
598  double groupThreshold = 2.0, bool useMeanshiftGrouping = false) const;
599 
608  Size paddingTL = Size(), Size paddingBR = Size()) const;
609 
613 
619 
622 
625 
628 
631 
634 
637 
640 
643 
646 
649 
652 
655 
657  float free_coef;
658 
661 
664 
676  virtual void detectROI(InputArray img, const std::vector<cv::Point> &locations,
677  CV_OUT std::vector<cv::Point>& foundLocations, CV_OUT std::vector<double>& confidences,
678  double hitThreshold = 0, cv::Size winStride = Size(),
679  cv::Size padding = Size()) const;
680 
689  virtual void detectMultiScaleROI(InputArray img,
690  CV_OUT std::vector<cv::Rect>& foundLocations,
691  std::vector<DetectionROI>& locations,
692  double hitThreshold = 0,
693  int groupThreshold = 0) const;
694 
701  void groupRectangles(std::vector<cv::Rect>& rectList, std::vector<double>& weights, int groupThreshold, double eps) const;
702 };
704 
707 
709 protected:
710  QRCodeEncoder(); // use ::create()
711 public:
712  virtual ~QRCodeEncoder();
713 
714  enum EncodeMode {
715  MODE_AUTO = -1,
716  MODE_NUMERIC = 1, // 0b0001
717  MODE_ALPHANUMERIC = 2, // 0b0010
718  MODE_BYTE = 4, // 0b0100
719  MODE_ECI = 7, // 0b0111
720  MODE_KANJI = 8, // 0b1000
721  MODE_STRUCTURED_APPEND = 3 // 0b0011
722  };
723 
725  CORRECT_LEVEL_L = 0,
726  CORRECT_LEVEL_M = 1,
727  CORRECT_LEVEL_Q = 2,
728  CORRECT_LEVEL_H = 3
729  };
730 
732  ECI_UTF8 = 26
733  };
734 
737  {
739 
742 
745 
748 
751  };
752 
756  static CV_WRAP
758 
763  CV_WRAP virtual void encode(const String& encoded_info, OutputArray qrcode) = 0;
764 
769  CV_WRAP virtual void encodeStructuredAppend(const String& encoded_info, OutputArrayOfArrays qrcodes) = 0;
770 
771 };
773 {
774 public:
776 
787 
792  CV_WRAP QRCodeDetector& setUseAlignmentMarkers(bool useAlignmentMarkers);
793 
802 
810  OutputArray straight_qrcode = noArray());
811 };
812 
814 public:
816 
819 
822 
825 
828 
834 
837 
840 
847  };
848 
851 
854 
857 
860 
863 };
864 
866 }
867 
868 #include "opencv2/objdetect/detection_based_tracker.hpp"
869 #include "opencv2/objdetect/face.hpp"
870 #include "opencv2/objdetect/charuco_detector.hpp"
871 #include "opencv2/objdetect/barcode.hpp"
872 
873 #endif
This is a base class for all more or less complex algorithms in OpenCV.
Definition: core.hpp:3197
Definition: objdetect.hpp:241
virtual void initializeMask(const Mat &)
Definition: objdetect.hpp:245
virtual ~MaskGenerator()
Definition: objdetect.hpp:243
virtual Mat generateMask(const Mat &src)=0
Definition: objdetect.hpp:208
virtual bool empty() const CV_OVERRIDE=0
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read.
virtual Ptr< MaskGenerator > getMaskGenerator()=0
virtual void setMaskGenerator(const Ptr< MaskGenerator > &maskGenerator)=0
Cascade classifier class for object detection.
Definition: objdetect.hpp:258
Ptr< BaseCascadeClassifier > cc
Definition: objdetect.hpp:364
CV_WRAP int getFeatureType() const
CV_WRAP void detectMultiScale(InputArray image, CV_OUT std::vector< Rect > &objects, double scaleFactor=1.1, int minNeighbors=3, int flags=0, Size minSize=Size(), Size maxSize=Size())
Detects objects of different sizes in the input image. The detected objects are returned as a list of...
CV_WRAP bool empty() const
Checks whether the classifier has been loaded.
CV_WRAP bool isOldFormatCascade() const
CV_WRAP CascadeClassifier(const String &filename)
Loads a classifier from a file.
CV_WRAP_AS(detectMultiScale3) void detectMultiScale(InputArray image
CV_WRAP Size getOriginalWindowSize() const
CV_WRAP CascadeClassifier()
void setMaskGenerator(const Ptr< BaseCascadeClassifier::MaskGenerator > &maskGenerator)
CV_WRAP bool load(const String &filename)
Loads a classifier from a file.
CV_WRAP bool read(const FileNode &node)
Reads a classifier from a FileStorage node.
Ptr< BaseCascadeClassifier::MaskGenerator > getMaskGenerator()
CV_WRAP_AS(detectMultiScale2) void detectMultiScale(InputArray image
static CV_WRAP bool convert(const String &oldcascade, const String &newcascade)
File Storage Node class.
Definition: persistence.hpp:482
XML/YAML/JSON file storage class that encapsulates all the information necessary for writing or readi...
Definition: persistence.hpp:304
Definition: graphical_code_detector.hpp:14
n-dimensional dense array class
Definition: mat.hpp:812
Definition: objdetect.hpp:813
CV_WRAP QRCodeDetectorAruco(const QRCodeDetectorAruco::Params &params)
QR code detector constructor for Aruco-based algorithm. See cv::QRCodeDetectorAruco::Params.
CV_WRAP const aruco::DetectorParameters & getArucoParameters() const
Aruco detector parameters are used to search for the finder patterns.
CV_WRAP const QRCodeDetectorAruco::Params & getDetectorParameters() const
Detector parameters getter. See cv::QRCodeDetectorAruco::Params.
CV_WRAP void setArucoParameters(const aruco::DetectorParameters &params)
Aruco detector parameters are used to search for the finder patterns.
CV_WRAP QRCodeDetectorAruco & setDetectorParameters(const QRCodeDetectorAruco::Params &params)
Detector parameters setter. See cv::QRCodeDetectorAruco::Params.
Definition: objdetect.hpp:773
CV_WRAP QRCodeDetector & setEpsX(double epsX)
sets the epsilon used during the horizontal scan of QR code stop marker detection.
CV_WRAP std::string detectAndDecodeCurved(InputArray img, OutputArray points=noArray(), OutputArray straight_qrcode=noArray())
Both detects and decodes QR code on a curved surface.
CV_WRAP cv::String decodeCurved(InputArray img, InputArray points, OutputArray straight_qrcode=noArray())
Decodes QR code on a curved surface in image once it's found by the detect() method.
CV_WRAP QRCodeDetector & setUseAlignmentMarkers(bool useAlignmentMarkers)
use markers to improve the position of the corners of the QR code
CV_WRAP QRCodeDetector & setEpsY(double epsY)
sets the epsilon used during the vertical scan of QR code stop marker detection.
CV_WRAP QRCodeDetector()
Definition: objdetect.hpp:708
virtual ~QRCodeEncoder()
static CV_WRAP Ptr< QRCodeEncoder > create(const QRCodeEncoder::Params &parameters=QRCodeEncoder::Params())
Constructor.
ECIEncodings
Definition: objdetect.hpp:731
virtual CV_WRAP void encode(const String &encoded_info, OutputArray qrcode)=0
Generates QR code from input string.
EncodeMode
Definition: objdetect.hpp:714
virtual CV_WRAP void encodeStructuredAppend(const String &encoded_info, OutputArrayOfArrays qrcodes)=0
Generates QR code from input string in Structured Append mode. The encoded message is splitting over ...
CorrectionLevel
Definition: objdetect.hpp:724
Template class for 2D rectangles.
Definition: types.hpp:444
_Tp x
x coordinate of the top-left corner
Definition: types.hpp:480
_Tp y
y coordinate of the top-left corner
Definition: types.hpp:481
_Tp width
width of the rectangle
Definition: types.hpp:482
_Tp height
height of the rectangle
Definition: types.hpp:483
This class is used for grouping object candidates detected by Cascade Classifier, HOG etc.
Definition: objdetect.hpp:151
double eps
Definition: objdetect.hpp:162
SimilarRects(double _eps)
Definition: objdetect.hpp:153
bool operator()(const Rect &r1, const Rect &r2) const
Definition: objdetect.hpp:154
Template class for specifying the size of an image or rectangle.
Definition: types.hpp:335
Definition: mat.hpp:2433
Definition: mat.hpp:387
This type is very similar to InputArray except that it is used for input/output and output function p...
Definition: mat.hpp:296
InputArrayOfArrays Size InputOutputArray InputOutputArray OutputArrayOfArrays OutputArrayOfArrays OutputArray OutputArray OutputArray int flags
Definition: calib3d.hpp:1617
std::string String
Definition: cvstd.hpp:151
Size2i Size
Definition: types.hpp:370
CV_EXPORTS InputOutputArray noArray()
CV__DEBUG_NS_END typedef const _InputArray & InputArray
Definition: mat.hpp:442
CvScalar scale
Definition: core_c.h:1088
const char const char ** filename
Definition: core_c.h:2630
softfloat abs(softfloat a)
Absolute value.
Definition: softfloat.hpp:444
#define CV_EXPORTS_W_SIMPLE
Definition: cvdef.h:473
#define CV_EXPORTS
Definition: cvdef.h:435
#define CV_IN_OUT
Definition: cvdef.h:477
#define CV_OVERRIDE
Definition: cvdef.h:792
#define CV_OUT
Definition: cvdef.h:478
#define CV_EXPORTS_W
Definition: cvdef.h:472
#define CV_PROP
Definition: cvdef.h:479
#define CV_PROP_RW
Definition: cvdef.h:480
#define CV_WRAP
Definition: cvdef.h:481
CvSize int int int CvPoint int delta
Definition: imgproc_c.h:1168
int CvMemStorage int double eps
Definition: imgproc_c.h:493
CV_EXPORTS OutputArray int double double InputArray OutputArray int blockSize
Definition: imgproc.hpp:2132
CV_EXPORTS Ptr< BaseCascadeClassifier::MaskGenerator > createFaceDetectionMaskGenerator()
@ CASCADE_DO_CANNY_PRUNING
Definition: objdetect.hpp:201
@ CASCADE_SCALE_IMAGE
Definition: objdetect.hpp:202
@ CASCADE_FIND_BIGGEST_OBJECT
Definition: objdetect.hpp:203
@ CASCADE_DO_ROUGH_SEARCH
Definition: objdetect.hpp:204
CV_EXPORTS void groupRectangles_meanshift(std::vector< Rect > &rectList, std::vector< double > &foundWeights, std::vector< double > &foundScales, double detectThreshold=0.0, Size winDetSize=Size(64, 128))
CV_EXPORTS void groupRectangles(std::vector< Rect > &rectList, int groupThreshold, double eps=0.2)
Groups the object candidate rectangles.
T min(T... args)
"black box" representation of the file storage associated with a file on disk.
Definition: calib3d.hpp:441
Definition: cvstd_wrapper.hpp:32
struct for detection region of interest (ROI)
Definition: objdetect.hpp:376
std::vector< double > confidences
vector that will contain confidence values for each location
Definition: objdetect.hpp:382
double scale
scale(size) of the bounding box
Definition: objdetect.hpp:378
std::vector< cv::Point > locations
set of requested locations to be evaluated
Definition: objdetect.hpp:380
Implementation of HOG (Histogram of Oriented Gradients) descriptor and object detector.
Definition: objdetect.hpp:403
CV_PROP Size winSize
Detection window size. Align to block size and block stride. Default value is Size(64,...
Definition: objdetect.hpp:621
CV_WRAP size_t getDescriptorSize() const
Returns the number of coefficients required for the classification.
virtual void detectMultiScale(InputArray img, CV_OUT std::vector< Rect > &foundLocations, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), double scale=1.05, double groupThreshold=2.0, bool useMeanshiftGrouping=false) const
Detects objects of different sizes in the input image. The detected objects are returned as a list of...
DescriptorStorageFormat
Definition: objdetect.hpp:409
@ DESCR_FORMAT_COL_BY_COL
Definition: objdetect.hpp:409
CV_WRAP HOGDescriptor(const String &filename)
Definition: objdetect.hpp:451
CV_WRAP HOGDescriptor()
Creates the HOG descriptor and detector with default parameters.
Definition: objdetect.hpp:415
CV_PROP std::vector< float > svmDetector
coefficients for the linear SVM classifier.
Definition: objdetect.hpp:651
CV_WRAP bool checkDetectorSize() const
Checks if detector size equal to descriptor size.
static CV_WRAP std::vector< float > getDaimlerPeopleDetector()
Returns coefficients of the classifier trained for people detection (for 48x96 windows).
CV_PROP bool gammaCorrection
Flag to specify whether the gamma correction preprocessing is required or not.
Definition: objdetect.hpp:648
virtual bool read(FileNode &fn)
Reads HOGDescriptor parameters and coefficients for the linear SVM classifier from a file node.
virtual void write(FileStorage &fs, const String &objname) const
Stores HOGDescriptor parameters and coefficients for the linear SVM classifier in a file storage.
virtual CV_WRAP void compute(InputArray img, CV_OUT std::vector< float > &descriptors, Size winStride=Size(), Size padding=Size(), const std::vector< Point > &locations=std::vector< Point >()) const
Computes HOG descriptors of given image.
virtual CV_WRAP bool load(const String &filename, const String &objname=String())
loads HOGDescriptor parameters and coefficients for the linear SVM classifier from a file
UMat oclSvmDetector
coefficients for the linear SVM classifier used when OpenCL is enabled
Definition: objdetect.hpp:654
virtual CV_WRAP void save(const String &filename, const String &objname=String()) const
saves HOGDescriptor parameters and coefficients for the linear SVM classifier to a file
CV_PROP bool signedGradient
Indicates signed gradient will be used or not.
Definition: objdetect.hpp:663
CV_PROP int derivAperture
not documented
Definition: objdetect.hpp:636
CV_PROP int nlevels
Maximum number of detection window increases. Default value is 64.
Definition: objdetect.hpp:660
CV_PROP double L2HysThreshold
L2-Hys normalization method shrinkage.
Definition: objdetect.hpp:645
CV_WRAP HOGDescriptor(Size _winSize, Size _blockSize, Size _blockStride, Size _cellSize, int _nbins, int _derivAperture=1, double _winSigma=-1, HOGDescriptor::HistogramNormType _histogramNormType=HOGDescriptor::L2Hys, double _L2HysThreshold=0.2, bool _gammaCorrection=false, int _nlevels=HOGDescriptor::DEFAULT_NLEVELS, bool _signedGradient=false)
Definition: objdetect.hpp:435
float free_coef
not documented
Definition: objdetect.hpp:657
CV_PROP int nbins
Number of bins used in the calculation of histogram of gradients. Default value is 9.
Definition: objdetect.hpp:633
virtual ~HOGDescriptor()
Default destructor.
Definition: objdetect.hpp:466
virtual void detect(InputArray img, CV_OUT std::vector< Point > &foundLocations, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), const std::vector< Point > &searchLocations=std::vector< Point >()) const
Performs object detection without a multi-scale window.
CV_PROP double winSigma
Gaussian smoothing window parameter.
Definition: objdetect.hpp:639
CV_PROP HOGDescriptor::HistogramNormType histogramNormType
histogramNormType
Definition: objdetect.hpp:642
virtual CV_WRAP void computeGradient(InputArray img, InputOutputArray grad, InputOutputArray angleOfs, Size paddingTL=Size(), Size paddingBR=Size()) const
Computes gradients and quantized gradient orientations.
HistogramNormType
Definition: objdetect.hpp:405
@ L2Hys
Default histogramNormType.
Definition: objdetect.hpp:405
virtual CV_WRAP void detect(InputArray img, CV_OUT std::vector< Point > &foundLocations, CV_OUT std::vector< double > &weights, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), const std::vector< Point > &searchLocations=std::vector< Point >()) const
Performs object detection without a multi-scale window.
virtual void copyTo(HOGDescriptor &c) const
clones the HOGDescriptor
CV_PROP Size cellSize
Cell size. Default value is Size(8,8).
Definition: objdetect.hpp:630
HOGDescriptor(const HOGDescriptor &d)
Definition: objdetect.hpp:459
virtual void detectROI(InputArray img, const std::vector< cv::Point > &locations, CV_OUT std::vector< cv::Point > &foundLocations, CV_OUT std::vector< double > &confidences, double hitThreshold=0, cv::Size winStride=Size(), cv::Size padding=Size()) const
evaluate specified ROI and return confidence value for each location
CV_PROP Size blockSize
Block size in pixels. Align to cell size. Default value is Size(16,16).
Definition: objdetect.hpp:624
CV_WRAP double getWinSigma() const
Returns winSigma value.
CV_PROP Size blockStride
Block stride. It must be a multiple of cell size. Default value is Size(8,8).
Definition: objdetect.hpp:627
void groupRectangles(std::vector< cv::Rect > &rectList, std::vector< double > &weights, int groupThreshold, double eps) const
Groups the object candidate rectangles.
virtual void detectMultiScaleROI(InputArray img, CV_OUT std::vector< cv::Rect > &foundLocations, std::vector< DetectionROI > &locations, double hitThreshold=0, int groupThreshold=0) const
evaluate specified ROI and return confidence value for each location in multiple scales
@ DEFAULT_NLEVELS
Default nlevels value.
Definition: objdetect.hpp:407
virtual CV_WRAP void setSVMDetector(InputArray svmdetector)
Sets coefficients for the linear SVM classifier.
static CV_WRAP std::vector< float > getDefaultPeopleDetector()
Returns coefficients of the classifier trained for people detection (for 64x128 windows).
virtual CV_WRAP void detectMultiScale(InputArray img, CV_OUT std::vector< Rect > &foundLocations, CV_OUT std::vector< double > &foundWeights, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), double scale=1.05, double groupThreshold=2.0, bool useMeanshiftGrouping=false) const
Detects objects of different sizes in the input image. The detected objects are returned as a list of...
Definition: cvstd_wrapper.hpp:74
Definition: objdetect.hpp:817
CV_PROP_RW float maxRotation
The maximum allowed relative rotation for finder patterns in the same QR code, default pi/12.
Definition: objdetect.hpp:824
CV_PROP_RW float maxPenalties
The maximum allowed percentage of penalty points out of total pins in timing pattern,...
Definition: objdetect.hpp:836
CV_PROP_RW float maxModuleSizeMismatch
The maximum allowed relative mismatch in module sizes for finder patterns in the same QR code,...
Definition: objdetect.hpp:827
CV_PROP_RW float maxTimingPatternMismatch
The maximum allowed module relative mismatch for timing pattern module, default 2....
Definition: objdetect.hpp:833
CV_PROP_RW float minModuleSizeInPyramid
The minimum allowed pixel size of a QR module in the smallest image in the image pyramid,...
Definition: objdetect.hpp:821
CV_PROP_RW float scaleTimingPatternScore
The algorithm find QR codes with almost minimum timing pattern score and minimum size,...
Definition: objdetect.hpp:846
CV_PROP_RW float maxColorsMismatch
The maximum allowed relative color mismatch in the timing pattern, default 0.2f.
Definition: objdetect.hpp:839
QR code encoder parameters.
Definition: objdetect.hpp:737
CV_PROP_RW CorrectionLevel correction_level
The optional level of error correction (by default - the lowest).
Definition: objdetect.hpp:744
CV_PROP_RW int version
The optional version of QR code (by default - maximum possible depending on the length of the string)...
Definition: objdetect.hpp:741
CV_PROP_RW EncodeMode mode
The optional encoding mode - Numeric, Alphanumeric, Byte, Kanji, ECI or Structured Append.
Definition: objdetect.hpp:747
CV_PROP_RW int structure_number
The optional number of QR codes to generate in Structured Append mode.
Definition: objdetect.hpp:750
struct DetectorParameters is used by ArucoDetector
Definition: aruco_detector.hpp:25