pytransform3d.transformations.random_transform#

pytransform3d.transformations.random_transform(rng=Generator(PCG64) at 0x7FB9A3D00C80, mean=array([[1., 0., 0., 0.],        [0., 1., 0., 0.],        [0., 0., 1., 0.],        [0., 0., 0., 1.]]), cov=array([[1., 0., 0., 0., 0., 0.],        [0., 1., 0., 0., 0., 0.],        [0., 0., 1., 0., 0., 0.],        [0., 0., 0., 1., 0., 0.],        [0., 0., 0., 0., 1., 0.],        [0., 0., 0., 0., 0., 1.]]))[source]#

Generate random transform.

Generate \(\Delta \boldsymbol{T}_{B_{i+1}{B_i}} \boldsymbol{T}_{{B_i}A}\), with \(\Delta \boldsymbol{T}_{B_{i+1}{B_i}} = Exp(S \theta)\) and \(\mathcal{S}\theta \sim \mathcal{N}(\boldsymbol{0}_6, \boldsymbol{\Sigma}_{6 \times 6})\). The mean \(\boldsymbol{T}_{{B_i}A}\) and the covariance \(\boldsymbol{\Sigma}_{6 \times 6}\) are parameters of the function.

Note that uncertainty is defined in the global frame B, not in the body frame A.

Parameters:
rngnp.random.Generator, optional (default: random seed 0)

Random number generator

meanarray-like, shape (4, 4), optional (default: I)

Mean transform as homogeneous transformation matrix.

covarray-like, shape (6, 6), optional (default: I)

Covariance of noise in exponential coordinate space.

Returns:
A2Barray, shape (4, 4)

Random transform from frame A to frame B