original_docstring: Calculate 3D IoU using cuda implementation.
  
      Note:
          This function calculates the IoU of 3D boxes based on their volumes.
          IoU calculator :class:`BboxOverlaps3D` uses this function to
          calculate the actual IoUs of boxes.
  
      Args:
          bboxes1 (torch.Tensor): shape (N, 7+C) [x, y, z, h, w, l, ry].
          bboxes2 (torch.Tensor): shape (M, 7+C) [x, y, z, h, w, l, ry].
          mode (str): "iou" (intersection over union) or
              iof (intersection over foreground).
          coordinate (str): 'camera' or 'lidar' coordinate system.
  
      Return:
          torch.Tensor: Bbox overlaps results of bboxes1 and bboxes2 \
              with shape (M, N) (aligned mode is not supported currently).
      
docstring: Calculate 3D IoU using cuda implementation.
  Note:
  This function calculates the IoU of 3D boxes based on their volumes.
  IoU calculator :class:`BboxOverlaps3D` uses this function to
  calculate the actual IoUs of boxes.
docstring_tokens: Calculate 3D IoU using cuda implementation . Note : This function calculates the IoU of 3D boxes based on their volumes . IoU calculator : class : ` BboxOverlaps3D ` uses this function to calculate the actual IoUs of boxes .
code: def bbox_overlaps_3d(bboxes1, bboxes2, mode='iou', coordinate='camera'):
      """Calculate 3D IoU using cuda implementation.
  
      Note:
          This function calculates the IoU of 3D boxes based on their volumes.
          IoU calculator :class:`BboxOverlaps3D` uses this function to
          calculate the actual IoUs of boxes.
  
      Args:
          bboxes1 (torch.Tensor): shape (N, 7+C) [x, y, z, h, w, l, ry].
          bboxes2 (torch.Tensor): shape (M, 7+C) [x, y, z, h, w, l, ry].
          mode (str): "iou" (intersection over union) or
              iof (intersection over foreground).
          coordinate (str): 'camera' or 'lidar' coordinate system.
  
      Return:
          torch.Tensor: Bbox overlaps results of bboxes1 and bboxes2 \
              with shape (M, N) (aligned mode is not supported currently).
      """
      assert bboxes1.size(-1) == bboxes2.size(-1) >= 7
  
      box_type, _ = get_box_type(coordinate)
  
      bboxes1 = box_type(bboxes1, box_dim=bboxes1.shape[-1])
      bboxes2 = box_type(bboxes2, box_dim=bboxes2.shape[-1])
  
      return bboxes1.overlaps(bboxes1, bboxes2, mode=mode)
code_tokens: def bbox_overlaps_3d ( bboxes1 , bboxes2 , mode = 'iou' , coordinate = 'camera' ) : assert bboxes1 . size ( - 1 ) == bboxes2 . size ( - 1 ) >= 7 box_type , _ = get_box_type ( coordinate ) bboxes1 = box_type ( bboxes1 , box_dim = bboxes1 . shape [ - 1 ] ) bboxes2 = box_type ( bboxes2 , box_dim = bboxes2 . shape [ - 1 ] ) return bboxes1 . overlaps ( bboxes1 , bboxes2 , mode = mode )
short_docstring: Calculate 3D IoU using cuda implementation.
short_docstring_tokens: Calculate 3D IoU using cuda implementation .
comment: """Calculate 3D IoU using cuda implementation.
  
      Note:
          This function calculates the IoU of 3D boxes based on their volumes.
          IoU calculator :class:`BboxOverlaps3D` uses this function to
          calculate the actual IoUs of boxes.
  
      Args:
          bboxes1 (torch.Tensor): shape (N, 7+C) [x, y, z, h, w, l, ry].
          bboxes2 (torch.Tensor): shape (M, 7+C) [x, y, z, h, w, l, ry].
          mode (str): "iou" (intersection over union) or
              iof (intersection over foreground).
          coordinate (str): 'camera' or 'lidar' coordinate system.
  
      Return:
          torch.Tensor: Bbox overlaps results of bboxes1 and bboxes2 \
              with shape (M, N) (aligned mode is not supported currently).
      """