Skip to main content

vibeels

DOI

vibeels is a PyQt6 application for extracting and calibrating vibrational electron energy-loss spectroscopy (EELS) spectra. It supports map-based and snapshot-stack workflows, with zero-loss peak (ZLP) alignment and calibrated spectrum export.

Status

vibeels is under active development. Review results carefully before using them in published analysis.

Features

  • Signal1D 2D map workflow with multiple polygon ROIs.
  • Signal2D snapshot-stack workflow with a single rectangular detector-band ROI.
  • Shared plot controls for zoom, ROI editing, zoom-out, and ROI clearing.
  • Intensity masking using a full-map histogram for 2D map data.
  • Per-spectrum ZLP fitting, alignment, and calibrated summed spectra.
  • Raw and aligned snapshot previews with independent zoom control.
  • Export of spectra, masks, figures, parameters, and reproducibility bundles.
  • Session saving and restoration.
  • Runtime application icon support on macOS and Windows.

Installation

From PyPI

After the package is published to PyPI:

python -m pip install vibeels

From source

git clone https://github.com/shdshim/vibeels.git
cd vibeels
python -m pip install -e .

For a conda-based workflow, create and activate an environment first:

conda create -n vibeels python=3.11
conda activate vibeels
python -m pip install -e .

How to use

  1. Launch the application and load an EELS dataset with Load EELS DM3/DM4.
  2. If needed, load a reference image in the Image tab.
  3. Use the shared plot controls above the figures:
    • Zoom: mouse zoom behavior for all four main plots.
    • ROI: ROI editing on the top-left raw-data plot.
    • Zoom Out: reset zoom for all four main plots.
    • Clear ROI: remove the active ROI selection.
  4. For Signal1D map data, use the 2D Map tab:
    • draw one or more polygon ROIs on the top-left map preview.
    • adjust the map energy range.
    • use the full-map intensity histogram to set the mask range.
    • click Apply ROI / Alignment to extract, align, and sum all spectra inside any polygon and inside the intensity range.
  5. For Signal2D snapshot-stack data, use the 1D Spot tab:
    • draw or set one rectangular detector-y ROI.
    • set the snapshot range and snapshot index.
    • click Apply ROI / Alignment to align snapshots and build the summed spectrum.
  6. Inspect the Calibration tab to review the ZLP fit, FWHM, calibrated spectrum, and previews.
  7. Save selected spectra in the Saved tab, export the processed bundle, or save the session state for later review.

ROI and Plot Controls

  • 2D map mode allows multiple polygon ROIs. Pixels inside any polygon are included.
  • 1D snapshot mode allows one rectangular detector-y ROI.
  • In 2D map mode, the intensity histogram always represents the full integrated image, not only the ROI pixels.
  • Right-click in Zoom mode resets only the clicked plot.
  • Right-click inside an ROI in ROI mode clears that ROI.
  • Zoom state is preserved during ROI changes and snapshot navigation unless Zoom Out or right-click zoom reset is used.

Outputs

Exports include:

  • calibrated spectra
  • selected masks and preview images
  • ZLP fit data
  • processing parameters
  • reproducibility scripts and figures
  • saved session state

Run

python -m vibeels

If installed from the package entry point:

vibeels

Build distribution

python -m pip install build twine
python -m build
python -m twine check dist/*

Release Metadata

Citation

If you use vibeels in research, cite the software using the metadata in CITATION.cff.

License

This project is distributed under the MIT License. See LICENSE.

Metadata

Release files for vibeels 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vibeels 0.3.2
File Size Uploaded Provenance
vibeels-0.3.2.tar.gz 1.1 MB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for vibeels 0.3.2
File Interpreter ABI Platform
vibeels-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 2.2 MB

Release files / vibeels-0.3.2.tar.gz

Download URL vibeels-0.3.2.tar.gz
Size 1.1 MB
Tags Source
SHA-256 checksum
How to use checksums
f831ea99a3877e51d2ae74cdde36f23b82ca0728985b5cdec2221984c92cda2f
BLAKE2b-256 checksum
How to use checksums
f628ddedc1aec3cdb26706d2507aa2b09085d665a72a1778ba0949762fb34d08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.11

Release files / vibeels-0.3.2-py3-none-any.whl

Download URL vibeels-0.3.2-py3-none-any.whl
Size 1.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
0af653aff544132072b080acfaa802f6f7316fbccc88427bbc66fbc79a108bc3
BLAKE2b-256 checksum
How to use checksums
45d9fd9c83bf310af5bc0c62df4db8702e42028b067b7b21aa796b4530596dd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.11

Security for vibeels 0.3.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page