diff --git a/modules/saliency/CMakeLists.txt b/modules/saliency/CMakeLists.txt index 43ccf9bbf..81f27efbd 100644 --- a/modules/saliency/CMakeLists.txt +++ b/modules/saliency/CMakeLists.txt @@ -1,2 +1,2 @@ set(the_description "Saliency API") -ocv_define_module(saliency opencv_imgproc opencv_optim) +ocv_define_module(saliency) diff --git a/modules/saliency/doc/misc/Saliency.txt b/modules/saliency/doc/misc/Saliency.txt new file mode 100644 index 000000000..6ffe7a4d0 --- /dev/null +++ b/modules/saliency/doc/misc/Saliency.txt @@ -0,0 +1,75 @@ +@startuml +class Algorithm { +} +class Saliency{ + String className; + --- + +static Ptr create( const String& saliencyType ) + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); + +String getClassName() const; +} +class Saliency +note right: Saliency is the general interface for each specialized saliency category + +class StaticSaliency{ + +Params + --- + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} + +class MotionSaliency{ + +Params + --- + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} + +class Objectness{ + +Params + --- + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} + +class StaticSaliencySpectralResidual{ + +Params + --- + StaticSaliencySpectralResidual( const SaliencySpectralResidual::Params ¶meters); + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} +class MotionSaliencyPBAS{ + +Params + --- + MotionSaliencyPBAS(); + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} +class ObjectnessBING{ + +Params + --- + ObjectnessBING(); + +bool computeSaliency( const Mat& image, Mat& saliencyMap ); +} + +Algorithm <|-- Saliency : virtual inheritance +Saliency <|-- StaticSaliency : virtual inheritance +Saliency <|-- MotionSaliency : virtual inheritance +Saliency <|-- Objectness : virtual inheritance + +StaticSaliency <|-- StaticSaliencySpectralResidual +MotionSaliency <|-- MotionSaliencyPBAS +Objectness <|-- ObjectnessBING + + +note "Single instance of the Static Saliency" as N1 +note "Single instance of the Motion Saliency" as N2 +note "Single instance of the Objectness" as N3 +StaticSaliencySpectralResidual .. N1 +MotionSaliencyPBAS .. N2 +ObjectnessBING .. N3 + +note "General interface for each specialized type of saliency algorithm" as N4 +StaticSaliency .. N4 +MotionSaliency .. N4 +Objectness .. N4 + + + +@enduml diff --git a/modules/saliency/doc/pics/Saliency.png b/modules/saliency/doc/pics/Saliency.png new file mode 100644 index 000000000..81e5eb5ab Binary files /dev/null and b/modules/saliency/doc/pics/Saliency.png differ