Code Monkey home page Code Monkey logo

defslam's People

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

defslam's Issues

Segmentation fault in mapping thread

Hello,

First of all thanks for providing the DefSLAM library! I'm getting a segmentation fault while running the DefSLAM executable (I modified simple_camera.cc to load the mandala left camera images) with the Mandala0 dataset.

The sequence runs for several frames, but then crashes due to the segmentation fault.
The error occurs in the mapping thread, specifically at line 188 of NormalEstimator::ObtainK1K2().

Here is the gdb output:

NORMAL ESTIMATOR IN - Reprojection error: 5.12225
Points considered: 268
00033 244 0 551
/home/user3/slam/datasets/mandala0/images/stereo_im_l_1560936004110.png i:  34

Thread 5 "DefSLAM" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffc2197700 (LWP 21137)]
0x00007ffff7880e48 in std::vector<defSLAM::SurfacePoint, std::allocator<defSLAM::SurfacePoint> >::operator[] (this=0x8, __n=<optimized out>)
    at /usr/include/c++/7/bits/stl_vector.h:798
798             return *(this->_M_impl._M_start + __n);

The backtrace:

(gdb) bt
#0  0x00007ffff7880e48 in std::vector<defSLAM::SurfacePoint, std::allocator<defSLAM::SurfacePoint> >::operator[](unsigned long) (this=0x8, __n=<optimized out>) at /usr/include/c++/7/bits/stl_vector.h:798
#1  0x00007ffff7880e48 in defSLAM::Surface::getNormalSurfacePoint(unsigned long, cv::Vec<float, 3>&) (this=0x0, ind=30, N=...)
    at /home/user3/slam/DefSLAM/Modules/Mapping/Surface.cc:95
#2  0x00007ffff783c828 in defSLAM::NormalEstimator::ObtainK1K2() (this=this@entry=0x7fffc218f530)
    at /home/user3/slam/DefSLAM/Modules/Mapping/NormalEstimator.cc:188
#3  0x00007ffff783a896 in defSLAM::DefLocalMapping::NRSfM() (this=this@entry=0x5555633b1470)
    at /home/user3/slam/DefSLAM/Modules/Mapping/DefLocalMapping.cc:178
#4  0x00007ffff783ad60 in defSLAM::DefLocalMapping::insideTheLoop() (this=this@entry=0x5555633b1470)
    at /home/user3/slam/DefSLAM/Modules/Mapping/DefLocalMapping.cc:125
#5  0x00007ffff783adce in defSLAM::DefLocalMapping::Run() (this=0x5555633b1470)
    at /home/user3/slam/DefSLAM/Modules/Mapping/DefLocalMapping.cc:85
#6  0x00007ffff54b66df in  () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7  0x00007ffff445a6db in start_thread (arg=0x7fffc2197700) at pthread_create.c:463
#8  0x00007ffff4f1171f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Any ideas what could have gone wrong here?
Thanks!

Error: double free or corruption (out)

Hi
I am using Hamlyn Dataset provided here as input. I am running the code in Ubuntu20.04. The code provides output for 10 images and then this error is thrown. I am not using any custom dataset here
This is the output that I get

4

DefSLAM 2019-2020 José Lamarca, University of Zaragoza.
This program comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it

Input sensor was set to:
Loading ORB Vocabulary. This could take a while...
Vocabulary loaded!

Camera Parameters:

  • fx: 426.532
  • fy: 426.532
  • cx: 179.057
  • cy: 153.861
  • k1: 0
  • k2: 0
  • p1: 0
  • p2: 0
  • fps: 20
  • color order: RGB (ignored if grayscale)

ORB Extractor Parameters:

  • Number of Features: 1200
  • Scale Levels: 1
  • Scale Factor: 1.2
  • Initial Fast Threshold: 20
  • Minimum Fast Threshold: 7

Defomation tracking Parameters:

  • Reg. Inextensibility: 16000
  • Reg. Laplacian: 300
  • Reg. Temporal: 0.02
  • Reg. LocalZone: 1
    New map created with 302 points
    POINTS matched:200
    NORMAL ESTIMATOR IN - NORMALS REESTIMATED : 0 - 0
    NORMAL ESTIMATOR OUTPoints potential : 0 160
    Number Of normals 0 0x555d0beb0430
    Not enough normals
    Reprojection error: 4.75402
    Points considered: 200
    00001 206 0 283
    POINTS matched:164
    Gtk-Message: 16:19:08.665: Failed to load module "canberra-gtk-module"
    Reprojection error: 3.82728
    Points considered: 187
    00002 198 0 283
    POINTS matched:167
    Reprojection error: 3.26401
    Points considered: 192
    00003 201 0 283
    POINTS matched:161
    Reprojection error: 3.47967
    Points considered: 178
    00004 188 0 283
    POINTS matched:161
    Reprojection error: 3.30194
    Points considered: 192
    00005 201 0 283
    POINTS matched:161
    Reprojection error: 3.51483
    Points considered: 167
    00006 179 0 283
    POINTS matched:124
    Reprojection error: 4.43584
    Points considered: 157
    00007 163 0 283
    POINTS matched:133
    Reprojection error: 5.00483
    Points considered: 165
    00008 172 0 283
    POINTS matched:136
    Reprojection error: 5.03674
    Points considered: 169
    00009 175 0 283
    POINTS matched:128
    Reprojection error: 5.38212
    Points considered: 145
    00010 149 0 283
    POINTS matched:125
    Finding by Schwarp
    -0.435396 0.477329 -0.343502-0.435396 0.477329 -0.343502New points : 3
    Calculating final Schwarp
    -0.435396 0.477329 -0.343502Reprojection error: 4.44255
    Points considered: 156
    00011 159 0 283
    double free or corruption (out)
    ./rungt.sh: line 13: 20535 Aborted (core dumped) ./DefSLAM /home/hticgsr/codes/defSlam/DefSLAM-master/Vocabulary/ORBvoc.txt /home/hticgsr/codes/defSlam/DefSLAM-master/HamlynDatasetShort/f5phantom/hamlyn.yaml /home/hticgsr/codes/defSlam/DefSLAM-master/HamlynDatasetShort/f5phantom/f5_dynamic_deint_L.avi

I checked the Eigen library version as mentioned in another closed issue. I am using Eigen library version 3.3.90. Please help me out.

Problem with Rigid Scenes

Hi,

I've been trying to use DefSLAM for dental model, which is a rigid object. My camera is already calibrated. However, once I start the camera using this command:

./DefSLAM ORBfile Yamlfile

It seems the Map Viewer threads try to find out how a single frame is deformed, instead of reconstructing scenes iteratively (see video). Can I use DefSLAM for completely rigid scenes? If so, what are steps to do? I try with Mandala datasets, and everything works fine. However, that example uses stereo images. I can't replicate this example as my camera is monocular.

https://drive.google.com/file/d/1Ou4pbnn_X5Ye5bREEz9hIh7e9vEqIWI8/view?usp=sharing

Best,
Arya

undefined reference

Hello author, I have completed the compilation process, but there was a link failure problem during the final linking process.such as :CMakeFiles/DefSLAMGT.dir/Apps/stereo_groundtruth.cc.o:in function‘cvflann::anyimpl::big_any_policycv::String::static_delete(void**)’:
stereo_groundtruth.cc:(.text._ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE13static_deleteEPPv[_ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE13static_deleteEPPv]+0x15):对‘cv::String::deallocate()’undefined reference.
how can i solve it
thanks

Save Results Locations

Hello,

Recently, I have been exploring this repository and have been able to compile and run DefSLAM on the provided Hamlyn dataset. However, I have had some difficulty determining where the results were saved after running the dataset. I have Viewer.SaveResults turned on in the configuration file for reference.

Thanks in advance for the help!

Monocular interface

Excuse me, is the program interface of monocular camera solved now? Could you provide me with a copy?

Another segmentation fault in mapping thread

Hello,
Thanks for providing the source code of DefSLAM library! I am a freshman at the SLAM and I'm getting a segmentation fault while running the DefSLAM executable.
I don't know how to solve this problem, so I come here for help.

As described in #2, the sequence runs for several frames and then crashes due to the segmentation fault. The error also occurs at NormalEstimator::ObtainK1K2(), but I get another I got another error message.
I try to find the location of the error, specifically at line 153 at NormalEstimator.cc (Solve (options, &problem, &summary)).

I compiled the DefSLAM library on Ubuntu 16.04. I refer to #2 to list the following information. If you need anything else, please let me know.

Here is the gdb output:
Thread 14 "DefSLAM" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f0d27a19700 (LWP 4340)]
0x00007f0d82333af0 in void Eigen::internal::call_assignment_no_alias<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op, Eigen::Matrix<double, -1, -1, 0, -1, -1> >, Eigen::internal::assign_op >(Eigen::Matrix<double, -1, -1, 0, -1, -1>&, Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op, Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::internal::assign_op const&) () from /home/crystal/compareWorkbench/DefSLAM-master/lib/libDeformableSLAM.so

All information in gdb is here:
GNU gdb (GDB; JetBrains IDE bundle; build 128) 8.3
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.

For help, type "help".
Type "apropos word" to search for commands related to "word".
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7f0d53ea3700 (LWP 4320)]
[New Thread 0x7f0d536a2700 (LWP 4321)]
[New Thread 0x7f0d4eea1700 (LWP 4322)]
[New Thread 0x7f0d4c6a0700 (LWP 4323)]
[New Thread 0x7f0d4be9f700 (LWP 4324)]
[New Thread 0x7f0d4769e700 (LWP 4325)]
[New Thread 0x7f0d44e9d700 (LWP 4326)]
[New Thread 0x7f0d4269c700 (LWP 4327)]
[New Thread 0x7f0d3fe9b700 (LWP 4328)]
[New Thread 0x7f0d3d69a700 (LWP 4329)]
[New Thread 0x7f0d3ce99700 (LWP 4330)]
[New Thread 0x7f0d38698700 (LWP 4331)]
[New Thread 0x7f0d27a19700 (LWP 4340)]
[New Thread 0x7f0d27218700 (LWP 4341)]
[New Thread 0x7f0d24b37700 (LWP 4342)]
[New Thread 0x7f0d17fff700 (LWP 4343)]
[New Thread 0x7f0d177fe700 (LWP 4344)]
[New Thread 0x7f0d16ffd700 (LWP 4345)]
[New Thread 0x7f0d167fc700 (LWP 4346)]
[New Thread 0x7f0d15ffb700 (LWP 4347)]
[New Thread 0x7f0d157fa700 (LWP 4348)]
[New Thread 0x7f0d14ff9700 (LWP 4349)]
[New Thread 0x7f0cf7fff700 (LWP 4350)]
[New Thread 0x7f0cf77fe700 (LWP 4351)]
[New Thread 0x7f0cf6ffd700 (LWP 4352)]
[New Thread 0x7f0cf67fc700 (LWP 4353)]
[New Thread 0x7f0cf5ffb700 (LWP 4354)]
[New Thread 0x7f0cf57fa700 (LWP 4355)]
[New Thread 0x7f0cf4ff9700 (LWP 4356)]
[New Thread 0x7f0ce7fff700 (LWP 4357)]
[New Thread 0x7f0ce77fe700 (LWP 4358)]
[New Thread 0x7f0ce6ffd700 (LWP 4359)]
[New Thread 0x7f0ce67fc700 (LWP 4360)]
[New Thread 0x7f0ce5ffb700 (LWP 4361)]
[New Thread 0x7f0ce57fa700 (LWP 4362)]
[New Thread 0x7f0ce4ff9700 (LWP 4363)]
[New Thread 0x7f0cdffff700 (LWP 4364)]
[New Thread 0x7f0cdf7fe700 (LWP 4365)]
[New Thread 0x7f0cddf7a700 (LWP 4367)]
[New Thread 0x7f0cdd779700 (LWP 4368)]
[New Thread 0x7f0cdcf78700 (LWP 4369)]
[New Thread 0x7f0ccf5ff700 (LWP 4370)]
[Thread 0x7f0ccf5ff700 (LWP 4370) exited]
[New Thread 0x7f0ccf5ff700 (LWP 4371)]
[New Thread 0x7f0ccedfe700 (LWP 4372)]
[Thread 0x7f0ccedfe700 (LWP 4372) exited]
[New Thread 0x7f0ccedfe700 (LWP 4373)]
[Thread 0x7f0ccedfe700 (LWP 4373) exited]
[New Thread 0x7f0cce5fd700 (LWP 4374)]
[Thread 0x7f0cce5fd700 (LWP 4374) exited]
[New Thread 0x7f0ccedfe700 (LWP 4375)]
[Thread 0x7f0ccedfe700 (LWP 4375) exited]
[New Thread 0x7f0cce5fd700 (LWP 4376)]
[Thread 0x7f0cce5fd700 (LWP 4376) exited]
[New Thread 0x7f0ccedfe700 (LWP 4377)]
[Thread 0x7f0ccedfe700 (LWP 4377) exited]
[New Thread 0x7f0ccedfe700 (LWP 4378)]
[New Thread 0x7f0cce5fd700 (LWP 4379)]
[Thread 0x7f0cce5fd700 (LWP 4379) exited]
[Thread 0x7f0ccedfe700 (LWP 4378) exited]
[New Thread 0x7f0cce5fd700 (LWP 4380)]
[New Thread 0x7f0ccedfe700 (LWP 4381)]
[Thread 0x7f0cce5fd700 (LWP 4380) exited]
[Thread 0x7f0ccedfe700 (LWP 4381) exited]
[New Thread 0x7f0ccedfe700 (LWP 4382)]
[Thread 0x7f0ccedfe700 (LWP 4382) exited]
[New Thread 0x7f0ccedfe700 (LWP 4383)]
[Thread 0x7f0ccedfe700 (LWP 4383) exited]
[New Thread 0x7f0cce5fd700 (LWP 4384)]
[Thread 0x7f0cce5fd700 (LWP 4384) exited]
[New Thread 0x7f0ccedfe700 (LWP 4385)]
[Thread 0x7f0ccedfe700 (LWP 4385) exited]
[New Thread 0x7f0cce5fd700 (LWP 4386)]
[Thread 0x7f0cce5fd700 (LWP 4386) exited]
[New Thread 0x7f0ccedfe700 (LWP 4387)]
[Thread 0x7f0ccedfe700 (LWP 4387) exited]
[New Thread 0x7f0ccedfe700 (LWP 4388)]
[Thread 0x7f0ccedfe700 (LWP 4388) exited]
[New Thread 0x7f0ccedfe700 (LWP 4389)]
[Thread 0x7f0ccedfe700 (LWP 4389) exited]
[New Thread 0x7f0cce5fd700 (LWP 4390)]
[Thread 0x7f0cce5fd700 (LWP 4390) exited]
[New Thread 0x7f0ccedfe700 (LWP 4391)]
[Thread 0x7f0ccedfe700 (LWP 4391) exited]
[New Thread 0x7f0cce5fd700 (LWP 4392)]
[Thread 0x7f0cce5fd700 (LWP 4392) exited]
[New Thread 0x7f0ccedfe700 (LWP 4393)]
[Thread 0x7f0ccedfe700 (LWP 4393) exited]
[New Thread 0x7f0ccedfe700 (LWP 4394)]
[Thread 0x7f0ccedfe700 (LWP 4394) exited]
[New Thread 0x7f0ccedfe700 (LWP 4395)]
[Thread 0x7f0ccedfe700 (LWP 4395) exited]
[New Thread 0x7f0cce5fd700 (LWP 4396)]
[Thread 0x7f0cce5fd700 (LWP 4396) exited]
[New Thread 0x7f0ccedfe700 (LWP 4397)]
[Thread 0x7f0ccedfe700 (LWP 4397) exited]
[New Thread 0x7f0cce5fd700 (LWP 4398)]
[Thread 0x7f0cce5fd700 (LWP 4398) exited]
[New Thread 0x7f0ccedfe700 (LWP 4399)]
[Thread 0x7f0ccedfe700 (LWP 4399) exited]

Thread 14 "DefSLAM" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f0d27a19700 (LWP 4340)]
0x00007f0d82333af0 in void Eigen::internal::call_assignment_no_alias<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op, Eigen::Matrix<double, -1, -1, 0, -1, -1> >, Eigen::internal::assign_op >(Eigen::Matrix<double, -1, -1, 0, -1, -1>&, Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op, Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::internal::assign_op const&) () from /home/crystal/compareWorkbench/DefSLAM-master/lib/libDeformableSLAM.so

Here is the debugger output:
Screenshot from 2021-06-07 21-10-57

Here is the console output:
/home/crystal/compareWorkbench/DefSLAM-master/Apps/DefSLAM /home/crystal/compareWorkbench/DefSLAM-master/Vocabulary/ORBvoc.txt /home/crystal/Dataset/sequence_heart/hamlyn.yaml /home/crystal/Dataset/f5phantom/f5_dynamic_deint_L.avi
4

DefSLAM 2019-2020 José Lamarca, University of Zaragoza.
This program comes with ABSOLUTELY NO WARRANTY;
This is free software, and you are welcome to redistribute it

Input sensor was set to:
Loading ORB Vocabulary. This could take a while...
Vocabulary loaded!

Camera Parameters:

  • fx: 579.057
  • fy: 579.057
  • cx: 139.815
  • cy: 159.224
  • k1: 0
  • k2: 0
  • p1: 0
  • p2: 0
  • fps: 20
  • color order: RGB (ignored if grayscale)

ORB Extractor Parameters:

  • Number of Features: 2000
  • Scale Levels: 1
  • Scale Factor: 1.2
  • Initial Fast Threshold: 10
  • Minimum Fast Threshold: 5

Defomation tracking Parameters:

  • Reg. Inextensibility: 16000
  • Reg. Laplacian: 300
  • Reg. Temporal: 0.02
  • Reg. LocalZone: 1
    New map created with 577 points
    POINTS matched:440
    NORMAL ESTIMATOR IN - NORMALS REESTIMATED : 0 - 0
    NORMAL ESTIMATOR OUTPoints potential : 0 160
    Number Of normals 0 0x803840
    Not enough normals
    Reprojection error: 4.92431
    Points considered: 440
    00001 440 0 575
    POINTS matched:378
    Reprojection error: 4.3275
    Points considered: 404
    00002 406 0 575
    Framebuffer with requested attributes not available. Using available framebuffer. You may see visual artifacts.POINTS matched:368
    Reprojection error: 3.63231
    Points considered: 419
    00003 420 0 575
    POINTS matched:377
    Reprojection error: 4.37176
    Points considered: 411
    00004 413 0 575
    POINTS matched:355
    Reprojection error: 4.01546
    Points considered: 396
    00005 398 0 575
    POINTS matched:347
    Reprojection error: 4.15708
    Points considered: 386
    00006 386 0 575
    POINTS matched:300
    Reprojection error: 5.60106
    Points considered: 330
    00007 332 0 575
    POINTS matched:276
    Reprojection error: 4.48035
    Points considered: 336
    00008 337 0 575
    POINTS matched:291
    Reprojection error: 5.16353
    Points considered: 344
    00009 346 0 575
    POINTS matched:283
    Reprojection error: 5.89413
    Points considered: 323
    00010 323 0 575
    POINTS matched:285
    Finding by Schwarp
    -0.265467 0.355908 -0.288624-0.265467 0.355908 -0.288624New points : 2
    Calculating final Schwarp
    -0.265467 0.355908 -0.288624Points to reestimate : 263 321
    Signal: SIGSEGV (Segmentation fault)

Thanks and look forward to your response.

Question about download datasets.

Could you provide the new dataset download link? The dataset (Mandala dataset and Hamlyn dataset) link pasted in the README has out-of-date.

question about test dataset

I am a freshman at the SLAM。This may be a stupid question, I'm sorry to disturb you. DefSlam is a monocular SLAM system, but when testing, the Mandala dataset and Hamlyn dataset used are both stereo images. Why?

Question about absolute pose

I am trying to extract the trajectory (list of poses) from DefSLAM. I noticed that the function "trackMonocular" returns a relative pose. Is this pose relative to the last one, so that I can simply accumulate the poses to get the trajectory? Or is it relative to a key-frame as in ORBSLAM2?
Thank you in advance for your answer.

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.