return loss_func gr_img = plt.imread('data/car.png')[:, :, :3] M, N, C = gr_img.shape sigma = 0.1 np.random.seed(10) noisy_img = gr_img + sigma * np.random.randn(M, N, C) noisy_img = np.vectorize(lambda x: 1.0 if x > 1 else 0.0 if x < 0 else x)(noisy_img) F = 16 model = get_Model(Input((M, N, F)), n_filters=8, depth=4, output_channels=C) model.compile(optimizer=Adam(), loss='mse', metrics=[mse_gr(gr_img)]) np.random.seed(2) z = np.random.uniform(low=-1, high=1, size=(1, M, N, F)) model.fit(z, noisy_img.reshape((1, M, N, C)), epochs=2000, verbose=1) j = model.predict(z) plt.figure() plt.subplot(3, 1, 1) plt.imshow(noisy_img) plt.subplot(3, 1, 2)
#%% from PIL import Image import numpy as np import pickle import model from sklearn.preprocessing import MinMaxScaler import tensorflow as tf import itertools import keras.backend as K #%% miniModel = model.get_Model(training=False) miniModel.load_weights('models\\6-11[17-54]__Model\\bestModel.h5') #%% with open('alphabetList.txt', 'rb') as file: alphabetList = pickle.load(file) #%% def single_test(imagePath): image = Image.open(imagePath) image = image.convert(mode='L') testArray = np.asarray(image.transpose(Image.FLIP_LEFT_RIGHT)) SC = MinMaxScaler() testScaled = SC.fit_transform(testArray) testScaled = testScaled.T testScaled = np.expand_dims(testScaled, axis=-1) testScaled = np.expand_dims(testScaled, axis=0) return testScaled
#%% from keras import backend as K from keras.optimizers import Adadelta, Adam from keras.callbacks import EarlyStopping, ModelCheckpoint import data_generator import model import parameters as p import numpy as np import os import jdatetime K.set_learning_phase(0) model = model.get_Model(training=True) EPOCHS = 150 # load weight from previous trainings LOADING = 0 WEIGHT_DIR = 'models\\6-2[18-22]__Model\\bestModel.h5' if LOADING == 1: model.load_weights(WEIGHT_DIR) # Model description and training now = jdatetime.datetime.today() model_folder_name = '%s-%s[%s-%s]__Model' % (now.month, now.day, now.hour, now.minute) os.mkdir('models\\%s' % model_folder_name) info = input('enter train note: ')
var = K.mean(K.square(y_pred[:, 1:, :] - y_pred[:, :-1, :])) + K.mean( K.square(y_pred[:, :, 1:] - y_pred[:, :, :-1])) return mse + var / 12 return loss_func img = np.zeros((56, 48)) img[2:-2, 2:-2] = plt.imread('data/mri_lowres.png') M, N = img.shape F = 16 model = get_Model(Input((M, N, F)), n_filters=16, depth=3, res_exp=2, output_channels=1) model.compile(optimizer=Adam(), loss=scaled_loss(2)) np.random.seed(2) z = np.random.uniform(low=-1, high=1, size=(1, M, N, F)) bmcb = BMCallback() model.fit(z, img.reshape((1, M, N, 1)), epochs=3000, verbose=1, callbacks=[bmcb]) model.set_weights(bmcb.best_weights)