bytedance / SchurVINS

[CVPR2024] SchurVINS: Schur Complement-Based Lightweight Visual Inertial Navigation System
GNU General Public License v3.0
415 stars 63 forks source link

unable to run in mono mode #1

Closed arjunskumar closed 6 months ago

arjunskumar commented 6 months ago

Is it possible to work with mono+imu mode?

here is my output log

[ INFO] [1711966062.538299702]: DepthFilter: RESET.
[ INFO] [1711966062.576112987]: DepthFilter: RESET.
[ INFO] [1711966064.576300780]: Init: Triangulated 80 points
F0401 18:07:44.578207 25497 schur_vins.cpp:158] Check failed: _dt >= 0 && _dt < 0.015 dt: 1.595
*** Check failure stack trace: ***
    @     0x7f21ffd8e0cd  google::LogMessage::Fail()
    @     0x7f21ffd8ff33  google::LogMessage::SendToLog()
    @     0x7f21ffd8dc28  google::LogMessage::Flush()
    @     0x7f21ffd90999  google::LogMessageFatal::~LogMessageFatal()
    @     0x7f22010d1785  schur_vins::SchurVINS::Prediction()
    @     0x7f22010d1f84  schur_vins::SchurVINS::Forward()
    @     0x7f2201077ccf  svo::FrameHandlerBase::schurvinsForward()
    @     0x7f2201077ddc  svo::FrameHandlerBase::sparseImageAlignment()
    @     0x7f220106804c  svo::FrameHandlerMono::processFrame()
    @     0x7f22010668ce  svo::FrameHandlerMono::processFrameBundle()
    @     0x7f2201085837  svo::FrameHandlerBase::addFrameBundle()
    @     0x7f22010874a4  svo::FrameHandlerBase::addImageBundle()
    @     0x7f2203c2ffac  svo::SvoInterface::processImageBundle()
    @     0x7f2203c32395  svo::SvoInterface::monoCallback()
    @     0x7f21c393b5db  image_transport::RawSubscriber::internalCallback()
    @     0x7f220179b71e  boost::detail::function::void_function_obj_invoker1<>::invoke()
    @     0x7f21c393f791  ros::SubscriptionCallbackHelperT<>::call()
    @     0x7f2203fd2e92  ros::SubscriptionQueue::call()
    @     0x7f2203f7d559  ros::CallbackQueue::callOneCB()
    @     0x7f2203f7f2fb  ros::CallbackQueue::callAvailable()
    @     0x7f2203c33765  svo::SvoInterface::monoLoop()
    @     0x7f22039236df  (unknown)
    @     0x7f2201f926db  start_thread
    @     0x7f220337e61f  clone
ganshanliushui678 commented 6 months ago

I find the same issue.the error is here:Check failed: _dt >= 0 && _dt < 0.015 dt: 1.45.I try to change the value from 0.015 to 1.5 but it still don't work and often reset. Do you solve the problem?

frank-fyf commented 6 months ago

The original SchurVINS code only can work on stereo mode. There may be some unexpected issues if you only use the monocular yaml (like euroc_mono.yaml) but without code modification, since the original SchurVINS code is not developed for monocular mode but for stereo mode. BTW, if you need the mono mode, there just a few codes need modification.