HyperBench
HyperBench is a synthetic benchmarking framework for fusion based hyperspectral super-resolution (HSR) methods. It provides a standardized, reproducible pipeline for evaluating models using controlled degradations, consistent metrics, and structured experiment outputs.
HyperBench is designed as an inference-time evaluation tool. It does not perform model training. Instead, it enables users to test already-trained models under a wide range of synthetic scenarios.
Project Home: https://github.com/ritikgshah/HyperBench. Please visit the github repository for exact implementation details and documentation. This PyPi project is solely meant to serve as the distribution method.
Key Features
Synthetic Degradation Pipeline
HyperBench generates realistic low-resolution inputs from high-resolution hyperspectral scenes:
- Spatial degradation via configurable Point Spread Functions (PSFs)
- Spectral degradation via configurable Spectral Response Functions (SRFs)
- Controlled noise injection using SNR (dB)
Flexible Experiment Design
Users can define experiments using:
- Explicit degradation specifications
- PSF configurations (type, sigma, kernel size)
- Noise levels (spatial and spectral)
- MSI band counts
Model-Agnostic Adapter Interface
HyperBench works with any model that follows a simple contract:
def run_pipeline(HR_MSI, LR_HSI, srf, psf=None, metadata=None): return prediction
or
return prediction, stats
Supported formats: - NumPy - TensorFlow - PyTorch
Built-in Metrics
- RMSE
- PSNR
- SSIM
- UIQI
- ERGAS
- SAM
Output Clipping Policy
Optional clipping to [0,1] before metric evaluation.
Structured CSV Logging
Each experiment produces structured CSV output with: - parameters - metrics - optional model stats
Visualization Utilities
- RGB visualization
- band inspection
- PSF and SRF visualization
- spectral plots
Framework Support
- NumPy
- TensorFlow
- PyTorch
Automatic device handling included.
Installation
pip install hyperbench
Command Line Interface
hyperbench run
--config config.yaml
--pipeline-module path/to/model.py
--method-name MyModel
--input-backend tensorflow
Configuration
Supports JSON and YAML configuration files.
Design Philosophy
- Reproducibility
- Standardization
- Flexibility
Scope
HyperBench is strictly an evaluation framework.
License
MIT License
Metadata
Release files for hyperbench 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hyperbench-0.1.0.tar.gz | 35.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hyperbench-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 83.0 kB
Release files / hyperbench-0.1.0.tar.gz
| Download URL | hyperbench-0.1.0.tar.gz |
|---|---|
| Size | 35.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cdcb7219f158975faae3a41f692f45c4dba5cd5d315b2f1229cbedb1cdc56776
|
|
BLAKE2b-256 checksum How to use checksums |
dc4b84060e55c58213a9eec0c7785ab300cc92e219d9376d94ebda09e3575682
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|
Release files / hyperbench-0.1.0-py3-none-any.whl
| Download URL | hyperbench-0.1.0-py3-none-any.whl |
|---|---|
| Size | 47.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2d48193b1f3cf284280a0ed99deac88b9c657628386c4b960dde2d77f3ba6efe
|
|
BLAKE2b-256 checksum How to use checksums |
006ecea4bc9633b0c7e994fbb877c57fc07a53a3e30e763ec40d146594f40aac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.25
|