
Track My Container: ISO 6346 Container Recognition
Edge computer vision pipeline for reading ISO 6346 container numbers from reach stackers and side lifters using fisheye correction, YOLO-OBB detection, crop pairing, PaddleOCR, prefix correction, and check-digit validation.

Workflow at a glance
Correct imagery
Prepare equipment-camera frames for reading.
Detect and crop
Locate container codes with oriented detection.
Read and validate
Use OCR and ISO 6346 check-digit validation.
Associate and send
Attach telemetry and deliver container events.
Project facts & reported results
Implementation fact
Implementation fact
Implementation fact
Project Overview
Problem Statement
Container codes appear at changing angles and distances, with fisheye distortion, glare, weathering, partial occlusion, and mixed horizontal or vertical layouts.
Approach & Methodology
Built custom YOLO11 (Oriented Bounding Box) model to detect containers at any angle. Developed specialized 2-stage filtering for Side Lifter (SLT) and Reach Stacker (RST) camera views to isolate the top container being lifted. Implemented ver_to_hor.py to detect vertical character bounding boxes, sort by y-coordinate, and reassemble into horizontal text before PaddleOCR. Integrated ISO 6346 checksum validation and deployed on NVIDIA Jetson Orin Nano for edge inference.
Outcome & Scope
Automates container-code capture and produces validated events that can be associated with equipment telemetry and downstream logistics systems.
Technical Challenges & Solutions
RTSP Stream Instability
RTSP streams from industrial cameras were unstable due to network issues, causing frame drops and missed container readings during critical operations.
Implemented frame-queueing mechanism with Kalman filtering for temporal smoothing. Deployed on Jetson Orin Nano for edge processing to reduce network dependency.
Fisheye Lens Distortion
Wide-angle cameras introduced significant radial distortion making container IDs unreadable at frame edges.
Calibrated cameras to extract intrinsic matrix and distortion coefficients. Applied OpenCV undistortion as preprocessing step before OCR.
Vertically Oriented Container IDs
Container IDs were often written vertically, which standard horizontal OCR models failed to read correctly.
Developed ver_to_hor.py script using YOLO11 to detect individual characters, sort them vertically, and reassemble into horizontal text string before OCR processing.
Faded and Damaged Text
Container IDs faded due to weather exposure, rust, and physical damage, leading to OCR errors and misreadings.
Implemented ISO 6346 validation to detect and correct OCR errors using checksum algorithm. Built intelligent error correction system for common character confusions.
Glare from Industrial Lights
Strong overhead industrial lighting caused glare and reflections on container surfaces, washing out ID text.
Installed polarizing filters on camera lenses and adjusted lighting angles. Implemented adaptive preprocessing with shadow/highlight correction algorithms.
Operator Handling Errors
Crane operators sometimes moved containers too quickly or at awkward angles, causing motion blur and poor capture angles.
Created Standard Operating Procedures (SOPs) for optimal container handling. Conducted training sessions with operators emphasizing camera-friendly movements.
Camera Damage from Operations
Cameras were occasionally damaged by crane operations or falling objects, requiring expensive replacements and downtime.
Implemented accountability policies with documented training. Installed protective housings and warning signage. Regular maintenance schedules.
Gate-Side Technical Issues
Multiple simultaneous issues at entry gates: camera positioning, poor network connectivity, inadequate lighting, and unreliable power supply.
Comprehensive infrastructure upgrade: repositioned cameras, upgraded to gigabit LAN, installed LED lighting with backup power, and deployed UPS systems.
Data Integrity and Synchronization
Container data needed cross-referencing with gate logs, GPS data, and depot inventory. Mismatches caused operational confusion.
Built backend cross-referencing system with automated reconciliation. Implemented API optimization with retry logic and conflict resolution strategies.
System Architecture
Hybrid IoT system with edge AI processing and cloud synchronization
Key Components:
Runs YOLO11 and OCR inference at depot edge with local buffering for offline operation
Handles RTSP streams from multiple angles with synchronized frame capture
PaddleOCR with preprocessing (undistortion, enhancement, rotation) and ISO 6346 validation
Collects GPS coordinates, SONAR depth data, and height sensor readings
Cross-references OCR results with sensor data and historical records
Uploads container logs to cloud database with retry logic and offline buffering
Real-time container tracking, search, depot visualization, and reporting
Key Features & Capabilities
Real-time GPS tracking and movement updates
Hybrid IoT with GPS, SONAR, height sensors
AI camera with automatic OCR reading
Depot space optimization and crane efficiency
Infrastructure-less scalable deployment
ISO 6346 validation and error correction