ENH: Restore the evolving LevelSetsv4 examples without VTK rendering - #486
Draft
hjmjohnson wants to merge 4 commits into
Draft
hjmjohnson wants to merge 4 commits into
hjmjohnson wants to merge 4 commits into
Conversation
These examples demonstrate the LevelSetsv4 framework, not the VTK bridge. They have been excluded from the build since ITK 5 because their VTK visualization classes left ITK, so they are unbuilt on both sides of this move.
The examples rendered through VTK visualization classes that ITK no longer contains. Each now writes what it demonstrates: the dense level-set values, the zero set via ZeroCrossingImageFilter, or the sparse layers sampled on the image grid. A run test covers each one. The Otsu mask pipeline was never updated before the level set was initialized, so the level set started from an empty mask; update it first.
These were the last examples under the VtkGlue if(ITK_VERSION_MAJOR LESS 5) block, which is now empty and removed. They are unbuilt on both sides of this move.
…ring The examples rendered each iteration through VTK visualization classes that ITK no longer contains. Each now evolves the level set and writes the result: the level-set values, or the zero set via ZeroCrossingImageFilter.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Restore the two evolving LevelSetsv4 examples by writing the evolved level set
instead of rendering each iteration through VTK, and remove the now-empty
if(ITK_VERSION_MAJOR LESS 5)block.Stacked on #485 — review the last 2 commits.
What changes
Both examples evolve a dense level set with the Chan and Vese region terms. They
used to attach
LevelSetIterationUpdateCommandto a VTK visualizer that ITK nolonger contains; each now writes the result after evolving:
VisualizeEvolvingDense2DLevelSetAsElevationMapVisualizeEvolvingDense2DLevelSetZeroSetZeroCrossingImageFilterThey move to
Segmentation/LevelSetsv4alongside the static examples from #485.With them gone, the VtkGlue
if(ITK_VERSION_MAJOR LESS 5)block is empty and isremoved. The screenshot and animation (
levelsets.png,levelsets.gif) areremoved from each page, since they showed a renderer that no longer exists.
Verification
Built against ITK
main: 0 build failures, and all 7 LevelSetsv4 tests pass(the 5 from #485 plus these 2, each evolving 100 iterations). Outputs inspected:
Commit 1 is a pure move (12 renames), so history follows the files.
pre-commit run --all-filespasses. As in #485, the tests check that eachexample runs rather than comparing against a baseline image.