Skip to content

Conversation

@Lestropie
Copy link
Member

Previously, those core voxels flagged for removal following erosion & connected component analysis would then be dilated in order to remove the full set of voxels deemed to be connected by a bridge smaller than or equal to the scale parameter. This could however lead to the removal of voxels that are part of the main connected component and not of the bridged component flagged for removal, yet were within the range of the dilation operation. This change constrains the removal of voxels from the mask based on per-iteration dilation, preventing that dilation from crossing voxels that are themselves not part of the original mask.

Found this while auditing branches. I only have a vague recollection of the issue. So might be difficult to find a dataset that properly exemplifies the difference.

Previously, those core voxels flagged for removal following erosion & connected component analysis would then be dilated in order to remove the full set of voxels deemed to be connected by a bridge smaller than or equal to the scale parameter.
This could however lead to the removal of voxels that are part of the main connected component and not of the bridged component flagged for removal, yet were within the range of the dilation operation.
This change constrains the removal of voxels from the mask based on per-iteration dilation, preventing that dilation from crossing voxels that are themselves not part of the original mask.
@github-actions
Copy link

clang-tidy review says "All clean, LGTM! 👍"

@Lestropie
Copy link
Member Author

First couple of attempts did not yield sample data that demonstrated a difference in behaviour between code versions. Shelving for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants