基于温度信息的人脸活体检测方法
技术领域
本发明涉及一种基于温度信息的人脸活体检测方法,更具体的说,尤 其涉及一种的基于温度信息的人脸活体检测方法。
背景技术
活体检测在人脸识别中起着重要的作用,对于人脸识别系统而言,缺 少活体检测易受到欺骗攻击,常见欺骗行为如打印合法用户照片、制作3D 人脸模型、播放用户视频等,使人脸识别系统不够安全,与人脸识别门禁 的安全需求不匹配。因此,将温度信息与人脸检测算法结合,实现活体检 测具有重大意义。
发明内容
本发明为了克服上述技术问题的缺点,提供了一种基于温度信息的人 脸活体检测方法。
本发明的基于温度信息的人脸活体检测方法,其特征在于,通过以下 方法来实现:首先将彩色摄像头与红外热像仪传感器紧邻地设置于同一平 面内建立相机模型,通过建立的相机模型求出彩色摄像头所采集的RGB图 像与红外热像仪所采集的红外图像对应的坐标关系;然后通过MTCNN人 脸检测算法检测出RGB图像中人脸的关键点坐标,通过双眼瞳孔的坐标计 算出额头位置区域,将RGB图像中额头的位置区域坐标,代入获取RGB 图像与红外图像的坐标关系中,计算出红外图像中额头的位置区域坐标, 最后通过红外图像获取额头的温度信息,运用多元回归模型进行温度补偿 得到额头温度,利用额头温度判断是否为活体,同时,此方法可以对多个 活体同时进行检测。
本发明的基于温度信息的人脸活体检测方法,具体通过以下步骤来实 现:
a).布置摄像头,将用于采集彩色图像的彩色摄像头与用于采集温度信 息的红外热像仪传感器,置于同一平面内并紧邻设置,并将彩色摄像头与 红外热像仪的视野调节为一致;
b).获取彩色图像,获取彩色摄像头所采集的彩色图像,记为RGB图像, 画面大小为L×H,即宽度为L个像素、高度为H个像素;
c).获取红外热像仪图像,红外热像仪输出的数据为温度数值,将温度 数值转化为像素值,首先,将获取的温度值归一化,归一化后的温度值即 为像素值,此时为灰度图像,然后利用Jet颜色映射算法将灰度图像转化为 红外图像;设所转化的红外图像大小为l×h,即宽度为l个像素、高度为h个 像素;如果红外图像与RGB图像大小相等,则无需进行调整,执行步骤d); 如果红外图像小于RGB图像则通过差值算法将红外图像与RGB图像调整为大小一致;
d).求对应坐标关系,根据彩色摄像头的成像原理、红外热像仪的成像 原理,以及彩色摄像头与红外热像仪传感器设置于同一平面的位置关系, 求取RGB图像与红外图像的坐标关系;
e).确定额头区域坐标及温度,首先通过MTCNN人脸检测算法,在实 时采集的RGB图像中获取包含左眼瞳孔通孔位置、右眼瞳孔位置和脸宽在 内的人脸信息,再根据两眼瞳孔位置和脸宽信息确定出额头区域位置左上 点的坐标E1(X1,Y1)和右下点的坐标E2(X2,Y2),然后将RGB图像中的额头位 置坐标E1(X1,Y1)和E2(X2,Y2)带入步骤d)中获取的RGB图像与红外图像的坐 标关系中,求其在红外图像中的坐标,记为E′1(X′1,Y′1)和E′2(X′2,Y′2);最后,获 取红外图像中E′1(X′1,Y′1)和E′2(X′2,Y′2)坐标区域内点的额头温度值,运用多元回 归模型进行温度补偿得到额头温度值,将额头区域温度值求平均值得到T, 并根据温度均值T判断所检测的目标是否为活体。
本发明的基于温度信息的人脸活体检测方法,步骤c)中通过公式(1) 将每个点的温度值转化为像素值:
其中,temperature为某点的温度值,max为最大温度值,min为最小温 度值,C为温度值temperature所转化的像素点的值。
本发明的基于温度信息的人脸活体检测方法,步骤d)所述的求对应坐 标关系具体通过以下步骤来实现:
d-1).建立彩色摄像头成像模型,设物平面采用世界大地坐标系o-XYZ, 彩色摄像头的像平面采用相机坐标系o-xyz,物平面内一点cP(Xc,Yc,Zc)经由 相机坐标系投影到相机成像平面内的坐标为P(x,y),根据彩色摄像头的成像 原理得到如下关系式:
其中,f为相机的焦距;
将关系式(2)转化为矩阵形式,如公式(3)所示:
其中,(x,y)为P在图像坐标系下的物理坐标,单位为mm;(Xc,Yc,Zc)为 cP在相机坐标系下的坐标,单位为mm;f为相机的焦距,单位为mm;
d-2).物理坐标至像素坐标的转换,设图像坐标系下的物理坐标(x,y)对 应的像素坐标为(u,v),其满足如下关系式:
式中,(u0,v0)为像平面中心点的像素坐标,dx、dy分别为每个像素点在x轴和y轴方向上的长度;
d-3).求取透视变换矩阵,假设物平面内的点在相机坐标系中坐标为 p(x,y,z),通过相机镜头成像,得到像平面内一点p'(x',y'),由于像平面内 成的像是反向的,在像平面关于相机平面对称的位置引入焦对称平面,并 取焦对称平面作为像平面;联立公式(3)和(4),可以得到相机坐标系内 的点到像素坐标系内的转化关系,即推导出相机坐标系中坐标p(x,y,z)到像 素坐标系中坐标p″1(x″,y″)的透视变换矩阵如下:
式中,(u0,v0)为像平面中心的像素坐标;
通过上述建立的透视变换矩阵,可将相机空间内的一点转化到成像平 面内,同理也可以通过像素坐标平面内的一点求解出对应相机空间三维坐 标的一点,进而推导出需要得到的彩色摄像头图像到红外热像仪图像的定 位模型;
d-4).求取变换关系,设物体上的一点p'在物平面内活动,到镜头的距 离恒为Z,该物体在彩色摄像头的像平面内成像为点p(x,y),在红外热像 仪的成像平面内成像为点p″(x″,y″),f和f″分别表示彩色摄像头和热成像 摄像头的焦距,L表示彩色摄像头的位置,依据L点建立的彩色摄像头的L 坐标系,R表示热成像摄像头的位置,依据R点建立的红外热像仪的R坐 标系,两个摄像头位于同一水平线上,即共x轴,两个摄像头之间的距离为 l;
由于在采集人脸图像时,人脸的位置相对摄像头在一定的区域范围内 运动,故提取人脸外轮廓上一点LP,取彩色摄像头的坐标系为世界坐标系, 假定点LP在距离摄像头的距离为Z的物平面内活动,根据公式(5)可得:
同理,可得:
设RP为点LP相对于R坐标系的坐标,依据三维空间内的坐标位置变换 传递矩阵可得:
式中,为坐标系L相对于坐标系R的传递矩阵,表示如下:
将公式(6)-(9)联立,可得:
将式(10)转化为矩阵的形式,即推导出由点p(x,y)定位p″(x″,y″)的 变换关系模型如下:
式中,(x0,y0)和(x0″,y0″)分别为彩色摄像头与红外热像仪的像平面中 心的像素坐标,dx,dy和dx″,dy″分别为彩色摄像头与红外热像仪像平面内水 平方向和竖直方向上每个像素点的长度;
其中,为定位变换矩阵,为矫正矩阵 系数。
本发明的基于温度信息的人脸活体检测方法,步骤e)中所述的确定额 头坐标方法为:设所获取的RGB图像中左眼瞳孔的位置坐标为L(x1,y1), 右眼瞳孔的位置坐标为R(x2,y2),所获取的人脸宽度为L;首先根据两眼瞳 孔的位置坐标求出RGB图像中两眼瞳孔连线的中点坐标Z((x1+x2)/2,(y1+ y 2)/2);然后确定出中点坐标Z((x1+x2)/2,(y1+y2)/2)上方1/5*L位置处的 坐标为RGB图像中的额头坐标。
本发明的基于温度信息的人脸活体检测方法,步骤e)中所述的多元回 归模型温度补偿方法为:
由于测量温度由测量误差、环境温度决定,设y=β0+β1x1+β2x2+ε为 待求解项,其中y为因变量实际温度,x1为测量温度,x2为环境温度,ε为 随机误差;首先,建立多元回归模型,设在实际测量过程中有n组测量值, 那么待求解项多元回归模型可以表示为:
然后求出参数估计值,对于式(12)中的多元线性回归方程组,参数 β0,β1,β2采用最小二乘法进行估计求解,设对应的估计值为则使 得模型与观测值的偏差平方和取得最小值,当偏差平方和 最小值时,即为公式(13):
此时求出的便为回归系数的最小二乘估计值;回归系 数的估计值满足以下条件:
最后,求出随机变量ε,由于随机变量ε与自变量x1,x2没有相关性,满 足公式Cov(Xji,μi)=0,(j=1,2,…k,i=1,2,…n),即可求解出随机变量ε;
因此,多元回归得到的补偿温度为:
本发明的基于温度信息的人脸活体检测方法,步骤e)中,如果所获取 的额头温度值T位于33℃~40℃,则认为其为活体。
本发明的有益效果是:本发明的基于温度信息的人脸活体检测方法, 首先将彩色摄像头与红外热像仪传感器紧邻地置于同一平面内,建立相机 模型,通过相机参数与相机相对位置信息计算出相机与红外热像仪对应的 坐标关系,然后将获取的RGB图像与红外图像的大小调整为一致,在后续 的活体检测过程中,首先在RGB图像通过人脸识别算法获取双眼通孔位置 及脸宽在内的人脸信息,并计算出RGB图像中的额头坐标,将RGB图像 中的额头坐标带入线性比例关系中获取额头在红外图像中的坐标,额头在 红外图像中坐标所对应的温度即为所检测的活体的温度,最后根据所检测 的温度即可判断目标是否为活体,并可判断其温度是否正常,可有效杜绝 目前打印合法用户照片、制作3D人脸模型、播放用户视频的欺骗攻击行为。
附图说明
图1为本发明中彩色摄像机的成像原理示意图;
图2为本发明中红外热像仪的成像原理示意图;
图3为本发明中彩色摄像头图像到红外热像仪图像的定位模型示意图;
图4为本发明中额头位置坐标确定原理图;
图5为本发明的基于温度信息的人脸活体检测方法的应用示意图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
如图1所示,给出了本发明中彩色摄像机的成像原理示意图。
如图2所示,给出了本发明中红外热像仪成像示意图。图中上方为红 外图像(由于不能提交彩色图片,已转化为灰度图像),由于红外热像仪传 感器输出的数据为每个点的温度数值,如果要显示红外图像,需要将温度 数值转化为像素值。
如图3所示,给出了发明中彩色摄像头图像到红外热像仪图像的定位 模型示意图,所示的红外热像仪传感器与彩色摄像头固定于同一平面内, 并且紧邻设置,并将其视野调整为一致,若移动两者位置,需要重新计算 对应参数。
本发明的基于温度信息的人脸活体检测方法,具体通过以下步骤来实 现:
a).布置摄像头,将用于采集彩色图像的彩色摄像头与用于采集温度信 息的红外热像仪传感器,置于同一平面内并紧邻设置,并将彩色摄像头与 红外热像仪的视野调节为一致,建立相机模型;
b).获取彩色图像,获取彩色摄像头所采集的彩色图像,记为RGB图像, 画面大小为L×H,即宽度为L个像素、高度为H个像素;
c).获取红外热像仪图像,红外热像仪输出的数据为温度数值,将温度 数值转化为像素值,首先,将获取的温度值归一化,归一化后的温度值即 为像素值,此时为灰度图像,然后利用Jet颜色映射算法将灰度图像转化为 红外图像;设所转化的红外图像大小为l×h,即宽度为l个像素、高度为h个 像素;如果红外图像与RGB图像大小相等,则无需进行调整,执行步骤d); 如果红外图像小于RGB图像则通过差值算法将红外图像与RGB图像调整为大小一致;
该步骤中,通过公式(1)将每个点的温度值转化为像素值:
其中,temperature为某点的温度值,max为最大温度值,min为最小温 度值,C为温度值temperature所转化的像素点的值。
通常情况下,彩色摄像头所采集的RGB图像的分辨率要高于红外热像 仪所采集的红外图像的分辨率,如采用分辨率为640×480的彩色摄像头, 其采集的RGB图像的宽度为640像素、高度为480像素。如果红外热像仪 传感器采用的分辨率为60×48阵列,则其在横向上输出60个温度值,在高 度上输出48个温度值,为了使所转化的红外图像与RGB图像尺寸一致, 则需要通过插值法将红外图像扩至640×480的分辨率。
d).求对应坐标关系,根据彩色摄像头的成像原理、红外热像仪的成像 原理,以及彩色摄像头与红外热像仪传感器设置于同一平面的位置关系, 求取RGB图像与红外图像的坐标关系;
如图1、图2和图3所示,该步骤具体通过以下方法来实现:
d-1).建立彩色摄像头成像模型,设物平面采用世界大地坐标系o-XYZ, 彩色摄像头的像平面采用相机坐标系o-xyz,物平面内一点cP(Xc,Yc,Zc)经由 相机坐标系投影到相机成像平面内的坐标为P(x,y),根据彩色摄像头的成像 原理得到如下关系式:
其中,f为相机的焦距;
将关系式(2)转化为矩阵形式,如公式(3)所示:
其中,(x,y)为P在图像坐标系下的物理坐标,单位为mm;(Xc,Yc,Zc)为 cP在相机坐标系下的坐标,单位为mm;f为相机的焦距,单位为mm;
d-2).物理坐标至像素坐标的转换,设图像坐标系下的物理坐标(x,y)对 应的像素坐标为(u,v),其满足如下关系式:
式中,(u0,v0)为像平面中心点的像素坐标,dx、dy分别为每个像素点在 x轴和y轴方向上的长度;
d-3).求取透视变换矩阵,假设物平面内的点在相机坐标系中坐标为 p(x,y,z),通过相机镜头成像,得到像平面内一点p'(x',y'),由于像平面内 成的像是反向的,在像平面关于相机平面对称的位置引入焦对称平面,并 取焦对称平面作为像平面;联立公式(3)和(4),可以得到相机坐标系内 的点到像素坐标系内的转化关系,即推导出相机坐标系中坐标p(x,y,z)到像 素坐标系中坐标p″1(x″,y″)的透视变换矩阵如下:
式中,(u0,v0)为像平面中心的像素坐标;
通过上述建立的透视变换矩阵,可将相机空间内的一点转化到成像平 面内,同理也可以通过像素坐标平面内的一点求解出对应相机空间三维坐 标的一点,进而推导出需要得到的彩色摄像头图像到红外热像仪图像的定 位模型;
d-4).求取变换关系,设物体上的一点p'在物平面内活动,到镜头的距 离恒为Z,该物体在彩色摄像头的像平面内成像为点p(x,y),在红外热像 仪的成像平面内成像为点p″(x″,y″),f和f″分别表示彩色摄像头和热成像 摄像头的焦距,L表示彩色摄像头的位置,依据L点建立的彩色摄像头的L 坐标系,R表示热成像摄像头的位置,依据R点建立的红外热像仪的R坐 标系,两个摄像头位于同一水平线上,即共x轴,两个摄像头之间的距离为 l;
由于在采集人脸图像时,人脸的位置相对摄像头在一定的区域范围内 运动,故提取人脸外轮廓上一点LP,取彩色摄像头的坐标系为世界坐标系, 假定点LP在距离摄像头的距离为Z的物平面内活动,根据公式(5)可得:
同理,可得:
设RP为点LP相对于R坐标系的坐标,依据三维空间内的坐标位置变换 传递矩阵可得:
式中,为坐标系L相对于坐标系R的传递矩阵,表示如下:
将公式(6)-(9)联立,可得:
将式(10)转化为矩阵的形式,即推导出由点p(x,y)定位p″(x″,y″)的 变换关系模型如下:
式中,(x0,y0)和(x0″,y0″)分别为彩色摄像头与红外热像仪的像平面中 心的像素坐标,dx,dy和dx″,dy″分别为彩色摄像头与红外热像仪像平面内水 平方向和竖直方向上每个像素点的长度;
其中,为定位变换矩阵,为矫正矩阵 系数。
e).确定额头区域坐标及温度,首先通过MTCNN人脸检测算法,在实 时采集的RGB图像中获取包含左眼瞳孔通孔位置、右眼瞳孔位置和脸宽在 内的人脸信息,再根据两眼瞳孔位置和脸宽信息确定出额头区域位置左上 点的坐标E1(X1,Y1)和右下点的坐标E2(X2,Y2),然后将RGB图像中的额头位 置坐标E1(X1,Y1)和E2(X2,Y2)带入步骤d)中获取的RGB图像与红外图像的坐 标关系中,求其在红外图像中的坐标,记为E′1(X′1,Y′1)和E′2(X′2,Y′2);最后,获 取红外图像中E′1(X′1,Y′1)和E′2(X′2,Y′2)坐标区域内点的额头温度值,运用多元回 归模型进行温度补偿得到额头温度值,将额头区域温度值求平均值得到T, 并根据温度均值T判断所检测的目标是否为活体。
该步骤中,因红外热像仪测量的温度存在误差,因此需要对计算温度 值进行补偿,补偿方法采用最小二乘法进行求解。所采用的多元回归模型 温度补偿方法为:
由于测量温度由测量误差、环境温度决定,设y=β0+β1x1+β2x2+ε为 待求解项,其中y为因变量实际温度,x1为测量温度,x2为环境温度,ε为 随机误差;首先,建立多元回归模型,设在实际测量过程中有n组测量值, 那么待求解项多元回归模型可以表示为:
然后求出参数估计值,对于式(12)中的多元线性回归方程组,参数 β0,β1,β2采用最小二乘法进行估计求解,设对应的估计值为则使 得模型与观测值的偏差平方和取得最小值,当偏差平方和 最小值时,即为公式(13):
此时求出的便为回归系数的最小二乘估计值;回归系 数的估计值满足以下条件:
最后,求出随机变量ε,由于随机变量ε与自变量x1,x2没有相关性,满 足公式Cov(Xji,μi)=0,(j=1,2,…k,i=1,2,…n),即可求解出随机变量ε;
因此,多元回归得到的补偿温度为:
获取到目标的额头温度值T后,判断额头温度是否满足人脸的正常温 度,若在温度范围内,则为活体;否则,不是活体,该方法实现人脸的检 测活体;如额头温度值T位于33℃~40℃,则认为其为活体。
如图5所示,给出了本发明的基于温度信息的人脸活体检测方法的应 用示意图,可见本发明的人脸活体检测方法,在人脸移动至不同位置时, 均可准确地捕获到人脸的额头位置。
综上可知,本发明的基于温度信息的人脸活体检测方法,将RGB图像 与红外图像匹配之后,不仅通过RGB图像进行人脸识别,初步判断其是否 满足人脸特征,还采集人脸额头部位的温度信息,进而根据额头温度来进 一步判断其是否为活体,杜绝了目前打印合法用户照片、制作3D人脸模型、 播放用户视频的欺骗攻击行为,识别方法更加安全有效,同时本发明的活 体检测方法可同时进行多人活体检测。