1. v1.5.0 introduced an improved version of the supervised machine learning mineral classification model (weber_classification.m). For details on how the new model was trained, see /MATLAB/MachineLearningModel/weber_algorithm_training.mlx. The training description provided in /Paper/supplement.md is no longer accurate.
2. For the convenience of Julia users, all Julia files have been migrated to https://github.com/weber1158/eds-classification.jl.
A repository of functions for identifying mineral species in SEM-EDS data
This repository includes several functions designed to quickly identify common mineral species from energy dispersive spectrometry (EDS) data. The eds_classification() function is encoded with five mineral classification algorithms, including a machine learning classifier trained on 18 reference minerals with an accuracy ≅ 99%. The four additional algorithms (which have been transcribed from the peer-reviewed literature) are also available for discriminating mineral classes using elemental data.
See the online Documentation for details on each of the algorithms.
The docs also include MATLAB functions for importing EDS x-ray spectral data (read_msa()) and visualizing the data (xray_plot() and xray_peak_label()). Users may also import the metadata from scanning electron microscope (SEM) images with the get_sem_metadata() function, and more.
You can download the repository from the MATLAB Central File Exchange , or open it directly in your browser
(recommended).
To add the EDS Classification functions to the default search path:
-
Un-zip the downloaded folder.
-
Execute the following command in the MATLAB Command Window:
pathtool-
A popup menu should open. Click
Add Folder with Subfoldersand select the un-zipped main repository folder. -
Finalize your choice by clicking
SaveorApply.
View the test script by clicking , or download and run the
eds_demo.mlx file (here) in MATLAB.
This repository has been peer-reviewed and published in Journal of Open Source Software. Please use the information below for citing the software:
Weber, Austin M., (2025). Algorithms for SEM-EDS mineral dust classification. Journal of Open Source Software, 10(107), 7533, https://doi.org/10.21105/joss.07533
@article{weber2025,
author = {Weber, Austin M.},
title = {Algorithms for {SEM-EDS} mineral dust classification},
journal = {Journal of Open Source Software},
volume = {10},
number = {107},
pages = {7533},
year = {2025},
DOI = {10.21105/joss.07533}
}