Skip to content

Running issue: not enough imu data for init #32

@D-ruid

Description

@D-ruid

Thank you for opening-source! I‘m encountering initialization issues when running omni-vins with my own data collected by an OAK-FFC-4P module. The system fails to initialize properly, continuously reporting "not enough imu data" despite there are thousands of IMU measurements in the buffer. Here are the logs:

[08:04:55][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 3194
[08:04:55][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/3194 for init
[08:04:55][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000001 is_kf false, landmark_num: 94/104, mean_para 0.04%, time_cost: 39.0ms
[08:04:55][info][loop_detector.cpp,processImageArray,L39] [LoopDetector] processImageArray 1000000 from 1 images: 4 landmark: 94 lazy: false matched_to -1@D-1
[08:04:55][info][loop_detector.cpp,addImageArrayToDatabase,L248] [LoopDetector] Add KF 1000000 with 4 images from 1 to local keyframe database. Total frames: 1
[08:04:55][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000002 is_kf false, landmark_num: 93/111, mean_para 0.07%, time_cost: 47.6ms
[08:04:55][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 3394
[08:04:55][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/3394 for init
[08:04:55][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000003 is_kf false, landmark_num: 93/111, mean_para 0.08%, time_cost: 23.2ms
[08:04:56][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000004 is_kf false, landmark_num: 93/111, mean_para 0.09%, time_cost: 23.2ms
[08:04:56][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000005 is_kf false, landmark_num: 93/113, mean_para 0.09%, time_cost: 19.0ms
[08:04:56][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 3754
[08:04:56][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/3754 for init
[08:04:56][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000006 is_kf false, landmark_num: 93/114, mean_para 0.09%, time_cost: 22.4ms
[08:04:57][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000007 is_kf false, landmark_num: 93/116, mean_para 0.09%, time_cost: 18.3ms
[08:04:57][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000008 is_kf false, landmark_num: 93/116, mean_para 0.09%, time_cost: 27.8ms
[08:04:57][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 4114
[08:04:57][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/4114 for init
[08:04:57][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000009 is_kf false, landmark_num: 93/116, mean_para 0.10%, time_cost: 21.7ms
[08:04:58][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000010 is_kf false, landmark_num: 93/116, mean_para 0.09%, time_cost: 25.2ms
[08:04:58][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000011 is_kf false, landmark_num: 93/117, mean_para 0.11%, time_cost: 21.0ms
[08:04:58][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 4466
[08:04:58][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/4466 for init
[08:04:58][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000012 is_kf false, landmark_num: 93/119, mean_para 0.13%, time_cost: 26.3ms
[08:04:58][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000013 is_kf false, landmark_num: 92/119, mean_para 0.08%, time_cost: 23.1ms
[08:04:59][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000014 is_kf false, landmark_num: 92/121, mean_para 0.08%, time_cost: 21.6ms
[08:04:59][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 4834
[08:04:59][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/4834 for init
[08:04:59][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000015 is_kf false, landmark_num: 92/121, mean_para 0.08%, time_cost: 23.3ms
[08:04:59][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000016 is_kf false, landmark_num: 92/121, mean_para 0.08%, time_cost: 23.5ms
[08:05:00][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000017 is_kf false, landmark_num: 92/121, mean_para 0.09%, time_cost: 23.6ms
[08:05:00][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 5195
[08:05:00][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/5195 for init
[08:05:00][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000018 is_kf false, landmark_num: 92/121, mean_para 0.08%, time_cost: 22.5ms
[08:05:00][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000019 is_kf false, landmark_num: 92/121, mean_para 0.08%, time_cost: 23.4ms
[08:05:01][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000020 is_kf false, landmark_num: 92/121, mean_para 0.10%, time_cost: 20.3ms
[08:05:01][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 5555
[08:05:01][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/5555 for init
[08:05:01][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000021 is_kf false, landmark_num: 92/121, mean_para 0.10%, time_cost: 26.4ms
[08:05:01][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000022 is_kf false, landmark_num: 92/122, mean_para 0.10%, time_cost: 19.8ms
[08:05:01][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000023 is_kf false, landmark_num: 92/122, mean_para 0.10%, time_cost: 24.5ms
[08:05:02][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 5904
[08:05:02][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/5904 for init
[08:05:02][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000024 is_kf false, landmark_num: 89/123, mean_para 1.03%, time_cost: 27.0ms
[08:05:02][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000025 is_kf false, landmark_num: 88/125, mean_para 1.52%, time_cost: 28.0ms
[08:05:02][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000026 is_kf true, landmark_num: 88/128, mean_para 1.54%, time_cost: 24.6ms
[08:05:02][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 6275
[08:05:02][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/6275 for init
[08:05:03][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000027 is_kf false, landmark_num: 125/132, mean_para 1.04%, time_cost: 23.4ms
[08:05:03][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000028 is_kf false, landmark_num: 123/135, mean_para 2.01%, time_cost: 25.7ms
[08:05:03][info][loop_detector.cpp,processImageArray,L39] [LoopDetector] processImageArray 1000026 from 1 images: 4 landmark: 128 lazy: false matched_to -1@D-1
[08:05:03][info][loop_detector.cpp,addImageArrayToDatabase,L248] [LoopDetector] Add KF 1000026 with 4 images from 1 to local keyframe database. Total frames: 2
[08:05:03][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000029 is_kf true, landmark_num: 123/138, mean_para 3.50%, time_cost: 25.6ms
[08:05:03][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 6635
[08:05:03][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/6635 for init
[08:05:04][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000030 is_kf false, landmark_num: 132/147, mean_para 1.17%, time_cost: 26.3ms
[08:05:04][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000031 is_kf false, landmark_num: 129/148, mean_para 1.81%, time_cost: 28.0ms
[08:05:04][info][loop_detector.cpp,processImageArray,L39] [LoopDetector] processImageArray 1000029 from 1 images: 4 landmark: 138 lazy: false matched_to -1@D-1
[08:05:04][info][loop_detector.cpp,addImageArrayToDatabase,L248] [LoopDetector] Add KF 1000029 with 4 images from 1 to local keyframe database. Total frames: 3
[08:05:04][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000032 is_kf true, landmark_num: 127/154, mean_para 2.22%, time_cost: 31.1ms
[08:05:04][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 6995
[08:05:04][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/6995 for init
[08:05:04][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000033 is_kf false, landmark_num: 152/154, mean_para 0.28%, time_cost: 23.6ms
[08:05:05][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000034 is_kf false, landmark_num: 150/152, mean_para 0.45%, time_cost: 25.2ms
[08:05:05][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000035 is_kf false, landmark_num: 148/157, mean_para 0.38%, time_cost: 20.5ms
[08:05:05][info][loop_detector.cpp,processImageArray,L39] [LoopDetector] processImageArray 1000032 from 1 images: 4 landmark: 154 lazy: false matched_to -1@D-1
[08:05:05][info][loop_detector.cpp,addImageArrayToDatabase,L248] [LoopDetector] Add KF 1000032 with 4 images from 1 to local keyframe database. Total frames: 4
[08:05:05][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 7356
[08:05:05][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/7356 for init
[08:05:05][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000036 is_kf false, landmark_num: 147/157, mean_para 0.57%, time_cost: 25.7ms
[08:05:06][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000037 is_kf false, landmark_num: 146/159, mean_para 0.96%, time_cost: 24.2ms
[08:05:06][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000038 is_kf true, landmark_num: 146/160, mean_para 1.17%, time_cost: 24.3ms
[08:05:06][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 7716
[08:05:06][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/7716 for init
[08:05:06][info][loop_detector.cpp,processImageArray,L39] [LoopDetector] processImageArray 1000038 from 1 images: 4 landmark: 160 lazy: false matched_to -1@D-1
[08:05:06][info][loop_detector.cpp,addImageArrayToDatabase,L248] [LoopDetector] Add KF 1000038 with 4 images from 1 to local keyframe database. Total frames: 5
[08:05:06][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000039 is_kf false, landmark_num: 157/161, mean_para 0.24%, time_cost: 20.6ms
[08:05:07][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000040 is_kf false, landmark_num: 155/165, mean_para 0.38%, time_cost: 24.8ms
[08:05:07][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000041 is_kf false, landmark_num: 155/166, mean_para 0.39%, time_cost: 23.7ms
[08:05:07][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 8076
[08:05:07][info][d2estimator.cpp,tryinitFirstPose,L76] not enough imu data 2/8076 for init
[08:05:07][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000042 is_kf false, landmark_num: 151/165, mean_para 0.52%, time_cost: 23.5ms
[08:05:07][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000043 is_kf false, landmark_num: 151/167, mean_para 0.74%, time_cost: 24.9ms
[08:05:08][info][d2featuretracker.cpp,trackLocalFrames,L136] frame_id: 1000044 is_kf true, landmark_num: 151/167, mean_para 1.05%, time_cost: 30.5ms
[08:05:08][info][d2estimator.cpp,inputImage,L317] tryinitFirstPose imu buf: 8436

My camera driver is based on this https://mp.weixin.qq.com/s/TuKLp02-hzQ0vAQp7UtD6A. The IMU data is collected from the OAK-FFC-4P module, with the frequency set to 400 Hz. The image output frequency is set to 10 Hz. From visual display, it seems that feature tacking appears to be working, and the system keeps trying to initialize but never succeeds. Why would the system report "not enough imu data" when there are clearly thousands of measurements available? How can I fix this problem?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions