Skip to main content

spectral interpretation using gaussian mixtures and autoencoder

Project description

Description

Spectral Interpretation using Gaussian Mixtures and Autoencoder (SIGMA) is an open-source Python library for phase identification and spectrum analysis for energy dispersive x-ray spectroscopy (EDS) datasets. The library mainly builds on the Hyperspy, Pytorch, and Scikit-learn. The publication is available here.

(UPDATE v0.2.0) SIGMA now supports UMAP for dimensionality reduction and HDBSCAN for clustering.

Try your dataset on SIGMA with Colab in the cloud:

Type of data Support format Colab link
SEM .bcf .hspy Open In Colab
TEM .emi/.ser .emd Open In Colab
Images .tif .png Open In Colab

This project has received funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No 101005611: The EXCITE Network. If analysis using SIGMA forms a part of published work please cite the manuscript.

Installation

  1. Create a Python>=3.10 environment with conda:
conda create -n sigma python=3.10
conda activate sigma
  1. Install SIGMA with pip:
pip install emsigma
  1. Use the notebook in the tutorial folder to run SIGMA.
jupyter-lab

Workflow of SIGMA

  1. A neural network autoencoder is trained to learn good representations of elemental pixels in the 2D latent space.
Autoencoder

  1. The trained encoder is then used to transform high-dimensional elemental pixels into low-dimensional representations, followed by clustering using Gaussian mixture modeling (GMM) in the informative latent space.
GMM

  1. Non-negative matrix factorization (NMF) is applied to unmix the single-phase spectra for all clusters.
NMF

In such a way, the algorithm not only identifies the locations of all unknown phases but also isolates the background-subtracted EDS spectra of individual phases.

User-friendly GUI

Check .bcf file

An example of checking the EDS dataset and the sum spectrum.

Demo with Colab

Demo-check_EDS_dataset

Dimensionality reduction and clustering

An example of analysing the latent space using the graphical widget.

Demo with Colab

Screen Recording 2022-02-22 at 12 09 38 PM

Factor analysis on cluster-wise spectra

A demo of acquiring Background-substracted spectrum using Factor Analysis (FA).

Demo with Colab

Demo-NMF

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emsigma-0.2.1.tar.gz (44.6 kB view details)

Uploaded Source

File details

Details for the file emsigma-0.2.1.tar.gz.

File metadata

  • Download URL: emsigma-0.2.1.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for emsigma-0.2.1.tar.gz
Algorithm Hash digest
SHA256 6d400cb807ad5a6e5c0973b7fe62edcb3888b6701c3a8a0b46c4757012e7c0d9
MD5 4067a176bd210178cebc8e6e487a6595
BLAKE2b-256 9f296801555aa7749bdc93c0545d1c8a517658b25ad5363d311eb5b874fae0dc

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page