Обслуживание Tensorflow: Как base64 кодировать / декодировать массивы, которые НЕ являются изображениями? - PullRequest
0 голосов
/ 23 сентября 2019

Для каждого образца у меня есть двумерный массив, который НЕ является изображением, на которое я хотел бы сделать вывод при помощи тензорного потока.В прошлом мне удалось успешно развернуть тензорный поток благодаря ответу на в этом посте , в котором используется следующее serving_input_receiver_fn:

HEIGHT = 199
WIDTH = 199
CHANNELS = 1

def serving_input_receiver_fn():

  def decode_and_resize(image_str_tensor):
     """Decodes jpeg string, resizes it and returns a uint8 tensor."""
     image = tf.image.decode_jpeg(image_str_tensor, channels=CHANNELS)
     image = tf.expand_dims(image, 0)
     image = tf.image.resize_bilinear(
         image, [HEIGHT, WIDTH], align_corners=False)
     image = tf.squeeze(image, squeeze_dims=[0])
     image = tf.cast(image, dtype=tf.uint8)
     return image

 # Optional; currently necessary for batch prediction.
 key_input = tf.placeholder(tf.string, shape=[None]) 
 key_output = tf.identity(key_input)

 input_ph = tf.placeholder(tf.string, shape=[None], name='image_binary')
 images_tensor = tf.map_fn(
      decode_and_resize, input_ph, back_prop=False, dtype=tf.uint8)
 images_tensor = tf.image.convert_image_dtype(images_tensor, dtype=tf.float32) 

 return tf.estimator.export.ServingInputReceiver(
     {'images': images_tensor},
     {'bytes': input_ph})

Однако для массивов без изображенийстановится неясным следующее:

  1. Как декодировать закодированный тензор строки.Я взглянул на tf.io.decode_image, но, похоже, он не сохраняет размерность двумерного массива.
  2. Как кодировать массив.В случае изображений я сам кодировал данные изображения с помощью base64.b64encode(img_data).Для общих двумерных массивов, как мне их кодировать?

Короче говоря, как обобщить ответ связанного поста на случай массива без изображения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...