From 173b0b2743a38fbf780eeec6f6e545f3f07ea1ba Mon Sep 17 00:00:00 2001 From: rmdocherty Date: Tue, 29 Jul 2025 15:14:23 +0100 Subject: [PATCH 1/3] add paper details --- CITATION.cff | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index e6805a3..906c277 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -10,21 +10,21 @@ authors: - name: Samuel J. Cooper orcid: 0000-0003-4055-6903 title: "Prediction of Microstructural Representativity from a Single Image" -doi: arXiv:2410.19568v1 -url: "https://arxiv.org/abs/2410.19568v1" +doi: https://doi.org/10.1002/advs.202414149 +url: "https://advanced.onlinelibrary.wiley.com/doi/10.1002/advs.202414149" preferred-citation: type: article authors: - - name: Amir Dahari - orcid: 0000-0003-0142-8597 - - name: Ronan Docherty - orcid: 0000-0002-7332-0924 - - name: Steve Kench - orcid: 0000-0002-7263-6724 - - name: Samuel J. Cooper - orcid: 0000-0003-4055-6903 - doi: arXiv:2410.19568v1 - journal: "arXiV preprint" - month: 8 + - name: Amir Dahari + orcid: 0000-0003-0142-8597 + - name: Ronan Docherty + orcid: 0000-0002-7332-0924 + - name: Steve Kench + orcid: 0000-0002-7263-6724 + - name: Samuel J. Cooper + orcid: 0000-0003-4055-6903 + doi: https://doi.org/10.1002/advs.202414149 + journal: "Advanced Science" + month: 7 title: "Prediction of Microstructural Representativity from a Single Image" - year: 2024 \ No newline at end of file + year: 2025 From d5126f9fef95c10c22803e59803fbe3a78da65bb Mon Sep 17 00:00:00 2001 From: rmdocherty Date: Tue, 29 Jul 2025 15:14:31 +0100 Subject: [PATCH 2/3] add paper details --- README.md | 16 ++++++++-------- frontend/src/components/Menu.tsx | 4 +++- frontend/src/components/Popups.tsx | 5 ++++- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index d6aca48..967793d 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [Try it out!](https://www.imagerep.io/) -Here we introduce the 'ImageRep' method for fast phase fraction representativity estimation from a single microstructural image. This is achieved by calculating the Two-Point Correlation (TPC) function of the image, combined with a data-driven analysis of the [MicroLib](https://microlib.io/) dataset. By applying a statistical framework that utilizes both data sources, we can establish the uncertainty in the phase fraction in the image with a given confidence, **and** the image size that would be needed to meet a given target uncertainty. Further details are provided in our [preprint](https://arxiv.org/abs/2410.19568). +Here we introduce the 'ImageRep' method for fast phase fraction representativity estimation from a single microstructural image. This is achieved by calculating the Two-Point Correlation (TPC) function of the image, combined with a data-driven analysis of the [MicroLib](https://microlib.io/) dataset. By applying a statistical framework that utilizes both data sources, we can establish the uncertainty in the phase fraction in the image with a given confidence, **and** the image size that would be needed to meet a given target uncertainty. Further details are provided in our [paper](https://advanced.onlinelibrary.wiley.com/doi/10.1002/advs.202414149). If you use this ImageRep in your research, [please cite us](CITATION.cff). @@ -17,10 +17,11 @@ This method can be used via the [website (imagerep.io)](https://www.imagerep.io/ NB: the website may run out of memory for large volumes (>1000x1000x1000) - if this happens run the method locally or contact us ## Limitations: -- **This is not the only source of uncertainty!** Other sources *i.e,* segmentation uncertainty, also contribute and may be larger -- For multi-phase materials, this method estimates the uncertainty in phase-fraction of a single (chosen) phase, counting all the others as a single phase (*i.e,* a binary microstructure) + +- **This is not the only source of uncertainty!** Other sources _i.e,_ segmentation uncertainty, also contribute and may be larger +- For multi-phase materials, this method estimates the uncertainty in phase-fraction of a single (chosen) phase, counting all the others as a single phase (_i.e,_ a binary microstructure) - Not validated for for images smaller than 200x200 or 200x200x200 -- Not validated for large integral ranges/features sizes (>70 px) +- Not validated for large integral ranges/features sizes (>70 px) - Not designed for periodic structures - 'Length needed for target uncertainty' is an intentionally conservative estimate - retry when you have measured the larger sample to see a more accurate estimate of that uncertainty @@ -31,11 +32,11 @@ These instructions are for installing and running the method locally. They assum ### Preliminaries Install [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) (ideally via a manager like [nvm](https://github.com/nvm-sh/nvm)) if you want to run the website. Clone this repo and change directory: + ``` git clone https://github.com/tldr-group/Representativity && cd Representativity ``` - ### Install & run the backend 0. Setup a [virtual environment in Python](https://docs.python.org/3/library/venv.html) and activate it (not necessary but recommended) @@ -55,13 +56,12 @@ python -m flask --app server run The server should now be running on `http://127.0.0.1:500` and listening for requests! - 3. If you want to reproduce (all) the figures, you'll need `pytorch` and some additional dependencies. It may be worth using [conda](https://www.anaconda.com/) to install `pytorch` as this will interact correctly with your GPU. Run + ``` pip install -r requirements_dev.txt ``` - ### Install & run the frontend 0. Install the JS libraries needed to build and run the frontend. Install Yarn (and npm first if needed) @@ -86,4 +86,4 @@ yarn && yarn start ``` python tests/tests.py -``` \ No newline at end of file +``` diff --git a/frontend/src/components/Menu.tsx b/frontend/src/components/Menu.tsx index 600a782..d86cdbf 100644 --- a/frontend/src/components/Menu.tsx +++ b/frontend/src/components/Menu.tsx @@ -483,7 +483,9 @@ const Result = ({ allImageInfos }: { allImageInfos: ImageLoadInfo[] }) => { Full details can be found in the{" "} - paper + + paper + diff --git a/frontend/src/components/Popups.tsx b/frontend/src/components/Popups.tsx index d947aa8..d9c2592 100644 --- a/frontend/src/components/Popups.tsx +++ b/frontend/src/components/Popups.tsx @@ -147,7 +147,10 @@ export const MoreInfo = () => {

Full details can be found in the{" "} - paper. + + paper + + .

Source code is available{" "} From e1ff073ac0ed79126815cb16cf53bf112f31f718 Mon Sep 17 00:00:00 2001 From: rmdocherty Date: Tue, 29 Jul 2025 15:15:48 +0100 Subject: [PATCH 3/3] fix reset: reset n imgs and allImageInfos --- frontend/src/App.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 8759240..c531d23 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -213,6 +213,8 @@ const App = () => { setSelectedConf(95); setErrorState({ msg: "", stackTrace: "" }); setShowWarning(""); + setNImgs(0); + allImageInfos.current = []; }; const changePhase = () => {