8.132. Segment Features (Scalar)

Group (Subgroup)

Reconstruction (Segmentation)

Description

This Filter segments the Features by grouping neighboring Cells that satisfy the scalar tolerance, i.e., have a scalar difference less than the value set by the user. The process by which the Features are identified is given below and is a standard burn algorithm.

  1. Randomly select a Cell, add it to an empty list and set its FeatureId to the current Feature

  2. Compare the Cell to each of its six (6) face-sharing neighbors (i.e., calculate the scalar difference with each neighbor)

  3. Add each neighbor Cell that has a scalar difference below the user defined tolerance to the list created in 1) and set the FeatureId of the neighbor Cell to the current Feature

  4. Remove the current Cell from the list and move to the next Cell and repeat 2. and 3.; continue until no Cells are left in the list

  5. Increment the current Feature counter and repeat steps 1. through 4.; continue until no Cells remain unassigned in the dataset

The user has the option to Use Mask Array, which allows the user to set a boolean array for the Cells that remove Cells with a value of false from consideration in the above algorithm. This option is useful if the user has an array that either specifies the domain of the “sample” in the “image” or specifies if the orientation on the Cell is trusted/correct.

After all the Features have been identified, an Attribute Matrix is created for the Features and each Feature is flagged as Active in a boolean array in the matrix.

If the data is specified as Periodic, the segmentation will check if features wrap around geometry bounds in a tileable fashion. If any such features are detected, the filter will throw a warning that centroid data may be incorrect.

Input Parameter(s)

Parameter Name

Parameter Type

Parameter Notes

Description

Scalar Tolerance

Scalar Value

Int32

Tolerance for segmenting input Cell Data

Randomize Feature IDs

Bool

Specifies if feature IDs should be randomized during calculations

Optional Data Mask

Parameter Name

Parameter Type

Parameter Notes

Description

Use Mask Array

Bool

Determines if a mask array is used for segmenting

Cell Mask Array

Array Selection

Allowed Types: uint8, boolean Comp. Shape: 1

Path to the DataArray Mask

Input Cell Data

Parameter Name

Parameter Type

Parameter Notes

Description

Input Image Geometry

Geometry Selection

Image

DataPath to input Image Geometry

Scalar Array to Segment

Array Selection

Allowed Types: int8, uint8, int16, uint16, int32, uint32, int64, uint64 Comp. Shape: 1

Path to the DataArray to segment

Output Cell Data

Parameter Name

Parameter Type

Parameter Notes

Description

Cell Feature IDs

DataObjectName

Path to the created Feature IDs path

Output Feature Data

Parameter Name

Parameter Type

Parameter Notes

Description

Feature Attribute Matrix

DataObjectName

Created Cell Feature Attribute Matrix

Active

DataObjectName

Created array

Is Periodic

Bool

Should segment features wrap around the image data

Example Pipelines

  • (09) Image Segmentation

DREAM3D-NX Help

If you need help, need to file a bug report or want to request a new feature, please head over to the DREAM3DNX-Issues GitHub site where the community of DREAM3D-NX users can help answer your questions.