naver / kapture

kapture is a file format as well as a set of tools for manipulating datasets, and in particular Visual Localization and Structure from Motion data.
BSD 3-Clause "New" or "Revised" License
475 stars 66 forks source link

Compatible output for visuallocalization benchmark #5

Closed shamangary closed 4 years ago

shamangary commented 4 years ago

Hello,

Great work. One question. I was trying the whole localization pipeline. However, the output of the Aachen is not the same as Torsten's official repo. For the benchmark website (https://www.visuallocalization.net/), there should be a txt file of the estimated query poses. Since the benchmark does not provide gt, one should upload the query pose manually. While the step 5) evaluate(https://github.com/naver/kapture/blob/master/doc/tutorial.adoc#evaluate) seems to me that it's not providing the same format. Am I missing something here? Please let me know. Thank you!

Kind Regards, Tsun-Yi

humenbergerm commented 4 years ago

Hi!

Thanks for the feedback! The script https://github.com/naver/kapture/blob/master/tools/kapture_export_LTVL2020.py will convert a kapture dataset into the website's format. For Aachen, for example, the argument --prepend_cam needs to be False. For other datasets, e.g. RobotCar if I am right, you need to set it to True.

And you are right, our evaluate script compares two datasets in kapture format. This is only useful if you actually have ground truth data.

I hope this helps. Please let us know if you have any troubles.

Best, Martin

shamangary commented 4 years ago

Hello @humenbergerm,

Thank you for the prompt response! Can you update such format transformation command on the evaluation script? For example, I believe a new comer will still be confused about the input folder path and the prepend_cam argument when different dataset arrangements are involved. Thank you again.

Tsun-Yi

humenbergerm commented 4 years ago

Hi!

Thanks for your input. The thing is that the evaluation script really just compares two kaptures and all export and import functions are in specific scripts. We will think about how to make it easier to understand and use.

Best, Martin