The BRIEF algorithms provides a shortcut to find the binary strings directly without finding descriptors.
It takes smoothened image patch and selects a set of n_d (x,y) location pairs in an unique way. After that, some pixel intensity comparisons are done on these location pairs.
For eg, let first location pairs be p and q. If I(p) < I(q), then its result is 1, else it is 0. This is applied for all the n_d location pairs to get a n_d-dimensional bitstring.
The defined neighborhood around pixel(keypoint) is known as a patch, which is a square of some pixel width and height.
Selecting a set of n_d (x,y) location pairs can be done using one of five approaches(Sampling Geometries) given below:
Now this n_d can be 128, 256 or 512. OpenCV supports all of these (in bytes 16, 32, 64), but by default, it would be 256. Once we get this, we can use Hamming Distance to match these descriptors.
One important point is that BRIEF is a feature descriptor, it doesn’t provide any method to find the features.
One will have to use any other feature detectors like SIFT, SURF etc to do the job.
Brief relies on a relatively small number of intensity difference tests to represent an image patch as a binary string. Not only is construction and matching for this descriptor much faster than for other state-of-the-art ones, but it also tends to yield higher recognition rates, as long as invariance to large in-plane rotations is not a requirement.
In short,
BRIEF is a faster method feature descriptor calculation and matching.
It also provides high recognition rate unless there is large in-plane rotation.
Resources