ANTsPy: document using an existing transform as the initial transform - #49
Merged
Merged
Conversation
The tutorial covered the landmark-based initial transform but never the "Use existing transform" mode, so nothing described what happens to a chained or non-linear transform, or what the displacement field downsampling control added in SlicerANTsPy#35 does. Advanced Topics H covers the mode: how to select it, why the last node of a chain is the one to pick (FastModelAlign leaves three), how linear and non-linear transforms are serialized differently, when to raise the downsampling factor, and that the inverse output is unavailable with a non-linear initial transform. Two troubleshooting entries go with it: the "error code 1" failure from SlicerANTsPy#33, and an initial transform that aligns less than expected because a node in the middle of a chain was selected. Also fixes the table of contents, which listed five steps while the body has seven, so three of its links pointed at headings that no longer exist. This copy is the one to maintain. SlicerANTsPy carries a stale duplicate of the same tutorial at its repo root; a follow-up there replaces it with a link here. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Claude finished @muratmaga's task in 1m 8s —— View job Review: ANTsPy — document using an existing transform as the initial transform
Summary: This is a documentation-only change to
No correctness bugs, broken links, or regressions found. This is a low-risk, well-scoped docs PR — no issues to flag. |
muratmaga
added a commit
to SlicerMorph/SlicerANTsPy
that referenced
this pull request
Aug 1, 2026
…37) This repo carried its own copy of the mouse craniometric tutorial at the repo root, while SlicerMorph/Tutorials carries the same document under ANTsPy/. The two had drifted about 66 lines apart, and the copy here was the stale one: it still told users to search for the "ANTsRegistration" module, renamed in 3409fc8, and to install the extension by cloning the UI-updates branch, which predates its release through the Extension Catalogue. Tutorials is where the ecosystem's tutorials are maintained and indexed, so the copy here is removed and the README links there instead. The content that was only here, including the "Use existing transform" section added for #33 and #34, was merged into that copy first in SlicerMorph/Tutorials#49. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.
Documents the "Use existing transform" initial-transform mode, which the tutorial never covered, and the displacement field downsampling control added in SlicerMorph/SlicerANTsPy#35 (fixing SlicerANTsPy issues #33 and #34).
What is added
Advanced Topics H - Using an Existing Transform as the Initial Transform
<name>_scaling-><name>_rigid-><name>_deformableand only the leaf carries the complete alignment. Selecting a middle node initializes the registration with part of the alignment, which is the trap behind SlicerANTsPy#34Two troubleshooting entries: the
Registration failed with error code 1failure from SlicerANTsPy#33, including a manual workaround for anyone on an older build, and "aligns less than expected" pointing at the parent-chain trap.Table of contents fix (pre-existing): it listed five steps while the body has seven, so three of its links pointed at headings that do not exist. All internal anchors now resolve.
Note on the duplicate
SlicerANTsPy also carries a copy of this tutorial at its repo root (
ANTsRegistration_Tutorial.md). The two had drifted about 66 lines apart: this copy is the more current one - it has theANTsPyRegistrationmodule rename, the Extension Catalogue install instructions, and the ScriptEditor pointer, none of which the extension copy has.So the new content was merged into this copy rather than the other way around, and the two files are now identical except for the parts where this one is ahead. A follow-up in SlicerANTsPy removes its stale duplicate and links here instead, so there is one tutorial to maintain.