Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple types of keypoints and descriptors #8

Closed
ducha-aiki opened this issue Jan 19, 2021 · 6 comments
Closed

Multiple types of keypoints and descriptors #8

ducha-aiki opened this issue Jan 19, 2021 · 6 comments

Comments

@ducha-aiki
Copy link
Contributor

Hi,

I am trying to fit the kapture for my use case, which requires multiple types of local features, both detectors and descriptors, e.g. SuperPoint, R2D2, SIFT+HardNet.
The current kapture format assumes a single type of local feature -- which is hardcoded in the filenames "keypoints.txt", "descriptors.txt". If I would make a fork for support multiple feature types, would it be merged at some point, or do you not plan to change the format?

Best, Dmytro.

@humenbergerm
Copy link
Contributor

Hi Dmytro!

Thanks for your interest in this. Indeed, we already discussed a lot how to support multiple types of local features. We will continue the discussion and get back to you as soon as possible.

Best,
Martin

@ducha-aiki
Copy link
Contributor Author

Thank you, Martin! If possible, I would be happy to join the discussion :)
My email is ducha.aiki@gmail.com just in case

@humenbergerm
Copy link
Contributor

Great! It would also be helpful if you could share some more details about your needs. At the moment we use kapture with multiple features, but not within the same reconstruction.
Best, Martin

@ducha-aiki
Copy link
Contributor Author

Sure. The general idea is to revisit MODS, which combines the multiple type of features in order to speed-up matching of the easy pairs and to allow matching the hard pairs, where any single feature fails, but combined they work.
So, first we are matching everything which is matchable by ORB, then we add, say, SuperPoint, and so on.

https://github.com/ducha-aiki/mods-light-zmq
https://arxiv.org/abs/1503.02619

@yocabon
Copy link
Contributor

yocabon commented Feb 3, 2021

Hi,
We've started to draft a new version of the format (1.1) that should hopefully answer your needs.
The new specifications are being written here
https://github.com/naver/kapture/blob/1.1_draft/kapture_format.adoc

There are no changes to the "sensor" part of the format.
In the "reconstruction" part, multiple keypoints/descriptors/global features types can be given. keypoints can be represented by multiple descriptors.
Observations can reference different types of keypoints.

What do you think of these changes ?

@ducha-aiki
Copy link
Contributor Author

Hi,

It fits my use-case, thank you!
One thing, I would like to add is a metric for descriptors. So the descriptors.txt would be:

name, dtype, dsize, keypoints_type, metric_type

where the metric is "L2" for the most and "Hamming" for the binary features, for example.

yocabon added a commit that referenced this issue Feb 9, 2021
@yocabon yocabon closed this as completed May 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants