| URL: https://github.com/edrosten/fast-C-src |
| Version: 391d5e939eb1545d24c10533d7de424db8d9c191 |
| License: BSD |
| License File: LICENSE |
| |
| Description: |
| Library to compute FAST features with non-maximum suppression. |
| |
| The files are valid C and C++ code, and have no special requirements for |
| compiling, and they do not depend on any libraries. Just compile them along with |
| the rest of your project. |
| |
| To use the functions, #include "fast.h" |
| |
| The corner detectors have the following prototype (where X is 9, 10, 11 or 12): |
| |
| xy* fastX_detect_nonmax(const unsigned char * data, int xsize, int ysize, int stride, int threshold, int* numcorners) |
| |
| Where xy is the following simple struct typedef: |
| |
| typedef struct |
| { |
| int x, y; |
| } xy; |
| |
| The image is passed in as a block of data and dimensions, and the list of |
| corners is returned as an array of xy structs, and an integer (numcorners) |
| with the number of corners returned. The data can be deallocated with free(). |
| Nonmaximal suppression is performed on the corners. Note that the stride |
| is the number of bytes between rows. If your image has no padding, then this |
| is the same as xsize. |
| |
| The detection, scoring and nonmaximal suppression are available as individual |
| functions. To see how to use the individual functions, see fast.c |
| |
| Local Modifications: |
| Add lines to turn off clang formatting for these files |
| Remove Fast 10, 11 and 12 |
| Convert tabs to spaces |
| Prefix global functions with "aom_" |
| Add error checking |
| Add output argument to hold the scores of the detected features |
| Add assertion and rewrite comparisons to appease the scan-build static analyzer |