Open 1JIEZHAO opened 5 years ago
In your pose files, try inputting only odometry data for the first four dataset i.e. discarding the images then re-run again. See if that work.
Here is the example in which I removed the images data from the first four dataset i.e. only IMU and GPS are included (time 9953, 10015, 10078, 10156) after that both images and poses data are included in the data file (from time 10218).
9953 IMU 0 0 0.913545457642601 -0.4067366430758
9953 GPS 53.9487138293293 -1.04606432582583 0
10015 IMU 0 0 0.913545457642601 -0.4067366430758
10015 GPS 53.948713167334 -1.04606308458458 0
10078 IMU 0 0 0.913545457642601 -0.4067366430758
10078 GPS 53.9487124946613 -1.04606182332332 0
10156 IMU 0 0 0.913545457642601 -0.4067366430758
10156 GPS 53.9487116618285 -1.04606026176176 0
10218 IMU 0 0 0.913545457642601 -0.4067366430758
10218 GPS 53.9487109998332 -1.04605902052052 0
10218 CAM 0 Front_154.jpg
10218 CAM 1 Left_154.jpg
10218 CAM 2 Rear_154.jpg
10280 IMU 0 0 0.913545457642601 -0.4067366430758
10280 GPS 53.9487103378378 -1.04605777927928 0
10280 CAM 0 Front_155.jpg
10280 CAM 1 Left_155.jpg
10280 CAM 2 Rear_155.jpg
10358 IMU 0 0 0.913545457642601 -0.4067366430758
10358 GPS 53.948709505005 -1.04605621771772 0
10358 CAM 0 Front_156.jpg
10358 CAM 1 Left_156.jpg
10358 CAM 2 Rear_156.jpg
.....
@stanathong I'm glad to receive your answer. It helped me. After operating in your way, the problem is gone. But I have a new problem: When I ran 100 images, the program crash. the error is Segmentation fault. I don't know if this error is caused by my data.
I saw your #42 closed question.
I have an embarrassing request. May I try your data? I really want to see the results of this method. My email is zjack5651@gmail.com.
I've been suffering from this problem for a long time. Any help would be highly appreciated. Thanks in advance!
@stanathong Thank you very much for your generosity. It helped me a lot. But the program did not run successfully.
my input command: -c /camodocal-master/camodocal-master/data3/calib --camera-count 3 --f 300.0 (f founction?) -o /camodocal-master/camodocal-master/data3/calibration_data -m 200 --data /INSTALL/camodocal-master/camodocal-master/data3/data --input /INSTALL/camodocal-master/camodocal-master/data3/input --event /INSTALL/camodocal-master/camodocal-master/data3/input/Event.dat --keydist 0.2
The error occurred:run odo camera calibrate exit
GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [9953] GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [10015] GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [10078] GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [10156] GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [10218] GPS: lat=53.9487, lon=-1.04606, alt=0, qx=0, qy=0, qz=0.913545, qw=-0.406737 [10280] IMG: 10218 -> /home/INSTALL/camodocal-master/camodocal-master/data3/input/frames_0/Front_154.jpg Pose : 10280 -0.669131 0.743145 0 -0.743145 -0.669131 0 0 0 1
======run odo camera calibrate ========= segment fault.
Based on your data set, do I need to do some extra work on this program? I'm confused about how this program works successfully. Can you help me? I really need your help.
Thank you very much for your help and look forward to your advise.
I also spent six weeks trying to get this program to run and never got successful results. Here are my extremely messy notes. I'm not sure if any of it will help but I'm happy to try to answer questions. I think I remember random segfaults like what you mentioned, and I think it was related to not having sufficient data points.
I have tried the extrinsic calibration these days and found two bugs that can cause the crash. First thing it assumes the first odometry data is ahead of image data, otherwise it would pop the error "No odometry for 4s, exiting". The second problem is that this line erase the odometryposes when vo is finished, which causes the "Segmentation fault". But it can happen that odometryposes have different size of voposes since voposes is not updated immediately after the tracking breaks. Changing the voposes to odometryposes seems to solve this issue.
@russelldj I have an embarrassing request. May I try your data? I really want to see the results of this method. My email is chxqiao@gmail.com.
@chunxiaoqiao , I apologize, I am no longer with the group that I did this work for and has such do not have access to the data. Best of luck.
The second problem is that this line erase the odometryposes when vo is finished, which causes the "Segmentation fault". But it can happen that odometryposes have different size of voposes since voposes is not updated immediately after the tracking breaks. Changing the voposes to odometryposes seems to solve this issue.
I tried it but failed , still the same error ;
Hey @youkely, I have the "No odometry for 4s, exiting" error as well. Can you please elaborate what do you mean by " it assumes the first odometry data is ahead of image data"? I am trying to run it without success for many days ...
Hey @youkely, I have the "No odometry for 4s, exiting" error as well. Can you please elaborate what do you mean by " it assumes the first odometry data is ahead of image data"? I am trying to run it without success for many days ...
@kubs0ne It should relate to the timestamp of the odometry and image data. Please check if you can modify some data or remove some data so that the timestamp of odometry is earlier than image data. It was three years ago and I almost forget everything about the tool.
@youkely So the timestamp in this implementation will be taken as x from camera_0_x or pose_x right? Then there should be one more pose file than there are images? I have 153 images, then I have to have 154 poses ?
Ok, so actually if anyone is wondering you have to delete the camera_0_0 file and start from camera_0_1 and have pose_0 availible. However I am still getting the "No segments, calibration fails" error and Segmentation fault after "Running camera rig calibration"
Hi,
I'm trying to run the project and have executed the intrinsic demo. But for running the extrinsic_calib demo, it failed. My data passed through four cameras and wheel odometers. my parameters are: camera-count: 4 keydist: 0.2 motions: 439
Here is the command line I'm writing: -c ../../data2/camera_calib --camera-count 4 --f 300.0 -o ../../data2/output -m 439 --data ../../data2/data --input ../../data2/input1/ --keydist 0.2 (1) -c contains the camera_i_calib.yaml files, (2) -o output (3) --data working data, (4) input folder, camera_0_time.png and pose_time.txt. I'm a little uncertain about the "pose_time.txt" format (rotation and translation). according to: file >> R(0,0) >> R(0, 1) >> R(0, 2); file >> R(1,0) >> R(1, 1) >> R(1, 2); file >> R(2,0) >> R(2, 1) >> R(2, 2); file >> t[0] >> t[1] >> t[2];
I don't know what "f" means.
Currently, I run my data and get this output: **# INFO: Initializing... Get images and pose files out from result directory
INFO: Initialization finished!
POSE: x=0, y=0, yaw=2.96729 [30] POSE: x=0, y=0, yaw=2.97017 [60] POSE: x=-0.0295893, y=0.0049473, yaw=2.97593 [90] POSE: x=-0.118572, y=0.0184687, yaw=2.98484 [120] IMG: 30 -> ../../data2/input1/camera_0_30.png Pose : 120 -0.98774 -0.156107 0 0.156107 -0.98774 0 0 0 1
INFO: Running camera-odometry calibration for each of the 4 cameras.
======run odo camera calibrate =========
ERROR: No odometry data for 4s. Exiting...**
I've been suffering from this problem for a long time. Any help would be highly appreciated. Thanks in advance!