fast
- arrayfire.fast(image: Array, /, fast_threshold: float = 20.0, arc_length: int = 9, non_max: bool = True, feature_ratio: float = 0.05, edge: int = 3) Features
Detects corners and interest points in an image using the FAST (Features from Accelerated Segment Test) algorithm.
Parameters
- imageArray
The input image as a 2D ArrayFire array. The image should be grayscale.
- fast_thresholdfloat, default=20.0
The intensity threshold for considering a pixel to be brighter or darker than the circular set of pixels around the candidate pixel. This value determines the sensitivity of the feature detection: higher values result in fewer features being detected.
- arc_lengthint, default=9
The minimum number of contiguous edge pixels (in the circle around the candidate pixel) required for the candidate pixel to be considered as a corner. The maximum length should be 16.
- non_maxbool, default=True
If True, non-maximal suppression is applied to the detected features, ensuring that only the strongest features are retained.
- feature_ratiofloat, default=0.05
Specifies the maximum ratio of features to pixels in the image, controlling the density of features detected.
- edgeint, default=3
The number of pixels to ignore along the edge of the image. This parameter helps in excluding features that are too close to the edge of the image, which may not be reliable.
Returns
- Features
An ArrayFire Features object containing the detected points. The features include locations and scores, while orientations and sizes are not computed by the FAST algorithm.
Note
The FAST algorithm is particularly well-suited for real-time applications due to its computational efficiency. However, it is sensitive to the choice of fast_threshold and arc_length parameters, which should be tuned based on the specific requirements of the application and the characteristics of the input images.