GithubHelp home page GithubHelp logo

dsm's People

Contributors

jzubizarreta avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dsm's Issues

How to reuse created .ply map

Hello,
I would like to know if there is an option for reusing already created map (the one that is saved with .ply format). If so, can you show me how can it be achieved?

Use of OpenGL with macOS

I see that there is a commit for macos support but there exists a small problem about it.

#include <GL/glu.h> should not be present when OS is macOS. It prevents dsm from building successfully. There are 3 such occurrences in QtVisualizer.

This merge request has the working version of the related changes.

I wanted to point this out because seeing conditional include statements for macos makes you think that this code should work if everything is set up correctly.

QtVisualizer compile problem

Hi,I am trying to compile the QtVisualizer project. It start at generating three moc files, but then there is a error that cannot open .h file in the src direction.
I look over all those Qt problem like this and tried, but nono of them works.
Could you give some hints to help me solve this?

3D Visualization not rendered

Hey,

I installed DSM on a freshly setup laptop with Ubuntu 18.04 according to your readme. However, qt5-default seems to be not sufficient. I can start the qt application, but only the images not the 3D is displayed. The installed version from repository for me is 5.9.5. I will try to run it with 5.10 and report back here.

Edit: Also an update to 5.10.1 did not resolve the issue.

memory usage keeps growing

Thanks for sharing such excellent codes. While running the demo MH_01 I found the memory usage was growing constantly and if applied with my own data (with a larger resolution @1920x1080) the system was killed due to the memory limits. The problem was not addressed even setting minimizeMemory as true. Wondering if there is any solution to reduce the memory usage or why the program is such memory-consuming?

the question about save .ply file

Thank for your great work.
when i saved the ply file and reload it in rviz i found that the stored pointcloud data's central axis strangely, but the details were stored somewhat similar.

When can we read your code?

Hello, I am quite interested in your paper, but there is some detail I cannot understand very well. So would you please share your code? Thanks a lot.

Saving trajectory, map, and evaluation

We would like to reproduce your nice results from the paper, but some details about the evaluation are unclear. Maybe you can help clarify. Thanks in advance!

  1. It seems currently saving the trajectory to some text file (e.g. TUM RGBD format) for evaluation is not implemented in the github version, or did I miss it? I only found the save button that generates the a ply file for the point cloud. I guess it wouldn't be hard to add, but I was just woundering how you generated the results for evaluation.

  2. When reporting ATE, do you compute it for every keyframe, or also non keyframes? Which pose do you use for a keyframe? The final one at the end of the program after all optimizations?

  3. For the ATE as I know it people report RMSE translational error after Sim3 alignment. But for the map error, it is not clear to me. You write "The PSE is estimated measuring the distance of the reconstructed model to the ground-truth surface after the trajectory alignment. ". How exactly is PSE defined (sum, mean, rmse, median....) and over which points (is there any kind of filtering of outliers etc)? If its a standard metric, do you maybe have a reference that explains it more? For Euroc, the groundtruth AFAIK is only given as a point cloud of a 3D laser scan. The alignment part should be clear (same alignment as for ATE, based on the keyframe poses), but how exactly do you compute a surface from the gt point cloud. Do you maybe have tools or scripts to share to compute the map error? That would be super helpful.

Photometric Calibration?

Hi!
Thanks for the awesome work!
Since DSO's original error is re-used, it seems logical to include gamma response function / vignetting as optional calibration input. Did I oversee something in the paper or is this not used? If not, do you think implementing it myself by looking at DSO's code would be reasonably feasible? (For example, compared to implementing a rolling shutter compensation, which I'd consider rather difficult).

segmentation fault when comput gradient of the image pyramid on Kitti dataset

Hi, thanks for your great project! Have you run this project on Kitti dataset? I tried but segmentation fault happened.

Thread 13 "EurocExample" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffb2b53700 (LWP 30677)]
0x00007ffff76c3b78 in dsm::Frame::gradient(int) const ()
from /home/yin/dsm_ws/dsm/build/lib/libdsm.so
(gdb) bt
#0 0x00007ffff76c3b78 in dsm::Frame::gradient(int) const () at /home/yin/dsm_ws/dsm/build/lib/libdsm.so
#1 0x00007ffff76fb302 in dsm::PointDetector::detect(std::shared_ptrdsm::Frame const&, int, int*, dsm::IVisualizer*) () at /home/yin/dsm_ws/dsm/build/lib/libdsm.so
#2 0x00007ffff7704efe in dsm::FullSystem::createCandidates(std::shared_ptrdsm::Frame const&) ()
at /home/yin/dsm_ws/dsm/build/lib/libdsm.so
#3 0x00007ffff770dd94 in dsm::FullSystem::initialize(std::shared_ptrdsm::Frame const&) ()
at /home/yin/dsm_ws/dsm/build/lib/libdsm.so
#4 0x00007ffff770e12e in dsm::FullSystem::trackFrame(int, double, unsigned char*) ()

It seemed that error happened when calculate gradient of image pyramid. Do you have suggestions about it? Thanks a lot!

build error with SetTabletTracking on Ubuntu 16.04

[ 64%] Building CXX object QtVisualizer/CMakeFiles/QtVisualizer.dir/src/QtVisualizer.cpp.o
In file included from /home/xieyi/programs/Projects/dsm/QtVisualizer/src/QtWindow.h:32:0,
from /home/xieyi/programs/Projects/dsm/QtVisualizer/src/QtVisualizer.cpp:25:
/home/xieyi/programs/Projects/dsm/build/QtVisualizer/ui_qtwindow.h: In member function ‘void Ui_QtWindowClass::setupUi(QMainWindow*)’:
/home/xieyi/programs/Projects/dsm/build/QtVisualizer/ui_qtwindow.h:270:25: error: ‘class QCheckBox’ has no member named ‘setTabletTracking’
cameraCheckBox->setTabletTracking(false);
^
QtVisualizer/CMakeFiles/QtVisualizer.dir/build.make:109: recipe for target 'QtVisualizer/CMakeFiles/QtVisualizer.dir/src/QtVisualizer.cpp.o' failed
make[2]: *** [QtVisualizer/CMakeFiles/QtVisualizer.dir/src/QtVisualizer.cpp.o] Error 1
CMakeFiles/Makefile2:140: recipe for target 'QtVisualizer/CMakeFiles/QtVisualizer.dir/all' failed

QtVisualizer segmentation fault

Hi, thanks for your open source, it's really an exciting system!

I have trouble with Qt5, when I compile the code. It show :

In file included from /home/gong/Project/C++/dsm/QtVisualizer/src/QtWindow.h:32:0,
                      from /home/gong/Project/C++/dsm/QtVisualizer/src/QtWindow.cpp:24:
/home/gong/Project/C++/dsm/build/QtVisualizer/ui_qtwindow.h: In member function ‘void Ui_QtWindowClass::setupUi(QMainWindow*)’:
/home/gong/Project/C++/dsm/build/QtVisualizer/ui_qtwindow.h:270:25: error: ‘class QCheckBox’ has no member named ‘setTabletTracking’
         cameraCheckBox->setTabletTracking(false);

And I can't find func setTabletTracking() in /usr/include/x86_64-linux-gnu/qt5/.

So I try to comment the linecameraCheckBox->setTabletTracking(false);in file build/QtVisualizer/ui_qtwindow.h.
Then I can compile successfully, but when I run, it occurs segment fault. When I debug, i find that the problem is the func which is visualizer.run();.
And I also try to change property <property name="tabletTracking"> in QtVisualizer/src/qtwindow.ui to other name, it can compile successfully but segment fault.

So may I know how to deal with this problem?

Thank you!

DSM to process image sequence of UAV

Hi, I am trying to use to process some images captured by a camera on a UAV. the problem is almost all the scene is similar plane scene. Is DSM proper to handle those sequence? Or can you give me some advice about those images

add stereo support

Hi,
Thanks for this great project, your code is very elagent while maintaining efficiency of the code, so thank you again
Now if I want to add stereo camera support to the existing code, what are your suggestions will it be like dso part in frontend in initialization and other in backend for optimization or you have different idea
I'll be glad for your suggestion or anyone

Randomness result after create some keyframes

I got some randomnessly result after trackFrame, the Least Squares Problem report differently between different tries, somewhere unstable:

the same frame:

sample 1:
Least Squares Problem report

    Residuals : 119952, 119952, 119952
   Parameters : 2753, 2753, 2753
   Iterations : 9 (9), 9 (9), 5 (5)
 Initial RMSE : 3.54142, 3.24045, 3.14537
   Final RMSE : 3.21747, 2.77827, 2.83725
         Time : 182.291, 189.567, 111.58 [ms]
  Termination : User success, User success, User success

sample2:
Least Squares Problem report

     Residuals : 34376, 34376, 34376
    Parameters : 2236, 2236, 2236
    Iterations : 7 (7), 6 (6), 5 (5)
  Initial RMSE : 2.90104, 2.29377, 2.80954
    Final RMSE : 2.37894, 1.98264, 2.64797
          Time : 45.597, 37.316, 28.814 [ms]
   Termination : User success, User success, User success

Ceres Solver LocalParameterization deprecated

Hello,

I could not compile DSM using the current master branch of the Ceres Solver. The error was that the file local_parameterization.h could not be found in the installation directory after compiling the Ceres Solver. By getting back to tagged version 2.1.0 of the Ceres Solver, it compiles well but I get the following warning "LocalParameterization will be removed from the Ceres Solver API in version 2.2.0. Use Manifolds instead.".

Brendan

Compiling errors when using the command

HI dear author,
It's truly a honor to write a letter to you, I'm build your project nowadays and found the error when building as following, I wonder if there is a chance that you know the reason? :)

image

thank you
best regards to you
William

Export Camera Trajectory

Hi,
Thank you for this awesome project!
I don't know if I am missing something, but is there a way to export the camera trajectory after the run, or only the pointcloud?
Thank you,
Julian

build problem with opengl include

It seems related to the issue #16.
I found opengl library was not included in following cpp files:
QtVisualizer.cpp, MouseInterface.cpp, GLWidget.cpp
which made compile errors.
And I mannual fixed that by add following codes to the above 3 files.

#ifdef APPLE
#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#else
#include <GL/gl.h>
#include <GL/glu.h>
#endif

Segmentation fault in the CandidatePoint::observe()

Hey hey,

I just tried running your code. Compiling it was working fine, however after trying to execute on Euroc MH1 the following problem arises: The QT window opens, I press start, I see the SLAM running but after a few failed attempts to initialise I guess he finally manages to initialise but then SegFaults.

Thread 28 "EurocExample" received signal SIGSEGV, Segmentation fault.
#0 0x00007ffff76b9e71 in dsm::CandidatePoint::observe(std::shared_ptrdsm::Frame const&) () at /home/alex/Documents/Projects/dsm_slam/dsm/build/lib/libdsm.so
#1 0x00007ffff76f12aa in dsm::FullSystem::PointObserver::operator()() () at /home/alex/Documents/Projects/dsm_slam/dsm/build/lib/libdsm.so
#2 0x00007ffff76ff6bc in dsm::WorkerThreadPool::workerLoop(unsigned long) () at /home/alex/Documents/Projects/dsm_slam/dsm/build/lib/libdsm.so
#3 0x00007ffff234866f in () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff71ad6db in start_thread (arg=0x7fff88ff9700) at pthread_create.c:463
#5 0x00007ffff1da388f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

FYI: I am running Ubuntu 18.04.

Best regards,
Alex

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.