Exemple #1
0
def create_process_chain_entry(nir_time_series, red_time_series,
                               output_time_series):
    """Create a Actinia process description that uses t.rast.series to create the minimum
    value of the time series.

    :param nir_time_series: The NIR band time series name
    :param red_time_series: The RED band time series name
    :param output_time_series: The name of the output time series
    :return: A list of Actinia process chain descriptions
    """
    nir_time_series = ActiniaInterface.layer_def_to_grass_map_name(
        nir_time_series)
    red_time_series = ActiniaInterface.layer_def_to_grass_map_name(
        red_time_series)
    output_name = ActiniaInterface.layer_def_to_grass_map_name(
        output_time_series)

    rn = randint(0, 1000000)

    pc = [{
        "id":
        "t_rast_mapcalc_%i" % rn,
        "module":
        "t.rast.mapcalc",
        "inputs": [{
            "param": "expression",
            "value": "%(result)s = float((%(nir)s - %(red)s)/"
            "(%(nir)s + %(red)s))" % {
                "result": output_name,
                "nir": nir_time_series,
                "red": red_time_series
            }
        }, {
            "param": "inputs",
            "value": "%(nir)s,%(red)s" % {
                "nir": nir_time_series,
                "red": red_time_series
            }
        }, {
            "param": "basename",
            "value": "ndvi"
        }, {
            "param": "output",
            "value": output_name
        }]
    }, {
        "id":
        "t_rast_color_%i" % rn,
        "module":
        "t.rast.colors",
        "inputs": [{
            "param": "input",
            "value": output_name
        }, {
            "param": "color",
            "value": "ndvi"
        }]
    }]

    return pc
Exemple #2
0
def create_process_chain_entry(input_name, method, output_name):
    """Create a Actinia process description that uses t.rast.series to reduce a time series.

    :param input_time_series: The input time series name
    :param method: The method for time reduction
    :param output_map: The name of the output map
    :return: A Actinia process chain description
    """
    input_name = ActiniaInterface.layer_def_to_grass_map_name(input_name)

    rn = randint(0, 1000000)

    pc = {
        "id":
        "t_rast_series_%i" % rn,
        "module":
        "t.rast.series",
        "inputs": [{
            "param": "input",
            "value": input_name
        }, {
            "param": "method",
            "value": method
        }, {
            "param": "output",
            "value": output_name
        }],
        "flags":
        "t"
    }

    return pc