ahojnnes / local-feature-evaluation

Comparative Evaluation of Hand-Crafted and Learned Local Features
226 stars 48 forks source link

how to generate 'database.db' by using 'matching_pipeline.m' #2

Open bfan opened 7 years ago

bfan commented 7 years ago

Hello, I think it misses some files on this project. After running matching_pipeline.m (it misses pdist2.m to compute eculidean distance of descriptors, I used my own), I obtained some files in 'descriptors', 'keypoints', 'matches' as you described in the instruction. However, I can not continue the evaluation by using the python script 'reconstruction_pipeline.py', as it requires to input the database file, which I haven't find after running the matching_pipeline. I do found there is 'DATABASE_PATH' defined in the 'matching_pipeline.m', but I didn't find where it is used. Can you help me to fix the problem?

ahojnnes commented 7 years ago

First, it seems you didn't download all required files from the server, see steps 2 and 3 in the instructions (Databases.tar.gz). Next, the pdist2.m function should be provided by Matlab, see https://mathworks.com/help/stats/pdist2.html

Let me know if you have other questions.

bfan commented 7 years ago

Thank you for your quickly reply. I just tried and it works for small dataset. What should I do to prepare such a database if I want to use my own dataset with my custom feature extractor and matching (I already convert them to the required format as described in the instruction)?

ahojnnes commented 7 years ago

I will try to create instructions for that soon. I'll leave this issue open as a reminder for that.

lovekittynine commented 5 years ago

@bfan after i have got descriptors , matches, keypoints,but when i run reconstruction_pipeline.py it outputs as follow: Importing features for 0003.png Importing features for 0007.png Importing features for 0004.png Importing features for 0005.png Importing features for 0009.png Importing features for 0000.png Importing features for 0002.png Importing features for 0006.png Importing features for 0001.png Importing features for 0010.png Importing features for 0008.png Importing matches for 0001.png --- 0003.png Importing matches for 0004.png --- 0007.png Importing matches for 0004.png --- 0005.png Importing matches for 0005.png --- 0007.png Importing matches for 0001.png --- 0008.png Importing matches for 0004.png --- 0009.png Importing matches for 0000.png --- 0010.png Importing matches for 0001.png --- 0009.png Importing matches for 0003.png --- 0005.png Importing matches for 0005.png --- 0010.png Importing matches for 0005.png --- 0009.png Importing matches for 0003.png --- 0006.png Importing matches for 0001.png --- 0002.png Importing matches for 0007.png --- 0010.png Importing matches for 0002.png --- 0008.png Importing matches for 0002.png --- 0009.png Importing matches for 0009.png --- 0010.png Importing matches for 0000.png --- 0008.png Importing matches for 0002.png --- 0006.png Importing matches for 0006.png --- 0008.png Importing matches for 0008.png --- 0009.png Importing matches for 0000.png --- 0006.png Importing matches for 0002.png --- 0007.png Importing matches for 0006.png --- 0010.png Importing matches for 0007.png --- 0008.png Importing matches for 0003.png --- 0010.png Importing matches for 0003.png --- 0004.png Importing matches for 0002.png --- 0005.png Importing matches for 0003.png --- 0009.png Importing matches for 0004.png --- 0010.png Importing matches for 0003.png --- 0008.png Importing matches for 0000.png --- 0002.png Importing matches for 0000.png --- 0005.png Importing matches for 0006.png --- 0007.png Importing matches for 0001.png --- 0010.png Importing matches for 0000.png --- 0003.png Importing matches for 0005.png --- 0008.png Importing matches for 0000.png --- 0004.png Importing matches for 0001.png --- 0004.png Importing matches for 0003.png --- 0007.png Importing matches for 0004.png --- 0008.png Importing matches for 0004.png --- 0006.png Importing matches for 0000.png --- 0009.png Importing matches for 0002.png --- 0003.png Importing matches for 0001.png --- 0005.png Importing matches for 0002.png --- 0010.png Importing matches for 0002.png --- 0004.png Importing matches for 0006.png --- 0009.png Importing matches for 0005.png --- 0006.png Importing matches for 0001.png --- 0006.png Importing matches for 0000.png --- 0001.png Importing matches for 0007.png --- 0009.png Importing matches for 0001.png --- 0007.png Importing matches for 0000.png --- 0007.png Importing matches for 0008.png --- 0010.png

============================================================================== Custom feature matching

Shader not supported by your hardware! Framebuffer object not supported! GL_ARB_texture_rectangle not supported! ERROR: SiftGPU not fully supported

============================================================================== Loading database

Loading cameras... 11 in 0.000s Loading matches... 0 in 0.000s Loading images... 11 in 0.000s (connected 0) Building correspondence graph... in 0.000s (ignored 0)

Elapsed time: 0.000 [minutes]

WARNING: No images with matches found in the database.

Warning: Could not reconstruct any model

============================================================================== Raw statistics

{'num_images': 11, 'num_inlier_matches': None, 'num_inlier_pairs': 0} None

============================================================================== Formatted statistics

Traceback (most recent call last): File "reconstruction_pipeline.py", line 297, in main() File "reconstruction_pipeline.py", line 293, in main matching_stats["num_inlier_matches"]])) + " |") TypeError: 'NoneType' object is not subscriptable WARNING: No images with matches found in the database.How should I do?Thank you very much!!!

XiaojieLi11 commented 4 months ago

Hello! Have you solved the problem of creating database.db for the new dataset? @bfan

XiaojieLi11 commented 4 months ago

Sorry to bother you, but I also ran into a problem, how do I create database.db file for a new data set? @ahojnnes