Comments (7)
I add some codes to process the float point descriptors, and create a pull request. You can see the codes.
from dbow3.
Thank you very much @YachiZhang! I will try once again and let you know whether it helped.
from dbow3.
I pulled last updates from the repo, rebuilt the DBow3 shared library and updated my project. Sadly the problem is still there.
from dbow3.
when using vectorcv::Mat ,you should use Mat.clone(). If the weights in the training result are all 0,the training result may be wrong.
from dbow3.
Thank you for clarification! I will try that.
from dbow3.
I changed the code with using Mat.clone() but still have the problem. I use the Mat.clone() like that:
void calculateFeatures(PointInTPtr& in, PointInTPtr& keypoints, NormalTPtr& normals, cv::Mat& features)
{
// Calculate features
...
cv::Mat features_tmp (fpfhs->points.size(), dimensionality, CV_32F);
for(size_t j = 0; j < fpfhs->points.size(); j++)
{
for(int idx = 0; idx < dimensionality; idx++)
{
features_tmp.at<float>(j, idx) = fpfhs->points[j].histogram[idx];
}
}
features = features_tmp.clone();
}
and
void loadFeatures(std::string path, cv::Mat& features)
{
// Load descriptors from the file
...
features.create(features_cloud->points.size(), dimensionality, CV_32F); // CV_32FC1
for(size_t j = 0; j < features_cloud->points.size(); j++)
{
for(int idx = 0; idx < dimensionality; idx++)
{
features.at<float>(j, idx) = features_cloud->points[j].histogram[idx];
}
}
}
cv::Mat frame_features;
feature_estimator->calculateFeatures(sample_cloud, keypoints, normals, frame_features);
training_features[i] = frame_features.clone();
...
}
else
{
cv::Mat frame_features;
feature_estimator->loadFeatures(descr_file, frame_features);
training_features[i] = frame_features.clone();
Is it correct?
from dbow3.
I recently researched the FPFH descriptor using Lidar. But when I use the DBOW3 library, I can't get the correct result. I saw that you are also studying this aspect in github. Is it convenient to talk to you? @vovaekb
from dbow3.
Related Issues (20)
- static MIN_COMMON_WORDS in Database.h
- Akaze descriptors issue HOT 1
- Is this project still maintained? HOT 1
- DBOW3 installs an item in Win10 environment. How do you solve this problem?
- make[2]: *** 没有规则可制作目标“/usr/local/lib/libDBoW3.a”,由“gen_vocab” 需求。 停止。 CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/gen_vocab.dir/all' failed make[1]: *** [CMakeFiles/gen_vocab.dir/all] Error 2 Makefile:83: recipe for target 'all' failed make: *** [all] Error 2
- Database:: save does not support saving binary files such as bin files. The source code uses cv:: FileStorage. Opencv does not support saving binary files, does it? HOT 2
- Problems about float format descriptors. HOT 2
- Windows10 - Built as dynamic libs?:ON, Thanks a lot!
- surf ,to generate vocabulary but it seems stuck for a long while(more than 24h) and can not obtain the vocabulary. And I don't know where the problems are. HOT 7
- Problem with generating dictionary on own features HOT 1
- hello,if I want build DBow3 into .a,how can I do?now I build it into .so,which isnt what I want HOT 1
- Build error: ISO C++17 does not allow dynamic exception specification HOT 1
- Is DBoW3 thread safe?
- Why the format is different?
- similar score is wrong ,result is not ideal HOT 1
- c++17 compile error
- How can I get the EntryID separately?
- Floating point descriptor - Error when training HOT 1
- [Question] update vocabulary zip when new image's bow in HOT 1
- How to transform ***.yml.gz to ***.txt or ***.bin which used in ORB-SLAM2?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dbow3.