Circle Visualization¶
Class: CircleVisualizationBlockV1
Source: inference.core.workflows.core_steps.visualizations.circle.v1.CircleVisualizationBlockV1
Draw circular outlines around detected objects, providing an alternative to rectangular bounding boxes with a softer, more rounded visualization style.
How This Block Works¶
This block takes an image and detection predictions and draws circular outlines around each detected object. The block:
- Takes an image and predictions as input
- Calculates the center point and size for each detection based on its bounding box
- Applies color styling based on the selected color palette, with colors assigned by class, index, or track ID
- Draws circular outlines around each detected object using Supervision's CircleAnnotator
- Applies the specified circle thickness to control the line width of the circular outlines
- Returns an annotated image with circular outlines overlaid on the original image
The block draws circles that are typically centered on each detection's bounding box, with the circle size determined by the detection dimensions. Circles provide a softer, more organic visual style compared to rectangular bounding boxes, while still clearly marking the location and extent of detected objects. Unlike dot visualization (which marks specific points), circle visualization draws full circular outlines that encompass the detected objects, making it useful when you want a rounded geometric shape that's less angular than bounding boxes but more prominent than small dot markers.
Common Use Cases¶
- Soft Geometric Visualization: Use circular outlines instead of rectangular bounding boxes for a softer, more organic visual style in presentations, dashboards, or user interfaces where rounded shapes are preferred
- Object Highlighting with Rounded Shapes: Highlight detected objects with circular outlines when working with circular or spherical objects (e.g., balls, coins, circular logos, round products) where circles naturally fit the object shape
- Aesthetic Visualization Alternatives: Create visually distinct annotations compared to standard bounding boxes for design purposes, artistic visualizations, or when circular shapes better match the overall design aesthetic
- Detection Visualization with Variation: Provide an alternative visualization style to bounding boxes for comparison, experimentation, or when multiple visualization types are used together to distinguish different detection sets
- User Interface Design: Use circular outlines in user interfaces, mobile apps, or interactive displays where rounded shapes are more visually appealing or match design guidelines
- Scientific and Medical Imaging: Visualize detections with circular outlines in scientific or medical imaging contexts where rounded shapes may be more appropriate than angular bounding boxes
Connecting to Other Blocks¶
The annotated image from this block can be connected to:
- Other visualization blocks (e.g., Label Visualization, Dot Visualization, Bounding Box Visualization) to combine circular outlines with additional annotations for comprehensive visualization
- Data storage blocks (e.g., Local File Sink, CSV Formatter, Roboflow Dataset Upload) to save annotated images with circular outlines for documentation, reporting, or analysis
- Webhook blocks to send visualized results with circular outlines 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 with circular outlines as visual evidence in alerts or reports
- Video output blocks to create annotated video streams or recordings with circular outlines for live monitoring, tracking visualization, or post-processing analysis
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/circle_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 circle outline in pixels. Higher values create thicker, more visible circular outlines.. | ✅ |
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 Circle Visualization in version v1.
- inputs:
Crop Visualization,Image Slicer,Detection Event Log,Roboflow Dataset Upload,ByteTrack Tracker,Instance Segmentation Model,Google Gemini,Classification Label Visualization,Mask Edge Snap,Dynamic Crop,Per-Class Confidence Filter,Detections Transformation,Time in Zone,SAM 3 Interactive,Velocity,Image Slicer,Absolute Static Crop,Detections Classes Replacement,Template Matching,Current Time,Pixel Color Count,Roboflow Custom Metadata,Multi-Label Classification Model,SIFT Comparison,Mask Area Measurement,Morphological Transformation,Background Subtraction,Line Counter Visualization,BoT-SORT Tracker,Ellipse Visualization,OpenAI,MoonshotAI Kimi,SAM 3,Grid Visualization,PLC ModbusTCP,Bounding Box Visualization,Morphological Transformation,Segment Anything 2 Model,Google Gemma,Byte Tracker,Object Detection Model,Motion Detection,Cosmos 3,Overlap Filter,OpenAI,Webhook Sink,VLM As Detector,Path Deviation,Size Measurement,Depth Estimation,Image Preprocessing,OPC UA Writer Sink,Detections Stabilizer,Bounding Rectangle,SAM 3,Line Counter,Stitch Images,Roboflow Dataset Upload,OpenAI,SAM2 Video Tracker,Camera Calibration,Google Vision OCR,OpenAI,QR Code Generator,Florence-2 Model,Polygon Zone Visualization,Contrast Equalization,Detection Offset,SAM3 Video Tracker,VLM As Classifier,Detections List Roll-Up,Clip Comparison,Pixelate Visualization,SORT Tracker,Qwen 3.6 API,PLC Writer,CSV Formatter,Detections Stitch,Track Class Lock,Triangle Visualization,Stability AI Image Generation,Icon Visualization,Dot Visualization,Stability AI Outpainting,Keypoint Visualization,Byte Tracker,Relative Static Crop,Anthropic Claude,PP-OCR,Anthropic Claude,Image Stack,Roboflow Visual Search Classifier,VLM As Detector,OCR Model,SAM 3,GeoTag Detection,PTZ Tracking (ONVIF),Qwen 3.5 API,Halo Visualization,OpenRouter,Frame Delay,Local File Sink,Text Display,Roboflow Asset Library Attributes,Image Threshold,Image Blur,Gaze Detection,Color Visualization,LMM,Corner Visualization,JSON Parser,S3 Sink,MQTT Writer,Qwen-VL,Instance Segmentation Model,Google Gemini,Slack Notification,Stitch OCR Detections,Event Writer,Detections Consensus,Identify Outliers,SIFT,Nearest Neighbor Detection Match,VLM As Classifier,Auto Rotate on Edges,Time in Zone,Stitch OCR Detections,Google Gemini,Instance Segmentation Model,Dimension Collapse,Twilio SMS Notification,Trace Visualization,Single-Label Classification Model,Perspective Correction,Seg Preview,Camera Focus,EasyOCR,Google Gemma API,PLC EthernetIP,Object Detection Model,Instance Segmentation Model,OC-SORT Tracker,MoonshotAI Kimi,Distance Measurement,Twilio SMS/MMS Notification,Blur Visualization,Path Deviation,LMM For Classification,Polygon Visualization,Model Monitoring Inference Aggregator,Stability AI Inpainting,Image Convert Grayscale,Microsoft SQL Server Sink,Florence-2 Model,Qwen3.5-VL,Moondream2,Clip Comparison,Dynamic Zone,Mask Visualization,Reference Path Visualization,Email Notification,Polygon Visualization,Roboflow Visual Search,SIFT Comparison,Halo Visualization,Contrast Enhancement,Keypoint Detection Model,Llama 3.2 Vision,Detections Combine,GLM-OCR,CogVLM,Circle Visualization,Byte Tracker,Image Contours,Camera Focus,Heatmap Visualization,Roboflow Vision Events,Line Counter,YOLO-World Model,Llama 3.2 Vision,OpenAI-Compatible LLM,Label Visualization,Time in Zone,Background Color Visualization,Keypoint Detection Model,PLC Reader,Buffer,Model Comparison Visualization,Keypoint Detection Model,Detections Merge,Detections Filter,Object Detection Model,Email Notification,Anthropic Claude,Identify Changes - outputs:
Crop Visualization,Image Slicer,Roboflow Dataset Upload,ByteTrack Tracker,Instance Segmentation Model,Google Gemini,Classification Label Visualization,Mask Edge Snap,Dynamic Crop,SAM 3 Interactive,Image Slicer,Absolute Static Crop,Template Matching,Pixel Color Count,Multi-Label Classification Model,SIFT Comparison,Morphological Transformation,Background Subtraction,Line Counter Visualization,BoT-SORT Tracker,Ellipse Visualization,MoonshotAI Kimi,Multi-Label Classification Model,OpenAI,SAM 3,Grid Visualization,Segment Anything 2 Model,Bounding Box Visualization,Morphological Transformation,Google Gemma,Semantic Segmentation Model,Perception Encoder Embedding Model,Object Detection Model,Byte Tracker,Cosmos 3,Motion Detection,OpenAI,Multi-Label Classification Model,VLM As Detector,Depth Estimation,Image Preprocessing,Detections Stabilizer,Single-Label Classification Model,SAM 3,QR Code Detection,Stitch Images,Roboflow Dataset Upload,OpenAI,SAM2 Video Tracker,Qwen3.5,Camera Calibration,Google Vision OCR,OpenAI,Florence-2 Model,Qwen3-VL,Polygon Zone Visualization,Contrast Equalization,SAM3 Video Tracker,VLM As Classifier,Clip Comparison,Pixelate Visualization,SORT Tracker,Qwen 3.6 API,Detections Stitch,Track Class Lock,Triangle Visualization,Stability AI Image Generation,Icon Visualization,Dot Visualization,Stability AI Outpainting,Keypoint Visualization,Anthropic Claude,Relative Static Crop,PP-OCR,Anthropic Claude,Image Stack,Roboflow Visual Search Classifier,VLM As Detector,OCR Model,SAM 3,GeoTag Detection,Qwen 3.5 API,Halo Visualization,OpenRouter,Frame Delay,Semantic Segmentation Model,Text Display,Image Threshold,Image Blur,Gaze Detection,Color Visualization,LMM,Corner Visualization,Qwen-VL,Instance Segmentation Model,CLIP Embedding Model,Google Gemini,Event Writer,SIFT,VLM As Classifier,Google Gemini,Auto Rotate on Edges,Instance Segmentation Model,Single-Label Classification Model,Trace Visualization,Perspective Correction,Seg Preview,Camera Focus,EasyOCR,Google Gemma API,Object Detection Model,Instance Segmentation Model,OC-SORT Tracker,MoonshotAI Kimi,Twilio SMS/MMS Notification,Blur Visualization,Polygon Visualization,Stability AI Inpainting,Image Convert Grayscale,Florence-2 Model,Qwen3.5-VL,Barcode Detection,Moondream2,Dominant Color,Clip Comparison,Mask Visualization,Reference Path Visualization,Email Notification,Polygon Visualization,Roboflow Visual Search,Halo Visualization,SmolVLM2,Contrast Enhancement,Keypoint Detection Model,Llama 3.2 Vision,GLM-OCR,CogVLM,Circle Visualization,Image Contours,Camera Focus,Heatmap Visualization,Roboflow Vision Events,Llama 3.2 Vision,YOLO-World Model,Qwen2.5-VL,Label Visualization,Time in Zone,Background Color Visualization,Keypoint Detection Model,Buffer,Single-Label Classification Model,Model Comparison Visualization,Keypoint Detection Model,LMM For Classification,Object Detection Model,Anthropic Claude
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Circle 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[instance_segmentation_prediction,object_detection_prediction,rle_instance_segmentation_prediction,keypoint_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 circle outline in pixels. Higher values create thicker, more visible circular outlines..
-
output
image(image): Image in workflows.
Example JSON definition of step Circle Visualization in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/circle_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
}