code: def box3d_overlap(
      boxes1: torch.Tensor, boxes2: torch.Tensor, eps: float = 1e-4
  ) -> Tuple[torch.Tensor, torch.Tensor]:
      """
      Computes the intersection of 3D boxes1 and boxes2.
  
      Inputs boxes1, boxes2 are tensors of shape (B, 8, 3)
      (where B doesn't have to be the same for boxes1 and boxes2),
      containing the 8 corners of the boxes, as follows:
  
          (4) +---------+. (5)
              | ` .     |  ` .
              | (0) +---+-----+ (1)
              |     |   |     |
          (7) +-----+---+. (6)|
              ` .   |     ` . |
              (3) ` +---------+ (2)
  
  
      NOTE: Throughout this implementation, we assume that boxes
      are defined by their 8 corners exactly in the order specified in the
      diagram above for the function to give correct results. In addition
      the vertices on each plane must be coplanar.
      As an alternative to the diagram, this is a unit bounding
      box which has the correct vertex ordering:
  
      box_corner_vertices = [
          [0, 0, 0],
          [1, 0, 0],
          [1, 1, 0],
          [0, 1, 0],
          [0, 0, 1],
          [1, 0, 1],
          [1, 1, 1],
          [0, 1, 1],
      ]
  
      Args:
          boxes1: tensor of shape (N, 8, 3) of the coordinates of the 1st boxes
          boxes2: tensor of shape (M, 8, 3) of the coordinates of the 2nd boxes
      Returns:
          vol: (N, M) tensor of the volume of the intersecting convex shapes
          iou: (N, M) tensor of the intersection over union which is
              defined as: `iou = vol / (vol1 + vol2 - vol)`
      """
      if not all((8, 3) == box.shape[1:] for box in [boxes1, boxes2]):
          raise ValueError(
              "Each box in the batch must be of shape (8, 3)"
          )
  
      _check_coplanar(boxes1, eps)
      _check_coplanar(boxes2, eps)
      _check_nonzero(boxes1, eps)
      _check_nonzero(boxes2, eps)
  
      vol, iou = _box3d_overlap.apply(boxes1, boxes2)
  
      return vol, iou
  
file_path: pytorch3d/pytorch3d/ops/iou_box3d.py
imports: from typing import Tuple
  import torch
  import torch.nn.functional
  from pytorch3d import _C
  from torch.autograd import Function
label_desc: Use image node_id 3 for calling a global function with example usage: box3d_overlap(boxes1, boxes2, eps) and returns: vol,  iou