Icon Visualization¶
Class: IconVisualizationBlockV1
Source: inference.core.workflows.core_steps.visualizations.icon.v1.IconVisualizationBlockV1
Place custom icon images on images either at fixed positions (static mode) or dynamically positioned on detected objects (dynamic mode), useful for watermarks, labels, badges, or visual markers.
How This Block Works¶
This block takes an image and optionally detection predictions, then places a custom icon image on the image. The block supports two modes:
Static Mode (for watermarks and fixed positioning): 1. Takes an image and an icon image as input 2. Places the icon at fixed x and y coordinates on the image 3. Supports negative coordinates for positioning from the right or bottom edges 4. Returns an annotated image with the icon at the specified static location
Dynamic Mode (for detection-based positioning): 1. Takes an image, an icon image, and detection predictions as input 2. Positions the icon on each detected object based on the selected anchor point (center, corners, edges, or center of mass) 3. Places the icon at the same position relative to each detection 4. Returns an annotated image with icons overlaid on detected objects
The block supports PNG images with transparency (alpha channel), allowing icons to blend naturally with the background. Icons can be resized to any width and height, making them suitable for various use cases from small badges to large watermarks. In static mode, icons are placed at fixed coordinates, making it ideal for watermarks or branding. In dynamic mode, icons automatically follow detected objects, making it useful for labeling, categorizing, or marking detected items with custom visual indicators.
Common Use Cases¶
- Watermarks and Branding: Place logos, watermarks, or branding elements at fixed positions (static mode) on images or videos for content protection, copyright marking, or brand identification
- Object Labeling with Icons: Place custom icons on detected objects (dynamic mode) to categorize, label, or mark objects with visual indicators (e.g., warning icons on unsafe objects, category icons for products, status badges)
- Visual Status Indicators: Display status icons (e.g., checkmarks, warning signs, information badges) on detected objects based on classification results, confidence levels, or custom logic for quick visual feedback
- Product Marking and Categorization: Place category icons, product type indicators, or custom markers on detected products in retail, e-commerce, or inventory management workflows
- Custom Annotation Systems: Create custom annotation workflows with specialized icons for quality control, defect marking, or compliance tracking in manufacturing or inspection workflows
- Interactive UI Elements: Add icon-based visual elements to images or videos for user interfaces, dashboards, or interactive applications where custom icons provide intuitive visual cues
Connecting to Other Blocks¶
The annotated image from this block can be connected to:
- Other visualization blocks (e.g., Label Visualization, Bounding Box Visualization, Polygon Visualization) to combine icon placement with additional annotations for comprehensive visualization
- Data storage blocks (e.g., Local File Sink, CSV Formatter, Roboflow Dataset Upload) to save images with icons for documentation, reporting, or archiving
- Webhook blocks to send visualized results with icons 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 icons as visual evidence in alerts or reports
- Video output blocks to create annotated video streams or recordings with icons for live monitoring, tracking visualization, or post-processing analysis
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/icon_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.. | ✅ |
mode |
str |
Mode for placing icons. 'static' mode places the icon at fixed x,y coordinates (useful for watermarks or fixed-position elements). 'dynamic' mode places icons on detected objects based on their positions (useful for object labeling or categorization).. | ✅ |
icon_width |
int |
Width of the icon in pixels. The icon image will be resized to this width while maintaining aspect ratio if height is also specified.. | ✅ |
icon_height |
int |
Height of the icon in pixels. The icon image will be resized to this height while maintaining aspect ratio if width is also specified.. | ✅ |
position |
str |
Anchor position for placing icons relative to each detection's bounding box (dynamic mode only). Options include: CENTER (center of box), corners (TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT), edge midpoints (TOP_CENTER, CENTER_LEFT, CENTER_RIGHT, BOTTOM_CENTER), or CENTER_OF_MASS (center of mass of the object).. | ✅ |
x_position |
int |
X coordinate for static mode positioning. Positive values position from the left edge of the image. Negative values position from the right edge (e.g., -10 places the icon 10 pixels from the right edge).. | ✅ |
y_position |
int |
Y coordinate for static mode positioning. Positive values position from the top edge of the image. Negative values position from the bottom edge (e.g., -10 places the icon 10 pixels from the bottom edge).. | ✅ |
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 Icon Visualization in version v1.
- inputs:
Trace Visualization,Detections Consensus,Background Color Visualization,VLM As Classifier,Mask Area Measurement,Florence-2 Model,Reference Path Visualization,Corner Visualization,Bounding Rectangle,SAM 3,Pixel Color Count,Seg Preview,Perspective Correction,Roboflow Dataset Upload,Detection Offset,OpenAI,Model Monitoring Inference Aggregator,Image Threshold,Pixelate Visualization,Object Detection Model,Email Notification,Label Visualization,Image Slicer,Object Detection Model,Bounding Box Visualization,Google Vision OCR,Crop Visualization,VLM As Detector,Time in Zone,Image Blur,Path Deviation,Anthropic Claude,SIFT,Triangle Visualization,Detection Event Log,Instance Segmentation Model,Gaze Detection,Stitch Images,SIFT Comparison,Heatmap Visualization,SAM 3,Time in Zone,Mask Visualization,Detections Stitch,Email Notification,Stability AI Outpainting,Time in Zone,LMM For Classification,Google Gemini,Segment Anything 2 Model,Velocity,Anthropic Claude,Google Gemini,Dynamic Zone,Google Gemini,Template Matching,Twilio SMS Notification,Keypoint Detection Model,Byte Tracker,Roboflow Dataset Upload,Stability AI Image Generation,SIFT Comparison,Polygon Zone Visualization,Distance Measurement,YOLO-World Model,Line Counter,Depth Estimation,Dot Visualization,Llama 3.2 Vision,PTZ Tracking (ONVIF).md),Dynamic Crop,Detections Merge,Contrast Equalization,Circle Visualization,Slack Notification,Color Visualization,Image Slicer,Stability AI Inpainting,OpenAI,Clip Comparison,Local File Sink,Detections Transformation,Byte Tracker,JSON Parser,Relative Static Crop,Detections Filter,Instance Segmentation Model,Polygon Visualization,Ellipse Visualization,OCR Model,CogVLM,VLM As Detector,SAM 3,Stitch OCR Detections,Twilio SMS/MMS Notification,Stitch OCR Detections,Moondream2,Halo Visualization,Icon Visualization,Anthropic Claude,Image Contours,Morphological Transformation,Motion Detection,Line Counter,Blur Visualization,Detections List Roll-Up,Detections Combine,OpenAI,Polygon Visualization,CSV Formatter,Detections Stabilizer,Camera Calibration,Detections Classes Replacement,Single-Label Classification Model,Line Counter Visualization,Camera Focus,OpenAI,Webhook Sink,Image Convert Grayscale,LMM,Multi-Label Classification Model,Camera Focus,Classification Label Visualization,Model Comparison Visualization,EasyOCR,VLM As Classifier,Grid Visualization,Background Subtraction,Halo Visualization,Florence-2 Model,Keypoint Visualization,QR Code Generator,Identify Outliers,Overlap Filter,Text Display,Identify Changes,Roboflow Custom Metadata,Byte Tracker,Image Preprocessing,Keypoint Detection Model,Path Deviation,Absolute Static Crop - outputs:
Trace Visualization,Contrast Equalization,CLIP Embedding Model,Circle Visualization,Background Color Visualization,SmolVLM2,Perception Encoder Embedding Model,VLM As Classifier,Color Visualization,Florence-2 Model,Image Slicer,Stability AI Inpainting,Reference Path Visualization,OpenAI,Corner Visualization,Pixel Color Count,SAM 3,Clip Comparison,Seg Preview,Relative Static Crop,Perspective Correction,Roboflow Dataset Upload,OpenAI,Instance Segmentation Model,Image Threshold,Pixelate Visualization,Object Detection Model,Multi-Label Classification Model,Polygon Visualization,Ellipse Visualization,OCR Model,CogVLM,Label Visualization,VLM As Detector,Image Slicer,Dominant Color,Object Detection Model,Bounding Box Visualization,Google Vision OCR,Crop Visualization,Barcode Detection,SAM 3,Twilio SMS/MMS Notification,VLM As Detector,Image Blur,Qwen2.5-VL,Moondream2,Halo Visualization,Clip Comparison,Anthropic Claude,Icon Visualization,SIFT,QR Code Detection,Triangle Visualization,Anthropic Claude,Image Contours,Morphological Transformation,Motion Detection,Instance Segmentation Model,Gaze Detection,Stitch Images,Heatmap Visualization,Blur Visualization,SAM 3,OpenAI,Polygon Visualization,Mask Visualization,Detections Stabilizer,Detections Stitch,Email Notification,Stability AI Outpainting,Time in Zone,Google Gemini,Segment Anything 2 Model,LMM For Classification,Camera Calibration,Anthropic Claude,Google Gemini,Single-Label Classification Model,Google Gemini,Template Matching,Line Counter Visualization,OpenAI,Camera Focus,Image Convert Grayscale,Keypoint Detection Model,LMM,Byte Tracker,Multi-Label Classification Model,Camera Focus,Model Comparison Visualization,Classification Label Visualization,Roboflow Dataset Upload,Stability AI Image Generation,EasyOCR,SIFT Comparison,Qwen3-VL,Polygon Zone Visualization,YOLO-World Model,VLM As Classifier,Background Subtraction,Halo Visualization,Buffer,Keypoint Visualization,Florence-2 Model,Depth Estimation,Text Display,Single-Label Classification Model,Dot Visualization,Llama 3.2 Vision,Dynamic Crop,Image Preprocessing,Keypoint Detection Model,Absolute Static Crop
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Icon 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..icon(image): The icon image to place on the input image. PNG format with transparency (alpha channel) is recommended for best results, as it allows the icon to blend naturally with the background. The icon will be resized to the specified width and height..mode(string): Mode for placing icons. 'static' mode places the icon at fixed x,y coordinates (useful for watermarks or fixed-position elements). 'dynamic' mode places icons on detected objects based on their positions (useful for object labeling or categorization)..predictions(Union[rle_instance_segmentation_prediction,keypoint_detection_prediction,object_detection_prediction,instance_segmentation_prediction]): Model predictions to place icons on (required for dynamic mode). Icons will be positioned on each detected object based on the selected position anchor point..icon_width(integer): Width of the icon in pixels. The icon image will be resized to this width while maintaining aspect ratio if height is also specified..icon_height(integer): Height of the icon in pixels. The icon image will be resized to this height while maintaining aspect ratio if width is also specified..position(string): Anchor position for placing icons relative to each detection's bounding box (dynamic mode only). Options include: CENTER (center of box), corners (TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, BOTTOM_RIGHT), edge midpoints (TOP_CENTER, CENTER_LEFT, CENTER_RIGHT, BOTTOM_CENTER), or CENTER_OF_MASS (center of mass of the object)..x_position(integer): X coordinate for static mode positioning. Positive values position from the left edge of the image. Negative values position from the right edge (e.g., -10 places the icon 10 pixels from the right edge)..y_position(integer): Y coordinate for static mode positioning. Positive values position from the top edge of the image. Negative values position from the bottom edge (e.g., -10 places the icon 10 pixels from the bottom edge)..
-
output
image(image): Image in workflows.
Example JSON definition of step Icon Visualization in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/icon_visualization@v1",
"image": "$inputs.image",
"copy_image": true,
"icon": "$inputs.icon",
"mode": "static",
"predictions": "$steps.object_detection_model.predictions",
"icon_width": 64,
"icon_height": 64,
"position": "TOP_CENTER",
"x_position": 10,
"y_position": 10
}