《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于OMAP3530数字图像处理的多人脸识别系统设计
基于OMAP3530数字图像处理的多人脸识别系统设计
来源:微型机与应用2013年第11期
李硕豪,张 军
(国防科学技术大学 信息系统与管理学院,湖南 长沙 410073)
摘要: 为了完成在不采用传感器条件下对公共场所人数的智能检测,从实际应用的角度出发,运用人脸图像拟合及模糊条件下人脸匹配的算法,实现了在嵌入式Linux平台下以OMAP3530芯片为核心的基于图像处理的多人脸识别系统。该系统能够得出公共场所实时人员的名单,并列出人员信息。以普通办公室为例进行实验,得出准确率可达80%。该系统充分利用了OMAP3530芯片强大的数据处理能力,具有性价比高、可维护性强、工作稳定的特点。
Abstract:
Key words :

摘  要: 为了完成在不采用传感器条件下对公共场所人数的智能检测,从实际应用的角度出发,运用人脸图像拟合及模糊条件下人脸匹配的算法,实现了在嵌入式Linux平台下以OMAP3530芯片为核心的基于图像处理的多人脸识别系统。该系统能够得出公共场所实时人员的名单,并列出人员信息。以普通办公室为例进行实验,得出准确率可达80%。该系统充分利用了OMAP3530芯片强大的数据处理能力,具有性价比高、可维护性强、工作稳定的特点。
关键词: Linux;OMAP3530;数字图像处理;多人脸识别

 数字图像处理技术就是利用计算机或者一些硬件设备(如MCU、DSP、PC等)对通过视频采集电路采集到的图像信息进行一系列算法处理,得到所采集到图像的一系列特征参数(如物体的几何特征等),进而满足人们需求的技术。20世纪70年代初,由于得到大量的研究和应用,数字图像处理已具备了自己的技术特色,并形成了较完善的学科体系,从而成为一门独立的新学科。目前,基于人脸识别的数字图像处理在智能家居、安防监控、搜救侦查等诸多方面得到良好的应用[1-2],但仍存在一系列的问题,如现有系统多是采用单独的计算机或者计算机组进行操作,设备庞大,不易于操作,且大多只是对采集到的发生过的视频片段或者图像进行操作,丧失人脸识别的实时性。本文从嵌入式应用的角度出发,以TI公司生产的包括ARM与DSP双核的OMAP3530芯片为硬件核心,在Ubuntu上搭建基于Linux+DSP/BIOS双操作系统开发环境,并用交叉编译器来调试编译ARM和DSP程序,设计了基于数字图像处理的多人脸识别系统。
1 系统设计及主要算法
1.1 设计思路及系统结构

 本系统主要是针对目前学校、公司等对人员的管理需求所设计研究的。如在教学方面,提高了点名效率,节省时间;在商业方面,解决了以往采用指纹识别的设备昂贵、操作不方便的问题。原理上采用形态学的图像滤波、图像清晰化和模糊条件下的人脸匹配等相关图像视频的处理技术以及基于OMAP3530芯片为核心的Linux嵌入式系统开发技术,硬件上包括OMAP3530处理器、视频采集接口、数/模转换芯片、显示屏幕、图像获取单元和电源等。系统的工作步骤如图1所示。

 (1)系统初始化。由于系统采用的是以TI公司生产的OMAP3530芯片为核心的实验平台,在不同的环境下工作时要对系统进行不同的初始化设置。例如在教室中,不仅需要设置摄像头的安放位置,使得摄像头能够采集到整个工作场所的区域,还要预先得到场所人员的图像数据,并初始化人员图像建立数据库。
 (2)系统被开启,系统将基于TVP5146进行一系列的视频采集工作。由于摄像头采集的原始信号为模拟信号,因此首先要将其经过A/D转换器转化为数字信号;然后OMAP3530处理器的ARM核通过基于TVP5146和V4L2(Video4Linux2)视频捕获应用程序把从摄像头采集到的视频数据通过DSP/BIOS桥传给DSP核进行算法处理;最后DSP核把处理后的图像传给ARM核,并在屏幕上显示。系统根据此原理完成视频的采集过程。
 (3)处理采集到的图像。因为在同一时刻摄像头不一定能够采集到工作区域所有人员的信息,所以只处理一帧图像不能准确反映场所信息。为了解决此问题,系统对视频流中的多帧图像进行处理。系统采集的帧数与公共场所的人数成正比,公共场所的人员越多则同一时刻采集到的人脸数目越小,所以需要的图像帧数越多,反之越少。首先,系统对采集的图像进行亮度及去噪处理,得到平滑的图像数据;其次,将图像中的人脸区域进行分割,再将分割的人脸图像大小标准化之后进行清晰化处理;最后,系统将对标准化后的人脸图像进行人脸识别,得出并显示未到人员名单。
 系统的实现主要由ARM核和DSP核完成。其主要功能包括:(1)ARM Cortex-A8核,此核主要完成系统任务管理功能,如采集前端视频、控制系统的外设、通过DSPLink数据通信机制控制DSP完成一系列软件算法并在LCD上实时显示等功能;(2)TMS320C64+DSP核,此核主要完成图像处理算法功能,如接收ARM端传递的数据、借助DSP/BIOS核完成一系列的算法,在本系统中执行图像标准化、图像清晰化、人脸识别等算法。
1.2 基于OMAP3530嵌入式平台的开发
1.2.1 Linux嵌入式系统的视频、图像采集设备开发

 本系统基于TVP5146视频解码芯片和V4L2设备进行图像采集算法的开发。在Linux环境下采用内存映射的同步采集方式,这种方式在程序运行过程中需要先分配一块内存空间作为视频数据的缓冲区域,当启动视频采集后,视频数据将不断地送入该缓冲区,而当用户需要数据时即从该缓冲区读取。每获得一帧新图像数据,采集程序便向应用程序发送一个信号,上层程序通过相应信号来实现图像数据的实时处理。整个采集过程分为3个步骤:(1)利用函数open()打开设备文件,从而打开设备驱动程序;(2)利用函数ioctl()设置视频捕获参数,包括视频格式、申请buffer等;(3)将内核空间的视频数据映射到相应的用户空间,开启视频捕获;(4)关闭视频流捕获。ARM Cortex-A8核将摄像头捕获的数据通过DSP/BIOS桥传给TMS320C64+核,按照式(1)对采集到的UYVY颜色空间的图像数据进行颜色空间转换,在对图像颜色空间转换之后得到BMP格式图像。此时再由TMS320C64+核进行人脸识别等相关计算。
 
1.2.2 多线程开发
 从程序自身的角度考虑,多线程开发就是使目标任务能够尽可能快地完成,更有效地利用系统资源,提高应用程序响应[7],属于嵌入式软件开发中操作系统层的内容。这对图像处理的程序尤其有意义,当一个操作耗时很长时,整个系统都会等待这个操作,此时程序不会响应其他算法的操作,而使用多线程技术,将耗时长的操作(Time Consuming)置于一个新的线程,这样可以提高系统运算效率。
 在本系统中,由于相关视频、图像采集与图像处理算法复杂度较高,而平台的主频为600 MHz,内存为128 MB。综合考虑,采用生产消费算法完成多线程开发。在Linux嵌入式系统的调度下,系统的不同线程会运行在不同的处理器上,因而一个复杂的程序被分为多个线程,使得ARM核控制的图像采集与DSP核控制的图像处理两个线程之间相互独立,并使其中一个线程阻塞或中断不会影响其他线程的运行,增加了系统的可维护性。
1.3 主要算法及设计
1.3.1 人脸图像分割

 在系统的开发环境下,处理经过预处理后的图像。系统根据肤色识别模型将具有皮肤颜色的图像进行分割,并将分割下来的图像与椭圆进行拟合,从而使得到的人脸图像为椭圆形,而系统根据椭圆长短轴与水平和垂直方向的夹角对椭圆进行旋转调整,最后得出较为理想的人脸图像。标准化拟合得到的人脸图像长短轴之比固定为1.5:1,采集出人脸图像的效果如图2所示。


1.3.2 人脸图像清晰化
 系统运用低分辨率的图像进行人脸的智能匹配,所以要采用图像增强算法进行清晰化研究,以提高采集到的标准化人脸图像的亮度。李晓霞等提出了一种新的低照度彩色图像增强算法[6],为了增强彩色图像而不引起色彩失真,在HSV颜色空间中保持色相不变,提出了采用分段对数变换增强饱和度,结合在多尺度Retinex算法的基础上,采用边缘保持增强色调的低照度彩色图像增强算法。通过对不同环境下的图像或者分辨率比较低的图像的增强处理,得到了比较清晰的图像结果,提高了图像的亮度、细节和对比度。实验结果表明,该算法能够增强景物的可辨识度和人脸特征,提高图像的辨识率。人脸清晰化前后的灰度图像如图3所示,可以看出图3(b)图像质量明显优于图3(a)。


1.3.3 人脸识别
 对清晰化后的人脸图像进行匹配。前人提出了很多人脸识别的算法,其中主成分分析法(PCA)一直受到人们的关注。参考文献[8]在经典PCA方法的基础上,提出了一种改进的PCA方法,该方法在预处理阶段对每幅图像进行灰度的线性变换,通过增强图像的对比度和亮度来减少光照变化带来的影响,然后利用经典PCA方法对图像进行处理。由于光照变化主要影响PCA方法的前3个最大的主分量,因此,在识别阶段对这3个主分量进行加权处理来进一步减少光照的影响。
假设由M幅人脸图像组成图像集B,其主要步骤如下:
 (1)对清晰化的每幅图像进行零均值处理,处理后的图像为x1,x2,…,xM。
 (2)对图像x1,x2,…,xM作图像灰度的线性变化。
 (3)利用经典PCA方法计算特征子空间以及每张人脸在特征子空间中的投影系数。其中特征子空间由按特征值大小进行降序排列的特征向量组成。
 (4)对人脸图像进行识别。
 本系统主要针对人脸区域进行匹配,且整幅图像中只包含人脸区域,所以人脸特征量的提取简单,匹配率相对较高。
2 实例
 本系统的适用范围较为广泛,如教室、会议室、办公室等均可应用。由于分辨率的需要,面积大的环境对摄像头的要求相对较高。此实例是系统在办公室的应用,系统通过对办公室实时图像的采集,得到了较为准确的人员名单,验证了本系统的可行性及准确性。
 (1)系统开始工作,采集办公室内的实时视频。通过获取的视频,系统采集其中的几帧图像进行处理。系统采集的图像如图4所示。由于内存的限制且图像的计算量较大,因此系统必须在获取一定的视频后释放内存,这就限定了获取图像的频率不能太高。

 

 

 由图5可以看出,系统根据采集的多帧图像得出了最终人员的名单。第1幅公共场所的图像并没有采集到所有人员的人脸信息,所以不能检测到所有的在位人员。当采集到第2幅图像时,系统采集到了所有人员的人脸信息,并列出了在位人员信息。
由实验结果可知,系统准确地获得了此办公室的人员信息,得出了未到和应到的人员名单。而对于如教室等的大型公共场所,由于摄像头清晰度的限制,必然使得系统存在一定的误差,但由于系统所采集的是单纯的没有背景的人脸区域的图像,因此在人脸的识别方面仍然具有很高的准确性,使得整个系统的误差相对较小。
 系统采用基于OMAP3530的嵌入式系统设计,能够实现设备本地控制,可维护性及稳定性比计算机控制都有所提高,体现出了系统智能化的特征。实际的应用中,不仅可以运用到文中提到的教室及其他办公场所,而且可以在公安安防监控系统中的罪犯搜索方面得到推广,提高抓捕效率。本系统单纯地对摄像头采集到的数字图像进行处理,有着良好的可操作性和低成本的优点,便于推广。
参考文献
[1] 潘基明,张少兵.基于DSP视频图像采集处理系统设计[J].电子测试,2008(4):74-78.
[2] 王明艳,张海峰.基于TMSDM643的视频监控系统设计[J].微计算机,2008(2):200-201.
[3] 彭启倧,管庆.DSP集成开发环境——CCS及DSP/BIOS的原理与应用[M].北京:北京电子工业出版社,2005.
[4] LEUVEN J, LEEUWEN M B, GROEN F C A. Real-time vehicle tracking in image sequence[C]. Proceedings of IEEE Conference on Instrumentation and Measurement Technology, 2001:2049-2053.
[5] KIM W, LEE C Y, LEE J J. Tracking moving object using snake′s jump based on image flow [J]. Mechanics, 2001(11):119-216.
[6] 李小霞,李铖果,邹建华,等.一种新的低照度彩色图像增强算法[J].计算机应用研究,2011(9):3554-3556.
[7] 李静辉,题原,王艳春.基于DSP的图像采集处理实验开发平台的研究[J].计算机与网络,2008(2):213-214.
[8] 李荣健,韩其龙,杨鑫华.改进的PCA人脸识别新算法[J].大连交通大学学报,2008(4):48-51.
[9] 袁爱平,杨万全.基于OMAP2的3G多媒体技术及应用[J].现代电子技术,2005(14):63-65.
[10] 时岩.基于OMAP软件无线电平台设计与实现[J].电子技术,2012(3):38-42.
[11] 何斌,马天宇,王运坚.数字图像处理[M].北京:人民邮电出版社,2002.

此内容为AET网站原创,未经授权禁止转载。