You are here: Start » Function Reference » Path » Path Features » PathTurnAngleLocalMaxima

PathTurnAngleLocalMaxima
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | FoundationPro |
Finds the local maxima of the profile of turn angles of a path.
Applications: Detection of feature points related to object corners.
Syntax
void fil::PathTurnAngleLocalMaxima ( const fil::Path& inPath, fil::TurnAngleDirection::Type inAllowedTurnDirection, fil::TurnAnglePrecision::Type inResultPrecision, const float inMinTurnAngle, const float inMinDistance, const float inSmoothingStdDev, ftl::Array<float>& outTurnAngleMaximaIndices, ftl::Array<fil::Point2D>& outTurnAngleMaximaPoints, ftl::Array<float>& outTurnAngleMaximaAngles, fil::Path& diagSmoothedPath, fil::Profile& diagTurnAngleProfile )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() |
inPath | const Path& | Input path | ||
![]() |
inAllowedTurnDirection | TurnAngleDirection::Type | All | Allows to detect only left-turns, only right-turns or both | |
![]() |
inResultPrecision | TurnAnglePrecision::Type | Switches between pixel-precise or subpixel-precise detection of the found maxima | ||
![]() |
inMinTurnAngle | const float | 0.0 - 180.0 | 30.0f | Minimal value of a relevant angle |
![]() |
inMinDistance | const float | 0.0 - ![]() |
0.0f | Minimal distance on the path between two local maxima assuming each path segment has unit length |
![]() |
inSmoothingStdDev | const float | 0.0 - ![]() |
0.6f | Standard deviation of the gaussian smoothing applied to the input path |
![]() |
outTurnAngleMaximaIndices | Array<float>& | Indices of found local maxima | ||
![]() |
outTurnAngleMaximaPoints | Array<Point2D>& | Found local maxima of turn angle profile of the smoothed input path | ||
![]() |
outTurnAngleMaximaAngles | Array<float>& | Turn angles of found local maxima | ||
![]() |
diagSmoothedPath | Path& | Input path smoothed with gaussian kernel | ||
![]() |
diagTurnAngleProfile | Profile& | Profile of turn angles at characteristic points of the smoothed input path |
Description
The operation computes the profile of turn angles of a path and finds the local maxima of the profile having value at least inMinTurnAngle. The inAllowedTurnDirection parameter restricts kind of turns taken into consideration (left-turns only, right-turns only or both), while inResultPrecision determines the precision of the resulting maxima points. Found maxima have to be at least inMinDistance from each other (the distance is measured along the input path assuming each path segment has unit length).
Examples
![]() |
PathTurnAngleLocalMaxima run on the sample path with inAllowedTurnDirection = Right
See Also
- PathTurnAngleMaximum – Finds the maximum of the profile of turn angles of a path.