Opencv 是一台照相机';在世界坐标系中表示的外部参数?

Opencv 是一台照相机';在世界坐标系中表示的外部参数?,opencv,computer-vision,Opencv,Computer Vision,这是一个关于计算机图形学和视觉术语的问题。我想使用2D到3D的对应关系构造一个摄影机投影矩阵。根据这些对应关系,我创建了一个摄影机对象。我正在使用库中的一个类来表示摄影机。它采用以下参数: //R是以世界坐标系表示的相机方向 //t是摄影机在世界坐标系中表示的位置 我问题的第一部分是:如上文所定义的,外部参数R和t是否满足x=K[R|t]x?或者它们是否需要转换(例如,转置(R)是外部方向,而-transpose(R)*t表示位置) 我使用openCV的solvePnP函数获得R和t。函数返回R

这是一个关于计算机图形学和视觉术语的问题。我想使用2D到3D的对应关系构造一个摄影机投影矩阵。根据这些对应关系,我创建了一个摄影机对象。我正在使用库中的一个类来表示摄影机。它采用以下参数:

//R是以世界坐标系表示的相机方向
//t是摄影机在世界坐标系中表示的位置

我问题的第一部分是:如上文所定义的,外部参数R和t是否满足
x=K[R|t]x
?或者它们是否需要转换(例如,转置(R)是外部方向,而-transpose(R)*t表示位置)

我使用openCV的solvePnP函数获得R和t。函数返回R和t,如下所示:

rvec–输出旋转矢量(参见Rodrigues()),与tvec一起将点从模型坐标系带到相机坐标系。
tvec–输出转换向量


我问题的第二部分是,基于上述描述,输出是否等同于我的相机的外部参数,或者它们是否也需要转换(如先前定义的)?

相机投影矩阵通常定义为
p=K[R | t]
,其中
R
t
是外部参数,而不是摄影机在世界坐标系中的方向和位置


至于
solvePnP
返回的内容,您必须阅读它的文档,或者试用它并查看。

相机投影矩阵通常定义为
p=K[R | t]
,其中
R
t
是外在的,而不是相机在世界坐标中的方向和位置


至于solvePnP返回的内容,您必须阅读它的文档,或者试用它并查看。

slovepnp获取图像点(在图像坐标中)、对象点(在模型/世界坐标中)和相机内部,然后输出rvec/tvec,我们可以用它构建模型到相机的变换。在opengl中,通常称为模型视图矩阵

计算机很难获得环境知识,我们通常使用AR标记和校准板等易于检测的功能,并将其作为世界坐标以及模型坐标,如果您希望以opengl方式调用它。在这些场景中,摄影机的外部do以世界坐标系表示


您可以查看本书第2章和第3章(AR事物)的代码,并获得这些代码的良好知识和实用代码。

slovepnp获取图像点(在图像坐标中)、对象点(在模型/世界坐标中)和相机内部,然后输出rvec/tvec,我们可以使用它们构建模型到相机的变换。在opengl中,通常称为模型视图矩阵

计算机很难获得环境知识,我们通常使用AR标记和校准板等易于检测的功能,并将其作为世界坐标以及模型坐标,如果您希望以opengl方式调用它。在这些场景中,摄影机的外部do以世界坐标系表示

您可以查看本书第2章和第3章(AR事物)的代码,并获得这些方面的良好知识和实用代码