Time measurement

Time measurement

Time measurement (also called field measurement over time) quantifies how intensity changes throughout a time-lapse sequence. Unlike object counting workflows that detect and count individual objects, time measurement focuses on aggregate intensity within defined regions—either the entire field of view or specific regions of interest (ROIs).

This is one of the simplest yet most powerful workflows in GA3, commonly used to track:

  • Calcium signaling (fluorescence changes in cells)
  • Bleaching kinetics (fluorophore photobleaching over time)
  • Expression dynamics (protein expression levels)
  • Drug responses (intensity changes after treatment)
  • Multi-channel comparisons (ratio imaging, FRET)

What this workflow produces

Both workflow variants produce temporal intensity data but differ in scope and organization:

Channel-based workflow (whole field or single mask):

  • Table showing mean, max, min intensity per frame across all channels
  • Line chart with separate traces for each channel
  • Simple comparison of multiple channels in the same region

ROI-based workflow (multiple regions):

  • Table pivoted to show each ROI as a separate column
  • Line chart with one trace per ROI (color-coded)
  • Comparison of intensity dynamics across multiple spatial regions

Both produce synchronized displays where clicking a table row jumps to the corresponding time point in the image.

Time measurement workflow result

Workflow overview

Time measurement workflows consist of four core components:

Define measurement region(s)

Either use the entire field, draw a single mask, or draw multiple ROIs.

Measure intensity features

Extract mean, max, min intensity values per frame.

Accumulate over time

Collect measurements from all frames into a single table.

Visualize temporal trends

Display data as tables and line charts showing intensity evolution.

Workflow variations

This workflow comes in two main variants that share similar structure but differ in how they define and process measurement regions:

Variant 1: Channel-based (whole field or single mask)

Use case: Compare intensity changes across multiple channels in the same region.

Key features:

  • Optional single ROI/mask applied globally
  • Measures all channels simultaneously
  • One row per frame with columns for each channel and statistic
  • Line chart displays multiple channels as separate series

When to use:

  • Comparing channel dynamics (e.g., FRET ratio imaging)
  • Tracking overall field intensity
  • Measuring intensity in one defined region across channels

Variant 2: ROI-based (multiple regions)

Use case: Compare intensity dynamics across multiple spatial locations in a single channel.

Key features:

  • User draws multiple ROIs (2-20+ regions)
  • Measures selected channel in each ROI
  • Cross-tabulated view with ROIs as columns
  • Line chart displays one trace per ROI

When to use:

  • Comparing different cells or cellular compartments
  • Tracking independent regions simultaneously
  • Measuring local vs. global responses
  • Ratio measurements between specific locations
The key difference: Channel workflow measures multiple channels in one region; ROI workflow measures one channel in multiple regions. Choose based on whether you’re comparing channels or comparing locations.

Variant 1: Channel-based measurement

This simpler variant measures intensity across all channels in a single field or masked region.

  
---
config:
  look: handDrawn
  theme: neutral
---
graph TD
  subgraph Measurement
    draw[Draw Mask Optional]
    field[Field Measurement]
    accum[Accumulate Records]
    table[Table - All Frames]
    chart[Line Chart - Channels]
  end

  subgraph Presentation
    left[Stacked Layout - Left]
    right[Stacked Layout - Right]
    display[Display]
  end

  subgraph Outputs
    savechn[Save Channels]
    savebin[Save Binaries]
    savetab[Save Tables]
  end

  %% Main workflow
  channels[Channels] -->|All| draw -->|Mask| field
  channels -->|All| field

  field -->|Records| accum
  accum -->|Records| table
  accum -->|Records| chart

  %% Presentation
  table --> left
  chart --> right
  left --> display
  right --> display

  %% Outputs
  channels -->|All| savechn
  draw -->|Mask| savebin
  display -->|Results| savetab
Channel-based time measurement recipe

Drawing the measurement mask (optional)

To draw a ROI/Mask use Draw Objects. That allows defining a region of interest interactively when the recipe runs.

Key features:

  • Interactive drawing: When the recipe executes, a dialog appears prompting you to draw a region
  • Drawing tools: Rectangle, ellipse, polygon, freehand
  • Optional: If no mask is drawn, the entire field is measured
  • Persistent: Once drawn, the same mask applies to all frames in the time-lapse

How it works:

  1. Run the recipe
  2. Drawing dialog appears overlaid on the image
  3. Select a drawing tool and define the region
  4. Click OK to proceed with measurement

Draw objects

The mask output is a binary layer that restricts the measurement to pixels inside the drawn region.

When to use a mask:

  • Focus on a specific cell or region
  • Exclude background or edge artifacts
  • Measure intensity in a defined cellular compartment
  • Compare intensity inside vs outside a region (requires two separate measurements)

When to skip the mask:

  • Measuring the entire field
  • Uniform sample with minimal background
  • Comparing overall intensity across channels

Field Measurement

Field Measurement computes intensity statistics for the entire field or masked region. This is a field-level measurement, meaning it produces one value per frame (not per object).

Field measurement

Inputs:

  • Channel(s): The intensity channels to measure
  • Mask: Binary layer restricting the measurement region

Measured features:

System features (automatic):

  • Loop Indexes: Frame number
  • WellName: Well identifier (for multi-well plates)
  • Time: Timestamp in seconds

Intensity features (per channel):

  • Mean Intensity: Average pixel intensity in the region
  • Maximum Intensity: Brightest pixel value
  • Minimum Intensity: Dimmest pixel value

Aggregation: Each intensity feature is measured per channel. With 3 channels, you get:

  • MeanIntensity (DAPI)
  • MeanIntensity (FITC)
  • MeanIntensity (Texas Red)
  • MaximumIntensity (DAPI)
  • MaximumIntensity (FITC)
  • etc.

The node produces one row per frame, with columns for all measured features across all channels.

Mask behavior: If a mask is connected to the Interactive drawing it can handle empty mask and ignores it (as if it was not connected). Otherwise an empty mask produces no measurement.

Accumulate Records

Accumulate Records collects measurements from all frames into a single table.

Settings:

  • LoopName: “All loops” (accumulate over all loops - time, z-stack, multi-point)

Without accumulation, only the current frame’s measurement would be available. Accumulation enables temporal analysis of the entire time-lapse.

Results Table

Table displays the accumulated intensity measurements.

Configuration:

  • Data/Display: “All data” to show all frames
  • Interaction/Row selection: Enabled for frame navigation
  • Statistics: Min, max, mean of each column

Table structure (example with 2 channels):

Time [s]MeanIntensity (DAPI)MeanIntensity (FITC)MaxIntensity (DAPI)MaxIntensity (FITC)
0.0001245.3876.240953821
2.1561198.7823.140123654
4.3121156.4779.839453498

Interactive features:

  • Click a row to navigate to that time point
  • Sort by any column to find max/min values
  • Statistics panel shows overall trends

Line Chart

Line Chart visualizes intensity changes over time.

Configuration:

  • X-axis: Time (formatted as time)
  • Y-axis: All intensity features (mean, max, min)
  • Color coding: Automatic channel-based palette
  • Display: “All data” to plot entire time series

Chart features:

  • Multiple traces: Each channel’s intensity plotted separately
  • Color-coded: Matches the channel colors from the image
  • Interactive tools: Pan, zoom, frame selection
  • Legend: Shows/hides individual traces

The chart immediately reveals:

  • Photobleaching (declining intensity)
  • Calcium transients (sharp intensity spikes)
  • Baseline stability
  • Channel relationships (increasing/decreasing together)

Line chart

Layout and Display

Two Stacked Layout nodes organize the views:

Left pane: Results table

Right pane: Line chart

Display combines these with the image viewer into a synchronized interface:

  • Selecting a table row jumps to that frame
  • The current frame is highlighted in the table
  • Chart shows temporal position of current frame

Variant 2: ROI-based measurement

This variant measures intensity in multiple user-defined regions, useful for comparing dynamics across different spatial locations.

  
---
config:
  look: handDrawn
  theme: neutral
---
graph TD
  subgraph Measurement
    draw[Draw ROIs Interactive]
    obj[Object Measurement]
    accum[Accumulate Records]
    group[Group Records]
    cross[Cross-Table]
    chart[Line Chart]
  end

  subgraph Presentation
    left[Stacked Layout - Left]
    right[Stacked Layout - Right]
    display[Display]
  end

  subgraph Outputs
    savechn[Save Channels]
    savebin[Save Binaries]
    savetab[Save Tables]
  end

  %% Main workflow
  channels[Channels] -->|All| draw -->|ROIs| obj
  channels -->|All| obj

  obj -->|Records| accum
  accum -->|Records| cross
  accum -->|Records| group
  group -->|Records| chart

  %% Presentation
  cross --> left
  chart --> right
  left --> display
  right --> display

  %% Outputs
  channels -->|All| savechn
  draw -->|ROIs| savebin
  display -->|Results| savetab
ROI-based time measurement recipe

Drawing Multiple ROIs

To draw ROIs use Draw Objects. It enables drawing multiple regions of interest that are treated as separate objects.

Key differences from single mask:

  • Multiple regions: Draw 2-20+ separate ROIs
  • Each ROI = object: Each region gets a unique Object ID
  • Independent measurement: Each ROI measured separately
  • Persistent across frames: All ROIs apply to every frame in the time-lapse

Interactive drawing workflow:

  1. Run the recipe
  2. Drawing dialog appears
  3. Draw first ROI (rectangle, polygon, etc.)
  4. Click “Add” to create additional ROIs
  5. Each new region becomes a separate object
  6. ROIs are numbered automatically (ROI 1, ROI 2, etc.)
  7. Click OK when all regions are defined

ROI organization:

  • ROIs are stored as a binary layer with object IDs
  • Each pixel has a value: 0 (background), 1 (ROI 1), 2 (ROI 2), etc.
  • ROIs can overlap (last-drawn takes precedence)
  • ROIs can be any shape (circles, polygons, freehand)

ROI placement strategies:

  • Cell comparison: Draw one ROI per cell to compare individual cell responses
  • Compartment analysis: Draw ROIs on nucleus, cytoplasm, membrane
  • Spatial gradients: Draw ROIs across the field to detect spatial patterns
  • Reference regions: Include background ROI for normalization

Object Measurement on ROIs

Object/ROI Measurement treats each ROI as an object and measures intensity features within it.

Object measurement

Inputs:

  • Binary (ROIs): The drawn ROIs as separate objects
  • Channel: The intensity channel to measure

Important difference from field measurement:

  • Field measurement → one row per frame
  • Object measurement → one row per ROI per frame

With 2 ROIs and 100 frames, this produces 200 rows (2 ROIs × 100 frames).

Measured features:

System features:

  • ObjectId: ROI identifier (1, 2, 3, etc.)
  • Time: Timestamp for this frame

Intensity features (per ROI, per frame):

  • Mean Intensity: Average intensity in this ROI
  • Additional features: Max, min, sum, standard deviation (configurable)

The key insight: Each ROI is measured independently at every time point, enabling direct comparison of temporal dynamics across regions.

Accumulate Records

Accumulate Records collects all ROI measurements across all frames.

Settings:

  • LoopName: “All loops” (accumulate over time)

The accumulated table contains all ROIs in all frames:

ObjectIdTime [s]MeanIntensity
10.0001245.3
20.000876.2
12.1561198.7
22.156823.1

This “long format” table has ROI and time on separate axes, requiring reshaping for easy comparison.

Group Records by ROI

Group Records organizes the data by ROI for visualization.

Settings:

  • Selected Columns: ObjectId (grouped by ROI)

Purpose: Prepares the data for line chart plotting where each ROI should be a separate trace. Grouping creates a hierarchical structure:

  • Group 1 (ROI 1): All time points for ROI 1
  • Group 2 (ROI 2): All time points for ROI 2
  • etc.

This allows the line chart to automatically create one trace per ROI with appropriate colors.

Cross-Tab (Pivoted Table)

Cross-Tab reshapes the table to show ROIs as columns instead of rows.

Configuration:

  • Data/Display: “All data”
  • Pivot Enabled: Yes
  • Pivot Column: ObjectId (ROI)
  • Pivot Direction: “Grouped” (one column per ROI value)

Table transformation:

Before (long format):

TimeObjectIdMeanIntensity
0.011245.3
0.02876.2
2.211198.7
2.22823.1

After (pivoted format):

Time [s]MeanIntensity (ROI 1)MeanIntensity (ROI 2)
0.0001245.3876.2
2.1561198.7823.1

Benefits:

  • One row per time point (easier to read)
  • Direct comparison across ROIs
  • Suitable for exporting to spreadsheet software
  • Each ROI is a separate column

Cross table

Line Chart (ROI traces)

Line Chart displays one trace per ROI.

Configuration:

  • X-axis: Time (formatted as time)
  • Y-axis: Mean Intensity (from grouped data)
  • Grouping: By ObjectId (one trace per ROI)
  • Color palette: “Object” palette (assigns distinct colors)

Chart features:

  • Multiple traces: Each ROI plotted as a separate colored line
  • Color-coded legend: Shows which color corresponds to which ROI
  • Synchronized: Clicking the chart navigates to that time point
  • Interactive tools: Pan, zoom, select frames

Line chart

This visualization immediately shows:

  • Which ROIs respond similarly (parallel traces)
  • Which ROIs have different dynamics (diverging traces)
  • Temporal relationships (which ROI peaks first)
  • Amplitude differences (which ROI has strongest signal)

Layout and Display

Two Stacked Layout nodes organize:

Left pane: Cross-tabulated table (ROIs as columns)

Right pane: Line chart (one trace per ROI)

Display creates a synchronized interface:

  • Selecting a table row jumps to that time point
  • Clicking on the chart navigates the image
  • ROI selection in image highlights corresponding table column

Image with results

Comparing the two variants

When to use Channel-based workflow

Best for:

  • Multi-channel imaging with co-localized signals
  • Ratio imaging (e.g., FRET, ratiometric calcium indicators)
  • Comparing different fluorophores in the same region
  • Simple whole-field intensity tracking

Advantages:

  • Simpler workflow (fewer nodes)
  • Automatic channel handling
  • Single-region focus reduces complexity
  • Easier to set up

Limitations:

  • Only one measurement region (or full field)
  • Cannot compare different spatial locations
  • Less suitable for heterogeneous samples

When to use ROI-based workflow

Best for:

  • Comparing multiple cells or regions
  • Subcellular compartment analysis (nucleus vs. cytoplasm)
  • Spatial heterogeneity studies
  • Single-cell time traces within a population
  • Local vs. global response comparison

Advantages:

  • Multiple independent measurements
  • Spatial comparison capability
  • Flexible ROI placement
  • Each ROI tracked separately

Limitations:

  • Requires interactive ROI drawing
  • More complex data structure (requires pivoting)
  • Limited to one channel per workflow (run multiple times for multi-channel)

Parameter comparison

FeatureChannel-basedROI-based
Measurement nodeField MeasurementObject Measurement
Regions0-1 (full field or mask)2-20+ (multiple ROIs)
ChannelsAll channels measuredSingle channel
Table formatOne row per framePivoted (ROIs as columns)
ChartOne trace per channelOne trace per ROI
ComplexitySimpleModerate

Advanced techniques

Background subtraction

Measure a background ROI and subtract from other ROIs:

  1. Include one ROI in a background region
  2. After accumulation, use Create Column
  3. Calculate: CorrectedIntensity = MeanIntensity - BackgroundIntensity

Ratio measurements

Create ratiometric traces (e.g., FRET ratio):

  1. Run channel-based workflow measuring donor and acceptor channels
  2. Use Create Column
  3. Calculate: Ratio = MeanIntensity(Acceptor) / MeanIntensity(Donor)
  4. Plot ratio over time

Normalized intensity

Normalize to baseline or peak:

  1. After accumulation, use Reduce Records
  2. Calculate baseline mean (first 10 frames)
  3. Use Create Column: NormalizedIntensity = (Intensity - Baseline) / Baseline
  4. Express as ΔF/F₀ (fractional change)

Multi-channel ROI analysis

Measure multiple channels in the same ROIs:

  1. Run the ROI workflow once per channel
  2. Save each result separately
  3. Use Join Records to merge tables
  4. Compare channel dynamics in each ROI

Tips and best practices

ROI drawing strategy

For single cells:

  • Draw ROIs tightly around cell boundaries
  • Avoid including intercellular space
  • Use ellipse or polygon tools for accurate fit
  • Number ROIs consistently if comparing across experiments

For subcellular compartments:

  • Draw nuclear ROI first (usually brightest)
  • Draw cytoplasmic ROI excluding nucleus
  • Include background ROI for normalization
  • Ensure ROIs don’t overlap (or manage overlap intentionally)

For field gradients:

  • Draw ROIs in a grid pattern
  • Use consistent ROI sizes
  • Number ROIs in spatial order (left to right, top to bottom)

Choosing measurement statistics

Mean intensity:

  • Most commonly used
  • Robust to small spatial variations
  • Represents average signal level

Maximum intensity:

  • Useful for detecting peaks (calcium spikes)
  • Sensitive to noise
  • Good for sparse signals

Minimum intensity:

  • Estimates baseline level
  • Useful in bleaching studies
  • Less commonly used

Sum intensity:

  • Total signal in the ROI
  • Depends on ROI size
  • Useful when ROI size matters (growing/shrinking regions)

Temporal analysis strategies

For photobleaching correction:

  1. Fit exponential decay to intensity data
  2. Calculate bleaching time constant
  3. Normalize later time points using fitted curve

For response quantification:

  1. Define baseline period (before stimulus)
  2. Calculate baseline mean and standard deviation
  3. Define response threshold (e.g., baseline + 3×SD)
  4. Measure response amplitude and duration above threshold

Performance optimization

For long time-lapses:

  • Use “Apply only on current frame in preview” in Accumulate Records
  • Process a subset of frames first to verify settings
  • Consider downsampling time points (every Nth frame) if temporal resolution allows

For many ROIs:

  • Limit to essential ROIs (10-20 max)
  • Use rectangular ROIs when possible (faster computation)
  • Consider batch processing if analyzing multiple datasets

Common issues and troubleshooting

No data in table / empty results

Cause: Mask or ROI not drawn, measurement fails

Solution:

  • Check that ROIs are actually drawn (should see colored overlays)
  • For channel-based: disconnect mask input if not using a mask

Line chart shows all ROIs as one trace

Cause: Group Records not applied correctly

Solution:

  • Verify Group Records is connected between Accumulate and Line Chart
  • Check that grouping is by ObjectId
  • Line chart palette should be set to “object” or “group”

Intensity values seem wrong

Cause: ROI placement, channel selection, or bit depth issues

Solution:

  • Verify ROIs are in the correct regions (not in background)
  • Check that correct channel is connected to measurement
  • Compare with image histogram

Cross-tab not showing ROIs as columns

Cause: Pivot settings incorrect

Solution:

  • Ensure Pivot Enabled is checked
  • Pivot Column should be ObjectId (or _ObjId)
  • Pivot Direction should be “grouped” or “wide”

Chart time axis not formatted correctly

Cause: Axis format not set to “time”

Solution:

  • In Line Chart settings, set X-axis labels_format to “time”
  • Verify Time column is selected for X-axis

Extending the workflow

Add curve fitting

After accumulation, use Fit node to:

  • Fit exponential decay for bleaching analysis
  • Fit sigmoidal curve for dose-response
  • Extract kinetic parameters

Add statistical analysis

Use statistical nodes to:

  • Calculate mean and SEM across replicates
  • Compare baseline vs. stimulated periods with t-tests
  • Quantify response amplitude and latency

Add automated ROI detection

Replace Draw ROIs with segmentation:

  • Use Threshold or Cellpose to detect cells automatically
  • Each detected object becomes an automatic ROI
  • Useful for large-scale analysis

Add time-course normalization

Use Create Column to:

  • Normalize to initial frame (t=0)
  • Express as percentage of maximum
  • Calculate z-scores

Output files

Both workflows save:

Save Channels

Save Channels doesn’t modify channel data as it “stores” the source (Original):

  • All input channels (RGB or fluorescence)
  • Original intensity values preserved

Save Binaries

Save Binaries saves the segmentation results:

  • Drawn mask (channel-based workflow)
  • Drawn ROIs (ROI-based workflow)

Save Tables

Save Tables saves all measurement results:

  • Data is saved into H5 file
  • Time-series intensity table
  • Can be exported to Excel/CSV
  • Includes all measured features

Related workflows

Summary

Time measurement is a versatile workflow for quantifying intensity changes throughout time-lapse sequences:

Channel-based variant: Best for multi-channel comparisons in single regions. Simple setup, automatic channel handling, ideal for ratio imaging and whole-field tracking.

ROI-based variant: Best for spatial comparisons within single channels. More complex but powerful for comparing multiple cells, compartments, or regions independently.

Both variants produce synchronized displays linking temporal data to images, enabling exploration of intensity dynamics. Choose the variant that matches your experimental question: comparing channels or comparing locations.