from util.setup_cloud_fraction import model_path
from aeolus.datasource import CLAVRx
import os
from deeplearning.cloud_fraction_fcn_abi import run_evaluate_static, run_evaluate_static_full_disk

tf_model_name = model_path+'tf_model_cld_frac_abi_v1' + os.sep


def infer_cloud_fraction(clvrx_path, output_dir, model_path=model_path+tf_model_name, full_disk=True):
    clvrx_ds = CLAVRx(clvrx_path)
    for fname, t_start, t_stop in clvrx_ds:
        dto = clvrx_ds.get_datetime(fname)
        clvrx_str_time = dto.strftime('%Y-%m-%d_%H:%M')
        out_file = output_dir + 'cloud_fraction_' + clvrx_str_time
        if full_disk:
            run_evaluate_static_full_disk(fname, out_file, model_path)
        else:
            run_evaluate_static(fname, out_file, model_path)