diff --git a/modules/objdetect/include/opencv2/objdetect/objdetect.hpp b/modules/objdetect/include/opencv2/objdetect/objdetect.hpp index cfc4f22f0..e0799f9b1 100644 --- a/modules/objdetect/include/opencv2/objdetect/objdetect.hpp +++ b/modules/objdetect/include/opencv2/objdetect/objdetect.hpp @@ -488,25 +488,31 @@ protected: Ptr maskGenerator; }; -// ======================== soft cascade version ===================== // - +/** + * \class SoftCascade + * \brief Implement soft (stageless) cascade. + */ class CV_EXPORTS SoftCascade { public: + /** + * \class Detection + * \brief Soft cascade detector result represintation. + */ struct CV_EXPORTS Detection { - cv::Rect rect; - float confidence; - int kind; - enum {PEDESTRIAN = 1}; //! Create detection from an object bounding rectangle and confidence. Only PEDESTRIAN type carrently supported. //! Param r is a boundinf rectangle //! param c is a confidence that object belongs to class k //! Paral k is an object class + Detection(const cv::Rect& r, const float c, int k = PEDESTRIAN) : rect(r), confidence(c), kind(k) {} + cv::Rect rect; + float confidence; + int kind; }; //! An empty cascade will be created. @@ -538,6 +544,10 @@ private: int scales; }; +/** + * \class IntegralChannels + * \brief Create channel integrals for Soft Cascade detector. + */ class CV_EXPORTS IntegralChannels { public: diff --git a/modules/objdetect/src/softcascade.cpp b/modules/objdetect/src/softcascade.cpp index c919fe2d0..f3625f5d0 100644 --- a/modules/objdetect/src/softcascade.cpp +++ b/modules/objdetect/src/softcascade.cpp @@ -55,7 +55,7 @@ #if defined WITH_DEBUG_OUT # define dprintf(format, ...) \ - do { printf(format, __VA_ARGS__); } while (0) + do { printf(format, ##__VA_ARGS__); } while (0) #else # define dprintf(format, ...) #endif