-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit a11be45
Showing
73 changed files
with
38,127 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Sphinx build info version 1 | ||
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. | ||
config: 1d08db85a79bfccf7301ffbec52d7ebe | ||
tags: 645f666f9bcd5a90fca523b33c5a78b7 |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
|
||
coordination | ||
============ | ||
|
||
(WIP) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
|
||
export | ||
====== | ||
|
||
(WIP) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
|
||
**filter_im** | ||
============= | ||
|
||
The ``filter_im`` module contains functions that pre-process XCT images like segmentation and cropping, allowing for | ||
pore structure analysis. This is mainly used as a quick method of processing raw XCT scans, but Pore2Chip operates | ||
best on already segmented data, as the methods of segmentation used here rely on Otsu's filtering, which may not capture | ||
solid matter of a particular density (ex. plant roots). | ||
|
||
---- | ||
|
||
filter_single() | ||
--------------- | ||
|
||
.. autofunction:: pore2chip.filter_im.filter_single | ||
|
||
.. | ||
The coordinates for cropx and cropy begin at the top left. | ||
|
||
---- | ||
|
||
filter_list() | ||
------------- | ||
|
||
.. autofunction:: pore2chip.filter_im.filter_list | ||
|
||
.. | ||
The coordinates for cropx and cropy begin at the top left. | ||
|
||
---- | ||
|
||
read_and_filter() | ||
----------------- | ||
|
||
.. autofunction:: pore2chip.filter_im.read_and_filter | ||
|
||
.. | ||
The coordinates for cropx and cropy begin at the top left. | ||
|
||
---- | ||
|
||
read_and_filter_list() | ||
---------------------- | ||
|
||
.. autofunction:: pore2chip.filter_im.read_and_filter_list | ||
|
||
.. | ||
The coordinates for cropx and cropy begin at the top left. | ||
|
||
Leave crop_depth empty to include all files in directory. | ||
|
||
.. note:: | ||
|
||
This project is under active development. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
|
||
generate | ||
======== | ||
|
||
(WIP) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
.. Pore2Chip documentation master file, created by | ||
sphinx-quickstart on Thu Jan 2 09:45:53 2025. | ||
You can adapt this file completely to your liking, but it should at least | ||
contain the root `toctree` directive. | ||
Pore2Chip Documentation | ||
======================= | ||
A python package that takes XCT images of porous materials and generates representative digital twin micromodels. | ||
|
||
.. figure:: _static/ModEx_Loop_SoilChip.jpg | ||
:width: 636px | ||
:height: 453px | ||
:scale: 100 % | ||
:alt: ModEx Loop for Pore2Chip and Chip2Flow | ||
|
||
ModEx Loop for Pore2Chip and Chip2Flow | ||
|
||
About Pore2Chip | ||
--------------- | ||
**Pore2Chip** is a Python module designed to streamline the process of analyzing X-ray computed tomography (XCT) | ||
images of soil and creating 2D micromodel designs based on that analysis. | ||
It leverages the power of open-source libraries like OpenPNM, PoreSpy, and drawsvg to extract key information about the soil's | ||
porous structure and translate it into a blueprint for microfluidic simulations or physical "lab-on-a-chip" devices developed using additive manufacturing. | ||
|
||
User Guide | ||
---------- | ||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
install | ||
quickstart | ||
module_ref | ||
|
||
Acknowledgements | ||
---------------- | ||
This research was performed on a project award (Award DOIs: 10.46936/ltds.proj.2024.61069/60012423; 10.46936/intm.proj.2023.60674/60008777; 10.46936/intm.proj.2023.60904/60008965) | ||
from the Environmental Molecular Sciences Laboratory, a DOE Office of Science User Facility sponsored by the Biological and Environmental Research program under contract no. DE-AC05-76RL01830. | ||
The authors acknowledge the contributions of Michael Perkins at PNNL’s Creative Services, who developed the conceptual graphics in this paper. | ||
|
||
PNNL-SA-197910 | ||
|
||
Disclaimer | ||
---------- | ||
This research work was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor any agency thereof, | ||
nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, | ||
apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, | ||
or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof. | ||
The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof. | ||
|
||
.. note:: | ||
|
||
This project is under active development. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
|
||
.. Installation | ||
.. ======================= | ||
.. The OpenPNM and PoreSpy libraries are required to analyze XCT images. PoreSpy is used to generate a | ||
.. pore network that is used to extract pore size distribution, pore throat size distribution, and pore coordination numbers. | ||
.. OpenPNM is used to construct a new 2D pore network that will be used to create the micromodel design. | ||
.. Install using PiP: | ||
.. .. code-block:: console | ||
.. $ pip install pore2chip | ||
Installation | ||
============ | ||
|
||
The OpenPNM and PoreSpy libraries are required to analyze XCT images. PoreSpy is used to generate a | ||
pore network that is used to extract pore size distribution, pore throat size distribution, and pore coordination numbers. | ||
OpenPNM is used to construct a new 2D pore network that will be used to create the micromodel design. | ||
|
||
Pip Installation | ||
---------------- | ||
Install using PiP: | ||
|
||
.. code-block:: bash | ||
pip install pore2chip | ||
Install from source: | ||
|
||
.. code-block:: bash | ||
git clone https://github.com/EMSL-Computing/Pore2Chip.git | ||
cd Pore2Chip | ||
python3 -m build | ||
python3 -m pip install pore2chip --no-index --find-links dist/ | ||
Conda Environment | ||
----------------- | ||
Creating a Conda environment: | ||
|
||
.. code-block:: bash | ||
conda create -n pore2chip python=3.9 | ||
conda activate pore2chip | ||
pip install pore2chip | ||
Docker Image | ||
------------ | ||
Building a Docker Image with Jupyter Notebook: | ||
|
||
.. code-block:: bash | ||
git clone https://github.com/EMSL-Computing/Pore2Chip.git | ||
cd Pore2Chip | ||
docker build -t pore2chip | ||
docker run -p 8888:8888 pore2chip | ||
This will automatically run a Jupyter Notebook server in the browser with a python environment that | ||
has Pore2Chip and all of its dependencies installed. | ||
|
||
.. note:: | ||
|
||
This project is under active development. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
|
||
io | ||
== | ||
|
||
(WIP) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
|
||
**metrics** | ||
=========== | ||
|
||
The ``metrics`` module contains functions that extract pore data from segmented images. | ||
|
||
---- | ||
|
||
feret_diameter() | ||
---------------- | ||
|
||
.. autofunction:: pore2chip.metrics.feret_diameter | ||
|
||
---- | ||
|
||
feret_diameter_list() | ||
--------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.feret_diameter_list | ||
|
||
---- | ||
|
||
extract_diameters() | ||
------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.extract_diameters | ||
|
||
---- | ||
|
||
extract_diameters2() | ||
-------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.extract_diameters2 | ||
|
||
---- | ||
|
||
extract_diameters_alt() | ||
----------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.extract_diameters_alt | ||
|
||
---- | ||
|
||
get_probability_density() | ||
------------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.get_probability_density | ||
|
||
---- | ||
|
||
get_percent_probability() | ||
------------------------- | ||
|
||
.. autofunction:: pore2chip.metrics.get_percent_probability | ||
|
||
|
||
.. note:: | ||
|
||
This project is under active development. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
|
||
Module Reference | ||
================ | ||
|
||
Here are the references for all Pore2Chip's modules: | ||
|
||
.. toctree:: | ||
:maxdepth: 2 | ||
|
||
filter_im_api | ||
metrics_api | ||
coordination_api | ||
generate_api | ||
export_api | ||
io_api |
Oops, something went wrong.