Image Classification
Keras
English
art
benjaminStreltzin commited on
Commit
ece04ae
·
verified ·
1 Parent(s): ff08cf1

Update cnn_ela_test.py

Browse files
Files changed (1) hide show
  1. cnn_ela_test.py +12 -29
cnn_ela_test.py CHANGED
@@ -25,6 +25,12 @@ import matplotlib.pyplot as plt
25
  from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, confusion_matrix
26
  from copy import deepcopy
27
 
 
 
 
 
 
 
28
  model = Sequential()
29
 
30
  model.add(Conv2D(filters = 32, kernel_size = (5,5),padding = 'valid',
@@ -54,29 +60,24 @@ model.summary()
54
  # Load saved weights
55
  model.load_weights("ELA_CNN_ART_V2.h5")
56
 
 
57
  optimizer = RMSprop(lr=0.0005, rho=0.9, epsilon=1e-08, decay=0.0)
58
  model.compile(optimizer = optimizer , loss = "categorical_crossentropy", metrics=["accuracy"])
59
 
60
-
61
-
62
 
63
  test_real_folder = 'datasets/test_set/real/'
64
  test_fake_folder = 'datasets/test_set/fake/'
65
 
66
-
67
-
68
  test_ela_output = 'datasets/training_set/ela_output/'
69
 
70
-
71
-
72
-
73
  test_set = labeling(test_real_folder, test_fake_folder)
74
  X_test = []
75
  Y_test = []
76
 
77
 
78
-
79
- # Preprocess test set
80
  for index, row in test_set.iterrows():
81
  X_test.append(array(convert_to_ela_image(row[0], 90, test_ela_output).resize((128, 128))).flatten() / 255.0)
82
  Y_test.append(row[1])
@@ -127,7 +128,8 @@ def calculate_acc(y_true, y_pred):
127
  plt.title('Confusion Matrix')
128
  plt.show()
129
 
130
-
 
131
 
132
  # Get predicted probabilities
133
  Y_pred_prob = model.predict(X_test)
@@ -141,22 +143,3 @@ Y_true = np.argmax(Y_test, axis=1)
141
  calculate_acc(Y_true, Y_pred)
142
 
143
  model.summary()
144
-
145
-
146
-
147
-
148
-
149
-
150
-
151
-
152
-
153
-
154
-
155
-
156
-
157
-
158
-
159
-
160
-
161
-
162
-
 
25
  from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, confusion_matrix
26
  from copy import deepcopy
27
 
28
+
29
+
30
+ ##########################################
31
+ #define the Cnn network as it was in the training file
32
+
33
+
34
  model = Sequential()
35
 
36
  model.add(Conv2D(filters = 32, kernel_size = (5,5),padding = 'valid',
 
60
  # Load saved weights
61
  model.load_weights("ELA_CNN_ART_V2.h5")
62
 
63
+ #set the optimizer
64
  optimizer = RMSprop(lr=0.0005, rho=0.9, epsilon=1e-08, decay=0.0)
65
  model.compile(optimizer = optimizer , loss = "categorical_crossentropy", metrics=["accuracy"])
66
 
67
+ ###########################################
68
+ #label and order the data
69
 
70
  test_real_folder = 'datasets/test_set/real/'
71
  test_fake_folder = 'datasets/test_set/fake/'
72
 
 
 
73
  test_ela_output = 'datasets/training_set/ela_output/'
74
 
 
 
 
75
  test_set = labeling(test_real_folder, test_fake_folder)
76
  X_test = []
77
  Y_test = []
78
 
79
 
80
+ # Preprocess test set using ELA and then store the output
 
81
  for index, row in test_set.iterrows():
82
  X_test.append(array(convert_to_ela_image(row[0], 90, test_ela_output).resize((128, 128))).flatten() / 255.0)
83
  Y_test.append(row[1])
 
128
  plt.title('Confusion Matrix')
129
  plt.show()
130
 
131
+ ############################################
132
+ # model preformance metrics and plots
133
 
134
  # Get predicted probabilities
135
  Y_pred_prob = model.predict(X_test)
 
143
  calculate_acc(Y_true, Y_pred)
144
 
145
  model.summary()