Exemplo n.º 1
0
def main(ctx, input_path):

    # dump the CWL and params (if requested)
    dump(ctx)

    if 'TMPDIR' in os.environ:
        os.chdir(os.environ['TMPDIR'])

    logging.info(os.path.join(input_path, 'catalog.json'))

    item = get_item(os.path.join(input_path, 'catalog.json'))

    output_dir = f'{item.id}'

    calibrator = Calibrator()

    item_out = calibrator.calibrate(item)

    logging.info('STAC')

    cat = Catalog(id='catalog',
                  description="Calibrated sar product")

    cat.add_items([item_out])

    cat.normalize_and_save(root_href='./',
                           catalog_type=CatalogType.SELF_CONTAINED)

    logging.info('Done!')


    #os.mkdir(output_dir)

    sys.exit(0)
Exemplo n.º 2
0
def main(ctx, ndvi_threshold, ndwi_threshold, pre_event, post_event):

    dump(ctx)

    os.environ["PREFIX"] = "/opt/anaconda/envs/env_burned_area"

    os.environ["PROJ_LIB"] = os.path.join(os.environ["PREFIX"], "share/proj")
    os.environ["GDAL_DATA"] = os.path.join(os.environ["PREFIX"], "share/gdal")

    burned_area_item = burned(
        pre_item=get_item(os.path.join(pre_event, "catalog.json")),
        post_item=get_item(os.path.join(post_event, "catalog.json")),
        ndvi_threshold=ndvi_threshold,
        ndwi_threshold=ndwi_threshold,
    )

    logging.info("Output catalog")

    catalog = Catalog(id="catalog", description="Results")

    catalog.clear_items()
    catalog.clear_children()

    catalog.add_items([burned_area_item])

    catalog.describe()

    catalog.normalize_and_save(root_href="./",
                               catalog_type=CatalogType.SELF_CONTAINED)
Exemplo n.º 3
0
def main(ctx, **kwargs):

    dump(ctx)

    print("business as usual")
    print(kwargs)

    sys.exit(0)
Exemplo n.º 4
0
def main(ctx, input_reference, s_expression, cbn):

    dump(ctx)

    item = get_item(os.path.join(input_reference, "catalog.json"))

    logging.info(f"Processing {item.id}")

    try:
        os.mkdir(item.id)
    except FileExistsError:
        pass

    cbn = cbn.replace(' ', '-')

    result = os.path.join(item.id, f"{cbn}.tif")

    logging.info(f"Apply {s_expression} to {item.id}")

    apply_s_expression(item=item, s_expression=s_expression, out_tif=result)

    logging.info("STAC")

    item_out = Item(
        id=item.id,
        geometry=item.geometry,
        bbox=item.bbox,
        datetime=item.datetime,
        properties=item.properties,
        stac_extensions=item.stac_extensions,
    )

    eo_item = extensions.eo.EOItemExt(item_out)

    asset_properties = dict()

    asset_properties["s-expression"] = s_expression

    asset = Asset(
        href=os.path.basename(result),
        media_type=MediaType.COG,
        roles=["data"],
        properties=asset_properties,
    )

    eo_bands = [
        extensions.eo.Band.create(
            name=cbn.lower(),
            common_name=cbn.lower(),
            description=f"{cbn.lower()} ({s_expression})",
        )
    ]

    eo_item.set_bands(eo_bands, asset=asset)

    item_out.add_asset(key=cbn.lower(), asset=asset)

    logging.info("STAC")

    cat = Catalog(id="catalog", description="s-expression")

    cat.add_items([item_out])

    cat.normalize_and_save(root_href="./",
                           catalog_type=CatalogType.SELF_CONTAINED)

    logging.info("Done!")
Exemplo n.º 5
0
def main(ctx, input_reference, aoi):

    dump(ctx)

    logging.info("Hello World!")