def exec(self): try: log.info('[START] {}'.format("exec")) # fileInfoPattrn = '{}/{}/{}'.format(globalVar['inpPath'], serviceName, '1.csv') # fileInfo = glob.glob(fileInfoPattrn) # if (len(fileInfo) < 1): raise Exception("[ERROR] fileInfo : {} : {}".format("자료를 확인해주세요.", fileInfoPattrn)) # saveFile = '{}/{}_{}'.format(globalVar['figPath'], serviceName, '2021_nagano_S1_01_raw.png') # log.info('[CHECK] saveFile : {}'.format(saveFile)) # breakpoint() fileInfoPattrn = '{}/{}/{}'.format( globalVar['inpPath'], serviceName, 'coms_data/coms_mi_le2_sst_data1.txt') fileInfo = glob.glob(fileInfoPattrn) if (len(fileInfo) < 1): raise Exception("[ERROR] fileInfo : {} : {}".format( "자료를 확인해주세요.", fileInfoPattrn)) data = pd.read_csv(fileInfo[0], header=None) # 이미지 그리기 fileName = os.path.basename(fileInfo[0]) saveImg = '{}/{}_{}.png'.format(globalVar['figPath'], serviceName, fileName) plt.pcolormesh(data) plt.clim() plt.colorbar() plt.savefig(saveImg, dpi=600, bbox_inches='tight') plt.show() # patch_size = (33, 33) patch_size = data.shape input_shape = (patch_size[0], patch_size[1], 1) batch_size = 64 input_img = Input(shape=input_shape) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(input_img) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(1, (3, 3), padding='same', kernel_initializer='he_normal')(model) res_img = model output_img = add([res_img, input_img]) model = Model(input_img, output_img) model.compile(loss=MeanSquaredError(), optimizer=Adam(), metrics=['accuracy']) # metrics=[PSNRLoss]) # breakpoint() # img = cv2.imread('test.jpg') # img = cv2.resize(img, (320, 240)) # img = np.reshape(data, [patch_size[0], patch_size[1]]) img = np.expand_dims(data, axis=0) predict = model.predict(img) # # 이미지 그리기 # plt.pcolormesh(predict) # plt.clim() # plt.colorbar() # plt.show() # # breakpoint() except Exception as e: log.error("Exception : {}".format(e)) raise e finally: log.info('[END] {}'.format("exec"))
model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(1, (3, 3), padding='same', kernel_initializer='he_normal')(model) res_img = model output_img = add([res_img, input_img]) model = Model(input_img, output_img) model.compile(loss=MeanSquaredError(), optimizer=Adam(learning_rate=0.001), # metrics=['accuracy']) metrics=[PSNRLoss]) import random import os from tensorflow.keras.callbacks import ModelCheckpoint from tensorflow.keras.callbacks import LearningRateScheduler from tensorflow import math, int64, cast def gen(features, labels, batch_size, patch_size): # Create empty arrays to contain batch of features and labels# batch_features = np.zeros((batch_size, patch_size[0], patch_size[1], 1)) batch_labels = np.zeros((batch_size, patch_size[0], patch_size[1], 1)) while True: for i in range(batch_size):
def VDSR(in_ch, n_class, height, width): inputs = Input(shape=(height, width, in_ch)) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(inputs) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(64, (3, 3), padding='same', kernel_initializer='he_normal')(model) model = Activation('relu')(model) model = Conv2D(in_ch, (3, 3), padding='same', kernel_initializer='he_normal')(model) res_img = model outputs = add([res_img, inputs]) #[:,:,:,0:3]]) #model = Activation('softmax')(outputs) outputs = Conv2D(n_class, (3, 3), activation='softmax', padding='same')(outputs) model = Model(inputs=[inputs], outputs=[outputs]) model.summary() model.compile(optimizer=Adam(lr=1e-4), loss='categorical_crossentropy', metrics=[PSNR, 'accuracy']) return model