Bioimage Measurement QC
Overview
Measure labeled objects, export analysis tables, and generate quality-control outputs that make segmentation results easier to trust and debug.
Default stack
Prefer:
numpyscipyscikit-imagetifffilepandasmatplotlibnapari
Inputs
Typical inputs are:
- raw image
- processed image
- labels or binary mask
- optional channel metadata
If labels are missing, stop and redirect to the appropriate segmentation workflow unless the user explicitly wants a measurement-from-mask-only task.
Measurement workflow
- Confirm which label image is the source of truth.
- Confirm whether measurements are 2D, slice-wise 3D, or full 3D.
- Measure geometry and intensity separately but report them together.
- Export a flat table with one row per object whenever possible.
Default measurements
Prefer a practical default set:
- label id
- area or volume
- centroid
- bbox
- equivalent diameter
- eccentricity when meaningful
- solidity when meaningful
- mean intensity
- max intensity
- min intensity
For multichannel data, use explicit column naming such as:
mean_intensity_ch0mean_intensity_ch1
QC outputs
Generate QC artifacts by default:
- histogram of object size
- histogram of mean intensity
- object count summary
- overlay image or napari layer suggestion
- summary of likely failure modes
Example failure modes to flag:
- many tiny objects -> threshold too low or noise not removed
- many border-touching objects -> crop/field-of-view issue
- implausibly large merged objects -> under-segmentation
- too many zero-intensity objects -> label/image mismatch
Filtering rules
When filtering objects, preserve provenance.
- Save both unfiltered and filtered tables when practical.
- Record thresholds used for filtering.
- Never silently drop rows.
Deliverables
Produce these by default unless the user opts out:
- CSV measurement table
- QC plots in PNG format
- runnable Python script
- notebook version
- concise narrative summary
Interpretation rules
- Do not over-interpret biological meaning from morphology alone.
- Separate measurement facts from biological hypotheses.
- Flag suspicious units when pixel size metadata is missing.
Resources
references/qc-checklist.md: common QC checks and failure modesscripts/measure_labels.py: minimal measurement script
Scan to join WeChat group