ENH: Ingest ITKPhaseSymmetry into Modules/Filtering/PhaseSymmetry#6270
Merged
hjmjohnson merged 123 commits intoMay 19, 2026
Merged
ENH: Ingest ITKPhaseSymmetry into Modules/Filtering/PhaseSymmetry#6270hjmjohnson merged 123 commits into
hjmjohnson merged 123 commits into
Conversation
outputRegionForThread.
Class name changed when moving out of Review.
Use same terminology as the GaborImageSource.
Member
Author
|
@greptileai review this draft before I make it official |
1 similar comment
Member
Author
|
@greptileai review this draft before I make it official |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Member
Author
|
/azp run |
dzenanz
reviewed
May 14, 2026
63 tasks
Member
Author
|
@greptileai review |
e2ab423 to
e9e251e
Compare
Brings PhaseSymmetry from a configure-time remote fetch into the ITK source tree at Modules/Filtering/PhaseSymmetry/ using the v4 ingestion pipeline (whitelist filter-repo + per-commit clang-format + black + commit-prefix sanitization). Upstream repo: https://github.com/KitwareMedical/ITKPhaseSymmetry.git Upstream tip: 6d3ba9ff7a4f9d334f979e548c346a8234250d78 Ingest date: 2026-05-14 Whitelist: default.list Per-commit transforms applied across all 112 commits: - filter-repo --paths-from-file (whitelist) - filter-repo --to-subdirectory-filter Modules/Filtering/PhaseSymmetry - clang-format -style=file (ITK main's .clang-format) for *.cxx/.h/.hxx/... - black for *.py - heuristic ITK prefix added to commit subjects without one Merge topology preserved: 36 -> 21 merge(s). Primary author: Matt McCormick <matt.mccormick@kitware.com> Co-authored-by: Dženan Zukić <dzenan.zukic@kitware.com> Co-authored-by: Gordon Stevenson <gordon.n.stevenson@gmail.com> Co-authored-by: Hans J. Johnson <hans-johnson@uiowa.edu> Co-authored-by: Hans J. Johnson <hans.j.johnson@gmail.com> Co-authored-by: Hans Johnson <hans-johnson@uiowa.edu> Co-authored-by: Jon Haitz Legarreta Gorroño <jon.haitz.legarreta@gmail.com> Co-authored-by: Mathew Seng <mathewseng@gmail.com> Co-authored-by: Matt McCormick <matt@mmmccormick.com> Co-authored-by: root <root@insight-journal.org> Co-authored-by: Tom Birdsong <tom.birdsong@kitware.com> Co-authored-by: Zahil Shanis <zahil.shanis@kitware.com>
Now ingested into Modules/Filtering/PhaseSymmetry/.
Move the radius==0 short-circuit before the dotProduct/(radius*orientationRadius) division so the center pixel does not produce 0/0 NaN, which raised invalid-op on FP-trap platforms. Also Fill() m_Orientation and zero-initialize m_AngularBandwidth in the constructor so direct users that skip PhaseSymmetryImageFilter::Initialize() do not process uninitialized data.
…aluate The duplicate 'return (TOutput)value;' produced -Wunreachable-code on most compilers; drop it.
Replace the truncated 3.14159265 literal with the full-precision itk::Math::pi from itkMath.h.
Clean up commented-out std::cout debug output and MATLAB-style %todo annotations carried over from the upstream remote module.
itkPhaseSymmetryImageFilter.h includes itkComposeImageFilter.h and itkMagnitudeAndPhaseToComplexImageFilter.h from ITKImageCompose, so the module is a compile-time dependency. Downstream consumers without ITKImageCompose in their dependency graph would otherwise see unresolved-symbol link errors.
- GenerateData() self-initializes when m_FilterBank is empty, so Update() without an explicit Initialize() no longer reads an empty vector out of bounds. - Initialize() clears m_FilterBank before rebuilding so repeated calls (after parameter changes) no longer accumulate stale entries. - ButterworthFilterFreqImageSource guards radius / m_Cutoff against a zero cutoff (clamp lower bound is 0.0), avoiding NaN / SIGFPE.
e9e251e to
1e0397b
Compare
cf9bd89
into
InsightSoftwareConsortium:main
18 of 19 checks passed
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.
Ingest the ITKPhaseSymmetry remote module into
Modules/Filtering/PhaseSymmetry(group: Filtering). Source upstream:InsightSoftwareConsortium/ITKPhaseSymmetry. Tracking issue: #6160.Ingest stats
Utilities/Maintenance/RemoteModuleIngest/INGESTION_STRATEGY.md)Modules/Filtering/PhaseSymmetry/: 33b378aad9a9d58092db8d1573b81d8c926df6f3e6External-data fixtures
CID / .sha512 content-links present in this ingest:
If any fixtures resolve via ITKTestingData, that repo must contain the matching content-link before this PR can merge cleanly.
Follow-on commits (on top of the unrelated-histories merge)