Please ask questions in the comments below.
Q: Where do I get FAST?
Q: Why is the code so hard to read?
A: It is machine generated. You aren’t supposed to read it :)
Q: How do I get N corners?
A: You have to adjust the threshold t automatically:
- If N is too high, increase t. If N is too low, decrease t.
- Perform binary search over t to find the value which gives N corners
- Set t too low (N too high). Compute the corner score and sort corners by the score. Then keep the N with the highest score.
Q: Why is the Python/MATLAB code slow?
A: The FAST algorithm has been designed to work as quickly as possible and is therefore target strongly towards compiled languages. The code is provided for ease of use for interpreted languages, but it will not be especially quick. If you need it to run quickly you will need to interface to the C version.