rmsalinas / DBow3

Improved version of DBow2
Other
501 stars 237 forks source link

Problem with generating dictionary on own features #37

Open JingruiYu opened 5 years ago

JingruiYu commented 5 years ago

Hello, I use my own CNN generated 512 dimension uchar descriptors of 7000 images and use DBoW3::Vocabulary vocab; vocab.create( descriptors ); vocab.save( "vocabulary.gz" ); to generate dictionary. Then I use another 100 images with descriptors generated from the same CNN to get vocabulary based on this dictionary. However, the vocabulary is null. While, I use the same descriptors of the 100 images to get vocabulary based on another dictionary, which is generated with orb features, the vocabulary is not null.

So, why? Is there something wrong with the generated dictionary based on the CNN feature?

hmf21 commented 4 years ago

Hello, I use my own CNN generated 512 dimension uchar descriptors of 7000 images and use DBoW3::Vocabulary vocab; vocab.create( descriptors ); vocab.save( "vocabulary.gz" ); to generate dictionary. Then I use another 100 images with descriptors generated from the same CNN to get vocabulary based on this dictionary. However, the vocabulary is null. While, I use the same descriptors of the 100 images to get vocabulary based on another dictionary, which is generated with orb features, the vocabulary is not null.

So, why? Is there something wrong with the generated dictionary based on the CNN feature?

I get the same problems when I use DBoW::create( ). And besides, it seems to cost more time when running function DBoW3::Vocabulary vocab("./vocabulary.yml.gz") about ten times comparing to the spent time in create function.