You are here: Start » AVL.NET » AVL.SplitRegionIntoBlobs


Splits a region into an array of regions corresponding to its connected components.



public static void SplitRegionIntoBlobs
	AvlNet.Region inRegion,
	AvlNet.RegionConnectivity inConnectivity,
	int inMinBlobArea,
	int? inMaxBlobArea,
	bool inRemoveBoundaryBlobs,
	IList<AvlNet.Region> outBlobs,
	IList<int> diagBlobAreas


Name Type Range Default Description
inRegionAvlNet.RegionInput region.
inConnectivityAvlNet.RegionConnectivityType of connectivity used for the region foreground.
inMinBlobAreaint<0, INF>1Minimal area of a resulting blob. Default value: 1.
inMaxBlobAreaint?<0, INF>Maximal area of a resulting blob. Default value: atl::NIL.
inRemoveBoundaryBlobsboolFalseFlag indicating whether the blobs on border of the input region should be removed or not. Default value: False.
diagBlobAreasSystem.Collections.Generic.IList<int>Areas of extracted blobs.


The operation computes an array of connected regions corresponding to the connected components of the input region pixels. Each region in the resulting array will have dimensions equal to those of the input region.

Resulting array will contain only regions which have area in range defined by inputs: inMinBlobArea and inMaxBlobArea.

Images below shows neighbor of the gray pixel in different inConnectivity selection.

inConnectivity.FourDirections inConnectivity.EightDirections


The image below show an input 10x10 pixels region.

Images below shows result of SplitRegionIntoBlobs filter with different inConnectivity.

inConnectivity.FourDirections inConnectivity.EightDirections

Images below shows result of SplitRegionIntoBlobs filter with different inRemoveBoundaryBlobs.

inRemoveBoundaryBlobs = True inRemoveBoundaryBlobs = False


When inRemoveBoundaryBlobs is set to True all filters near the region boundary will be removed. The region boundary is described by region frame.

This filter is mostly used in Blob Analysis Technique please refer to our Machine Vision Guide - Blob Analysis article.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

Hardware acceleration settings may be manipulated with Settings class.

Function Overrides

See also