基于机器视觉的鞋模喷胶系统设计与实现
扫描二维码
随时随地手机看文章
引 言
我国是制鞋大国,为全球鞋业市场提供 60% 的鞋类产品。随着“中国制造 2025”的推进,工业机械手在制鞋行业中得到广泛运用。喷胶在制鞋行业中是一道重要工序,很多制鞋企业在生产过程中运用工业机械手进行喷胶。目前,大部分鞋业制造商采用编程鞋模示教的方式驱动机械手操作 [1],该方式存在精度不高、灵活性差、生产效率低的问题。因为每次手动示教需要的时间较长,鞋底种类繁多,所以示教的效率较低。另外,由于在实际生产过程中,鞋底摆放位置不一, 且编程示教容差相对较小,因而喷涂精度不高,从而导致制鞋企业生产效率低下。
随着电子和物联网技术的快速发展,计算机运算速度突飞猛进,图像处理已在工业中获得广泛运用。与此同时,工业机械手在制鞋行业中也已得到大力推广与应用。如何把两者有效地结合,并寻找高效的解决方案,是该行业的一大热点。本文设计一种基于机器图像处理的鞋模喷胶系统,该系统可灵活地驱动机械手喷胶,还可处理不同类型的鞋底,且具有容差大、精度高等特点。使用该系统可提高制鞋企业的生成效益,促使传统制鞋企业逐渐向智能工厂转型,从而提升我国制鞋行业的自动化水平。
1 系统总体设计
1.1 总体结构
本文鞋模喷胶系统的硬件主要由两台工控机、一台路由器及一个工业摄像头组成。为控制成本,该机器 CPU 采用Intel 奔腾 J2900 芯片,主频为 2.41 GHz,搭配 2 GB 内存空间,硬盘采用 Sandisk/ 闪迪 MSATA3 SSD 16 GB。从整体上看,该机器具有较高性价比。路由器则使用适合稳定传输较大图像的水星 MW315R 300M 型号机器。另外,工业相机选取 GigE 网线传输图像的 Basler acA2500-14gm 相机。各机器用途如下 :
(1) 工控机 1,用于搭载鞋底喷胶示教软件 ;
(2) 工控机 2,用于运行图像处理组件,进行图像识别计算处理 ;
(3) 路由器,用于传输转发数据 ;
(4) 工业相机,用于拍摄鞋模图像 ;
(5) 机械手,用于喷胶。
另外,整套系统的软件组件均部署在具有以太网功能的Ubuntu14.04 操作系统上。本文系统的软件组件主要包含两部分 :图像处理组件,该组件需要安装图像识别库 OpenCV 2.4.13,用于对鞋模图像进行识别计算处理,以提取鞋底轮廓 ;喷胶示教组件,该组件由图形界面应用程序开发框架 Qt 编程实现,主要用于展示鞋模轮廓,指引机械手按照轮廓进行喷胶处理。
基于机器视觉的鞋模喷胶系统总体结构如图 1 所示。
1.2 工作流程
针对本文设计的机器视觉鞋模喷胶系统,在第一次运行时,用户需将棋盘格置于工业摄像头下方,用于相机标定。后续运行中,机器传送带上的硬件装置不断触发摄像头拍照, 并将所获取的图像传送至图像识别端。图像识别端在获得图像后,通过算法提取鞋底轮廓,然后将其相机坐标转换成世界坐标,再通过 TCP/IP 协议将轮廓数据发送至喷胶示教器。示教器接收完数据后,在其界面上显示鞋底轮廓,最后示教器按照鞋底轮廓指引机器手进行喷胶处理。系统工作流程如图 2 所示。
2 系统实现
2.1 相机标定实现
相机标定的目的是将图像像素点的横纵坐标转换成机器手可以识别的世界坐标 [2]。该功能由图像处理组件与工业摄像头协同完成。在摄像头采集黑白分布明显的棋盘格图像并传送至图像处理组件后,由图像处理组件中的算法获取棋盘格图像中的角点信息与世界坐标,再根据这些数据计算可得相机内参系数、外参系数、图像旋转向量及图像位移向量。通过图像旋转向量与图像位移向量即可得到相机坐标到世界坐标的转换参数,从而实现坐标转换 [2]。
其中, 角点识别由图像处理组件中的角点检测算法(Harris Corner Detection)完成 [3]。该算法的主要流程是取某个像素的一个邻域窗口迭代像素点,观察窗口内平均像素灰度值的变化。已知在图像的平坦区域,角点的所有方向没有灰度变化 ;而在图像边缘区域,角点则在某个方向有明显的灰度变化。当窗口沿着边缘区域迭代到角度边缘,如发现窗口各方向的平均像素灰度值有明显变化时,即认定该窗口所覆盖的区域为图像上的角点。根据上述算法实际测试,可得到棋盘格的角点如图 3 圆点所示。
然而,上述算法找到的角点只能达到像素级别,为了使标定参数更加精确,本文采用拟合法进一步提取亚像素角点信息 [4],通过拟合法将角点信息锁定在像素点后两位,实际测试获取的精确角点像素信息如图 4 所示。另外,角点世界坐标由世界坐标转换算法按照棋盘格格子大小与数量产生的序列网状坐标点获得 [5]。
2.2 图像识别实现
为了使图像的轮廓像素更易传输,本文采用点云数据处
理技术。同时,为了减少干扰信息,本文系统将待处理的图
像从彩色图转换成灰度图。另外,为了使图像更加圆滑且轮
廓清晰,本文系统采用均值滤波对图像进行模糊化处理,实
际测试处理后的图像如图 5 所示。
为进一步提取图像的关键内容,本文采用二值法 [6]。该方法主要由选定的阈值来确定图像黑白场,公式如下 :
式中:255 表示白场;0 表示黑场;val 与 dst 分别为转换前后的灰度值;thresh 为选定的阈值。
图像经过二值化处理后,大致可提取鞋模轮廓,但仍有一些凹凸不平的花纹。为了消除这些干扰,本文系统采用漫水填充操作 [7]。具体做法为 :选取图像中的背景点,并找到其连通区域,对其进行取反即可得到漫水填充图,具体如图 6 所示。
图 6 处理过程的鞋模图
将二值化处理后的鞋模图取反再叠加漫水填充后的鞋模图,并采用 Canny 算法即可检测出鞋模轮廓 [8],结果如图 7 所示。
图 7 鞋模轮廓图
获取鞋模轮廓后,将其相机坐标转换成世界坐标,并通过网络传输协议将轮廓数据发送至示教客户端。
2.3 示教客户端实现
示教器客户端包含客户端连接设置、确认鞋模与示教机械手三大功能。
在连接设置中,用户可设置目标服务器(图像处理组件) 的 IP与端口。该功能实现的主要原理是 Socket通信。首先, 服务器端先初始化 Socket,然后与端口绑定(Bind),并对端口进行监听(Listen),再调用阻塞函数 Accept,等待示教器连接。当用户设置完服务器 IP与端口后,点击连接服务端按钮,示教器客户端随即初始化一个 Socket,然后连接服务器(Connect)。如果 IP 与端口设置正确,即可成功连接上服务器,当图像处理端有识别好的鞋模轮廓数据会立即传输至示教客户端。
在确认鞋模的功能中,可实时显示鞋模轮廓的世界坐标, 该功能采用绘点控件实现。控件的主要功能是将获取的点全部显示在控件上,控件内部有一个点数组成员。初始化控件时,主线程获取保存的点信息,并将其存入点数组成员中。程序运行过程中,点数组会一直被清空再重新被赋值,同时控件也通过 Update 函数进行刷新,最终用户可在图像空间看到获取到的鞋模轮廓图,示教器客户端如图 8 所示。
图 8 示教器客户端图
示教机械手的主要功能是使喷胶示教器通过 TCP/IP 协议将鞋底轮廓世界坐标数据发送至机器手,机器手根据这些坐标数据运动进行喷胶处理。
3 结 语
从制鞋行业出现的主要问题出发,本文提出了一种基于机器视觉的鞋模喷胶系统设计方案。该系统能够灵活处理不同摆放位置的鞋底,同时增高旋转的角度容差,从而提升鞋底喷胶的精度。另外,由于不需要对鞋底编程示教,因此系统的整体灵活性得到了显著提高。另外,整套系统人机交互界面整洁,方便用户操作。目前,在国家对中国制造与智能工厂的倡导下,本文系统已得到大力推广。当然,在图像识别时还存在一些不足,如有噪点影响时需要人工干预,全程自动化将是本文系统今后改进的方向。