pxsearch(1)

✨ pxsearch β€” bestie's guide to pixel neighborhood hunting πŸ’…

okay so you found yourself in the pxsearch(1) manual page, part of The Computational Morphology Toolkit (aka CMTK, ikk). don't worry, i got you. this one is short and sweet, which is giving "easy win" honestly.


πŸŽ€ NAME πŸŽ€

pxsearch β€” the little tool that goes looking around pixel neighborhoods for the actual pixels. no cap. search image neighborhoods for pixels. that's the whole vibe. ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

pxsearch InputImage

yeah that's it. one whole argument. main character energy but make it minimal. πŸ’…


🌸 DESCRIPTION 🌸

okay so here's the tea, bestie. pxsearch reads an image file, and it also reads a list of pixel coordinates from standard input. so it's getting fed from two places at once, very multitasking of it.

for each one of those pixels, it looks around at a local neighbourhood in the image and hunts for the maximum value, like a little scavenger hunt πŸ”₯. then it writes the location of that maximum to standard output. so you put in coordinates, you get out coordinates, but the coordinates you get out are the location of the biggest value nearby. slay. πŸ‘‘


🌈 OPTIONS 🌈

πŸ’œ Global Toolkit Options πŸ’œ (these are shared by all CMTK tools, so they're the group-chat-wide rules)

  • --help β€” writes the list of basic command line options to standard output. the "just tell me the basics" button.
  • --help-all β€” writes the complete list of basic AND advanced command line options to standard output. the "tell me literally everything" button.
  • --wiki β€” writes the list of command line options to standard output in MediaWiki markup. for when you need your options wiki-fied.
  • --man β€” writes man page source in nroff markup to standard output. yes bestie, it can write its own man page. self-aware icon behavior. πŸͺž
  • --version β€” writes the toolkit version to standard output.
  • --echo β€” writes the current command line to standard output. so you can see what you actually typed, no more "wait what did i run" 😭
  • --verbose-level <integer> β€” sets the verbosity level. the bigger the number, the more it talks. πŸ—£οΈ
  • --verbose, -v β€” increments the verbosity level by 1. ⚠️ heads up: this one is deprecated, it's only supported for backward compatibility. still here, still working, but it's giving legacy.
  • --threads <integer> β€” sets the maximum number of parallel threads (for POSIX threads and OpenMP). parallelize and go fast, periodt. ⚑

✨ Main Options ✨

  • --input-coordinates β€” the coordinate specification mode for program input. supported values are "absolute", "indexed", "relative", "physical", where the default is "absolute". or you can just use one of the fancy single-flag versions below instead. either way works, pick your fighter:
    • --absolute β€” use absolute volume coordinates. for each dimension, the valid range is [0,FOV]. [this is the default]
    • --indexed β€” use grid indexes to specify coordinates. for each dimension, the valid value range is [0,Dims-1].
    • --relative β€” use relative volume coordinates. for each dimension, the valid range is [0,1].
    • --physical β€” use physical volume coordinates. each given location gets transformed into image coordinates via the inverse of the image's index-to-physical space matrix. math girlies rise 🧚
  • --output-coordinates β€” the coordinate specification mode for program output, same idea as above but for what comes out. supported values: "absolute", "indexed", "relative", "physical", where the default is "absolute". or use one of these:
    • --absolute β€” use absolute volume coordinates. for each dimension, the valid range is [0,FOV]. [this is the default]
    • --indexed β€” use grid indexes to specify coordinates. for each dimension, the valid value range is [0,Dims-1].
    • --relative β€” use relative volume coordinates. for each dimension, the valid range is [0,1].
    • --physical β€” use physical volume coordinates. each given location is transformed into image coordinates via the inverse of the image's index-to-physical space matrix.
  • --radius <string> β€” the radius of the search region in pixels. you can specify it either as a triple "rX,rY,rZ", or as a single value "rXYZ". the region that actually gets searched is [2*rX+1,2*rY+1,2*rZ+1] pixels large, centered at the input location, but cropped at the image boundary so don't be shocked when it's smaller near the edges. [default: 1]
  • --no-reorient β€” disables image reorientation into RAS alignment. if you want your image to stay exactly how it is, this is the one. πŸ™ˆ

πŸ‘‘ AUTHORS πŸ‘‘

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


πŸ“œ LICENSE πŸ“œ

[http://www.fsf.org/licensing/licenses/gpl.html](http://www.fsf.org/licensing/licenses/gpl.html) β€” yeah i know it's a link but that's literally what the manpage says, it's the GPL, go read it bestie.


πŸ› BUGS πŸ›

found a bug? report it at [http://nitrc.org/projects/cmtk/](http://nitrc.org/projects/cmtk/) β€” they want to know, and reporting is literally a public service. πŸ’–


🌟 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. funding era, we love to see it. ✨


πŸ’Œ so anyway, that's pxsearch β€” feed it an image and some coordinates, it finds the local maxima for you, no drama. go forth and search those neighborhoods bestie. πŸ¦‹

and that's a wrap! this was the pxsearch(1) page from CMTK version 3.3.1p2, dated Jun 24 2026. mwah, take care of yourself, hydrate, and don't forget to run your tools. bye!! πŸ’…πŸ’–

πŸ“¦ where this page comes from