diff --git a/modules/deeplearning/espcn.py b/modules/deeplearning/espcn.py index 297a3a3a97e82cbd9f30355c508ddb378a534206..2e8854269d1787ce9fc2b07a0bb982075eb98c35 100644 --- a/modules/deeplearning/espcn.py +++ b/modules/deeplearning/espcn.py @@ -68,9 +68,11 @@ y_134_2 = y_134[2:133:2] def build_residual_conv2d_block(conv, num_filters, block_name, activation=tf.nn.leaky_relu, padding='SAME', scale=None): + # kernel_initializer = 'glorot_uniform' + kernel_initializer = 'he_uniform' with tf.name_scope(block_name): - skip = tf.keras.layers.Conv2D(num_filters, kernel_size=3, strides=1, padding=padding, activation=activation)(conv) + skip = tf.keras.layers.Conv2D(num_filters, kernel_size=3, strides=1, padding=padding, kernel_initializer=kernel_initializer, activation=activation)(conv) skip = tf.keras.layers.Conv2D(num_filters, kernel_size=3, strides=1, padding=padding, activation=None)(skip) if scale is not None: skip = tf.keras.layers.Lambda(lambda x: x * scale)(skip) @@ -342,6 +344,8 @@ class ESPCN: # activation = tf.nn.relu # activation = tf.nn.elu activation = tf.nn.leaky_relu + # kernel_initializer = 'glorot_uniform' + kernel_initializer = 'he_uniform' momentum = 0.99 num_filters = 64 @@ -353,7 +357,7 @@ class ESPCN: print('input: ', conv.shape) # conv = conv_b = tf.keras.layers.Conv2D(num_filters, kernel_size=3, padding=padding)(input_2d) - conv = conv_b = tf.keras.layers.Conv2D(num_filters, kernel_size=3, padding='VALID')(input_2d) + conv = conv_b = tf.keras.layers.Conv2D(num_filters, kernel_size=3, padding='VALID', kernel_initializer=kernel_initializer)(input_2d) print(conv.shape) if NOISE_TRAINING: @@ -371,7 +375,7 @@ class ESPCN: conv_b = build_residual_conv2d_block(conv_b, num_filters, 'Residual_Block_5', scale=scale) - conv_b = tf.keras.layers.Conv2D(num_filters, kernel_size=3, strides=1, padding=padding)(conv_b) + conv_b = tf.keras.layers.Conv2D(num_filters, kernel_size=3, strides=1, padding=padding, kernel_initializer=kernel_initializer)(conv_b) conv = conv + conv_b print(conv.shape)