Image.fromarray (data) возвращающий шум - PullRequest
0 голосов
/ 21 апреля 2020

Я работаю с набором данных, который хранится в виде numpy массивов, которые я сохраняю и загружаю каждый раз, когда запускаю код следующим образом:

X=np.load("Dummy.npy")

Но по какой-то причине при обучении GAN на моем наборе данных что-то идет очень неправильно, и мои изображения ужасны, это после попытки с двумя разными моделями.

данные в моем numpy нормализуются как -1 к +1 ради соглашения. Все типы данных float. У меня было подозрение, что что-то может быть не так с моими входными данными и вообще не иметь ничего общего с кодом.

Чтобы проверить свою гипотезу, я сделал numpy для преобразования изображений следующим образом


from PIL import Image
import numpy as np

w, h = 128, 128
data = X[68]
data=(data+1)/2.0
img = Image.fromarray(data, 'RGB')
img.save('my.png')
img.show()

Изображение, которое было сохранено, было чистым шумом. Поэтому я предполагаю, что что-то не так с самими numpies.

Набор данных был подготовлен через следующие блоки:

img_array=cv2.imread(os.path.join(path,img))
            new_array=cv2.resize(img_array,(IMG_SIZE,IMG_SIZE))
            new_array=(new_array/127.5) -1
            training_data.append([new_array,class_num])

Это должно было превратить (0-255) пикселей диапазона в ( 0-2) и затем (от -1 до +1)

Затем они были сохранены как:

for features,label in training_data:
    X.append(features)
    y.append(label)

X = np.array(X).reshape(-1, IMG_SIZE, IMG_SIZE, 3)

np.save("Dummy.npy",X)

...