code: def _apply_similarity_transform(
      X: torch.Tensor, R: torch.Tensor, T: torch.Tensor, s: torch.Tensor
  ) -> torch.Tensor:
      """
      Applies a similarity transformation parametrized with a batch of orthonormal
      matrices `R` of shape `(minibatch, d, d)`, a batch of translations `T`
      of shape `(minibatch, d)` and a batch of scaling factors `s`
      of shape `(minibatch,)` to a given `d`-dimensional cloud `X`
      of shape `(minibatch, num_points, d)`
      """
      X = s[:, None, None] * torch.bmm(X, R) + T[:, None, :]
      return X
  
file_path: pytorch3d/pytorch3d/ops/points_alignment.py
imports: import warnings
  from typing import List, NamedTuple, Optional, TYPE_CHECKING, Union
  import torch
  from pytorch3d.ops import knn_points
  from pytorch3d.structures import utils
  from .None import utils
label_desc: Use image node_id 3 for calling a global function with example usage: _apply_similarity_transform(X, R, T, s) and returns: X