hengli / camodocal

CamOdoCal: Automatic Intrinsic and Extrinsic Calibration of a Rig with Multiple Generic Cameras and Odometry
Other
1.18k stars 390 forks source link

Segmentation Fault when running extrinsic calibration #62

Open rebellojason7 opened 7 years ago

rebellojason7 commented 7 years ago

I've been trying to run the extrinsic_calib example provided with CamOdoCal but keep running into a segmentation fault.

My system is set up as follows: My camodocal folder is located in /home/jrebello/projects. I then set up the following structure 1) In my camodocal folder I created another folder called 'gaist_data' 2) In 'gaist_data' I set up various other folders such as (1) 'calib', (2) 'calibration_data', (3) 'data', (4) 'input' to hold the (1) intrinsic calibration data of the cameras, (2) empty, (3) empty, and (4) frames and the Event.dat file [as shown in the image provided] 3) I also moved only the 'surf64.yml.gz' file to the build/bin folder.

I run the program with the following cammand: bin/extrinsic_calib --calib /home/jrebello/projects/camodocal/gaist_data/calib --camera-count 3 --output /home/jrebello/projects/camodocal/gaist_data/calibration_data/ --motions 200 --input /home/jrebello/projects/camodocal/gaist_data/input --data /home/jrebello/projects/camodocal/gaist_data/data/ --event /home/jrebello/projects/camodocal/gaist_data/input/Event_152516_123_150-400.dat

but get the following error

INFO: Initializing...

Read /home/jrebello/projects/camodocal/gaist_data/input/Event_152516_123_150-400.dat file to get all the events

INFO: Initialization finished!

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/jrebello/projects/camodocal/gaist_data/input/frames_0/Front_154.jpg Pose : 10280 -0.669131 0.743145 0 -0.743145 -0.669131 0 0 0 1

INFO: Running camera-odometry calibration for each of the 3 cameras.

Segmentation fault (core dumped)

I have also followed the issue list and made the required changes such as this one according to issue #31 https://github.com/hengli/camodocal/issues/31. I ran gdb on the program and found the error was in camodocal::interpolatePose (poseBuffer=..., timestamp=timestamp@entry=10218, interpPose=...) at /home/jrebello/projects/camodocal/src/calib/utils.cc:76

Does anyone have any thoughts on how to solve this issue or have any data that I can use with extrinsic_calib ? Please let me know if you require more information.

Also, can someone provide me with data of a working example that runs on the latest source code. Thanks.

blairlpp commented 7 years ago

What kind of pictures should I take for a 3 cameras rig? @rebellojason7