Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: melc-da
  • Language: Python
  • Default Branch: main
  • Size: 364 KB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 1
Created about 4 years ago · Last pushed almost 4 years ago
Metadata Files
Readme License Citation

README.md

Explainable machine learning for precise fatigue crack tip detection

DOI

This repository contains the code used to generate the results of the research article D. Melching, T. Strohmann, G. Requena, E. Breitbarth. (2022) Explainable machine learning for precise fatigue crack tip detection. Scientific Reports. DOI: 10.1038/s41598-022-13275-1 The article is open-access and available here.

Dependencies

All additional, version-specific modules required can be found in requirements.txt shell pip install -r requirements.txt

Usage

The code can be used to produce attention heatmaps of trained neural networks following these instructions.

1) Data

In order to run the scripts, nodal displacement data of the fatigue crack propagation experiments S950,1.6 and S160,2.0 as well as the nodemap and ground truth data of S160,4.7 is needed. The data is available on Zenodo under the DOI 10.5281/zenodo.5740216.

The data needs to be downloaded and placed in a folder data.

2) Preparation

Create training and validation data by interpolating the raw nodal displacement data to arrays of size 2x256x256, where the first channel stands for the x-displacement and the second for the y-displacement. shell make_data.py

3) Training, validation, and tests

To train a model with the ParallelNets architecture, run shell ParallelNets_train.py To test a model for its performance, run shell ParallelNets_test.py after training.

4) Explainability and visualization

You can plot the segmentation and crack tip predictions using shell ParallelNets_plot.py Prediction plot

and visualize network and layer-wise attention by running shell ParallelNets_visualize.py Network attention plot Layer-wise attention plot

The explainability method uses a variant of the Grad-CAM algorithm [1].

References

[1] Selvaraju et al. (2020). Grad-CAM: Visual Explanations from Deep Networks via Gradient-Based Localization. Int. J. Comput. Vis. 128, 336-359.

Owner

  • Name: David Melching
  • Login: melc-da
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Melching"
  given-names: "David"
  orcid: "https://orcid.org/0000-0001-5111-6511"
- family-names: "Strohmann"
  given-names: "Tobias"
  orcid: "https://orcid.org/0000-0002-9277-1376"
- family-names: "Requena"
  given-names: "Guillermo"
  orcid: "https://orcid.org/0000-0001-5682-1404"
- family-names: "Breitbarth"
  given-names: "Eric"
  orcid: "https://orcid.org/0000-0002-3479-9143"
title: "Explainable machine learning for precise fatigue crack tip detection"
version: 1.0.0
doi: 10.5281/zenodo.6602447
date-released: 2022-06-01
url: "https://github.com/melc-da/explainable-crack-tip-detection"
preferred-citation:
  type: article
  authors:
  - family-names: "Melching"
    given-names: "David"
    orcid: "https://orcid.org/0000-0001-5111-6511"
  - family-names: "Strohmann"
    given-names: "Tobias"
    orcid: "https://orcid.org/0000-0002-9277-1376"
  - family-names: "Requena"
    given-names: "Guillermo"
    orcid: "https://orcid.org/0000-0001-5682-1404"
  - family-names: "Breitbarth"
    given-names: "Eric"
    orcid: "https://orcid.org/0000-0002-3479-9143"
  doi: "10.1038/s41598-022-13275-1"
  journal: "Scientific Reports"
  # month: 9
  # start: 1 # First page number
  # end: 10 # Last page number
  title: "Explainable machine learning for precise fatigue crack tip detection"
  # issue: 1
  # volume: 1
  year: 2022

GitHub Events

Total
  • Watch event: 1
Last Year
  • Watch event: 1

Dependencies

requirements.txt pypi
  • Pillow ==8.4.0
  • matplotlib ==3.4.3
  • numpy ==1.21.3
  • opencv-python ==4.5.4.58
  • scipy ==1.7.1
  • tensorboard ==2.7.0
  • torch ==1.7.1
  • torchvision ==0.8.2