Detection Engine

Grow

Expanding detected events outward into surrounding tissue

View
Definition
Once nuclei are detected, you know where the cells are, but a nucleus is only the core of a cell. Grow (global) takes a coded imageLoading... of events and makes a new mask from each: inflated by a Grow radius, deflated by a Shrink radius, or a ring around the contour. You then measure a marker in that mask, such as a cytoplasmic marker in the ring around a nucleus.
TQ to SQ workflow
Video · Primary
Supporting
Guided workflow - nucl and cell measurements
Video · Supporting
H&EDSPTCH
Video · Supporting
Measurements Mask - Cellular
Video · Supporting
User Interface - Raw Data
Video · Supporting
Pre processing - Import - Coded Image
Video · Supporting
Detection - Nuclei Segmentation Classic
Video · Supporting
Pre processing - Advanced - Phenotype Interaction
Video · Supporting
Measurement - Standard Measurements (global) - General
Video · Supporting
Compartment Creation
From nucleus to its surroundings
Four modes
Grow, Shrink, Shrink (retain last pixel), Ring
Contours are the start
Radii count from each event's contour
Ring Operations
One engine, no subtraction

How It Works

Grow (global) sits in a layer's Measurements Masks section (Add > Operations (basic) > Grow (global)). It takes a set of detected events, a coded imageLoading..., and generates new measurement masks from them. Every mode uses each event's contour as its starting point.

  • Grow inflates each event body by the Grow radius.
  • Shrink deflates it by the Shrink radius.
  • Shrink (retain last pixel) deflates it too, but keeps the last pixel of an event smaller than the radius.
  • Ring grows inward by the Interior radius and outward by the Exterior radius, from a contour that Skip distance can shift outward first. Include seeds adds the original body, like an Or of the two masks.

In every mode a Mask input marks, in white, where growing or shrinking is allowed. The result is a coded image of the grown, shrunk or ring-shaped events, which a Measurements engine can take as its coded input in place of the original bodies.

Simplified

Grow takes each detected object and draws a new outline from its edge: bigger, smaller, or a ring around it. A ring around each nucleus is the usual way to measure what's in the cytoplasm next to it.

Science Behind It

Dilation and erosion, in general. In mathematical morphology, growing an object is called dilation and shrinking it erosion. Take a small disk, the structuring elementLoading..., and roll it along the outside of the object's edge: everything it sweeps joins the object. Rolled along the inside, it carves the object down. The Engines Reference doesn't say how StrataQuest measures the radius, so this is the textbook picture, and the morphological operationsLoading... page covers the family.

What growing can't do. Erosion and dilation aren't inverses. Shrink a small object until it disappears and no amount of growing brings it back, which is what Shrink (retain last pixel) guards against. Growing also can't restore boundary detail lost at detection, so choose radii from the biology you want to capture, not to patch a detection.

When neighbors collide. Grow two nearby nuclei and their grown masks can reach the same pixel. In image processing generally, one common rule gives each contested pixel to the nearest object, which divides the space between nuclei along the midline, much like a Voronoi diagram. StrataQuest's Basic Operations Module documents that rule for its Grow labels operation, where each pixel is assimilated by the closest label. For Grow (global) the Engines Reference doesn't say how a collision is resolved.

Why rings help. A cytoplasmic or membrane marker contributes little inside the nucleus, so its mean over the nuclear area mostly measures whatever happens to overlap it. A ring that starts at the nuclear contour samples the zone around the nucleus instead. Without a membrane stain, the ring's width is a guess about how far the cytoplasm reaches. The MembraneLoading... engine, and the identified mask of the Cellular engine, let a stain set that boundary instead.

Simplified

Growing an object is like rolling a coin around its outside edge and adding everything the coin sweeps; shrinking rolls it around the inside. Shrink a small object too far and it's gone for good, which is why one mode keeps a last pixel. A ring around a nucleus measures the zone where cytoplasmic and membrane markers sit.

Parameters & Settings

ParameterModeDescription
ModeallGrow, Shrink, Shrink (retain last pixel) or Ring (default Grow).
Grow radiusGrowThe size of the growing operation, starting from the events' contours.
Shrink radiusShrink, Shrink (retain last pixel)The size of the shrinking operation, starting from the events' contours. The retain variant keeps the last pixel of an event smaller than the radius.
Skip distanceRingShifts the starting point (the event's contour) outward by this distance.
Interior radiusRingThe size of inward growing from the (possibly shifted) contour. Acts like a Shrink radius.
Exterior radiusRingThe size of outward growing from the (possibly shifted) contour. Acts like a Grow radius.
Include seedsRingAdds the original event body to the ring, like an Or of the two masks.
MaskallA mask image whose white areas are where growing (or shrinking) is allowed.

The reference example grows and shrinks by 10 µm, so the radii can be set in micrometers. For a first ring, try Interior radius 0 and a small Exterior radius, then compare the overlay with the cells you see.

Source: StrataQuest 8.1 Engines Reference, ch. 24 (pp. 438–443); ch. 6.6 (p. 191); ch. 7 (pp. 361–364); ch. 29 (p. 465); ch. 41 (p. 538).

Simplified

Pick a Mode, then the distances it requires: a Grow or Shrink radius, or for a ring, how far in and how far out. A Mask can keep the new outlines inside an area you choose.

Practical Example

Suppose you've detected nuclei on DAPI in a multiplex immunofluorescence scan and want a cytoplasmic marker for each cell.

  1. Nuclear compartment: the NucleiLoading... events themselves.
  2. Inner ring: add Grow (global) in Measurements Masks with Mode Ring, Interior radius 0 and Exterior radius 3 µm, a band hugging the outside of each nucleus.
  3. Outer band: a second Grow (global) in Ring mode with Skip distance 3 µm and Exterior radius 6 µm starts where the first ring ends.
  4. Measure: add a Standard MeasurementsLoading... engine for each compartment and marker, with the grown events as Coded and the marker channel as Shades.

The radii here are illustrations. Set yours from the cell types in front of you, and check the overlay where cells crowd together. If you need nuclear, ring and stain-identified masks at once, the Cellular engine in the same category makes all three.

Simplified

Detect nuclei, then add a ring a few micrometers wide around each one. Measure the nuclear marker in the nucleus and the cytoplasmic marker in the ring, and every cell gets both numbers.

Connected Terms

Share This Term
Term Connections