Skip to content

Repository files navigation

sentinel1decoder

PyPI version PyPI Documentation

A Python decoder for Sentinel-1 Level 0 files. The Level 0 format consists of the raw space packets downlinked from the Sentinel-1 spacecraft. This package decodes these packets and produces the raw I/Q sensor output from the SAR instrument, which can then be further processed to focus a SAR image.

An example Jupyter notebook demonstrating the process of decoding Level 0 data and forming an image is available on GitHub here or on nbviewer.org here.

This code was originally based on an implementation in C by jmfriedt, which can be found here.

The core decoding functions are implemented in Rust and run multithreaded, so I/Q extraction is quite fast. Bypass, 3/4/5-bit BAQ, and FDBAQ are supported.

Documentation

Full documentation — API reference, ESA spec links, and usage details.

Installation

pip install sentinel1decoder

Requires Python 3.9–3.13, NumPy 2.0+, and Pandas.

Quick start

import sentinel1decoder

l0file = sentinel1decoder.Level0File(filename)
l0file.packet_metadata  # packet metadata
l0file.ephemeris  # satellite ephemeris
iq_data = l0file.get_acquisition_chunk_data(0)  # decode I/Q for acquisition chunk 0

Resources

About

Python decoder for Sentinel-1 level0 files

Resources

Stars

59 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages