从三个三维点计算变换矩阵

Calculate transformation matrix from three 3D points

本文关键字:计算 变换 三维 三个      更新时间:2023-10-16

我有一个3D坐标系统,我用3D相机跟踪三个外部点。
在(x,y,z)空间中有三个点
下一帧,我再次跟踪这三个点。
我用前三点作为初始情况。现在我需要起草一个变换矩阵,它给了我第二个3个点的平移,旋转和缩放,与初始位置进行比较。

现在我真的不知道该怎么做。
有没有办法直接做出变换矩阵,或者我必须先算出平移,旋转和缩放矩阵然后再做出这三个的变换矩阵?

我在c++中使用opencv和qt工作。有人有什么建议吗?我不一定需要一个完整的工作示例,任何可以让我在我的方式是赞赏的。

谢谢!J

这个教程看起来很不错(你正在寻找的是所谓的仿射变换)!

您可以将从旧位置到新位置的转换视为一个方程组,其中未知数是矩阵的元素。求解这个方程组就得到了矩阵。