List of my modules...

Module: Proximity Field

Description:

Generates a scalar field in a given phase, that represents how much of another phase is nearby. It's a bit like a gravity field, but with no directional component, i.e. two opposite gravity forces will not cancel out. Therefore, the value attributed to each pixel is the sum of the inverse of the squared distance to all the pixels in a given phase. Because this can take a reeeeaally long time to compute on images with millions of pixels in the phases, you can specify a cut-off value, for a distance above which we don't look at the interactions. This is reasonable since we're looking at 1/r�, which decreases quite rapidly.

Illustration of the process and what it can be used for. The left image shows an image generated with Create_Sphere_Pack_Image, having three phases: porosity (0), ball outer shell (1), and ball core (2). The ball cores have a radius of 20 pixels. A proximity field was generated in the porosity, shown in the center image, computing the proximity (as defined above) with the outer shell, and using a cut-off value of half the radius, 10 pixels. The right image shows an example of an application of this module, in which we use the proximity field as a priority function for adding pixels of the outer shell to the porosity, using the Invade module (for the latter, the proximity field had to be inverted). The result places pixels preferentially near the contact points between balls.

Connections:

Image

[required]
The input image, defined in a class HxUniformScalarField3.

FM_Threshold


Threshold to use for the field mask, i.e. the pixels in which to compute the field.

FM_Comparison


Comparison function to define the field mask.

X_Threshold


Threshold to use for the phase from which to compute the proximity.

X_Comparison


Associated comparison function.

Cut_Off


Cut-off value, i.e. Euclidean distance above which the proximity should not be computed.

Do


Push the button to compute the field.

Commands:

Additional options can be accessed when typing in the console Proximity_Field COMMAND_NAME.

verbose

Displays timing information for the computation. Retype to hide info.

create

Runs the computation. Returns the name of the output, so it can be used in a script, such as set RESULT [Proximity_Field create].