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.
Randomly select a Cell, add it to an empty list and set its FeatureId to the current Feature
Compare the Cell to each of its six (6) face-sharing neighbors (i.e., calculate the scalar difference with each neighbor)
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
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
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
License & Copyright
Please see the description file distributed with this Plugin
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.