baidu / ICE-BA

Apache License 2.0
705 stars 232 forks source link

whether this project support monocular Visual inertial SLAM ? #12

Open niannianmeng opened 6 years ago

niannianmeng commented 6 years ago

I noticed that the project has a macro named CFG_STEREO, whether this project support monocular Visual inertial SLAM ?

JzHuai0108 commented 6 years ago

IMO, the derivation in the ICE-BA paper applies to both monocular and stereo visual inertial SLAM. The provided EuRoc_test app runs well with stereo images. To test the monocular case, I inserted the following statement after line 365 of EuRoc_test.cpp. slave_img_file_paths.clear(); Then the EuRoC_test app is rebuilt. The program runs fine at the beginning with MH_01_easy when the MAV hovers for a while. Then the MAV touches ground. As the MAV takes off, the program crashes. Here are the backtraces.

./bin/ice_ba --imgs_folder /media/Elements/dataset/euroc/MH_01_easy --start_idx 0 --end_idx -1 --iba_param_path config/param.txt --gba_camera_save_path /media/Elements/dataset/euroc/result/MH_01_easy.txt camera 0 fov: 100 deg camera 1 fov: 100 deg Load imu data. Enable OF prediciton with gyro Loaded 'config/param.txt' init done XmbTextListToTextProperty result code -2 XmbTextListToTextProperty result code -2 XmbTextListToTextProperty result code -2 F0717 16:44:30.472192 30810 LocalBundleAdjustorDL.cpp:887] Check failed: e2 >= 0.0f Check failure stack trace: @ 0x7f5f5f1805cd google::LogMessage::Fail() @ 0x7f5f5f182433 google::LogMessage::SendToLog() @ 0x7f5f5f18015b google::LogMessage::Flush() @ 0x7f5f5f182e1e google::LogMessageFatal::~LogMessageFatal() @ 0x7f5f5f95ce36 LocalBundleAdjustor::ConvertCameraMotionResiduals() @ 0x7f5f5f9745b5 LocalBundleAdjustor::SolveSchurComplementPCG() @ 0x7f5f5f967e63 LocalBundleAdjustor::SolveSchurComplement() @ 0x7f5f5f8f5dbc LocalBundleAdjustor::Run() @ 0x7f5f5f809f43 IBA::Solver::PushCurrentFrame() @ 0x4115ad main @ 0x7f5f5b5a1830 __libc_start_main @ 0x412dd9 _start @ (nil) (unknown) ./run_ice_ba.sh: line 11: 30810 Aborted (core dumped) ./bin/ice_ba --imgs_folder /media/Elements/dataset/euroc/MH_01_easy --start_idx 0 --end_idx -1 --iba_param_path config/param.txt --gba_camera_save_path /media/Elements/dataset/euroc/result/MH_01_easy.txt

This should be a minor issue though. After all, I believe, ICE-BA indeed supports monocular VISLAM.

liuhaomin commented 6 years ago

Yes it supports monocular VISLAM. But current version for monocular is not stable enough. I will fix this problem soon.

niannianmeng commented 6 years ago

got it , thanks a lot

vinceliu21 commented 5 years ago

Is there a stable version for monocular yet? @liuhaomin