Skip to content

Commit feec188

Browse files
PSNR Calculation bug fix
1 parent d4eb9a3 commit feec188

2 files changed

Lines changed: 345 additions & 79 deletions

File tree

.ipynb_checkpoints/persegment-superresolution-checkpoint.ipynb

Lines changed: 173 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,17 @@
22
"cells": [
33
{
44
"cell_type": "code",
5-
"execution_count": 45,
5+
"execution_count": 2,
66
"metadata": {},
7-
"outputs": [],
7+
"outputs": [
8+
{
9+
"name": "stderr",
10+
"output_type": "stream",
11+
"text": [
12+
"Using TensorFlow backend.\n"
13+
]
14+
}
15+
],
816
"source": [
917
"from __future__ import print_function, division\n",
1018
"\n",
@@ -60,7 +68,7 @@
6068
},
6169
{
6270
"cell_type": "code",
63-
"execution_count": 46,
71+
"execution_count": 3,
6472
"metadata": {},
6573
"outputs": [],
6674
"source": [
@@ -71,7 +79,7 @@
7179
},
7280
{
7381
"cell_type": "code",
74-
"execution_count": 47,
82+
"execution_count": 4,
7583
"metadata": {},
7684
"outputs": [],
7785
"source": [
@@ -85,7 +93,7 @@
8593
},
8694
{
8795
"cell_type": "code",
88-
"execution_count": 53,
96+
"execution_count": 5,
8997
"metadata": {},
9098
"outputs": [],
9199
"source": [
@@ -121,7 +129,7 @@
121129
},
122130
{
123131
"cell_type": "code",
124-
"execution_count": 54,
132+
"execution_count": 14,
125133
"metadata": {},
126134
"outputs": [],
127135
"source": [
@@ -169,76 +177,73 @@
169177
" inputs = Input(input_size)\n",
170178
"\n",
171179
"\n",
172-
" conv1 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(inputs)\n",
180+
" conv1 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(inputs)\n",
173181
" conv1 = LeakyReLU()(conv1)\n",
174182
" conv1 = BatchNormalization(momentum=0.8)(conv1)\n",
175183
"\n",
176184
"\n",
177185
"\n",
178-
" conv2 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv1)\n",
186+
" conv2 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv1)\n",
179187
" conv2 = LeakyReLU()(conv2)\n",
180188
" conv2 = BatchNormalization(momentum=0.8)(conv2)\n",
181189
"\n",
182-
" conv3 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv2)\n",
190+
" conv3 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv2)\n",
183191
" conv3 = LeakyReLU()(conv3)\n",
184192
" conv3 = BatchNormalization(momentum=0.8)(conv3)\n",
185193
"\n",
186194
" concat1 = add([conv1, conv3])\n",
187195
"\n",
188-
" conv4 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(concat1)\n",
196+
"\n",
197+
"\n",
198+
" conv4 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(concat1)\n",
189199
" conv4 = LeakyReLU()(conv4)\n",
190200
" conv4 = BatchNormalization(momentum=0.8)(conv4)\n",
191201
"\n",
192-
" conv5 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv4)\n",
202+
" conv5 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv4)\n",
193203
" conv5 = LeakyReLU()(conv5)\n",
194204
" conv5 = BatchNormalization(momentum=0.8)(conv5)\n",
195205
"\n",
196206
" concat2 = add([conv5, concat1])\n",
197207
"\n",
198-
" conv6 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(concat2)\n",
208+
"\n",
209+
"\n",
210+
" conv6 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(concat2)\n",
199211
" conv6 = LeakyReLU()(conv6)\n",
200212
" conv6 = BatchNormalization(momentum=0.8)(conv6)\n",
201213
"\n",
202-
" conv7 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv6)\n",
214+
" conv7 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv6)\n",
203215
" conv7 = LeakyReLU()(conv7)\n",
204216
" conv7 = BatchNormalization(momentum=0.8)(conv7)\n",
205217
"\n",
206218
" concat3 = add([conv7, concat2])\n",
207219
"\n",
208-
" conv8 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(concat3)\n",
220+
"\n",
221+
"\n",
222+
" conv8 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(concat3)\n",
209223
" conv8 = LeakyReLU()(conv8)\n",
210224
" conv8 = BatchNormalization(momentum=0.8)(conv8)\n",
211225
"\n",
212-
" conv9 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv8)\n",
226+
" conv9 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv8)\n",
213227
" conv9 = LeakyReLU()(conv9)\n",
214228
" conv9 = BatchNormalization(momentum=0.8)(conv9)\n",
215229
" \n",
216230
"\n",
217-
" conv10 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv9)\n",
231+
" conv10 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv9)\n",
218232
" conv10 = LeakyReLU()(conv10)\n",
219233
" conv10 = BatchNormalization(momentum=0.8)(conv10)\n",
220234
"\n",
221-
" concat4 = add([conv10, concat3])\n",
235+
" concat4 = add([conv10, conv1])\n",
222236
" \n",
223-
" conv11 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(concat4)\n",
237+
" conv11 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(concat4)\n",
224238
" conv11 = LeakyReLU()(conv11)\n",
225239
" conv11 = BatchNormalization(momentum=0.8)(conv11)\n",
226240
" \n",
227-
" conv12 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv11)\n",
241+
" conv12 = Conv2D(8, 3, padding = 'same', kernel_initializer = 'he_normal')(conv11)\n",
228242
" conv12 = LeakyReLU()(conv12)\n",
229243
" conv12 = BatchNormalization(momentum=0.8)(conv12)\n",
230244
"\n",
231-
" concat5 = add([conv12, conv1])\n",
232-
" \n",
233-
" conv13 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(concat5)\n",
234-
" conv13 = LeakyReLU()(conv13)\n",
235-
" conv13 = BatchNormalization(momentum=0.8)(conv13)\n",
236-
" \n",
237-
" conv14 = Conv2D(16, 3, padding = 'same', kernel_initializer = 'he_normal')(conv13)\n",
238-
" conv14 = LeakyReLU()(conv14)\n",
239-
" conv14 = BatchNormalization(momentum=0.8)(conv14)\n",
240245
"\n",
241-
" out = Conv2D(3, 3, padding = 'same', kernel_initializer = 'he_normal')(conv14)\n",
246+
" out = Conv2D(3, 3, padding = 'same', kernel_initializer = 'he_normal')(conv12)\n",
242247
" out = LeakyReLU()(out)\n",
243248
" out = BatchNormalization(momentum=0.8)(out)\n",
244249
"\n",
@@ -106463,7 +106468,131 @@
106463106468
},
106464106469
{
106465106470
"cell_type": "code",
106466-
"execution_count": 58,
106471+
"execution_count": 15,
106472+
"metadata": {},
106473+
"outputs": [
106474+
{
106475+
"name": "stderr",
106476+
"output_type": "stream",
106477+
"text": [
106478+
"/usr/local/lib/python3.5/dist-packages/ipykernel_launcher.py:116: UserWarning: Update your `Model` call to the Keras 2 API: `Model(outputs=Tensor(\"ba..., inputs=Tensor(\"in...)`\n"
106479+
]
106480+
},
106481+
{
106482+
"name": "stdout",
106483+
"output_type": "stream",
106484+
"text": [
106485+
"__________________________________________________________________________________________________\n",
106486+
"Layer (type) Output Shape Param # Connected to \n",
106487+
"==================================================================================================\n",
106488+
"input_9 (InputLayer) (None, 384, 384, 3) 0 \n",
106489+
"__________________________________________________________________________________________________\n",
106490+
"conv2d_55 (Conv2D) (None, 384, 384, 8) 224 input_9[0][0] \n",
106491+
"__________________________________________________________________________________________________\n",
106492+
"leaky_re_lu_55 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_55[0][0] \n",
106493+
"__________________________________________________________________________________________________\n",
106494+
"batch_normalization_55 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_55[0][0] \n",
106495+
"__________________________________________________________________________________________________\n",
106496+
"conv2d_56 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_55[0][0] \n",
106497+
"__________________________________________________________________________________________________\n",
106498+
"leaky_re_lu_56 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_56[0][0] \n",
106499+
"__________________________________________________________________________________________________\n",
106500+
"batch_normalization_56 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_56[0][0] \n",
106501+
"__________________________________________________________________________________________________\n",
106502+
"conv2d_57 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_56[0][0] \n",
106503+
"__________________________________________________________________________________________________\n",
106504+
"leaky_re_lu_57 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_57[0][0] \n",
106505+
"__________________________________________________________________________________________________\n",
106506+
"batch_normalization_57 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_57[0][0] \n",
106507+
"__________________________________________________________________________________________________\n",
106508+
"add_18 (Add) (None, 384, 384, 8) 0 batch_normalization_55[0][0] \n",
106509+
" batch_normalization_57[0][0] \n",
106510+
"__________________________________________________________________________________________________\n",
106511+
"conv2d_58 (Conv2D) (None, 384, 384, 8) 584 add_18[0][0] \n",
106512+
"__________________________________________________________________________________________________\n",
106513+
"leaky_re_lu_58 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_58[0][0] \n",
106514+
"__________________________________________________________________________________________________\n",
106515+
"batch_normalization_58 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_58[0][0] \n",
106516+
"__________________________________________________________________________________________________\n",
106517+
"conv2d_59 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_58[0][0] \n",
106518+
"__________________________________________________________________________________________________\n",
106519+
"leaky_re_lu_59 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_59[0][0] \n",
106520+
"__________________________________________________________________________________________________\n",
106521+
"batch_normalization_59 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_59[0][0] \n",
106522+
"__________________________________________________________________________________________________\n",
106523+
"add_19 (Add) (None, 384, 384, 8) 0 batch_normalization_59[0][0] \n",
106524+
" add_18[0][0] \n",
106525+
"__________________________________________________________________________________________________\n",
106526+
"conv2d_60 (Conv2D) (None, 384, 384, 8) 584 add_19[0][0] \n",
106527+
"__________________________________________________________________________________________________\n",
106528+
"leaky_re_lu_60 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_60[0][0] \n",
106529+
"__________________________________________________________________________________________________\n",
106530+
"batch_normalization_60 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_60[0][0] \n",
106531+
"__________________________________________________________________________________________________\n",
106532+
"conv2d_61 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_60[0][0] \n",
106533+
"__________________________________________________________________________________________________\n",
106534+
"leaky_re_lu_61 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_61[0][0] \n",
106535+
"__________________________________________________________________________________________________\n",
106536+
"batch_normalization_61 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_61[0][0] \n",
106537+
"__________________________________________________________________________________________________\n",
106538+
"add_20 (Add) (None, 384, 384, 8) 0 batch_normalization_61[0][0] \n",
106539+
" add_19[0][0] \n",
106540+
"__________________________________________________________________________________________________\n",
106541+
"conv2d_62 (Conv2D) (None, 384, 384, 8) 584 add_20[0][0] \n",
106542+
"__________________________________________________________________________________________________\n",
106543+
"leaky_re_lu_62 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_62[0][0] \n",
106544+
"__________________________________________________________________________________________________\n",
106545+
"batch_normalization_62 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_62[0][0] \n",
106546+
"__________________________________________________________________________________________________\n",
106547+
"conv2d_63 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_62[0][0] \n",
106548+
"__________________________________________________________________________________________________\n",
106549+
"leaky_re_lu_63 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_63[0][0] \n",
106550+
"__________________________________________________________________________________________________\n",
106551+
"batch_normalization_63 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_63[0][0] \n",
106552+
"__________________________________________________________________________________________________\n",
106553+
"conv2d_64 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_63[0][0] \n",
106554+
"__________________________________________________________________________________________________\n",
106555+
"leaky_re_lu_64 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_64[0][0] \n",
106556+
"__________________________________________________________________________________________________\n",
106557+
"batch_normalization_64 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_64[0][0] \n",
106558+
"__________________________________________________________________________________________________\n",
106559+
"add_21 (Add) (None, 384, 384, 8) 0 batch_normalization_64[0][0] \n",
106560+
" batch_normalization_55[0][0] \n",
106561+
"__________________________________________________________________________________________________\n",
106562+
"conv2d_65 (Conv2D) (None, 384, 384, 8) 584 add_21[0][0] \n",
106563+
"__________________________________________________________________________________________________\n",
106564+
"leaky_re_lu_65 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_65[0][0] \n",
106565+
"__________________________________________________________________________________________________\n",
106566+
"batch_normalization_65 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_65[0][0] \n",
106567+
"__________________________________________________________________________________________________\n",
106568+
"conv2d_66 (Conv2D) (None, 384, 384, 8) 584 batch_normalization_65[0][0] \n",
106569+
"__________________________________________________________________________________________________\n",
106570+
"leaky_re_lu_66 (LeakyReLU) (None, 384, 384, 8) 0 conv2d_66[0][0] \n",
106571+
"__________________________________________________________________________________________________\n",
106572+
"batch_normalization_66 (BatchNo (None, 384, 384, 8) 32 leaky_re_lu_66[0][0] \n",
106573+
"__________________________________________________________________________________________________\n",
106574+
"conv2d_67 (Conv2D) (None, 384, 384, 3) 219 batch_normalization_66[0][0] \n",
106575+
"__________________________________________________________________________________________________\n",
106576+
"leaky_re_lu_67 (LeakyReLU) (None, 384, 384, 3) 0 conv2d_67[0][0] \n",
106577+
"__________________________________________________________________________________________________\n",
106578+
"batch_normalization_67 (BatchNo (None, 384, 384, 3) 12 leaky_re_lu_67[0][0] \n",
106579+
"==================================================================================================\n",
106580+
"Total params: 7,263\n",
106581+
"Trainable params: 7,065\n",
106582+
"Non-trainable params: 198\n",
106583+
"__________________________________________________________________________________________________\n",
106584+
"None\n"
106585+
]
106586+
}
106587+
],
106588+
"source": [
106589+
"cgan2 = CGAN()\n",
106590+
"cgan2.generator.load_weights('../data/superresolution_48x48/PerSegment-FilterSize8/weights/generator_weights_100000.h5')"
106591+
]
106592+
},
106593+
{
106594+
"cell_type": "code",
106595+
"execution_count": 24,
106467106596
"metadata": {},
106468106597
"outputs": [
106469106598
{
@@ -106481,30 +106610,34 @@
106481106610
"/usr/local/lib/python3.5/dist-packages/ipykernel_launcher.py:13: DeprecationWarning: `imsave` is deprecated!\n",
106482106611
"`imsave` is deprecated in SciPy 1.0.0, and will be removed in 1.2.0.\n",
106483106612
"Use ``imageio.imwrite`` instead.\n",
106484-
" del sys.path[0]\n"
106613+
" del sys.path[0]\n",
106614+
"/usr/local/lib/python3.5/dist-packages/ipykernel_launcher.py:14: DeprecationWarning: `imsave` is deprecated!\n",
106615+
"`imsave` is deprecated in SciPy 1.0.0, and will be removed in 1.2.0.\n",
106616+
"Use ``imageio.imwrite`` instead.\n",
106617+
" \n"
106485106618
]
106486106619
}
106487106620
],
106488106621
"source": [
106489-
"for i in range(30):\n",
106622+
"for i in range(1000):\n",
106490106623
" x = myGenerator(1)\n",
106491106624
" xtest, ytest = next(x)\n",
106492-
" pred = cgan.generator.predict(xtest)\n",
106493-
" pred = pred*127.5 + 127.5\n",
106625+
" pred = cgan2.generator.predict(xtest)\n",
106626+
" pred = pred*255\n",
106494106627
" pred = pred.astype(int)\n",
106495106628
" #plt.imshow(pred[0])\n",
106496106629
" #plt.show()\n",
106497-
" #ytest = ytest*127.5+127.5\n",
106498-
" #ytest = ytest.astype(int)\n",
106630+
" ytest = ytest*127.5+127.5\n",
106631+
" ytest = ytest.astype(int)\n",
106499106632
" #plt.imshow(ytest[0])\n",
106500106633
" #plt.show()\n",
106501106634
" imsave(path+'test/frame_pred'+str(i)+'.png', pred[0])\n",
106502-
" #imsave(path+'test/frame_real'+str(i)+'.png', ytest[0])"
106635+
" imsave(path+'test/frame_real'+str(i)+'.png', ytest[0])"
106503106636
]
106504106637
},
106505106638
{
106506106639
"cell_type": "code",
106507-
"execution_count": 32,
106640+
"execution_count": 25,
106508106641
"metadata": {},
106509106642
"outputs": [],
106510106643
"source": [
@@ -106522,14 +106655,14 @@
106522106655
},
106523106656
{
106524106657
"cell_type": "code",
106525-
"execution_count": 36,
106658+
"execution_count": 33,
106526106659
"metadata": {},
106527106660
"outputs": [
106528106661
{
106529106662
"name": "stdout",
106530106663
"output_type": "stream",
106531106664
"text": [
106532-
"PSNR: 31.612699630864867\n"
106665+
"PSNR: 29.01294903355552\n"
106533106666
]
106534106667
}
106535106668
],

0 commit comments

Comments
 (0)