mia-2dseri...ordermedian(1)
β¨ mia-2dseries2dordermedian β the manual π
okay bestie, welcome to mia-2dseries2dordermedian(1) π this is the General Commands Manual page, and it's a whole saga, so buckle up.
πΈ NAME πΈ
mia-2dseries2dordermedian β Evaluate time-intensity median 2nd order derivative of a series.
like. the whole job. right there. π
π¦ SYNOPSIS π¦
mia-2dseries2dordermedian -i <in-file> -o <out-file> [options]
<PLUGINS:2dimage/filter>
π DESCRIPTION π
mia-2dseries2dordermedian evaluates the pixel-wise median of the absolute values of the gauss filtered 2nd order temporal derivative of a series of images. no cap, that's the whole plot. π
and that's not even it β you can also use it to output the time-intensity curve of a given pixel. very main character of it tbh.
plus, the program supports slice-wise spacial pre-filtering β you get that by handing it additional filters as free parameters (filter/2dimage). π«Ά
β¨ OPTIONS β¨
-i,--in-file=(input, required); stringβ the input segmentation set. required, so like, don't skip it bestie.-o,--out-file=(output, required); ioβ the output image name. also required. for supported file types seePLUGINS:2dimage/io.-k,--skip=0β skip files at the beginning.-e,--enlarge-boundary=5β enlarge the cropbox by this many pixels.-c,--cropβ crop the image before running the statistics.-g,--gauss=1β gauss filter width for smoothing the gradient.--itc-file=β intensity time curve output file.--itc-loc=[0,0]β intensity time curve output pixel coordinates.
π¬ Help & Info π¬
-V,--verbose=warningβ how chatty the output is. it prints messages of the given level and every higher priority. the supported priorities, starting at the lowest level, are:traceβ Function call tracedebugβ Debug outputinfoβ Low level messagesmessageβ Normal messageswarningβ Warningsfailβ Report test failureserrorβ Report errorsfatalβ Report only fatal errors
--copyrightβ prints the copyright information.-h,--helpβ prints this help.-?,--usageβ prints a short help.--versionβ prints the version number and exits.
βοΈ Processing βοΈ
--threads=-1β maximum number of threads to use for processing. this number should be lower than or equal to the number of logical processor cores on your machine. (-1means automatic estimation.)
π§© PLUGINS: 1d/spacialkernel π§©
cdiffβ central difference filter kernel; mirror boundary conditions are used.- (no parameters)
gaussβ spacial Gauss filter kernel. supported parameters are:w = 1;uint in [0, inf)β half filter width.
scharrβ this plugin provides the 1D folding kernel for the Scharr gradient filter.- (no parameters)
π§ PLUGINS: 1d/splinekernel π§
bsplineβ B-spline kernel creation. supported parameters are:d = 3;int in [0, 5]β spline degree.
omomsβ OMoms-spline kernel creation. supported parameters are:d = 3;int in [3, 3]β spline degree.
π PLUGINS: 2dimage/combiner π
absdiffβ image combiner 'absdiff'.- (no parameters)
addβ image combiner 'add'.- (no parameters)
divβ image combiner 'div'.- (no parameters)
mulβ image combiner 'mul'.- (no parameters)
subβ image combiner 'sub'.- (no parameters)
π PLUGINS: 2dimage/filter π
heads up bestie, this is the big one. it's giving options for days. π₯
adaptmedβ 2D image adaptive median filter. supported parameters are:w = 2;int in [1, inf)β half filter width.
admeanβ an adaptive mean filter that works like a normal mean filter if the intensity variation within the filter mask is lower than the intensity variation in the whole image; it uses a special formula if the local variation is higher than the image intensity variation. supported parameters are:w = 1;int in [1, inf)β half filter width.
anisoβ 2D anisotropic image filter. supported parameters are:epsilon = 1;float in (0, inf)β iteration change threshold.iter = 100;int in [1, 10000]β number of iterations.k = -1;float in [0, 100]β k, the noise threshold (<=0β adaptive).n = 8; set β neighbourhood. supported values are:( 4, 8, )psi = tuckey; dict β edge stopping function. supported values are:tuckeyβ tukey stopping functionpm1β stopping function 1guessβ test stopping functionpm2β stopping function 2
bandpassβ intensity bandpass filter. supported parameters are:max = 3.40282e+38;floatβ maximum of the band.min = 0;floatβ minimum of the band.
binarizeβ image binarize filter. supported parameters are:max = 3.40282e+38;floatβ maximum of accepted range.min = 0;floatβ minimum of accepted range.
closeβ morphological close. supported parameters are:hint = black; set β a hint at the main image content. supported values are:( black, white, )shape = [sphere:r=2]; factory β structuring element. for supported plug-ins seePLUGINS:2dimage/shape
combinerβ combine two images with the given combiner operator. ifreverseis set tofalse, the first operator is the image passed through the filter pipeline, and the second image is loaded from the file given with theimageparameter the moment the filter is run. supported parameters are:image =(input, required, io)β second image that is needed in the combiner. for supported file types seePLUGINS:2dimage/ioop =(required, factory)β image combiner to be applied to the images. for supported plug-ins seePLUGINS:2dimage/combinerreverse = 0;boolβ reverse the order in which the images are passed to the combiner.
convertβ image pixel format conversion filter. supported parameters are:a = 1;floatβ linear conversion parameter a.b = 0;floatβ linear conversion parameter b.map = opt; dict β conversion mapping. supported values are:copyβ copy data when convertinglinearβ apply linear transformationx -> a*x+brangeβ apply linear transformation that maps the input data type range to the output data type rangeoptβ apply a linear transformation that maps the real input range to the full output rangeoptstatβ apply a linear transform that maps based on input mean and variation to the full output range
repn = ubyte; dict β output pixel type. supported values are:bitβ binary datasbyteβ signed 8 bitubyteβ unsigned 8 bitsshortβ signed 16 bitushortβ unsigned 16 bitsintβ signed 32 bituintβ unsigned 32 bitslongβ signed 64 bitulongβ unsigned 64 bitfloatβ floating point 32 bitdoubleβ floating point 64 bitnoneβ no pixel type defined
cropβ crop a region of an image; the region is always clamped to the original image size. supported parameters are:end = [[-1,-1]]; streamable β end of crop region.start = [[0,0]]; streamable β start of crop region.
dilateβ 2d image stack dilate filter. supported parameters are:hint = black; set β a hint at the main image content. supported values are:( black, white, )shape = [sphere:r=2]; factory β structuring element. for supported plug-ins seePLUGINS:2dimage/shape
distanceβ 2D image distance filter; evaluates the distance map for a binary mask.- (no parameters)
downscaleβ downscale the input image by using a given block size to define the downscale factor. prior to scaling, the image is filtered by a smoothing filter to eliminate high frequency data and avoid aliasing artifacts. supported parameters are:b = [[1,1]];2dboundsβ blocksize.bx = 1;uint in [1, inf)β blocksize in x direction.by = 1;uint in [1, inf)β blocksize in y direction.kernel = gauss; factory β smoothing filter kernel to be applied; the size of the filter is estimated based on the blocksize. for supported plug-ins seePLUGINS:1d/spacialkernel
erodeβ 2d image stack erode filter. supported parameters are:hint = black; set β a hint at the main image content. supported values are:( black, white, )shape = [sphere:r=2]; factory β structuring element. for supported plug-ins seePLUGINS:2dimage/shape
gaussβ isotropic 2D gauss filter. supported parameters are:w = 1;int in [0, inf)β filter width parameter.
gradnormβ 2D image to gradient norm filter. supported parameters are:normalize = 0;boolβ normalize the gradient norms to range[0,1].
invertβ intensity invert filter.- (no parameters)
kmeansβ 2D image k-means filter. in the output image, the pixel value represents the class membership and the class centers are stored as an attribute in the image. supported parameters are:c = 3;int in [2, inf)β number of classes.
labelβ label connected components in a binary 2D image. supported parameters are:
ok so the page literally cuts off right there mid-sentence π the label params (and everything after) are coming in part 2, bestie β we are so not done π
n = 4n; factoryβ Neighborhood mask to describe connectivity. For supported plug-ins see PLUGINS:2dimage/shape πΈlabelmapβ Image filter to remap label id's. Only applicable to images with integer valued intensities/labels. Supported parameters are:map =(input, required, string)β Label mapping file. π
labelscaleβ A filter that only creates output voxels that are already created in the input image. Scaling is done by using a voting algorithm that selects the target pixel value based on the highest pixel count of a certain label in the corresponding source region. If the region comprises two labels with the same count, the one with the lower number wins. Supported parameters are:out-size =(required, 2dbounds)β target size given as two comma separated values. β¨
loadβ Load the input image from a file and use it to replace the current image in the pipeline. Supported parameters are:file =(input, required, io)β name of the input file to load from. For supported file types see PLUGINS:2dimage/io π¦
maskβ 2D masking, one of the two input images must by of type bit. Supported parameters are:fill = min; dictβ fill style for pixels outside of the mask. Supported values are:minβ set values outside the mask to the minimum value found in the image. πzeroβ set the values outside the mask to zero. πmaxβ set the values outside the mask to the maximum value found in the image. π
input =(input, required, io)β second input image file name. For supported file types see PLUGINS:2dimage/ioinverse = 0; boolβ set to true to use the inverse of the mask for masking. π
maxflowβ This filter implements the uses the max-flow min-cut algorithm for image segmentation, supported parameters are:sink-flow =(input, required, io)β Image of float type to define the per-pixel flow to the sink. For supported file types see PLUGINS:2dimage/io πsource-flow =(input, required, io)β Image of float type to define the per-pixel flow to the source. For supported file types see PLUGINS:2dimage/io π
meanβ 2D image mean filter, supported parameters are:w = 1; int in [1, inf)β half filter width. π
meanvarβ Filter that evaluates simultaneously the pixel wise mean and the variance of an image in a given window. Pixel intensities below the given threshold will be ignored and at their locations the output mean and variation are set to zero. The mean intensity image is directly passed as float image to the pipeline, the variation image is saved to a file given with thevarfileparameter. Supported parameters are:thresh = 0; double in [0, inf)β Intensity thresholding parameter: Pixels with intensities below this threshold will be set to zero, and also not used when evaluating mean and variation.varfile =(output, required, io)β name of the output file to save the variation image too. For supported file types see PLUGINS:2dimage/iow = 1; uint in [1, inf)β filter width parameter. π
medianβ 2D image median filter, supported parameters are:w = 1; int in [1, inf)β half filter width. π
medianmadβ Filter that evaluates simultaneously the pixel wise median and the median absolute deviation (MAD) of an image in a given window. Pixel intensities below the given threshold will be ignored and at their locations the output median and MAD are set to zero. The median intensity image is directly passed to the pipeline, the variation image is saved to a file given with thevarfileparameter. Both output images have the same pixel type like the input image. Supported parameters are:madfile =(output, required, io)β name of the output file to save the median absolute deviation image too. For supported file types see PLUGINS:2dimage/iothresh = 0; double in [0, inf)β Intensity thresholding parameter: Pixels with intensities below this threshold will be set to zero, and also not used when evaluating mean and variation.w = 1; uint in [1, inf)β filter width parameter. π
mlvβ Mean of Least Variance 2D image filter, supported parameters are:w = 1; int in [1, inf)β filter width parameter. π§
ngfnormβ 2D image to normalized-gradient-field-norm filter. (no parameters) πnoiseβ 2D image noise filter: add additive or modulated noise to an image, supported parameters are:g = [gauss:mu=0,sigma=10]; factoryβ noise generator. For supported plug-ins see PLUGINS:generator/noisemod = 0; boolβ additive or modulated noise. π
openβ morphological open, supported parameters are:hint = black; setβ a hint at the main image content. Supported values are: (black,white, )shape = [sphere:r=2]; factoryβ structuring element. For supported plug-ins see PLUGINS:2dimage/shape π«Ά
pruningβ Morphological pruning. Pruning until convergence will erase all pixels but closed loops. Supported parameters are:iter = 0; int in [1, 1000000]β Number of iterations to run, 0=until convergence. βοΈ
regiongrowβ Region growing starting from a seed until only along increasing gradients, supported parameters are:n = 8n; factoryβ Neighborhood shape. For supported plug-ins see PLUGINS:2dimage/shapeseed =(input, required, io)β seed image (bit valued). For supported file types see PLUGINS:2dimage/io π±
sandpβ salt and pepper 3d filter, supported parameters are:thresh = 100; float in (0, inf)β thresh value.w = 1; int in [1, inf)β filter width parameter. π§
scaleβ 2D image downscale filter, supported parameters are:interp = [bspline:d=3]; factoryβ interpolation method to be used. For supported plug-ins see PLUGINS:1d/splinekernels = [[0,0]]; 2dboundsβ target size as 2D vector.sx = 0; uint in [0, inf)β target size in x direction, 0: use input size.sy = 0; uint in [0, inf)β target size in y direction, 0: use input size. π
selectbigβ 2D label select biggest component filter. (no parameters) πsepconvβ 2D image intensity separable convolution filter, supported parameters are:kx = [gauss:w=1]; factoryβ filter kernel in x-direction. For supported plug-ins see PLUGINS:1d/spacialkernelky = [gauss:w=1]; factoryβ filter kernel in y-direction. For supported plug-ins see PLUGINS:1d/spacialkernel π
shmeanβ 2D image filter that evaluates the mean over a given neighborhood shape, supported parameters are:shape = 8n; factoryβ neighborhood shape to evaluate the mean. For supported plug-ins see PLUGINS:2dimage/shape πΈ
sobelβ The 2D Sobel filter for gradient evaluation. Note that the output pixel type of the filtered image is the same as the input pixel type, so converting the input beforehand to a floating point valued image is recommendable. Supported parameters are:dir = x; dictβ Gradient direction. Supported values are:xβ gradient in x-directionyβ gradient in y-direction π§
sort-labelβ This plug-in sorts the labels of a gray-scale image so that the lowest label value corresponds to the label with the most pixels. The background (0) is not touched. (no parameters) π’swsβ seeded watershed. The algorithm extracts exactly so many regions as initial labels are given in the seed image. Supported parameters are:grad = 0; boolβ Interpret the input image as gradient.mark = 0; boolβ Mark the segmented watersheds with a special gray scale value.n = [sphere:r=1]; factoryβ Neighborhood for watershed region growing. For supported plug-ins see PLUGINS:2dimage/shapeseed =(input, required, string)β seed input image containing the labels for the initial regions. π§
teeβ Save the input image to a file and also pass it through to the next filter, supported parameters are:file =(output, required, io)β name of the output file to save the image too. For supported file types see PLUGINS:2dimage/io π«
thinningβ Morphological thinning. Thinning until convergence will result in a 8-connected skeleton. Supported parameters are:iter = 0; int in [1, 1000000]β Number of iterations to run, 0=until convergence. π¦΄
threshβ This filter sets all pixels of an image to zero that fall below a certain threshold and whose neighbours in a given neighborhood shape also fall below a this threshold, supported parameters are:shape = 4n; factoryβ neighborhood shape to take into account. For supported plug-ins see PLUGINS:2dimage/shapethresh = 5; doubleβ The threshold value. β‘
tmean β 2D image thresholded tmean filter π«Ά The way this one works: your output pixel value is 0 if the input pixel value is below the threshold you gave, otherwise the pixels in the evaluation windows only get considered if the input pixel intensity is above that threshold. Very "if you're not on the list, you're not coming in" energy. Params it fw:
t = 0;floatβ threshold for pixels not to take into account.w = 1;int in [1, inf)β half filter width.
transform β transforms the input image with the transformation you hand it π«
file =(input, required, io)β name of the file containing the transformation. For supported file types seePLUGINS:2dtransform/io.
ws β basic watershead segmentation (yes bestie, spelled exactly like that, we adore her) π
evalgrad = 0;boolβ set to1if the input image does not represent a gradient norm image.mark = 0;boolβ mark the segmented watersheds with a special gray scale value.n = [sphere:r=1];factoryβ neighborhood for watershead region growing. For supported plug-ins seePLUGINS:2dimage/shape.thresh = 0;float in [0, 1)β relative gradient norm threshold. The actual value threshold value isthresh * (max_grad - min_grad) + min_grad. Bassins separated by gradients with a lower norm will be joined.
πΌοΈ PLUGINS: 2dimage/io β¨
Your image-reading-and-writing besties. What format, what pixels, no cap:
bmpβ BMP 2D-image input/output support. Reads and writes binary images and 8-bit gray scale images. read-only support is provided for 4-bit gray scale images. The color table is ignored and the pixel values are taken as literal gray scale values. π¨- Recognized file extensions:
.BMP,.bmp - Supported element types:
binary data,unsigned 8 bit
- Recognized file extensions:
datapoolβ virtual IO to and from the internal data pool π«- Recognized file extensions:
.@
- Recognized file extensions:
dicomβ 2D image io for DICOM π©»- Recognized file extensions:
.DCM,.dcm - Supported element types:
signed 16 bit,unsigned 16 bit
- Recognized file extensions:
exrβ a 2dimage io plugin for OpenEXR images π₯- Recognized file extensions:
.EXR,.exr - Supported element types:
unsigned 32 bit,floating point 32 bit
- Recognized file extensions:
jpgβ a 2dimage io plugin for jpeg gray scale images π·- Recognized file extensions:
.JPEG,.JPG,.jpeg,.jpg - Supported element types:
unsigned 8 bit
- Recognized file extensions:
pngβ a 2dimage io plugin for png images π¦- Recognized file extensions:
.PNG,.png - Supported element types:
binary data,unsigned 8 bit,unsigned 16 bit
- Recognized file extensions:
rawβ RAW 2D-image output support π (output only, don't come for me)- Recognized file extensions:
.RAW,.raw - Supported element types:
binary data,signed 8 bit,unsigned 8 bit,signed 16 bit,unsigned 16 bit,signed 32 bit,unsigned 32 bit,floating point 32 bit,floating point 64 bit
- Recognized file extensions:
tifβ TIFF 2D-image input/output support πΈ- Recognized file extensions:
.TIF,.TIFF,.tif,.tiff - Supported element types:
binary data,unsigned 8 bit,unsigned 16 bit,unsigned 32 bit
- Recognized file extensions:
vistaβ a 2dimage io plugin for vista images β- Recognized file extensions:
.-,.V,.VISTA,.v,.vista - Supported element types:
binary data,signed 8 bit,unsigned 8 bit,signed 16 bit,unsigned 16 bit,signed 32 bit,unsigned 32 bit,floating point 32 bit,floating point 64 bit
- Recognized file extensions:
π§ PLUGINS: 2dimage/shape π
Shapes = the neighborhoods and masks. Pick your vibe:
1nβ a shape that only contains the central point. Just the one pixel. Minimalist queen π- (no parameters)
4nβ 4n neighborhood 2D shape- (no parameters)
8nβ 8n neighborhood 2D shape- (no parameters)
rectangleβ rectangle shape mask creator. Params bestie:fill = 1;boolβ create a filled shape.height = 2;int in [1, inf)β height of rectangle.width = 2;int in [1, inf)β width of rectangle.
sphereβ closed spherical neighborhood shape of radius r. π«§r = 2;float in (0, inf)β sphere radius.
squareβ square shape mask creator. Params:fill = 1;boolβ create a filled shape.width = 2;int in [1, inf)β width of rectangle.
not me clocking thatsquaredescribeswidthas "width of rectangle" π that's just what the page says, keeping it 100% real.
π PLUGINS: 2dtransform/io π
Reading and writing those 2D transformations, format by format:
bbsβ Binary (non-portable) serialized IO of 2D transformations- Recognized file extensions:
.bbs
- Recognized file extensions:
datapoolβ virtual IO to and from the internal data pool π«- Recognized file extensions:
.@
- Recognized file extensions:
vistaβ Vista storage of 2D transformations β¨- Recognized file extensions:
.v2dt
- Recognized file extensions:
xmlβ XML serialized IO of 2D transformations π- Recognized file extensions:
.x2dt
- Recognized file extensions:
π PLUGINS: generator/noise π
Noise generators, aka chaos but make it statistical:
gaussβ this noise generator creates random values that are distributed according to a Gaussien distribution by using the Box-Muller transformation. π Params:mu = 0;floatβ mean of distribution.seed = 0;uint in [0, inf)β set random seed (0= init based on system time).sigma = 1;float in (0, inf)β standard derivation of distribution.
uniformβ uniform noise generator using C stdlibrand(). Params:a = 0;floatβ lower bound if noise range.b = 1;floatβ higher bound if noise range.seed = 0;uint in [0, inf)β set random seed (0= init based on system time).
π EXAMPLE π
Okay so the actual assignment: evaluate the median of the 2nd order derivative of the series given in segmentation set segment.set after filtering with a Gaussian of width 3. And btw also write the time intensity curve of pixel <128,64> to curve.txt. Slay.
mia-2dseries2dordermedian -i segment.set -o gradmedian.exr -g 1
--itc-file curve.txt --itc-loc "<128,64>"
π AUTHOR(s) π
Gert Wollny
π COPYRIGHT π
This software is Copyright (c) 1999β2015 Leipzig, Germany and Madrid, Spain. It comes with ABSOLUTELY NO WARRANTY and you may redistribute it under the terms of the GNU GENERAL PUBLIC LICENSE Version 3 (or later). For more information run the program with the option --copyright.
And that's a wrap, bestie π«Ά this page is from the USER COMMANDS section of the manual, version v2.4.7, dated 1999β2015, and it goes by the name mia-2dseri...ordermedian(1) β the truncated names are giving "character limit ate my homework" but the Unix is real, iykyk. Go run it, the medians are medianing π
β¨π
π¦ where this page comes from
- ubuntu resolute: mia-tools 2.4.7-18 Β· GPL-3.0-or-later
- ubuntu stonking: mia-tools 2.4.7-19build1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms