首页 关于
树枝想去撕裂天空 / 却只戳了几个微小的窟窿 / 它透出天外的光亮 / 人们把它叫做月亮和星星
目录

TUM RGB-D SLAM Dataset and Benchmark

TUM RGB-D SLAM数据集是德国慕尼黑工业大学机器视觉组录制的一组RGB-D数据集和真值数据(ground-truth), 用于评价视觉里程计(Visual Odometry, VO)和视觉SLAM系统。针对不同的场景和应用目的,该数据集被分成了若干个种类,下面的表格中罗列了其中的测试(Testing and Debugging)、 手持SLAM(Handheld SLAM)、机器人SLAM(Robot SLAM)、结构和纹理(Structure vs. Texture)、动态物体(Dynamic Objects)、三维物体重建(3D Object Reconstruction)。 与这些数据相对应的官方还提供了一个验证分类和标定分类,因为没有提供真值数据(ground-truth),所以没有收录在下表中。数据量比较大,而且下载比较麻烦, 所以我准备了一个百度网盘(提取码:btku)保存这些数据。

序号 类别 名称 时长 轨迹长度 说明 原始数据链接
1 Testing and Debugging fr1/xyz 30.09s 7.112m 这组数据非常简单,基本上只有平移运动没有旋转,适合用来 Debug tgz
2 fr1/rpy 27.67s 1.664m 这组数据基本保持相机的位置不动,分别在三个轴上转动。 tgz
3 fr2/xyz 122.74s 7.029m 这组数据中相机沿着x,y,z三个方向缓慢的移动,保证图像基本不糊。 tgz
4 fr2/rpy 109.97s 1.506m 相机缓慢的绕着三个轴缓慢转动,保证图像基本不糊。 tgz
5 Handheld SLAM fr1/360 28.69s 5.818m 在一个办公室环境里转了360度。 tgz
6 fr1/floor 49.87s 12.569m 该组数据扫描办公室的木地板。木纹中有一些深色斑点,用SIFT或者SURF这样的特征点可以很容易检测出来,该场景大部分都是一个平面,只有刚开始的地方有个办公椅。 tgz
7 fr1/desk 23.40s 9.263m 扫描了一个办公室中的四张桌子。 tgz
8 fr1/desk2 24.86s 10.161m 四张办公桌。 tgz
9 fr1/room 48.90s 15.989m 录制了整个办公室。从四张办公桌开始,沿着办公室的墙走了一圈。可以用来测试SLAM系统的闭环检测功能。 tgz
10 fr2/360_hemisphere 91.48s 14.773m 站在大厅的中间,水平的转动 kinect 360度。基本没有平移。 tgz
11 fr2/360_kidnap 48.04s 14.286m 跟上一组数据类似,只是在转动的过程中遮住了几次相机。可以用来验证SLAM系统处理“绑架问题”的能力 tgz
12 fr2/desk 99.36s 18.880m 两张桌子,一个显示器、电话、椅子等物体。绕着它们转了一圈。 tgz
13 fr2/large_no_loop 112.37s 26.086m 在一个大厅里录了一段很长的轨迹,但在最后并没有形成闭环。可以用来评估SLAM系统的累计误差。只有开始和结尾的一段轨迹有ground-truth可以用来评估。 tgz
14 fr2/large_with_loop 173.19s 39.111m 与上一组类似,只是最后形成了闭环。 tgz
15 fr3/long_office_household 87.09s 21.455m 使用 Asus Xtion 相机录制的一段闭环数据,整个场景具有丰富的纹理和结构。 tgz
16 Robot SLAM fr2/pioneer_360 72.75s 16.118m Kinect 装到 Pioneer 机器人的顶部,在原地转了一圈。数据中还附带了激光雷达的扫描数据和机器人的里程计数据。 tgz
17 fr2/pioneer_slam 155.72s 40.380m 顶着 Kinect 的机器人运动,周围有一些桌子箱子和墙。运动过程中形成了几个闭环可以用于建图。 tgz
18 fr2/pioneer_slam2 115.63s 21.735m 顶着 Kinect 的机器人在大厅里运动。 tgz
19 fr2/pioneer_slam3 111.91s 18.135m 顶着 Kinect 的机器人在大厅里运动。 tgz
20 Structure vs. Texture fr3/nostructure_notexture_far 15.79s 2.897m 在约2米的位置,用Asus Xtion采集的一段木板表面图像,基本看不出什么结构和纹理。 tgz
21 fr3/nostructure_notexture_near_withloop 37.74s 11.739m 在距离约1米的位置,用Asus Xtion采集的3m x 3m木板图像,起始和结尾的轨迹有一段重叠,可以用于闭环检测。 tgz
22 fr3/nostructure_texture_far 15.53s 4.343m 在约2米的位置,用Asus Xtion采集的富纹理的平面数据。。 tgz
23 fr3/nostructure_texture_near_withloop 56.48s 13.456m 在约1米的位置,用Asus Xtion采集的富纹理的平面数据,首位轨迹重叠。 tgz
24 fr3/structure_notexture_far 27.28s 4.353m 约1米的位置,用Asus Xtion 采集的 Zig-Zag 结构的木板图像。木板用塑料膜覆盖,保证基本没有纹理。 tgz
25 fr3/structure_notexture_near 36.44s 3.872m 约半米的位置,用Asus Xtion 采集的 Zig-Zag 结构的木板图像,基本没有纹理。 tgz
26 fr3/structure_texture_far 31.55s 5.884m 约1米的位置,用Asus Xtion 采集的 Zig-Zag 结构的木板图像。木板用有很强纹理图案的彩色塑料膜覆盖。 tgz
27 fr3/structure_texture_near 36.91s 5.050m 约半米的位置,用Asus Xtion 采集的 Zig-Zag 结构的木板图像。木板用有很强纹理图案的彩色塑料膜覆盖。 tgz
28 Dynamic Objects fr2/desk_with_person 142.08s 17.044m 有一个人坐在桌子边,拍摄过程中他移动过一些物体。 tgz
29 fr3/sitting_static 23.63s 0.259m 两个人坐在桌边,聊天。 tgz
30 fr3/sitting_xyz 42.50s 5.496m 两个人坐在桌边,聊天。Asus Xtion相机沿着三个轴平移,基本没有旋转运动。 tgz
31 fr3/sitting_halfsphere 37.15s 6.503m 两个人坐在桌边,聊天。Asus Xtion相机以约1米的半径,绕着它们转了半圈。 tgz
32 fr3/sitting_rpy 27.48s 1.110m 两个人坐在桌边,聊天。Asus Xtion相机在同一个位置绕着三个轴转动。 tgz
33 fr3/walking_static 24.83s 0.282m 两个人走过一个办公室。 tgz
34 fr3/walking_xyz 28.83s 5.791m 两个人走过一个办公室。Asus Xtion相机沿着三个轴平移,基本没有旋转运动。 tgz
35 fr3/walking_halfsphere 35.81s 7.686m 两个人走过一个办公室。Asus Xtion相机以约1米的半径,绕着它们转了半圈。 tgz
36 fr3/walking_rpy 30.61s 2.698m 两个人走过一个办公室。Asus Xtion相机在同一个位置绕着三个轴转动。 tgz
37 3D Object Reconstruction fr1/plant 41.53s 14.795m 绕着一个绿植转了360度。 tgz
38 fr1/teddy 50.82s 15.709m 一个巨大的泰迪熊布偶。 tgz
39 fr2/coke 84.55s 11.681m 一个可乐易拉罐。 tgz
40 fr2/dishes 100.55s 15.009m 桌子上有几个盘子。 tgz
41 fr2/flowerbouquet 99.40s 10.758m 一束花。 tgz
42 fr2/flowerbouquet_brownbackground 76s 11.924m 棕色背景的一束花。 tgz
43 fr2/metallic_sphere 75.60s 11.040m 一个金属球。 tgz
44 fr2/metallic_sphere2 62.33s 11.813m 还是一个金属球。 tgz
45 fr3/cabinet 38.58s 8.111m 一个办公室收纳柜。 tgz
46 fr3/large_cabinet 33.98s 11.954m 一个大一点的办公室收纳柜。 tgz
47 fr3/teddy 80.79s 19.807m 不同高度绕着泰迪熊布偶转了两圈。 tgz

这个数据集的录制过程中,一共用到了三个相机,分别被标记为 fr1/freiburg1、fr2/freiburg2、fr3/freiburg3。其中,fr1和fr2是两个不同的 kinect 相机, fr3则是 Asus Xtion。TUM 以30帧每秒的频率保存了分辨率为 640×480 的深度图和彩色图。另外,TUM还通过一个高频的(100Hz)运动捕捉系统测量的相机真实运动轨迹, 它们把这个轨迹称为 ground-truth,用来与实验结果对比,评价SLAM算法或者系统的准确度。

视觉SLAM系统为了将2D的图像信息转换为3D的空间坐标,需要用到相机的内参。由于每台相机的制作过程多少有些差异,都需要专门进行标定,根据特定的相机模型计算内参。 TUM 以比较常用的针孔相机模型,对三个相机的光心、焦距和畸变系数进行了标定。 下面左侧的表格是从官方搬运过来的数据。 ORB-SLAM2把这三个相机的内参写到了配置文件TUM1.yaml, TUM2.yaml, TUM3.yaml中。我们在跑不同的数据集的时候,需要注意根据选用的相机调整相应的配置文件。

相机fxfycxcyd0d1d2d3d4
fr1/freiburg1517.3516.5318.6255.30.2624-0.9531-0.00540.00261.1633
fr2/freiburg2520.9521.0325.1249.70.2312-0.7849-0.0033-0.00010.9172
fr3/freiburg3535.4539.2320.1247.600000

上面右侧是我们在ORB_SLAM源码解读中使用的fr1/xyz数据集的目录结构。 它一共有四个文本文件和两个子目录。其中,associations.txt 是我们为了运行 RGB-D 版本的 ORB-SLAM 通过官方脚本生成的深度图与彩色图的对应关系。 depth 和 rgb 是两个子目录,分别保存了分辨率为 640×480 的深度图和彩色图。文本文件 depth.txt 和 rgb.txt 中记录了采集图像的时间戳和文件名。 文件 accelerometer.txt 记录了一个加表的测量值和时间戳,根据它我们可以大体估计相机的俯仰角和横滚角。groundtruth.txt 记录的则是用来对比实验结果的真值数据。




Copyright @ 高乙超. All Rights Reserved. 京ICP备16033081号-1