Pattern 7 - Water bodies detection based on NDWI and the otsu threshold v1.0.0

  • one optional input parameter of type Directory?
  • one output parameter of type Directory

This scenario may take as input an acquisition, an optional input, applies an algorithm and generates an output

Implementation: detects water bodies using the Normalized Difference Water Index (NDWI) and Otsu thresholding.

This software is licensed under the terms of the Apache License 2.0 license - SPDX short identifier: Apache-2.0

2025-01-01 - 2026-08-28T13:26:42.314 Copyright Make Earth Observation Great Again - > https://ror.org/9999cx000

Project Team

Authors

Name Email Organization Role Identifier
Lane, Lois lois.lane@meoga.com Make Earth Observation Great Again Project administration https://orcid.org/0000-9999-0000-9999
Kent, Clark clark.kent@meoga.com Make Earth Observation Great Again Supervision https://orcid.org/9999-0000-9999-0000

Contributors

Name Email Organization Role Identifier
Luthor, Lex lex.luthor@meoga.com Make Earth Observation Great Again Software None

User Manual

User Manual can be found on https://eoap.github.io/application-package-patterns/pattern-1/.

Runtime environment

Supported Operating Systems

  • Linux
  • macOS
  • macOS Server

Requirements


pattern-7

CWL Class

Workflow

Inputs

Id Type Label Doc
aoi string area of interest area of interest as a bounding box
epsg string EPSG code EPSG code
bands array of string bands used for the NDWI bands used for the NDWI
item_1 Directory Mandatory Landsat-8/9 acquisition reference Landsat-8/9 acquisition reference
item_2 One of: Optional Landsat-8/9 acquisition reference Optional Landsat-8/9 acquisition reference

Steps

Id Runs Label Doc
step #clt Detect water bodies Detect water bodies based on the NDWI and otsu threshold from Landsat-

Outputs

Id Type Label Doc
water_bodies Directory Water bodies detected Water bodies detected based on the NDWI and otsu threshold

OGC API - Processes

When pattern-7 Workflow is exposed through OGC API - Processes - Part 1: Core, inputs and outputs fields below represent the interface of the getProcessDescription API.

Inputs

pattern-7 OGC API Processes JSON Inputs schema

Outputs

pattern-7 OGC API Processes JSON Outputs schema

UML Diagrams

Activity diagram

Learn more about the Activity diagram below.

pattern-7 flow diagram

Component diagram

Learn more about the Component diagram below.

pattern-7 flow diagram

Class diagram

Learn more about the Class diagram below.

pattern-7 flow diagram

Sequence diagram

Learn more about the Sequence diagram below.

pattern-7 flow diagram

State diagram

Learn more about the State diagram below.

pattern-7 flow diagram

Run in step

step

clt

CWL Class

CommandLineTool

Inputs

Id Option Type
item_1 --input-item-1 Directory
item_2 --input-item-2 One of:
aoi --aoi string
epsg --epsg string
band --band One of:

Execution usage example:

runner pattern-7 \
--input-item-1 <ITEM_1> \
(--input-item-2 <ITEM_2>) \
--aoi <AOI> \
--epsg <EPSG> \
--band <BAND>