在产线上,轴承外圈、管材截面、重工螺栓螺母、电机端盖、仪表仪器的圆形铭牌、汽车和摩托车的弧形铭牌……这些零件上都刻着批次号、序列号、物料编码。它们是质量追溯的关键凭证,却是数据采集里最让人头疼的一类:文字不是横平竖直,而是沿着圆弧"绕圈"。普通扫码枪扫不了,普通 OCR 也常常读不出、读不全。今天我们就以京元智能 OCR PDA 为例,看看圆弧扇面上的文字是怎样被一步步"读"出来的。
一、先弄清楚:弧形文字为什么难认
普通 OCR 的算法基础,是假设文字排列在一条水平线上,弧形文字天然违反了这个假设:
· 变形。文字沿圆周排列,字的内外侧弧长不同,字形被拉伸或压缩。
· 透视。镜头与弧面存在夹角,圆形排列变成椭圆,字体发生畸变。
· 光线。金属、塑封材质反光严重,明暗不均,还有油污锈迹。
· 昏暗。车间、仓库、户外,光线条件往往不理想。
这些因素叠加,连对焦都费劲,更不用说识别。弧形识别的第一仗,从"取图"就开始了。
二、第一步·取图:昏暗环境里,先让画面"稳、准、清"
我们选用相位对焦(PDAF)镜头:它不像传统反差式对焦那样"来回试探",而是直接根据传感器上的相位差判断焦点偏移方向,一次移动即可合焦。即使在昏暗环境下,也能快速完成对焦取图,最大限度减少手抖和运动模糊带来的废图。
同时,PDA 支持扫描头、内置摄像头、USB 外接相机三种取图源,如图1所示。取图动作统一由机身扫描键触发——按下取图并识别,松开完成采集,无需切软件、找按钮。取图是整条链路的地基,焦对不上,后面处理得再好也是白搭。
![]()
图1 取图方式设置(来源:COCR 软件说明书 V2.3)
三、第二步·图像预处理:把弯的文字"拉直"
拿到图像,接下来要解决"弯"的问题,这是整个方案最核心的一步。
我们采用的方法是坐标变换:把弧形文字的极坐标转换为笛卡尔二维坐标。文字本来在一个扇面上"绕圈",我们找到圆心,把整个扇形区域"展开"——就像把扇形纸摊平成长条。展开之后,弯曲排列的文字变成一行直线文字,普通 OCR 才能"看得懂"。如图2所示,界面上可以看到文字的圆心、外圈与展开效果。
![]()
图2 弧形OCR识别界面(来源:COCR 软件说明书 V2.3)
但光拉平还不够。工业现场的文字常压在金属底色上,对比度低,还有反光和油污。于是我们再叠加一步 Sauvola 算法做自适应二值化:把图像处理成黑白两色,让文字与背景彻底分开;Sauvola 根据每个像素周围局部的明暗动态决定阈值,而非全图套用一个标准。这样即使光照不均、背景复杂,也能把文字从背景里"抠"出来,拉高对比度,最大程度还原文字本来的样子。
处理完的这张图,前景干净、字迹清晰、排成直线,这才轮到 OCR 算法登场。
四、第三步·OCR 识别:让算法"所见即所得"
图像准备好了,识别就是水到渠成的事。为适配五花八门的零件,我们在识别环节做了四件事:
· 圆弧场景。在"应用设置→场景设置"中选择"圆弧"场景,即启用弧形文字识别模式。
· 自动对准。按下扫描键后,软件自动检测文字形成的弧线(是文字本身的弧,不是物体边缘),计算实际圆心,把扇形遮罩自动对准文字带。
· 手动微调。遇到曲率特殊、版式刁钻的零件,可拖动圆心、调节内外圈半径、起始角和旋转角,参数即时生效。
· 实时预览。上半屏看相机预览与扇形遮罩,下半屏实时显示展开后的"拉平"文字,按下扫描键即把当前帧送入 OCR,所见即所得。
识别结果支持点击修正,修正后的值在下一次扫描时直接作为输出结果,避免反复人工录入,如图3所示。
![]()
图3 结果修正(来源:COCR 软件说明书 V2.3)
解码超时可按现场调整:默认 2 秒,可设 0.1~20 秒,识别偏慢就调大,追求连续采集就调小。
五、第四步·数据输出:识别结果直达 ERP
识别只是前半程,数据真正进入业务系统,才算闭环。我们提供四种输出通道,可独立开关、自由组合,如图4所示:
· 系统广播输出:通过广播把识别结果发送给其他应用(默认动作 android.intent.action.SCANRESULT、数据标签 value),便于对接各类中间件。
· 本地文件输出:将结果追加写入本地文件,路径可自定义,适合离线采集、事后统一导入。
· IP 输出:通过 TCP/UDP 发送到指定主机,默认端口 8888;配合 Windows 端配套接收程序,可实现"扫码即上屏",结果直接填入电脑光标处。
· 蓝牙输出:通过蓝牙 SPP 串口服务发送到已配对设备,适合连接便携打印机、蓝牙采集终端。
![]()
图4 输出设置(来源:COCR 软件说明书 V2.3)
四种通道覆盖产线、仓库、户外等几乎全部数据传输场景,对接 ERP、MES 或自研系统都有现成方式。
数据输出前还会经过一道校验:内置规则引擎支持内容长度、位数范围等手动规则,也支持输入模板自动生成正则的自动规则,符合规则的字段才对外输出。"脏数据不出终端",从源头保证进到 ERP 的数据是干净的。
六、适用场景与价值
这套方案适用于所有圆弧形文字 OCR 场景:轴承和套圈端面刻字、管材截面标记、重工螺栓螺母的强度等级与批次号、电机铭牌、仪表仪器的圆形刻度与铭牌、汽车和摩托车零部件的弧形铭牌等。
它带来的改变实实在在:识别准确率更高,弧面字不再"读不出、读不全";采集速度更快,一键取图、即扫即传,不再人工抄录;数据全程可追溯,批次号、序列号第一时间进入质量追溯链条。
结语
圆弧扇面上的文字,曾是产线数据采集里最难啃的骨头。答案其实是一套组合拳:相位对焦把图取准,坐标变换把弯拉直,二值化把字抠净,OCR 把字认出来,四通道把数据送出去。每一步都不神秘,但每一步都踩在痛点之上。下次再看到轴承端面上那圈"绕圈"的数字,你应该知道,它们是可以被读出来的。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.