Skip to main content

Python library for enumerating ASF product inputs

Project description

ASF Enumeration

Enumeration code for ARIA S1 GUNW products

>>> from asf_enumeration import aria_s1_gunw

>>> frames = aria_s1_gunw.get_frames(flight_direction='ASCENDING', path=175)
>>> frames[0]
AriaFrame(id=27236, path=175, flight_direction='ASCENDING', polygon=<POLYGON ((30.157 1.767...>)))

>>> acquisitions = aria_s1_gunw.get_acquisitions(frames[0])
>>> acquisitions[0]
Sentinel1Acquisition(date=datetime.date(2014, 10, 17), frame=AriaFrame(...), products=[<asf_search.ASFProduct>])

Installation

In order to easily manage dependencies, we recommend using dedicated project environments via Anaconda/Miniconda or Python virtual environments.

asf_enumeration can be installed into a conda environment with:

conda install -c conda-forge asf_enumeration

or into a virtual environment with:

python -m pip install asf_enumeration

Usage

These are the main data classes used by the asf_enumeration.aria_s1_gunw module

  • AriaFrame which represents all metadata associated with a ARIA frame (id, path, flight direction and it's polygon)
  • Sentinel1Acquisition which represents all available Sentinel-1 SLC's over an ARIA frame on a specific date (products, date, frame)

The asf_enumeration.aria_s1_gunw module exposes these functions

  • get_frames get all ARIA frames based on filter critiria (geometry, flight direction, path)
  • get_frame get a single ARIA frame based on it's ID
  • get_acquisitions get all Sentinel-1 acquisitions for a given ARIA frame
  • get_acquisition get a Sentinel-1 acquisition for a given ARIA frame and date
  • get_product get an ARIA product for a given reference date, secondary date, and ARIA frame, if the product exists
  • product_exists check if an ARIA product exists in the ASF archive given reference date, secondary date, and ARIA frame

Getting Frames

aria_s1_gunw.get_frames allows for filtering based on any shapely.Geometry, as well as flight_direction and path

frames_over_point = aria_s1_gunw.get_frames(geometry=shapely.Point(122.78, -8.55))
frames_filtered  = aria_s1_gunw.get_frames(flight_direction='DESCENDING', path=2)

A single frame can be looked up using aria_s1_gunw.get_frame

frame = aria_s1_gunw.get_frame(100)

Getting Acquisitions

aria_s1_gunw.get_acquisitions returns all the Sentinel-1 acqusitions over a ARIA frame. It takes either the ARIA frame ID or an AriaFrame object as input.

acquisitions_frame_id = aria_s1_gunw.get_acquisitions(9852)
frame = aria_s1_gunw.get_frame(9852)
acquisitions_frame_obj = aria_s1_gunw.get_acquisitions(frame)

An acquisition for a specific date can be found using aria_s1_gunw.get_acquisition

single_acquisition = aria_s1_gunw.get_acquisition(frame=9852, date=datetime.date(2014, 11, 3))

Getting Products

aria_s1_gunw.get_product gets an ARIA product from the ASF archive if it exists.

# S1-GUNW-D-R-163-tops-20250527_20250503-212910-00121E_00010S-PP-07c7-v3_0_1
product = aria_s1_gunw.get_product(datetime.date(2025, 5, 27), datetime.date(2025, 5, 3), 25388)

Checking if a Product Exists

aria_s1_gunw.product_exists checks if an ARIA product already exists in the ASF archive

# S1-GUNW-D-R-163-tops-20250527_20250503-212910-00121E_00010S-PP-07c7-v3_0_1
aria_s1_gunw.product_exists(datetime.date(2025, 5, 27), datetime.date(2025, 5, 3), 25388)

Development

  1. Install git and conda.
  2. Clone the repository.
    git clone git@github.com:ASFHyP3/asf-enumeration.git
    cd asf-enumeration
    
  3. Create and activate the conda environment.
    conda env create -f environment.yml
    conda activate asf-enumeration
    
  4. Run the tests.
    pytest
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asf_enumeration-0.3.0.tar.gz (5.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

asf_enumeration-0.3.0-py3-none-any.whl (5.5 MB view details)

Uploaded Python 3

File details

Details for the file asf_enumeration-0.3.0.tar.gz.

File metadata

  • Download URL: asf_enumeration-0.3.0.tar.gz
  • Upload date:
  • Size: 5.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for asf_enumeration-0.3.0.tar.gz
Algorithm Hash digest
SHA256 19fbd3ef141f3e23eeffe9b95734e7344ad639d4fd2ef7dc1897baffecdf8be5
MD5 855f36986579ab665c74096625d5df8c
BLAKE2b-256 70dd41ec5edd18cd9665b500bf6def314cc361ddab547da6f45fe59652696ab7

See more details on using hashes here.

File details

Details for the file asf_enumeration-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for asf_enumeration-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e3e79852f80b0147194e5abb3f4bd2e7d0aac065b32e49a84d67ef9d00da1646
MD5 499cd4560651f9200c866de17690a2ab
BLAKE2b-256 e9ffc78dc494d66fbd586917bde0287f93f9a985083c94b7a778b2416ef7ece4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page