mp3guy / Kintinuous

Real-time large scale dense visual SLAM system

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Segmentation Faults and Aborts, caused by data used?

Docea opened this issue · comments

commented

Hello,

I'm trying to do a comparison of Kintinuous and ElasticFusion on data from laparoscopic surgeries. When running Kintinuous with the loop.klg provided, everything works perfectly. But, when running on data we collected from our stereo laparoscope the algorithm crashes in a couple of different ways. It should be noted that the surfaces in our data are both smooth and homogeneous in colouring, the depth map being a bit noisy as well as there being quite a strong central light source at times. It's not clear to me whether the errors are a result of the way it has been compiled. The errors are as follows:

The command that I run:
gdb --args ./Kintinuous -r -s 0.5 -v ../vocab.yml.gz -l /path/to/data.klg -ri -fl -od -c /path/to/cam_info -f -dg 0.05

The scale of the data in the .klg file is 60000, generated with https://github.com/HTLife/png_to_klg

First Error:

slam3d: Pose3d_Pose3d_Factor requires pose1 or pose2 to be initialized

Thread 15 "Kintinuous" received signal SIGABRT, Aborted.
[Switching to Thread 0x7fff8cffd700 (LWP 3679)]
0x00007fffed441438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
54      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007fffed441438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#1  0x00007fffed44303a in __GI_abort () at abort.c:89
#2  0x000000000055b705 in isam::Pose3d_Pose3d_Factor::initialize() ()
#3  0x00000000005de667 in isam::Slam::add_factor(isam::Factor*) ()
#4  0x000000000055489c in iSAMInterface::addCameraCameraConstraint(unsigned long, unsigned long, Eigen::Matrix<float, 3, 3, 1, 3, 3> const&, Eigen::Matrix<float, 3, 1, 0, 3, 1> const&, Eigen::Matrix<float, 3, 3, 1, 3, 3> const&, Eigen::Matrix<float, 3, 1, 0, 3, 1> const&) ()
#5  0x00000000004d009b in Deformation::addCameraCamera() ()
#6  0x00000000004d6b73 in Deformation::process() ()
#7  0x000000000047b491 in ThreadObject::run() ()
#8  0x000000000047bea6 in ThreadObject::start() ()
#9  0x00007ffff77a65d5 in ?? () from /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.58.0
#10 0x00007ffff757f6ba in start_thread (arg=0x7fff8cffd700) at pthread_create.c:333
#11 0x00007fffed5134dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) 

Second Error:

Thread 15 "Kintinuous" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fff8cffd700 (LWP 8069)]
0x0000000000553570 in iSAMInterface::getCameraPose(unsigned long) ()
(gdb) bt
#0  0x0000000000553570 in iSAMInterface::getCameraPose(unsigned long) ()
#1  0x00000000004d6efe in Deformation::process() ()
#2  0x000000000047b491 in ThreadObject::run() ()
#3  0x000000000047bea6 in ThreadObject::start() ()
#4  0x00007ffff77a65d5 in ?? () from /usr/lib/x86_64-linux-gnu/libboost_thread.so.1.58.0
#5  0x00007ffff757f6ba in start_thread (arg=0x7fff8cffd700) at pthread_create.c:333
#6  0x00007fffed5134dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109
(gdb) q
A debugging session is active.

Camera Info:
813.062768 813.062768 437.601997 279.910118 960 540

Any help is much appreciated!