tfds.as_ numpy () cra sh после функции карты - PullRequest
0 голосов
/ 30 мая 2020

Я попытался использовать функцию карты, чтобы повернуть изображение на 20 градусов, и прочитал данные изображения, чтобы убедиться, что оно работает, следующим образом.

Среда:

  • Google colab
  • Tensorflow 2.2

Код:

import tensorflow_datasets as tfds
import tensorflow as tf
import tensorflow_addons as tfa
import numpy as np
MODE_AUTOTUNE = tf.data.experimental.AUTOTUNE
batch_size = 128

def map_func(image, label):
    image = tf.cast(image, tf.float32) / 255.
    angle = 20. * 3.1415926 / 180.0
    image = tfa.image.rotate(images=image, angles=angle, interpolation='NEAREST')
    return image, label

## ... load x_train (images), y_train (labels) ... ##
train_data = tf.data.Dataset.from_tensor_slices((x_train, y_train))
train_data = train_data.shuffle(len(x_train))    
train_data = train_data.map(map_func=map_func, num_parallel_calls=MODE_AUTOTUNE)
train_data = train_data.batch(batch_size)
train_data = train_data.prefetch(buffer_size=MODE_AUTOTUNE) 

datas = tfds.as_numpy(train_data)
for data in datas:
    print(data[0])
    ...
    ## try to plot datas ##

Произошел сбой по неизвестной причине. Однако, когда я удаляю следующий код, он работает нормально.

    image = tfa.image.rotate(images=image, angles=angle, interpolation='NEAREST')

Понятия не имею. Функция карты работает хорошо, но tfds.as_ numpy () не может ее прочитать?

...