Как использовать tf.Dataset с scipy.io.loadmat - PullRequest
0 голосов
/ 09 марта 2020

Я относительно новичок в использовании Tensorflow. В настоящее время работает над проектом, который использует Pix2Pix, но мои данные хранятся в файлах MATLAB .mat.

Код Pix2Pix содержит следующие строки:

train_dataset = tf.data.Dataset.list_files(PATH+'train/*.jpg')
train_dataset = train_dataset.map(load_image_train,
                                  num_parallel_calls=tf.data.experimental.AUTOTUNE)

Функция load_image_train вызывает другую функцию, которая загружает изображения следующим образом:

  image = tf.io.read_file(image_file)
  image = tf.image.decode_jpeg(image)

Если я наивно заменяю это scipy.io.loadmat:

import scipy.io as sio
M = sio.loadmat(image_load_path)

, я получаю следующий вывод:

expected str, bytes or os.PathLike object, not Tensor

Я понимаю, что list_files на самом деле создает Tensor строк, а не строку, которую ожидает loadmat. Есть ли способ извлечь строку из тензора и предоставить ее в качестве входных данных для loadmat? Или другой лучший способ решить эту проблему?

Спасибо!

...