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 current version only supports .bcf and .emi files. The publication is available here.

Try your dataset on SIGMA with Colab in the cloud: Open In Colab

If analysis using sigma forms a part of published work please cite the DOI

Installation

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

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.1.28.tar.gz (8.4 MB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: emsigma-0.1.28.tar.gz
  • Upload date:
  • Size: 8.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.0.1 pkginfo/1.4.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.9.7

File hashes

Hashes for emsigma-0.1.28.tar.gz
Algorithm Hash digest
SHA256 15d6c59598d45aae622022fbc855413da4a69a0981c0aea035b373d7a9803f78
MD5 c1e3e2820d81a10f438a33e62d6164b4
BLAKE2b-256 ba6ddf199797f713b59724ae335e2e931eaa2b7fc49ed9234446a889884d099e

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