推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

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

更新时间:2019-12-24 18:37:52 大小:2M 上传用户:songhuahua查看TA发布的资源 标签:python深度学习人脸识别 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

近年来,人脸识别技术已经由弱人工智能向强人工智能转化,随着人脸识别算法的不断改进,人脸识别技术已经在公安、金融等部门得到了广泛应用。本文提出了一种Python语言利用Dlib第三方库实现基于深度学习的人脸识别方法。


部分文件列表

文件名 大小
Python实现基于深度学习的人脸识别.pdf 2M

部分页面预览

(完整内容请下载后查看)
Python实现基于深度学习的人脸识别  
文/张枝令  
摘要:近年来,人脸识别技术已经由弱人工智能向强人工  
智能转化,随着人脸识别算法的不断改进,人脸识别技术已经  
在公安、金融等部门得到了广泛应用。本文提出了一种Python  
语言利用Dlib第三方库实现基于深度学习的人脸识别方法。  
关键词:Python;Dlib;人脸识别  
方库,它们能够实现科学计算、数据可视化、数据分析等多个  
领域,Dlib库就是一个知名的第三方库,能够实现人脸检测和  
识别,其算法采用HOG特征与级联分类器,算法的实现大概过  
程有:(1)将图像灰度化。(2)采用Gamma校正法对图像  
进行颜色空间的标准化。(3)对每个图像像素进行梯度计算。  
(4)对图像进行小单元格划分。(5)生成每个单元格的梯度  
直方图。(6)把单元格组合成大的块,块内归一化梯度直方  
图。(7)生成HOG特征描述向量。  
1、人脸识别技术概述  
人脸识别技术是一种基于图像识别,是根据人脸的特征信  
息进行身份判定的技术,它经过了几十年的发展已经由弱人工  
智能向强人工智能转化,随着人脸识别算法的不断改进,人脸  
识别技术已经成为人工智能领域的重要应用。目前人脸识别技  
术已经比较成熟,得到了公安金融等部门的广泛应用。(1)公  
安部门:通过相片匹配户籍数据,寻找目标对象。(2)安防领  
域:通过人脸识别对重点管控区域人员的身份识别,在公共场  
所对人群进行监视,以达到身份识别的目的,例如在机场、车  
站等人流量大的场所,通过智能监控系统识别犯罪分子。(3)  
金融领域:利用人脸识别实现交易支付,例如支付宝实名认证  
用户可通过刷脸支付。  
4、Python利用Dlib库实现人脸识别  
4.1 前期准备  
(1)安装好Dlib第三方库。  
(2)下载人脸识别模型和人脸关键点检测器,分别保存为文  
件1.dat和2.dat(可从网址httpꢀ//dlib.net/files/下载)。  
(3)准备好已知人脸相片和待识别人脸相片,本例准备已  
知人脸相片20张存放在Faces文件夹中,待识别人脸2张,其  
中test01.jpg和Faces文件夹中的第19张相片是同一个人,  
test02.jpg和Faces文件夹中的第7张相片是同一个人,主程序  
为testface.py,整个文件夹如图2所示。  
2、人脸识别的过程  
人脸识别是一个比较复杂的过程,归纳起来可以由五个步  
骤组成:人脸检测、人脸关键点检测、人脸规整、人脸特征提  
取、人脸识别,人脸识别的过程如图1所示。不同技术会采用不  
同的方法来实现人脸面部特征的抽象,比如Harmon和Lesk采  
用多维特征矢量来表示,而Kaya和Kobayashi则采用欧氏距离  
来表示,本文第三部分提到的Dlib库则是基于深度学习,利用已  
经训练好的人脸关键点检测器和人脸识别模型,得到人脸面部  
特征值。  
图2 文件夹组成示意图  
4.2 实现过程  
实现过程主要有三个步骤:根据人脸识别模型和人脸关键  
点检测器,得到已知人脸相片的特征值库;根据人脸识别模型  
和人脸关键点检测器,得到待识别人脸相片的特征值;计算待  
识别人脸相片的特征值和特征值库的欧式距离,距离最小者就  
是参考识别结果。程序的实现主要包括以下三个子函数,fun1  
函数功能是得到一张相片的特征值,fun2函数功能是得到多张  
相片的特征值库,fun3函数功能是计算待识别人脸相片的特征  
值和特征值库的欧式距离,输出距离最小者为参考识别结果。  
(1)fun1函数代码如下,例如执行fun1(test01. jpg)就可  
以得到以下128个特征值,结果如表1所示。  
图1 人脸识别的过程  
3、Dlib库介绍  
近些年,Python语言发展迅猛,在很多开发语言排行榜名  
列前三名。Python语言能够得到这么快的发展,得益于其源代  
码开源性和代码开发的高效性。Python社区提供了大量的第三  
★基金项目:2016年国家级大学生创新创业训练计划项目(201610398005)。  
(下转第96页)  
47  
者的威胁、供应商的威胁、替代品的威胁等而产生的经营风  
险。第三,巨额资金投入以后,收回成本和继续融资而产生的  
财务风险。第四,存在着人才流失的风险,大学城社区电子商  
务平台诞生伊始就是新事物,而新事物被接受需要时间,人才  
在这个过程中可能会不断流失,这些都会成为发展大学城社区  
电子商务的风险点。这就需要未雨绸缪,制定各种风险防范措  
施。当企业经营不利的时候,需要考虑各种风险退出机制。  
趋势。针对学生的消费市场发展迅速。社区电子商务项目为开  
发相对封闭的大学城学生需求提出了商业解决设想,针对大学  
生需求多样化,追求个性化的特点,满足这一特定目标群体的  
需求。而且,电子商务行业正处于高速发展阶段,特别是社区  
电子商务的竞争环境相对宽松,这为项目开展提供了有利的环  
境,是进入项目的合适时期。  
参考文献:  
结论  
[1]U网社区电子商务有限公司,《大学城电子商务公司商业计划  
书》,广东  
目前,云南昆明的呈贡大学城已经有十多万的学生规模,  
学生的规模还在继续扩大,为开展大学城社区电子商务奠定了  
消费者基础。而且由于整体社会经济的快速发展,每个家庭给  
子女的生活费也在增加,学生的购买力在增强,这又奠定了购  
买力基础。学生的消费需求增加,同时呈现多样化和个性化的  
[2]凡.大学城——电子商务的新绿洲.经济论坛.2009年6月.总第  
461期  
作者简介:张毅春,云南开放大学经济与管理学院电子商务教师,  
主要研究方向:电子商务、市场营销。  
(上接第47页)  
表1 test01. jpg相片128个特征值  
-0.00228785 -0.11051986  
-0.05209041 -0.15645099  
-0.06067708  
0.16641264  
-0.1685966  
-0.21592438  
-0.16564938  
-0.29805127  
0.15028094  
0.02102639  
0.14683554  
-0.16246633  
0.00331256  
0.27305359  
-0.07894394  
-0.17954493  
0.14126351  
-0.03253176  
0.05491785  
-0.11492105  
-0.1612604  
-0.28055468  
-0.02843478  
0.12256139  
-0.12585704  
0.10323574  
0.09333332  
-0.18517867  
-0.01296887  
-0.05355597  
0.05616479  
0.15607749  
-0.24058387  
0.00604932  
0.04358019  
0.20486003  
0.0194744  
-0.00885675  
-0.07989543  
0.04852592  
-0.06649419  
-0.04246017  
0.00633634  
0.0214437  
-0.0594133  
-0.03770057  
0.06971404  
-0.09323834  
0.21640894  
0.02007715  
0.03211956  
0.05194067  
-0.13260648  
-0.23413838  
-0.14944822  
0.07113632  
-0.05537423  
-0.08278593  
0.07115273  
0.09836705  
-0.17766482  
0.13279372  
0.06035744  
0.04962908  
0.01253311  
-0.18592209  
-0.16321716  
-0.01664194  
0.16389364  
0.0251862  
0.03997719  
-0.14045475  
0.1225128  
0.0956379  
0.002177  
-0.10536811  
0.0225071  
-0.00164149  
0.15748492  
0.08979687  
0.12709126  
0.10798404  
0.37838674  
0.02463814  
0.07178532  
0.00994198  
-0.04443779  
0.08492461  
0.10044494  
0.03464127  
0.12219223  
-0.15390047  
-0.03698205  
-0.31235704  
0.17732799  
-0.04471258  
-0.17733322  
-0.00927642  
0.17525555  
-0.24120952  
0.2395356  
0.12969898  
0.05299322  
-0.2243558  
-0.02038487  
0.1603229  
0.00037981  
-0.17273846  
0.07149985  
0.03644212  
0.04279644  
0.03698565  
-0.02701304  
0.09809982  
-0.05944556  
-0.01331509  
0.04687062  
0.14161417  
-0.01123366  
0.05519094  
0.02780742  
0.21414861  
-0.03067786  
-0.05502605  
0.11593568  
-0.01842352  
(2)fun2函数代码如下。  
(3)fun3函数代码如下。  
(4)主程序代码如下。  
主程序分别用test01.jpg和test02.jpg相片进行测试,测  
试结果均正确,都能识别出与test01.jpg和test02.jpg匹配的相  
片,测试结果图3所示。  
图3 测试结果  
5、结束语  
本方法实现了人脸识别的功能,但由于每张相片有128个特  
征值,如果已知人脸相片较多,特征值库较大,计算欧式距离  
所用时间较长,还要改进算法,需要引进并行计算等技术,提  
高人脸识别效率。  
作者简介:张枝令,宁德师范学院信息与机电工程学院,副教授,  
研究方向:计算机网络、数据挖掘和大数据。  
96  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载