我正在尝试旋转以固定相机的姿态,因为其中一个轴似乎已关闭。我怀疑该轴为“世界”框架的Z。换句话说,我需要将“ stereo_camera”框架绕“世界框架”的Z轴旋转90度。那一切应该没问题。
我尝试使用多个Python库和Octave实现此目的,但失败了。乘法或我表达四分之一数的方式似乎不符合要求。
# Here is the current quarternion of "stereo_camera"
q = np.array([0.0, 0.70710678, 0.0, 0.70710678])
# Rotation matrix, 90 degrees around Z would be:
I = np.array([[0, -1, 0],[1,0,0],[0,0,1]])
# apply the transformation
q.dot(I)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: shapes (4,) and (3,3) not aligned: 4 (dim 0) != 3 (dim 0)
有没有人可以建议我一个不错的Python程序包,以最少的示例处理这种情况?将一圈旋转到四分之一圈应该不难。
答案 0 :(得分:0)
因此,必须做的是使用旋转矩阵,而不是四分之一圆。我用this从四分之一转换为旋转矩阵。
旋转矩阵是一个看起来像这样的矩阵:
[ 0.0000000, -1.0000000, 0.0000000;
0.0000000, 0.0000000, 1.0000000;
-1.0000000, 0.0000000, 0.0000000 ]
一旦获取了此矩阵,就可以将其相乘。