如何设置以米为单位的世界坐标的转换矩阵(用于增强现实)

Posted

技术标签:

【中文标题】如何设置以米为单位的世界坐标的转换矩阵(用于增强现实)【英文标题】:How to setup transformation matrices which takes world coords in meters (for augmented reality) 【发布时间】:2011-09-04 07:13:06 【问题描述】:

我正在使用 Kinect 开发增强现实应用程序。想要在彩色相机输出上叠加增强的 3d 对象。

我知道如何设置投影矩阵,但不知道如何将骨骼坐标(以米为单位)转换为世界坐标。

相机信息 以像素为单位的焦距 = 531.15(不确定它到底是什么意思) fovX = 62


direct3d matrix 
m_matrix[0] = (2 * 531.15f / 640.0f ); 
m_matrix[5] = (2 * 531.15f / 480.0f ); 
m_matrix[10] = -1.0f; 
m_matrix[11] = -1.0f ; 
m_matrix[14] = -1;

【问题讨论】:

【参考方案1】:

我也遇到过同样的问题,但最后我采取了另一种方法。我没有转换骨骼坐标,而是创建了一个投影矩阵,其中 1 个世界单位 = 1 米。 此外,您需要将 RGB 图像同步到深度图像。

您可以在我的 SO 问题中找到更多详细信息和一种解决方案: Projection and View matrices to match the Kinect RGB camera perspective

希望对你有帮助

【讨论】:

以上是关于如何设置以米为单位的世界坐标的转换矩阵(用于增强现实)的主要内容,如果未能解决你的问题,请参考以下文章

将距离转换为坐标[重复]

原始线要素类为地理坐标系,如何获取以米为单位的距离?

如何使用 Geopandas 在地图上显示以米为单位的比例尺、指北针以及经纬度坐标轴?

在MYSQL中用2个坐标以米为单位计算地球距离的最佳方法是啥?

用给定的坐标和以米为单位的距离计算新坐标

将圆的半径(以米为单位)缩放到 D3.js d3.geo.mercator 地图