我有一个统一的3D模型。利用opencv solvePnP向量计算旋转和平移向量。
现在,我尝试用这些值来设置模型位置。我的C#代码如下:
Vector3 objPosition;
objPosition.x = gameObject.transform.position.x + tvec.x;
objPosition.y = gameObject.transform.position.y + tvec.y;
objPosition.z = gameObject.transform.position.z + tvec.z;
gameObject.transform.position = objPosition;
Quaternion quat = new Quaternion(rvec.x, rvec.y, rvec.z, 1.0f);
gameObject.transform.rotation = quat;但结果对我来说不是真的。如何统一使用opencv旋转和平移向量?
编辑
我有一个3d模型。我用手工确定对象和模型上的对应点,我想要放置包含已知对象的2d图像。我使用solvePnp获取相机和对象之间的关系。
在统一场景中,使用opencv旋转和平移向量来显示三维模型。也许我该换个问题。
如何使用3d-2d点对应来检测物体的位置和方向?
发布于 2016-01-04 09:51:38
看看欧拉到四元数计算的统一文献
Quaternion quat = Quaternion.Euler(new Vector3(rvec.x, rvec.y, rvec.z))https://stackoverflow.com/questions/34586740
复制相似问题