视觉测距法,相机参数

问题描述 投票:0回答:2

[我正在研究视觉测距法,并且可以通过YouTube 2015/16播放有关摄影测量I和II的播放列表来观看Cyrill Stachniss教授的视频录像。

[首先,如果要创建自己的数据集(例如VO的KITTI数据集或牛津校园数据集),我用相机拍摄的图像的属性是什么。它们只是图像吗?或者,它们是否具有某些特殊属性?也就是说,如何使用单目或立体摄像机创建自己的数据集。

[其次,如果我成功创建(必须做!)我自己的数据集,我将如何从图像中获取camare参数?如何从图像中了解外部参数和固有参数?

谢谢。

computer-vision camera-calibration slam kitti
2个回答
0
投票

要从图像中获取外部参数和固有参数,您必须具有一组形状各异的已知形状的图像。自行完成这项任务并非易事,因为常见的CV库/解决方案具有用于相机校准的内置实用程序(我必须处理OpenCV库和Matlab CV软件包,它们通常是相同的)。黑白棋盘或其他简单的几何图案。

然后使用已知的相机参数,您可以操纵自己的数据集。

Matlab camera calibration reference

OpenCV camera calibration tutorials


0
投票

如果要用数据集对某些视觉测距算法进行基准测试,肯定会需要相机的固有参数及其姿势。

  • 如@ f4f答案中所述,固有校准通常是通过倾斜和旋转棋盘的某些图像来完成的(请参见opencv)。这将为您提供参数,例如焦距,光学中心以及畸变系数,视您的相机而定,这些系数可能很重要。

  • 在每一帧获取相机的姿势(即外部参数)可能会比较棘手。通常,使用来自其他传感器(跟踪系统,IMU,GPS等)的信息来获取地面真相。您可以看一下:TUM RGB-D SLAM Dataset和相应的paper。他们解释了如何使用运动捕捉系统获得地面真实姿势。

  • 记录摄像机帧的获取时间也很有趣(每帧一个时间戳)。

创建自己的视觉里程表数据集并非易事。如果您只是想创建一个“有趣的”数据集或进行一些实验,并且只有一台可用的相机,我想您可以尝试一些已知有效的方法(例如ORB-SLAM)。这将为您提供近似的相机姿势(您可能必须手动修复未知比例)。

© www.soinside.com 2019 - 2024. All rights reserved.