tfg.geometry.transformation.rotation_matrix_2d.from_euler_with_small_angles_approximation
Converts an angle to a 2d rotation matrix under the small angle assumption.
tfg.geometry.transformation.rotation_matrix_2d.from_euler_with_small_angles_approximation(
angles: type_alias.TensorLike,
name: str = 'rotation_matrix_2d_from_euler_with_small_angles_approximation'
) -> tf.Tensor
Under the small angle assumption, \(\sin(x)\) and \(\cos(x)\) can be
approximated by their second order Taylor expansions, where
\(\sin(x) \approx x\) and \(\cos(x) \approx 1 - \frac{x^2}{2}\). The 2d
rotation matrix will then be approximated as
\[
\mathbf{R} =
\begin{bmatrix}
1.0 - 0.5\theta^2 & -\theta \\
\theta & 1.0 - 0.5\theta^2
\end{bmatrix}.
\]
In the current implementation, the smallness of the angles is not verified.
Note |
The resulting matrix rotates points in the \(xy\)-plane counterclockwise.
|
Note |
In the following, A1 to An are optional batch dimensions.
|
Args |
angles
|
A tensor of shape [A1, ..., An, 1] , where the last dimension
represents a small angle in radians.
|
name
|
A name for this op that defaults to
"rotation_matrix_2d_from_euler_with_small_angles_approximation".
|
Returns |
A tensor of shape [A1, ..., An, 2, 2] , where the last dimension represents
a 2d rotation matrix.
|
Raises |
ValueError
|
If the shape of angle is not supported.
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2022-10-28 UTC.
[null,null,["Last updated 2022-10-28 UTC."],[],[]]