scipy.spatial.transform.Rotation.random¶
- Rotation.random()¶
生成均匀分布的旋转。
- 参数
- num整型或无型,可选
要生成的随机旋转次数。如果为None(默认值),则生成单个旋转。
- random_state :{无,整型,
numpy.random.Generator
,{无,整型, 如果 seed 为无(或 np.random )、
numpy.random.RandomState
使用的是Singleton。如果 seed 是一个整型、一个新的RandomState
实例,其种子设定为 seed 。如果 seed 已经是一个Generator
或RandomState
实例,则使用该实例。
- 退货
- random_rotation :
Rotation
实例循环实例 包含单次旋转,如果 num 是没有的。否则包含一个堆栈 num 旋转。
- random_rotation :
注意事项
该函数针对有效采样三维随机旋转矩阵进行了优化。有关生成高维随机旋转矩阵的信息,请参见
scipy.stats.special_ortho_group
。示例
>>> from scipy.spatial.transform import Rotation as R
对单个旋转进行采样:
>>> R.random().as_euler('zxy', degrees=True) array([-110.5976185 , 55.32758512, 76.3289269 ]) # random
对旋转堆栈进行采样:
>>> R.random(5).as_euler('zxy', degrees=True) array([[-110.5976185 , 55.32758512, 76.3289269 ], # random [ -91.59132005, -14.3629884 , -93.91933182], [ 25.23835501, 45.02035145, -121.67867086], [ -51.51414184, -15.29022692, -172.46870023], [ -81.63376847, -27.39521579, 2.60408416]])