Bounding Box Visualization¶
Class: BoundingBoxVisualizationBlockV1
Source: inference.core.workflows.core_steps.visualizations.bounding_box.v1.BoundingBoxVisualizationBlockV1
Draw bounding boxes around detected objects in an image, with customizable colors, thickness, and corner roundness.
How This Block Works¶
This block takes an image and detection predictions (from object detection, instance segmentation, or keypoint detection models) and draws rectangular bounding boxes around each detected object. The block:
- Takes an image and predictions as input
- Applies color styling based on the selected color palette, with colors assigned by class, index, or track ID
- Draws bounding boxes using Supervision's BoxAnnotator (for square corners) or RoundBoxAnnotator (for rounded corners) based on the roundness setting
- Applies the specified box thickness to control the line width of the bounding boxes
- Returns an annotated image with bounding boxes overlaid on the original image
The block supports various color palettes (default, Roboflow, Matplotlib palettes, or custom colors) and can color boxes based on detection class, index, or tracker ID. When roundness is set to 0, square corners are used; when roundness is greater than 0, rounded corners are applied for a softer visual appearance. You can choose whether to modify the original image or create a copy for visualization, which is useful when stacking multiple visualization blocks.
Common Use Cases¶
- Model Validation and Debugging: Visualize detection results to verify model performance, check bounding box accuracy, identify false positives or false negatives, and debug model outputs
- Results Presentation: Create annotated images for reports, dashboards, or presentations showing what objects were detected in images or video frames
- Quality Control: Overlay bounding boxes on production line images to visualize detected defects, products, or components for quality assurance workflows
- Monitoring and Alerting: Generate visual outputs showing detected objects for security monitoring, surveillance systems, or compliance tracking with annotated evidence
- Training Data Review: Review and validate training datasets by visualizing annotations and bounding boxes to ensure labeling accuracy and consistency
- Interactive Applications: Create user interfaces that display real-time detection results with bounding boxes for object tracking, counting, or identification applications
Connecting to Other Blocks¶
The annotated image from this block can be connected to:
- Other visualization blocks (e.g., Label Visualization, Polygon Visualization, Mask Visualization) to stack multiple annotations on the same image for comprehensive visualization
- Data storage blocks (e.g., Local File Sink, CSV Formatter, Roboflow Dataset Upload) to save annotated images for documentation, archiving, or training data preparation
- Webhook blocks to send visualized results to external systems, APIs, or web applications for display in dashboards or monitoring tools
- Notification blocks (e.g., Email Notification, Slack Notification) to send annotated images as visual evidence in alerts or reports
- Video output blocks to create annotated video streams or recordings with bounding boxes for live monitoring or post-processing analysis
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/bounding_box_visualization@v1to add the block as
as 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.. | ✅ |
color_palette |
str |
Select a color palette for the visualised elements.. | ✅ |
palette_size |
int |
Specify the number of colors in the palette. This applies when using custom or Matplotlib palettes.. | ✅ |
custom_colors |
List[str] |
Define a list of custom colors for bounding boxes in HEX format.. | ✅ |
color_axis |
str |
Choose how bounding box colors are assigned.. | ✅ |
thickness |
int |
Thickness of the bounding box edges in pixels. Higher values create thicker, more visible box outlines.. | ✅ |
roundness |
float |
Roundness of the bounding box corners, ranging from 0.0 (square corners) to 1.0 (fully rounded corners). When set to 0.0, square-cornered boxes are used; higher values create progressively more rounded corners.. | ✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to Bounding Box Visualization in version v1.
- inputs:
Detections Filter,Absolute Static Crop,VLM As Classifier,Qwen-VL,Gaze Detection,Triangle Visualization,Byte Tracker,EasyOCR,Model Comparison Visualization,Detection Event Log,Stitch OCR Detections,Track Class Lock,YOLO-World Model,OC-SORT Tracker,Llama 3.2 Vision,Heatmap Visualization,Stitch Images,Keypoint Visualization,Webhook Sink,Anthropic Claude,Detections Stabilizer,Google Gemini,GLM-OCR,QR Code Generator,Instance Segmentation Model,VLM As Detector,MoonshotAI Kimi,SAM2 Video Tracker,Multi-Label Classification Model,Twilio SMS/MMS Notification,Line Counter,PLC ModbusTCP,Distance Measurement,Ellipse Visualization,Keypoint Detection Model,Pixelate Visualization,Detections Transformation,Corner Visualization,Buffer,Template Matching,Bounding Rectangle,Llama 3.2 Vision,JSON Parser,Qwen 3.5 API,Velocity,Per-Class Confidence Filter,LMM,Roboflow Visual Search,OpenAI-Compatible LLM,Morphological Transformation,Color Visualization,Roboflow Dataset Upload,Dimension Collapse,Morphological Transformation,Camera Calibration,Motion Detection,Detection Offset,Google Vision OCR,Clip Comparison,Bounding Box Visualization,OpenAI,Halo Visualization,SAM3 Video Tracker,Object Detection Model,Identify Changes,Detections Combine,Contrast Equalization,CSV Formatter,Mask Area Measurement,Detections Classes Replacement,Instance Segmentation Model,Model Monitoring Inference Aggregator,MQTT Writer,PLC Reader,Image Threshold,Blur Visualization,Line Counter Visualization,Google Gemini,Background Color Visualization,Microsoft SQL Server Sink,Single-Label Classification Model,Background Subtraction,Identify Outliers,Object Detection Model,Twilio SMS Notification,OPC UA Writer Sink,Polygon Zone Visualization,Path Deviation,Instance Segmentation Model,SAM 3,Google Gemma API,Keypoint Detection Model,Reference Path Visualization,Image Stack,SAM 3 Interactive,Stability AI Inpainting,Crop Visualization,Anthropic Claude,Image Convert Grayscale,Dynamic Zone,Camera Focus,Image Slicer,Overlap Filter,Florence-2 Model,Polygon Visualization,Time in Zone,MoonshotAI Kimi,Dynamic Crop,Qwen 3.6 API,Event Writer,Perspective Correction,Segment Anything 2 Model,Line Counter,Polygon Visualization,Clip Comparison,OCR Model,Roboflow Visual Search Classifier,Circle Visualization,Slack Notification,CogVLM,Contrast Enhancement,PLC EthernetIP,Grid Visualization,Mask Edge Snap,Time in Zone,Byte Tracker,Local File Sink,LMM For Classification,Florence-2 Model,OpenAI,Roboflow Custom Metadata,SORT Tracker,Qwen3.5-VL,Image Blur,Label Visualization,ByteTrack Tracker,Seg Preview,Path Deviation,Object Detection Model,Anthropic Claude,Pixel Color Count,Roboflow Vision Events,Image Preprocessing,Trace Visualization,Email Notification,SIFT Comparison,Stability AI Outpainting,Detections Consensus,PTZ Tracking (ONVIF),Dot Visualization,Keypoint Detection Model,Roboflow Asset Library Attributes,Current Time,Halo Visualization,SAM 3,Classification Label Visualization,Mask Visualization,Image Contours,Camera Focus,OpenRouter,Moondream2,S3 Sink,Stability AI Image Generation,VLM As Detector,Google Gemma,Relative Static Crop,Roboflow Dataset Upload,OpenAI,Image Slicer,Detections Merge,Stitch OCR Detections,Google Gemini,BoT-SORT Tracker,Email Notification,Byte Tracker,SAM 3,Detections Stitch,Text Display,Size Measurement,Depth Estimation,Icon Visualization,OpenAI,Time in Zone,GeoTag Detection,SIFT Comparison,SIFT,Instance Segmentation Model,PLC Writer,Detections List Roll-Up,VLM As Classifier - outputs:
Absolute Static Crop,VLM As Classifier,Qwen-VL,Gaze Detection,Triangle Visualization,EasyOCR,Model Comparison Visualization,OC-SORT Tracker,YOLO-World Model,Track Class Lock,Llama 3.2 Vision,Anthropic Claude,Heatmap Visualization,Stitch Images,Keypoint Visualization,Detections Stabilizer,Google Gemini,Dominant Color,MoonshotAI Kimi,GLM-OCR,Instance Segmentation Model,VLM As Detector,SAM2 Video Tracker,Multi-Label Classification Model,Twilio SMS/MMS Notification,Ellipse Visualization,Single-Label Classification Model,SmolVLM2,Keypoint Detection Model,Pixelate Visualization,Corner Visualization,Buffer,Template Matching,Llama 3.2 Vision,Qwen2.5-VL,Qwen 3.5 API,LMM,Semantic Segmentation Model,Roboflow Visual Search,Morphological Transformation,Color Visualization,Roboflow Dataset Upload,Morphological Transformation,Camera Calibration,Motion Detection,Google Vision OCR,Clip Comparison,Bounding Box Visualization,OpenAI,Halo Visualization,SAM3 Video Tracker,Object Detection Model,Contrast Equalization,Instance Segmentation Model,Multi-Label Classification Model,Image Threshold,Blur Visualization,Line Counter Visualization,Google Gemini,Single-Label Classification Model,Background Subtraction,Object Detection Model,Instance Segmentation Model,SAM 3,QR Code Detection,Polygon Zone Visualization,Google Gemma API,Keypoint Detection Model,Image Stack,Reference Path Visualization,SAM 3 Interactive,Qwen3-VL,Stability AI Inpainting,Multi-Label Classification Model,Perception Encoder Embedding Model,Crop Visualization,Anthropic Claude,Image Convert Grayscale,Camera Focus,Image Slicer,Florence-2 Model,Polygon Visualization,MoonshotAI Kimi,Dynamic Crop,Qwen 3.6 API,Event Writer,Perspective Correction,Segment Anything 2 Model,Polygon Visualization,Clip Comparison,OCR Model,Roboflow Visual Search Classifier,Circle Visualization,CogVLM,Contrast Enhancement,Mask Edge Snap,Barcode Detection,Time in Zone,LMM For Classification,Qwen3.5-VL,Florence-2 Model,OpenAI,SORT Tracker,ByteTrack Tracker,Label Visualization,Image Blur,Seg Preview,Object Detection Model,Anthropic Claude,Pixel Color Count,Roboflow Vision Events,Image Preprocessing,Trace Visualization,Email Notification,SIFT Comparison,Stability AI Outpainting,Keypoint Detection Model,Dot Visualization,Halo Visualization,SAM 3,Classification Label Visualization,Mask Visualization,Image Contours,Camera Focus,Single-Label Classification Model,OpenRouter,Moondream2,Stability AI Image Generation,VLM As Detector,Google Gemma,CLIP Embedding Model,Relative Static Crop,Roboflow Dataset Upload,OpenAI,Image Slicer,Google Gemini,BoT-SORT Tracker,Byte Tracker,SAM 3,Detections Stitch,Semantic Segmentation Model,Text Display,Qwen3.5,Depth Estimation,Icon Visualization,OpenAI,GeoTag Detection,SIFT,Instance Segmentation Model,Background Color Visualization,VLM As Classifier
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Bounding Box Visualization in version v1 has.
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..predictions(Union[rle_instance_segmentation_prediction,instance_segmentation_prediction,keypoint_detection_prediction,object_detection_prediction]): Model predictions to visualize..color_palette(string): Select a color palette for the visualised elements..palette_size(integer): Specify the number of colors in the palette. This applies when using custom or Matplotlib palettes..custom_colors(list_of_values): Define a list of custom colors for bounding boxes in HEX format..color_axis(string): Choose how bounding box colors are assigned..thickness(integer): Thickness of the bounding box edges in pixels. Higher values create thicker, more visible box outlines..roundness(float_zero_to_one): Roundness of the bounding box corners, ranging from 0.0 (square corners) to 1.0 (fully rounded corners). When set to 0.0, square-cornered boxes are used; higher values create progressively more rounded corners..
-
output
image(image): Image in workflows.
Example JSON definition of step Bounding Box Visualization in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/bounding_box_visualization@v1",
"image": "$inputs.image",
"copy_image": true,
"predictions": "$steps.object_detection_model.predictions",
"color_palette": "DEFAULT",
"palette_size": 10,
"custom_colors": [
"#FF0000",
"#00FF00",
"#0000FF"
],
"color_axis": "CLASS",
"thickness": 2,
"roundness": 0.0
}