hku-mars / mlcc

Fast and Accurate Extrinsic Calibration for Multiple LiDARs and Cameras
GNU General Public License v2.0
494 stars 110 forks source link

Extrinsic refine - NaN residual #13

Closed Trvnik closed 2 years ago

Trvnik commented 2 years ago

Hi Team. I'm having hard time to replicate your experiment on your data (scene1 and secene2). I'm working inside ros:melodic based docker. I've installed your tested dependencies (Eigen, Ceres, OpenCV). I have no errors during compilation, just few warnings.

First stage (pose_refine) works fine. But I am not able to successfully run second stage (extrinsic_refine) program stops on first iteration on NaN assert on line extrinsic_refine.hpp:308:

iteration 0
residual0: 2.757675 nan u: 0.010000 v: 2.000000 q: nan -nan nan
extrinsic_refine: /home/robo/catkin_ws/src/mlcc/include/extrinsic_refine.hpp:308: void EXTRIN_OPTIMIZER::optimize(): Assertion `!std::isnan(residual2)' failed.

Final stage then works fine. Final camera - lidar alignment eats all of my 32GB Ram a crashed on std::bad_alloc. Same as mentioned before: here

I am thankful for any advice how to make this calibration working.

Trvnik commented 2 years ago

My bad after reading this I've modified ref.json file. Second stage is working fine.