HYPSO Python Package
"hypso" is a simple, fast, processing and visualization tool for the hyperspectral images taken by the HYPSO-1 and HYPSO-2 satellites developed by the Norwegian University of Science and Technology (NTNU).
The HYPSO package can process the following data products for HYPSO-1 and HYPSO-2 hyperspectral captures:
- L1a (raw data)
- L1b (top-of-atmosphere radiance)
- L1c (top-of-atmosphere radiance with georeferencing)
- L1d (top-of-atmosphere reflectance with georeferencing)
Links
- Documentation: https://ntnu-smallsat-lab.github.io/hypso-package/ (NB: out of date)
- Source Code: https://github.com/NTNU-SmallSat-Lab/hypso-package
- Issues: https://github.com/NTNU-SmallSat-Lab/hypso-package/issues
- PyPI URL: https://pypi.org/project/hypso/
Installation
The HYPSO package can be installed using the Python package manager pip:
pip install hypso
If you encounter an error about gdal, try the following commands:
sudo apt-get install gdal-bin libgdal-dev
pip install gdal==3.8.4
pip install hypso
Calibration Libraries
Radiometric calibration files for HYPSO-1 and HYPSO-2 are distributed in two separate Python packages which can also be installed using pip:
- hypso1_calibration: https://pypi.org/project/hypso1-calibration/
- hypso2_calibration: https://pypi.org/project/hypso2-calibration/
It is highly recommended to install these packages alongside the HYPSO package using the following commands:
pip install hypso1-calibration
pip install hypso2-calibration
Development
-
Create an account at PyPI.org and request access to the hypso project (contact Cameron or Aria, updated 2025-02-17)
-
Add your PyPI.org login credentials and token to
~/.pypirc -
Install the
setuptoolsbuild system,buildpackage andtwineusing pip -
Update the version number in
pyproject.toml- Calendar versioning system is used
- Use the version number format "YY.MM.X" for normal releases
- Use the version number format "YY.MM.Xa1" for alpha releases
- Use the version number format "YY.MM.Xb1" for beta releases
-
Build the package with
python3 -m build -
Upload the newly built package to PyPI:
python3 -m twine upload --repository pypi dist/* -
View the project at pypi.org/project/hypso/
-
Important Considerations:
- Importing files needs to be done using package file imports like the following line of code.
full_rad_coeff_file = files('hypso.calibration').joinpath( f'data/{"radiometric_calibration_matrix_HYPSO-1_full_v1.csv"}')- Any non-python file that wants to be included to be uploaded needs to be added in the
MANIFEST.infile - Packages names and version in both the
pyproject.tomlandmeta.yamlare case and space sensitive, be carefull with the spacing. Avoid using specific versions (==) and try to use higher than (>=) as it makes it easier for future compatibility.
Authors
- Maintainers: Cameron Penne (@CameronLP)
- Calibration: Marie Henriksen, Joe Garett, Aria Alinejad
- Georeferencing: Sivert Bakken, Dennis Langer
- Package: Alvaro Romero
Metadata
Release files for hypso 26.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hypso-26.5.1.tar.gz | 5.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hypso-26.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.1 MB
Release files / hypso-26.5.1.tar.gz
| Download URL | hypso-26.5.1.tar.gz |
|---|---|
| Size | 5.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
282913ae8497726b334b985c966befa6ffd443860c0c7d62891c1ceed7b8e7c5
|
|
BLAKE2b-256 checksum How to use checksums |
2a6de2a6a02a686eaf2b435617317228f42d54d57cc572103ce525a714e4aeea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|
Release files / hypso-26.5.1-py3-none-any.whl
| Download URL | hypso-26.5.1-py3-none-any.whl |
|---|---|
| Size | 5.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7179fdad22cc203bca958593522a03c909db6a6ffb5627461b6b4949af4c79a7
|
|
BLAKE2b-256 checksum How to use checksums |
cf58bdb4080fc720ce54e9f7db434560789111549f1989b2b61ac22b266e9074
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|