code: def transform_points(self, device, dtype, batch_size):
      if batch_size is None:
          points_in_a = torch.randn(3, device=device, dtype=dtype)
          b_from_a_se3 = Se3.trans_x(
              torch.tensor(1.0, device=device, dtype=dtype)
          )
      else:
          points_in_a = torch.randn(
              batch_size, 3, device=device, dtype=dtype
          )
          b_from_a_se3 = Se3.trans_x(
              torch.tensor([1.0], device=device, dtype=dtype)
          )
      b_from_a = NamedPose(
          b_from_a_se3, frame_src="frame_a", frame_dst="frame_b"
      )
      a_from_b = b_from_a.inverse()
      points_in_b = b_from_a.transform_points(points_in_a)
      assert points_in_b.shape == points_in_a.shape
      self.assert_close(
          a_from_b.transform_points(points_in_b), points_in_a
      )
  
file_path: kornia/test/geometry/test_pose.py
imports: import pytest
  import torch
  from kornia.geometry import NamedPose
  from kornia.geometry.liegroup import Se2, Se3, So2, So3
  from kornia.testing import BaseTester
label_desc: Use image node_id 11 for calling the TestNamedPose obj's underlying member method code with example usage: obj.transform_points(device, dtype, batch_size) without return types