OpenSfM icon indicating copy to clipboard operation
OpenSfM copied to clipboard

Inquiry: How to expose more parameters in config.py

Open Saijin-Naib opened this issue 3 years ago • 5 comments

What is the syntax for exposing more parameters in the OpenSFM config.py?

For instance, ORB has no tunable parameters listed, despite having a number of important parameters in the OpenCV documentation.

I would also like to follow suit and expand the tunable parameters for Akaze, SIFT, SURF, and the matchers, as well.

Saijin-Naib avatar Nov 10 '21 20:11 Saijin-Naib

Hi @Saijin-Naib ,

Options from the config.yaml are propagated in the main features entry point through the config dictionary : https://github.com/mapillary/OpenSfM/blob/main/opensfm/features.py#L491. Just add the options to config.py and read them directly in the function.

Let me know if that answer your question,

Yann

YanNoun avatar Nov 12 '21 10:11 YanNoun

@YanNoun ,

I think so? It gives me a better understanding of where to look next, at least.

As I'm sure you know by now, I'm interested in expanding the flexibility of ORB and AKAZE feature descriptors within OpenSFM for application in OpenDroneMap (https://github.com/OpenDroneMap/ODM/issues/1370).

To that end, I want to expose all the options for them that OpenCV does so that they can be "first-class" like SIFT/SURF are.

Thank you for your assistance, as always.

Saijin-Naib avatar Nov 17 '21 17:11 Saijin-Naib

That sounds amazing! Let us know if you guys make progress on making AKAZE "first class". :)

walter-morawa avatar Nov 27 '21 02:11 walter-morawa

With me at the wheel, it's definitely an "if" situation rather than a "when" haha.

Saijin-Naib avatar Nov 27 '21 05:11 Saijin-Naib

Let me know how I can help. I know very little about CV and SFM, but I want to learn so I can contribute to OpenSfM.

walter-morawa avatar Nov 27 '21 19:11 walter-morawa