IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ipsdk::imaproc::advmorpho::SuperPixels2dImgLvl2 Class Reference

Level 2 algorithm: Super pixels algorithm based on SLIC. More...

#include <SuperPixels2dImgLvl2.h>

Inheritance diagram for ipsdk::imaproc::advmorpho::SuperPixels2dImgLvl2:
ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >

Public Member Functions

 ~SuperPixels2dImgLvl2 ()
 destructor
 
const std::string & getObjectName () const
 method allowing to retrieve object name
 
const std::string & getToolTip () const
 method allowing to retrieve object tooltip
 
const boost::filesystem::path getHeaderPath () const
 retrieve relative header path associated to processor
 
const std::string getLibraryName () const
 retrieve library name associated processor
 
template<typename TAttribute >
TAttribute::StorageType getStorage ()
 retrieve storage associated to a given attribute More...
 
Attribute accessors

Setters and Getters for attributes

template<>
const ipsdk::imaproc::attr::InSubColorImg2dget () const
 Getter for attribute InSubColorImg2d.
 
template<>
void set (const typename ipsdk::imaproc::attr::InSubColorImg2d::StorageType &value)
 Setter for attribute InSubColorImg2d.
 
template<>
const ipsdk::imaproc::attr::InSuperPixelsParamValueget () const
 Getter for attribute InSuperPixelsParamValue.
 
template<>
void set (const typename ipsdk::imaproc::attr::InSuperPixelsParamValue::StorageType &value)
 Setter for attribute InSuperPixelsParamValue.
 
template<>
const ipsdk::imaproc::attr::InNbIterget () const
 Getter for attribute InNbIter.
 
template<>
void set (const typename ipsdk::imaproc::attr::InNbIter::StorageType &value)
 Setter for attribute InNbIter.
 
template<>
const ipsdk::imaproc::attr::InCompactnessget () const
 Getter for attribute InCompactness.
 
template<>
void set (const typename ipsdk::imaproc::attr::InCompactness::StorageType &value)
 Setter for attribute InCompactness.
 
template<>
const ipsdk::imaproc::attr::InOptSizeRatioget () const
 Getter for attribute InOptSizeRatio.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptSizeRatio::StorageType &value)
 Setter for attribute InOptSizeRatio.
 
template<>
const ipsdk::imaproc::attr::InOptSuperPixelsTypeget () const
 Getter for attribute InOptSuperPixelsType.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptSuperPixelsType::StorageType &value)
 Setter for attribute InOptSuperPixelsType.
 
template<>
const ipsdk::imaproc::attr::OutWk1ColorImgget () const
 Getter for attribute OutWk1ColorImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutWk1ColorImg::StorageType &value)
 Setter for attribute OutWk1ColorImg.
 
template<>
const ipsdk::imaproc::attr::OutWk1LabelImgget () const
 Getter for attribute OutWk1LabelImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutWk1LabelImg::StorageType &value)
 Setter for attribute OutWk1LabelImg.
 
template<>
const ipsdk::imaproc::attr::OutLabelImgget () const
 Getter for attribute OutLabelImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutLabelImg::StorageType &value)
 Setter for attribute OutLabelImg.
 
- Public Member Functions inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >
virtual eProcessorType getProcessorType () const =0
 
BoolResult init (const eProcessorRulePolicy rulePolicy=eProcessorRulePolicy::ePRP_DisableSubRules)
 
const eProcessorRulePolicygetProcessorRulePolicy () const
 
std::string getFullInfoStr () const
 
const BaseRulegetGlobalRule () const
 
const ProcessorDispatchPolicygetDispatchPolicy () const
 
void restrictDispatchPolicy (const ProcessorDispatchPolicy &policy)
 
bool isProgressAvailable () const
 
ipsdk::processor::eProcessorProgressAvailability getProgressAvailability () const
 
ipsdk::ipUInt64 getTotalNbIterations () const
 
bool existsHeaderKey (const std::string &key) const
 
bool existsHeaderKey (const std::string &key) const
 
ItemNames getHeaderKeys () const
 
ItemNames getHeaderKeys () const
 
const BaseDataItemgetHeaderItem (const std::string &key) const
 
BaseDataItemgetHeaderItem (const std::string &key)
 
const BaseDataItemgetHeaderItem (const std::string &key) const
 
BaseDataItemgetHeaderItem (const std::string &key)
 
void addHeaderItem (const std::string &key, const DataItemPtr &pItem)
 
void addHeaderItem (const std::string &key, const DataItemPtr &pItem)
 
void removeHeaderItem (const std::string &key)
 
void removeHeaderItem (const std::string &key)
 
void clearHeader ()
 
void clearHeader ()
 
ipUInt32 getNbAttributes () const
 
ipUInt32 getNbAttributes () const
 
const BaseAttributegetAttribute (ipUInt32 index) const
 
BaseAttributegetAttribute (ipUInt32 index)
 
const BaseAttributegetAttribute (const std::string &attributeName) const
 
BaseAttributegetAttribute (const std::string &attributeName)
 
const BaseAttributegetAttribute (ipUInt32 index) const
 
BaseAttributegetAttribute (ipUInt32 index)
 
const BaseAttributegetAttribute (const std::string &attributeName) const
 
BaseAttributegetAttribute (const std::string &attributeName)
 
bool existsAttribute (const std::string &attributeName) const
 
bool existsAttribute (const std::string &attributeName) const
 
StringVector getAttributeNameColl () const
 
StringVector getAttributeNameColl () const
 
bool hasOutputInitializer (const std::string &attributeName) const
 
bool hasOutputInitializer (const std::string &attributeName) const
 
const BaseOutputInitializergetOutputInitializer (const std::string &attributeName) const
 
const BaseOutputInitializergetOutputInitializer (const std::string &attributeName) const
 

Static Public Member Functions

static boost::shared_ptr< SuperPixels2dImgLvl2createProcessor ()
 processor creation function
 
static const std::string & getObjectNameStr ()
 method allowing to retrieve object name
 
static const std::string & getToolTipStr ()
 method allowing to retrieve object tooltip
 
static const boost::filesystem::path getHeaderPathStr ()
 retrieve relative header path associated to processor
 
static const std::string getLibraryNameStr ()
 retrieve library name associated processor
 

Protected Member Functions

 SuperPixels2dImgLvl2 ()
 constructor
 
ipsdk::processor::RetrievalResult retrieveProvider (const ipsdk::core::BasePriority &priority, ipsdk::ipUInt32 curNbIter, ipsdk::core::ActionProviderPtr &pProvider)
 method allowing to retrieve provider associated to asynchronous processing in derived class More...
 
ipsdk::core::ExecResult preProcess ()
 method called before processing More...
 
void initCenters ()
 method allowing to update super pixels center after an iteration
 
void updateCenters ()
 
void clearIntermediateData ()
 method allowing to clear intermediate data for object
 
processor::RetrievalResult provideProcessor (const boost::shared_ptr< core::BaseAction > &pProcessor, const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 For iteration calculation.
 
processor::RetrievalResult normalization (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
processor::RetrievalResult iterationSuperPixels (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
processor::RetrievalResult connectedComponent (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
processor::RetrievalResult removeSmallShape (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
processor::RetrievalResult watershed (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
processor::RetrievalResult boundaries (const core::BasePriority &priority, core::ActionProviderPtr &pProvider)
 
 IPSDK_DECLARE_DYNAMIC_RESULT_COLL (attr::OutSuperPixelUpdateCenters, OutSuperPixelUpdateCentersColl)
 
- Protected Member Functions inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >
virtual BoolResult initDerived (AttributeColl &attributeColl, OutputInitializerColl &outputInitializerColl, ProcessorDispatchPolicy &dispatchPolicy, RulePtr &pGlobalRule, const eProcessorRulePolicy &rulePolicy)=0
 

Protected Attributes

ipUInt64 _sizeSmallShape
 
attr::PixelsColorPtr _pPixelsColor
 
attr::SizeSuperPixelsPtr _pSizeSuperPixels
 
ipsdk::image::PlanExtractor _planExtractor
 Non-MemoryImage management.
 
Attribute members
boost::shared_ptr< ipsdk::imaproc::attr::InSubColorImg2d_pInSubColorImg2d
 
boost::shared_ptr< ipsdk::imaproc::attr::InSuperPixelsParamValue_pInSuperPixelsParamValue
 
boost::shared_ptr< ipsdk::imaproc::attr::InNbIter_pInNbIter
 
boost::shared_ptr< ipsdk::imaproc::attr::InCompactness_pInCompactness
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptSizeRatio_pInOptSizeRatio
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptSuperPixelsType_pInOptSuperPixelsType
 
boost::shared_ptr< ipsdk::imaproc::attr::OutWk1ColorImg_pOutWk1ColorImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutWk1LabelImg_pOutWk1LabelImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutLabelImg_pOutLabelImg
 
- Protected Attributes inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >
eProcessorProgressAvailability _processorProgressAvailability
 
ipUInt32 _nbIter
 

Additional Inherited Members

- Protected Types inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >
typedef std::vector< AttributePtrAttributeColl
 
typedef std::map< std::string, OutputInitializerPtrOutputInitializerColl
 

Detailed Description

Level 2 algorithm: Super pixels algorithm based on SLIC.

See Super Pixels 2d for a complete algorithm description.

Author
Warren AIM
Date
2022/03/07

Algorithm associated library :

IPSDKIPLAdvancedMorphology

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InSubColorImg2d [Input] color sub image 2d for processing operation X
ipsdk::imaproc::attr::InSuperPixelsParamValue [Input] Value used to initialize super pixels (number or size) X
ipsdk::imaproc::attr::InNbIter [Input] Number of iterations for an iterative algorithm X
ipsdk::imaproc::attr::InCompactness [Input] Ratio between distance and color for super pixels algorithm X
ipsdk::imaproc::attr::InOptSizeRatio [Input Optional] Ratio to compare a size with a reference X
ipsdk::imaproc::attr::InOptSuperPixelsType [Input Optional] Type of input parameter for super pixels algorithm (number of super pixels or size) X
ipsdk::imaproc::attr::OutWk1ColorImg [Output] Temporary working color image for algorithm X
ipsdk::imaproc::attr::OutWk1LabelImg [Output] Temporary working image for algorithm X
ipsdk::imaproc::attr::OutLabelImg [Output] label image for processing operation X

Global attributes rule :

Global rule on attributes is given by
ipsdk::processor::none ()

Member Function Documentation

◆ getStorage()

template<typename TAttribute >
TAttribute::StorageType ipsdk::imaproc::advmorpho::SuperPixels2dImgLvl2::getStorage ( )

retrieve storage associated to a given attribute

Note
This method is only available for Output and In/Out attributes
Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ retrieveProvider()

ipsdk::processor::RetrievalResult ipsdk::imaproc::advmorpho::SuperPixels2dImgLvl2::retrieveProvider ( const ipsdk::core::BasePriority priority,
ipsdk::ipUInt32  curNbIter,
ipsdk::core::ActionProviderPtr pProvider 
)
protected

method allowing to retrieve provider associated to asynchronous processing in derived class

Returns
provider retrieval result.
Note
On success provider pointer must not be null nor uninitialized

◆ preProcess()

ipsdk::core::ExecResult ipsdk::imaproc::advmorpho::SuperPixels2dImgLvl2::preProcess ( )
protected

method called before processing

Returns
execution result

The documentation for this class was generated from the following file: