人脸检测与识别装置及方法与流程

文档序号:14129753阅读:233来源:国知局

本发明涉及图像识别技术领域,具体来说,涉及一种人脸检测与识别装置及方法。



背景技术:

人脸识别系统,是基于人的脸部特征信息进行身份识别的一种生物识别技术,可用于多种领域,如小区门禁、公司考勤、司法刑侦等。其过程是用摄像头采集视频流,自动在图像中检测和跟踪人脸,进而对检测到的人脸进行人像识别。目前,人脸识别系统已得到广泛应用,其成功的关键在于核心算法。随着人工智能的不断发展,人脸识别算法也在逐步更替,从以往的人工特征提取向深度学习方向转变。

人脸识别系统的工作流程一般包括人脸检测、人脸特征提取、对提取的特征进行分类,从而完成人脸识别。

1.人脸检测

所谓人脸检测,就是给定任意一张图片,找到其中是否存在一个或多个人脸,并返回图片中每个人脸的位置和范围。人脸检测算法以往被分为基于知识的、基于特征的、基于模板匹配的、基于外观的四类方法。随着近些年dpm(directpartmodel)算法(可变部件模型)和深度学习cnn(convolutionalneuralnetworks,卷积神经网络)的广泛运用,人脸检测所有算法可以总分为两类:①basedonrigidtemplates(基于模板匹配):现有技术的代表有boosting(一种算法)+features(特征)和cnn;②basedonpartsmodel(基于部件模型)。

但是,由于人脸是具有相当复杂细节变化的自然结构目标,对于这类目标的检测是一个富有挑战性的课题。具体来讲,其检测难度包括:(1)由于外貌、表情、姿态、皮肤颜色等不同,人脸本身具有模式的可变性;(2)由于刘海、眼镜、胡须等附属物存在的不确定性而使人脸有不同的特征;(3)图像的大小、光源方向和光照强弱等都会影响人脸的最终表达。由此,使得正面/垂直/光线较好的人脸,可以检测出来,而侧面/歪斜/光线不好的人脸,无法检测。也就是说,人脸检测存在人脸检测的精度不高,受外界环境干扰程度较大的问题。

因此,如果能找到这些问题的解决办法,成功研究出人脸的检测系统,将会为人脸的自动识别技术的发展产生巨大的推动,而且也会为其它具有类似特征的检测问题提供重要启示。

2.人脸特征提取

人脸特征提取是在人脸检测的基础上,在人脸所在区域中获取人脸面部特征信息的过程。现有的特征提取方法包括:特征脸法(eigenface)、pac(principalcomponentanalysis主成分分析法)。传统深度学习特征提取:softmax作为代价函数,抽取神经网络中的某一层作为特征。

但是,人脸特征提取存在问题:(1)非深度学习算法:提取的特征不准确,人脸特征间相似度比较高。原因:在传统的非深度学习算法中,人脸特征常常需要通过有图像知识的工程师进行人工提取或其他数据处理方法进行主要特征提取。然而人脸图像差异小,而且一个人的特征不一定一成不变,人脸本身是一个柔性物体,表情,姿态或者发型,化妆的千变万化都会给正确识别造成相当大的麻烦,因此普通的机器学习算法提取的特征表达性较弱,会导致后续人脸识别结果不准确。此外,提取效率低。(2)传统深度学习算法:生成的图像特征维度大,提取效率低。原因:传统的神经网络特征提取使用softmax作为代价函数,需要在监督学习网络的中间一层抽取。因此很多现有项目中人脸特征及人脸识别作为一个统一的过程,不涉及特征提取步骤,由此产生的问题是训练时间长,在实际工程项目中不实用。

3.分类方法

分类,是指按照种类、等级或性质分别归类,对提取的特进行分类,从而完成人脸识别。现有的分类方法包括:决策树方法、贝叶斯方法、人工神经网络。

但是,朴素贝叶斯作为最简单的机器学习算法虽然计算速度快,但是准确度很低,造成欠拟合。决策树算法准确率也不尽人意。因此,现有的分类方法存在分类不准确、运算复杂、耗时长的问题。

而传统knn算法在实际应用时需要将当前数据与数据库中所有数据进行相似度比对,人脸识别耗时长。

深度学习方法准确度较高,但因为模型较为复杂,在前期训练时耗时很长,尤其在实际工程中,如果训练硬件达不到高性能级别,前期训练花费时间会更长。而在人脸识别中,如果应用于门禁、考勤系统,需要定期重新训练算法以加入新的人脸标签,应在方便和准确度之前衡量得失。



技术实现要素:

针对相关技术中存在的问题,本发明提出一种人脸检测与识别装置及方法,能够实现实时人脸检测与识别,且准确率高、处理速度快、未来更新容易。

本发明的技术方案是这样实现的:

根据本发明的一个方面,提供了一种人脸检测与识别系统,包括:人脸检测模块,基于tensorflow神经网络框架,利用多任务卷积神经网络mtcnn方法对获取的视频帧进行人脸检测;特征提取模块,基于tensorflow神经网络框架,利用facenet方法对人脸检测模块检测得到的人脸数据进行特征提取;分类模块,用于对特征提取模块得到的人脸特征进行分类,以实现人脸识别。

根据本发明的实施例,分类模块利用svm方法对人脸特征进行分类。

根据本发明的实施例,人脸检测与识别系统还包括:特征标准化模块,用于对人脸数据进行特征标准化,以使得人脸数据的每个维度具有零均值和单位方差。

根据本发明的实施例,人脸检测与识别系统还包括:数据增强模块,用于对人脸数据进行数据增强。

根据本发明的实施例,人脸检测与识别系统还包括模型训练模块,用于训练模型以生成人脸检测模块和特征提取模块需要调用的mtcnn模型和facenet模型。

根据本发明的实施例,人脸检测与识别系统还包括:视频帧获取模块,用于获取视频帧;其中视频帧获取模块包括摄像头以及与摄像头连接的opencv3视觉处理库。

根据本发明的另一个方面,还提供了一种人脸检测与识别方法,包括:基于tensorflow神经网络框架,利用多任务卷积神经网络mtcnn方法对获取的视频帧进行人脸检测;基于tensorflow神经网络框架,利用facenet方法对人脸检测得到的人脸数据进行特征提取;对特征提取模块得到的人脸特征进行分类,以实现人脸识别。

根据本发明的实施例,利用svm方法对人脸特征进行分类。

根据本发明的实施例,在进行人脸检测之后还包括:对人脸数据进行特征标准化,以使得人脸数据的每个维度具有零均值和单位方差。

根据本发明的实施例,在进行人脸检测之后还包括:对人脸数据进行数据增强。

本发明的人脸检测与识别系统结合使用这两种方法,并使用最新的facenet模型用于人脸特征提取,实现了实时人脸检测与识别,具有准确率高、处理速度快、未来更新容易的特点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例的人脸检测与识别系统的框图;

图2是根据本发明实施例的人脸检测与识别系统的系统架构图;

图3是根据本发明具体实施例的人脸识别的具体流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

结合图1和图2所示,根据本发明实施例的人脸检测与识别系统10,包括:人脸检测模块14、特征提取模块16和分类模块18;人脸检测模块14,基于tensorflow神经网络框架,利用多任务卷积神经网络mtcnn(multi-taskconvolutionalneuralnetworks,多任务卷积神经网络)方法对获取的视频帧进行人脸检测。卷积神经网络是深度学习的一项主要技术,mtcnn方法是用于人脸检测(判断一幅图像中是否出现人脸)的一种方法;特征提取模块16,基于tensorflow神经网络框架,利用facenet方法对人脸检测模块14检测得到的人脸数据进行特征提取。facenet是一种方法的名称,这个方法使用卷积神经网络,对人脸进行特征提取,把人脸embedding(映射)到欧几里得特征空间;分类模块18,用于对特征提取模块16得到的人脸特征进行分类,以实现人脸识别。

本发明的上述技术方案,采用了目前发展迅猛的深度学习方法,成功结合mtcnn及facenet两种方法,并将其应用到最新版本的tensorflow中,也就是在最新的tensorflow神经网络框架中将两种神经网络进行结合。mtcnn与facenet都是新的深度学习方法,准确度更好。但是他们是两个独立的方法,一个专门做人脸检测,一个专门做人脸特征提取;使用tensorflow的最新版本(1.2.1可更新,能适应未来变化)。本发明的人脸检测与识别系统结合使用这两种方法,并使用最新的facenet模型用于人脸特征提取,实现了实时人脸检测与识别,具有准确率高、处理速度快、未来更新容易的特点。

优选的,分类模块18利用svm(supportvectormachine,支持向量机)方法对人脸特征进行分类。在机器学习领域,svm是一个有监督的学习模型,通常用来进行模式识别、分类以及回归分析。通过采用svm的方法,训练时间短,准确度也较高。在本实施例中,用支持向量机方法进行人脸分类。不仅可以完成实时的人脸识别,其优势更在于准确率高、模型规模小处理速度快,代码更新移植容易,且中间可生成人脸特征向量用于其他作业,适用于工程应用。使用svm分类识别准确率非常高,使用同样数据集,准确度可达到98%,实际测量达到90%左右。

优选的,人脸检测与识别系统10还包括:特征标准化模块(未示出),用于对人脸数据进行特征标准化,以使得人脸数据的每个维度具有零均值和单位方差。特征标准化指的是使得数据的每一个维度具有零均值和单位方差。这是归一化中常见的方法并被广泛地使用(例如,在使用支持向量机(svm)时,特征标准化常被建议用作预处理的一部分)。在实际应用中,特征标准化的具体做法是:首先计算每一个维度上数据的均值(使用全体数据计算),之后在每一个维度上都减去该均值。下一步便是在数据的每一维度上除以该维度上数据的标准差。特征标准化的优点包括:1)可以加快梯度下降求最优解的速度;2)提高模型精度。

优选的,人脸检测与识别系统10还包括:数据增强模块(未示出),用于对人脸数据进行数据增强。数据增强用于解决收集数据准备微调深度学习模型时,经常会遇到某些分类数据严重不足的情况,另外数据集过小容易造成模型的过拟合。比如说当一个人只有一张照片做训练的时候,识别的准确度是不够的。因此我们需要进行数据增强,常用的方法有下面8种:(1)翻转变换flip;(2)随机修剪randomcrop;(3)色彩抖动colorjittering;(4)平移变换shift;(5)尺度变换scale;(6)对比度变换contrast;(7)噪声扰动noise;(8)旋转变换/反射变换rotation/reflection。这样我们就把一张照片变成了9张照片作为训练,成功解决了训练照片不足的问题。

优选的,人脸检测与识别系统10还包括模型训练模块(未示出),用于训练模型以生成人脸检测模块14和特征提取模块16需要调用的mtcnn模型和facenet模型。也就是说,mtcnn模型和facenet模型已在前期训练完毕,使用时可直接调用生成好的模型及模型参数。

优选的,人脸检测与识别系统10还包括:视频帧获取模块12,用于获取视频帧;其中视频帧获取模块12可包括摄像头以及与摄像头连接的opencv3视觉处理库。

图3是根据本发明具体实施例的人脸识别的具体流程图,以下结合图3对本发明的人脸检测与识别系统10进行具体说明。本发明的人脸检测与识别系统10使用python作为编程语言,使用opencv3视觉处理库、tensorflow深度学习库。首先,在步骤s201处,通过opencv3连接摄像头,获取视频帧,其每秒帧率可调。然后,在步骤s202处,用mtcnn进行人脸检测。再在步骤s203处,用facenet方法利用人脸图像进行特征生成,特征维度可调。其中,mtcnn和facenet模型已在前期训练完毕,使用时可直接调用生成好的模型及模型参数。在最后的分类中,对于不同的人脸数据库,在步骤s204、步骤s205和步骤s206处,使用者需要重新训练svm模型。svm模型训练完成后(耗时时间根据数据集大小确定),在步骤s207处调用训练好的模型,最后在步骤s208处,将人脸特征用svm方法进行分类,得到预测的人脸标签。

本发明的人脸检测与识别系统可以从摄像头获取视频,实时检测视频帧中的单个或多个人脸,对每个人脸进行分类识别。经过实际测试,本发明的有益效果在于:

1.准确率高。不管对正面人脸,还是歪斜的人脸,以及不同表情的人脸均能有效的检测并识别,具有一定的鲁棒性。

使用casia-webface数据库和ms-celeb-1m数据库训练出来的模型在lfw数据库(国际权威的人脸识别数据库,人脸识别测试方法的通用数据库。)上均取得了相当高的准确率。具体为,使用casia-webface数据库的准确率可达到0.987,使用ms-celeb-1m数据库的准确率可达到0.992。

经测试,发明人使用11名人员的400张照片进行训练,100张作为测试,也取得了与上述相近的准确度。

2.轻量级模型,耗时短,在64位ubuntu虚拟机下(i7处理器,4g内存),训练1万张图片用时不到6分钟。500张的小数据集仅用几十秒即可获得结果。方便在个人笔记本、工作站上部署。

3.适应训练数据不足环境。当一个人仅有一两张照片时,模型的自信度(认为屏幕中出现的人脸是xxx的把握)仅有20-50%左右。此时对照片进行数据增强。经过数据增强后模型的自信度成功提升至60-90%。

根据本发明的另一方面,还提供了一种人脸检测与识别方法,包括以下步骤:

步骤s102,基于tensorflow神经网络框架,利用多任务卷积神经网络mtcnn方法对获取的视频帧进行人脸检测;

步骤s104,基于tensorflow神经网络框架,利用facenet方法对人脸检测得到的人脸数据进行特征提取;

步骤s106,对特征提取模块得到的人脸特征进行分类,以实现人脸识别。

在一个实施例中,在步骤s106处,利用svm方法对人脸特征进行分类。

在一个实施例中,在步骤s102处进行人脸检测之后还可以包括:对人脸数据进行特征标准化,以使得人脸数据的每个维度具有零均值和单位方差。

在一个实施例中,在进行人脸检测之后还包括:对人脸数据进行数据增强。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1