当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy Rotation.random用法及代码示例


本文简要介绍 python 语言中 scipy.spatial.transform.Rotation.random 的用法。

用法:

classmethod  Rotation.random(cls, num=None, random_state=None)#

生成均匀分布的旋转。

参数

num int 或无,可选

要生成的随机旋转数。如果无(默认),则生成单个旋转。

random_state {无,整数, numpy.random.Generator

如果种子是无(或np.random), 这numpy.random.RandomState使用单例。如果种子是一个 int,一个新的RandomState使用实例,播种种子.如果种子已经是一个Generator或者RandomState实例然后使用该实例。

返回

random_rotation Rotation 实例

如果 num 为 None,则包含一个旋转。否则包含一堆 num 旋转。

注意

此函数针对在三个维度上有效地采样随机旋转矩阵进行了优化。要生成更高维度的随机旋转矩阵,请参阅 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]])

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.spatial.transform.Rotation.random。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。