Back to Aurora Vision Library website

You are here: Start » Function Reference » Geometry 2D » Geometry 2D Fitting » FitLineToPoints_RANSAC

FitLineToPoints_RANSAC


Header: AVL.h
Namespace: avl
Module: FoundationBasic

Approximates points with a line using a RANSAC algorithm.

Applications: Finds a well matching line, but for handling outliers requires a distance threshold that may be difficult to set.

Syntax

C++
C#
 
void avl::FitLineToPoints_RANSAC
(
	const atl::Array<avl::Point2D>& inPoints,
	atl::Optional<const avl::Range&> inRange,
	atl::Optional<int> inMaxOutlierCount,
	float inMaxInlierDistance,
	atl::Optional<int> inIterationCount,
	atl::Conditional<avl::Line2D>& outLine
)

Parameters

Name Type Range Default Description
Input value inPoints const Array<Point2D>&
Input value inRange Optional<const Range&> NIL Determines which array points take part in fitting process
Input value inMaxOutlierCount Optional<int> 0 - 0 Determines how many outlier points can be present to end the search
Input value inMaxInlierDistance float 0.0 - 3.0f Distance from the output line for a point to be considered an inlier
Input value inIterationCount Optional<int> 1 - 42 Number of iterations; Auto means that all point pairs will be used
Output value outLine Conditional<Line2D>&

Errors

List of possible exceptions:

Error type Description
DomainError Empty array of points in FitLineToPoints_RANSAC.
DomainError Range exceeds the input point array in FitLineToPoints_RANSAC.