diff --git a/modules/deeplearning/cloud_fraction_fcn.py b/modules/deeplearning/cloud_fraction_fcn.py index 0d02b3e5a97dea4fb430fb8136241d7ab240fbf0..24ca26775bd3ece325a8f88767410071581cc785 100644 --- a/modules/deeplearning/cloud_fraction_fcn.py +++ b/modules/deeplearning/cloud_fraction_fcn.py @@ -8,6 +8,7 @@ import os, datetime import numpy as np import pickle import h5py +import gc LOG_DEVICE_PLACEMENT = False @@ -768,6 +769,7 @@ def run_evaluate_static(in_file, out_file, ckpt_dir): h5f = h5py.File(in_file, 'r') bt = get_grid_values_all(h5f, 'orig/temp_11_0um') + y_len, x_len = bt.shape[0], bt.shape[1] lons = get_grid_values_all(h5f, 'longitude') lats = get_grid_values_all(h5f, 'latitude') bt = np.where(np.isnan(bt), 0, bt) @@ -795,11 +797,17 @@ def run_evaluate_static(in_file, out_file, ckpt_dir): nn = SRCNN() probs = nn.run_evaluate(data, ckpt_dir) cld_frac = probs.argmax(axis=3) + cld_frac = cld_frac.astype(np.int8) + cld_frac_out = np.zeros((y_len, x_len), dtype=np.int8) + cld_frac_out[1:y_len - 1, 1:x_len - 1] = cld_frac[0, :, :] + + bt = denormalize(bt, 'temp_11_0um_nom', mean_std_dct) + refl_avg = denormalize(refl_avg, 'refl_0_65um_nom', mean_std_dct) if out_file is not None: - np.save(out_file, (cld_frac[0, :, :], denormalize(bt, 'temp_11_0um_nom', mean_std_dct), denormalize(refl_avg, 'refl_0_65um_nom', mean_std_dct), cp)) + np.save(out_file, (cld_frac_out, bt, refl_avg, cp)) else: - return cld_frac[0, :, :], denormalize(bt, 'temp_11_0um_nom', mean_std_dct), denormalize(refl_avg, 'refl_0_65um_nom', mean_std_dct), cp + return cld_frac_out, bt, refl_avg, cp def analyze2(nda_m, nda_i):