Stitch OCR Detections¶
Class: StitchOCRDetectionsBlockV1
Combines OCR detection results into a coherent text string by organizing detections spatially. This transformation is perfect for turning individual OCR results into structured, readable text!
How It Works¶
This transformation reconstructs the original text from OCR detection results by:
-
📐 Grouping text detections into rows based on their vertical (
y
) positions -
📏 Sorting detections within each row by horizontal (
x
) position -
📜 Concatenating the text in reading order (left-to-right, top-to-bottom)
Parameters¶
-
tolerance
: Controls how close detections need to be vertically to be considered part of the same line of text. A higher tolerance will group detections that are further apart vertically. -
reading_direction
: Determines the order in which text is read. Available options:-
"left_to_right": Standard left-to-right reading (e.g., English) ➡️
-
"right_to_left": Right-to-left reading (e.g., Arabic) ⬅️
-
"vertical_top_to_bottom": Vertical reading from top to bottom ⬇️
-
"vertical_bottom_to_top": Vertical reading from bottom to top ⬆️
-
"auto": Automatically detects the reading direction based on the spatial arrangement of text elements.
-
Why Use This Transformation?¶
This is especially useful for:
-
📖 Converting individual character/word detections into a readable text block
-
📝 Reconstructing multi-line text from OCR results
-
🔀 Maintaining proper reading order for detected text elements
-
🌏 Supporting different writing systems and text orientations
Example Usage¶
Use this transformation after an OCR model that outputs individual words or characters, so you can reconstruct the original text layout in its intended format.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/stitch_ocr_detections@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.. | ❌ |
reading_direction |
str |
The direction of the text in the image.. | ❌ |
tolerance |
int |
The tolerance for grouping detections into the same line of text.. | ✅ |
delimiter |
str |
The delimiter to use for stitching text.. | ✅ |
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 Stitch OCR Detections
in version v1
.
- inputs:
CogVLM
,SIFT Comparison
,Llama 3.2 Vision
,Detections Stabilizer
,OpenAI
,VLM as Detector
,Byte Tracker
,Dynamic Crop
,Time in Zone
,Roboflow Dataset Upload
,LMM
,Moondream2
,Florence-2 Model
,Line Counter
,Overlap Filter
,SIFT Comparison
,Byte Tracker
,Distance Measurement
,Google Gemini
,PTZ Tracking (ONVIF)
.md),Local File Sink
,Detection Offset
,Detections Combine
,Slack Notification
,Roboflow Custom Metadata
,Clip Comparison
,Google Vision OCR
,Twilio SMS Notification
,YOLO-World Model
,Keypoint Detection Model
,Time in Zone
,Single-Label Classification Model
,VLM as Classifier
,Email Notification
,Model Monitoring Inference Aggregator
,Anthropic Claude
,VLM as Detector
,Detections Stitch
,Multi-Label Classification Model
,Byte Tracker
,Detections Consensus
,Line Counter
,OpenAI
,Detections Filter
,Path Deviation
,LMM For Classification
,Template Matching
,Velocity
,Time in Zone
,Detections Classes Replacement
,Path Deviation
,Instance Segmentation Model
,Florence-2 Model
,Image Contours
,OpenAI
,Object Detection Model
,OCR Model
,Detections Merge
,Roboflow Dataset Upload
,CSV Formatter
,Perspective Correction
,Webhook Sink
,EasyOCR
,Detections Transformation
,Object Detection Model
,Pixel Color Count
,Stitch OCR Detections
- outputs:
Image Blur
,OpenAI
,Image Preprocessing
,Instance Segmentation Model
,Dynamic Crop
,Time in Zone
,Roboflow Dataset Upload
,LMM
,Moondream2
,Color Visualization
,Corner Visualization
,Google Gemini
,Stability AI Outpainting
,Keypoint Visualization
,PTZ Tracking (ONVIF)
.md),Trace Visualization
,Clip Comparison
,Google Vision OCR
,Email Notification
,YOLO-World Model
,Time in Zone
,Model Comparison Visualization
,Mask Visualization
,Model Monitoring Inference Aggregator
,Size Measurement
,Image Threshold
,Contrast Equalization
,Line Counter
,OpenAI
,Path Deviation
,Morphological Transformation
,Classification Label Visualization
,Time in Zone
,Path Deviation
,Florence-2 Model
,Cache Set
,Roboflow Dataset Upload
,Triangle Visualization
,Perspective Correction
,Icon Visualization
,Label Visualization
,Pixel Color Count
,Stability AI Image Generation
,Stitch OCR Detections
,Llama 3.2 Vision
,Ellipse Visualization
,CogVLM
,Line Counter Visualization
,Florence-2 Model
,Line Counter
,Local File Sink
,Distance Measurement
,Slack Notification
,SIFT Comparison
,Roboflow Custom Metadata
,Perception Encoder Embedding Model
,Twilio SMS Notification
,Background Color Visualization
,QR Code Generator
,Segment Anything 2 Model
,Cache Get
,Polygon Zone Visualization
,Anthropic Claude
,Detections Stitch
,Polygon Visualization
,Dot Visualization
,LMM For Classification
,CLIP Embedding Model
,Detections Classes Replacement
,Instance Segmentation Model
,Circle Visualization
,Bounding Box Visualization
,OpenAI
,Halo Visualization
,Reference Path Visualization
,Webhook Sink
,Stability AI Inpainting
,Crop Visualization
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Stitch OCR Detections
in version v1
has.
Bindings
-
input
predictions
(object_detection_prediction
): The output of an OCR detection model..tolerance
(integer
): The tolerance for grouping detections into the same line of text..delimiter
(string
): The delimiter to use for stitching text..
-
output
ocr_text
(string
): String value.
Example JSON definition of step Stitch OCR Detections
in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/stitch_ocr_detections@v1",
"predictions": "$steps.my_ocr_detection_model.predictions",
"reading_direction": "right_to_left",
"tolerance": 10,
"delimiter": ""
}