Skip to content

Running the step

Goal

Run the stac step in a Python virtual environment.

Step 1 - Configure the workspace

The results produced will be available in the local folder /workspace/runs

terminal
1
2
3
4
export WORKSPACE=/workspace/app-package-training-bids23
export RUNTIME=/workspace/runs
mkdir -p ${RUNTIME}
cd ${RUNTIME}
source /workspace/app-package-training-bids23/scripts/setup.sh

Step 2 - Create the Python virtual environment

The required Python modules are installed using pip:

terminal
1
2
3
python -m venv env_stac
source env_stac/bin/activate
pip install --no-cache-dir pystac rio_stac loguru click
source ${WORKSPACE}/scripts/stac_env.sh

Step 3 - Generate the STAC Catalog

The command line tool is invoked to produce a STAC Catalog:

terminal
1
2
3
4
5
6
7
8
9
export WORKSPACE=/workspace/app-package-training-bids23
export RUNTIME=/workspace/runs
mkdir -p ${RUNTIME}
cd ${RUNTIME}

python \
    ${WORKSPACE}/water-bodies/command-line-tools/stac/app.py \
    --input-item "https://earth-search.aws.element84.com/v0/collections/sentinel-s2-l2a-cogs/items/S2B_10TFK_20210713_0_L2A" \
    --water-body otsu.tif
source ${WORKSPACE}/scripts/stac.sh

Step 4 - Clean-up

The Python virtual environment is no longer needed.

terminal
1
2
deactivate
rm -fr env_stac
source ${WORKSPACE}/scripts/stac_deactivate.sh

Expected outcome

The folder /workspace/runs contains:

(base) jovyan@coder-mrossi:~/runs$ tree .
.
├── S2B_10TFK_20210713_0_L2A
│   ├── S2B_10TFK_20210713_0_L2A.json
│   └── otsu.tif
├── catalog.json
├── crop_green.tif
├── crop_nir.tif
├── norm_diff.tif
└── otsu.tif

1 directory, 7 files