You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's time to renovate the local thickness and porosimetry functions. The changes I have in mind are backwards incompatible so this is probably more like "add to the wish list for V3".
I could be imagining this, but I feel like at some point the edt function changed from defaulting to all cores, to just 1 core. Imagination or not, we should set parallel=porespy.setting.ncores.
We could alternatively not use edt and instead just use the _insert_spheres_at_points_parallel function, which I recently added to the tools module`. We'll have to do a good speed comparison. I guess we'll probably end up offering a 'mode' argument.
Speaking of mode we should also offer the skeleton based approach which is how it's done in imagej. Take the skeleton and just insert spheres at each point the skeleton, taking the radius from the underlying distance transform values. Or this could be its own function, like local_thickness_sk.
On the above note, maybe we could offer a variety of functions, local_thickness_dt which uses distance transforms, and local_thickness_conv, local_thickness_morph, and local_thickness_sph. And then local_thickness is a general function which dispatches to the correct one depending on mode.
porosimetry should be moved to the simulations module, since that's what it is.
So the logic that is currently in porosimetry should be moved into the local_thickness function.
porosimetry can call the local_thickness function then trim the blobs that invaded too early to apply the access limitations function. The porosimetry function could also accept mode which would get passed on to local_thickness.
The sizes should be integers between 1 and dt.max(), instead of having float values. This would make it quite a bit easier to generate histograms.
It's time to renovate the local thickness and porosimetry functions. The changes I have in mind are backwards incompatible so this is probably more like "add to the wish list for V3".
edt
function changed from defaulting to all cores, to just 1 core. Imagination or not, we should setparallel=porespy.setting.ncores
.edt
and instead just use the_insert_spheres_at_points_parallel
function, which I recently added to thetools
module`. We'll have to do a good speed comparison. I guess we'll probably end up offering a 'mode' argument.mode
we should also offer theskeleton
based approach which is how it's done inimagej
. Take the skeleton and just insert spheres at each point the skeleton, taking the radius from the underlying distance transform values. Or this could be its own function, likelocal_thickness_sk
.local_thickness_dt
which uses distance transforms, andlocal_thickness_conv
,local_thickness_morph
, andlocal_thickness_sph
. And thenlocal_thickness
is a general function which dispatches to the correct one depending on mode.porosimetry
andlocal_thickness
#840The text was updated successfully, but these errors were encountered: