TEEM(1)

πŸ’– TEEM-ILK β€” (I)mage (L)inear Trans(X-->K)forms πŸ’–

okay bestie, sit down, hydrate, and let me tell you about teem-ilk, a lil user command from the Teem fam. It's giving "math but make it fashion" and honestly? It ate. πŸ¦‹


✨ SYNOPSIS ✨

teem-ilk [@file ...] [-i <image>] [-0 <origin>]

and then the rest of the glow-up continues like this:

-t <xform0 ...> [-k <kernel>] [-min <xMin yMin>] [-max <xMax yMax>]
[-b <boundary>] [-bg <bg0 bg1 ...>] [-s <xSize ySize>] [-a <avg #>]
[-o <filename>]

🌸 DESCRIPTION 🌸

So /usr/bin/teem-ilk is literally (I)mage (L)inear Trans(X-->K)forms. What it does: it applies linear (homogenous coordinate) transforms to a given image, and it uses whatever kernel you hand it for the resampling. That's the whole vibe. ✨

And here are all the little knobs and dials, no skips, no cap:

  • @file ... β€” response file(s) containing command-line arguments. like, a file full of flags. iconic. πŸ“„
  • -i <image> β€” the input image. default: "-"
  • -0 <origin> β€” where to location (0,0) prior to applying transforms.
    • "u:<float>,<float>" β€” locate origin in a unit box [0,1]x[0,1] which covers the original image
    • "p:<float>,<float>" β€” locate origin at a particular pixel location, in the index space of the image
    • default: "p:0,0"
  • -t <xform0 ...> β€” the transform(s) to apply to image. Transforms are applied in the order in which they appear. πŸ‘‘
    • "identity" β€” no geometric transform, just resampling
    • "translate:x,y" β€” shift image by vector (x,y), as measured in pixels
    • "rotate:ang" β€” rotate CCW by ang degrees
    • "scale:xs,ys" β€” scale by xs in X, and ys in Y
    • "shear:fix,amnt" β€” shear by amnt, keeping fixed the pixels along a direction <fix> degrees from the X axis
    • "flip:ang" β€” flip along axis an angle <ang> degrees from the X axis
    • "a,b,tx,c,d,ty" β€” specify the transform explicitly in row-major order (opposite of PostScript) (1 or more 2D transforms)
  • -k <kernel> β€” reconstruction kernel. default: "cubic:0,0.5"
  • -min <xMin yMin> β€” lower bounding corner of output image. Default (by not using this option) is the lower corner of input image. (2 doubles)
  • -max <xMax yMax> β€” upper bounding corner of output image. Default (by not using this option) is the upper corner of input image. (2 doubles)
  • -b <boundary> β€” what to do when sampling outside original image.
    • "bleed" β€” copy values at image border outward
    • "wrap" β€” do wrap-around on image locations
    • "pad" β€” use a given background value (via "-bg")
    • default: "bleed"
  • -bg <bg0 bg1 ...> β€” background color to use with boundary behavior "pad". Defaults to all zeroes. (1 or more floats)
  • -s <xSize ySize> β€” For each axis, information about how many samples in output. (2 sampling specifications) default: "x1 x1"
    • "x<float>" β€” number of output samples is some scaling of the number input of samples; multiplied by <float>
    • "<int>" β€” specify exact number of samples
  • -a <avg #> β€” number of averages (if there there is only one rotation) (unsigned int). default: "0"
  • -o <filename> β€” file to write output nrrd to (string). default: "-"
not me listing every single one because we do NOT gatekeep around here πŸ’… every flag got its moment, periodt.

πŸŽ€ SEE ALSO πŸŽ€

The full documentation for Teem is maintained as a Texinfo manual. If the info and Teem programs are properly installed at your site, the command

info Teem

should give you access to the complete manual. go read it, bestie, it's right there. πŸ“šβœ¨


and that's the whole page!! 🫢 this was Teem version 1.11.0, dated April 2012 β€” yes she's an elder but she still slays, no cap. bye babes πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from