Adding rotation invariance to the BRIEF descriptor (contribution to OpenCV)

asked 2015-01-02 11:37:02 -0600

Hi,

I've implemented code to add rotation invariance to the BRIEF descriptor:

cpp: https://github.com/GilLevi/opencv_con...

header: https://github.com/GilLevi/opencv_con...

tutorial: https://github.com/GilLevi/opencv/blo...

The approach is explained and evaluated in my blog post: https://gilscvblog.wordpress.com/2015...

Can someone please review my code and tell me what additional work is required in order to make a pull request?

Thanks! Gil.

edit retag flag offensive close merge delete

Comments

Isn't that exactly what ORB is? 'Oriented FAST and Rotated BRIEF'

Der Luftmensch gravatar imageDer Luftmensch ( 2015-01-02 14:20:09 -0600 )edit

Not exactly. ORB uses it's own mechanism for measuring the patch orientation and also uses unsupervised learning to select what the authors claim to be an optimal set of sampling pairs. I suggest to follow the original implementation of BRIEF (random sampling pairs), but to include rotation invariance using the keypoint detector's estimation of the patch's orientation, which proves to be superior over ORB's estimation of the patch's orientation.

From experiments that I've conducted, SIFT detector coupled with the Rotation Invariant BRIEF descriptor outperform ORB detector coupled with the ORB descriptor.

GilLevi gravatar imageGilLevi ( 2015-01-02 16:16:26 -0600 )edit

@GilLevi: 1. This is a nice contribution! You should have no big problem to publish that at a small conference! 2. Regarding your pull request: just do it, the main developers will guide you in the changes you need to do!

Guanta gravatar imageGuanta ( 2015-01-03 11:35:40 -0600 )edit

@Guanta, thanks for your comment! I'm in the process of making a pull request!

Can you recommend a small conference where I can try to publish it? I thought it's way too minor to be published. Thanks!

GilLevi gravatar imageGilLevi ( 2015-01-03 14:53:21 -0600 )edit

Hmm, yes it might be only a small contribution indeed, but if you evaluate it thoroughly and show the improvements clearly it might get through. If you are fast try ICIP, otherwise maybe CAIP. If it doesn't come through, you can either try to add something if you have another idea or publish it at a workshop.

Guanta gravatar imageGuanta ( 2015-01-03 17:11:09 -0600 )edit

Thanks @Guanta, I'll try ICIP !

GilLevi gravatar imageGilLevi ( 2015-01-04 07:04:22 -0600 )edit