mia-3dsegm...cal-cmeans(1)
π mia-3dsegm...cal-cmeans(1) π
okay bestie, welcome to the General Commands Manual page for mia-3dsegment-local-cmeans, and no cap, this one is genuinely iconic. it's a segmentation girlie. she takes a 3D image and cuts it into classes. let's get into it π«Ά
β¨ NAME β¨
mia-3dsegment-local-cmeans β Run a c-means segmentation of a 3D image. that's it, that's the whole job. periodt.
πΈ SYNOPSIS πΈ
mia-3dsegment-local-cmeans -i <in-file> [options]
π¦ DESCRIPTION π¦
so like, mia-3dsegment-local-cmeans runs a segmentation of a 3D image by applying a localized c-means approach, and the whole point of the localized thing is that it helps to overcome intensity inhomogeneities in the image. because bestie, real-world images are messy and the lighting is not consistent, and we're not letting that ruin our clustering. π
the way it works: the approach evaluates a global c-means clustering first, and then separates the image into overlapping regions where more c-means iterations are run, but only including the locally present classes β meaning the classes that relatively contain more pixels than a given threshold. so basically, local girlies only, no flops allowed in. π
this program implements the algorithm described in:
Dunmore CJ, Wollny G, Skinner MM. (2018) MIA-Clustering: a novel
method for segmentation of paleontological material. PeerJ
6:e4374.
paleontological material!! fossils!! she's an academic icon, we love a niche queen π
π OPTIONS π
π File-IO
-i,--in-file=(required, input); ioβ the image to be segmented. it's required, so like, you literally cannot skip it, bestie. For supported file types seePLUGINS:3dimage/io.-o,--out-file=(output); ioβ class label image based on merging local labels. For supported file types seePLUGINS:3dimage/io.-G,--out-global-crisp=(output); ioβ class label image based on global segmentation (the global one, not the local one, iykyk). For supported file types seePLUGINS:3dimage/io.-C,--class-prob=(output); ioβ class probability image file. heads up: the filetype must support floating point multi-frame images, no exceptions. For supported file types seePLUGINS:3dimage/io.
π¬ Help & Info
-V,--verbose=warningβ verbosity of output. it prints messages of the given level and higher priorities. 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β print copyright information.-h,--helpβ print this help.-?,--usageβ print a short help.--versionβ print the version number and exit. slay.
π Parameters
-g,--grid-spacing=15; int in [3, inf)β spacing of the grid used to modulate the intensity inhomogeneities. default is15, and it's anintin the range[3, inf), so3is your floor, no going below it.-c,--cmeans=kmeans:nc=3β c-means initializer. For supported plugins seePLUGINS:1d/cmeans.-e,--c-means-epsilon=0.0001; float in (0, inf)β the c-means breaking condition for update tolerance. default0.0001, afloatin(0, inf)β strictly greater than zero, bestie, zero is not invited.-t,--relative-cluster-threshold=0.02; double in [0, 1)β threshhold to ignore classes when initializing the local cmeans from the global one. (yes it's spelled "threshhold" in the original and I'm keeping it, character for character, that's the rule π€) default0.02, adoublein[0, 1).-B,--ignore-backgroundβ Don't take background probablities into account when desiding whether classes are to be ignored. (again: original spelling, preserved exactly, don't come for me π)-L,--label-threshold=0; float in [0, 1]β okay this one has lore, listen closely:- for values
<= 0.5: create segmentation based on highest class probability, labels start at 0. - for values
> 0.5: create labels only for voxels with a class probability higher than the given value, labels start at 1, and voxels without an according class probability are set to 0. - this output is suitable for the seeded watershed filter. π
- for values
βοΈ Processing
--threads=-1β Maxiumum number of threads to use for processing, This number should be lower or equal to the number of logical processor cores in the machine. (-1: automatic estimation). so-1means "girl, figure it out yourself" and honestly same.
π PLUGINS: 1d/cmeans π
these are your c-means initializer options, pick your fighter:
even
C-Means initializer that sets the initial class centers as evenly distributed over [0,1]. supported parameters are:
nc =(required, ulong)β Number of classes to use for the fuzzy-cmeans classification.
kmeans
C-Means initializer that sets the initial class centers by using a k-means classification. supported parameters are:
nc =(required, ulong)β Number of classes to use for the fuzzy-cmeans classification.
predefined
C-Means initializer that sets pre-defined values for the initial class centers. supported parameters are:
cc =(required, vdouble)β Initial class centers fuzzy-cmeans classification (normalized to range[0,1]).
π PLUGINS: 3dimage/io π
all the file formats she can read and write, and exactly what they support. no gatekeeping π
analyze
Analyze 7.5 image
- Recognized file extensions:
.HDR,.hdr - Supported element types:
- unsigned 8 bit, signed 16 bit, signed 32 bit, floating point 32 bit, floating point 64 bit
datapool
Virtual IO to and from the internal data pool
- Recognized file extensions:
.@
dicom
Dicom image series as 3D
- Recognized file extensions:
.DCM,.dcm - Supported element types:
- signed 16 bit, unsigned 16 bit
hdf5
HDF5 3D image IO
- Recognized file extensions:
.H5,.h5 - Supported element types:
- binary data, signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32 bit, signed 64 bit, unsigned 64 bit, floating point 32 bit, floating point 64 bit
inria
INRIA image
- Recognized file extensions:
.INR,.inr - Supported element types:
- 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
mhd
MetaIO 3D image IO using the VTK implementation (experimental).
- Recognized file extensions:
.MHA,.MHD,.mha,.mhd - Supported element types:
- 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
nifti
NIFTI-1 3D image IO. The orientation is transformed in the same way like it is done with 'dicomtonifti --no-reorder' from the vtk-dicom package.
- Recognized file extensions:
.NII,.nii - Supported element types:
- signed 8 bit, unsigned 8 bit, signed 16 bit, unsigned 16 bit, signed 32 bit, unsigned 32 bit, signed 64 bit, unsigned 64 bit, floating point 32 bit, floating point 64 bit
vff
VFF Sun raster format
- Recognized file extensions:
.VFF,.vff - Supported element types:
- unsigned 8 bit, signed 16 bit
vista
Vista 3D
- 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
vti
3D image VTK-XML in- and output (experimental).
- Recognized file extensions:
.VTI,.vti - Supported element types:
- 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
vtk
3D VTK image legacy in- and output (experimental).
- Recognized file extensions:
.VTK,.VTKIMAGE,.vtk,.vtkimage - Supported element types:
- 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
π EXAMPLE π
Run the segmentation on image test.png using three classes, local regions of 40 pixels (grid width 20 pixels), and a class ignore threshold of 0.01.
mia-3dsegment-local-cmeans -i test.png -o label.png -n 3 -g 20 -t 0.01
(and yes, that example says -n 3 β I am reporting it exactly as written, don't ask me, I don't make the rules π)
π 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'.
real talk: ABSOLUTELY NO WARRANTY is in all caps for a reason, bestie. she's giving you the tool as-is. respect the license, it's the law π
and that's the whole page!! this one shipped as part of the USER COMMANDS crew, version v2.4.7 of the manual, under the mia-3dsegm...cal-cmeans(1) title. go segment something gorgeous. bye bestie πβ¨π
π¦ where this page comes from
- debian bookworm: mia-tools 2.4.7-11+b1 Β· GPL-3.0-or-later
- ubuntu jammy: mia-tools 2.4.7-8ubuntu1 Β· 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