Почему tf.write_file не записывает файл?
Мой код:
i = 0
fgsm = FastGradientMethod(wrap)
adv = fgsm.generate(x_test_tensor, **fgsm_params)
for adv_x in tf.unstack(adv):
img = tf.cast(adv_x, dtype=tf.uint8)
tf_image = tf.image.encode_jpeg(img)
tf.write_file('adversarial_examples/' + str(i) + '.jpg', tf_image)
i += 1
Откуда FastGradientMethod cleverhans
, Это работает без ошибок, но JPG не существует в моей папке. Чего не хватает?
2 ответа
Решение
Может быть путь к файлу назначения неверен
import os
for adv_x in tf.unstack(adv):
img = tf.cast(adv_x, dtype=tf.uint8)
tf_image = tf.image.encode_jpeg(img)
pth = os.path.join('adversarial_examples', '%s.jpg'%i)
tf.write_file(pth, tf_image)
i += 1
вам следует :-
op = tf.write_file(pth, tf_image)
сессия. запуск (op)
Где сессия - tf.session