|
|
|
@ -74,22 +74,22 @@ protected: |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CascadeClassifierImpl : public BaseCascadeClassifier |
|
|
|
|
class CascadeClassifierImpl CV_FINAL : public BaseCascadeClassifier |
|
|
|
|
{ |
|
|
|
|
public: |
|
|
|
|
CascadeClassifierImpl(); |
|
|
|
|
virtual ~CascadeClassifierImpl(); |
|
|
|
|
virtual ~CascadeClassifierImpl() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
bool empty() const; |
|
|
|
|
bool load( const String& filename ); |
|
|
|
|
void read( const FileNode& node ); |
|
|
|
|
bool empty() const CV_OVERRIDE; |
|
|
|
|
bool load( const String& filename ) CV_OVERRIDE; |
|
|
|
|
void read( const FileNode& node ) CV_OVERRIDE; |
|
|
|
|
bool read_( const FileNode& node ); |
|
|
|
|
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() ); |
|
|
|
|
Size maxSize = Size() ) CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
void detectMultiScale( InputArray image, |
|
|
|
|
CV_OUT std::vector<Rect>& objects, |
|
|
|
@ -97,7 +97,7 @@ public: |
|
|
|
|
double scaleFactor=1.1, |
|
|
|
|
int minNeighbors=3, int flags=0, |
|
|
|
|
Size minSize=Size(), |
|
|
|
|
Size maxSize=Size() ); |
|
|
|
|
Size maxSize=Size() ) CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
void detectMultiScale( InputArray image, |
|
|
|
|
CV_OUT std::vector<Rect>& objects, |
|
|
|
@ -107,16 +107,16 @@ public: |
|
|
|
|
int minNeighbors = 3, int flags = 0, |
|
|
|
|
Size minSize = Size(), |
|
|
|
|
Size maxSize = Size(), |
|
|
|
|
bool outputRejectLevels = false ); |
|
|
|
|
bool outputRejectLevels = false ) CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool isOldFormatCascade() const; |
|
|
|
|
Size getOriginalWindowSize() const; |
|
|
|
|
int getFeatureType() const; |
|
|
|
|
void* getOldCascade(); |
|
|
|
|
bool isOldFormatCascade() const CV_OVERRIDE; |
|
|
|
|
Size getOriginalWindowSize() const CV_OVERRIDE; |
|
|
|
|
int getFeatureType() const CV_OVERRIDE; |
|
|
|
|
void* getOldCascade() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
void setMaskGenerator(const Ptr<MaskGenerator>& maskGenerator); |
|
|
|
|
Ptr<MaskGenerator> getMaskGenerator(); |
|
|
|
|
void setMaskGenerator(const Ptr<MaskGenerator>& maskGenerator) CV_OVERRIDE; |
|
|
|
|
Ptr<MaskGenerator> getMaskGenerator() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
protected: |
|
|
|
|
enum { SUM_ALIGN = 64 }; |
|
|
|
@ -311,7 +311,7 @@ protected: |
|
|
|
|
#define CALC_SUM_OFS(rect, ptr) CALC_SUM_OFS_((rect)[0], (rect)[1], (rect)[2], (rect)[3], ptr) |
|
|
|
|
|
|
|
|
|
//---------------------------------------------- HaarEvaluator ---------------------------------------
|
|
|
|
|
class HaarEvaluator : public FeatureEvaluator |
|
|
|
|
class HaarEvaluator CV_FINAL : public FeatureEvaluator |
|
|
|
|
{ |
|
|
|
|
public: |
|
|
|
|
struct Feature |
|
|
|
@ -342,24 +342,24 @@ public: |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
HaarEvaluator(); |
|
|
|
|
virtual ~HaarEvaluator(); |
|
|
|
|
virtual ~HaarEvaluator() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
virtual bool read( const FileNode& node, Size origWinSize); |
|
|
|
|
virtual Ptr<FeatureEvaluator> clone() const; |
|
|
|
|
virtual int getFeatureType() const { return FeatureEvaluator::HAAR; } |
|
|
|
|
virtual bool read( const FileNode& node, Size origWinSize) CV_OVERRIDE; |
|
|
|
|
virtual Ptr<FeatureEvaluator> clone() const CV_OVERRIDE; |
|
|
|
|
virtual int getFeatureType() const CV_OVERRIDE { return FeatureEvaluator::HAAR; } |
|
|
|
|
|
|
|
|
|
virtual bool setWindow(Point p, int scaleIdx); |
|
|
|
|
virtual bool setWindow(Point p, int scaleIdx) CV_OVERRIDE; |
|
|
|
|
Rect getNormRect() const; |
|
|
|
|
int getSquaresOffset() const; |
|
|
|
|
|
|
|
|
|
float operator()(int featureIdx) const |
|
|
|
|
{ return optfeaturesPtr[featureIdx].calc(pwin) * varianceNormFactor; } |
|
|
|
|
virtual float calcOrd(int featureIdx) const |
|
|
|
|
virtual float calcOrd(int featureIdx) const CV_OVERRIDE |
|
|
|
|
{ return (*this)(featureIdx); } |
|
|
|
|
|
|
|
|
|
protected: |
|
|
|
|
virtual void computeChannels( int i, InputArray img ); |
|
|
|
|
virtual void computeOptFeatures(); |
|
|
|
|
virtual void computeChannels( int i, InputArray img ) CV_OVERRIDE; |
|
|
|
|
virtual void computeOptFeatures() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
Ptr<std::vector<Feature> > features; |
|
|
|
|
Ptr<std::vector<OptFeature> > optfeatures; |
|
|
|
@ -403,7 +403,7 @@ inline float HaarEvaluator::OptFeature :: calc( const int* ptr ) const |
|
|
|
|
|
|
|
|
|
//---------------------------------------------- LBPEvaluator -------------------------------------
|
|
|
|
|
|
|
|
|
|
class LBPEvaluator : public FeatureEvaluator |
|
|
|
|
class LBPEvaluator CV_FINAL : public FeatureEvaluator |
|
|
|
|
{ |
|
|
|
|
public: |
|
|
|
|
struct Feature |
|
|
|
@ -427,21 +427,21 @@ public: |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
LBPEvaluator(); |
|
|
|
|
virtual ~LBPEvaluator(); |
|
|
|
|
virtual ~LBPEvaluator() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
virtual bool read( const FileNode& node, Size origWinSize ); |
|
|
|
|
virtual Ptr<FeatureEvaluator> clone() const; |
|
|
|
|
virtual int getFeatureType() const { return FeatureEvaluator::LBP; } |
|
|
|
|
virtual bool read( const FileNode& node, Size origWinSize ) CV_OVERRIDE; |
|
|
|
|
virtual Ptr<FeatureEvaluator> clone() const CV_OVERRIDE; |
|
|
|
|
virtual int getFeatureType() const CV_OVERRIDE { return FeatureEvaluator::LBP; } |
|
|
|
|
|
|
|
|
|
virtual bool setWindow(Point p, int scaleIdx); |
|
|
|
|
virtual bool setWindow(Point p, int scaleIdx) CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
int operator()(int featureIdx) const |
|
|
|
|
{ return optfeaturesPtr[featureIdx].calc(pwin); } |
|
|
|
|
virtual int calcCat(int featureIdx) const |
|
|
|
|
virtual int calcCat(int featureIdx) const CV_OVERRIDE |
|
|
|
|
{ return (*this)(featureIdx); } |
|
|
|
|
protected: |
|
|
|
|
virtual void computeChannels( int i, InputArray img ); |
|
|
|
|
virtual void computeOptFeatures(); |
|
|
|
|
virtual void computeChannels( int i, InputArray img ) CV_OVERRIDE; |
|
|
|
|
virtual void computeOptFeatures() CV_OVERRIDE; |
|
|
|
|
|
|
|
|
|
Ptr<std::vector<Feature> > features; |
|
|
|
|
Ptr<std::vector<OptFeature> > optfeatures; |
|
|
|
|