You are here: Start » Function Reference » Computer Vision » Hough Transform » DetectLines

DetectLines
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | FoundationBasic |
Finds lines in an image using Hough Transform.
Syntax
void fil::DetectLines ( const fil::Image& inImage, ftl::Optional<const fil::Region&> inRoi, float inAngleResolution, float inMinAngleDelta, float inMinDistance, float inMinScore, float inEdgeThreshold, ftl::Array<fil::Line2D>& outLines, ftl::Array<float>& outScores, fil::Image& diagGradientMagnitudeImage, fil::Image& diagScoreImage )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() |
inImage | const Image& | Input image | ||
![]() |
inRoi | Optional<const Region&> | NIL | Input region of interest | |
![]() |
inAngleResolution | float | 0.1 - 180.0 | 1.0f | Resolution of lines' orientation |
![]() |
inMinAngleDelta | float | 0.0 - ![]() |
20.0f | Minimum angle between two lines |
![]() |
inMinDistance | float | 0.0 - ![]() |
20.0f | Minimum distance between two lines |
![]() |
inMinScore | float | 0.0 - ![]() |
20.0f | Minimum matching score |
![]() |
inEdgeThreshold | float | 10.0f | Minimum accepted edge magnitude | |
![]() |
outLines | Array<Line2D>& | Output lines | ||
![]() |
outScores | Array<float>& | Output scores | ||
![]() |
diagGradientMagnitudeImage | Image& | Visualized gradients magnitude of an input image | ||
![]() |
diagScoreImage | Image& | Calculated score for each pixel of an input image |
Description
The operation detects straight edges in the inImage using the Hough Transform approach and treats them as infinite lines. The output array is ordered from best matching to worst matching results.
The parameter inAngleResolution specifies the precision of detected lines' orientations. Value of n means the filter will be able to reliably distinguish lines in n-degree increments.
Parameters inMinAngleDelta and inMinDistance are used for neighbouring results suppression. inMinAngleDelta specifies the minimum angle between two lines while inMinDistance specifies the minimum distance between two parallel lines.
Examples
![]() |
![]() |
DetectLines performed on the sample image with inMinScore = 0.3.
Remarks
Low values of inAngleResolution (under 0.5) may cause high memory consumption and decrease in performance.
See Also
- DetectMultipleCircles – Finds circles of a given radius in the input image using Hough Transform.
- DetectPaths – Finds a specified shape in an image using Hough Transform.
- DetectSegments – Finds segments in an image using Hough Transform.