加急见刊

商场现代化管理中员工胸牌自动识别系统的关键技术研究

李丰  2008-12-04

[摘要] 图像识别技术是利用计算机进行图像分析,从中提取有效的识别信息,用来辨别图像中的有效信息的一门技术。随着计算机技术的迅速发展,以及现实生活的需要,在很多地方采用了图像识别技术,胸牌识别技术在未来的许多领域中,如个人工作情况、智能入口检测系统等。本文首先介绍图像识别技术的概念,接下来详述图像识别技术对于胸牌识别技术中的关键问题——细化的研究,详细介绍细化的过程和具体方法。 [关键词] 识别技术图像细化 目前,随着我国的经济发展,随着国人的生活条件逐步提高,一方面,国人进入超市购物的情况越来越多,商场消费逐步增加,这给商场的管理带来了巨大的难度;另外一方面,商场在对员工的管理方面一直还处于人工方法进行,员工违纪现象随时存在、随时发生。例如,擅自离开岗位、越权进入仓库通道、擅自进入库存重地、收银员擅自离岗等等不胜枚举,可是我们的管理手段还非常陈旧,管理人力非常有限。所以,研究员工的计算机自动管理就显得非常重要和有使用价值,胸牌的自动识别系统可以客观有效的对上述现象进行记录和信息追踪,加强现代化的管理手段和引入先进的管理思路,从社会价值来讲,胸牌的自动识别的工作就变得很有意义和价值。 一、图像识别技术的概念 图像识别技术是计算机视觉和模式识别技术在现代智能管理系统中的一项非常重要的研究课题,也是实现现代化管理智能化的重要环节。它是以计算机数字图像处理、模式识别、计算机视觉等技术为基础的智能识别系统,利用每一个被管理对象都有的惟一的号码进行管理,通过摄像机所拍摄的被管理对象的图像进行号码识别。在不影响被管理对象当前状态的情况下,计算机自动完成图像的识别,从而可以现代化管理工作的复杂程度。 分析研究以往的图像识别算法,我们就会发现目前还有许多缺点和不足,例如识别率低、识别速度慢、定位不够准确等,所以,如何改进算法,提高准确率,已经成为一项非常重要的任务和课题。 二、胸牌识别系统的工作流程和主要功能 胸牌自动识别系统的工作流程主要分胸牌检测、图像抓拍、胸牌自动识别、数据传输等。 具体流程就是,当有商场员工通过规定通道或路口时,预埋在通道上的感应线圈经过触发,感应检测器向信息处理单元发出人员通过信号,处理单元收到人员或员工通过信号后启动抓拍单元的辅助光源,发出一束脉冲闪光,同时控制并利用员工的胸牌图像采集摄像头送出图像信号,通过抓拍单元所得的图像信息,自动识别单元将胸牌进行定位、关键字符的边缘提取、字符粗切分、字符细切分、字符特征提取、字符识别、胸牌底色识别等处理,完成对员工胸牌的自动识别过程,然后数据传输单元把以上识别出的胸牌信息及图像传输给数据中心计算机进行信息处理和综合。 员工胸牌自动识别系统的主要功能有自动识别胸牌中的颜色、汉字、字母和数字,通过向中心计算机传送抓拍的图像,完成实时数据传送,并可以提供一路模拟电视信号用以代替通道摄像机,同时具有信息联网的功能等。 为了尽量提高识别效率,首先对获得的原始图像进行必要的预处理,例如灰度图像的几何校正、光照强度校正、去噪声和胸牌边缘检测;接着开始进行胸牌识别,采用胸牌识别技术,将胸牌和非胸牌区域分离,然后运用约束条件,确定胸牌的具体位置;接着运用胸牌图像进行胸牌边缘检测,通过图像二值化处理得到需要的员工胸牌信息。 三、胸牌识别的关键技术研究 在计算机图像的胸牌识别中关键技术有很多,这里本文先研究其中的图像细化问题。 细化(Thinning)的算法有很多,笔者使用的是简单而且效果比较好的一种算法,用它能够实现从文本或者图像抽取骨架的功能,比如现在要细化的对象是白底黑字的文本,程序中为了处理的方便,采用256级的灰度图像,不过只用到了调色板中的0到255两项。 所谓细化,就是从原来的图形中去掉一些点,但还是要保持原来的形状,也就是保持原来图形的骨架,所谓骨架,可以理解为图像的中轴,例如一个长方形的骨架是它的长方向上的中轴线,正方形的骨架是它的中心点,圆形的骨架是它的圆心,直线的骨架还是它自身,孤立点的骨架还是它自身。文本的骨架是它笔画的中心线。可是怎样判断一个点能否被去掉呢?显然,要根据它的上下左右的8个相邻点的情况来判断。例如下图:

下面来分析一下,如图所示,(1)图中,相邻的8个点都是依附与中心点的,也就是中心点是一个内部点,所以,要是内部点删除了,骨架就会架空了,所以,这点不能够删除。(2)对于的点也不能够删除,原理和(1)是一样的;(3)可以删除,因为它不是骨架;(4)不能够删除,否则原来连接的就会断掉了;(5)可以删除,因为也不是骨架;(6)不能够删除,因为它关系到直线的端点,删除以后,线就不完整了。 所以,总结出来以后,就有以下这样的因素了:内部点不能够删除,孤立点不能够删除,直线端点不能够删除,另外对于某个边界点,如果去掉以后,连通分量没有增加,则该点也可以删除。 由于计算机很难处理空间的判断问题,所以,现在把一个点的相邻点所出现的所有几率都列举出来,并从中标识出哪些情况可以删除,哪些情况不能够删除,这样,计算机在处理的时候好比就有了一个参照,所以,程序中要先制作出这样的一个表,在表中,列举出可能出现的情况最多就是256种,这里设置一个数组记录下来。在表中,如果某个元素是0,就不能够删除,如果是1,表示可以删除掉。

这个表出来以后,计算机就可以根据具体情况作出判断了,每次的处理就可以一行一行的把整个图像扫描一遍,对于每一个点(不包括边界点),先计算机出它在表中的索引,找到以后,发现是0的,就保留下来,如果是1,表示可以删除,如果本次扫描没有一个点被删除,则循环就结束了,剩下的就是骨架点了,如果有点被删除,则进行下一轮的新的扫描,如果反复,直到没有点被删除为止。 其中细化处理的过程具体算法如下: (1)生成边界:假如一个被标志的点的四周有任何一个点未标志,则此点就是边界点,也可以使用八方向进行判断,就是假如一个被标志的点的八方向邻接点有任何一个未标志,则此点是边界点。 (2)如果被标志的点的连通区域中有任何一个非边界点(被标志了但是不是边界点),则去掉边界(相当于细化),否则将所有的边界点,也就是整个的连通区域标志为临时中心点。 (3)重复(1)(2)两个步骤,直到所有的点都被访问过为止。 为了取得最终的中心点,还需要对所有被标志为临时中心点并且连通的像素取坐标的平均值,将平均值作为最终中心点。 对于圆形或者接近圆形的椭圆来说,一次的细化则半径就减去1,因此根据细化的次数就可以得到半径的值。 经过细化之后的图像就可以方便存储和供以后管理之用。

下载