Matching keypoints with binary descriptors
In the previous recipe, we learned how to describe a keypoint using rich descriptors extracted from the image intensity gradient. These descriptors are floating-point vectors that have a dimension of 64
, 128
, or sometimes even longer. This makes them costly to manipulate. In order to reduce the memory and computational load associated with these descriptors, the idea of using descriptors composed of a simple sequence of bits (0s and 1s) has been introduced. The challenge here is to make them easy to compute and yet keep them robust to scene and viewpoint changes. This recipe describes some of these binary descriptors. In particular, we will look at the ORB and BRISK descriptors for which we presented their associated feature point detectors in
Chapter 8
, Detecting Interest Points.
How to do it...
Thanks to the common interface of the OpenCV detectors and descriptors, using a binary descriptor such as ORB is no different from using descriptors such...