DetectMultipleCircles


Finds circles of a given radius in the input image using Hough Transform.

Applications:Detection of circular or close-to-circular objects like holes, pins, pills, particles.

Syntax

C++
C#
Python
 
def DetectMultipleCircles(
	inImage: Image,
	inRadius: float,
	/,
	*,
	inRoi: Region | None = None,
	inMaxOverlap: float = 0.1,
	inMinScore: float = 20.0,
	inEdgeThreshold: float = 10.0,
	diagGradientMagnitudeImage: Image | None = None,
	diagScoreImage: Image | None = None
)
-> outCircles: list[HoughCircle]

Parameters

Name Type Range Default Description
Input value inImage Image Input image
Input value inRoi Region | None None Input region of interest
Input value inRadius float 0.0 - Circles' radius
Input value inMaxOverlap float 0.0 - 1.0 0.1 Maximum accepted overlapping coefficient
Input value inMinScore float 0.0 - 20.0 Minimum matching score
Input value inEdgeThreshold float 10.0 Minimum accepted edge magnitude
Output value outCircles list[HoughCircle] Found circles
Diagnostic input diagGradientMagnitudeImage Image | None None Visualized gradients magnitude of an input image
Diagnostic input diagScoreImage Image | None None Calculated score for each pixel of an input image

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.