scipy.spatial.transform.Rotation.as_quat¶
- Rotation.as_quat()¶
表示为四元数。
三维旋转可以用单位范数四元数表示 [1]. 从四元数到旋转的映射是二对一的,即四元数
q
和-q
,在哪里-q
简单地反转每个分量的符号,代表相同的空间旋转。返回值为最后一个标量(x,y,z,w)格式。- 退货
- quat :
numpy.ndarray
、形状(4,)或(N,4)Numpy.ndarray,形状(4,)或(N,4) 形状取决于用于初始化的输入的形状。
- quat :
参考文献
示例
>>> from scipy.spatial.transform import Rotation as R
表示单次旋转:
>>> r = R.from_matrix([[0, -1, 0], ... [1, 0, 0], ... [0, 0, 1]]) >>> r.as_quat() array([0. , 0. , 0.70710678, 0.70710678]) >>> r.as_quat().shape (4,)
表示单次旋转的堆栈:
>>> r = R.from_quat([[0, 0, 0, 1]]) >>> r.as_quat().shape (1, 4)
表示单个对象中的多个旋转:
>>> r = R.from_rotvec([[np.pi, 0, 0], [0, 0, np.pi/2]]) >>> r.as_quat().shape (2, 4)