diff --git a/modules/deeplearning/cloud_fraction_fcn_abi.py b/modules/deeplearning/cloud_fraction_fcn_abi.py index 02bdc61864f16dc5d415912f59ad923c3b20c2ce..717009d1aec0e5fee9b8c2147ed7d7c120edbf82 100644 --- a/modules/deeplearning/cloud_fraction_fcn_abi.py +++ b/modules/deeplearning/cloud_fraction_fcn_abi.py @@ -154,27 +154,31 @@ def get_min_max_std(grd_k): return lo, hi, std, avg -def get_label_data(grd_k): +def get_label_data_5cat(grd_k): grd_k = np.where(np.isnan(grd_k), 0, grd_k) - grd_k = np.where(grd_k < 0.50, 0, 1) + grd_k = np.where(grd_k < 0.5, 0, 1) - a = grd_k[:, 0::4, 0::4] - b = grd_k[:, 1::4, 0::4] - c = grd_k[:, 0::4, 1::4] - d = grd_k[:, 1::4, 1::4] - s = a + b + c + d + s = grd_k[:, 0::4, 0::4] + grd_k[:, 1::4, 0::4] + grd_k[:, 2::4, 0::4] + grd_k[:, 3::4, 0::4] + \ + grd_k[:, 0::4, 1::4] + grd_k[:, 1::4, 1::4] + grd_k[:, 2::4, 1::4] + grd_k[:, 3::4, 1::4] + \ + grd_k[:, 0::4, 2::4] + grd_k[:, 1::4, 2::4] + grd_k[:, 2::4, 2::4] + grd_k[:, 3::4, 2::4] + \ + grd_k[:, 0::4, 3::4] + grd_k[:, 1::4, 3::4] + grd_k[:, 2::4, 3::4] + grd_k[:, 3::4, 3::4] + + cat_0 = np.logical_and(s >= 0, s < 2) + cat_1 = np.logical_and(s >= 2, s < 6) + cat_2 = np.logical_and(s >= 6, s < 11) + cat_3 = np.logical_and(s >= 11, s < 15) + cat_4 = np.logical_and(s >= 15, s <= 16) - cat_0 = (s <= 1) - cat_1 = np.logical_and(s > 1, s < 15) - cat_2 = (s >= 15) s[cat_0] = 0 s[cat_1] = 1 s[cat_2] = 2 + s[cat_3] = 3 + s[cat_4] = 4 return s -def get_label_data_5cat(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.5, 0, 1) @@ -183,17 +187,13 @@ def get_label_data_5cat(grd_k): grd_k[:, 0::4, 2::4] + grd_k[:, 1::4, 2::4] + grd_k[:, 2::4, 2::4] + grd_k[:, 3::4, 2::4] + \ grd_k[:, 0::4, 3::4] + grd_k[:, 1::4, 3::4] + grd_k[:, 2::4, 3::4] + grd_k[:, 3::4, 3::4] - cat_0 = np.logical_and(s >= 0, s < 2) - cat_1 = np.logical_and(s >= 2, s < 6) - cat_2 = np.logical_and(s >= 6, s < 11) - cat_3 = np.logical_and(s >= 11, s < 15) - cat_4 = np.logical_and(s >= 15, s <= 16) + cat_0 = np.logical_and(s >= 0, s < 3) + cat_1 = np.logical_and(s >= 3, s < 14) + cat_2 = np.logical_and(s >= 14, s <= 16) s[cat_0] = 0 s[cat_1] = 1 s[cat_2] = 2 - s[cat_3] = 3 - s[cat_4] = 4 return s