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.
docstr: Normalize one polygon so that its start point is at right most.
  
  Args:
      polygon (list[float]): The origin polygon.
  Returns:
      new_polygon (lost[float]): The polygon with start point at right.
docstr_tok: ["Normalize","one","polygon","so","that","its","start","point","is","at","right","most",".","Args",":","polygon","(","list","[","float","]",")",":","The","origin","polygon",".","Returns",":","new_polygon","(","lost","[","float","]",")",":","The","polygon","with","start","point","at","right","."]
code: def normalize_polygon(self, polygon):
      """Normalize one polygon so that its start point is at right most.
  
      Args:
          polygon (list[float]): The origin polygon.
      Returns:
          new_polygon (lost[float]): The polygon with start point at right.
      """
      temp_polygon = polygon - polygon.mean(axis=0)
      x = np.abs(temp_polygon[:, 0])
      y = temp_polygon[:, 1]
      index_x = np.argsort(x)
      index_y = np.argmin(y[index_x[:8]])
      index = index_x[index_y]
      new_polygon = np.concatenate([polygon[index:], polygon[:index]])
      return new_polygon
  
imports: import cv2
  import numpy
  from numpy.fft import fft
  from numpy.linalg import norm
  import sys
label_desc: Use image node_id 9 for calling the FCENetTargets obj's underlying member method code with example usage: obj.normalize_polygon(polygon) and returns: new_polygon