Skip to content

stactools-packages/sentinel1

Repository files navigation

stactools-sentinel1

CI PyPI Binder

Sentinel-1 subpackage for stactools

This project contains multiple subpackages that work with different Sentinel 1 data products.

RTC

The stactools.sentinel1.rtc subpackage and stac sentinel1 rtc commands deal with the Sentinel 1 Radiometric Terrain Corrected (RTC) data hosted on AWS and produced by Indigo Ag. This data was processed from original Ground Range Detected (GRD) scenes into a Radiometrically Terrain Corrected, tiled product suitable for analysis.

See https://registry.opendata.aws/sentinel-1-rtc-indigo for more information about this dataset.

GRD

The stactools.sentinel1.grd subpackage and stac sentinel1 grd commands deal with Sentinel 1 Ground Range Detected (GRD) Level-1 product. It is used to create STAC Items from the SAFE manifest format of the data hosted on Microsoft Azure.

SLC

The stactools.sentinel1.slc subpackage and stac sentinel1 slc commands deal with Sentinel 1 Single Look Complex (SLC) Level-1 product.

Example Outputs

RTC

GRD

SLC

How to use

Install package

pip install stactools-sentinel1

RTC usage

Create a STAC Item (RTC)

stac sentinel1 rtc create-item \
  s3://sentinel-s1-rtc-indigo/tiles/RTC/1/IW/12/S/YJ/2016/S1B_20161121_12SYJ_ASC \
  S1B_20161121_12SYJ_ASC

Create a STAC Static Catalog (RTC)

https://github.com/scottyhq/sentinel1-rtc-stac

GRD usage

Description of the command line functions

stac sentinel1 grd create-item source destination

Use stac sentinel1 grd --help to see all subcommands and options.

SLC usage

Description of the command line functions

stac sentinel1 slc create-item source destination

Use stac sentinel1 slc --help to see all subcommands and options.

Development instructions

Set up virtual environment

git clone https://github.com/YOUR_FORK/sentinel1
# Use a virtual environment
conda env create
conda activate stactools-sentinel1
# Development install of dependencies
pip install -e ./
pip install -r requirements-dev.txt

Make changes on a new branch, test, open a pull request

git checkout -b newfeature
# make changes

# Run CI tests locally
./scripts/cibuild

# Or run individual scripts
./scripts/lint
./scripts/format
./scripts/test

# If you're changing the output STAC metadata, update the examples
./scripts/create_examples.py

# Once tests pass, commit changes and create a pull request