Skip to content
Snippets Groups Projects
Commit 11be9122 authored by tomrink's avatar tomrink
Browse files

snapshot...

parent 7061ccf6
No related branches found
No related tags found
No related merge requests found
...@@ -45,39 +45,42 @@ ds_range.update({'cloud_fraction': 'actual_range'}) ...@@ -45,39 +45,42 @@ ds_range.update({'cloud_fraction': 'actual_range'})
emis_params = ['temp_10_4um_nom', 'temp_11_0um_nom', 'temp_12_0um_nom', 'temp_13_3um_nom', 'temp_3_9um_nom', emis_params = ['temp_10_4um_nom', 'temp_11_0um_nom', 'temp_12_0um_nom', 'temp_13_3um_nom', 'temp_3_9um_nom',
'temp_6_7um_nom'] 'temp_6_7um_nom']
# refl_params = ['refl_0_47um_nom', 'refl_0_65um_nom', 'refl_0_86um_nom', 'refl_1_38um_nom', 'refl_1_60um_nom'] # refl_params = ['refl_0_47um_nom', 'refl_0_65um_nom', 'refl_0_86um_nom', 'refl_1_38um_nom', 'refl_1_60um_nom']
# data_params = refl_params + emis_params # data_params = refl_params + emis_params
# data_params = emis_params # data_params = emis_params
# l2_params = ['temp_11_0um_nom', 'temp_12_0um_nom', 'cloud_fraction'] #target_param = 'cloud_probability'
l2_params = ['temp_11_0um_nom', 'temp_12_0um_nom', 'refl_0_65um_nom', 'cld_opd_dcomp'] target_param = 'cld_opd_dcomp'
# l2_params = ['temp_11_0um_nom', 'temp_12_0um_nom', 'refl_0_65um_nom', 'cloud_probability']
# l2_params = ['temp_11_0um_nom', 'temp_12_0um_nom', 'refl_0_65um_nom', 'cloud_fraction'] # group_name = ''
group_name = 'super/'
l2_params = [group_name+'temp_11_0um_nom', group_name+'temp_12_0um_nom', group_name+'refl_0_65um_nom', group_name+target_param]
# solzen_name = group_name + 'solar_zenith_angle'
solzen_name = group_name + 'solar_zenith'
label_params = l2_params label_params = l2_params
data_params = l2_params data_params = l2_params
def keep_tile(param_s, tile): def keep_tile(param_s, tile):
k = param_s.index('cloud_fraction') k = param_s.index(group_name + target_param)
grd_k = tile[k, ].flatten() grd_k = tile[k, ].copy()
keep = np.invert(np.isnan(grd_k))
total = np.sum(keep) if target_param == 'cloud_probability':
if total == 0: grd_k = process_cld_prob_(grd_k)
return False elif target_param == 'cld_opd_dcomp':
np.where(np.invert(keep), 0, grd_k) grd_k = process_cld_opd_(grd_k)
keep = np.where(keep, np.invert(np.logical_and(0.1 < grd_k, grd_k < 0.9)), False) if grd_k is not None:
if np.sum(keep)/total > 0.75: tile[k, ] = grd_k
return True return tile
else: else:
return False return None
def process_cld_prob(param_s, tile): def process_cld_prob(param_s, tile):
k = param_s.index('cloud_probability') k = param_s.index(group_name + 'cloud_probability')
grd_k = tile[k, ].copy() grd_k = tile[k, ].copy()
grd_k = process_cld_prob_(grd_k) grd_k = process_cld_prob_(grd_k)
if grd_k is not None: if grd_k is not None:
...@@ -100,7 +103,7 @@ def process_cld_prob_(grd_k): ...@@ -100,7 +103,7 @@ def process_cld_prob_(grd_k):
def process_cld_opd(param_s, tile): def process_cld_opd(param_s, tile):
k = param_s.index('cld_opd_dcomp') k = param_s.index(group_name + 'cld_opd_dcomp')
grd_k = tile[k, ].copy() grd_k = tile[k, ].copy()
grd_k = process_cld_opd_(grd_k) grd_k = process_cld_opd_(grd_k)
if grd_k is not None: if grd_k is not None:
...@@ -222,7 +225,8 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi ...@@ -222,7 +225,8 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi
num_lines = data_h5f[param_name].shape[0] num_lines = data_h5f[param_name].shape[0]
num_pixels = data_h5f[param_name].shape[1] num_pixels = data_h5f[param_name].shape[1]
solzen = get_grid_values(data_h5f, 'solar_zenith_angle', 0, 0, None, num_lines, num_pixels) if day_night != 'BOTH':
solzen = get_grid_values(data_h5f, solzen_name, 0, 0, None, num_lines, num_pixels)
grd_s = [] grd_s = []
for param in param_s: for param in param_s:
...@@ -261,7 +265,7 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi ...@@ -261,7 +265,7 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi
continue continue
nda = data[:, j_a:j_b, i_a:i_b] nda = data[:, j_a:j_b, i_a:i_b]
nda = process_cld_opd(param_s, nda) nda = keep_tile(param_s, nda)
if nda is not None: if nda is not None:
train_tiles.append(nda) train_tiles.append(nda)
...@@ -280,7 +284,7 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi ...@@ -280,7 +284,7 @@ def run(data_h5f, param_s, train_tiles, valid_tiles, num_keep_x_tiles=8, tile_wi
continue continue
nda = data[:, j_a:j_b, i_a:i_b] nda = data[:, j_a:j_b, i_a:i_b]
nda = process_cld_opd(param_s, nda) nda = keep_tile(param_s, nda)
if nda is not None: if nda is not None:
valid_tiles.append(nda) valid_tiles.append(nda)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment