IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit

holes filling in a binary 3d image More...

IPSDKIPLADVANCEDMORPHOLOGY_API image::ImagePtr ipsdk::imaproc::advmorpho::fillHole3dImg (const image::ImageConstPtr &pInBinImg3d)
 wrapper function for holes filling in a binary 3d image More...
 
IPSDKIPLADVANCEDMORPHOLOGY_API void ipsdk::imaproc::advmorpho::fillHole3dImg (const image::ImageConstPtr &pInBinImg3d, const eNeighborhood3dType &inOptNeighborhood3d, const ipsdk::imaproc::attr::eProcessingOptimizationPolicy &inOptOptimizationPolicy, const image::ImagePtr &pOutImg)
 wrapper function for holes filling in a binary 3d image More...
 

Detailed Description

holes filling in a binary 3d image

This algorithm allows to fill holes inside connected components in an input binary image InBinImg3d with respect to a given neighborhood 3d policy (see 3d neighborhood models).

Two versions of this algorithm are implemented which can be selected using attribute InOptOptimizationPolicy which associated to enumerate ipsdk::imaproc::attr::eProcessingOptimizationPolicy :

An example of hole filling algorithm is illustrated in 2d case : see Fill hole 2d.

Attributes description

Attribute description for algorithm :

Name ToolTip Default Initializer
ipsdk::imaproc::attr::InBinImg3d [Input] binary 3d image for processing operation X
ipsdk::imaproc::attr::InOptNeighborhood3d [Input optional] neighborhood 3d type for operation X
ipsdk::imaproc::attr::InOptOptimizationPolicy [Input Optional] processing optimization policy for algorithm X
ipsdk::imaproc::attr::OutOptWk1BinImg [Output Optional] Temporary working image for algorithm X
ipsdk::imaproc::attr::OutOptWk1LabelImg [Output Optional] Temporary working image for algorithm X
ipsdk::imaproc::attr::OutImg [Output] image for processing operation ipsdk::imaproc::duplicateInOut (_pOutImg, _pInBinImg3d)

Global Rule description

Global rule description for algorithm :
((ipsdk::imaproc::matchSizeAndType (_pInBinImg3d,_pOutImg)) && 
 (ipsdk::processor::ifIsSet (
   _pOutOptWk1BinImg, (
    ipsdk::imaproc::matchSize (_pInBinImg3d,_pOutOptWk1BinImg))) && 
  (ipsdk::processor::ifIsSet (
    _pOutOptWk1LabelImg, (
     ipsdk::imaproc::matchSize (_pInBinImg3d,_pOutOptWk1LabelImg))))))

Example of Python code :

Example imports

import PyIPSDK
import PyIPSDK.IPSDKIPLAdvancedMorphology as advmorpho

Code Example

# opening of input image
inBinImg3d = PyIPSDK.loadTiffImageFile(inputImgPath)
# compute hole filling on input image
outImg = advmorpho.fillHole3dImg(inBinImg3d)

Example of C++ code :

Example informations

Associated library

IPSDKIPLAdvancedMorphology

Header file

Code Example

// opening input image
ImagePtr pInBinImg3d = loadTiffImageFile(inputImgPath, eTiffDirectoryMode::eTDM_Volume, eTiffBufferMode::eTBM_Binary);
// compute hole filling on input image
ImagePtr pOutImg = fillHole3dImg(pInBinImg3d);
See also
FillHole3dImgLvl1

Function Documentation

◆ fillHole3dImg() [1/2]

IPSDKIPLADVANCEDMORPHOLOGY_API image::ImagePtr ipsdk::imaproc::advmorpho::fillHole3dImg ( const image::ImageConstPtr pInBinImg3d)

wrapper function for holes filling in a binary 3d image

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure

◆ fillHole3dImg() [2/2]

IPSDKIPLADVANCEDMORPHOLOGY_API void ipsdk::imaproc::advmorpho::fillHole3dImg ( const image::ImageConstPtr pInBinImg3d,
const eNeighborhood3dType inOptNeighborhood3d,
const ipsdk::imaproc::attr::eProcessingOptimizationPolicy inOptOptimizationPolicy,
const image::ImagePtr pOutImg 
)

wrapper function for holes filling in a binary 3d image

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionon failure