APP下载

基于Tesseract和OpenCV的快递中转分类研究

2023-02-21郑连鸿肖铭涵王思帆邓定南

科技风 2023年4期
关键词:双目物件机械手

郑连鸿 肖铭涵 王思帆 邓定南

嘉应学院物理与电子工程学院 广东梅州 514015

1 概述

近年来我国快递行业发展迅速[1],全国已超过九成的乡镇设立快递服务网点。随着快递数量的激增,我国物流自动化水平也取得较大的提升。其中自动分拣技术在物联网、深度学习和相关电子硬件的飞速发展下不断取得突破。

从最开始的人到货前分拣,到现在普遍的机器送货至人面前分拣,甚至小部分分拣点的全自动分拣[2],分拣技术在实际生产中不断得到改进和成熟。目前全自动分拣的机器,如以PLC、光电传感器和变频器等器件构建的交叉带分拣机、摆臂分拣机和双层直线分拣机等自动化设备已应用于实际分拣场景。同时由机器视觉和传统电子传感器组成的智能分拣机器人也开始得到应用[3]。随着人工神经网络技术的发展,人工神经网络与机器视觉的结合也更加普遍[4],进一步提升了机器视觉获取和判断信息的能力,促使自动分拣系统向着更通用、更可靠的方向发展,进一步提升分拣效率和节约人工成本。

本文提出一种基于机器视觉的分拣系统设计方案。利用Long Short-Term Memory (LSTM)神经网络训练中文字符库。搭建基于机器视觉的检测系统,具有识别精度高且能耗低等优点。结合视觉系统和神经网络构建OCR检测系统和机械臂控制系统,避免了电子传感器构成的自动化系统中存在的检测距离近、检测的物件形状受限和高精度的电子器件价格昂贵等问题,所设计系统具有通用性强、可靠性高等优点。

2 实验方案

2.1 设计思路

本设计的目的是结合数字图像处理和神经网络检测出快递物件上的文字信息,在程序内部对检测的信息进行分类并输出相应的结果,控制机械手系统执行对应的正确动作。本设计的自动检测和分类系统具体流程图如图1所示。所设计系统主要分为视觉系统和机械手系统两部分,利用串口通信的方式保证两个系统协调。其中视觉系统的构建主要是在PC端使用C++语言编写,结合OpenCV和Tesseract进行构建。机械手系统利用STM32微控制芯片构建运动控制系统。视觉系统端输出的数据内容为物件中心坐标(x,y)、物件高度H和文字识别结果,这些数据通过串口通信的方式统合并发送给机械手系统,利用STM32芯片对得到的数据进行后处理,实现对应的分拣动作。

图1 所提系统具体流程示意图

2.2 视觉系统设计

视觉系统是整个检测系统中最关键的部分,由前景提取、双目测距、OCR检测等模块组成,各模块之间的关系示意图如图2所示。前景提取模块中主要功能是将物件从复杂的背景当中提取出来,并向双目检测模块输入物件中心坐标。基于快递物件的流动性大,但其分拣的环境固定的特性,前景提取模块使用的算法为BSM背景差分法[5],其好处是能够将快递件从背景当中较为完整地提取出来,方便后续的程序识别。

图2 视觉系统各模块关系示意图

双目测距模块[6]使用了USB双目摄像头,其作用在于能对输入的中心点坐标进行深度的检测,获取到摄像头到物件中心点的距离信息。但是USB双目摄像头在读取外部的环境信息后,由于一些制造缺陷,会导致获得的图像带有径向和切向畸变,会干扰到深度信息的获取,使最后的结果出现偏差而导致系统不能正确运行。因此在进行双目测距前需要先对双目摄像头进行矫正和共面操作[7]。利用MATLAB中自带的双目摄像头矫正工具箱进行自动校正,从而获取标定矩阵、畸变参数和旋转与平移向量,随后反馈回视觉系统设计中。所提系统所使用的摄像头具体参数如图3所示。矫正畸变后,将双目相机放置在固定的位置,通过双目摄像头可以获取深度的作用来获取当前快递的真实位置,利用双目摄像头构建的视觉系统对于不同高低和大小的快递件的分拣的能力具有一致性。

图3 双目相机矫正参数

图像的预处理主要功能是将图片变成适合Tesseract识别的图片。通过灰度化、二值化和直方图均衡化等图像强化处理增强快递件上的文本信息,去除掉非必要的信息,提高下一步文本识别的正确率。视觉方案设计中选择OpenCV4.0.0和Tesseract5.0两个开源项目的相关库共同进行开发[8]。为了提高识别精度,对Tesseract的语言包进行重新训练,利用LSTM神经网络对带有文字的快递件图片进行训练,强化当前环境下识别的适配性。从物件出现在图像当中到最终被分类的过程中,视觉系统可以准确提取出物件标签上的中转站地名、物件在图像当中的位置和物件高度信息。随后提取的数据将通过串口通信的形式发送到STM32,执行相应的控制操作。

2.3 机械手系统设计

机械手系统部分采用STM32做芯片构建整个硬件控制系统,系统测试实物图如图4所示。机械臂使用六个舵机构成六轴移动系统[9],该系统能够对XYZ和θx、θy和θz实现自由移动的设计。对于快递分类多样化使用场景,六轴机械手能够最大程度地控制快递物件的分类走向。机械手的程序设计当中,充分发挥STM32系统资源丰富的特性,采用六路PWM方波分别控制舵机的转向,从而控制机械手的姿态动作。方案设计中,首先设定某一静止零位作为机械手的待机位置,然后通过STM32上的串口中断功能接受来自视觉系统识别的物件三维位置和文字信息。STM32对接收到的信息进行处理,按设定的方向和设定的分类结果动作夹取快递件并将其分类[10]。在做完分类的动作后,STM32将控制机械手复位至待机位置,重新开启串口中断,等待下一个物件的进入和视觉系统的识别结果。

3 实验结果及分析

3.1 视觉系统运行结果

视觉系统中利用Tesseract进行OCR识别结果如图5所示。从双目摄像头读取的一张图像经过预处理后,其进入OCR检测阶段的图像就如图5的右侧输入框中所示,其识别结果如左侧的终端打印的中文字符所示。

图5 OCR识别结果

另外,为了验证自训练语言包在连续识别情况下的有效性,对Tesseract-OCR识别系统的准确度和运行速度进行测试。通过对150张包含地址信息的图片进行识别测试,结果如图6所示。在150张图片当中有2张图片无法得到正确识别结果,其正确率在98%左右,运行速度约为每秒10帧。

图6 OCR识别正确率测试结果

为了验证前景提取模块中BSM算法的有效性,进行了模拟测试。前景提取模块测试运行时引入的背景如图7所示。物体进入双目摄像头的视场时,在程序进行前景和背景分类后的结果如图8所示。实验结果表明,利用BSM算法能准确分离出前景物体。从图8左侧结果可以看出,前景提取模块可以对进入视场的物体进行中心点计算,其计算的中点打在了物件的几何中心处。

图7 背景引入测试结果

图8 前景物体提取结果

在双目测距中,对图8利用SGBM双目视觉匹配方法[11]得到的真实深度图如图9所示。由于摄像头分辨率和抗干扰程度的影响,其计算得到的深度图存在较多的空洞。为了降低摄像头噪声或算法引入的物件深度计算误差,所提系统在执行物件位置获取的取点操作时,可以通过开运算、闭运算等形态学操作填充空洞。

图9 深度图计算结果

3.2 机械手系统运行效果

机械手系统设计中选择STM32芯片上的PA2、PF6、PF7、PF8、PF9和PB14作为控制六个舵机的PWM方波控制口。STM32芯片通过串口中断接收视觉系统传递过来的物件坐标和OCR识别信息,在机械手的程序中驱动舵机使其转到特定的角度并做出相应的夹取动作。图10为机械手抓取快递物件模拟测试结果。图10(a)为模拟物体出现在双目摄像头视场中。图10(b)为机械手系统准确夹取到物件的实验结果。图11为模拟不同快递分拣实验结果。图11(a)为模拟分拣广东揭阳快递物件的夹取处理实验结果。图11(b)为模拟分拣广东深圳快递物件夹取处理实验结果。从机械手系统执行的分类夹取结果可知,所提方案能够实现对带不同标签的物件进行准确识别、分类和夹取,其中OCR识别具有较高的准确率,处理速度能够满足正常的物件分拣流转。

(a) (b)

(a) (b)

4 总结

本文提出一种基于Tesseract和OpenCV的快递中转分拣系统。此系统以Tesseract-OCR识别算法为核心,结合双目测距和背景建模等辅助定位算法,构建视觉检测系统。用训练得到的快递标签字符语言包进行OCR检测,结合OpenCV的视觉算法进行图像处理。采用STM32芯片构建机械手控制系统,最终实现物件标签信息的自动识别、自动分类和夹取。此系统具有准确率高、速度高效等优点,在小型的快递分拣中心具有较高的应用价值。

猜你喜欢

双目物件机械手
打开话匣子的好物件
老物件
旧元素,新物件
基于双目测距的卡尔曼滤波船舶轨迹跟踪
双目视觉运动目标跟踪定位系统的设计
TRIZ与情景分解法在换刀机械手设计中的应用
老物件,大乐趣
机械手式自动打结机
基于粒子群迭代的一种冗余机械手逆解算法
搬运机械手PLC控制系统设计