Process Checkmark
Processes an image to detect and recognize checkmarks using ABBYY Cloud OCR service.
Common Properties
- Name - The custom name of the node.
- Color - The custom color of the node.
- Delay Before (sec) - Waits in seconds before executing the node.
- Delay After (sec) - Waits in seconds after executing node.
- Continue On Error - Automation will continue regardless of any error. The default value is false.
Inputs
- Image Path - Path to the image file containing checkmarks or checkboxes to be detected.
Options
- Checkmark Type - Type of checkmark shape to detect (default: circle). Options:
- Circle - Circular checkboxes or radio buttons
- Empty - Empty boxes (detect unmarked checkboxes)
- Square - Square checkboxes
- Region - Optional region coordinates to scan for checkmarks (format: "left,top,right,bottom").
- Description - Optional description for the processing task.
- PDF Password - Password for encrypted PDF files if applicable.
- Correction Allowed - Whether to allow automatic correction of detected checkmarks (default: false).
Outputs
- Task - ABBYY task object containing checkmark detection results with state (checked/unchecked) for each detected box.
How It Works
The Process Checkmark node detects and determines the state of checkboxes in form images. When executed, the node:
- Reads the form image file
- Optionally limits scanning to a specific region
- Uploads the image to ABBYY Cloud
- Detects checkboxes of the specified type (circle, square, or empty)
- Determines if each checkbox is checked or unchecked
- Applies correction if enabled
- Returns a task object with checkbox states and locations
Requirements
- Valid ABBYY Cloud credentials
- Clear form image with visible checkboxes
- Correct checkmark type selection matching your form
Error Handling
The node will return specific errors in the following cases:
Robomotion.ABBYYCloud.ErrImagePath- Image path is invalid or file not foundRobomotion.ABBYYCloud.ErrImageData- Cannot read image fileRobomotion.ABBYYCloud.ErrOption- Invalid checkmark type selectedRobomotion.ABBYYCloud.ErrRegion- Invalid region formatRobomotion.ABBYYCloud.ErrDescription- Invalid descriptionRobomotion.ABBYYCloud.ErrPDFPassword- Invalid or incorrect PDF password
Usage Example
Scenario: Extract checkbox states from a survey form
1. Process Checkmark node:
- Image Path: "C:/forms/survey_001.jpg"
- Checkmark Type: Square
- Correction Allowed: true
2. Wait Task node:
- Task: {{ $.task }}
- Timeout: 30 seconds
3. Parse results to determine:
- Which questions were answered
- Which options were selected
- Multiple choice selections
Scenario: Check specific region for a single checkbox
1. Process Checkmark node:
- Image Path: "C:/forms/agreement.pdf"
- Checkmark Type: Square
- Region: "450,800,470,820"
- PDF Password: ""
- Correction Allowed: false
2. Validate agreement checkbox is checked
Common Use Cases
- Survey Processing - Extract responses from paper surveys
- Form Data Entry - Automate checkbox data entry from scanned forms
- Test Scoring - Score multiple-choice tests and quizzes
- Agreement Verification - Verify checkboxes on contracts and agreements
- Application Processing - Extract selections from application forms
- Ballot Counting - Count votes from paper ballots
- Quality Control - Verify completion of inspection checklists
- Insurance Claims - Process checkbox fields on claim forms
Checkmark Types
Square
- Standard square checkboxes
- Most common in forms
- Clear check mark (✓ or ✗) or filled box
Circle
- Circular checkboxes or radio buttons
- Often used for single-choice questions
- Filled circle or checkmark inside
Empty
- Detect empty/unchecked boxes
- Useful for validation
- Identify incomplete forms
Detection Results
For each detected checkbox:
- Location - Coordinates of the checkbox
- State - Checked or unchecked
- Confidence - Confidence level of detection
- Type - Shape type (if multiple types present)
Tips and Best Practices
- Checkmark Type Selection:
- Match the type to your form design
- Use "Square" for standard checkboxes
- Use "Circle" for radio buttons or circular marks
- Use "Empty" to find unfilled boxes
- Image Quality:
- Use high resolution (300 DPI minimum)
- Ensure checkboxes are clearly visible
- Avoid shadows on checkboxes
- Keep form flat (no curves or folds)
- Region Usage:
- Specify region for single checkbox verification
- Process entire form to find all checkboxes
- Use multiple nodes for different regions
- Region coordinates from image editor
- Correction Allowed:
- Enable for automatic ambiguity resolution
- Useful when checkmarks are faint or unclear
- May help with poorly marked forms
- Disable for strict verification
- Form Design:
- Clear checkbox outlines work best
- Adequate spacing between checkboxes
- Consistent checkbox sizes
- High contrast (black on white)
- Batch Processing:
- Process multiple forms in a loop
- Use consistent form templates
- Enable Continue On Error
- Track processing errors separately
- Data Validation:
- Verify expected number of checkboxes found
- Check for mutually exclusive selections
- Validate required checkboxes are marked
- Flag forms with unclear marks
- Multi-Choice Handling:
- Process all checkboxes, then filter by region
- Group checkboxes by question
- Validate single-select vs multi-select rules
- Handle "select all that apply" questions
- Edge Cases:
- Partially marked checkboxes may be ambiguous
- Stray marks can be detected as checks
- Very light marks might not be detected
- Implement manual review for critical forms
- Performance:
- Processing time depends on image size
- Region limits improve speed
- Batch multiple forms for efficiency
- Integration:
- Map checkbox positions to question IDs
- Export to database or spreadsheet
- Calculate scores or statistics
- Generate reports from results
- Common Issues:
- Checkmarks outside boxes may not detect
- Filled-in boxes work better than checkmarks
- Faint marks may need enhancement
- Alignment issues with scanned forms