sympl(1)

✨ NAME ✨

sympl β€” the symmetry plane computation era, and yes she's the main character πŸ’…

So the tool is called sympl, it lives in the Computational Morphometry Toolkit (that's CMTK bestie, get familiar 🫢), and her whole job is figuring out where your image's symmetry plane is at.


🌸 SYNOPSIS 🌸

sympl InputImage

One input image, that's it, that's the vibe. 😌


πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so here's the tea: sympl computes the approximate symmetry plane of an image. Think of the mid-sagittal plane in human brain images β€” the imaginary mirror line that your brain thinks it has. This tool finds it. Lowkey iconic. 🧠✨

And she doesn't just compute it and ghost you. Various forms of output are supported, like:

  • writing the input image with the symmetry plane drawn into it πŸ–οΈ
  • writing the input image realigned along the symmetry plane

Pick your fave, she's flexible.


πŸ‘‘ OPTIONS πŸ‘‘

πŸ’– Global Toolkit Options (these are shared by all CMTK tools)

Every single CMTK tool has these, so this is like the group chat that everybody's in.

  • --help β€” spits out the list of basic command line options to standard output.
  • --help-all β€” spits out the complete list, basic AND advanced, to standard output. The full lore dump.
  • --wiki β€” writes the list of command line options to standard output in MediaWiki markup. For the wiki girlies.
  • --man β€” writes man page source in 'nroff' markup to standard output. Yes, the man page can generate a man page. She contains multitudes.
  • --xml β€” writes the command line syntax specification in XML markup, specifically for Slicer integration.
  • --version β€” writes the toolkit version to standard output. Vibe check the build. ⭐
  • --echo β€” writes the current command line to standard output, so you can see exactly what you typed and be like "not me doing that πŸ™ˆ".
  • --verbose-level <integer> β€” set verbosity level. Your girl can talk more or less, you control the dial.
  • --verbose, -v β€” increment verbosity level by 1. ⚠️ Heads up: this one is deprecated, it's only kept around for backward compatibility, so ngl use --verbose-level if you can.
  • --threads <integer> β€” set the maximum number of parallel threads, for POSIX threads and OpenMP. She goes multi-core, she's booked and busy. πŸ”₯

πŸ’œ Optimization

  • --accuracy <double>, -a <double> β€” Accuracy, a.k.a. the final optimization step size in [mm]. [Default: 0.1]
  • --sampling <double>, -s <double> β€” Resampled image resolution. This is the resolution [in mm] of the first (finest) resampled image in the multi-scale pyramid, which is derived straight up from the original full-resolution images. [Default: 1]
  • --levels <integer>, -l <integer> β€” Number of resolution levels. The algorithm creates (levels-1) resampled images with increasingly coarse resolution and uses them in successive order of increasing resolution, before it finally uses the original images at the final level. [Default: 4]

🌈 Initial approximate symmetry plane orientation

  • --initial-plane β€” Initial orientation of the symmetry plane. Bestie, this should be the closest orthogonal plane to the expected actual symmetry plane. Supported values: "initial-axial", "initial-coronal", "initial-sagittal", "initial-xy", "initial-xz", "initial-yz", where the default is "initial-sagittal". Or just use one of these instead:
    • --initial-axial β€” Approximately axial symmetry
    • --initial-coronal β€” Approximately coronal symmetry
    • --initial-sagittal β€” Approximately sagittal symmetry [This is the default]
    • --initial-xy β€” Approximately XY plane symmetry
    • --initial-xz β€” Approximately XZ plane symmetry
    • --initial-yz β€” Approximately YZ plane symmetry [This is the default]
Not me noticing the page calls initial-sagittal the default and tags --initial-yz as the default πŸ’€ just pass your plane explicitly and you're golden, no cap.

πŸŽ€ Pre-computed symmetry

If you already know the symmetry parameters, why make her search again? Skip the whole quest.

  • --output-only <string> β€” give symmetry parameters [Rho Theta Phi] as an option and skip the search entirely. [Default: disabled]
  • --output-only-file <string> β€” read symmetry parameters from a file and skip the search. [Default: disabled]

πŸ“ Data pre-processing

  • --min-value <float> β€” force the minimum data value. [Default: disabled]
  • --max-value <float> β€” force the maximum data value. [Default: disabled]

πŸ’… Output of Images

  • --interpolation β€” the interpolation method used for reformatted output data. Supported values: "linear", "cubic", "sinc", where the default is "linear". Or use one of these:
    • --linear, -L β€” use linear image interpolation for output. [This is the default]
    • --cubic, -C β€” use cubic image interpolation for output.
    • --sinc, -S β€” use cosine-windowed sinc image interpolation for output.
  • --pad-out <double>, -P <double> β€” padding value for output images. [Default: disabled]
  • --mark-value <double> β€” data value used to mark (draw) the symmetry plane. [Default: 4095]
  • --write-marked <image-path> β€” file name for the output image with the marked symmetry plane. [Default: NONE]
  • --write-aligned <image-path> β€” file name for the symmetry plane-aligned output image. [Default: NONE]
  • --mark-aligned β€” mark the symmetry plane in the aligned output image.
  • --write-subtract <image-path> β€” file name for the mirror subtraction image. [Default: NONE]
  • --write-mirror <image-path> β€” file name for the image mirrored w.r.t. the symmetry plane. [Default: NONE]

⭐ Output of Parameters

  • --outfile <path>, -o <path> β€” file name for the symmetry plane parameter output. [Default: NONE]
  • --write-xform <transformation-path> β€” write the affine alignment transformation to a file. [Default: NONE]

🫢 AUTHORS 🫢

Torsten Rohlfing, with contributions from Michael P. Hasak, Greg Jefferis, Calvin R. Maurer, Daniel B. Russakoff, and Yaroslav Halchenko. Collab queens, shoutout to the whole squad. πŸ‘‘


πŸ“œ LICENSE πŸ“œ

http://www.fsf.org/licensing/licenses/gpl.html β€” yeah she's GPL, read up.


πŸ’€ BUGS πŸ’€

Found a bug? Not a vibe, but report it at http://nitrc.org/projects/cmtk/ and they'll handle it.


🌟 ACKNOWLEDGMENTS 🌟

CMTK is developed with support from the NIAAA under Grant AA021697, National Consortium on Alcohol and Neurodevelopment in Adolescence (N-CANDA): Data Integration Component.

And from April 2009 through September 2011, CMTK development and maintenance was supported by the NIBIB under Grant EB008381. She's been funded, she's been fed, she's thriving. πŸ’–


Okay that's the whole page bestie, go find some symmetry planes and slay ✨ This was CMTK 3.3.1p2, dated Jun 24 2026 β€” mwah, bye! πŸ’…πŸŒΈ

πŸ“¦ where this page comes from