InfluenceZones
Computes the Skeleton by Influence Zone (SKIZ).
Access to parameter description
For an introduction:
The influence zone of a particle Xi is the set of points closer to Xi than to any other particle Xj.
The skeleton by influence zones is the boundary splitting the different influence zones, and it separates the image into zones surrounding each object.

Figure 1. Skeleton by influence zones (SKIZ)
This algorithm searches the skeleton of a binary or labeled image by influence zones.
If the input is a binary image, it is first labelled, then the influence zones are determined by successive conditional dilations. 2221∙2111
The process stops as soon as all the zones are hitting each other.
See also
Access to parameter description
For an introduction:
- section Mathematical Morphology
- section Skeletonization
The influence zone of a particle Xi is the set of points closer to Xi than to any other particle Xj.
The skeleton by influence zones is the boundary splitting the different influence zones, and it separates the image into zones surrounding each object.

Figure 1. Skeleton by influence zones (SKIZ)
This algorithm searches the skeleton of a binary or labeled image by influence zones.
If the input is a binary image, it is first labelled, then the influence zones are determined by successive conditional dilations. 2221∙2111
The process stops as soon as all the zones are hitting each other.
See also
Function Syntax
This function returns outputBinaryImage.
// Function prototype
std::shared_ptr< iolink::ImageView > influenceZones( std::shared_ptr< iolink::ImageView > inputObjectImage, InfluenceZones::Neighborhood neighborhood, std::shared_ptr< iolink::ImageView > outputBinaryImage = NULL );
Class Syntax
Parameters
Class Name | InfluenceZones |
---|
Parameter Name | Description | Type | Supported Values | Default Value | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
![]() |
inputObjectImage |
The binary input or label image. | Image | Binary or Label | nullptr | ||||||
![]() |
neighborhood |
The 3D neighborhood configuration. This parameter is ignored with a 2D input image.
|
Enumeration | CONNECTIVITY_26 | |||||||
![]() |
outputBinaryImage |
The binary output image. Its size and type are forced to the same values as the input. | Image | nullptr |
Object Examples
auto foam_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam_sep.vip" ); InfluenceZones influenceZonesAlgo; influenceZonesAlgo.setInputObjectImage( foam_sep ); influenceZonesAlgo.setNeighborhood( InfluenceZones::Neighborhood::CONNECTIVITY_26 ); influenceZonesAlgo.execute(); std::cout << "outputBinaryImage:" << influenceZonesAlgo.outputBinaryImage()->toString();
Function Examples
auto foam_sep = readVipImage( std::string( IMAGEDEVDATA_IMAGES_FOLDER ) + "foam_sep.vip" ); auto result = influenceZones( foam_sep, InfluenceZones::Neighborhood::CONNECTIVITY_26 ); std::cout << "outputBinaryImage:" << result->toString();