hough_circleshough_circlesHoughCirclesHoughCircles (Operator)

Name

hough_circleshough_circlesHoughCirclesHoughCircles — Centres of circles for a specific radius.

Signature

hough_circles(RegionIn : RegionOut : Radius, Percent, Mode : )

Herror hough_circles(const Hobject RegionIn, Hobject* RegionOut, const Hlong Radius, const Hlong Percent, const Hlong Mode)

Herror T_hough_circles(const Hobject RegionIn, Hobject* RegionOut, const Htuple Radius, const Htuple Percent, const Htuple Mode)

void HoughCircles(const HObject& RegionIn, HObject* RegionOut, const HTuple& Radius, const HTuple& Percent, const HTuple& Mode)

HRegion HRegion::HoughCircles(const HTuple& Radius, const HTuple& Percent, const HTuple& Mode) const

HRegion HRegion::HoughCircles(Hlong Radius, Hlong Percent, Hlong Mode) const

static void HOperatorSet.HoughCircles(HObject regionIn, out HObject regionOut, HTuple radius, HTuple percent, HTuple mode)

HRegion HRegion.HoughCircles(HTuple radius, HTuple percent, HTuple mode)

HRegion HRegion.HoughCircles(int radius, int percent, int mode)

Description

hough_circle_transhough_circle_transHoughCircleTransHoughCircleTransHoughCircleTrans detects the centres of circles in regions with the help of the Hough transform for circles with a specific radius.

Execution Information

Parameters

RegionInRegionInRegionInRegionInregionIn (input_object)  region objectHRegionHRegionHobject

Binary edge image in which the circles are to be detected.

RegionOutRegionOutRegionOutRegionOutregionOut (output_object)  region(-array) objectHRegionHRegionHobject *

Centres of those circles which are included in the edge image by PercentPercentPercentPercentpercent percent.

Number of elements: RegionOut == Radius * Percent * Mode

RadiusRadiusRadiusRadiusradius (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Radius of the circle to be searched in the image.

Number of elements: 1 <= Radius <= 500

Default value: 12

Typical range of values: 2 ≤ Radius Radius Radius Radius radius ≤ 500 (lin)

Minimum increment: 1

Recommended increment: 1

PercentPercentPercentPercentpercent (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Indicates the percentage (approximately) of the (ideal) circle which must be present in the edge image RegionInRegionInRegionInRegionInregionIn.

Number of elements: 1 <= Percent <= 100

Default value: 60

Typical range of values: 10 ≤ Percent Percent Percent Percent percent ≤ 100 (lin)

Minimum increment: 1

Recommended increment: 5

ModeModeModeModemode (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

The modus defines the position of the circle in question:
0 - the radius is equivalent to the outer border of the set pixels.
1 - the radius is equivalent to the centres of the circle lines' pixels.
2 - both 0 and 1 (a little more fuzzy, but more reliable in contrast to circles set slightly differently, necessitates 50 % more processing capacity compared to 0 or 1 alone).

Number of elements: 1 <= Mode <= 3

List of values: 0, 1, 2

Result

The operator hough_circleshough_circlesHoughCirclesHoughCirclesHoughCircles returns the value 2 (H_MSG_TRUE) if the input is not empty. The behavior in case of empty input (no input regions available) is set via the operator set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>), the behavior in case of empty region is set via set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>). If necessary an exception is raised.

Module

Foundation