基于OpenCV的图像特征智能识别系统设计

2015-10-31 02:12张林吴振强
电子设计工程 2015年20期
关键词:肤色人脸分类器

张林,吴振强

(1.商洛学院数学与计算机应用学院,陕西商洛726000;2.陕西师范大学计算机学院,陕西西安710062)

基于OpenCV的图像特征智能识别系统设计

张林1,吴振强2

(1.商洛学院数学与计算机应用学院,陕西商洛726000;2.陕西师范大学计算机学院,陕西西安710062)

对于图像监控而言,多数监控只是简单的捕捉图像、处理图像,最后再通过人工进行识别,缺少智能监控,特别是针对某一特定需求的特征识别。本文设计一种基于OpenCV的图像智能识别系统,利用摄像头采集图像,通过OpenCV的相关函数进行特征图像的识别。针对食品药品加工过程中的特定问题进行模拟,实验表明,该系统具有较好的识别速度和识别效率,具有一定的实用性。

OpenCV;视频图像;人脸识别;特征图像

随着国家经济建设持续快速发展,人民生活水平日益提高,人们对食品药品质量安全的要求越来越高。这就需要在食品药品生产环节中加大监管力度,以保证生产环节安全规范,这一趋势,促使市场对监控产品的需求不断增加。这些需求促进着现有的监控系统的不断完善和发展,并向智能化、网络化的方向不断迈进。

现阶段无论是在教育,交通,生产和安保等领域的大多数监控系统仅仅是简单的捕捉图像、处理图像、传播和储存图像,采集的信息多数需要人工进行识别。人在不同的疲劳程度下,工作的效率会有显著差别,因而人工识别往往容易出现错误、或者遗漏的情况。随着监控范围的不断扩大,采集的信息不断增加,对生产过程的管理更加严格,人工识别的方式已经满足不了市场的需求。此时就需要借助计算机进行智能监控,使计算机像人一样对监控范围内的特征物品进行智能识别。计算机具有识别准确,标准统一,不疲劳和处理速度快的特点,能够处理大量的信息,因此视频监控系统的智能化成为了人们的迫切需求。

就目前来看,已有的智能监控系统功能都比较单一,仅限于现场视频录制、事后回放、实时监测等;对于违规事件的发现,通常需要持续不断的人工监视,手工回放查找,效率低下,容易造成巨大的人力浪费;而且没有一种针对某一特定行业的图像特征智能识别算法可以满足特定工作间监控的需求。本文从图像的特征入手,针对食品药品生产监控中的一些违规现象,研究自动设别工作中的违规行为,并进行报警处理,从而实现工作的智能化管理。在具体的系统设计中,利用图像的Harr特征,采用开源的OpenCV下的分类器检测出人眼的位置,然后对特定区域进行检测,确定是否有违规行为。

1 OpenCV与人脸检测

1)OpenCV

OpenCV[1],全称是Open Source Computer Vision Library。OpenCV是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV拥有包括300多个C函数的跨平台的中、高层API。它不依赖于其它的外部库——尽管也可以使用某些外部库。OpenCV为Intel® Integrated Performance Primitives(IPP)提供了透明接口。这意味着如果有为特定处理器优化的的IPP库,OpenCV将在运行时自动加载这些库。

2)人脸检测原理

对人脸检测的研究从上世界70年代就已经开始,目前的人脸检测主要集中在基于数据驱动的学习方法,如统计学模型方法、神经网络学习方法等。在实际中应用广泛的多为基于Adaboost算法的方法[2-3]。

人脸检测方法是一种基于积分图、级联检测器和AdaBoost算法的方法,由以下3部分组成:

①使用Harr特征表示人脸,使用“积分图”实现特征数值的快速计算。

②使用Adaboost算法挑选出一些最能代表人脸的矩形特征(弱分类器),按照加权投票的方式将弱分类器构造为一个强分类器。

③将训练得到的若干强分类器串联组成一个级联结构的层叠分类器。级联结构可以提高分类器的检测速度。

在具体的检测过程中就是从图片中找出所有包含人脸的子窗口,将人脸的子窗口与非人脸的子窗口分开[4],步骤如下:

①在一个20*20的图片提取一些简单的特征(称为Haar特征),如图1所示。

图1 Haar特征Fig.1Haar features

它的处理方法就是将白色区域内的像素和减去黑色区域,在人脸与非人脸图片的相同位置上,值的大小是不一样的,这些特征可以用来区分人脸和非人脸(如图2)。

图2 人脸区分Fig.2Face to distinguish

②使用处理好的人脸图片,和背景图片一起作为训练样本。在大量的训练样本中,通过AdaBoost算法挑选数千个有效的Haar特征来组成人脸检测器(如图3)。

人脸检测在实际中主要用于人脸识别的预处理,即在图像中准确标定出人脸的位置和大小。AdaBoost人脸检测虽然复杂,但是利用OpenCV提供的函数和分类器将变得很容易[5]。

图3 Haar特征挑选Fig.3Haar feature selection

采用开源的OpenCV提供的分类器,直接检测出人脸并框出人脸所在的矩形区域,属于统计理论的方法。利用样本的Haar特征进行分类器训练,得到一个级联的boosted分类器。训练样本分为正样本和负样本,其中正样本是指待检目标样本,负样本是指其他任意图片,所有的样本都被处理为同样的尺寸。分类器训练完成以后,就可以应用于采集图像中感兴趣区域的检测。

在目标检测中,分类器中的级联是指最终的分类器是由几个简单分类器级联组成。在图像检测中,被检测的窗口依次通过每一级分类器,这样在最初的几层检测中大部分的候选区域就被排除,全部通过每一级分类检测器的区域即为目标区域[6]。

2 系统需求分析与设计

本系统针对食品药品管理中的特定问题设定,主要针对一些违规的现象,比如进操作间不戴口罩或者帽子等行为,能够快速准确的识别出违规行为,以正确的方式进行报警,记录违规行为,实现无人监管,节约成本,同时提升生产的规范化,提高产品质量。

2.1系统流程

系统数据处理流程如图4所示。

图4 数据处理流程图Fig.4The flow chart of data processing

2.2系统的总体结构设计

系统项目模块如图5所示。

图5 项目功能模块图Fig.5The functional module chart project

2.2.1违规行为识别模块

1)程序描述

为了描述方便,本系统设定正常情况下工作人员所戴的帽子和口罩是白色的。在此假设条件下,程序模块首先对摄像头获取的静态的帧图像进行处理,通过肤色提取找到眼睛,然后在眼睛上下区域取需要判断特征点的区域,进行颜色识别。如果特征点检测为白色,即认为工作人员着装正常;否则识别出违规行为,即帽子、口罩佩戴异常。

2)算法

基本算法就是先将图像中肤色部位提取出来,然后通过训练级联分类器的方法,判断人眼部位,然后在人眼上下区域取特征点判断颜色是否为白色,最后判断帽子和口罩的存在。

肤色区域提取主要包括两个步骤:面部区域的选定和肤色区域的提取。面部区域的选定用到人脸检测的方法,然后根据统计学的方法,基于肤色区域的聚类特性,采用大量的肤色图片构造出肤色模型查找表,利用这个表查找提取出肤色区域。

3)流程逻辑

违规行为识别模块的流程逻辑如图6所示。

图6 违规行为识别模块流程逻辑图Fig.6Irregularities recognition module flow chart

4)关键技术

(a)图像的获取:通过摄像头捕获的视频中截取静态的帧图像。

(b)预处理:人脸特征识别的预处理是首先找出人眼所在区域,然后通过判断提取到的是否为人的眼睛,将不是人眼的错误点排除,再通过人眼所在区域向上和向下分别取点进而判断是否为特征物。因而将截取的静态帧图像进行预处理是非常重要的过程,预处理过程一般包含以下3步:

①将图像转换为灰度图像,并调整图像的尺寸,得到统一大小的校准图像。

②图像利用边缘检测canny算法,检测出图像的边缘。

③直方图均衡化,以部分消除光线和光照强度的影响,增强检测结果的正确性。

直方图均衡化处理是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布,以增强像素灰度值的动态范围,以达到提高图像整体对比度的效果[4]。

2.2.2违规视频和图片存储模块

此模块是将违规行为的视频和图像存储起来,即程序将判断为不戴帽子或口罩的图像进行存储,以备后期查看验证。

2.2.3自动预警处理模块

该模块能够记录违规操作,即检验到有违规操作并且成功纪录,同时在保证成功纪录的情况下自动通知监管人员或部门,做出相应的处理措施。

3 系统实现

由于OpenCV 2.4.4的安装平台为32位XP或者64位win7,因此本系统在Windows7平台上,在VC 2010下安装OpenCV2.4.4。

3.1接口实现

用户接口主要是通过图形化的界面来将系统的各项功能、应用程序和文件直观的表现出来。图形用户接口元素包括窗口、图标、菜单和对话框,图形用户接口元素的基本操作包括菜单操作、窗口操作和对话框操作等。

用户在系统运行时可以随时通过主界面的菜单或对话框等图形界面对各个摄像头所拍摄的画面以及摄像头进行操作;用户同时也可以对系统已经截取的图像和已发出的警告和报警进行一系列操作。

软件接口:与操作系统的接口,windows 2000以上。

硬件接口:该系统与监控的摄像头的接口,及通过网络等方式上传数据及图像的接口。

3.2系统测试

1)测试环境

操作系统:win7 64位操作系统。

应用软件:VC2010,OpenCV,电脑自带摄像头。

2)测试过程

为了简单起见,设定不戴口罩和不戴帽子属于违规行为,分了下面M1,M2,M3,M4 4种情况,如图7所示。

图7 4种违规情况Fig.7Four kinds of violations

上述4种情况,分别在单人和多人情况下进行测试,实验在不同的时间段,对单人和多人不同的情况进行测试,总共进行200次测试,如果忽略光线和设备带来的影响,测试结果与预期结果基本一致,成功率达95%以上。测试结果如表1所示。

图8和图9标示了M2和M4的测试情况,从图上可以看出,违规的情况已经被设别出。

4 结束语

实验测试表明,本文提出的基于OpenCV的图像特征智能识别系统,针对食品药品管理中的特定问题,对一些典型的违规行为,能够快速准确的识别出来,在记录违规行为的同时,以正确的方式进行报警,从而实现无人监管,可以节约成本,同时提升生产管理的规范化、标准化,提高产品质量。由于该技术理论可行,且有比较强的可操作性,未来我们可以将这一技术移植与嵌入式设备之中,真正实现智能化数字摄像头。

表1 测试结果Tab.1The test results

图8 双人测试M2结果Fig.8Results the M2 double test

图9 双人测试M4结果Fig.9Results the M4 double test

[1]学习OpenCV(中文版)[M].于仕琪,译.北京:清华大学出版社,2009.

[2]Viola P,Jones M.Robust real-time face detection[J].IntemationaI JournaI of Computer Visiion,2004,57(2):137-154.

[3]储泽楠.肤色模型的面部肤色区域提取[J].电脑编程技巧与维护,2009(18):94-95. CHU Ze-nan.Extraction of facial color region based on skin color model[J].Computer Programming Skills&Maintenance,2009(18):94-95.

[4]胡玉峰.基于OpenCV的嵌入式人眼追踪系统研究[J].电子科技2014(9):58-61. HU YU-feng.Research on embedded eye tracking system based on openCV[J].Electronic Science and Technology,2014(9):58-61.

[5]赵黎.基于OpenCV的人脸检测系统设计与实现[J].科技信息,2008(18):384. ZHAO Li.A face detection system based on OpenCV design and implementation of OpenCV[J].Science&Technology Information,2008(18):384.

[6]唐坤.面部特征点定位算法研究[D].大连:大连理工大学,2013.

Design of the characteristics of image intelligent recognition system based on OpenCV

ZHANG Lin1,WU Zhen-qiang2
(1.College of Mathematics and Computer Application,Shangluo University,Shangluo 726000,China;2.School of Computer Science,Shaanxi Normal University,Xi'an 710062,China)

For the image monitoring,most monitoring just simple image capture,image processing,and finally through the artificial identification,the lack of intelligent monitoring,especially aiming at the characteristics of a particular requirements for equipment,This paper design a Image intelligence equipment system based on t OpenCV,Use the camera to capture the image recognition,feature for image by OpenCV′s correlation function。The food and Drug Administration for the particular problem in simulation,the experimental resuits show this system with high recognition speed and accuracy,has a certain practicality.

OpenCV;video image;face recognition;characteristic of image

TN01

B

1674-6236(2015)20-0189-04

2014-12-29稿件编号:201412289

张林(1968—),男,陕西丹凤人,教授。研究方向:计算机应用,图形处理。

猜你喜欢
肤色人脸分类器
有特点的人脸
一起学画人脸
Conversation in a house
人的肤色为什么不同
为什么人有不同的肤色?
三国漫——人脸解锁
基于实例的强分类器快速集成方法
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
长得象人脸的十种动物