Почему метод vgg.prepare() создает 9 копий данного изображения?

Я получаю этот результат, когда применяю vgg.prepare() к следующему изображению: вход

Я использую эту строку кода:

Image.fromarray(np.uint8(vgg.prepare(pep).reshape(224,224,3)))

И получить изображение, которое объединено из 9 копий данного изображения:

Выход

1 ответ

Решение

Я наконец получил то, что ты сделал... единственная ошибка .reshape,

Поскольку изображение транспонировано, а не изменено, вы должны переставить, чтобы восстановить исходное изображение.

pep = pep.transpose((1, 2, 0))  # transpose
pep += [103.939, 116.779, 123.68]  # un-normalize
pep = pep.astype(np.uint8)  # revert dtype
pep = np.flip(pep, axis=2)  # BGR -> RGB
PIL_image = Image.fromarray(pep)  # finally got the original!
Другие вопросы по тегам