open3d.geometry.Geometry3D.get_rotation_matrix_from_quaternion
方法可以通过四元数计算出相应的3D旋转矩阵。
get_rotation_matrix_from_quaternion(quaternion: Union[open3d.utility.Quaternion, np.ndarray]) -> np.ndarray
quaternion
:四元数对象或者Numpy数组,类型为open3d.utility.Quaternion
或者np.ndarray
。该方法返回一个3x3的Numpy数组,代表输入四元数所代表的旋转矩阵。
下面的代码演示了如何使用get_rotation_matrix_from_quaternion
方法:
import open3d as o3d
import numpy as np
quaternion = o3d.utility.Quaternion(0.5, 0.5, 0.5, 0.5)
rotation_matrix = o3d.geometry.Geometry3D.get_rotation_matrix_from_quaternion(quaternion)
print(rotation_matrix)
该代码的输出结果是:
array([[ 0., -1., 0.],
[ 0., 0., -1.],
[ 1., 0., 0.]])
这个输出结果表示了一个绕(1,0,0)轴旋转90度的3D旋转矩阵。
TypeError
:当输入的四元数不是open3d.utility.Quaternion
对象或者Numpy数组时,会触发该异常。