Advertisement

[学习笔记-SLAM篇]KITTI数据集轨迹说明

阅读量:

KITTI数据集做SLAM的话应该都有所耳闻,但过于庞大的压缩包以及运行一次就可能卡住的风险以及不知轨迹几何所以随机运行的偶然性···
让我决定整理一下KITTI的轨迹,便于选择对应序列测试。
考虑到pose真值中只有11(00-10)个轨迹真值,在官网上又找到了5(11-15)个序列轨迹,整理了16个轨迹。
如果想自己运行的话,最下提供了参考的代码,不过KITTI的真实轨迹包要下载一下。

KITTI传送门:Visual Odometry / SLAM Evaluation 2012

推荐使用情况见下面,但仅从轨迹结果考虑,没有结合环境、路况等等信息,在选择的时候还需多方考虑。

注:
1)若仅测试算法是否安装好,对轨迹无要求,建议选小一点的包,eg.04、17、20、03;
2)若测试算法性能,要求闭环,含有真值,但包不要太大,eg.07、06、09;
3)若测试算法性能,要求轨迹复杂,含有真值,电脑性能好,eg.05、08、00、02。

自助下载链接:配合博客的数据集资源,整理到这里自行下载

KITTI轨迹

  • 代码

00

在这里插入图片描述

01

在这里插入图片描述

02

在这里插入图片描述

03

在这里插入图片描述

04

在这里插入图片描述

05

在这里插入图片描述

06

在这里插入图片描述

07

在这里插入图片描述

08

在这里插入图片描述

09

在这里插入图片描述

10

在这里插入图片描述

11

在这里插入图片描述

12

在这里插入图片描述

13

在这里插入图片描述

14

在这里插入图片描述

15

在这里插入图片描述

代码

注:
1)代码参考KITTI数据集测试 - 2 groundtruth 真实地图
2)使用时修改路径为自己解压后pose文件夹的路径。

复制代码
    %% display groundtruth of KITTI poses
    % include sequence from 00-10.txt
    
    % read from poses
    filename = '$PATH/poses/10.txt';
    fid = fopen(filename);
    fseek(fid, 0, 'bof');
    lastposition = ftell(fid);
    disp(['start position:',num2str(lastposition)]);
    
    groundtruth = [];
    
    while fgetl(fid) ~= -1, % end of line check
    
    fseek(fid, lastposition, 'bof');
    line = textscan(fid,'%f %f %f %f %f %f %f %f %f %f %f %f\n',1);
    line = [line{:}];
    transform = vec2mat(line,4);
    
    groundtruth = [groundtruth; [transform(1,4), transform(3,4)]];
    lastposition = ftell(fid);
    disp(['lastposition:',num2str(lastposition)]);
    
    end
    
    % display ground truth
    scatter(groundtruth(:,1),groundtruth(:,2));
    axis equal
    
    fclose(fid);
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    

全部评论 (0)

还没有任何评论哟~