the Creative Commons Attribution 4.0 License.
the Creative Commons Attribution 4.0 License.
HyperGas 1.0: A Python package for analyzing hyperspectral data for greenhouse gases from retrieval to emission rate quantification
Abstract. We present HyperGas, an open-source Python package for the retrieval and estimation of atmospheric greenhouse gas concentration enhancements and plume emission rates using data from hyperspectral imagers such as the PRecursore IperSpettrale della Missione Applicativa (PRISMA), the Environmental Mapping and Analysis Program (EnMAP), and the Earth Surface Mineral Dust Source Investigation (EMIT). The software is designed for compatibility with any three-dimensional hyperspectral radiance dataset. HyperGas supports multiple retrieval algorithms, including matched filter and lognormal matched filter, and offers two emission rate estimation methods: the integrated mass enhancement and cross-sectional flux approaches. The software provides a scalable batch-processing framework that supports data workflows from radiances to emission rates and an interactive graphical user interface that enables visualization of gas plumes. Built on high-level data structures such as xarray and CSV, HyperGas simplifies metadata handling and facilitates robust analysis and visualization. The package provides a robust foundation for community use and expansion. This toolkit aims to advance atmospheric monitoring capabilities and support both research and operational applications of greenhouse gas monitoring.
- Preprint
(7549 KB) - Metadata XML
- BibTeX
- EndNote
Status: open (until 08 Mar 2026)
- RC1: 'Comment on egusphere-2025-6127', Zhipeng Pei, 17 Jan 2026 reply
Data sets
HyperGas Datasets Xin Zhang https://doi.org/10.5281/zenodo.18162026
Model code and software
HyperGas HyperGas Team https://github.com/SRON-ESG/HyperGas/
Interactive computing environment
HyperGas Notebooks Xin Zhang https://doi.org/10.5281/zenodo.17854157
Viewed
| HTML | XML | Total | BibTeX | EndNote | |
|---|---|---|---|---|---|
| 205 | 148 | 18 | 371 | 12 | 16 |
- HTML: 205
- PDF: 148
- XML: 18
- Total: 371
- BibTeX: 12
- EndNote: 16
Viewed (geographical distribution)
| Country | # | Views | % |
|---|
| Total: | 0 |
| HTML: | 0 |
| PDF: | 0 |
| XML: | 0 |
- 1
Zhang et al. extensively build upon a number of previously proposed algorithms, including concentration retrieval, plume detection, and emission rate estimation, and integrate them into a practical, open-source toolkit for greenhouse gas point-source detection and quantification. In particular, the use of the open-source Python package tobac, originally developed for cloud tracking, for emission source detection is novel and appears to perform well. Overall, this work provides a valuable reference for the greenhouse gas emission quantification community. The manuscript is well within the scope of Geoscientific Model Development and is suitable for publication after minor revisions. Specific comments are provided below.
Since this framework is intended not only for spaceborne hyperspectral imagers but also potentially for airborne instruments in the future, using unit absorption spectra (k) in units of ppm·m is recommended to improve applicability and inter-instrument comparability (see, e.g., DOI: 10.1016/j.rse.2021.112574).
In addition, unlike the commonly used per-column basis analysis, this work derives reference spectra based on clustering. While this approach is reasonable, as also noted by the authors, detector arrays often exhibit cross-track variability, especially for instruments with strong smile effects. Under such conditions, I do not expect a clustering-based approach (regardless of how surface types are classified) to outperform the per-column approach, at least over homogeneous surfaces. Have the authors conducted any comparison between the clustering-based and per-column-based methods?
Line 14: It would be better to include the chemical formula (CH4) after methane, consistent with the notation used for CO2.
Line 16: It may be more appropriate to replace “for identifying emission sources” with “for quantifying point source emissions” in this context.
Line 19: It may be more appropriate to replace “methane and CO2 emission plumes from individual facilities” with “methane and carbon dioxide point sources.” Also, please avoid mixing full names and abbreviations (methane vs. CO2); abbreviations should be used consistently after being defined (see DOI: 10.1126/sciadv.adh2391). Please check and correct this writing issue throughout the entire manuscript (e.g., Line 26, Line 37, etc.).
Line 116: Please define FWHM (full width at half maximum) at its first occurrence before using the abbreviation.
Equations (3) and (5) appear to be inconsistent with the corresponding equations in the cited reference. Please check and revise them accordingly.
Line 165: It would be better to replace “in (for example) urban areas” with “in heterogeneous areas.”
Regarding Figure 5, it is unclear what the 30° azimuth difference refers to and how it is calculated. Please clarify what angle is being compared and how the orientation of the rectangular masks is defined. In Figure 5(b), when compared with Figure 5(a), the gray rectangle on the right also appears to contain a methane plume, but in Figure 5(c) this potential plume is excluded. Could the authors clarify why this candidate was removed and which specific criterion was responsible for the exclusion? Moreover, the two orange rectangles in Figure 5(b) appear more likely to originate from the same point source. Visual discontinuities in plumes are common, especially in high-spatial-resolution but relatively low-precision (compared to TROPOMI) methane plume detection. Please justify why these are treated as two separate candidates rather than merged into a single plume.
Line 185: The description of how the mask is determined based on the angle is confusing. Please reorganize and clarify this part.
Line 235: Why not directly resample the original 25 m data to 30 m or 60 m, instead of using the current resampling strategy?