Add BEBLID local feature descriptor#2774
Merged
alalek merged 4 commits intoopencv:masterfrom Dec 9, 2020
iago-suarez:master
Merged
Add BEBLID local feature descriptor#2774alalek merged 4 commits intoopencv:masterfrom iago-suarez:master
alalek merged 4 commits intoopencv:masterfrom
iago-suarez:master
Conversation
alalek
reviewed
Dec 8, 2020
Member
alalek
left a comment
There was a problem hiding this comment.
Great contribution!
Please take a look on comments below.
alalek
reviewed
Dec 8, 2020
| BEBLID::SIZE_512_BITS or BEBLID::SIZE_256_BITS. | ||
| */ | ||
| CV_WRAP static Ptr<BEBLID> create(float scale_factor, | ||
| BEBLID::BeblidSize n_bits = BEBLID::SIZE_512_BITS); |
Member
There was a problem hiding this comment.
OK, lets use int here for now.
I filled Java binding generator bug here: opencv/opencv#19056
Contributor
Author
There was a problem hiding this comment.
Perfect, I changed the code to use int again
…ng descriptors when no keypoints are detected.
alalek
approved these changes
Dec 9, 2020
Member
alalek
left a comment
There was a problem hiding this comment.
Well done! Thank you for contribution 👍
Contributor
Author
|
Thanks for your review and comments @alalek , it's a pleasure to contribute! 😃 |
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Merge with extra: opencv/opencv_extra#827
BEBLID is a efficient binary descriptor learned with boosting. In several benchmarks it has proved to largely improve other binary descriptors like ORB or BRISK with the same efficiency. BEBLID describes using the difference of mean gray values in
different regions of the image around the KeyPoint, the descriptor is specifically optimized for
image matching and patch retrieval addressing the asymmetries of these problems.
This Pull Request ports the original code to OpenCV. The article explaining all the details and comparing the descriptor in several tasks can be found here.
Testing this implementation with the code of the A-KAZE tutorial, we have found that, detecting 10000 keypoints with ORB and describing with BEBLID obtains 561 inliers (75%) whereas describing with ORB obtains only 493 inliers (63%).
Pull Request Readiness Checklist
See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request
Patch to opencv_extra has the same branch name.