kitti数据集标定文件解析
1、kitti数据采集平台
KITTI数据集的数据采集平台装配有2个灰度摄像机,2个彩色摄像机,一个Velodyne64线3D激光雷达,4个光学镜头,以及1个GPS导航系统。图示为传感器的配置平面图,为了生成双目立体图像,相同类型的摄像头相距54cm安装。由于彩色摄像机的分辨率和对比度不够好,所以还使用了两个立体灰度摄像机,它和彩色摄像机相距6cm安装。(模拟双目摄像机?)
2、kitti
激光雷达、摄像头数据融合:
要将Velodyne坐标中的点x投影到左侧的彩色图像中y:
使用公式:y
= P_rect_2 * R0_rect *Tr_velo_to_cam * x
将Velodyne坐标中的点投影到右侧的彩色图像中:
使用公式:y
= P_rect_3 * R0_rect *Tr_velo_to_cam * x
Tr_velo_to_cam * x
:是将Velodyne坐标中的点x投影到编号为0的相机(参考相机)坐标系中
R0_rect *Tr_velo_to_cam * x
:是将Velodyne坐标中的点x投影到编号为0的相机(参考相机)坐标系中,再修正
P_rect_2 * R0_rect *Tr_velo_to_cam *
x
:是将Velodyne坐标中的点x投影到编号为0的相机(参考相机)坐标系中,再修正,然后投影到编号为2的相机(左彩色相机)
注意:
(标号为2的摄像机的内参矩阵,只和相机内部参数有关,比如焦距和光心位置)
R0_rect(相机0的矫正旋转矩阵)
Tr_velo_to_cam(点云到相机的外参矩阵)
3、kitti
提供的校正文件解析:以(2011_09_26_calib文件夹中的文件为例)文件夹中包含三个文件
(1)calib_cam_to_cam.txt(相机到相机的标定):
其中
-
S_xx:1x2
矫正前的图像xx的大小
- K_xx:3x3
矫正前摄像机xx的校准矩阵
- D_xx:1x5
矫正前摄像头xx的失真向量
- R_xx:3x3
(外部)的旋转矩阵(从相机0到相机xx)
- T_xx:3x1
(外部)的平移矢量(从相机0到相机xx)
- S_rect_xx:1x2
矫正后的图像xx的大小
- R_rect_xx:3x3
纠正旋转矩阵(使图像平面共面)
- P_rect_xx:3x4
矫正后的投影矩阵
(内参矩阵,前面第一行为前面四个数据,依次三行)
(2)calib_velo_to_cam.txt
其中
-
R:3x3旋转矩阵
- T:3x1平移向量
- delta_f:弃用
- delta_c:弃用
- Tr_velo_to_cam
= (R
| T)(点云到相机的外参矩阵3x4)
(3)calib_imu_to_velo.txt
Y = P_rect_xx *
R_rect_00 * (R|T)_velo_to_cam * (R|T)_imu_to_velo * X
4、
传感器标定
(1)calib_cam_to_cam.txt
(P_rect_xx)
相机的标定,即为通过某个已知的目标,求取相机内参矩阵的过程。最常用的标定目标就是棋盘格。
准备好棋盘格照片之后采用matlab
自带的tools
Camera Calibrator进行标定
单目摄像机需要标定的参数双目都需要标定
双目摄像机比单目摄像机多标定的参数(R和T)主要是描述两个摄像机相对位置关系的参数,这些参数在立体校正和对极几何中用处很大
(2)calib_velo_to_cam.txt
主要是得到点云到图像的旋转平移矩阵:Tr_velo_to_cam
= (R
| T)
kitti数据集标定文件解析的更多相关文章
- kitti 数据集解析
1.KITTI数据集采集平台: KITTI数据采集平台包括2个灰度摄像机,2个彩色摄像机,一个Velodyne 3D激光雷达,4个光学镜头,以及1个GPS导航系统.坐标系转换原理参见click.KIT ...
- 激光相机数据融合(3)--KITTI数据集
KITTI数据集提供了双目图像,激光数据,和imu/gps位置信息,其中还包括了大量的算法.下载地址为:http://www.cvlibs.net/datasets/kitti/raw_data.ph ...
- KITTI数据集的使用——雷达与相机的数据融合
目录 目的 如何实现 kitti数据集简介 kitti数据集的raw_data 利用kitti提供的devkit以及相应数据集的calib文件 解读calib文件夹 解读devkit 目的 使用雷达点 ...
- KITTI数据集
目的 使用雷达点云提供的深度信息 如何实现 将雷达的三维点云投影到相机的二维图像上 kitti数据集简介 kitti的数据采集平台,配置有四个摄像机和一个激光雷达,四个摄像机中有两个灰度摄像机,两个彩 ...
- Json文件解析(上)
Json文件解析(上) 代码地址:https://github.com/nlohmann/json 自述文件 alt=GitHub赞助商 data-canonical-src="https: ...
- CocosStudio文件解析工具CsdAnalysis
起因 因为工作需要,所以需要使用CocosStudio来制作界面动画什么的.做完了发现需要找里边对象的时候会有很长一串代码,感觉不是很爽.之前写OC代码的时候可以吧程序中的对象指针跟编辑器中的对象相对 ...
- KITTI数据集格式说明
由于上一篇博客所提到的论文中的训练数据是KITTI的数据集,因此如果我想要用自己的数据集进行训练的话,就需要先弄清楚KITTI数据集的格式,在以下的网址找到了说明: 首先,数据描述中是这样的: 在以下 ...
- 通过正则表达式实现简单xml文件解析
这是我通过正则表达式实现的xml文件解析工具,有些XHTML文件中包含特殊符号,暂时还无法正常使用. 设计思路:常见的xml文件都是单根树结构,工具的目的是通过递归的方式将整个文档树装载进一个Node ...
- 八、Android学习第七天——XML文件解析方法(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...
随机推荐
- 从头认识java-14.1 再次对照数组与容器
这一章节我们再次深入的对照数组与容器. 数组与容器主要集中在三个方面:效率.类型.基础类型. 我们能够从三方面做出对照. 1.效率 这里的下来是指add和get 的速度 以下以add为例: packa ...
- 汇率换算自然语言理解功能JAVA DEMO
>>>>>>>>>>>>>>>>>>>>>>>> 欢迎转 ...
- linux 块设备驱动(四)——简单的sbull实例
#include <linux/module.h> #include <linux/moduleparam.h> #include <linux/init.h> # ...
- hdu 1542&&poj 1151 Atlantis[线段树+扫描线求矩形面积的并]
Atlantis Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- 九度OJ 1143:Primary Arithmetic(初等数学) (进位)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:616 解决:254 题目描述: Children are taught to add multi-digit numbers from ri ...
- npm ERR! Unexpected end of JSON input while parsing near '...inimist":"^1.2.0"}
简介 在项目中执行npm install安装依赖包的时候.出现npm ERR! Unexpected end of JSON input while parsing near '...inimist& ...
- mybatis入门小结(六)
入门小结---查询 1.1.1.1.1 #{}和${} #{}表示一个占位符号,通过#{}可以实现preparedStatement向占位符中设置值,自动进行java类型和jdbc类型转换,#{}可以 ...
- 在MFC中使用大漠插件
打开Class Wizard,Add Class...->MFC Class From TypeLib... File->Location->>> Finish-> ...
- [自动化平台系列] - 初次使用 Macaca-前端自动化测试(2)
接一下来讲一讲api的使用 http://macacajs.github.io/macaca-wd/api/ var _config = { //本程序的host host: 'http://te ...
- SpringBoot-(8)-配置MySQL数据库链接,配置数据坚挺拦截,创建默认数据表
一,链接mysql数据库 # 数据源基本配置 spring.datasource.username=root spring.datasource.password=123456 spring.data ...