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)