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

Some fast traditional extractor #78

Open
BoyceL opened this issue Oct 28, 2023 · 12 comments
Open

Some fast traditional extractor #78

BoyceL opened this issue Oct 28, 2023 · 12 comments

Comments

@BoyceL
Copy link

BoyceL commented Oct 28, 2023

Hi developers!
I'm using your wonderful work and the matching result is quite good, but I'm trying to use a much faster traditional extractor without network like ORB to deploy this method to a real-time application. I've noticed that you have provided some other extractors like SIFT, DISK, but they don't match my requirement a lot. So could you provide a lightglue model with ORB extractor? It will be sincerely appreciated.

@sarlinpe
Copy link
Member

We don't have such models and we don't plan to train them in the near future, but you're welcome to do it yourself using https://github.com/cvg/glue-factory

@ducha-aiki
Copy link
Contributor

ducha-aiki commented Nov 6, 2023

@BoyceL you can train them probably very fast, but I would not expect ORB being good enough here.
Also, if you are resource limited for training, check here, I have explored faster training options.
cvg/glue-factory#39

@mattiasmar
Copy link

@ducha-aiki Why do you expect ORB to not perform well?

@ducha-aiki
Copy link
Contributor

First, because detections are not well spread. Run 500 orb points 500 superpoints and visualize.
Second, because descriptor is much worse and less robust to SIFT

@ducha-aiki
Copy link
Contributor

In fact, I quickly tried ORB training, it doesn’t train with default difficulty on homography pretraining, you have to make it easier at least

@fettahyildizz
Copy link

@ducha-aiki The reason why I would go with ORB instead of SIFT is, generally ORB runs much quicker and ORB might be the only option for humble environments. Extracting SIFT in real-time is not optimal for my case since I have little computational power in my robots. Did you try ORB training? If so, how are the results?

@ducha-aiki
Copy link
Contributor

@fettahyildizz if you don't have a resources for SIFT or GPU-SIFT, I don't see how you can have resources for transformer-based matcher.

@fettahyildizz
Copy link

@ducha-aiki because every piece of resource matters in my case. BF Matcher doesn't give quality matches under certain conditions so in expense of run-time, I trade off with superior matcher quality. On the other hand extracting SIFT descriptor is 10x slower than ORB in most cases. So BF Matcher is not an option for most cases, I have to try LightGlue but I would really love to use LightGlue with ORB descriptors due to extracting descriptor time.

@ducha-aiki
Copy link
Contributor

Then train it. I have tried a couple of times, but both fail, because it requires extensive hyper-parameter tuning, compared to training DoG-HardNet or DeDoDe, or any other thing I tried , and they just work.

@fettahyildizz
Copy link

@ducha-aiki I searched a bit but found noone trained ORB, so I was wondering in my mind why noone trained this before? Is it because of hard-work it requires, or it doesn't have great performance. Anyway, I will do my best to train when I have a chance.

@ducha-aiki
Copy link
Contributor

ducha-aiki commented Mar 13, 2024

I searched a bit but found noone trained ORB, so I was wondering in my mind why noone trained this before? Is it because of hard-work it requires, or it doesn't have great performance.

It is likely both.
At least, for the hard work - I guarantee.

@arlisgreat
Copy link

does anyone work it out on ORB? on very need for my homework

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

6 participants