ClassesClassesClassesClasses | | | | Operators

hough_line_transhough_line_transHoughLineTranshough_line_transHoughLineTransHoughLineTrans (Operator)

Name

hough_line_transhough_line_transHoughLineTranshough_line_transHoughLineTransHoughLineTrans — Produce the Hough transform for lines within regions.

Signature

hough_line_trans(Region : HoughImage : AngleResolution : )

Herror hough_line_trans(const Hobject Region, Hobject* HoughImage, const Hlong AngleResolution)

Herror T_hough_line_trans(const Hobject Region, Hobject* HoughImage, const Htuple AngleResolution)

Herror hough_line_trans(Hobject Region, Hobject* HoughImage, const HTuple& AngleResolution)

HImage HRegion::HoughLineTrans(const HTuple& AngleResolution) const

void HoughLineTrans(const HObject& Region, HObject* HoughImage, const HTuple& AngleResolution)

HImage HRegion::HoughLineTrans(Hlong AngleResolution) const

void HOperatorSetX.HoughLineTrans(
[in] IHUntypedObjectX* Region, [out] IHUntypedObjectX*HoughImage, [in] VARIANT AngleResolution)

IHImageX* HRegionX.HoughLineTrans([in] Hlong AngleResolution)

static void HOperatorSet.HoughLineTrans(HObject region, out HObject houghImage, HTuple angleResolution)

HImage HRegion.HoughLineTrans(int angleResolution)

Description

The operator hough_line_transhough_line_transHoughLineTranshough_line_transHoughLineTransHoughLineTrans calculates the Hough transform for lines in those regions transmitted by RegionRegionRegionRegionRegionregion. Thereby the angles and the lengths of the lines´ normal vectors are registered in the parameter space (the Hough- or accumulator space respectively). This means that the parameterization is executed according to the HNF.

The result is registered in a newly generated Int2-Image (HoughImageHoughImageHoughImageHoughImageHoughImagehoughImage), whereby the x-axis is equivalent to the angle between the normal vector and the x-axis (in the original image), and the y-axis is equivalent to the distance of the line from the origin.

The angle ranges from -90 to 180 degrees and will be registered with a resolution of 1 / AngleResolutionAngleResolutionAngleResolutionAngleResolutionAngleResolutionangleResolution, which means that one pixel in x-direction is equivalent to 1 / AngleResolutionAngleResolutionAngleResolutionAngleResolutionAngleResolutionangleResolution and that the HoughImageHoughImageHoughImageHoughImageHoughImagehoughImage has a width of 270 * AngleResolutionAngleResolutionAngleResolutionAngleResolutionAngleResolutionangleResolution + 1 pixel. The height of the HoughImageHoughImageHoughImageHoughImageHoughImagehoughImage corresponds to the distance between the lower right corner of the surrounding rectangle of the input region and the origin.

The maxima in the result image are equivalent to the parameter values of the lines in the original image.

Parallelization

Parameters

RegionRegionRegionRegionRegionregion (input_object)  region objectHRegionHRegionHRegionHRegionXHobject

Binary edge image in which lines are to be detected.

HoughImageHoughImageHoughImageHoughImageHoughImagehoughImage (output_object)  image objectHImageHImageHImageHImageXHobject * (int2)

Hough transform for lines.

AngleResolutionAngleResolutionAngleResolutionAngleResolutionAngleResolutionangleResolution (input_control)  integer HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Adjusting the resolution in the angle area.

Default value: 4

List of values: 1, 2, 4, 8

Result

The operator hough_line_transhough_line_transHoughLineTranshough_line_transHoughLineTransHoughLineTrans 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>)set_system("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>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>). If necessary an exception is raised.

Possible Predecessors

thresholdthresholdThresholdthresholdThresholdThreshold, skeletonskeletonSkeletonskeletonSkeletonSkeleton

Possible Successors

thresholdthresholdThresholdthresholdThresholdThreshold, local_maxlocal_maxLocalMaxlocal_maxLocalMaxLocalMax

See also

hough_circle_transhough_circle_transHoughCircleTranshough_circle_transHoughCircleTransHoughCircleTrans, gen_region_hlinegen_region_hlineGenRegionHlinegen_region_hlineGenRegionHlineGenRegionHline

Module

Foundation


ClassesClassesClassesClasses | | | | Operators