class_docstr: Generate the ground truth targets of FCENet: Fourier Contour Embedding
  for Arbitrary-Shaped Text Detection.
  
  [https://arxiv.org/abs/2104.10442]
  
  Args:
      fourier_degree (int): The maximum Fourier transform degree k.
      resample_step (float): The step size for resampling the text center
          line (TCL). It's better not to exceed half of the minimum width.
      center_region_shrink_ratio (float): The shrink ratio of text center
          region.
      level_size_divisors (tuple(int)): The downsample ratio on each level.
      level_proportion_range (tuple(tuple(int))): The range of text sizes
          assigned to each level.
code: def __init__(
      self,
      fourier_degree=5,
      resample_step=4.0,
      center_region_shrink_ratio=0.3,
      level_size_divisors=(8, 16, 32),
      level_proportion_range=((0, 0.25), (0.2, 0.65), (0.55, 1.0)),
      orientation_thr=2.0,
      **kwargs,
  ):
      super().__init__()
      assert isinstance(level_size_divisors, tuple)
      assert isinstance(level_proportion_range, tuple)
      assert len(level_size_divisors) == len(level_proportion_range)
      self.fourier_degree = fourier_degree
      self.resample_step = resample_step
      self.center_region_shrink_ratio = center_region_shrink_ratio
      self.level_size_divisors = level_size_divisors
      self.level_proportion_range = level_proportion_range
  
      self.orientation_thr = orientation_thr
  
imports: import cv2
  import numpy
  from numpy.fft import fft
  from numpy.linalg import norm
  import sys
label_desc: Use image node_id 1 to create a new FCENetTargets object  with example: obj = FCENetTargets(fourier_degree, resample_step, center_region_shrink_ratio, level_size_divisors, level_proportion_range, orientation_thr)