一种基于人脸的广告机用户识别方法与流程

文档序号:16211132发布日期:2018-12-08 07:45阅读:220来源:国知局
本发明涉及一种基于人脸的广告机用户识别方法,属于人脸识别
技术领域

背景技术
广告机是新一代的智能设备,通过终端软件控制、网络信息传输和多媒体终端显示构成一个完整的广告播控系统,并通过图片、文字、视频、小插件(天气、汇率等)等多媒体素材进行广告宣传。广告机最初的构想是将广告变被动为主动,所以广告机的互动性使得它具备很多公共服务功能,并以此来吸引顾客主动浏览广告。随着人工智能技术的发展,人们对广告机的需求越来越智能化,因此能够快速而准确地对个人进行身份的识别并且为个人建立一个与之相对应的唯一身份id将会是不可或缺的一步。现有的身份识别技术,比如手机上的指纹识别,其指纹的识别精度范围是一个重大的挑战,识别过于精细时可能会导致用户再次输入指纹时无法通过识别,需要多次输入指纹,从而影响用户体验度;相反,识别过于粗糙时则会产生指纹无法与用户产生一一对应关系,具有相似指纹的两个不同用户可能会同时通过指纹验证。而人脸作为个人最具有身份特征的部分,具有唯一性,其特征可以在无需刻意输入的情况下获取,因此用人脸来对个人进行唯一身份id的对应是很好的选择。但是现有的人脸识别技术主要着重于追求准确度上的提升,然而要想让人脸识别技术在生活中的运用更加普遍化,更加用户友好,识别的速度成为亟待解决的技术问题。基于深度学习的卷积神经网络模型是人脸识别技术的基石,该网络通过梯度下降反馈来不断来减小模型输出值与真实值的差从而逼近真实结果。比如现有的神经网络模型resnet-50,其预测准确度虽已达到97%以上,但是该模型离投入到实际产品中使用仍有着很大提升空间。一些改进后的网络模型例如facenet等,其计算精确性通过利用残差单元使其模型的准确性得到了提升,但其仍面临着占用内存过大、计算速度过低等问题。技术实现要素:本发明要解决技术问题是:提供一种识别速度快、占用资源低的基于人脸的广告机用户识别方法。为了解决上述技术问题,本发明提出的技术方案是:一种基于人脸的广告机用户识别方法,广告机中预存有包含n个人脸集的人脸库,n个人脸集对应的personid分别记为pd1,pd2,…,pdn,其中personid为pdj的人脸集中有k个faceidfdji与之相对应,其中i∈[1,k],j∈[1,n];广告机在无人脸状态下一直播放全屏广告;当有人脸出现在屏幕中时,广告机停止播放全屏广告,并在屏幕下方继续播放广告,同时通过屏幕进行ar互动截取该人脸的图像,计算该人脸图像的特征值作为faceidfd;把faceidfd依次和personid为pdj的人脸集中所有的faceidfdji的平均值进行对比,i∈[1,k],j∈[1,n],从而得到相似度百分比分别为η1,η2,…,ηn;取ηl=max{η1,η2,…,ηn},x为预设百分比阈值,如果x<ηl,则ηl对应的人脸集的personid为pdl,此时广告机检测到的人脸对应为personidpdl的用户;如果x>ηl,则认为目前人脸库中的所有personid均不与广告机检测到的人脸匹配;其中,计算人脸图像的特征值的方法为:第一步、读取人脸图像样本数据集,每幅人脸图像为3通道,其高度为112个像素,宽度为112个像素;第二步、建立深度化可分离卷积模型,所述深度化可分离卷积模型在两个卷积模块之间级联了多个残差瓶颈模块,如下表所示:输入图像大小模块名称通道数重复次数步幅间距112*112*3conv3*3641256*56*64depthwiseconv3*3641156*56*64bottleneck645228*28*64bottleneck1281214*14*128bottleneck1286114*14*128bottleneck128127*7*128bottleneck128217*7*128conv1*1512117*7*512lineargdconv7*7512111*1*512linearconv1*112811表中,第一列为各模块的输入图像大小,第二列为模块名称,第三列为通道数,第四列为该模块的重复次数,第四列为步幅间距,卷积核采用3*3;第三步、利用梯度下降算法更新深度化可分离卷积模型参数1)通过所述深度化可分离卷积模型将所述样本数据集的人脸图像映射成512维特征向量;2)计算损失函数,所述损失函数由softmax函数和arcface函数加权构成,其中,softmax函数的表达式如下:式中,x表示样本经深度化可分离卷积模型映射而成的特征向量,n表示所述样本数据集的大小,i取值1~n,yi表示样本xi对应的标签;w向量表示待优化参数,包括和wj,表示样本xi在其标签yi处的权重,wj表示输出节点j处的权重;b向量包括和bj,表示样本xi在其标签yi处的偏差,bj表示输出节点j处的偏差;arcface函数的表达式如下:式中,为样本xi与其对应标签yi的权重的夹角,θj为样本xi与输出节点j处的权重wj的夹角;m、s为预设参数,0.2≤m≤2,50≤s≤100;最终的损失函数为:ltotal=lsoftmax+larcface;3)计算损失函数的梯度下降距离其中μ是预设的学习率;4)确定损失函数的梯度下降距离是否小于预设阈值ε,如果是则执行第四步,否则更新w向量后再执行步骤1),更新w向量的表达式如下:第四步、通过更新参数后的深度化可分离卷积模型将从vr互动中截取的人脸图像映射成512维特征向量作为所需的特征值。本发明通过人脸作为身份特征对广告机进行身份识别,从而可以有针对性的推送个性化的广告内容,避免现有技术中采用指纹识别影响用户体验度,甚至可能具有相似指纹的两个不同用户可能会同时通过指纹验证的缺陷。本发明对现有的人脸识别技术进行了改进,在追求准确度上大幅度提高了人脸识别的速度。本发明计算人脸特征值的思想得益于2018年由marksandler,andrewhoward,menglongzhu,andreyzhmoginov,liang-chiehchen发表的论文《mobilenetv2:invertedresidualsandlinearbottlenecks》(以下为叙述方便,简称为“引用论文”)。本发明在引用论文的基础上,对深度化神经网络的模型结构、损失函数等都做了优化,不仅保证了人脸识别的准确率,而且提升了人脸识别的速度。本发明中的深度化可分离卷积(depthwiseseparableconvolution)网络模型可参考引用论文。其中深度化卷积是指在网络模型中相邻的两个卷积模块中,用尽可能多的卷积核连接输入通道,当卷积数量达到一定程度时,每一个通道都有一个自己的卷积核,这样就相当于每一个通道都被赋予了不同的权重。而以人脸作为输入层数据的图像一般不同位置像素点所携带的人脸数据信息是不一样的(靠近图片中央的位置会携带较多的人脸信息,靠近图片边角的位置则携带较少的人脸信息),所以这种给每个通道赋予不用卷积核的网络相当于给每个通道赋予了不同权重,因而将更加适用于以人脸作为输入层的图像。本发明的改进之处在于对两个卷积模块之间级联了若干残差瓶颈模块。这是因为申请人发现现在普遍用到的卷积神经网络里都会用到relu模块或是prelu模块(可参见引用论文),这些非线性函数总是会造成原始数据的丢失,而残差瓶颈模块的目的正是为了减少原始数据的丢失,其原理是通过增加卷积模块与卷积模块之间的连接层数来增加输入图像层与输出域之间的维度差,从而减少了relu或是prelu造成的信息丢失。本发明通过简化网络层次,优化网络结构,在保证识别准确率在高于99%的前提下,使得其在armv8移动终端上的识别速度达到了小于300ms,超出目前的主流解决方案。该结果将会使移动端设备拥有准确且快速的人脸识别功能。现有技术中,在大多数可用的卷积神经网络模型中,softmax损失函数被用作训练深层模型的监督信号。本发明对于损失函数的选择方面,在保留softmax函数的基础之上,还增加了arcface损失函数,softmax函数主要解决类间距离(不同人之间鉴别能力)的优化,而arcface函数的采用可以扩大每个分类面之间的间距,从而使得靠近边界的数据在分类过程中准确率更高,这样就在保证人脸识别准确性的基础上,大幅提高了人脸识别速度。具体实施方式实施例本实施例的基于人脸的广告机用户识别方法,其中广告机中预存有包含n个人脸集的人脸库,n个人脸集对应的personid分别记为pd1,pd2,…,pdn,其中personid为pdj的人脸集中有k个faceidfdji与之相对应,其中i∈[1,k],j∈[1,n]。本实施例的广告机用户识别方法如下:广告机在无人脸状态下一直播放全屏广告;当有人脸出现在屏幕中时,广告机停止播放全屏广告,并在屏幕下方继续播放广告,同时通过屏幕进行ar互动截取该人脸的图像,计算该人脸图像的特征值作为faceidfd;把faceidfd依次和personid为pdj的人脸集中所有的faceidfdji的平均值进行对比,i∈[1,k],j∈[1,n],从而得到相似度百分比分别为η1,η2,…,ηn。优选的,对于从vr互动中截取的人脸图像,计算该人脸图像的特征值之前,首先通过mctnn算法提取五个特征点,然后进行人脸仿射变换使人脸端正化。具体来说,假设每一幅图片数据用mtcnn算法提取的五个特征点的初始坐标分别为(x1',y1')、(x2',y2')、(x3',y3')、(x4',y4')和(x5',y5');在画布中确定五个初始坐标点(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)和(x5,y5),使得这五个点在画布中具有对称性;对每一幅图片数据中提取的五个特征点与画布中确定的五个初始坐标点之间建立仿射变换方程,根据仿射变换方程对每一幅图片数据进行姿势校正使人脸对齐。取ηl=max{η1,η2,…,ηn},x为预设百分比阈值,如果x<ηl,则ηl对应的人脸集的personid为pdl,此时广告机检测到的人脸对应为personidpdl的用户;如果x>ηl,则认为目前人脸库中的所有personid均不与广告机检测到的人脸匹配。优选的,当x<ηl时,广告机检测到的人脸对应为personidpdl的用户,此时把faceidfd与人脸集pdl中的所有faceid进行对比,将相似度百分比最低的faceid的值替换为faceidfd,并将人脸集pdl的personid作为该faceidfd对应的personid;当x>ηl时,创建一个对应此faceidfd的新personid补充到人脸库中。其中,计算人脸图像的特征值的方法为:第一步、读取人脸图像样本数据集,每幅人脸图像为3通道,其高度为112个像素,宽度为112个像素;现有的海量数据库,例如vggface2,其中的部分数据存在极高的相似性,并且有一些非人脸的污染数据存在其中。因此对数据库中的数据进行合并和清理是非常必要的一步,具体方法为:对人脸数据集中已有的人脸数据样本通过facenet方法进行映射,得到在x维特征空间的一系列特征向量集合λ={λ1,λ2,λ3,…},其中每一组特征向量λi均为x维,我们通过比较两组特征向量的夹角来判断其相似性。假设λ中的两组x维特征向量分别为λi={vi1,vi2,...,vix},λj={vj1,vj2,...,vjx},则其夹角在计算特征向量的两两夹角之前,预先设定某一角度的余弦阈值为0.6~0.9。当两组特征向量的夹角θ的余弦值小于预设阈值时,则两组特征向量对应的人脸数据样本具有相似性,并对具有相似性的人脸数据样本进行去重处理。本实施例中x取512,即将人脸数据样本通过facenet方法进行映射为512维特征向量来判断其相似性。这样不仅保留了数据的多样性,而且提高了模型的训练速度。第二步、建立深度化可分离卷积模型,所述深度化可分离卷积模型在相邻的两个卷积模块之间级联了多个残差瓶颈模块,如下表所示:输入图像大小模块名称通道数重复次数步幅间距112*112*3conv3*3641256*56*64depthwiseconv3*3641156*56*64bottleneck645228*28*64bottleneck1281214*14*128bottleneck1286114*14*128bottleneck128127*7*128bottleneck128217*7*128conv1*1512117*7*512lineargdconv7*7512111*1*512linearconv1*112811表中,第一列为各模块的输入图像大小,第二列为模块名称,第三列为通道数,第四列为该模块的重复次数,第四列为步幅间距,卷积核采用3*3。本实施例在两个卷积模块之间加入了一些残差瓶颈模块(bottleneck),从而得到本发明的深度化可分离卷积模型以及模型中各模块的连接方式。为了简化说明,该表中的prelu函数层和批量归一化bn层以及下采样单元层,均已略去,可参考引用论文。训练时我们把长度为112像素,宽度为112像素,3通道的图像作为输入,经过本模型进行训练,输出128维的特征向量,从而完成从输入图像到输出特征值的映射。第三步、利用梯度下降算法更新深度化可分离卷积模型参数1)通过所述深度化可分离卷积模型将所述样本数据集的人脸图像映射成512维特征向量;2)计算损失函数,所述损失函数由softmax函数和arcface函数加权构成,其中,softmax函数的表达式如下:式中,x表示样本经深度化可分离卷积模型映射而成的特征向量,n表示所述样本数据集的大小,i取值1~n,yi表示样本xi对应的标签;w向量表示待优化参数,包括和wj,表示样本xi在其标签yi处的权重,wj表示输出节点j处的权重;b向量包括和bj,表示样本xi在其标签yi处的偏差,bj表示输出节点j处的偏差。本实施例中softmax函数、w向量、b向量、输出节点j均与2016年由yandongwen,kaipengzhang,zhifengli和yuqiao发表的论文《adiscriminativefeaturelearningapproachfordeepfacerecognition》中相同,其表达式、计算方法与该论文中的softmax函数均一致。arcface函数的表达式如下:式中,为样本xi与其对应标签yi的权重的夹角,θj为样本xi与输出节点j处的权重wj的夹角;m、s为预设参数,0.2≤m≤2,50≤s≤100;最终的损失函数为:ltotal=lsoftmax+larcface;3)计算损失函数的梯度下降距离其中μ是预设的学习率,可根据经验获得,本实施例中μ取0.1;4)确定损失函数的梯度下降距离是否小于预设阈值ε,其中预设阈值ε通常可取0.01,可根据经验调整;如果梯度下降距离是否小于预设阈值ε则执行第四步,否则更新w向量后再执行步骤1),更新w向量的表达式如下:第四步、通过更新参数后的深度化可分离卷积模型进行人脸识别,即通过更新后的深度化可分离卷积模型输出人脸特征值,计算不同人脸图像特征值的相似度进行人脸识别,具体识别方法可参考引用论文。本发明不局限于上述实施例所述的具体技术方案,除上述实施例外,本发明还可以有其他实施方式。对于本领域的技术人员来说,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等形成的技术方案,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1