forked from RiyaParikh0112/Unpaired-Image-Translation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path2-discriminator.py
31 lines (31 loc) · 1.21 KB
/
2-discriminator.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
def define_discriminator(image_shape):
#weight initialization
init = RandomNormal(stddev=0.02)
#source image input
in_image = Input(shape=image_shape)
#64
d = Conv2D(64,(4,4),strides=(2,2),padding='same',kernel_initializer=init)(in_image)
d = LeakyReLU(alpha=0.2)(d)
#128
d = Conv2D(128,(4,4),strides=(2,2),padding='same',kernel_initializer=init)(d)
d = InstanceNormalization(axis=-1)(d)
d = LeakyReLU(alpha=0.2)(d)
#256
d = Conv2D(256,(4,4),strides=(2,2),padding='same',kernel_initializer=init)(d)
d = InstanceNormalization(axis=-1)(d)
d = LeakyReLU(alpha=0.2)(d)
#512
d = Conv2D(512,(4,4),strides=(2,2),padding='same',kernel_initializer=init)(d)
d =InstanceNormalization(axis=-1)(d)
d = LeakyReLU(alpha=0.2)(d)
#prefinal output layer
d = Conv2D(512,(4,4),padding='same',kernel_initializer=init)(d)
d = InstanceNormalization(axis=-1)(d)
d = LeakyReLU(alpha=0.2)(d)
#patch output
patch_out = Conv2D(1,(4,4),padding='same',kernel_initializer=init)(d)
#definig the model
model = Model(in_image,patch_out)
#compiling the model
model.compile(loss = 'mse',optimizer = Adam(lr=0.0002,beta_1=0.5),loss_weights=[0.5])
return model