Repository for automated nanoparticle analysis of Scanning Transmission Electron Microscopy (S/TEM) images using YOLOv8 and segment anything model (SAM). This material-agnostic ML workflow successfully detects and segments nanoparticles on different catalytic substrate materials.
Sets of object detection, segmentation, and NP analysis results from BF-TEM image of Pt NPs on graphite support (above) and HAADF STEM image of Ru NPs on Alumina support materials (below).
- Data reader
Read ".emd", ".emi", ".dm3", ".dm4" - Detector
Run YOLOv8 on the S/TEM images and generate box prompts
Segment nanoparticles using box prompts and SAM - SAM visualize
Visualize segmentation - Analysis
Particle size and area distribution
Install PyTorch
Install RosettaSciIO
pip install rosettasciio
Install Ultralytics for YOLOv8
pip install ultralytics
Install Segment Anything Model (SAM)
https://github.com/facebookresearch/segment-anything
weights for YOLOv8 particle detection here
Please fill out the form here to gain access to nanoDetect software installer
@misc{genc2024versatilemachinelearningworkflow,
title={A versatile machine learning workflow for high-throughput analysis of supported metal catalyst particles},
author={Arda Genc and Justin Marlowe and Anika Jalil and Libor Kovarik and Phillip Christopher},
year={2024},
eprint={2410.01213},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci},
url={https://arxiv.org/abs/2410.01213},
}