Python实现基于深度学习的人脸识别

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

47摘要:近年来,人脸识别技术已经由弱人工智能向强人工

智能转化,随着人脸识别算法的不断改进,人脸识别技术已经

在公安、金融等部门得到了广泛应用。本文提出了一种Python

语言利用Dlib第三方库实现基于深度学习的人脸识别方法。

关键词:Python;Dlib;人脸识别

1、人脸识别技术概述

人脸识别技术是一种基于图像识别,是根据人脸的特征信

息进行身份判定的技术,它经过了几十年的发展已经由弱人工

智能向强人工智能转化,随着人脸识别算法的不断改进,人脸

识别技术已经成为人工智能领域的重要应用。目前人脸识别技

术已经比较成熟,得到了公安金融等部门的广泛应用。(1)公

安部门:通过相片匹配户籍数据,寻找目标对象。(2)安防领

域:通过人脸识别对重点管控区域人员的身份识别,在公共场

所对人群进行监视,以达到身份识别的目的,例如在机场、车

站等人流量大的场所,通过智能监控系统识别犯罪分子。(3)

金融领域:利用人脸识别实现交易支付,例如支付宝实名认证

用户可通过刷脸支付。

2、人脸识别的过程

人脸识别是一个比较复杂的过程,归纳起来可以由五个步

骤组成:人脸检测、人脸关键点检测、人脸规整、人脸特征提

取、人脸识别,人脸识别的过程如图1所示。不同技术会采用不

同的方法来实现人脸面部特征的抽象,比如Harmon和Lesk采

用多维特征矢量来表示,而Kaya和Kobayashi则采用欧氏距离

来表示,本文第三部分提到的Dlib库则是基于深度学习,利用已

经训练好的人脸关键点检测器和人脸识别模型,得到人脸面部

特征值。

图1 人脸识别的过程

3、Dlib库介绍

近些年,Python语言发展迅猛,在很多开发语言排行榜名

列前三名。Python语言能够得到这么快的发展,得益于其源代

码开源性和代码开发的高效性。Python社区提供了大量的第三

方库,它们能够实现科学计算、数据可视化、数据分析等多个

领域,Dlib库就是一个知名的第三方库,能够实现人脸检测和

识别,其算法采用HOG特征与级联分类器,算法的实现大概过

程有:(1)将图像灰度化。(2)采用Gamma校正法对图像

进行颜色空间的标准化。(3)对每个图像像素进行梯度计算。

(4)对图像进行小单元格划分。(5)生成每个单元格的梯度

直方图。(6)把单元格组合成大的块,块内归一化梯度直方

图。(7)生成HOG特征描述向量。

4、Python利用Dlib库实现人脸识别

4.1 前期准备

(1)安装好Dlib第三方库。

(2)下载人脸识别模型和人脸关键点检测器,分别保存为文

件1.dat和2.dat(可从网址/files/下载)。

(3)准备好已知人脸相片和待识别人脸相片,本例准备已

知人脸相片20张存放在Faces文件夹中,待识别人脸2张,其

中test01.jpg和Faces文件夹中的第19张相片是同一个人,

test02.jpg和Faces文件夹中的第7张相片是同一个人,主程序

为testface.py,整个文件夹如图2所示。

图2 文件夹组成示意图

4.2 实现过程

实现过程主要有三个步骤:根据人脸识别模型和人脸关键

点检测器,得到已知人脸相片的特征值库;根据人脸识别模型

和人脸关键点检测器,得到待识别人脸相片的特征值;计算待

识别人脸相片的特征值和特征值库的欧式距离,距离最小者就

是参考识别结果。程序的实现主要包括以下三个子函数,fun1

函数功能是得到一张相片的特征值,fun2函数功能是得到多张

相片的特征值库,fun3函数功能是计算待识别人脸相片的特征

值和特征值库的欧式距离,输出距离最小者为参考识别结果。

(1)fun1函数代码如下,例如执行fun1(test01.jpg)就可

以得到以下128个特征值,结果如表1所示。

★基金项目:2016年国家级大学生创新创业训练计划项目(201610398005)。

Python实现基于深度学习的人脸识别

文/张枝令

(下转第96页)

96

者的威胁、供应商的威胁、替代品的威胁等而产生的经营风险。第三,巨额资金投入以后,收回成本和继续融资而产生的财务风险。第四,存在着人才流失的风险,大学城社区电子商务平台诞生伊始就是新事物,而新事物被接受需要时间,人才在这个过程中可能会不断流失,这些都会成为发展大学城社区电子商务的风险点。这就需要未雨绸缪,制定各种风险防范措施。当企业经营不利的时候,需要考虑各种风险退出机制。

结论

目前,云南昆明的呈贡大学城已经有十多万的学生规模,学生的规模还在继续扩大,为开展大学城社区电子商务奠定了消费者基础。而且由于整体社会经济的快速发展,每个家庭给子女的生活费也在增加,学生的购买力在增强,这又奠定了购买力基础。学生的消费需求增加,同时呈现多样化和个性化的趋势。针对学生的消费市场发展迅速。社区电子商务项目为开发相对封闭的大学城学生需求提出了商业解决设想,针对大学生需求多样化,追求个性化的特点,满足这一特定目标群体的需求。而且,电子商务行业正处于高速发展阶段,特别是社区

电子商务的竞争环境相对宽松,这为项目开展提供了有利的环

境,是进入项目的合适时期。

参考文献:

[1] U网社区电子商务有限公司,《大学城电子商务公司商业计划书》,广东

[2] 樊凡.大学城——电子商务的新绿洲.经济论坛.2009年6月.总第461期作者简介:张毅春,云南开放大学经济与管理学院电子商务教师,主要研究方向:电子商务、市场营销。

(2)fun2函数代码如下。

(3)fun3函数代码如下。

(4)主程序代码如下。

-0.06067708 0.05491785 0.04358019-0.00228785-0.11051986-0.00885675-0.0594133-0.17766482 0.16641264-0.11492105 0.20486003-0.05209041-0.15645099-0.07989543-0.03770057 0.13279372-0.1685966-0.1612604 0.0194744 0.03997719 0.0956379 0.04852592 0.06971404 0.06035744-0.21592438-0.28055468-0.10536811-0.14045475 0.002177-0.06649419-0.09323834 0.04962908-0.16564938-0.02843478 0.0225071 0.1225128-0.00164149-0.04246017 0.21640894 0.01253311-0.29805127 0.12256139 0.03464127 0.2395356 0.15748492 0.00633634 0.02007715-0.18592209 0.15028094-0.12585704 0.12219223 0.12969898 0.08979687 0.0214437 0.03211956-0.16321716 0.02102639 0.10323574-0.15390047 0.05299322 0.12709126 0.00037981 0.05194067-0.01664194 0.14683554 0.09333332-0.03698205-0.2243558 0.10798404-0.17273846-0.13260648 0.16389364-0.16246633-0.18517867-0.31235704-0.02038487 0.37838674 0.07149985-0.23413838 0.0251862 0.00331256-0.01296887 0.17732799 0.1603229 0.02463814 0.03644212-0.14944822-0.01331509 0.27305359-0.05355597-0.04471258 0.21414861 0.07178532 0.04279644 0.07113632 0.04687062-0.07894394 0.05616479-0.17733322-0.03067786 0.00994198 0.03698565-0.05537423 0.14161417-0.17954493 0.15607749-0.00927642-0.05502605-0.04443779-0.02701304-0.08278593-0.01123366 0.14126351-0.24058387 0.17525555 0.11593568 0.08492461 0.09809982 0.07115273 0.05519094-0.03253176

0.00604932

-0.24120952

-0.01842352

0.10044494

-0.05944556

0.09836705

0.02780742

表1 test01. jpg相片128个特征值

主程序分别用test01.jpg和test02.jpg相片进行测试,测试结果均正确,都能识别出与test01.jpg和test02.jpg匹配的相片,测试结果图3所示。

图3 测试结果

5、结束语

本方法实现了人脸识别的功能,但由于每张相片有128个特征值,如果已知人脸相片较多,特征值库较大,计算欧式距离所用时间较长,还要改进算法,需要引进并行计算等技术,提高人脸识别效率。

作者简介:张枝令,宁德师范学院信息与机电工程学院,副教授,研究方向:计算机网络、数据挖掘和大数据。

(上接第47页)

相关文档
最新文档