# non-crater part files = os.listdir('./crater_data/test_set/non-crater') files.sort() for i in range(0, len(files) - 1): X_eval.append(transform_image('./crater_data/test_set/non-crater/' + files[i + 1], size)) y_eval.append(0) # stacking the arrays X_eval = np.vstack(X_eval) cnn_pred = cnn_classifier.predict_classes(X_eval, batch_size = 32) print("evaluate the results using lime") pretty_cm(cnn_pred, y_eval, ['crater', 'non-crater'], 'results/cnn/confusion_matrix.png') correctly_classified_indices, misclassified_indices = evaluation_indices(cnn_pred, y_eval) # correctly classified images plt.figure(figsize=(50,10)) #shuffle(correctly_classified_indices) for plot_index, good_index in enumerate(correctly_classified_indices[0:5]): plt.subplot(1, 5, plot_index + 1) plt.imshow(X_eval[good_index]) plt.title(' Predicted: {}, Actual: {} '.format(labels_index[cnn_pred[good_index][0]], labels_index[y_eval[good_index]]), fontsize = 18) plt.savefig('results/cnn/correctly_classified.png', dpi=400) # lime explanation of correctly classified images plt.figure(figsize=(50,10))
# non-crater part files = os.listdir('./crater_data/test_set/non-crater') files.sort() for i in range(0, len(files) - 1): X_eval.append(transform_image('./crater_data/test_set/non-crater/' + files[i + 1], size)) y_eval.append(0) # stacking the arrays X_eval = np.vstack(X_eval) cnn_pred = cnn_classifier.predict_classes(X_eval, batch_size = 32) print("evaluate the results using lime") pretty_cm(cnn_pred, y_eval, ['crater', 'non-crater']) correctly_classified_indices, misclassified_indices = evaluation_indices(cnn_pred, y_eval) # correctly classified images plt.figure(figsize=(50,10)) #shuffle(correctly_classified_indices) for plot_index, good_index in enumerate(correctly_classified_indices[0:5]): plt.subplot(1, 5, plot_index + 1) plt.imshow(X_eval[good_index]) plt.title(' Predicted: {}, Actual: {} '.format(labels_index[cnn_pred[good_index][0]], labels_index[y_eval[good_index]]), fontsize = 18) plt.savefig('results/correctly_classified.png', dpi=400) # lime explanation of correctly classified images plt.figure(figsize=(50,10))
files = os.listdir('./crater_data/test_set/non-crater') files.sort() for i in range(0, len(files) - 1): X_eval.append( transform_image('./crater_data/test_set/non-crater/' + files[i + 1], input_shape)) y_eval.append(0) # stacking the arrays X_eval = np.vstack(X_eval) preds = model.predict(X_eval, verbose=1) print("evaluate the results using lime") pretty_cm(preds, y_eval, ['crater', 'non-crater'], 'results/googlenet/confusion_matrix.png') correctly_classified_indices, misclassified_indices = evaluation_indices( preds, y_eval) # correctly classified images plt.figure(figsize=(50, 10)) #shuffle(correctly_classified_indices) for plot_index, good_index in enumerate(correctly_classified_indices[0:5]): plt.subplot(1, 5, plot_index + 1) plt.imshow(X_eval[good_index]) plt.title(' Predicted: {}, Actual: {} '.format( labels_index[preds[good_index][0]], labels_index[y_eval[good_index]]), fontsize=18) plt.savefig('results/googlenet/correctly_classified.png', dpi=400)