主要内容

estimateWorldCameraPose

从3-D到2-D的点对应估计相机的姿态

描述

例子

worldOrientationworldLocation) = estimateWorldCameraPose (imagePointsworldPointscameraParams返回在世界坐标系中校准的摄像机的方向和位置。输入worldPoints必须在世界坐标系中定义。

这个函数解决了透视-n使用透视-三点(P3P)算法求解-点(PnP)问题[1].该函数还使用m估计样本一致性(MSAC)算法消除了虚假的通信。

___inlierIdx) = estimateWorldCameraPose (imagePointsworldPointscameraParams除了前面语法中的参数外,还返回用于计算摄像机姿态的嵌套函数的索引。

___状态) = estimateWorldCameraPose (imagePointsworldPointscameraParams另外,返回一个状态代码以指示是否有足够的点数。

___) = estimateWorldCameraPose (___名称,值使用一个或多个指定的附加选项名称,值使用前面的任何语法对参数进行配对。

例子

全部折叠

加载先前计算的世界到图像的对应。

data =负载(“worldToImageCorrespondences.mat”);

估计世界摄像机的姿势。

[worldOrientation, worldLocation] = estimateWorldCameraPose (...data.imagePoints、data.worldPoints data.cameraParams);

画出世界点。

pcshow (data.worldPoints“VerticalAxis”“Y”“VerticalAxisDir”“下来”...“MarkerSize”, 30);持有plotCamera (“大小”10“定位”worldOrientation,“位置”...worldLocation);持有

图中包含一个坐标轴。轴包含11个对象的类型线,文本,补丁,散点。

输入参数

全部折叠

未变形图像点的坐标,指定为-by-2数组[xy)坐标。图像点的个数,,必须至少是四。

该功能不考虑透镜畸变。您可以使用undistortImage函数在检测图像点之前,或者您可以使用undistortPoints函数。

数据类型:|

世界点的坐标,指定为-by-3数组[xyz)坐标。

数据类型:|

摄像机参数,指定为cameraParameterscameraIntrinsics对象。你可以退回cameraParameters对象使用estimateCameraParameters函数。的cameraParameters对象包含相机的内在、外在和镜头畸变参数。

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“MaxNumTrials”1000

最大随机试验数,指定为逗号分隔对,由'MaxNumTrials和一个正整数标量。实际的试验次数取决于图像和世界点的数量,以及数值MaxReprojectionError信心属性。增加试验次数可以提高输出的稳健性,但需要额外的计算。

查找最大嵌套数的置信度,指定为逗号分隔对,由'信心'和范围为0,100的标量。增加这个值会提高输出的稳健性,但会增加额外的计算量。

用于寻找异常值的重投影错误阈值,指定为逗号分隔的对,由'MaxReprojectionError'和一个以像素为单位的正数值标量。增大该值会使算法收敛得更快,但会降低结果的准确性。

输出参数

全部折叠

相机在世界坐标中的方向,返回为一个3 × 3矩阵。

数据类型:

相机的位置,返回为1 × 3的单位矢量。

数据类型:

内嵌点的索引,返回为1逻辑向量。向量中的逻辑真值对应于表示的嵌套imagePointsworldPoints

状态代码,返回为01,或2

状态码 状态
0 没有错误
1 imagePointsworldPoints不包含足够的分数。至少需要四分。
2 没有找到足够的内层。至少需要4个嵌套。

参考文献

[1]高,X.-S。, X.-R。侯建华,唐俊杰,程慧芳。《透视-三点问题的完整解决方案分类》模式分析与机器智能学报。第25卷第8期930-943页,2003年8月。

Torr, P. H. S.和A. Zisserman。“MLESAC:一种新的用于估计图像几何的鲁棒估计器”。计算机视觉与图像理解。78卷,第1期,2000年4月,138-156页。

扩展功能

介绍了R2016b