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::filter::GaussianHessian3dImgLvl1 Class Reference

Level 1 algorithm: Gaussian filter used to compute Hessian on a 3d image. More...

#include <GaussianHessian3dImgLvl1.h>

Inheritance diagram for ipsdk::imaproc::filter::GaussianHessian3dImgLvl1:
ipsdk::processor::BaseProcessor< ipsdk::core::BaseRepeatedAsync1Action >

Public Member Functions

 ~GaussianHessian3dImgLvl1 ()
 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::InImg3dget () const
 Getter for attribute InImg3d.
 
template<>
void set (const typename ipsdk::imaproc::attr::InImg3d::StorageType &value)
 Setter for attribute InImg3d.
 
template<>
const ipsdk::imaproc::attr::InStdDevXget () const
 Getter for attribute InStdDevX.
 
template<>
void set (const typename ipsdk::imaproc::attr::InStdDevX::StorageType &value)
 Setter for attribute InStdDevX.
 
template<>
const ipsdk::imaproc::attr::InStdDevYget () const
 Getter for attribute InStdDevY.
 
template<>
void set (const typename ipsdk::imaproc::attr::InStdDevY::StorageType &value)
 Setter for attribute InStdDevY.
 
template<>
const ipsdk::imaproc::attr::InStdDevZget () const
 Getter for attribute InStdDevZ.
 
template<>
void set (const typename ipsdk::imaproc::attr::InStdDevZ::StorageType &value)
 Setter for attribute InStdDevZ.
 
template<>
const ipsdk::imaproc::attr::InOptHessianGaussianCoverageget () const
 Getter for attribute InOptHessianGaussianCoverage.
 
template<>
void set (const typename ipsdk::imaproc::attr::InOptHessianGaussianCoverage::StorageType &value)
 Setter for attribute InOptHessianGaussianCoverage.
 
template<>
const ipsdk::imaproc::attr::OutHxxImgget () const
 Getter for attribute OutHxxImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHxxImg::StorageType &value)
 Setter for attribute OutHxxImg.
 
template<>
const ipsdk::imaproc::attr::OutHxyImgget () const
 Getter for attribute OutHxyImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHxyImg::StorageType &value)
 Setter for attribute OutHxyImg.
 
template<>
const ipsdk::imaproc::attr::OutHxzImgget () const
 Getter for attribute OutHxzImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHxzImg::StorageType &value)
 Setter for attribute OutHxzImg.
 
template<>
const ipsdk::imaproc::attr::OutHyyImgget () const
 Getter for attribute OutHyyImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHyyImg::StorageType &value)
 Setter for attribute OutHyyImg.
 
template<>
const ipsdk::imaproc::attr::OutHyzImgget () const
 Getter for attribute OutHyzImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHyzImg::StorageType &value)
 Setter for attribute OutHyzImg.
 
template<>
const ipsdk::imaproc::attr::OutHzzImgget () const
 Getter for attribute OutHzzImg.
 
template<>
void set (const typename ipsdk::imaproc::attr::OutHzzImg::StorageType &value)
 Setter for attribute OutHzzImg.
 
- 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< GaussianHessian3dImgLvl1createProcessor ()
 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

 GaussianHessian3dImgLvl1 ()
 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 clearIntermediateData ()
 method allowing to clear intermediate data for object
 
ipsdk::processor::RetrievalResult convolve (const ipsdk::core::BasePriority &priority, ipsdk::core::ActionProviderPtr &pProvider, const ipsdk::image::ImageConstPtr &pInImg, const KernelXYZConstPtr &pKnl, const ipsdk::image::ImagePtr pOutImg)
 method allowing to process a convolution to an image and a kernel
 
- 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

image::Border3dPolicyPtr _pBorder3dPolicy
 
Attribute members
boost::shared_ptr< ipsdk::imaproc::attr::InImg3d_pInImg3d
 
boost::shared_ptr< ipsdk::imaproc::attr::InStdDevX_pInStdDevX
 
boost::shared_ptr< ipsdk::imaproc::attr::InStdDevY_pInStdDevY
 
boost::shared_ptr< ipsdk::imaproc::attr::InStdDevZ_pInStdDevZ
 
boost::shared_ptr< ipsdk::imaproc::attr::InOptHessianGaussianCoverage_pInOptHessianGaussianCoverage
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHxxImg_pOutHxxImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHxyImg_pOutHxyImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHxzImg_pOutHxzImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHyyImg_pOutHyyImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHyzImg_pOutHyzImg
 
boost::shared_ptr< ipsdk::imaproc::attr::OutHzzImg_pOutHzzImg
 
KernelXYZPtr _pXSmoothingKernel
 kernel used for processing
 
KernelXYZPtr _pYSmoothingKernel
 kernel used for processing
 
KernelXYZPtr _pZSmoothingKernel
 kernel used for processing
 
KernelXYZPtr _pXGradientKernel
 kernel used for processing
 
KernelXYZPtr _pYGradientKernel
 kernel used for processing
 
KernelXYZPtr _pZGradientKernel
 kernel used for processing
 
KernelXYZPtr _pXHessianKernel
 kernel used for processing
 
KernelXYZPtr _pYHessianKernel
 kernel used for processing
 
KernelXYZPtr _pZHessianKernel
 kernel used for processing
 
- 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 1 algorithm: Gaussian filter used to compute Hessian on a 3d image.

See Gaussian Hessian 3d for a complete algorithm description.

Author
R. Abbal
Date
2017/08/31

Algorithm associated library :

IPSDKIPLFiltering

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InImg3d [Input] 3d image for operation X
ipsdk::imaproc::attr::InStdDevX [Input] standard deviation used for operation along X axis X
ipsdk::imaproc::attr::InStdDevY [Input] standard deviation used for operation along Z axis X
ipsdk::imaproc::attr::InStdDevZ [Input] standard deviation used for operation along Z axis X
ipsdk::imaproc::attr::InOptHessianGaussianCoverage [Input Optional] Parameter allowing to specify a gaussian distribution coverage for processing X
ipsdk::imaproc::attr::OutHxxImg [Output] image of hessian (x-x axis) promoteUnary (_pOutHxxImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)
ipsdk::imaproc::attr::OutHxyImg [Output] image of image of hessian (x-y axis) promoteUnary (_pOutHxyImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)
ipsdk::imaproc::attr::OutHxzImg [Output] image of hessian (x-z axis) promoteUnary (_pOutHxzImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)
ipsdk::imaproc::attr::OutHyyImg [Output] image of hessian (y-y axis) promoteUnary (_pOutHyyImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)
ipsdk::imaproc::attr::OutHyzImg [Output] image of image of hessian (y-z axis) promoteUnary (_pOutHyzImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)
ipsdk::imaproc::attr::OutHzzImg [Output] image of image of hessian (z-z axis) promoteUnary (_pOutHzzImg, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned)

Global attributes rule :

Global rule on attributes is given by
ipsdk::imaproc::matchSize (_pInImg3d,_pOutHxxImg) && 
ipsdk::imaproc::matchSizeAndType (_pOutHxxImg,_pOutHxyImg) && 
ipsdk::imaproc::matchSizeAndType (_pOutHxxImg,_pOutHxzImg) && 
ipsdk::imaproc::matchSizeAndType (_pOutHxxImg,_pOutHyyImg) && 
ipsdk::imaproc::matchSizeAndType (_pOutHxxImg,_pOutHyzImg) && 
ipsdk::imaproc::matchSizeAndType (_pOutHxxImg,_pOutHzzImg)

Member Function Documentation

◆ getStorage()

template<typename TAttribute >
TAttribute::StorageType ipsdk::imaproc::filter::GaussianHessian3dImgLvl1::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::filter::GaussianHessian3dImgLvl1::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::filter::GaussianHessian3dImgLvl1::preProcess ( )
protected

method called before processing

Returns
execution result

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