|  | OpenCV
    3.4.9
    Open Source Computer Vision | 
Implementation of HOG (Histogram of Oriented Gradients) descriptor and object detector. More...
#include <opencv2/objdetect.hpp>
| Public Types | |
| enum | { L2Hys = 0 } | 
| enum | { DEFAULT_NLEVELS = 64 } | 
| Public Member Functions | |
| HOGDescriptor () | |
| Creates the HOG descriptor and detector with default params.  More... | |
| HOGDescriptor (Size _winSize, Size _blockSize, Size _blockStride, Size _cellSize, int _nbins, int _derivAperture=1, double _winSigma=-1, int _histogramNormType=HOGDescriptor::L2Hys, double _L2HysThreshold=0.2, bool _gammaCorrection=false, int _nlevels=HOGDescriptor::DEFAULT_NLEVELS, bool _signedGradient=false) | |
| HOGDescriptor (const String &filename) | |
| HOGDescriptor (const HOGDescriptor &d) | |
| virtual | ~HOGDescriptor () | 
| Default destructor.  More... | |
| bool | checkDetectorSize () const | 
| Checks if detector size equal to descriptor size.  More... | |
| virtual void | compute (InputArray img, 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.  More... | |
| virtual void | computeGradient (const Mat &img, Mat &grad, Mat &angleOfs, Size paddingTL=Size(), Size paddingBR=Size()) const | 
| Computes gradients and quantized gradient orientations.  More... | |
| virtual void | copyTo (HOGDescriptor &c) const | 
| clones the HOGDescriptor  More... | |
| virtual void | detect (const Mat &img, std::vector< Point > &foundLocations, 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.  More... | |
| virtual void | detect (const Mat &img, 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.  More... | |
| virtual void | detectMultiScale (InputArray img, std::vector< Rect > &foundLocations, std::vector< double > &foundWeights, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), double scale=1.05, double finalThreshold=2.0, bool useMeanshiftGrouping=false) const | 
| Detects objects of different sizes in the input image. The detected objects are returned as a list of rectangles.  More... | |
| virtual void | detectMultiScale (InputArray img, std::vector< Rect > &foundLocations, double hitThreshold=0, Size winStride=Size(), Size padding=Size(), double scale=1.05, double finalThreshold=2.0, bool useMeanshiftGrouping=false) const | 
| Detects objects of different sizes in the input image. The detected objects are returned as a list of rectangles.  More... | |
| virtual void | detectMultiScaleROI (const cv::Mat &img, 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  More... | |
| virtual void | detectROI (const cv::Mat &img, const std::vector< cv::Point > &locations, std::vector< cv::Point > &foundLocations, 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  More... | |
| size_t | getDescriptorSize () const | 
| Returns the number of coefficients required for the classification.  More... | |
| double | getWinSigma () const | 
| Returns winSigma value.  More... | |
| void | groupRectangles (std::vector< cv::Rect > &rectList, std::vector< double > &weights, int groupThreshold, double eps) const | 
| Groups the object candidate rectangles.  More... | |
| virtual bool | load (const String &filename, const String &objname=String()) | 
| loads coefficients for the linear SVM classifier from a file  More... | |
| virtual bool | read (FileNode &fn) | 
| Reads HOGDescriptor parameters from a file node.  More... | |
| void | readALTModel (String modelfile) | 
| read/parse Dalal's alt model file  More... | |
| virtual void | save (const String &filename, const String &objname=String()) const | 
| saves coefficients for the linear SVM classifier to a file  More... | |
| virtual void | setSVMDetector (InputArray _svmdetector) | 
| Sets coefficients for the linear SVM classifier.  More... | |
| virtual void | write (FileStorage &fs, const String &objname) const | 
| Stores HOGDescriptor parameters in a file storage.  More... | |
| Static Public Member Functions | |
| static std::vector< float > | getDaimlerPeopleDetector () | 
| Returns coefficients of the classifier trained for people detection (for 48x96 windows).  More... | |
| static std::vector< float > | getDefaultPeopleDetector () | 
| Returns coefficients of the classifier trained for people detection (for 64x128 windows).  More... | |
| Public Attributes | |
| Size | blockSize | 
| Block size in pixels. Align to cell size. Default value is Size(16,16).  More... | |
| Size | blockStride | 
| Block stride. It must be a multiple of cell size. Default value is Size(8,8).  More... | |
| Size | cellSize | 
| Cell size. Default value is Size(8,8).  More... | |
| int | derivAperture | 
| not documented  More... | |
| float | free_coef | 
| not documented  More... | |
| bool | gammaCorrection | 
| Flag to specify whether the gamma correction preprocessing is required or not.  More... | |
| int | histogramNormType | 
| histogramNormType  More... | |
| double | L2HysThreshold | 
| L2-Hys normalization method shrinkage.  More... | |
| int | nbins | 
| Number of bins used in the calculation of histogram of gradients. Default value is 9.  More... | |
| int | nlevels | 
| Maximum number of detection window increases. Default value is 64.  More... | |
| UMat | oclSvmDetector | 
| coefficients for the linear SVM classifier used when OpenCL is enabled  More... | |
| bool | signedGradient | 
| Indicates signed gradient will be used or not.  More... | |
| std::vector< float > | svmDetector | 
| coefficients for the linear SVM classifier.  More... | |
| double | winSigma | 
| Gaussian smoothing window parameter.  More... | |
| Size | winSize | 
| Detection window size. Align to block size and block stride. Default value is Size(64,128).  More... | |
Implementation of HOG (Histogram of Oriented Gradients) descriptor and object detector.
the HOG descriptor algorithm introduced by Navneet Dalal and Bill Triggs [43] .
useful links:
https://hal.inria.fr/inria-00548512/document/
https://en.wikipedia.org/wiki/Histogram_of_oriented_gradients
https://software.intel.com/en-us/ipp-dev-reference-histogram-of-oriented-gradients-hog-descriptor
http://www.learnopencv.com/histogram-of-oriented-gradients
http://www.learnopencv.com/handwritten-digits-classification-an-opencv-c-python-tutorial
| 
 | inline | 
Creates the HOG descriptor and detector with default params.
aqual to HOGDescriptor(Size(64,128), Size(16,16), Size(8,8), Size(8,8), 9, 1 )
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| _winSize | sets winSize with given value. | 
| _blockSize | sets blockSize with given value. | 
| _blockStride | sets blockStride with given value. | 
| _cellSize | sets cellSize with given value. | 
| _nbins | sets nbins with given value. | 
| _derivAperture | sets derivAperture with given value. | 
| _winSigma | sets winSigma with given value. | 
| _histogramNormType | sets histogramNormType with given value. | 
| _L2HysThreshold | sets L2HysThreshold with given value. | 
| _gammaCorrection | sets gammaCorrection with given value. | 
| _nlevels | sets nlevels with given value. | 
| _signedGradient | sets signedGradient with given value. | 
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| filename | the file name containing HOGDescriptor properties and coefficients of the trained classifier | 
| 
 | inline | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| d | the HOGDescriptor which cloned to create a new one. | 
| 
 | inlinevirtual | 
Default destructor.
| bool cv::HOGDescriptor::checkDetectorSize | ( | ) | const | 
Checks if detector size equal to descriptor size.
| 
 | virtual | 
Computes HOG descriptors of given image.
| img | Matrix of the type CV_8U containing an image where HOG features will be calculated. | 
| descriptors | Matrix of the type CV_32F | 
| winStride | Window stride. It must be a multiple of block stride. | 
| padding | Padding | 
| locations | Vector of Point | 
| 
 | virtual | 
Computes gradients and quantized gradient orientations.
| img | Matrix contains the image to be computed | 
| grad | Matrix of type CV_32FC2 contains computed gradients | 
| angleOfs | Matrix of type CV_8UC2 contains quantized gradient orientations | 
| paddingTL | Padding from top-left | 
| paddingBR | Padding from bottom-right | 
| 
 | virtual | 
clones the HOGDescriptor
| c | cloned HOGDescriptor | 
| 
 | virtual | 
Performs object detection without a multi-scale window.
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| foundLocations | Vector of point where each point contains left-top corner point of detected object boundaries. | 
| weights | Vector that will contain confidence values for each detected object. | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here. | 
| winStride | Window stride. It must be a multiple of block stride. | 
| padding | Padding | 
| searchLocations | Vector of Point includes set of requested locations to be evaluated. | 
| 
 | virtual | 
Performs object detection without a multi-scale window.
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| foundLocations | Vector of point where each point contains left-top corner point of detected object boundaries. | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here. | 
| winStride | Window stride. It must be a multiple of block stride. | 
| padding | Padding | 
| searchLocations | Vector of Point includes locations to search. | 
| 
 | virtual | 
Detects objects of different sizes in the input image. The detected objects are returned as a list of rectangles.
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| foundLocations | Vector of rectangles where each rectangle contains the detected object. | 
| foundWeights | Vector that will contain confidence values for each detected object. | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here. | 
| winStride | Window stride. It must be a multiple of block stride. | 
| padding | Padding | 
| scale | Coefficient of the detection window increase. | 
| finalThreshold | Final threshold | 
| useMeanshiftGrouping | indicates grouping algorithm | 
| 
 | virtual | 
Detects objects of different sizes in the input image. The detected objects are returned as a list of rectangles.
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| foundLocations | Vector of rectangles where each rectangle contains the detected object. | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here. | 
| winStride | Window stride. It must be a multiple of block stride. | 
| padding | Padding | 
| scale | Coefficient of the detection window increase. | 
| finalThreshold | Final threshold | 
| useMeanshiftGrouping | indicates grouping algorithm | 
| 
 | virtual | 
evaluate specified ROI and return confidence value for each location in multiple scales
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| foundLocations | Vector of rectangles where each rectangle contains the detected object. | 
| locations | Vector of DetectionROI | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here. | 
| groupThreshold | Minimum possible number of rectangles minus 1. The threshold is used in a group of rectangles to retain it. | 
| 
 | virtual | 
evaluate specified ROI and return confidence value for each location
| img | Matrix of the type CV_8U or CV_8UC3 containing an image where objects are detected. | 
| locations | Vector of Point | 
| foundLocations | Vector of Point where each Point is detected object's top-left point. | 
| confidences | confidences | 
| hitThreshold | Threshold for the distance between features and SVM classifying plane. Usually it is 0 and should be specified in the detector coefficients (as the last free coefficient). But if the free coefficient is omitted (which is allowed), you can specify it manually here | 
| winStride | winStride | 
| padding | padding | 
| 
 | static | 
Returns coefficients of the classifier trained for people detection (for 48x96 windows).
| 
 | static | 
Returns coefficients of the classifier trained for people detection (for 64x128 windows).
| size_t cv::HOGDescriptor::getDescriptorSize | ( | ) | const | 
Returns the number of coefficients required for the classification.
| double cv::HOGDescriptor::getWinSigma | ( | ) | const | 
Returns winSigma value.
| void cv::HOGDescriptor::groupRectangles | ( | std::vector< cv::Rect > & | rectList, | 
| std::vector< double > & | weights, | ||
| int | groupThreshold, | ||
| double | eps | ||
| ) | const | 
Groups the object candidate rectangles.
| rectList | Input/output vector of rectangles. Output vector includes retained and grouped rectangles. (The Python list is not modified in place.) | 
| weights | Input/output vector of weights of rectangles. Output vector includes weights of retained and grouped rectangles. (The Python list is not modified in place.) | 
| groupThreshold | Minimum possible number of rectangles minus 1. The threshold is used in a group of rectangles to retain it. | 
| eps | Relative difference between sides of the rectangles to merge them into a group. | 
| 
 | virtual | 
loads coefficients for the linear SVM classifier from a file
| filename | Name of the file to read. | 
| objname | The optional name of the node to read (if empty, the first top-level node will be used). | 
| 
 | virtual | 
Reads HOGDescriptor parameters from a file node.
| fn | File node | 
| void cv::HOGDescriptor::readALTModel | ( | String | modelfile | ) | 
read/parse Dalal's alt model file
| modelfile | Path of Dalal's alt model file. | 
| 
 | virtual | 
saves coefficients for the linear SVM classifier to a file
| filename | File name | 
| objname | Object name | 
| 
 | virtual | 
Sets coefficients for the linear SVM classifier.
| _svmdetector | coefficients for the linear SVM classifier. | 
| 
 | virtual | 
Stores HOGDescriptor parameters in a file storage.
| fs | File storage | 
| objname | Object name | 
| Size cv::HOGDescriptor::blockSize | 
Block size in pixels. Align to cell size. Default value is Size(16,16).
| Size cv::HOGDescriptor::blockStride | 
Block stride. It must be a multiple of cell size. Default value is Size(8,8).
| Size cv::HOGDescriptor::cellSize | 
Cell size. Default value is Size(8,8).
| int cv::HOGDescriptor::derivAperture | 
not documented
| float cv::HOGDescriptor::free_coef | 
not documented
| bool cv::HOGDescriptor::gammaCorrection | 
Flag to specify whether the gamma correction preprocessing is required or not.
| int cv::HOGDescriptor::histogramNormType | 
histogramNormType
| double cv::HOGDescriptor::L2HysThreshold | 
L2-Hys normalization method shrinkage.
| int cv::HOGDescriptor::nbins | 
Number of bins used in the calculation of histogram of gradients. Default value is 9.
| int cv::HOGDescriptor::nlevels | 
Maximum number of detection window increases. Default value is 64.
| UMat cv::HOGDescriptor::oclSvmDetector | 
coefficients for the linear SVM classifier used when OpenCL is enabled
| bool cv::HOGDescriptor::signedGradient | 
Indicates signed gradient will be used or not.
| std::vector<float> cv::HOGDescriptor::svmDetector | 
coefficients for the linear SVM classifier.
| double cv::HOGDescriptor::winSigma | 
Gaussian smoothing window parameter.
| Size cv::HOGDescriptor::winSize | 
Detection window size. Align to block size and block stride. Default value is Size(64,128).
 1.8.13
 1.8.13