Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update deafrica-waterbodies command line tools #11

Merged
merged 133 commits into from
Nov 27, 2023
Merged
Show file tree
Hide file tree
Changes from 117 commits
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
4775c0e
Update ocean filtering notebook to use raster processing
caitlinadams Oct 12, 2023
070ad3b
rename step two notebooks
caitlinadams Oct 12, 2023
9800d2c
rename files in order of use
caitlinadams Oct 12, 2023
c3561f6
Change notebooks to use raster processing
caitlinadams Oct 12, 2023
0843aaa
Update filter notebook with required post-processing steps
caitlinadams Oct 13, 2023
9208296
Update check_wetness_threshold
vikineema Oct 13, 2023
4bdc76a
minor update
vikineema Oct 13, 2023
3031ffd
Update check_wetness_thresholds to handle 1 threshold
vikineema Oct 13, 2023
ba5fb94
fix assertions
vikineema Oct 13, 2023
b3275ae
minor fixes
vikineema Oct 13, 2023
5878933
Replace check_wetness_thresholds with set_wetness_thresholds
vikineema Oct 13, 2023
4f1a293
Add the load_wofs_frequency function
vikineema Oct 13, 2023
eb3036d
Remove unused functions
vikineema Oct 13, 2023
3462910
Add raster processing functions
vikineema Oct 13, 2023
322642f
minor update
vikineema Oct 13, 2023
922a96e
minor updates
vikineema Oct 13, 2023
5f98f59
Add output crs
vikineema Oct 13, 2023
bc26958
update logging
vikineema Oct 13, 2023
25f5eec
Remove notebook as step is covered in 01
vikineema Oct 13, 2023
2cc444a
Update threshold naming
vikineema Oct 17, 2023
0564388
Adding logging to help debug
vikineema Oct 17, 2023
fb0127e
Add the use of dask geopandas to the erode-dilate-v2 function
vikineema Oct 17, 2023
9f0123f
Update notebooks
vikineema Oct 17, 2023
2b034cd
Remove the use of dask-geopandas from erode_dilate_v2
vikineema Oct 18, 2023
f6f8857
Remove dask-geopandas from requirements
vikineema Oct 18, 2023
a5ec537
minor updates
vikineema Oct 18, 2023
dc2773f
Add function to fill holes
vikineema Oct 18, 2023
c0c597c
Update get_tiles to return filtered tiles
vikineema Oct 18, 2023
dec95b5
minor logging update
vikineema Oct 18, 2023
4243fb0
Fix polygons
vikineema Oct 18, 2023
f02231a
Update filter by area function
vikineema Oct 18, 2023
ad6074b
Do not reset index when filtering by area
vikineema Oct 18, 2023
4957b8f
minor update
vikineema Oct 18, 2023
daf132e
minor update
vikineema Oct 18, 2023
c541c8b
Update function to write waterbodies
vikineema Oct 18, 2023
5f24b43
update filtering notebooks
vikineema Oct 18, 2023
21d54fd
minor updates to notebooks
vikineema Oct 18, 2023
fddc741
minor logging update
vikineema Oct 19, 2023
7ab1b47
Merge branch 'update-filtering' of https://github.com/digitalearthafr…
vikineema Oct 19, 2023
470c70c
Add function to convert shapefiles into parquet files
vikineema Oct 19, 2023
b2b48d6
Add notebook to remove polygons within other polygons
vikineema Oct 19, 2023
e26bbee
Update filter using land sea mask function
vikineema Oct 19, 2023
e33fe38
Add function to remove polygons within other polygons
vikineema Oct 19, 2023
09dc278
Remove datasets module which was replaced by using tiling in the work…
vikineema Oct 19, 2023
6ee15a0
Update filter_using_urban_mask function to only filter one set of pol…
vikineema Oct 19, 2023
4602a3c
Remove function to merge primary and secondary polygons as this is ta…
vikineema Oct 19, 2023
053df3c
minor updates to filter_using_major_rivers_mask function
vikineema Oct 19, 2023
6556012
Do not return tuple
vikineema Oct 19, 2023
f1212b1
Remove merge_polygons_at_dataset_boundaries_function
vikineema Oct 19, 2023
26a5c37
remove unused import
vikineema Oct 19, 2023
f958419
fix linting error
vikineema Oct 19, 2023
91c376e
Use full version for naming file
vikineema Oct 23, 2023
baea73d
Remove the attributes columns
vikineema Oct 23, 2023
dd17d4e
minor update
vikineema Oct 23, 2023
9593f76
Merge branch 'improve-fill-polygons' of https://github.com/digitalear…
vikineema Oct 23, 2023
290f0be
Update order of notebooks run to produce continental waterbodies vers…
vikineema Oct 23, 2023
22a62e6
Use dask chunks when loading data
vikineema Oct 23, 2023
b659fc4
Update timeseries functions to match deafrica-conflux
vikineema Oct 23, 2023
961ce0a
update function to return timeseries file paths
vikineema Oct 23, 2023
6834c44
Fix missing directories
vikineema Oct 23, 2023
8dedb17
minor update
vikineema Oct 23, 2023
62beab5
fix naming of timeseries csv files
vikineema Oct 24, 2023
cc2f5ef
Format queues module using black and isort
vikineema Oct 24, 2023
75f8b5a
Add odc-stats as dependency
vikineema Oct 24, 2023
dc93660
Update how version is assigned in timeseries attribute
vikineema Oct 24, 2023
8ff1fac
Update add_timeseries_attribute
vikineema Oct 31, 2023
2ed7c79
Update naming for the timeseries and polygons
vikineema Oct 31, 2023
45261ca
Remove product version number from file naming
vikineema Oct 31, 2023
40a7816
remove unused command line tools
vikineema Nov 7, 2023
800cafe
add plugin for raster processing filtering
vikineema Nov 8, 2023
ae862eb
remove default filter land mask function
vikineema Nov 8, 2023
ebcd319
Add plugins
vikineema Nov 8, 2023
b7c17aa
Add command line tool for generating polygons
vikineema Nov 8, 2023
862dbb3
Add filtering steps to cli
vikineema Nov 8, 2023
7241c13
update main
vikineema Nov 8, 2023
d204652
Update timeseries cli
vikineema Nov 8, 2023
6c2b060
Add final step to write to shapefile
vikineema Nov 8, 2023
45dfd73
Update generate-polygons cli docstring
vikineema Nov 9, 2023
1daa226
Add tests for generate_polygons cli
vikineema Nov 9, 2023
421c81d
Update repository README
vikineema Nov 9, 2023
db3eee3
minor update
vikineema Nov 9, 2023
f95304c
Add overwrite option
vikineema Nov 9, 2023
34396d1
Fix timeseries fp
vikineema Nov 9, 2023
fde31dc
Update workflows
vikineema Nov 9, 2023
74e1f0d
Add test environment set up
vikineema Nov 9, 2023
1607d33
Update to use make commands
vikineema Nov 9, 2023
51090fb
Add step to tear down image
vikineema Nov 9, 2023
0823b74
Update default values
vikineema Nov 9, 2023
a5b8c2c
Fix missing parameter
vikineema Nov 9, 2023
b95895f
Add test for generate timeseries
vikineema Nov 9, 2023
782ceb2
Handle failing tests
vikineema Nov 9, 2023
a95e6e5
Fix test waterbody file path
vikineema Nov 9, 2023
44ff6b7
Update requirements
vikineema Nov 10, 2023
b174751
Add workflow to publish deafrica-waterbodies to PYPI
vikineema Nov 10, 2023
ad4c7cd
Update test data
vikineema Nov 10, 2023
f9142dc
Update tests to use geojson instead of parquet files
vikineema Nov 10, 2023
3569f56
Update ocean filtering plugins
vikineema Nov 10, 2023
6cf2fe2
Update plugin
vikineema Nov 10, 2023
a8766b2
update docs for plugin
vikineema Nov 10, 2023
b6f9255
Update plugin validation
vikineema Nov 10, 2023
906f661
Update the plugin
vikineema Nov 10, 2023
e6f26e3
Add plugin for filtering ocean pixels using polygons
vikineema Nov 10, 2023
656ae0e
Update raster processing function to use updated plugins
vikineema Nov 10, 2023
f650bda
Add function to erode land in the land sea mask
vikineema Nov 15, 2023
06dd914
Buffer land sea masks by 5 pixels
vikineema Nov 16, 2023
cb0e175
Replace polygon generation notebooks
vikineema Nov 17, 2023
cb2d6af
Add comments on parameter selection
vikineema Nov 17, 2023
8e792c1
Update default min_valid_observations
vikineema Nov 17, 2023
b10b4bf
Update default min_valid_observations
vikineema Nov 17, 2023
10b6509
update make polygons cli to match notebooks
vikineema Nov 17, 2023
9e6147d
Update number of pixels to buffer by in plugin
vikineema Nov 17, 2023
96a8a03
update docstrings for make_polygons functions
vikineema Nov 17, 2023
db07f17
Update workflow diagram
vikineema Nov 17, 2023
fb60ec6
Update testing docs
vikineema Nov 17, 2023
a24cd56
Add comments on dask chunks selection
vikineema Nov 17, 2023
c6bf382
Add precision parameter to assign_unique_ids
vikineema Nov 18, 2023
3a7c00a
Update number of polygons across Africa
vikineema Nov 18, 2023
408a15c
Add function to calculate the length of waterbodies
vikineema Nov 20, 2023
62ddb3e
Update polygon generation cli
vikineema Nov 20, 2023
3eb8558
Remove deprecated filter functions
vikineema Nov 20, 2023
5e15b03
Add function to filter out large waterbody polygons
vikineema Nov 20, 2023
fea85bb
Rename function
vikineema Nov 20, 2023
f0cfd72
minor fix
vikineema Nov 20, 2023
b3e5226
Add functions to group polygons by product regions
vikineema Nov 20, 2023
f8fe3ae
Update group polygons
vikineema Nov 20, 2023
9bf8d35
Add step to split polygons by region
vikineema Nov 20, 2023
c273556
Update notebook to match cli
vikineema Nov 20, 2023
b337a63
Merge branch 'update-cli' of https://github.com/digitalearthafrica/de…
vikineema Nov 20, 2023
afc2e18
Remove hardcoded buffer distance
vikineema Nov 20, 2023
1315ade
Update tests for polygon generation
vikineema Nov 20, 2023
aafcf9b
filter large polygons before grouping by wofs_ls regions
vikineema Nov 21, 2023
4498264
Skip converting xarray to numpy
vikineema Nov 21, 2023
6fc9295
Update notebook to match generate polygons cli
vikineema Nov 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ jobs:
max-parallel: 5

steps:
- uses: actions/checkout@v2
- name: Set up Python 3.6
uses: actions/setup-python@v2
- uses: actions/checkout@v4
- name: Set up Python 3.10.6
uses: actions/setup-python@v4
with:
python-version: 3.6
python-version: 3.10.6
- name: Add conda to system path
run: |
# $CONDA is an environment variable pointing to the root of the miniconda directory
Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@

name: Publish deafrica-waterbodies to PyPI
on:
push:
branches:
- main
paths:
- 'deafrica_waterbodies/**'

workflow_dispatch:

jobs:
build-n-publish:
name: Build and publish deafrica-waterbodies to PyPI
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./deafrica_waterbodies

steps:
- name: Checkout the digitalearthafrica/deafrica-waterbodiesrepository
uses: actions/checkout@v3
- name: Set up Python 3.10.6
uses: actions/setup-python@v4
with:
python-version: "3.10.6" # Version range or exact version of a Python version to use, using SemVer's version range syntax
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified.
- name: Install pypa/build
run: python3 -m pip install build --user
- name: Build a binary wheel and a source tarball
run: python3 -m build --sdist --wheel --outdir dist/ .
- name: Publish distribution 📦 to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: deafrica_waterbodies/dist/
23 changes: 12 additions & 11 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,27 @@
name: Push

on:
workflow_dispatch:
push:
branches:
- stable
paths:
- 'dea_waterbodies/**'
- 'deafrica_waterbodies/**'
- '.github/workflows/push.yml'
- 'Dockerfile'

release:
types: [created, edited]

env:
IMAGE_NAME: geoscienceaustralia/dea-waterbodies
IMAGE_NAME: digitalearthafrica/deafrica-waterbodies

jobs:
push:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
fetch-depth: 0

Expand All @@ -29,18 +30,18 @@ jobs:
run: |
echo "RELEASE=${GITHUB_REF/refs\/tags\/}" >> $GITHUB_ENV
- name: Build and Push semver tagged Docker Image for Release
uses: whoan/docker-build-with-cache-action@v4
uses: whoan/docker-build-with-cache-action@v6
if: github.event_name == 'release'
with:
image_name: ${{ env.IMAGE_NAME }}
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DEAFRICA_DOCKER_PASSWORD}}
image_tag: ${{ env.RELEASE }}
- name: Run Trivy vulnerability scanner for Release
uses: aquasecurity/trivy-action@master
if: github.event_name == 'release'
with:
image-ref: 'docker.io/geoscienceaustralia/dea-waterbodies:${{ env.RELEASE }}'
image-ref: 'docker.io/digitalearthafrica/deafrica-waterbodies:${{ env.RELEASE }}'
format: 'table'
exit-code: '1'
ignore-unfixed: true
Expand All @@ -53,18 +54,18 @@ jobs:
git fetch --all --tags
echo "RELEASE=$(git describe --tags)" >> $GITHUB_ENV
- name: Build and Push unstable Docker Image for push to main
uses: whoan/docker-build-with-cache-action@v4
uses: whoan/docker-build-with-cache-action@v6
if: github.event_name != 'release'
with:
image_name: ${{ env.IMAGE_NAME }}
username: ${{ secrets.DOCKER_USER }}
password: ${{ secrets.DOCKER_PASS }}
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DEAFRICA_DOCKER_PASSWORD}}
image_tag: latest,${{ env.RELEASE }}
- name: Run Trivy vulnerability scanner for push to main
uses: aquasecurity/trivy-action@master
if: github.event_name != 'release'
with:
image-ref: 'docker.io/geoscienceaustralia/dea-waterbodies:${{ env.RELEASE }}'
image-ref: 'docker.io/digitalearthafrica/deafrica-waterbodies:${{ env.RELEASE }}'
format: 'table'
exit-code: '1'
ignore-unfixed: true
Expand Down
32 changes: 14 additions & 18 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,37 +3,33 @@ name: Test
on: [push]

env:
ORG: geoscienceaustralia
IMAGE: dea-waterbodies
METADATA_CATALOG: https://raw.githubusercontent.com/GeoscienceAustralia/dea-config/a4f39b485b33608a016032d9987251881fec4b6f/workspaces/sandbox-metadata.yaml
PRODUCT_CATALOG: https://raw.githubusercontent.com/GeoscienceAustralia/dea-config/a4f39b485b33608a016032d9987251881fec4b6f/workspaces/sandbox-products.csv
ORG: digitalearthafrica
IMAGE: deafrica-waterbodies
PRODUCT_CATALOG: https://raw.githubusercontent.com/digitalearthafrica/config/master/prod/products_prod.csv

jobs:
test:
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v2

- name: Pre-pull layers
run: docker-compose pull

uses: actions/[email protected]

- name: Activate Docker cache
uses: satackey/[email protected].8
uses: satackey/[email protected].11
# Ignore the failure of a step and avoid terminating the job.
continue-on-error: true

- name: Build dea-waterbodies image
- name: Setup deafrica-waterbodies test environment
run: |
docker-compose build
make test-env

- name: Test dea-waterbodies image
- name: Run deafrica-waterbodies test
run: |
docker-compose up -d
./setup_test_datacube.sh
docker-compose exec -T waterbodies bash -c "pytest ."
docker-compose down

make run-tests
make clean

- name: Clean deafrica-waterbodies image
run: |
(echo y) | docker container prune
(echo y) | docker image prune
10 changes: 3 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,6 @@ watercourses
*.shp
*.shx

# Explicitly allow test data
!tests/data/*.cpg
!tests/data/*.dbf
!tests/data/*.prj
!tests/data/*.shp
!tests/data/*.shx

# graphs
*.graphml
*.gml
Expand All @@ -26,3 +19,6 @@ watercourses
*.csv
*.geojson
*.json

# Explicitly allow test data
!tests/data/*.geojson
6 changes: 2 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,6 @@ run-tests:
docker compose exec -T waterbodies bash -c "coverage xml"
docker compose exec -T waterbodies bash -c "coverage html"

test:
docker-compose exec waterbodies pytest tests

down: ## Bring down the system
docker compose down

Expand All @@ -71,4 +68,5 @@ pip_compile:
requirements.in

lint:
docker-compose exec waterbodies black --check dea_waterbodies
docker-compose exec waterbodies black --check deafrica_waterbodies
docker-compose exec waterbodies isort --check deafrica_waterbodies
47 changes: 23 additions & 24 deletions README.rst
Original file line number Diff line number Diff line change
@@ -1,64 +1,63 @@
.. image:: figures/dea_logo_wide.jpg
.. image:: figures/deafrica_logo_wide.jpg
:width: 900
:alt: Digital Earth Australia logo
:alt: Digital Earth Africa logo

Digital Earth Australia Waterbodies
Digital Earth Africa Waterbodies
###################################

.. image:: https://img.shields.io/badge/License-Apache%202.0-blue.svg
:target: https://opensource.org/licenses/Apache-2.0
:alt: Digital Earth Australia logo
:alt: Digital Earth Africa logo

.. image:: https://github.com/GeoscienceAustralia/dea-waterbodies/actions/workflows/lint.yml/badge.svg
:target: https://github.com/GeoscienceAustralia/dea-waterbodies/actions/workflows/lint.yml
.. image:: https://github.com/digitalearthafrica/deafrica-waterbodies/actions/workflows/lint.yml/badge.svg
:target: https://github.com/digitalearthafrica/deafrica-waterbodies/actions/workflows/lint.yml
:alt: Linting status

.. image:: https://github.com/GeoscienceAustralia/dea-waterbodies/actions/workflows/test.yml/badge.svg
:target: https://github.com/GeoscienceAustralia/dea-waterbodies/actions/workflows/test.yml
.. image:: https://github.com/digitalearthafrica/deafrica-waterbodies/actions/workflows/test.yml/badge.svg
:target: https://github.com/digitalearthafrica/deafrica-waterbodies/actions/workflows/test.yml
:alt: Testing status

**License:** The code in this repository is licensed under the `Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>`_. Digital Earth Australia data is licensed under the `Creative Commons by Attribution 4.0 license <https://creativecommons.org/licenses/by/4.0/>`_.
**License:** The code in this repository is licensed under the `Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>`_. Digital Earth Africa data is licensed under the `Creative Commons by Attribution 4.0 license <https://creativecommons.org/licenses/by/4.0/>`_.

**Contact:** If you need assistance with any of the Jupyter Notebooks or Python code in this repository, please post a question on the `Open Data Cube Slack channel <http://slack.opendatacube.org/>`_. If you would like to report an issue with this repo, or suggest feature requests, you can `open an issue on this repository <https://github.com/GeoscienceAustralia/dea-waterbodies/issues>`_. Non-technical questions about Digital Earth Australia Waterbodies can be sent to [email protected].
**Contact:** If you need assistance with any of the Jupyter Notebooks or Python code in this repository, please post a question on the `Open Data Cube Slack channel <http://slack.opendatacube.org/>`_. If you would like to report an issue with this repo, or suggest feature requests, you can `open an issue on this repository <https://github.com/digitalearthafrica/deafrica-waterbodies/issues>`_. Non-technical questions about Digital Earth Africa Waterbodies can be sent to [email protected].

**Citing Digital Earth Australia Waterbodies:**
**Citing Digital Earth Africa Waterbodies:**

Krause, Claire E.; Newey, Vanessa; Alger, Matthew J.; Lymburner, Leo. 2021. "Mapping and Monitoring the Multi-Decadal Dynamics of Australia’s Open Waterbodies Using Landsat" Remote Sens. 13, no. 8: 1437. https://doi.org/10.3390/rs13081437

----------

Up to date information about the extent and location of surface water provides all Australians with a common understanding of this valuable and increasingly scarce resource. Water detection algorithms are now being routinely applied to continental and global archives of satellite imagery. However, water resource management decisions typically take place at the waterbody rather than pixel scale.
Up to date information about the extent and location of surface water across Africa provides stakeholders with a common understanding of this valuable and increasingly scarce resource. Water detection algorithms are now being routinely applied to continental and global archives of satellite imagery. However, water resource management decisions typically take place at the waterbody rather than pixel scale.

This repository presents a workflow for generating polygons of persistent waterbodies from Landsat observations, enabling improved monitoring and management of water assets across Australia. We use `Digital Earth Australia’s (DEA) Water Observations from Space (WOfS) water classifier <https://www.ga.gov.au/dea/products/wofs>`_, which provides a water classified output for every available Landsat scene, to determine the spatial locations and extents of waterbodies across Australia. DEA Waterbodies uses Geoscience Australia’s archive of over 30 years of Landsat satellite imagery to identify where almost 300,000 waterbodies are in the Australian landscape.
This repository presents a workflow for generating polygons of persistent waterbodies from Landsat observations, enabling improved monitoring and management of water assets across Africa. We use `Digital Earth Africa’s (DE Africa) Water Observations from Space (WOfS) water classifier <https://docs.digitalearthafrica.org/en/latest/data_specs/Landsat_WOfS_specs.html>`_, which provides a water classified output for every available Landsat scene, to determine the spatial locations and extents of waterbodies across Africa. DE Africa Waterbodies uses Digital Earth Africa’s archive of over 30 years of Landsat satellite imagery to identify where over 700,000 waterbodies are in the African landscape.

.. image:: figures/WorkflowDiagram.JPG
:width: 900
:alt: Digital Earth Australia Waterbodies workflow diagram
:alt: Digital Earth Africa Waterbodies workflow diagram

*Digital Earth Australia Waterbodies workflow*
*Digital Earth Africa Waterbodies workflow*

Each polygon was then used to generate a time series of WOfS, providing a history of the change in the wet surface area of each waterbody every ~16 days since 1987.
Each polygon was then used to generate a time series of WOfS, providing a history of the change in the wet surface area of each waterbody every ~16 days since 1984.

.. image:: figures/DEAWaterbodiesESRIBasemap.jpeg
.. image:: figures/DEAfricaWaterbodiesESRIBasemap.png
:width: 900
:alt: Digital Earth Australia Waterbodies

*Digital Earth Australia Waterbodies. Waterbody polygons mapped by this product are shown in blue. There are almost 300,000 across Australia.*
*Digital Earth Africa Waterbodies. Waterbody polygons mapped by this product are shown in blue. There are over 700,000 across Africa.*

DEA Waterbodies supports users to understand and manage water across Australia. DEA Waterbodies provides new insights into local through to national-scale surface water spatio-temporal dynamics by enabling the monitoring of important landscape features such as lakes and dams, improving our ability to use earth observation data to make meaningful decisions. It can be used to gain insights into the severity and spatial distribution of drought, or identify potential water sources for aerial firefighting during bushfires.

For more information about the DEA Waterbodies product, including instructions for accessing the product, frequently asked questions and data download links, see the `Digital Earth Australia website <https://www.ga.gov.au/dea/products/dea-waterbodies>`_.
DE Africa Waterbodies supports users to understand and manage water across Africa. DE Africa Waterbodies provides new insights into local through to continental-scale surface water spatio-temporal dynamics by enabling the monitoring of important landscape features such as lakes and dams, improving our ability to use earth observation data to make meaningful decisions. It can be used to gain insights into the severity and spatial distribution of drought, or identify potential water sources.
For more information about the DE Africa Waterbodies product, including instructions for accessing the product, frequently asked questions and data download links, see the `Digital Earth Africa Data Catalogue <https://docs.digitalearthafrica.org/en/latest/data_specs/Waterbodies_specs.html>`_.

Installation
------------

DEA Waterbodies has some requirements which can be installed with pip:
DE Africa Waterbodies has some requirements which can be installed with pip:

.. code-block:: bash

pip install --extra-index-url="https://packages.dea.ga.gov.au" -r requirements.txt

Once you have installed the requirements for DEA Waterbodies, install the module locally:
Once you have installed the requirements for DE Africa Waterbodies, install the module locally:

.. code-block:: bash

Expand All @@ -70,4 +69,4 @@ A command line interface is available for generating wet area time series for a

.. code-block:: bash

waterbodies-ts --help
deafrica-waterbodies --help
Loading
Loading