0

所以不需要查看所有代码,但基本上我有一个初始点:

import numpy as np

point = np.array([3.0000, 8.0000, 0.0000])

我还有一个转换矩阵 M 工作正常,只需将点转换为 X 轴,这会产生以下结果:

[-5.09901951  0.          0.        ] // which is perfectly what I need it to be

通常在我的代码中,我需要对局部坐标进行更改,然后将其转换回全局坐标。为此,我使用逆矩阵将其取回。但是,仅出于测试目的,我将保持不变。

//Using numpy:

MInv =np.linalg.inv(M)

now when I use the same function to transform my output to the original state I get:

[ 3.01941932   7.90290338  0.        ] // result should be [3.0000, 8.0000, 0.0000]

显然,使用linalg.inv()in存在数值精度问题numpy。有人可以帮我绕过错误吗?

4

0 回答 0