/
generator-gan.py
32 lines (28 loc) · 934 Bytes
/
generator-gan.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import numpy as np
from keras.models import Model, Sequential, load_model
from keras.layers import Lambda, Input
from keras import optimizers
import os
import cv2
from keras.callbacks import ReduceLROnPlateau, ModelCheckpoint, EarlyStopping, TensorBoard
from keras import backend as K
import random
import string
def random_digits():
return ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(6))
isize=64
latent_dim=128
G = load_model("gan/models/gen.h5")
#G.load_weights('weights/gen_epoch_23.hdf5')
G.load_weights('gan/weights/gen_epoch_88.hdf5')
#---
n_faces = 40
rand_vecs = np.random.normal(0., 1., (n_faces, latent_dim))
print(np.min(rand_vecs), np.max(rand_vecs))
y_faces = G.predict([rand_vecs])
for i in range(n_faces):
face = y_faces[i]*127.5+127.5
face = face.astype("uint8")
cv2.imshow('face', face)
cv2.waitKey()
#cv2.imwrite('14/face_'+random_digits()+'.jpg', face)