porosity_profile
¶
Computes the porosity profile along the given axis of an image.
import porespy as ps
import numpy as np
import matplotlib.pyplot as plt
ps.visualization.set_mpl_style()
[18:51:57] ERROR PARDISO solver not installed, run `pip install pypardiso`. Otherwise, _workspace.py:56 simulations will be slow. Apple M chips not supported.
im
¶
The porosity is computed by summing the voxels with a value of 1. This means that in a boolean image the void space is indicated by True
. If the image is multiphase (i.e. voxel values of 1, 2, …) then only the 1’s will be counted.
axis
¶
The axis along which to compute the profile. The default is axis=0
.
prf0 = ps.metrics.porosity_profile(im, axis=0)
prf1 = ps.metrics.porosity_profile(im, axis=1)
prf2 = ps.metrics.porosity_profile(im, axis=2)
fig, ax = plt.subplots(figsize=[6, 4])
ax.plot(*prf0, 'b.-')
ax.plot(*prf1, 'g.-')
ax.plot(*prf2, 'c.-')
ax.plot([0, 50], [0.65, 0.65], 'r--')
ax.set_ylim([0, 1])
ax.set_xlabel('Position along axis')
ax.set_ylabel('Porosity');