docstr: Executes a single test for `iterative_closest_point` for a
  specific setting of the inputs / outputs. Compares the result with
  the result of the trimesh package on the same input data.
docstr_tok: ["Executes","a","single","test","for","`","iterative_closest_point","`","for","a","specific","setting","of","the","inputs","\/","outputs",".","Compares","the","result","with","the","result","of","the","trimesh","package","on","the","same","input","data","."]
code: def _compare_with_trimesh(
      self, n_points_X=100, n_points_Y=100, estimate_scale=False
  ):
      """
      Executes a single test for `iterative_closest_point` for a
      specific setting of the inputs / outputs. Compares the result with
      the result of the trimesh package on the same input data.
      """
  
      device = torch.device("cuda:0")
  
      # load the trimesh results and the initial point clouds for icp
      key = (int(n_points_X), int(n_points_Y), int(estimate_scale))
      X, Y, R_trimesh, T_trimesh, s_trimesh = [
          x.to(device) for x in self.trimesh_results[key]
      ]
  
      # run the icp algorithm
      (
          converged,
          _,
          _,
          (R_ours, T_ours, s_ours),
          _,
      ) = points_alignment.iterative_closest_point(
          X,
          Y,
          estimate_scale=estimate_scale,
          allow_reflection=False,
          verbose=False,
          max_iterations=100,
      )
  
      # check that we have the same transformation
      # and that the icp converged
      atol = 1e-5
      self.assertClose(R_ours, R_trimesh, atol=atol)
      self.assertClose(T_ours, T_trimesh, atol=atol)
      self.assertClose(s_ours, s_trimesh, atol=atol)
      self.assertTrue(converged)
  
imports: import unittest
  import numpy
  import torch
  from pytorch3d.ops import points_alignment
  from pytorch3d.structures.pointclouds import Pointclouds
  from pytorch3d.transforms import rotation_conversions
  from .common_testing import get_tests_dir, TestCaseMixin
label_desc: Use image node_id 6 for calling the TestICP obj's underlying member method code with example usage: obj._compare_with_trimesh(n_points_X, n_points_Y, estimate_scale) without return types