code: def iou(self, other: "_Instance") -> float:
      assert self.scan_id == other.scan_id
      intersection = float(
          len(np.intersect1d(other.indices, self.indices))
      )
      return intersection / float(
          len(other.indices) + len(self.indices) - intersection
      )
  
imports: import torchnet
  from typing import NamedTuple, Dict, Any, List, Tuple
  import torch
  import numpy
  from torch_scatter import scatter_add
  from collections import OrderedDict, defaultdict
  from torch_points3d.models.model_interface import TrackerInterface
  from torch_points3d.metrics.segmentation_tracker import SegmentationTracker
  from torch_points3d.metrics.base_tracker import BaseTracker, meter_value
  from torch_points3d.models.panoptic.structures import PanopticResults, PanopticLabels
  from torch_points_kernels import instance_iou
  from .box_detection.ap import voc_ap
label_desc: Use image node_id 1 for calling the _Instance obj's underlying member method code with example usage: obj.iou(other) and returns: unknown