主要内容

stereoParameters

存储立体摄像机系统参数的对象

描述

stereoParameters对象存储两个相机的内部和外部参数及其几何关系。

创建

您可以创建stereoParameters对象使用stereoParameters这里描述的函数。您也可以创建stereoParameters对象。estimateCameraParameters与一个2 -numImages-by-2数组的输入图像点,其中是每个模式中关键点坐标的数量。

描述

例子

stereoParams = stereoParameters (cameraParameters1cameraParameters2poseCamera2使用两个相机的相机参数和相机2的位姿返回一个立体相机系统参数对象。cameraParameters1而且cameraParameters2cameraParameterscameraIntrinsics分别包含摄像头1和摄像头2的intrinsic的对象。三个输入参数设置CameraParameters1CameraParameters2,PoseCamera2属性,分别。

stereoParams = stereoParameters (paramStruct创建一个相同的stereoParameters对象从现有的stereoParameters对象,其参数存储在paramStruct

输入参数

全部展开

立体声参数,指定为立体声参数结构。得到一个paramStruct从现有的stereoParameters对象,使用toStruct函数。

属性

全部展开

两个相机的内外参数

摄像机1的参数,指定为acameraParameters对象。该对象包含相机的内部、外部和镜头畸变参数。

摄像机2的参数,指定为acameraParameters对象。该对象包含相机的内部、外部和镜头畸变参数。

两个摄像机之间的几何关系

第二相机的相对姿态,指定为rigidtform3d对象。的R翻译对象的属性分别表示摄像机1和摄像机2之间的相对旋转和平移。它们使用以下方法将摄像机2坐标转换回摄像机1坐标:

orientation1 = orientation2 * R location1 = orientation2 * Translation + location2
orientation1而且location1表示摄像机1的绝对位姿,和orientation2而且location2表示相机2的绝对姿态。

摄像机2显示在摄像机1坐标系中,轴原点位于摄像机1的光心。

的值不能设置PoseCamera2在创建stereoParameters对象。

基本矩阵,存储为3 × 3矩阵。基本矩阵是两个立体摄像机之间的关系,因此,下式必须成立:

P 1 1 F u n d 一个 e n t 一个 l 一个 t r x P 2 1 0

P1,图像1中的点对应于P2如图2所示。两个点都用像素坐标表示。

基本矩阵,存储为3 × 3矩阵。两个立体摄像机之间的基本矩阵,使下式为真:

P 1 1 E 年代 年代 e n t 一个 l 一个 t r x P 2 1 0

P1,图像1中的点对应于P2为图2中的点。这两个点都用归一化图像坐标表示,原点在相机的光学中心。的x而且y像素坐标由焦距归一化fx而且fy

估计参数的精度

在所有图像对上,重新投影点和被检测点之间的平均欧氏距离,以像素表示。

相机参数估计设置

用于估计两个摄像机的外部特性的校准模式数,存储为整数。

标定模式中关键点的世界坐标,指定为2数组。表示模式中关键点的数量。

世界点单位,指定为字符向量。字符向量描述的是度量单位。

对象的功能

toStruct 将立体参数对象转换为结构体

例子

全部折叠

指定图像校准。

leftImages = imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”...“校准”“立体”“左”));rightImages = imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”...“校准”“立体”“正确”));

检测棋盘格。

[imagePoints, boardSize] =...detectCheckerboardPoints (leftImages.Files rightImages.Files);

指定棋盘关键点的世界坐标。正方形尺寸的单位是毫米。

squareSize = 108;worldPoints = generateCheckerboardPoints (boardSize squareSize);

校准立体声摄像系统。两个相机的分辨率相同。

I = readimage (leftImages, 1);imageSize = [size(I,1) size(I,2)];params = estimateCameraParameters (imagePoints worldPoints,...“图象尺寸”、图象尺寸);

可视化校准精度。

showReprojectionErrors (params)

图中包含一个axes对象。标题为Mean Reprojection Error per Image的axis对象包含5个类型为bar、line的对象。这些对象代表相机1,相机2,总体平均误差:0.06像素。

可视化相机外在。

图showExtrinsics (params)

图中包含一个axes对象。标题为“外部参数可视化”的axis对象包含28个类型为patch、text、line的对象。

参考文献

[1]张,Z。一种灵活的摄像机标定新技术。模式分析与机器智能汇刊22日,没有。11(2000年11月):1330-34。https://doi.org/10.1109/34.888718。

[2]海克拉,J.和O.西尔文。用隐式图像校正的四步相机标定程序。在IEEE计算机学会计算机视觉与模式识别会议论文集, 1106 - 12所示。圣胡安,波多黎各:IEEE计算。Soc, 1997年。https://doi.org/10.1109/CVPR.1997.609468。

扩展功能

版本历史

介绍了R2014a

全部展开

Baidu
map