code: def test_iou_half_overlap_cpu(self):
      boxes1 = torch.tensor(
          [[0.5, 0.5, 1.0, 1.0, 0.0]], dtype=torch.float32
      )
      boxes2 = torch.tensor(
          [[0.25, 0.5, 0.5, 1.0, 0.0]], dtype=torch.float32
      )
      expected_ious = torch.tensor([[0.5]], dtype=torch.float32)
      ious = pairwise_iou_rotated(boxes1, boxes2)
      self.assertTrue(torch.allclose(ious, expected_ious))
  
imports: from __future__ import absolute_import, division, print_function, unicode_literals
  import logging
  import math
  import random
  import unittest
  import torch
  from fvcore.common.benchmark import benchmark
  from detectron2.layers.rotated_boxes import pairwise_iou_rotated
  from detectron2.structures.boxes import Boxes
  from detectron2.structures.rotated_boxes import RotatedBoxes, pairwise_iou
  from detectron2.utils.testing import reload_script_model
label_desc: Use image node_id 3 for calling the TestRotatedBoxesLayer obj's underlying member method code with example usage: obj.test_iou_half_overlap_cpu() without return types