Identify objects by analyzing local spatial contrast and structural gradients at a specific spectral band. This method is highly effective for noisy data, using a multi-step pipeline of noise reduction and edge detection to isolate features based on texture rather than absolute spectral values.
The Structure Segmentation method identifies objects by analyzing spatial texture and local contrast differences at a specific spectral band. Unlike model-based segmentation (e.g., PCA), which relies on the absolute spectral signature of a pixel, Structure Segmentation identifies "edges" and "topographic changes" in the data.
This makes it exceptionally robust for noisy data or environments with inconsistent lighting, as it focuses on how a pixel differs from its immediate neighbors rather than its specific value.
How it Works
The process follows a linear pipeline:
-
Band Extraction: A single grayscale image is created from the selected band.
-
Median Filtering: A noise-reduction filter is applied to remove "salt and pepper" noise while preserving important edges.
-
Derivative Calculation: The algorithm calculates the maximum difference (gradient) between pixels within a local window. This highlights "structures" like holes, cracks, or edges.
-
Binarization: A threshold is applied to the derivative map to create a binary mask (object vs. background).
-
Hole Filling: Small gaps within detected objects are automatically filled to ensure solid segments.
Parameters
Band
Specify the band number (wavelength) to use for analysis.
tip Choose the band where the object has the highest visual contrast against the background.
Median kernel
The size of the noise-reduction filter (e.g., 3, 5, or 7 pixels).
Increase this if your raw data is very "grainy" or noisy.
Derivate kernel
The window size used to calculate local contrast. A smaller kernel (3–5) detects sharp, fine details; a larger kernel (7+) is better for broader, softer structures.
It is generally best to use an odd number (like 3 or 5). An even number like 2 lacks a true central pixel, which causes the calculation to shift or "gravitate" toward the origin rather than staying centered. In image processing, odd-sized kernels are standard to ensure the resulting segmentation stays more aligned with your features - both are however possible to use and will produce results.
Threshold
The sensitivity level for detection. Lower values pick up subtle textures; higher values require a sharper contrast/edge to trigger a detection.
Min area
The minimum number of pixels an object must contain to be included in the results. Used to filter out small noise artifacts.
Max area
The maximum number of pixels allowed for an object. Used to exclude the background or large connected components that aren't of interest.
If 0 no maximum area is defined.
Object filter
Use an expression to further exclude unwanted objects based on shape.
Properties that can be used for the Expression:
-
Area -
Length -
Width -
Circumference -
Regularity -
Roundness -
Angle -
D1 -
D2 -
X -
Y -
MaxBorderDistance -
BoundingBoxArea
For details on each available property see: Object properties Details
Shrink
Takes away
numbers of pixels at the borders of the objects included in images.
Separate
The Separate parameter defines how pixels that pass your segmentation threshold are grouped into distinct object samples.
Pixel Connectivity Rule
Breeze uses 8-connectivity. Pixels are considered connected if they touch horizontally, vertically, or diagonally on a single corner.
Parameter Options
1. Normal
-
Behavior: Standard connected-component grouping.
-
Result: Pixels touching by an edge or corner form a single object. Physically isolated clusters form separate objects.
2. Separate adjacent objects
-
Behavior: Applies a distance transform to find the inner centers (geometric peaks) of pixel clusters, then splits them using a watershed-style growth algorithm.
-
Best Used For: Round or spherical objects that are touching or overlapping.
-
Limitation: Elongated, branched, or irregular shapes may be incorrectly split into multiple objects because the algorithm detects multiple internal peaks within a single physical item.
3. Merge all objects into one
-
Behavior: Disregards spacing; combines all valid pixels across the entire image.
-
Result: Evaluates the entire frame as one single object for collective regional analysis.
4. Merge all objects per row
-
Behavior: Groups detected objects based on the spatial grid of their vertical center points ($Y$-coordinates).
-
Result: All objects residing within the same horizontal row lane are merged into a single object.
5. Merge all objects per column
-
Behavior: Groups detected objects based on the spatial grid of their horizontal center points ($X$-coordinates).
-
Result: All objects residing within the same vertical column lane are merged into a single object.
Link
Only visible when applicable
Link output objects from two or more segmentations to top segmentation. Descriptors can then be added to the common object output and will be calculated for objects from all segmentations.
The segmentations must be at same level to be available for linking.