class_docstr: Crops the given image at the center.
  If the image is torch Tensor, it is expected
  to have [..., H, W] shape, where ... means an arbitrary number of leading dimensions.
  If image size is smaller than output size along any edge, image is padded with 0 and then center cropped.
  
  Args:
      size (sequence or int): Desired output size of the crop. If size is an
          int instead of sequence like (h, w), a square crop (size, size) is
          made. If provided a sequence of length 1, it will be interpreted as (size[0], size[0]).
class_docstr_tok: ["Crops","the","given","image","at","the","center",".","If","the","image","is","torch","Tensor",",","it","is","expected","to","have","[","...",",","H",",","W","]","shape",",","where","...","means","an","arbitrary","number","of","leading","dimensions",".","If","image","size","is","smaller","than","output","size","along","any","edge",",","image","is","padded","with","0","and","then","center","cropped",".","Args",":","size","(","sequence","or","int",")",":","Desired","output","size","of","the","crop",".","If","size","is","an","int","instead","of","sequence","like","(","h",",","w",")",",","a","square","crop","(","size",",","size",")","is","made",".","If","provided","a","sequence","of","length","1",",","it","will","be","interpreted","as","(","size","[","0","]",",","size","[","0","]",")","."]
code: def __init__(
      self,
      size: Union[int, List[int]],
      fill: Union[int, Tuple[int, int, int]] = 0,
      padding_mode: str = "constant",
  ):
      super().__init__()
      self.size = _setup_size(size)
      self.fill = fill
      self.padding_mode = padding_mode
  
imports: import math
  import numbers
  import random
  import warnings
  from typing import List, Sequence, Tuple, Union
  import torch
  import torchvision.transforms.functional
  from PIL import Image
  import numpy
label_desc: Use image node_id 1 to create a new CenterCropOrPad object from inherited base classes: torch.nn with example: obj = CenterCropOrPad(size, fill, padding_mode)