What is interest point detection?
- Visually ‘salient’ features.
- Localized in 2D.
- High ‘information’ content.
- Repeatable between images.
To extract a small square of pixels (e.g. 11×11) from around the FAST interest points, as a vector. Match two points by looking at the norm of the difference between the square. Then, you have to compare every point in the first image to every point in the second to find the best match.
If you wish to build your own FAST detector (e.g. trained on your own data, targeting another language, or using some new optimizations), then the FAST-ER code provides programs for training new FAST-N detectors as well as FAST-ER detectors.
- Sparsely sample 8×8 patches around corners
Quantise to 5 levels, relative to mean and standard deviation of samples
Use independent features from different scales and orientations
- Matching problem is simplified, However, will need lots of features to cover range of views to be matched
- 252 viewpoint bins (each with 10 degrees rotation, scale reduction by 0.8, up to 30 degrees out-of-plane view) Around 50 features from each viewpoint, So around 13000 features for a target
Combining Quantised Patches
Combine quantised patches from different images where interest point detected nearby
The radius you need depends on the scale of the features, rather than the size of the image. If the features are very blurry, then you will need a bigger ring. The easiest and most efficient way to do this is to subsample the image, e.g. by taking 2×2 squares, and averaging the pixels inside to make a single output pixel.
Histograms quantised to binary representation
used FAST on greyscale images. The proper way is to convert to grey by using the CIE weightings. The easiest/quickest way is to use the green channel, which is not a bad approximation of the CIE weightings.
FAST, extract patches, matching, pose
Matching speed is of key importance in real-time vision applications
- Frame-to-frame tracking can be efficient, but requires initialisation
- fast localisation methods are needed
- Local Feature
- Naturally handle partial occlusion and some incorrect correspondences
- Represent a target as a small set of key features (~100s)
- Attempt to identify and match key features in any view of target
- Existing Local Feature Approaches:
- Descriptor-based, e.g. SIFT: Factor out as much variation as possible, Soft-binned histograms
- Clasification-based, e.g. Ferns: Train classifiers on different views of the same feature, Lower runtime computational cost, but high memory usage
Just require features to match under small viewpoint variations – Simplifies matching problem;
Independent sets of features can handle large viewpoint change
Classification-based(runtime speed is key)
Desired runtime operations:
– FAST-9 Corner Detection
– Simple “descriptor”
– Efficient dissimilarity score computation
– (PROSAC for pose estimation)