jidb(1)

πŸ’– jidb β€” bestie edition πŸ’–

okay so you've found yourself on the jidb(1) page, which lives in The Computational Morphology Toolkit (yes, that CMTK, the one we're all obsessed with). pull up a chair, grab a strawberry πŸ“, and let's get into it.


✨ NAME ✨

jidb β€” fixes interleaved motion using joint iterative deblurring. that's the whole job. that's the assignment. and it ate. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

jidb [options] inImage outImage

🌸 DESCRIPTION 🌸

so what this tool literally does is: it takes your interleaved input image, splits it into the pass images (all of them, one by one, no crumbs left), co-registers them with each other, and then reconstructs a motion-corrected image. iconic behavior. no cap. ✨


πŸ‘‘ OPTIONS πŸ‘‘

🌈 Global Toolkit Options (these are shared by all CMTK tools)

these are the group-chat-everyone-is-in options. every CMTK tool has them, so you already kinda know them:

  • --help β€” writes the list of basic command line options to standard output. your starter pack 🫢
  • --help-all β€” writes the complete list of both basic and advanced command line options to standard output. the full lore drop.
  • --wiki β€” writes the list of command line options to standard output in MediaWiki markup. for when you need it wiki-fied.
  • --man β€” writes man page source in 'nroff' markup to standard output. yes, it generates the very thing you're reading. meta king behavior πŸ‘‘
  • --version β€” writes the toolkit version to standard output.
  • --echo β€” writes the current command line to standard output.
  • --verbose-level <integer> β€” sets the verbosity level. you control the yapping.
  • --verbose, -v β€” increments the verbosity level by 1. deprecated β€” it's only still here for backward compatibility, so like, it works but it's giving legacy πŸ™ˆ
  • --threads <integer> β€” sets the maximum number of parallel threads (for POSIX threads and OpenMP). multitasking queen.

🧚 Interleaving Options

  • --interleave-axis β€” defines the interleave axis: this is the through-slice direction of the acquisition. supported values: "guess-from-input", "axial", "sagittal", "coronal", "interleave-x", "interleave-y", "interleave-z", where the default is "guess-from-input". or, alternatively, just use one of these cuties right here:
    • --guess-from-input β€” guess from input image [This is the default]
    • --axial, -a β€” interleaved axial images
    • --sagittal, -s β€” interleaved sagittal images
    • --coronal, -c β€” interleaved coronal images
    • --interleave-x, -x β€” interleaved along x axis
    • --interleave-y, -y β€” interleaved along y axis
    • --interleave-z, -z β€” interleaved along z axis
  • --passes <integer>, -p <integer> β€” number of interleaved passes [Default: 2]
  • --pass-weight <string>, -W <string> β€” sets the contribution weight for a pass, in the form 'pass:weight'

πŸ”₯ Motion Correction / Registration Options

  • --reference-image <image-path>, -R <image-path> β€” use a separate high-resolution reference image for registration [Default: NONE]
  • --registration-metric β€” the registration metric used for motion estimation by image-to-image registration. supported values: "nmi", "mi", "cr", "msd", "cc", where the default is "msd", or use one of the following:
    • --nmi β€” use Normalized Mutual Information for pass-to-refereence registration
    • --mi β€” use standard Mutual Information for pass-to-refereence registration
    • --cr β€” use Correlation Ratio for pass-to-refereence registration
    • --msd β€” use Mean Squared Differences for pass-to-refereence registration [This is the default]
    • --cc β€” use Cross-Correlation for pass-to-refereence registration
  • --import-xforms-path <path> β€” path of file from which to import transformations between passes. [Default: NONE]
  • --export-xforms-path <path> β€” path of file to which to export transformations between passes. [Default: NONE]

πŸŽ€ Volume Injection Options

  • --injection-kernel-sigma <double>, -S <double> β€” standard deviation of Gaussian kernel for volume injection [Default: 1]
  • --injection-kernel-radius <integer>, -r <integer> β€” truncation radius of injection kernel [Default: 4]

πŸ’œ Deblurring Options

  • --psf β€” kernel for the inverse interpolation reconstruction. supported values: "box", "gaussian", or use one of the following:
    • --box β€” box-shaped PSF
    • --gaussian β€” Gaussian-shaped PSF
  • --psf-scale <double> β€” sets the global scale factor for the point spread function size, which itself is derived from the input image. [Default: 1]

⭐ Optimization Options

  • --fourth-order-error, -f β€” use fourth-order error (rather than second-order) for optimization.
  • --num-iterations <integer>, -n <integer> β€” maximum number of inverse interpolation iterations [Default: 20]
  • --no-truncation, -T β€” turn off regional intensity truncatrion πŸ™ˆ
  • --l-norm-weight <double> β€” set constraint weight for Tikhonov-type L-Norm regularization (0 disables the constraint) [Default: 0]

🩷 Output Options

  • --write-injected-image <image-path> β€” write initial volume injection image to path [Default: NONE]
  • --write-images-as-float, -F β€” write output images as floating point [default: same as input]

πŸ’« AUTHORS πŸ’«

Torsten Rohlfing, with contributions from Michael P. Hasak, Greg Jefferis, Calvin R. Maurer, Daniel B. Russakoff, and Yaroslav Halchenko. a whole squad, fr fr 🫢


πŸ“œ LICENSE πŸ“œ

http://www.fsf.org/licensing/licenses/gpl.html


πŸ’€ BUGS πŸ’€

found a bug? report it at http://nitrc.org/projects/cmtk/ β€” they wanna hear it, bestie.


🌟 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. from April 2009 through September 2011, CMTK development and maintenance was supported by the NIBIB under Grant EB008381. shoutout to the funders, they understood the vision πŸ’–


and that's the whole page, gorgeous. this is CMTK 3.3.1p2, dated Jun 24 2026 β€” jot that down, screenshot it, put it in the group chat, because you're now officially fluent in jidb(1). slay, go fix that interleaved motion πŸ¦‹βœ¨πŸ’…

πŸ“¦ where this page comes from