Back to Aurora Vision Library website

You are here: Start » Function Reference » Computer Vision » Image Segmentation » SegmentImage_Edges

SegmentImage_Edges


Header: AVL.h
Namespace: avl
Module: FoundationPro

Segments an image into blobs using image edges as their borders.

Applications: Detection of objects of undefined shape, but characterized by good contrast to the background and fairly uniform internal brightness.

Syntax

C++
C#
 
void avl::SegmentImage_Edges
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	const int inFrameSize,
	float inStdDev,
	float inEdgeThreshold,
	float inEdgeHysteresis,
	const float inMaxJoiningDistance,
	const int inMinArea,
	atl::Optional<int> inMaxArea,
	bool inComputeNestingLevels,
	const int inEdgeClosing,
	atl::Array<avl::Region>& outBlobs,
	atl::Optional<atl::Array<int>&> outNestingLevels = atl::NIL,
	avl::Region& diagEdgeRegion = atl::Dummy<avl::Region>()
)

Parameters

Name Type Range Default Description
Input value inImage const Image& Image from which blobs are extracted
Input value inRoi Optional<const Region&> NIL Range of pixels to be processed
Input value inFrameSize const int 0 - 1 How many pixels from the region border are excluded from the results
Input value inStdDev float 0.0 - 2.0f Amount of smoothing used by the edge filter
Input value inEdgeThreshold float 0.0 - 15.0f Sufficient edge strength; edges of that strength will always be detected
Input value inEdgeHysteresis float 0.0 - 5.0f Value by which the edge threshold is decreased for edge points neighboring with sufficiently strong edges
Input value inMaxJoiningDistance const float 0.0 - 0.0f Maximal distance between edges that can be joined
Input value inMinArea const int 0 - 50 Minimal area of a detected blob
Input value inMaxArea Optional<int> 0 - NIL Maximal area of a detected blob
Input value inComputeNestingLevels bool Flag indicating whether nesting levels should be computed
Input value inEdgeClosing const int 0 - 1 Radius of enclosing small holes in the detected blobs
Output value outBlobs Array<Region>& Blobs extracted from the input image
Output value outNestingLevels Optional<Array<int>&> NIL Nesting level of each extracted blob
Diagnostic input diagEdgeRegion Region& Region of the found edges

Optional Outputs

The computation of following outputs can be switched off by passing value atl::NIL to these parameters: outNestingLevels.

Read more about Optional Outputs.

Examples

SegmentImage_Edges performed on an image of labels; default parameters.