I do some research in representing local functions, so SIFT, SURF, etc.
Now, has anyone here ever tried BRIEF and ORB ? If so, can you discuss which of the pros and con are related to SIFT?
Here is one comparison that I found useful. In fact, BRIEF and ORB are much faster. There is no good comparison of scale invariance, but I personally found SURF / SIFT to be a larger scale invariant than BRIEF and ORB. I recommend that if you intend to use them for a specific use case, try both options to see what best suits your needs.
SURF / SIFT uses patents that need to be paid in some way. I will not be aware of this, but the costs can be significant. So I would go with ORB if possible - except, of course, if you do not need money :)
SIFT: Algorithm is patented in the USA; Owner - University of British Columbia. ( http://en.wikipedia.org/wiki/Scale-invariant_feature_transform )
SURF: The algorithm application is patented in the USA. ( http://en.wikipedia.org/wiki/SURF )