Materials Morphology Python Package
Project description
m2py: Materials Morphology Python Package
Contributors
- Wesley Tatum, PhD Student at University of Washington MSE Department
- Diego Torrejon, Staff Machine Learning Engineer at BlackSky
- Patrick O’Neil, Director of Machine Learning and Artificial Intelligence at BlackSky
Requirements
You need Python 3.6 or later to work with m2py.
Installation
Through github:
Clone or download this repository
pip install -r requirements.txt
Through pip:
pip install m2py
Usage
At the moment, we are offering two introductory tutorials found under the tutorials
directory. There is a basic tutorial showing the main processing capabilities of m2py. There's also an advanced tutorial showing how users can use current m2py capabilities to make them suitable for their own applications.
Background
SPM techniques have been pivotal in understanding surfaces, morphologies, and intermolecular interactions of matter from the atomic to millimeter scales. Probes interacting with the material surface produce 2-dimensional images of the topography with intensity scales representing any number of material properties (e.g. modulus, conductivity, or capacitance). In many experiments, multiple properties can be imaged simultaneously, producing a 3-dimensional stack of these images.
By utilizing different combinations of computer vision and machine learning techniques, m2py leverages differences in imaged material properties to recognize different material phases, as well as different domains and topographical features. First, outlier pixels or signals can be removed. Next, signals are compressed to only the most informative features via PCA. These signals can be deconvoluted via GMM, or some other semantic segmenter for phase labeling. Finally, an instance segmenter, such as Persistence Watershed Segmentation, clusters the phase-labeled pixels into domains, which receive another label.
Once labeled by m2py segmenters, quantitative descriptions of each domain and the total morphology are extracted and can be used to train supervised models to predict material properties or performance. Such supervised training has not been accessible to most SPM researchers, due to the labor-intensive nature of manual-labeling.
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
Built Distribution
File details
Details for the file m2py-0.0.4.tar.gz
.
File metadata
- Download URL: m2py-0.0.4.tar.gz
- Upload date:
- Size: 2.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f12869d1d395ac6ce84d729187742b8a8c2ec14fed47960d055b0e404575616 |
|
MD5 | f2d5c0426aef749d79bde1da8e024752 |
|
BLAKE2b-256 | f175cdff8aebe54db7e2551392c656433e6c4669d281df84e5f3cb632bcf7358 |
File details
Details for the file m2py-0.0.4-py3-none-any.whl
.
File metadata
- Download URL: m2py-0.0.4-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.3.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a0e71b3f2eeffdabb68d70bef62f4494e10192118e99a12b8d53bd4b4bb8d58f |
|
MD5 | c5e6f127278a177d2a1dac5e17fdf830 |
|
BLAKE2b-256 | 0e7d85577d84aa21453200e93557950d693bac7fd92e3a8cd19a5a549451761f |