code: def _register_box_converter(
      src_type: Union[str, type],
      dst_type: Union[str, type],
      converter: Callable,
      force: bool = False,
  ) -> None:
      """Register a box converter.
  
      Args:
          src_type (str or type): source box type name or class.
          dst_type (str or type): destination box type name or class.
          converter (Callable): Convert function.
          force (bool): Whether to override the existing box type with the same
              name. Defaults to False.
      """
      assert callable(converter)
      src_type_name, _ = get_box_type(src_type)
      dst_type_name, _ = get_box_type(dst_type)
  
      converter_name = src_type_name + "2" + dst_type_name
      if not force and converter_name in box_converters:
          raise KeyError(
              f"The box converter from {src_type_name} to "
              f"{dst_type_name} has been registered."
          )
  
      box_converters[converter_name] = converter
  
file_path: mmdetection/mmdet/structures/bbox/box_type.py
imports: from typing import Callable, Optional, Tuple, Type, Union
  import numpy
  import torch
  from torch import Tensor
  from .base_boxes import BaseBoxes
label_desc: Use image node_id 3 for calling a global function with example usage: _register_box_converter(src_type, dst_type, converter, force) without return types