diff --git a/modules/deeplearning/srcnn_cld_frac.py b/modules/deeplearning/srcnn_cld_frac.py index e6811fcfa3f5e276283e945de98d6b7d7b234449..d57a17200dafca1e0b83e97e865650b1d5d0f92a 100644 --- a/modules/deeplearning/srcnn_cld_frac.py +++ b/modules/deeplearning/srcnn_cld_frac.py @@ -138,45 +138,43 @@ def upsample(tmp): return tmp -def upsample_nearest(tmp): - bsize = tmp.shape[0] - tmp_2 = tmp[:, slc_y_2, slc_x_2] - up = np.zeros(bsize, t.size, s.size) - for k in range(bsize): - for j in range(t.size/2): - for i in range(s.size/2): - up[k, j, i] = tmp_2[k, j, i] - up[k, j, i+1] = tmp_2[k, j, i] - up[k, j+1, i] = tmp_2[k, j, i] - up[k, j+1, i+1] = tmp_2[k, j, i] - return up - +# def get_label_data(grd_k): +# grd_k = np.where(np.isnan(grd_k), 0, grd_k) +# grd_k = np.where(grd_k < 0.5, 0, 1) +# +# a = grd_k[:, 0::2, 0::2] +# b = grd_k[:, 1::2, 0::2] +# c = grd_k[:, 0::2, 1::2] +# d = grd_k[:, 1::2, 1::2] +# s_t = a + b + c + d +# s_t = np.where(s_t == 0, 0, s_t) +# s_t = np.where(s_t == 1, 1, s_t) +# s_t = np.where(s_t == 2, 1, s_t) +# s_t = np.where(s_t == 3, 1, s_t) +# s_t = np.where(s_t == 4, 2, s_t) +# +# return s_t -def get_label_data(grd_k): +def get_grid_cell_mean(grd_k): grd_k = np.where(np.isnan(grd_k), 0, grd_k) - grd_k = np.where(grd_k < 0.5, 0, 1) a = grd_k[:, 0::2, 0::2] b = grd_k[:, 1::2, 0::2] c = grd_k[:, 0::2, 1::2] d = grd_k[:, 1::2, 1::2] - s_t = a + b + c + d - s_t = np.where(s_t == 0, 0, s_t) - s_t = np.where(s_t == 1, 1, s_t) - s_t = np.where(s_t == 2, 1, s_t) - s_t = np.where(s_t == 3, 1, s_t) - s_t = np.where(s_t == 4, 2, s_t) + s = a + b + c + d + s /= 4.0 - return s_t + return s -# def get_label_data(grd_k): -# grd_k = np.where(np.isnan(grd_k), 0, grd_k) -# grd_k = np.where((grd_k >= 0.0) & (grd_k < 0.3), 0, grd_k) -# grd_k = np.where((grd_k >= 0.3) & (grd_k < 0.7), 1, grd_k) -# grd_k = np.where((grd_k >= 0.7) & (grd_k <= 1.0), 2, grd_k) -# -# return grd_k +def get_label_data(grd_k): + grd_k = np.where(np.isnan(grd_k), 0, grd_k) + grd_k = np.where((grd_k >= 0.0) & (grd_k < 0.3), 0, grd_k) + grd_k = np.where((grd_k >= 0.3) & (grd_k < 0.7), 1, grd_k) + grd_k = np.where((grd_k >= 0.7) & (grd_k <= 1.0), 2, grd_k) + + return grd_k class SRCNN: