code: def _aspect_preserving_resize(image, smallest_side):
    
    smallest_side = tf.convert_to_tensor(smallest_side, dtype=tf.int32)
  
    shape = tf.shape(image)
    height = shape[0]
    width = shape[1]
    new_height, new_width = _smallest_size_at_least(height, width, smallest_side)
    image = tf.expand_dims(image, 0)
    resized_image = tf.image.resize_images(
        image, size=[new_height, new_width], method=tf.image.ResizeMethod.BICUBIC)
  
    resized_image = tf.squeeze(resized_image)
    resized_image.set_shape([None, None, 3])
    return resized_image
docs: Resize images preserving the original aspect ratio.
  
    Args:
      image: A 3-D image `Tensor`.
      smallest_side: A python integer or scalar `Tensor` indicating the size of
      the smallest side after resize.
  
    Returns:
      resized_image: A 3-D tensor containing the resized image.