コード例 #1
0
    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)
コード例 #2
0
#%%
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
コード例 #3
0
ファイル: training.py プロジェクト: halataa/KNTU-OCR
#%%
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:  ')
コード例 #4
0
        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)