Image Slicer¶
v2¶
Class: ImageSlicerBlockV2
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.transformations.image_slicer.v2.ImageSlicerBlockV2
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
This block enables Slicing Adaptive Inference (SAHI) technique in Workflows providing implementation for first step of procedure - making slices out of input image.
To use the block effectively, it must be paired with detection model (object-detection or instance segmentation) running against output images from this block. At the end - Detections Stitch block must be applied on top of predictions to merge them as if the prediction was made against input image, not its slices.
We recommend adjusting the size of slices to match the model's input size and the scale of objects in the dataset the model was trained on. Models generally perform best on data that is similar to what they encountered during training. The default size of slices is 640, but this might not be optimal if the model's input size is 320, as each slice would be downsized by a factor of two during inference. Similarly, if the model's input size is 1280, each slice will be artificially up-scaled. The best setup should be determined experimentally based on the specific data and model you are using.
To learn more about SAHI please visit Roboflow blog which describes the technique in details, yet not in context of Roboflow workflows.
Changes compared to v1¶
-
All crops generated by slicer will be of equal size
-
No duplicated crops will be created
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/image_slicer@v2
to add the block as
as step in your workflow.
Properties¶
Name | Type | Description | Refs |
---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
slice_width |
int |
Width of each slice, in pixels. | ✅ |
slice_height |
int |
Height of each slice, in pixels. | ✅ |
overlap_ratio_width |
float |
Overlap ratio between consecutive slices in the width dimension. | ✅ |
overlap_ratio_height |
float |
Overlap ratio between consecutive slices in the height dimension. | ✅ |
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 Image Slicer
in version v2
.
- inputs:
Mask Visualization
,Relative Static Crop
,Line Counter Visualization
,Identify Changes
,Image Preprocessing
,Dot Visualization
,Classification Label Visualization
,Color Visualization
,Reference Path Visualization
,Grid Visualization
,Trace Visualization
,Line Counter
,Polygon Visualization
,Clip Comparison
,SIFT Comparison
,Line Counter
,Blur Visualization
,Image Threshold
,Template Matching
,Stitch Images
,Corner Visualization
,Background Color Visualization
,Dynamic Crop
,Bounding Box Visualization
,Image Contours
,SIFT Comparison
,Crop Visualization
,Image Convert Grayscale
,Image Slicer
,Identify Outliers
,Stability AI Inpainting
,Pixel Color Count
,Perspective Correction
,Stability AI Image Generation
,Camera Focus
,Keypoint Visualization
,Triangle Visualization
,Label Visualization
,SIFT
,Detections Consensus
,Model Comparison Visualization
,Pixelate Visualization
,Halo Visualization
,Circle Visualization
,Distance Measurement
,Ellipse Visualization
,Absolute Static Crop
,Polygon Zone Visualization
,Image Slicer
,Image Blur
- outputs:
Mask Visualization
,Relative Static Crop
,Image Preprocessing
,Dot Visualization
,Reference Path Visualization
,Clip Comparison
,Blur Visualization
,Image Threshold
,OpenAI
,Single-Label Classification Model
,Background Color Visualization
,Bounding Box Visualization
,Image Slicer
,Pixel Color Count
,Stability AI Image Generation
,Camera Focus
,Multi-Label Classification Model
,Object Detection Model
,Anthropic Claude
,SIFT
,Keypoint Detection Model
,Pixelate Visualization
,Google Vision OCR
,Buffer
,Dominant Color
,Circle Visualization
,Florence-2 Model
,QR Code Detection
,Qwen2.5-VL
,OpenAI
,VLM as Detector
,Absolute Static Crop
,Segment Anything 2 Model
,VLM as Classifier
,Image Slicer
,Byte Tracker
,CogVLM
,Line Counter Visualization
,VLM as Classifier
,Gaze Detection
,Llama 3.2 Vision
,Instance Segmentation Model
,Classification Label Visualization
,Color Visualization
,Trace Visualization
,Object Detection Model
,Instance Segmentation Model
,Polygon Visualization
,Time in Zone
,Single-Label Classification Model
,OCR Model
,Template Matching
,Clip Comparison
,Stitch Images
,Corner Visualization
,Dynamic Crop
,SIFT Comparison
,Image Contours
,Crop Visualization
,Image Convert Grayscale
,Stability AI Inpainting
,CLIP Embedding Model
,Perspective Correction
,Florence-2 Model
,Keypoint Visualization
,Google Gemini
,Triangle Visualization
,Label Visualization
,Keypoint Detection Model
,YOLO-World Model
,LMM
,VLM as Detector
,Model Comparison Visualization
,Roboflow Dataset Upload
,Roboflow Dataset Upload
,Multi-Label Classification Model
,Halo Visualization
,Barcode Detection
,Detections Stitch
,Ellipse Visualization
,LMM For Classification
,Polygon Zone Visualization
,Detections Stabilizer
,Image Blur
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Image Slicer
in version v2
has.
Bindings
-
input
image
(image
): The input image for this step..slice_width
(integer
): Width of each slice, in pixels.slice_height
(integer
): Height of each slice, in pixels.overlap_ratio_width
(float_zero_to_one
): Overlap ratio between consecutive slices in the width dimension.overlap_ratio_height
(float_zero_to_one
): Overlap ratio between consecutive slices in the height dimension.
-
output
slices
(image
): Image in workflows.
Example JSON definition of step Image Slicer
in version v2
{
"name": "<your_step_name_here>",
"type": "roboflow_core/image_slicer@v2",
"image": "$inputs.image",
"slice_width": 320,
"slice_height": 320,
"overlap_ratio_width": 0.2,
"overlap_ratio_height": 0.2
}
v1¶
Class: ImageSlicerBlockV1
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.transformations.image_slicer.v1.ImageSlicerBlockV1
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
This block enables Slicing Adaptive Inference (SAHI) technique in Workflows providing implementation for first step of procedure - making slices out of input image.
To use the block effectively, it must be paired with detection model (object-detection or instance segmentation) running against output images from this block. At the end - Detections Stitch block must be applied on top of predictions to merge them as if the prediction was made against input image, not its slices.
We recommend adjusting the size of slices to match the model's input size and the scale of objects in the dataset the model was trained on. Models generally perform best on data that is similar to what they encountered during training. The default size of slices is 640, but this might not be optimal if the model's input size is 320, as each slice would be downsized by a factor of two during inference. Similarly, if the model's input size is 1280, each slice will be artificially up-scaled. The best setup should be determined experimentally based on the specific data and model you are using.
To learn more about SAHI please visit Roboflow blog which describes the technique in details, yet not in context of Roboflow workflows.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/image_slicer@v1
to add the block as
as step in your workflow.
Properties¶
Name | Type | Description | Refs |
---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
slice_width |
int |
Width of each slice, in pixels. | ✅ |
slice_height |
int |
Height of each slice, in pixels. | ✅ |
overlap_ratio_width |
float |
Overlap ratio between consecutive slices in the width dimension. | ✅ |
overlap_ratio_height |
float |
Overlap ratio between consecutive slices in the height dimension. | ✅ |
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 Image Slicer
in version v1
.
- inputs:
Mask Visualization
,Relative Static Crop
,Line Counter Visualization
,Identify Changes
,Image Preprocessing
,Dot Visualization
,Classification Label Visualization
,Color Visualization
,Reference Path Visualization
,Grid Visualization
,Trace Visualization
,Line Counter
,Polygon Visualization
,Clip Comparison
,SIFT Comparison
,Line Counter
,Blur Visualization
,Image Threshold
,Template Matching
,Stitch Images
,Corner Visualization
,Background Color Visualization
,Dynamic Crop
,Bounding Box Visualization
,Image Contours
,SIFT Comparison
,Crop Visualization
,Image Convert Grayscale
,Image Slicer
,Identify Outliers
,Stability AI Inpainting
,Pixel Color Count
,Perspective Correction
,Stability AI Image Generation
,Camera Focus
,Keypoint Visualization
,Triangle Visualization
,Label Visualization
,SIFT
,Detections Consensus
,Model Comparison Visualization
,Pixelate Visualization
,Halo Visualization
,Circle Visualization
,Distance Measurement
,Ellipse Visualization
,Absolute Static Crop
,Polygon Zone Visualization
,Image Slicer
,Image Blur
- outputs:
Mask Visualization
,Relative Static Crop
,Image Preprocessing
,Dot Visualization
,Reference Path Visualization
,Clip Comparison
,Blur Visualization
,Image Threshold
,OpenAI
,Single-Label Classification Model
,Background Color Visualization
,Bounding Box Visualization
,Image Slicer
,Pixel Color Count
,Stability AI Image Generation
,Camera Focus
,Multi-Label Classification Model
,Object Detection Model
,Anthropic Claude
,SIFT
,Keypoint Detection Model
,Pixelate Visualization
,Google Vision OCR
,Buffer
,Dominant Color
,Circle Visualization
,Florence-2 Model
,QR Code Detection
,Qwen2.5-VL
,OpenAI
,VLM as Detector
,Absolute Static Crop
,Segment Anything 2 Model
,VLM as Classifier
,Image Slicer
,Byte Tracker
,CogVLM
,Line Counter Visualization
,VLM as Classifier
,Gaze Detection
,Llama 3.2 Vision
,Instance Segmentation Model
,Classification Label Visualization
,Color Visualization
,Trace Visualization
,Object Detection Model
,Instance Segmentation Model
,Polygon Visualization
,Time in Zone
,Single-Label Classification Model
,OCR Model
,Template Matching
,Clip Comparison
,Stitch Images
,Corner Visualization
,Dynamic Crop
,SIFT Comparison
,Image Contours
,Crop Visualization
,Image Convert Grayscale
,Stability AI Inpainting
,CLIP Embedding Model
,Perspective Correction
,Florence-2 Model
,Keypoint Visualization
,Google Gemini
,Triangle Visualization
,Label Visualization
,Keypoint Detection Model
,YOLO-World Model
,LMM
,VLM as Detector
,Model Comparison Visualization
,Roboflow Dataset Upload
,Roboflow Dataset Upload
,Multi-Label Classification Model
,Halo Visualization
,Barcode Detection
,Detections Stitch
,Ellipse Visualization
,LMM For Classification
,Polygon Zone Visualization
,Detections Stabilizer
,Image Blur
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Image Slicer
in version v1
has.
Bindings
-
input
image
(image
): The input image for this step..slice_width
(integer
): Width of each slice, in pixels.slice_height
(integer
): Height of each slice, in pixels.overlap_ratio_width
(float_zero_to_one
): Overlap ratio between consecutive slices in the width dimension.overlap_ratio_height
(float_zero_to_one
): Overlap ratio between consecutive slices in the height dimension.
-
output
slices
(image
): Image in workflows.
Example JSON definition of step Image Slicer
in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/image_slicer@v1",
"image": "$inputs.image",
"slice_width": 320,
"slice_height": 320,
"overlap_ratio_width": 0.2,
"overlap_ratio_height": 0.2
}