For the complete documentation index, see llms.txt. This page is also available as Markdown.

Heatmap Visualization

Draw a heatmap based on detections in an image.

Draw heatmaps on an image based on provided detections. Heat accumulates over time and is drawn as a semi-transparent overlay of blurred circles.

How This Block Works

This block takes an image and detection predictions and draws a heatmap. The block:

  1. Takes an image and predictions as input.

  2. Accumulates heat based on the position of detections.

  3. Draws a semi-transparent overlay of blurred circles representing the heat.

Common Use Cases

  • Density Analysis: Visualize the density of objects in a scene.

  • Traffic Monitoring: Identify high-traffic areas.

  • Retail Analytics: Analyze foot traffic in stores.

Type identifier

Use the following identifier in step "type" field: roboflow_core/heatmap_visualization@v1 to add the block as a step in your workflow.

Properties

Name

Type

Description

Refs

name

str

Enter a unique identifier for this step..

copy_image

bool

Enable this option to create a copy of the input image for visualization, preserving the original. Use this when stacking multiple visualizations..

position

str

The position of the heatmap relative to the detection..

opacity

float

Opacity of the overlay mask, between 0 and 1..

radius

int

Radius of the heat circle..

kernel_size

int

Kernel size for blurring the heatmap..

top_hue

int

Hue at the top of the heatmap. Defaults to 0 (red)..

low_hue

int

Hue at the bottom of the heatmap. Defaults to 125 (blue)..

ignore_stationary

bool

If True, only moving objects (based on tracker ID) will contribute to the heatmap..

motion_threshold

int

Minimum movement in pixels required to consider an object as moving..

The Refs column marks possibility to parametrise the property with dynamic values available in workflow runtime. See Bindings for more info.

Runtime compatibility

soft - runtime hosted_serverless, dedicated_deployment; execution remote; input video : Heatmap accumulation and stationary-object filtering keep per-video tracking state in process memory. With remote step execution on stateless or multi-replica HTTP runtimes, successive frames may be served by different worker processes, so heat history resets or splits across workers. Use local step execution in a persistent WebRTC session for stable cross-frame visualizations.

soft - input image : Block depends on temporal context from video or repeated-frame workflows. With a still image/photo, there is no meaningful history to track, compare, aggregate, or visualize, so the block provides little or no benefit.

Input and Output Bindings

The available connections depend on its binding kinds. Check what binding kinds Heatmap Visualization in version v1 has.

Input and output bindings
  • input

    • image (image): The image to visualize on..

    • copy_image (boolean): Enable this option to create a copy of the input image for visualization, preserving the original. Use this when stacking multiple visualizations..

    • metadata (video_metadata): Video metadata containing video_identifier to maintain separate state for different videos..

    • position (string): The position of the heatmap relative to the detection..

    • opacity (float): Opacity of the overlay mask, between 0 and 1..

    • radius (integer): Radius of the heat circle..

    • kernel_size (integer): Kernel size for blurring the heatmap..

    • top_hue (integer): Hue at the top of the heatmap. Defaults to 0 (red)..

    • low_hue (integer): Hue at the bottom of the heatmap. Defaults to 125 (blue)..

    • ignore_stationary (boolean): If True, only moving objects (based on tracker ID) will contribute to the heatmap..

    • motion_threshold (integer): Minimum movement in pixels required to consider an object as moving..

  • output

    • image (image): Image in workflows.

Example JSON definition

Last updated

Was this helpful?