Imagej operation reference
Generated from the current declarations. Do not edit this file by hand.
Types, limits and defaults below describe resolved values. Runtime expressions must produce these types. Unknown options are rejected; defaults apply only when omitted. Constructor options must be constant after document composition.
Index#
analyzeParticles#
Thresholds one calibrated 8- or 16-bit grayscale image with ImageJ 1.x and measures every particle: pixel count, area, centroid and bounding box in the declared unit, plus raw mean/min/max intensity. Outputs are particles.csv (one row per particle, units in column names) and particle-summary.json (image digest, calibration, threshold, connectivity, filters and totals). Every native value is checked against an independent connected-component model and a fresh-process re-measurement. Use it to count and size blobs, grains, pores or cells after a fixed intensity threshold, then hand the table to Calc or R.
Common mistakes and assumptions:
- The threshold is a fixed inclusive raw-intensity window; there is no automatic threshold, smoothing or watershed separation.
- Calibration comes from the document, not the file: declare the true pixel size and unit.
- Touching objects merge into one particle; corner contact merges them under eight connectivity.
- Synthetic acceptance targets establish semantics, not suitability for a particular experimental dataset.
Native binding: ij.plugin.filter.ParticleAnalyzer (ImageJ 1.x Analyze Particles). Output kind: ["table","text"].
Inputs: none.
| Option | Meaning | Type / constraints | Default |
|---|---|---|---|
image |
Absolute path to the image to measure: a binary P5 .pgm (maxval 255 or 65535) or an uncompressed single-plane baseline .tif/.tiff with 8- or 16-bit unsigned samples, at most 2048 px per side and 1048576 px. The bytes are copied into the run directory and their SHA-256 is recorded, so a later change to the file prevents reuse of the result. | {"type":"string","minLength":2,"maxLength":4096} |
required |
calibration |
Physical size of one pixel. It replaces any calibration stored in the file and sets the unit of every length and area column. | {"type":"object","properties":{"pixelWidth":{"type":"number","minimum":1e-06,"maximum":1000000.0,"required":true},"pixelHeight":{"type":"number","minimum":1e-06,"maximum":1000000.0,"required":true},"unit":{"type":"enum","values":["nm","um","mm","cm","m"],"required":true}}} |
required |
threshold |
Inclusive window of raw stored intensities that defines particle pixels: lower <= value <= upper. | {"type":"object","properties":{"lower":{"type":"integer","minimum":0,"maximum":65535,"required":true},"upper":{"type":"integer","minimum":0,"maximum":65535,"required":true}}} |
required |
connectivity |
How pixels join into particles: eight joins pixels touching at a corner; four joins only edge neighbours, so corner-touching blobs stay separate. | {"type":"enum","values":["eight","four"]} |
"eight" |
includeHoles |
When true, each particle is the whole region inside its outer boundary: interior holes, and any particle lying inside them, count towards its area and intensity statistics. When false, a particle is exactly its connected thresholded pixels. | {"type":"boolean"} |
false |
excludeEdges |
When true, particles whose bounding box touches any image border are dropped, because they may be cut off. They are counted in the summary under rejected.edge. | {"type":"boolean"} |
false |
minimumArea |
Smallest particle area kept, in unit squared (inclusive). It is converted to a whole pixel count before ImageJ runs; use it to drop noise specks. | {"type":"number","minimum":0,"maximum":1e+30} |
0 |
maximumArea |
Largest particle area kept, in unit squared (inclusive), converted to a whole pixel count. | {"type":"number","minimum":0,"maximum":1e+30} |
omitted |