Merged the trunk r8467:8507 (inclusive) (big bunch of documentation fixes)
This commit is contained in:
@@ -131,7 +131,7 @@ FeatureEvaluator::create
|
||||
----------------------------
|
||||
Constructs the feature evaluator.
|
||||
|
||||
.. ocv:function:: static Ptr<FeatureEvaluator> FeatureEvaluator::create(int type)
|
||||
.. ocv:function:: Ptr<FeatureEvaluator> FeatureEvaluator::create(int type)
|
||||
|
||||
:param type: Type of features evaluated by cascade (``HAAR`` or ``LBP`` for now).
|
||||
|
||||
@@ -148,7 +148,7 @@ Loads a classifier from a file.
|
||||
|
||||
.. ocv:function:: CascadeClassifier::CascadeClassifier(const string& filename)
|
||||
|
||||
.. ocv:pyfunction:: cv2.CascadeClassifier(filename) -> <CascadeClassifier object>
|
||||
.. ocv:pyfunction:: cv2.CascadeClassifier([filename]) -> <CascadeClassifier object>
|
||||
|
||||
:param filename: Name of the file from which the classifier is loaded.
|
||||
|
||||
@@ -193,9 +193,9 @@ Detects objects of different sizes in the input image. The detected objects are
|
||||
.. ocv:pyfunction:: cv2.CascadeClassifier.detectMultiScale(image[, scaleFactor[, minNeighbors[, flags[, minSize[, maxSize]]]]]) -> objects
|
||||
.. ocv:pyfunction:: cv2.CascadeClassifier.detectMultiScale(image, rejectLevels, levelWeights[, scaleFactor[, minNeighbors[, flags[, minSize[, maxSize[, outputRejectLevels]]]]]]) -> objects
|
||||
|
||||
.. ocv:cfunction:: CvSeq* cvHaarDetectObjects( const CvArr* image, CvHaarClassifierCascade* cascade, CvMemStorage* storage, double scaleFactor=1.1, int minNeighbors=3, int flags=0, CvSize minSize=cvSize(0, 0), CvSize maxSize=cvSize(0, 0) )
|
||||
.. ocv:cfunction:: CvSeq* cvHaarDetectObjects( const CvArr* image, CvHaarClassifierCascade* cascade, CvMemStorage* storage, double scale_factor=1.1, int min_neighbors=3, int flags=0, CvSize min_size=cvSize(0,0), CvSize max_size=cvSize(0,0) )
|
||||
|
||||
.. ocv:pyoldfunction:: cv.HaarDetectObjects(image, cascade, storage, scaleFactor=1.1, minNeighbors=3, flags=0, minSize=(0, 0))-> detectedObjects
|
||||
.. ocv:pyoldfunction:: cv.HaarDetectObjects(image, cascade, storage, scale_factor=1.1, min_neighbors=3, flags=0, min_size=(0, 0)) -> detectedObjects
|
||||
|
||||
:param cascade: Haar classifier cascade (OpenCV 1.x API only). It can be loaded from XML or YAML file using :ocv:cfunc:`Load`. When the cascade is not needed anymore, release it using ``cvReleaseHaarClassifierCascade(&cascade)``.
|
||||
|
||||
@@ -222,7 +222,7 @@ Sets an image for detection.
|
||||
|
||||
.. ocv:function:: bool CascadeClassifier::setImage( Ptr<FeatureEvaluator>& feval, const Mat& image )
|
||||
|
||||
.. ocv:cfunction:: void cvSetImagesForHaarClassifierCascade( CvHaarClassifierCascade* cascade, const CvArr* sum, const CvArr* sqsum, const CvArr* tiltedSum, double scale )
|
||||
.. ocv:cfunction:: void cvSetImagesForHaarClassifierCascade( CvHaarClassifierCascade* cascade, const CvArr* sum, const CvArr* sqsum, const CvArr* tilted_sum, double scale )
|
||||
|
||||
:param cascade: Haar classifier cascade (OpenCV 1.x API only). See :ocv:func:`CascadeClassifier::detectMultiScale` for more information.
|
||||
|
||||
@@ -239,9 +239,9 @@ CascadeClassifier::runAt
|
||||
----------------------------
|
||||
Runs the detector at the specified point.
|
||||
|
||||
.. ocv:function:: int CascadeClassifier::runAt( Ptr<FeatureEvaluator>& feval, Point pt )
|
||||
.. ocv:function:: int CascadeClassifier::runAt( Ptr<FeatureEvaluator>& feval, Point pt, double& weight )
|
||||
|
||||
.. ocv:cfunction:: int cvRunHaarClassifierCascade( CvHaarClassifierCascade* cascade, CvPoint pt, int startStage=0 )
|
||||
.. ocv:cfunction:: int cvRunHaarClassifierCascade( const CvHaarClassifierCascade* cascade, CvPoint pt, int start_stage=0 )
|
||||
|
||||
:param cascade: Haar classifier cascade (OpenCV 1.x API only). See :ocv:func:`CascadeClassifier::detectMultiScale` for more information.
|
||||
|
||||
|
@@ -27,13 +27,13 @@ model at a particular position and scale is the maximum over
|
||||
components, of the score of that component model at the given
|
||||
location.
|
||||
|
||||
In OpenCV there are C implementation of Latent SVM and C++ wrapper of it.
|
||||
C version is the structure :ocv:struct:`CvObjectDetection` and a set of functions
|
||||
working with this structure (see :ocv:func:`cvLoadLatentSvmDetector`,
|
||||
In OpenCV there are C implementation of Latent SVM and C++ wrapper of it.
|
||||
C version is the structure :ocv:struct:`CvObjectDetection` and a set of functions
|
||||
working with this structure (see :ocv:func:`cvLoadLatentSvmDetector`,
|
||||
:ocv:func:`cvReleaseLatentSvmDetector`, :ocv:func:`cvLatentSvmDetectObjects`).
|
||||
C++ version is the class :ocv:class:`LatentSvmDetector` and has slightly different
|
||||
functionality in contrast with C version - it supports loading and detection
|
||||
of several models.
|
||||
C++ version is the class :ocv:class:`LatentSvmDetector` and has slightly different
|
||||
functionality in contrast with C version - it supports loading and detection
|
||||
of several models.
|
||||
|
||||
There are two examples of Latent SVM usage: ``samples/c/latentsvmdetect.cpp``
|
||||
and ``samples/cpp/latentsvm_multidetect.cpp``.
|
||||
@@ -45,97 +45,97 @@ CvLSVMFilterPosition
|
||||
--------------------
|
||||
.. ocv:struct:: CvLSVMFilterPosition
|
||||
|
||||
Structure describes the position of the filter in the feature pyramid.
|
||||
Structure describes the position of the filter in the feature pyramid.
|
||||
|
||||
.. ocv:member:: unsigned int l
|
||||
|
||||
level in the feature pyramid
|
||||
|
||||
.. ocv:member:: unsigned int x
|
||||
|
||||
x-coordinate in level l
|
||||
|
||||
.. ocv:member:: unsigned int y
|
||||
|
||||
y-coordinate in level l
|
||||
|
||||
|
||||
.. ocv:member:: unsigned int l
|
||||
|
||||
level in the feature pyramid
|
||||
|
||||
.. ocv:member:: unsigned int x
|
||||
|
||||
x-coordinate in level l
|
||||
|
||||
.. ocv:member:: unsigned int y
|
||||
|
||||
y-coordinate in level l
|
||||
|
||||
|
||||
CvLSVMFilterObject
|
||||
------------------
|
||||
.. ocv:struct:: CvLSVMFilterObject
|
||||
|
||||
Description of the filter, which corresponds to the part of the object.
|
||||
Description of the filter, which corresponds to the part of the object.
|
||||
|
||||
.. ocv:member:: CvLSVMFilterPosition V
|
||||
|
||||
ideal (penalty = 0) position of the partial filter
|
||||
from the root filter position (V_i in the paper)
|
||||
|
||||
.. ocv:member:: float fineFunction[4]
|
||||
|
||||
vector describes penalty function (d_i in the paper)
|
||||
pf[0] * x + pf[1] * y + pf[2] * x^2 + pf[3] * y^2
|
||||
|
||||
.. ocv:member:: int sizeX
|
||||
.. ocv:member:: int sizeY
|
||||
|
||||
Rectangular map (sizeX x sizeY),
|
||||
every cell stores feature vector (dimension = p)
|
||||
|
||||
.. ocv:member:: int numFeatures
|
||||
|
||||
number of features
|
||||
|
||||
.. ocv:member:: float *H
|
||||
|
||||
matrix of feature vectors to set and get
|
||||
feature vectors (i,j) used formula H[(j * sizeX + i) * p + k],
|
||||
where k - component of feature vector in cell (i, j)
|
||||
|
||||
.. ocv:member:: CvLSVMFilterPosition V
|
||||
|
||||
ideal (penalty = 0) position of the partial filter
|
||||
from the root filter position (V_i in the paper)
|
||||
|
||||
.. ocv:member:: float fineFunction[4]
|
||||
|
||||
vector describes penalty function (d_i in the paper)
|
||||
pf[0] * x + pf[1] * y + pf[2] * x^2 + pf[3] * y^2
|
||||
|
||||
.. ocv:member:: int sizeX
|
||||
.. ocv:member:: int sizeY
|
||||
|
||||
Rectangular map (sizeX x sizeY),
|
||||
every cell stores feature vector (dimension = p)
|
||||
|
||||
.. ocv:member:: int numFeatures
|
||||
|
||||
number of features
|
||||
|
||||
.. ocv:member:: float *H
|
||||
|
||||
matrix of feature vectors to set and get
|
||||
feature vectors (i,j) used formula H[(j * sizeX + i) * p + k],
|
||||
where k - component of feature vector in cell (i, j)
|
||||
|
||||
CvLatentSvmDetector
|
||||
-------------------
|
||||
.. ocv:struct:: CvLatentSvmDetector
|
||||
|
||||
Structure contains internal representation of trained Latent SVM detector.
|
||||
Structure contains internal representation of trained Latent SVM detector.
|
||||
|
||||
.. ocv:member:: int num_filters
|
||||
|
||||
total number of filters (root plus part) in model
|
||||
|
||||
.. ocv:member:: int num_components
|
||||
|
||||
number of components in model
|
||||
|
||||
.. ocv:member:: int* num_part_filters
|
||||
|
||||
array containing number of part filters for each component
|
||||
|
||||
.. ocv:member:: CvLSVMFilterObject** filters
|
||||
|
||||
root and part filters for all model components
|
||||
|
||||
.. ocv:member:: float* b
|
||||
|
||||
biases for all model components
|
||||
|
||||
.. ocv:member:: float score_threshold
|
||||
|
||||
confidence level threshold
|
||||
|
||||
|
||||
.. ocv:member:: int num_filters
|
||||
|
||||
total number of filters (root plus part) in model
|
||||
|
||||
.. ocv:member:: int num_components
|
||||
|
||||
number of components in model
|
||||
|
||||
.. ocv:member:: int* num_part_filters
|
||||
|
||||
array containing number of part filters for each component
|
||||
|
||||
.. ocv:member:: CvLSVMFilterObject** filters
|
||||
|
||||
root and part filters for all model components
|
||||
|
||||
.. ocv:member:: float* b
|
||||
|
||||
biases for all model components
|
||||
|
||||
.. ocv:member:: float score_threshold
|
||||
|
||||
confidence level threshold
|
||||
|
||||
|
||||
CvObjectDetection
|
||||
-----------------
|
||||
.. ocv:struct:: CvObjectDetection
|
||||
|
||||
Structure contains the bounding box and confidence level for detected object.
|
||||
Structure contains the bounding box and confidence level for detected object.
|
||||
|
||||
.. ocv:member:: CvRect rect
|
||||
|
||||
bounding box for a detected object
|
||||
|
||||
.. ocv:member:: float score
|
||||
|
||||
confidence level
|
||||
.. ocv:member:: CvRect rect
|
||||
|
||||
bounding box for a detected object
|
||||
|
||||
.. ocv:member:: float score
|
||||
|
||||
confidence level
|
||||
|
||||
|
||||
cvLoadLatentSvmDetector
|
||||
@@ -145,7 +145,7 @@ Loads trained detector from a file.
|
||||
.. ocv:function:: CvLatentSvmDetector* cvLoadLatentSvmDetector(const char* filename)
|
||||
|
||||
:param filename: Name of the file containing the description of a trained detector
|
||||
|
||||
|
||||
|
||||
cvReleaseLatentSvmDetector
|
||||
--------------------------
|
||||
@@ -158,46 +158,46 @@ Release memory allocated for CvLatentSvmDetector structure.
|
||||
|
||||
cvLatentSvmDetectObjects
|
||||
------------------------
|
||||
Find rectangular regions in the given image that are likely to contain objects
|
||||
Find rectangular regions in the given image that are likely to contain objects
|
||||
and corresponding confidence levels.
|
||||
|
||||
.. ocv:function:: CvSeq* cvLatentSvmDetectObjects(IplImage* image, CvLatentSvmDetector* detector, CvMemStorage* storage, float overlap_threshold, int numThreads)
|
||||
|
||||
:param image: image
|
||||
.. ocv:function:: CvSeq* cvLatentSvmDetectObjects( IplImage* image, CvLatentSvmDetector* detector, CvMemStorage* storage, float overlap_threshold=0.5f, int numThreads=-1 )
|
||||
|
||||
:param image: image
|
||||
:param detector: LatentSVM detector in internal representation
|
||||
:param storage: Memory storage to store the resultant sequence of the object candidate rectangles
|
||||
:param overlap_threshold: Threshold for the non-maximum suppression algorithm
|
||||
:param numThreads: Number of threads used in parallel version of the algorithm
|
||||
|
||||
|
||||
.. highlight:: cpp
|
||||
|
||||
LatentSvmDetector
|
||||
-----------------
|
||||
.. ocv:class:: LatentSvmDetector
|
||||
|
||||
This is a C++ wrapping class of Latent SVM. It contains internal representation of several
|
||||
trained Latent SVM detectors (models) and a set of methods to load the detectors and detect objects
|
||||
This is a C++ wrapping class of Latent SVM. It contains internal representation of several
|
||||
trained Latent SVM detectors (models) and a set of methods to load the detectors and detect objects
|
||||
using them.
|
||||
|
||||
LatentSvmDetector::ObjectDetection
|
||||
----------------------------------
|
||||
.. ocv:class:: LatentSvmDetector::ObjectDetection
|
||||
.. ocv:struct:: LatentSvmDetector::ObjectDetection
|
||||
|
||||
Structure contains the detection information.
|
||||
|
||||
.. ocv:member:: Rect rect
|
||||
|
||||
bounding box for a detected object
|
||||
|
||||
.. ocv:member:: float score
|
||||
|
||||
confidence level
|
||||
|
||||
.. ocv:member:: int classID
|
||||
|
||||
class (model or detector) ID that detect an object
|
||||
|
||||
Structure contains the detection information.
|
||||
|
||||
.. ocv:member:: Rect rect
|
||||
|
||||
bounding box for a detected object
|
||||
|
||||
.. ocv:member:: float score
|
||||
|
||||
confidence level
|
||||
|
||||
.. ocv:member:: int classID
|
||||
|
||||
class (model or detector) ID that detect an object
|
||||
|
||||
|
||||
LatentSvmDetector::LatentSvmDetector
|
||||
------------------------------------
|
||||
Two types of constructors.
|
||||
@@ -208,8 +208,8 @@ Two types of constructors.
|
||||
|
||||
|
||||
|
||||
:param filenames: A set of filenames storing the trained detectors (models). Each file contains one model. See examples of such files here /opencv_extra/testdata/cv/latentsvmdetector/models_VOC2007/.
|
||||
|
||||
:param filenames: A set of filenames storing the trained detectors (models). Each file contains one model. See examples of such files here /opencv_extra/testdata/cv/latentsvmdetector/models_VOC2007/.
|
||||
|
||||
:param classNames: A set of trained models names. If it's empty then the name of each model will be constructed from the name of file containing the model. E.g. the model stored in "/home/user/cat.xml" will get the name "cat".
|
||||
|
||||
LatentSvmDetector::~LatentSvmDetector
|
||||
@@ -228,10 +228,10 @@ LatentSvmDetector::load
|
||||
-----------------------
|
||||
Load the trained models from given ``.xml`` files and return ``true`` if at least one model was loaded.
|
||||
|
||||
.. ocv:function:: bool LatentSvmDetector::load(const vector<string>& filenames, const vector<string>& classNames)
|
||||
|
||||
:param filenames: A set of filenames storing the trained detectors (models). Each file contains one model. See examples of such files here /opencv_extra/testdata/cv/latentsvmdetector/models_VOC2007/.
|
||||
|
||||
.. ocv:function:: bool LatentSvmDetector::load( const vector<string>& filenames, const vector<string>& classNames=vector<string>() )
|
||||
|
||||
:param filenames: A set of filenames storing the trained detectors (models). Each file contains one model. See examples of such files here /opencv_extra/testdata/cv/latentsvmdetector/models_VOC2007/.
|
||||
|
||||
:param classNames: A set of trained models names. If it's empty then the name of each model will be constructed from the name of file containing the model. E.g. the model stored in "/home/user/cat.xml" will get the name "cat".
|
||||
|
||||
LatentSvmDetector::detect
|
||||
@@ -239,13 +239,13 @@ LatentSvmDetector::detect
|
||||
Find rectangular regions in the given image that are likely to contain objects of loaded classes (models)
|
||||
and corresponding confidence levels.
|
||||
|
||||
.. ocv:function:: void LatentSvmDetector::detect( const Mat& image, vector<ObjectDetection>& objectDetections, float overlapThreshold=0.5, int numThreads=-1 )
|
||||
|
||||
.. ocv:function:: void LatentSvmDetector::detect( const Mat& image, vector<ObjectDetection>& objectDetections, float overlapThreshold=0.5f, int numThreads=-1 )
|
||||
|
||||
:param image: An image.
|
||||
:param objectDetections: The detections: rectangulars, scores and class IDs.
|
||||
:param overlapThreshold: Threshold for the non-maximum suppression algorithm.
|
||||
:param numThreads: Number of threads used in parallel version of the algorithm.
|
||||
|
||||
|
||||
LatentSvmDetector::getClassNames
|
||||
--------------------------------
|
||||
Return the class (model) names that were passed in constructor or method ``load`` or extracted from models filenames in those methods.
|
||||
@@ -256,9 +256,9 @@ LatentSvmDetector::getClassCount
|
||||
--------------------------------
|
||||
Return a count of loaded models (classes).
|
||||
|
||||
.. ocv:function:: size_t getClassCount() const
|
||||
|
||||
|
||||
.. [Felzenszwalb2010] Felzenszwalb, P. F. and Girshick, R. B. and McAllester, D. and Ramanan, D. *Object Detection with Discriminatively Trained Part Based Models*. PAMI, vol. 32, no. 9, pp. 1627-1645, September 2010
|
||||
.. ocv:function:: size_t LatentSvmDetector::getClassCount() const
|
||||
|
||||
|
||||
.. [Felzenszwalb2010] Felzenszwalb, P. F. and Girshick, R. B. and McAllester, D. and Ramanan, D. *Object Detection with Discriminatively Trained Part Based Models*. PAMI, vol. 32, no. 9, pp. 1627-1645, September 2010
|
||||
|
||||
|
||||
|
@@ -137,7 +137,7 @@ CVAPI(void) cvReleaseHaarClassifierCascade( CvHaarClassifierCascade** cascade );
|
||||
|
||||
|
||||
CVAPI(CvSeq*) cvHaarDetectObjects( const CvArr* image,
|
||||
CvHaarClassifierCascade* cascade, CvMemStorage* storage,
|
||||
CvHaarClassifierCascade* cascade, CvMemStorage* storage,
|
||||
double scale_factor CV_DEFAULT(1.1),
|
||||
int min_neighbors CV_DEFAULT(3), int flags CV_DEFAULT(0),
|
||||
CvSize min_size CV_DEFAULT(cvSize(0,0)), CvSize max_size CV_DEFAULT(cvSize(0,0)));
|
||||
@@ -160,7 +160,7 @@ CVAPI(int) cvRunHaarClassifierCascade( const CvHaarClassifierCascade* cascade,
|
||||
// Structure describes the position of the filter in the feature pyramid
|
||||
// l - level in the feature pyramid
|
||||
// (x, y) - coordinate in level l
|
||||
typedef struct
|
||||
typedef struct CvLSVMFilterPosition
|
||||
{
|
||||
int x;
|
||||
int y;
|
||||
@@ -174,14 +174,14 @@ typedef struct
|
||||
// penaltyFunction - vector describes penalty function (d_i in the paper)
|
||||
// pf[0] * x + pf[1] * y + pf[2] * x^2 + pf[3] * y^2
|
||||
// FILTER DESCRIPTION
|
||||
// Rectangular map (sizeX x sizeY),
|
||||
// Rectangular map (sizeX x sizeY),
|
||||
// every cell stores feature vector (dimension = p)
|
||||
// H - matrix of feature vectors
|
||||
// to set and get feature vectors (i,j)
|
||||
// to set and get feature vectors (i,j)
|
||||
// used formula H[(j * sizeX + i) * p + k], where
|
||||
// k - component of feature vector in cell (i, j)
|
||||
// END OF FILTER DESCRIPTION
|
||||
typedef struct{
|
||||
typedef struct CvLSVMFilterObject{
|
||||
CvLSVMFilterPosition V;
|
||||
float fineFunction[4];
|
||||
int sizeX;
|
||||
@@ -192,7 +192,7 @@ typedef struct{
|
||||
|
||||
// data type: STRUCT CvLatentSvmDetector
|
||||
// structure contains internal representation of trained Latent SVM detector
|
||||
// num_filters - total number of filters (root plus part) in model
|
||||
// num_filters - total number of filters (root plus part) in model
|
||||
// num_components - number of components in model
|
||||
// num_part_filters - array containing number of part filters for each component
|
||||
// filters - root and part filters for all model components
|
||||
@@ -210,9 +210,9 @@ typedef struct CvLatentSvmDetector
|
||||
CvLatentSvmDetector;
|
||||
|
||||
// data type: STRUCT CvObjectDetection
|
||||
// structure contains the bounding box and confidence level for detected object
|
||||
// structure contains the bounding box and confidence level for detected object
|
||||
// rect - bounding box for a detected object
|
||||
// score - confidence level
|
||||
// score - confidence level
|
||||
typedef struct CvObjectDetection
|
||||
{
|
||||
CvRect rect;
|
||||
@@ -247,28 +247,28 @@ CVAPI(CvLatentSvmDetector*) cvLoadLatentSvmDetector(const char* filename);
|
||||
CVAPI(void) cvReleaseLatentSvmDetector(CvLatentSvmDetector** detector);
|
||||
|
||||
/*
|
||||
// find rectangular regions in the given image that are likely
|
||||
// find rectangular regions in the given image that are likely
|
||||
// to contain objects and corresponding confidence levels
|
||||
//
|
||||
// API
|
||||
// CvSeq* cvLatentSvmDetectObjects(const IplImage* image,
|
||||
// CvLatentSvmDetector* detector,
|
||||
// CvMemStorage* storage,
|
||||
// CvSeq* cvLatentSvmDetectObjects(const IplImage* image,
|
||||
// CvLatentSvmDetector* detector,
|
||||
// CvMemStorage* storage,
|
||||
// float overlap_threshold = 0.5f,
|
||||
// int numThreads = -1);
|
||||
// INPUT
|
||||
// image - image to detect objects in
|
||||
// detector - Latent SVM detector in internal representation
|
||||
// storage - memory storage to store the resultant sequence
|
||||
// storage - memory storage to store the resultant sequence
|
||||
// of the object candidate rectangles
|
||||
// overlap_threshold - threshold for the non-maximum suppression algorithm
|
||||
// overlap_threshold - threshold for the non-maximum suppression algorithm
|
||||
= 0.5f [here will be the reference to original paper]
|
||||
// OUTPUT
|
||||
// sequence of detected objects (bounding boxes and confidence levels stored in CvObjectDetection structures)
|
||||
*/
|
||||
CVAPI(CvSeq*) cvLatentSvmDetectObjects(IplImage* image,
|
||||
CvLatentSvmDetector* detector,
|
||||
CvMemStorage* storage,
|
||||
CVAPI(CvSeq*) cvLatentSvmDetectObjects(IplImage* image,
|
||||
CvLatentSvmDetector* detector,
|
||||
CvMemStorage* storage,
|
||||
float overlap_threshold CV_DEFAULT(0.5f),
|
||||
int numThreads CV_DEFAULT(-1));
|
||||
|
||||
@@ -285,7 +285,7 @@ CV_EXPORTS CvSeq* cvHaarDetectObjectsForROC( const CvArr* image,
|
||||
|
||||
namespace cv
|
||||
{
|
||||
|
||||
|
||||
///////////////////////////// Object Detection ////////////////////////////
|
||||
|
||||
/*
|
||||
@@ -330,23 +330,23 @@ private:
|
||||
CV_EXPORTS void groupRectangles(CV_OUT CV_IN_OUT vector<Rect>& rectList, int groupThreshold, double eps=0.2);
|
||||
CV_EXPORTS_W void groupRectangles(CV_OUT CV_IN_OUT vector<Rect>& rectList, CV_OUT vector<int>& weights, int groupThreshold, double eps=0.2);
|
||||
CV_EXPORTS void groupRectangles( vector<Rect>& rectList, int groupThreshold, double eps, vector<int>* weights, vector<double>* levelWeights );
|
||||
CV_EXPORTS void groupRectangles(vector<Rect>& rectList, vector<int>& rejectLevels,
|
||||
CV_EXPORTS void groupRectangles(vector<Rect>& rectList, vector<int>& rejectLevels,
|
||||
vector<double>& levelWeights, int groupThreshold, double eps=0.2);
|
||||
CV_EXPORTS void groupRectangles_meanshift(vector<Rect>& rectList, vector<double>& foundWeights, vector<double>& foundScales,
|
||||
CV_EXPORTS void groupRectangles_meanshift(vector<Rect>& rectList, vector<double>& foundWeights, vector<double>& foundScales,
|
||||
double detectThreshold = 0.0, Size winDetSize = Size(64, 128));
|
||||
|
||||
|
||||
|
||||
class CV_EXPORTS FeatureEvaluator
|
||||
{
|
||||
public:
|
||||
public:
|
||||
enum { HAAR = 0, LBP = 1, HOG = 2 };
|
||||
virtual ~FeatureEvaluator();
|
||||
|
||||
virtual bool read(const FileNode& node);
|
||||
virtual Ptr<FeatureEvaluator> clone() const;
|
||||
virtual int getFeatureType() const;
|
||||
|
||||
virtual bool setImage(const Mat&, Size origWinSize);
|
||||
|
||||
virtual bool setImage(const Mat& img, Size origWinSize);
|
||||
virtual bool setWindow(Point p);
|
||||
|
||||
virtual double calcOrd(int featureIdx) const;
|
||||
@@ -371,7 +371,7 @@ public:
|
||||
CV_WRAP CascadeClassifier();
|
||||
CV_WRAP CascadeClassifier( const string& filename );
|
||||
virtual ~CascadeClassifier();
|
||||
|
||||
|
||||
CV_WRAP virtual bool empty() const;
|
||||
CV_WRAP bool load( const string& filename );
|
||||
virtual bool read( const FileNode& node );
|
||||
@@ -425,8 +425,8 @@ protected:
|
||||
template<class FEval>
|
||||
friend int predictCategoricalStump( CascadeClassifier& cascade, Ptr<FeatureEvaluator> &featureEvaluator, double& weight);
|
||||
|
||||
bool setImage( Ptr<FeatureEvaluator>&, const Mat& );
|
||||
virtual int runAt( Ptr<FeatureEvaluator>&, Point, double& weight );
|
||||
bool setImage( Ptr<FeatureEvaluator>& feval, const Mat& image);
|
||||
virtual int runAt( Ptr<FeatureEvaluator>& feval, Point pt, double& weight );
|
||||
|
||||
class Data
|
||||
{
|
||||
@@ -475,7 +475,7 @@ public:
|
||||
class CV_EXPORTS MaskGenerator
|
||||
{
|
||||
public:
|
||||
virtual ~MaskGenerator() {}
|
||||
virtual ~MaskGenerator() {}
|
||||
virtual cv::Mat generateMask(const cv::Mat& src)=0;
|
||||
virtual void initializeMask(const cv::Mat& /*src*/) {};
|
||||
};
|
||||
@@ -488,7 +488,7 @@ protected:
|
||||
Ptr<MaskGenerator> maskGenerator;
|
||||
};
|
||||
|
||||
|
||||
|
||||
//////////////// HOG (Histogram-of-Oriented-Gradients) Descriptor and Object Detector //////////////
|
||||
|
||||
struct CV_EXPORTS_W HOGDescriptor
|
||||
@@ -496,13 +496,13 @@ struct CV_EXPORTS_W HOGDescriptor
|
||||
public:
|
||||
enum { L2Hys=0 };
|
||||
enum { DEFAULT_NLEVELS=64 };
|
||||
|
||||
|
||||
CV_WRAP HOGDescriptor() : winSize(64,128), blockSize(16,16), blockStride(8,8),
|
||||
cellSize(8,8), nbins(9), derivAperture(1), winSigma(-1),
|
||||
histogramNormType(HOGDescriptor::L2Hys), L2HysThreshold(0.2), gammaCorrection(true),
|
||||
histogramNormType(HOGDescriptor::L2Hys), L2HysThreshold(0.2), gammaCorrection(true),
|
||||
nlevels(HOGDescriptor::DEFAULT_NLEVELS)
|
||||
{}
|
||||
|
||||
|
||||
CV_WRAP HOGDescriptor(Size _winSize, Size _blockSize, Size _blockStride,
|
||||
Size _cellSize, int _nbins, int _derivAperture=1, double _winSigma=-1,
|
||||
int _histogramNormType=HOGDescriptor::L2Hys,
|
||||
@@ -513,28 +513,28 @@ public:
|
||||
histogramNormType(_histogramNormType), L2HysThreshold(_L2HysThreshold),
|
||||
gammaCorrection(_gammaCorrection), nlevels(_nlevels)
|
||||
{}
|
||||
|
||||
|
||||
CV_WRAP HOGDescriptor(const String& filename)
|
||||
{
|
||||
load(filename);
|
||||
}
|
||||
|
||||
|
||||
HOGDescriptor(const HOGDescriptor& d)
|
||||
{
|
||||
d.copyTo(*this);
|
||||
}
|
||||
|
||||
|
||||
virtual ~HOGDescriptor() {}
|
||||
|
||||
|
||||
CV_WRAP size_t getDescriptorSize() const;
|
||||
CV_WRAP bool checkDetectorSize() const;
|
||||
CV_WRAP double getWinSigma() const;
|
||||
|
||||
|
||||
CV_WRAP virtual void setSVMDetector(InputArray _svmdetector);
|
||||
|
||||
|
||||
virtual bool read(FileNode& fn);
|
||||
virtual void write(FileStorage& fs, const String& objname) const;
|
||||
|
||||
|
||||
CV_WRAP virtual bool load(const String& filename, const String& objname=String());
|
||||
CV_WRAP virtual void save(const String& filename, const String& objname=String()) const;
|
||||
virtual void copyTo(HOGDescriptor& c) const;
|
||||
@@ -544,9 +544,9 @@ public:
|
||||
Size winStride=Size(), Size padding=Size(),
|
||||
const vector<Point>& locations=vector<Point>()) const;
|
||||
//with found weights output
|
||||
CV_WRAP virtual void detect(const Mat& img, CV_OUT vector<Point>& foundLocations,
|
||||
CV_WRAP virtual void detect(const Mat& img, CV_OUT vector<Point>& foundLocations,
|
||||
CV_OUT vector<double>& weights,
|
||||
double hitThreshold=0, Size winStride=Size(),
|
||||
double hitThreshold=0, Size winStride=Size(),
|
||||
Size padding=Size(),
|
||||
const vector<Point>& searchLocations=vector<Point>()) const;
|
||||
//without found weights output
|
||||
@@ -555,22 +555,22 @@ public:
|
||||
Size padding=Size(),
|
||||
const vector<Point>& searchLocations=vector<Point>()) const;
|
||||
//with result weights output
|
||||
CV_WRAP virtual void detectMultiScale(const Mat& img, CV_OUT vector<Rect>& foundLocations,
|
||||
CV_OUT vector<double>& foundWeights, double hitThreshold=0,
|
||||
Size winStride=Size(), Size padding=Size(), double scale=1.05,
|
||||
CV_WRAP virtual void detectMultiScale(const Mat& img, CV_OUT vector<Rect>& foundLocations,
|
||||
CV_OUT vector<double>& foundWeights, double hitThreshold=0,
|
||||
Size winStride=Size(), Size padding=Size(), double scale=1.05,
|
||||
double finalThreshold=2.0,bool useMeanshiftGrouping = false) const;
|
||||
//without found weights output
|
||||
virtual void detectMultiScale(const Mat& img, CV_OUT vector<Rect>& foundLocations,
|
||||
virtual void detectMultiScale(const Mat& img, CV_OUT vector<Rect>& foundLocations,
|
||||
double hitThreshold=0, Size winStride=Size(),
|
||||
Size padding=Size(), double scale=1.05,
|
||||
Size padding=Size(), double scale=1.05,
|
||||
double finalThreshold=2.0, bool useMeanshiftGrouping = false) const;
|
||||
|
||||
CV_WRAP virtual void computeGradient(const Mat& img, CV_OUT Mat& grad, CV_OUT Mat& angleOfs,
|
||||
Size paddingTL=Size(), Size paddingBR=Size()) const;
|
||||
|
||||
|
||||
CV_WRAP static vector<float> getDefaultPeopleDetector();
|
||||
CV_WRAP static vector<float> getDaimlerPeopleDetector();
|
||||
|
||||
|
||||
CV_PROP Size winSize;
|
||||
CV_PROP Size blockSize;
|
||||
CV_PROP Size blockStride;
|
||||
|
Reference in New Issue
Block a user