Day 4

Detailed paper information

Back to list

Paper title A Python software library for "Data-Driven Emission Quantification" (ddeq) of cities and point sources in satellite images
  1. Gerrit Kuhlmann Empa - Swiss Federal Laboratories for Materials Science and Technology Speaker
  2. Erik Koene Empa - Swiss Federal Laboratories for Materials Science and Technology, Dübendorf, Switzerland
  3. Dominik Brunner Empa - Swiss Federal Laboratories for Materials Science and Technology
Form of presentation Poster
  • A1. Atmosphere
    • A1.04 Greenhouse Gases
Abstract text Anthropogenic emissions from cities and power plants contribute significantly to air pollution and climate change. Their emission plumes are visible in satellite images of atmospheric trace gases (e.g. CO₂, CH₄, NO₂, CO and SO₂) and data-driven approaches are increasingly being used for quantifying the sources.

We present an open-source software library written in Python for detecting and quantifying emissions in satellite images. The library provides all processing steps from the pre-processing of the satellite images, the detection of the plumes, the quantification of emissions, to the extrapolation of individual estimates to annual emissions. The plume detection algorithm identifies regions in satellite images that are significantly enhanced above the background and assigns them to a list of potential sources such as cities, power plants or other facilities. Overlapping plumes are automatically detected and segmented. The plume shape is described by a set of polygons and a centerline along the plume ridge. Functions are available for converting geographic coordinates (longitude and latitude) to along- and across-plume coordinates. The emissions can be quantified using various data-driven methods such as computing cross-sectional fluxes or fitting a Gaussian plume model. The models can account for the decay of, for example, NO₂ downstream of the source. Furthermore, it is possible to fit two species simultaneously (e.g. CO₂ and NO₂) to constrain the shape of the CO₂ plume using NO₂ observation that typically have better accuracy. Annual emissions can be obtained by fitting a periodic C-spline to a time series of individual estimates.

A tutorial is available using Jupyter Notebooks to introduce the features of the library. Examples are demonstrated for Sentinel-5P NO₂ observations and for synthetic CO₂ and NO₂ satellite observations available for the CO2M satellite constellation. The library and its tutorial are available on Gitlab ( and can conveniently be installed using Python's package installer:

python -m pip install ddeq

The library is licensed under the "GNU Lesser General Public License" and can therefore be used in both open-source and proprietary software. Interested users are encouraged to contribute to the development of the library by reporting bugs, requesting or implementing new features and applying the library for detecting and quantifying emission plumes. If you are interested in contributing to the development of the software library, please contact the developers.