Beispiel #1
0
def image_preprocess(image, image_size: int):
    input_processor = dataloader.DetectionInputProcessor(image, image_size)
    input_processor.normalize_image()
    input_processor.set_scale_factors_to_output_size()
    image = input_processor.resize_and_crop_image()
    image_scale = input_processor.image_scale_to_original
    return image, image_scale
Beispiel #2
0
 def map_fn(image):
   input_processor = dataloader.DetectionInputProcessor(
       image, image_size)
   input_processor.normalize_image(mean_rgb, stddev_rgb)
   input_processor.set_scale_factors_to_output_size()
   image = input_processor.resize_and_crop_image()
   image_scale = input_processor.image_scale_to_original
   return image, image_scale
Beispiel #3
0
def image_preprocess(image, image_size: Union[int, Tuple[int, int]]):
  """Preprocess image for inference.
  Args:
    image: input image, can be a tensor or a numpy arary.
    image_size: single integer of image size for square image or tuple of two
      integers, in the format of (image_height, image_width).
  Returns:
    (image, scale): a tuple of processed image and its scale.
  """
  input_processor = dataloader.DetectionInputProcessor(image, image_size)
  input_processor.normalize_image()
  input_processor.set_scale_factors_to_output_size()
  image = input_processor.resize_and_crop_image()
  image_scale = input_processor.image_scale_to_original
  return image, image_scale
Beispiel #4
0
def image_preprocess(image, image_size: int):
    """Preprocess image for inference.

  Args:
    image: input image, can be a tensor or a numpy arary.
    image_size: integer of image size.

  Returns:
    (image, scale): a tuple of processed image and its scale.
  """
    input_processor = dataloader.DetectionInputProcessor(image, image_size)
    input_processor.normalize_image()
    input_processor.set_scale_factors_to_output_size()
    image = input_processor.resize_and_crop_image()
    image_scale = input_processor.image_scale_to_original
    return image, image_scale
Beispiel #5
0
def image_preprocess(image, image_size, mean_rgb, stddev_rgb):
  """Preprocess image for inference.

  Args:
    image: input image, can be a tensor or a numpy arary.
    image_size: single integer of image size for square image or tuple of two
      integers, in the format of (image_height, image_width).
    mean_rgb: Mean value of RGB, can be a list of float or a float value.
    stddev_rgb: Standard deviation of RGB, can be a list of float or a float
      value.

  Returns:
    (image, scale): a tuple of processed image and its scale.
  """
  input_processor = dataloader.DetectionInputProcessor(image, image_size)
  input_processor.normalize_image(mean_rgb, stddev_rgb)
  input_processor.set_scale_factors_to_output_size()
  image = input_processor.resize_and_crop_image()
  image_scale = input_processor.image_scale_to_original
  return image, image_scale
Beispiel #6
0
  def _preprocessing(self, raw_images, image_size, mode=None):
    """Preprocess images before feeding to the network."""
    if not mode:
      return raw_images, None

    image_size = utils.parse_image_size(image_size)
    if mode != 'infer':
      # We only support inference for now.
      raise ValueError('preprocessing must be infer or empty')

    scales, images = [], []
    if isinstance(raw_images, tf.Tensor):
      batch_size = raw_images.shape[0]
    else:
      batch_size = len(raw_images)
    for i in range(batch_size):
      input_processor = dataloader.DetectionInputProcessor(
          raw_images[i], image_size)
      input_processor.normalize_image()
      input_processor.set_scale_factors_to_output_size()
      images.append(input_processor.resize_and_crop_image())
      scales.append(input_processor.image_scale_to_original)
    return tf.stack(images), tf.stack(scales)