Description
Hi all,
I experienced the following issue when trying to kalibr_calibrate_cameras
:
kalibr_calibrate_cameras --bag ~/Downloads/BF2M2020S23-1.bag --topics /cam0/image_raw --models ds-none --target ~/Desktop/target.yaml --verbose
importing libraries
Initializing cam0:
Camera model: ds-none
Dataset: /home/caselitz/Downloads/BF2M2020S23-1.bag
Topic: /cam0/image_raw
Number of images: 253
Extracting calibration target corners
...
Extracted corners for 253 images (of 253 images)
[DEBUG] [1540407694.373795]: calibrateIntrinsics: intrinsics guess: [ 0. 0.5 328.19045165 328.19045165 639.5
511.5 ]
[DEBUG] [1540407694.378700]: calibrateIntrinsics: distortion guess: []
[DEBUG] [1540407694.387976]: calibrateIntrinsics: adding camera error terms for 253 calibration targets
[DEBUG] [1540407703.494753]: calibrateIntrinsics: added 35793 camera error terms
No linear system solver set in the options. Defaulting to the sparse_cholesky solver
Using the sparse_cholesky linear system solver
Using the levenberg_marquardt trust region policy
[DEBUG] [1540407703.499829]: Before optimization:
[DEBUG] [1540407705.404647]: Reprojection error squarred (camL): mean 49.7943951178, median 3.70118328943, std: 171.027015386
No linear system solver set in the options. Defaulting to the sparse_cholesky solver
Using the sparse_cholesky linear system solver
Using the levenberg_marquardt trust region policy
Initializing
Optimization problem initialized with 508 design variables and 35793 error terms
The Jacobian matrix is 71586 x 1524
[0.0]: J: 1.78229e+06
python: /usr/include/eigen3/Eigen/src/Core/DenseCoeffsBase.h:408: Eigen::DenseCoeffsBase<Derived, 1>::Scalar& Eigen::DenseCoeffsBase<Derived, 1>::operator[](Eigen::Index) [with Derived = Eigen::Matrix<double, -1, 1>; Eigen::DenseCoeffsBase<Derived, 1>::Scalar = double; Eigen::Index = long int]: Assertion `index >= 0 && index < size()' failed.
Aborted (core dumped)
So I guess the assertion is raised somewhere in this function.
I tried the available camera models (except pinhole) and all *-none
models gave me the error. Interestingly, omni-radtan
did not!
I tried with my own dataset but then switched to another one from this site (BF2M2020S23). Error also occurs here, so I guess the dataset is not the reason.
Do you think it might be related to the OS (Ubuntu 18.04) or Eigen version (3.3.4)?
@VladyslavUsenko and @NikolausDemmel - when you did the calibrations for your paper, e.g. ds-none
, which versions did you use? Do you think the issue could be related to none
distortion model, as - if I remember correctly - this was introduced with the PR for the new camera models (thanks for contributing this to kalibr!)?
Thanks for your help!
Best, Tim
PS: I will investigate were the assertion is raised exactly and see if using an older Eigen version helps. Just wanted to open this issue in case someone with more insight can help already. :)