主要内容

estrelpose

计算相机姿态之间的相对旋转和平移

描述

例子

relativePose= estrelpose (intrinsicinlierPoints1inlierPoints2返回校准后相机相对于前一个姿态的姿态。这两个姿态由基本的、本质的或单应矩阵联系起来.该函数按比例计算相机位置。

relativePose= estrelpose (intrinsics1intrinsics2inlierPoints1inlierPoints2返回第二个相机相对于第一个相机的姿态。

relativePosevalidPointsFraction) = estrelpose (___此外,返回投射到两个摄像机前面的内嵌点的百分比。

例子

全部折叠

为单个相机加载先前计算的基本矩阵、相机参数和图像点。

负载(“relCameraPoseData.mat”) intrinsic = camerparams . intrinsic;

计算相机的姿势相对于它的前一个姿势。

relPose = estrelpose (M, intrinsic, inlierPoints1 inlierPoints2)
relPose =3×30.9911 -0.0196 0.1315 0.0203 0.9998 -0.0039 -0.1314 0.0065 0.9913

输入参数

全部折叠

基本矩阵、基本矩阵或单应矩阵,指定为3 × 3矩阵affinetform2d对象,projtform2d对象,或simtform2d包含单应性矩阵的对象。你可以使用以下函数之一来获得3 × 3矩阵:

数据类型:|

相机的本征,指定为cameraIntrinsics对象。

摄像头本征为摄像头1,指定为acameraIntrinsics对象。

摄像头本征为摄像头2,指定为acameraIntrinsics对象。

视图1中对应点的坐标,表示为2的矩阵的数量(x y中描述的点特征对象之一点特征类型.方法可以获得这些点estimateFundamentalMatrix函数或estimateEssentialMatrix

视图2中对应点的坐标,表示为2的矩阵的数量(x y中描述的点特征对象之一点特征类型.方法可以获得这些点estimateFundamentalMatrix函数或estimateEssentialMatrix

输出参数

全部折叠

在世界坐标中的相对摄像机姿态,返回为rigidtform3d对象。的“R”“翻译”对象的属性表示相机的方向和位置。如果只使用一个相机,属性描述第二个相机姿势相对于第一个相机姿势的方向和位置。如果你使用两个摄像头,矩阵描述了摄像头2相对于摄像头1的方向和位置。

投射到两个摄像机前面的有效内嵌点的分数,作为标量返回。如果validPointsFraction太小,一般小于0.9,就可以表明基本矩阵不正确。

提示

  • 你可以计算相机外观根据:

    relativeOrientation = relativePose.R;relativeLocation = relativePose.Translation;camPose = rigidtform3d (relativeOrientation relativeLocation);外在= pose2extr (camPose)

  • estrelpose函数使用inlierPoints1而且inlierPoints2参数确定多个可能的解决方案中哪一个是物理上可实现的。如果输入是一个projtform2d对象,可能有两个解决方案是同样可实现的。

扩展功能

版本历史

介绍了R2022b

全部展开

Baidu
map