基于 Labview/Matlab 的人脸识别系统设计与实现

摘 要:基于 Labview/Matlab、usb 摄像头软硬件等设备,设计出人脸识别系统。文章着重介绍了人脸自动识别系统的设计思想和实现技术。该系统以人像识别技术为核心,采用简单的单机模式,建立和维护了一个含有人像特征的综合数据库,从而能够在即时采集人脸图像时,迅速地查询出最接近于已采集到的的已登记人员的身份信息。
关键词:人脸识别 人脸检测 Labview Matlab
目前人脸识别技术已经相对成熟,其应用也随之日益广泛。不只刑侦,海关, 机场, 车站等重要场合使用,而且在门禁,考勤,个人私密等日常生活环境中也成为需要,成本低廉,结构简单,使用方便,实时性强是对这一类系统的要求。本系统是基于以上考虑设计并实现的一种单机带普通usb摄像头的人脸识别系统,该系统主要基于 Labview 和 Matlab 的软硬件环境,本系统将 Matlab 嵌入到 Labview中,将 Labview 方便的程序外观和操作控制功能与 Matlab 强大的计算功能结合起来,界面友好, 功能强大。

1 系统结构

1.1 系统的硬件组成

(1)性能良好的普通个人台式机或笔记本电脑,要求带有 usb2.0 接口。
(2)成像良好的普通 usb2.0 电脑摄像头。

1.2 系统软件开发平台

(1)windows xp 操作系统
(2)labview 8.0程序开发软件
Labview是美国国家仪器公司提供的一种程序开发环境,采用图形化编程语言和流程图的形式开发应用程序。Labview 提供大量完成信号产生、信号处理、信号分析及滤波器设计的子程序,结合普通的usb摄像头,可方便实现人脸图像采集分析与处理功能。
(3)matlab 7.0语言编译平台
Matlab 是一种面向科学与工程计算的高级语言,目前已发展成为国际上先进的科技应用软件之一。它拥有强大的科学计算功能、完整的数字信号处理和图形图像工具箱支持,使系统的即时性和准确性得到有力的保证。

1.3 系统结构框图

系统结构框图如图 1 所示。

2 系统设计

2.1 图像的实时采集

采用通用的usb2.0普通摄像头,在该机安装摄像头驱动程序,使用matlab的Image Acquisition Toolbox中的函数构成对摄像头进行设置、驱动、以及图像的预览的模块,将图像送入 labview 的图像预处理模块。

2.2 图像中的人脸检测

本系统采用当前图像与固定背景图像之间的差分方法, 从背景图像中检测出运动目标,即检测出含有人脸信息的图像;然后变换到 YCrCb 色彩空间,利用肤色信息在色度空间具有很好的聚类性,建立肤色模型,并根据肤色色度判决范围 RCr=[133,173]和 RCb=[77,127][1],将图像分为肤色区域和非肤色区域两类。在肤色区域用积分投影的方法根据五官几何特征和人脸长宽比例提取出正确的被照相人的人头区域。

2.3 人脸图像的归一化

人脸图像归一化就是将以上得到的人脸图像通过图像预处理的手段使图像成为便于运算的标准图像。其主要工作步骤如下:
(1)对图像用以上检测人脸时相同的积分投影方法定位眼睛后根据眼球连线的走向进行头像倾斜调整。
(2)在以上基础上作进一步处理剔除背景、头发等对人脸识别无用或造成干扰的冗余信息,对图像进行剪裁。
(3)因为照相距离的远近、人脸大小的不同所得人脸图像也不同,在不改变比例的情况下本系统对人脸进缩放,统一成 120 × 100 的图像。

3 系统实现

本系统采用将matlab程序嵌入labview实现,因为 labview 结构清晰、数据传输快捷、编程方便、界面美观等特点,系统用 labview构建系统的主要框架、界面以及数据库操作,而 matlab 则发挥它的科学计算强的特点,在本系统中繁杂的特征提取算法和识别算法由matlab模块来完成,当然这样的优点还在于本系统核心是识别算法,这样的实现可以在不改动其他模块代码的情况下,迅速应用新的识别算法。
部分系统的实际运行效果如图 3 所示。

4 结语

本系统完成后先对 50 个人的正面人脸图像进行了实验,实验显示除了个别脸部遮挡、鬼脸外,其他情况都能够有效识别出,而且实时性很好; 之后再对不同光照、光线及不同背景等情况经性实验,除个别条件太差的如背景太接近肤色或光线太强图像,识别率能达到95% 以上。再加上本系统的安装简单、携带方便的特点,使得它适合于在小部门或个人的门禁、身份验证等方面。
现在大型的人脸识别在国内公安、奥运会、机场等场合相继使用, 人们对人脸识别的研究水平也在不断提高,相信不久的将来人脸识别系统也会像指纹识别一样得到一个广泛的普及成为我们日常生活的一部分。

相关推荐
西城微科方案开发3 小时前
智能充气泵PCBA充气解决方案
单片机
v先v关v住v获v取3 小时前
轴吸盘机械手关节型机器人设计含+8张CAD图+SW模型+运动仿真+说明书
科技·单片机·51单片机
学嵌入式的小杨同学3 小时前
STM32 进阶封神之路(十一):串口通信底层原理全解析 ——UART/USART 区别 + 电平标准 + 协议规范(面试重点)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件
为搬砖记录3 小时前
杰理AC695N soundbox 3.1.2打开ble宏的编译bug
c语言·开发语言·单片机·bug
wuyikeer3 小时前
SocketTool、串口调试助手、MQTT中间件基础
单片机·嵌入式硬件·中间件
阿祖_in_coding3 小时前
面试之嵌入式基础知识:uart、i2c、spi
嵌入式硬件
Hello_Embed3 小时前
LVGL 入门(四):大小坐标与盒子模型
前端·笔记·stm32·单片机·嵌入式
風清掦3 小时前
【江科大STM32学习笔记-08】DMA直接存储器存取
笔记·stm32·单片机·嵌入式硬件·学习
17(无规则自律)4 小时前
嵌入式 Linux 启动:设备树的加载、传递和解析全流程分析
linux·stm32·嵌入式硬件·unix