/SinterAnalysis

Primary LanguagePythonMIT LicenseMIT

SinterAnalysis

Analysis of sinter processes using Mask R-CNN.

Installation

Preparation (all operating systems)

  1. Install conda for your operating system.

  2. Open a command line.

  3. Clone this repository and the required submodules: git clone --recurse-submodules git@github.com:maxfrei750/SinterAnalysis.git

  4. Change into the directory of the cloned repository: cd SinterAnalysis

Linux

  1. Create a symbolic link to the paddle module: ln -s external/paddle/paddle paddle

  2. Create the required conda environment: conda env create -f environment.yaml

Windows

  1. Create a symbolic link to the paddle module (this can require admin rights): mklink /D paddle external\paddle\paddle

  2. Create the required conda environment: conda env create -f environment.yaml

Training

  1. Download the datasets.zip file and extract it at the project root.

  2. Activate the conda environment: conda activate paddle

  3. Run the training: python train_model.py --config-dir=configs --config-name=ZnO (alternatively: replace ZnO with ZnAl2O4)

  4. The results of the inference can be found in the logs/ZnO folder.

Inference

  1. Download the datasets.zip file and extract it at the project root.

  2. Either complete the training (see above) or download the models.zip file and extract it at the project root.

  3. Activate the conda environment: conda activate paddle

  4. Run the model on a dataset: python test_model_on_dataset.py --config_name=ZnO --data_root=data/ZnO --subset=validation (alternatively: replace ZnO with ZnAl2O4)

  5. The results of the inference can be found in the output/ZnO folder.

Post-processing

  1. Complete the inference (see above).

  2. Activate the conda environment: conda activate paddle

  3. Post-process the results of the inference: python measure_grain_properties.py --data_root=output/ZnO --subset=validation (alternatively: replace ZnO with ZnAl2O4)

  4. The results of the post-processing are stored in .pkl-files (see pickle) in the output/ZnO folder.

Citation

If you use this repository for a publication, then please cite it using the following bibtex-entry:

@article{Gorynski.2023,
	title = {Machine Learning Based Quantitative Characterization of Microstructures},
	author = {Gorynski, Claudia and Frei, Max and Kruis, Frank Einar and Winterer, Markus},
	year = {2023},
	journal = {Acta Materialia},
	volume = {256},
	pages = {119106},
	issn = {1359-6454},
	doi = {10.1016/j.actamat.2023.119106},
}