pamela-project / slambench

SLAM performance evaluation framework
https://apt.cs.manchester.ac.uk/projects/PAMELA/
Other
311 stars 84 forks source link

TUM dataset camera parameters #30

Closed mihaibujanca closed 4 years ago

mihaibujanca commented 5 years ago

Noticed while testing ORB-SLAM2 on the TUM dataset.

Camera parameters in framework/tools/dataset-tools/include/TUM.h do not match the description in https://vision.in.tum.de/data/datasets/rgbd-dataset/file_formats, and the values are unrealistic.

The reason ORB-SLAM2 still works is that the values stored in the file actually result in the correct values when using

((slambench::io::CameraSensor*)rgb_sensor)->Intrinsics[0]*((slambench::io::CameraSensor*)rgb_sensor)->Width

rather than just the intrinsics. This still means that the data was wrong in the first place and affects all other algorithms, as most used just the intrinsics.

In addition, it's been determined that the DepthSensorSerialiser and DepthSensorDeserialiser classes ignored distortion parameters and did not write or read this from SLAMFile, unlike CameraSensorSerialiser. Furthermore, in TUM.cpp in GenerateSLAMFile, loops do not capture the last distortion parameter.