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::RidgeLine2dImgLvl1 Class Reference

Level 1 algorithm: Computes the shortest path from one border to its opposite, given distance ponderation map. More...

#include <RidgeLine2dImgLvl1.h>

Inheritance diagram for ipsdk::imaproc::advmorpho::RidgeLine2dImgLvl1:
ipsdk::processor::BaseProcessor< ipsdk::core::BaseAsync2Action >

Public Member Functions

 ~RidgeLine2dImgLvl1 ()
 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::InImgget () const
 Getter for attribute InImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::InImg::StorageType &value)
 Setter for attribute InImg.
 
template<>
const ipsdk::imaproc::attr::InOptMaskImgget () const
 Getter for attribute InOptMaskImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptMaskImg::StorageType &value)
 Setter for attribute InOptMaskImg.
 
template<>
const ipsdk::imaproc::attr::InPropagationAxisget () const
 Getter for attribute InPropagationAxis.
 
template<>
void set (const typename ipsdk::imaproc::attr::InPropagationAxis::StorageType &value)
 Setter for attribute InPropagationAxis.
 
template<>
const ipsdk::imaproc::attr::InPropagationDirectionget () const
 Getter for attribute InPropagationDirection.
 
template<>
void set (const typename ipsdk::imaproc::attr::InPropagationDirection::StorageType &value)
 Setter for attribute InPropagationDirection.
 
template<>
const ipsdk::imaproc::attr::InOptComputeOutImgget () const
 Getter for attribute InOptComputeOutImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptComputeOutImg::StorageType &value)
 Setter for attribute InOptComputeOutImg.
 
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::OutDistImgget () const
 Getter for attribute OutDistImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutDistImg::StorageType &value)
 Setter for attribute OutDistImg.
 
template<>
const ipsdk::imaproc::attr::OutIntImgget () const
 Getter for attribute OutIntImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutIntImg::StorageType &value)
 Setter for attribute OutIntImg.
 
template<>
const ipsdk::imaproc::attr::OutBinImgget () const
 Getter for attribute OutBinImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutBinImg::StorageType &value)
 Setter for attribute OutBinImg.
 
template<>
const ipsdk::imaproc::attr::OutPIPixels2dget () const
 Getter for attribute OutPIPixels2d.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutPIPixels2d::StorageType &value)
 Setter for attribute OutPIPixels2d.
 
- Public Member Functions inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseAsync2Action >
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< RidgeLine2dImgLvl1createProcessor ()
 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

 RidgeLine2dImgLvl1 ()
 constructor
 
ipsdk::processor::RetrievalResult retrieveFirstProvider (const ipsdk::core::BasePriority &priority, ipsdk::core::ActionProviderPtr &pProvider)
 method allowing to retrieve first provider associated to asynchronous processing in derived class More...
 
ipsdk::processor::RetrievalResult retrieveSecondProvider (const ipsdk::core::BasePriority &priority, ipsdk::core::ActionProviderPtr &pProvider)
 method allowing to retrieve second provider associated to asynchronous processing in derived class More...
 
ipsdk::core::ExecResult preProcess ()
 method called before processing More...
 
ipReal64 getImageMinValue ()
 method returning the minimum value of _pInImg
 
- Protected Member Functions inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseAsync2Action >
virtual BoolResult initDerived (AttributeColl &attributeColl, OutputInitializerColl &outputInitializerColl, ProcessorDispatchPolicy &dispatchPolicy, RulePtr &pGlobalRule, const eProcessorRulePolicy &rulePolicy)=0
 

Protected Attributes

attr::PlanIndexedStatsResultPtr _pPlanIndexedStatsResult
 
Attribute members
boost::shared_ptr< ipsdk::imaproc::attr::InImg_pInImg
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptMaskImg_pInOptMaskImg
 
boost::shared_ptr< ipsdk::imaproc::attr::InPropagationAxis_pInPropagationAxis
 
boost::shared_ptr< ipsdk::imaproc::attr::InPropagationDirection_pInPropagationDirection
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptComputeOutImg_pInOptComputeOutImg
 
boost::shared_ptr< ipsdk::imaproc::attr::InNbIter_pInNbIter
 
boost::shared_ptr< ipsdk::imaproc::attr::OutDistImg_pOutDistImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutIntImg_pOutIntImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutBinImg_pOutBinImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutPIPixels2d_pOutPIPixels2d
 
- Protected Attributes inherited from ipsdk::processor::BaseProcessor< ipsdk::core::BaseAsync2Action >
eProcessorProgressAvailability _processorProgressAvailability
 
ipUInt32 _nbIter
 

Additional Inherited Members

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

Detailed Description

Level 1 algorithm: Computes the shortest path from one border to its opposite, given distance ponderation map.

See Ridge Line 2d for a complete algorithm description.

Author
A. Eymar
Date
2021/11/30

Algorithm associated library :

IPSDKIPLAdvancedMorphology

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InImg [Input] image for processing operation X
ipsdk::imaproc::attr::InOptMaskImg [Input Optional] Binary image for masking operation X
ipsdk::imaproc::attr::InPropagationAxis [Input] input axis propagation for the algorithm X
ipsdk::imaproc::attr::InPropagationDirection [Input] Direction propagation for the algorithm X
ipsdk::imaproc::attr::InOptComputeOutImg [Input Optional] Flag indicating if the optional output image has to be computed X
ipsdk::imaproc::attr::InNbIter [Input] Number of iterations for an iterative algorithm X
ipsdk::imaproc::attr::OutDistImg [Output] distance map image duplicateInOut (_pOutDistImg, _pInImg, ipsdk::image::eImageBufferType::eIBT_Real32)
ipsdk::imaproc::attr::OutIntImg [Output] image containing integers duplicateInOut (_pOutIntImg, _pInImg, ipsdk::image::eImageBufferType::eIBT_UInt8)
ipsdk::imaproc::attr::OutBinImg [Output] binary image for processing operation duplicateInOut (_pOutBinImg, _pInImg, ipsdk::image::eImageBufferType::eIBT_Binary)
ipsdk::imaproc::attr::OutPIPixels2d [Output] plan indexed collection of positions and intensities of 2d pixels ipsdk::imaproc::fromImage (_pOutPIPixels2d, _pInImg)

Global attributes rule :

Global rule on attributes is given by
ipsdk::imaproc::matchSize (_pInImg,_pOutDistImg,_pOutIntImg) && 
ipsdk::imaproc::matchImagePlans (_pOutPIPixels2d,_pInImg,eImagePlansMatchPolicy::eIPMP_ZCT) && 
ipsdk::processor::If (
 ipsdk::processor::isSet (_pInOptMaskImg),
 ipsdk::imaproc::matchSize (_pInImg,_pInOptMaskImg),
 ipsdk::processor::none ()) && 
ipsdk::imaproc::matchSize (_pOutDistImg,_pOutBinImg)

Member Function Documentation

◆ getStorage()

template<typename TAttribute >
TAttribute::StorageType ipsdk::imaproc::advmorpho::RidgeLine2dImgLvl1::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

◆ retrieveFirstProvider()

ipsdk::processor::RetrievalResult ipsdk::imaproc::advmorpho::RidgeLine2dImgLvl1::retrieveFirstProvider ( const ipsdk::core::BasePriority priority,
ipsdk::core::ActionProviderPtr pProvider 
)
protected

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

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

◆ retrieveSecondProvider()

ipsdk::processor::RetrievalResult ipsdk::imaproc::advmorpho::RidgeLine2dImgLvl1::retrieveSecondProvider ( const ipsdk::core::BasePriority priority,
ipsdk::core::ActionProviderPtr pProvider 
)
protected

method allowing to retrieve second 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::RidgeLine2dImgLvl1::preProcess ( )
protected

method called before processing

Returns
execution result

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