苹果x人脸识别技术原理解读
扫描二维码
随时随地手机看文章
iPhone X屏幕上前方采用了 TrueDepth 摄像系统,双摄像头,其中一个为红外摄像头,还包含各种传感器。如下图所示。
Face ID与普通人脸识别其实就是3D人脸和2D人脸的区别。Face ID通过一个结构光系统提取人脸的点云信息生成一个3d模型,而传统的人脸识别是通过一系列的方法,可以是简单的基于位置的信息,也可以是通过神经网络提取出相应的底层,在二维特征层面上进行比较。
Face ID之所以能生成准确的3D人脸模型,是因为用到了结构光,右边有一个小投影仪投射带形状信息的红外光斑到人脸上,左边的摄像头采集光斑的信息,根据形变和大小等逐一确定各个位置的深度和方向信息,最后得到人脸的点云生成3D模型。而传统的单摄像头方案因为没办法准确有效地提取深度信息,人脸识别往往只能使用2维图像。
其实,3D视觉作为一项激动人心的新技术,早已经出现在微软Kinect、英特尔RealSense等消费级产品中。近几年,随着硬件端技术的不断进步,算法与软件层面的不断优化,3D深度视觉的精度和实用性得到大幅提升,使得“3D深度相机+手势/人脸识别”具备了大规模进入移动智能终端的基础。
要了解FaceID的人脸识别技术,让我们先来科普一下结构光技术与原理。
结构光硬件组成1、结构光成像一般需要发射源,发射源一般是红外或者激光,发射出点阵或者栅格光源,投到物体表面。
2、结构光成像还需要接受器,接受器一般与发射源对应,能够获取发射源投在物体表面的光信息。
3、结构光成像,还需要一个硬件计算单元,把接收器接收到的信息处理成物体三维的点云信息。
结构光原理发射源发射的均匀点阵/栅格投射到待测物表面后,由于物体的表面深度不一样,点阵/栅格会因为不同的深度形状产生空间形变和飞行时间差,被改变的结构光投影经摄像系统采集,传送至硬件计算单元分析计算后可得出被测物的三维面形数据。
空间相位形变和光脉冲飞行时间差是结构光最常用的两种方法:利用空间形变,获取结构光场的相位、光强等被待测物的高度调制后产生的变化,可以读取并计算这些性质的变化获取待测物的面形信息;利用飞行时间差,可以记录了光脉冲在空间的飞行时间,通过飞行时间计算待测物体的面形信息。
以下用知乎作者Lee Mr的一篇结构光示例来跟大家简单说明:
1)第一步,编程让发射源产生正弦条纹图,因为后续要利用变形条纹图获取相位,而获取相位的算法也有多种,此处采用的是四步移相法,具体原理去查文献,不再累述。因此这里产生四幅相位差pi/2的条纹。然后将该四幅条纹分时投影到被测物(面具)上,采集到如下图左边边的图(当然也是四幅),同时要采集四幅参考面的条纹(未被调制,同样四幅)。
2)第二步,相位恢复。由采集到的四幅受调制条纹图计算出被调制相位,这里得到的相位图是截断相位图,因为四步移相算法得到的结果是由反正切函数计算所得,因而被限制在[-pi,pi]之间,也就是说每当其值超过该范围,其又会重新开始。得到的相位主值如下图所示:
3)上述二者相减得到相位差,该相位差则表征了被测物相对参考面的高度信息,再代入相位与高度转化公式,得到如下三维模型。
FaceID技术原理
接下来,我们来了解IphoneX的FaceID技术是怎么实现的。
首先我们来了解一下IphoneX齐刘海的硬件设计,包含了一个三维采集系统:红外相机、泛光照明灯、环境光传感器和点阵投影器。
点阵投影器能在不同的光照条件下将 3万 多个肉眼不可见的光点投影在人的脸部,绘制出独一无二的面谱,由红外相机得到面部3D深度信息模型。再结合前置摄像头拍摄的可见光人脸,将人脸的纹理与人脸3D模型通过算法结合,得到真实的3D人脸图。
得到3D人脸图以后,自然是通过目前最实用的深度学习算法,学习三维人脸的特征,再进行人脸识别。精度自然比平面人脸的识别精度要高。
FaceID技术优势1、三维人脸的深度信息,天然防止了平面的纸张、视频等人脸攻击手段; 2、由于其点阵投影器、泛光照明灯的特性,可以对其人脸肤色与其它材质有较好的区分性,防止了面具等攻击手段;
3、由于获取人脸三维信息主要依靠红外技术手段,对于室内环境引起的人脸光照变化基本不敏感,可以在室内任意光环境下使用;
4、结构光精度可达到0.1毫米级精度,可以使人脸识别精度大大提高。 FaceID技术问题
1、由于红外结构光受传输距离的影响比较大,衰减厉害,目前IphoneX的有效人脸识别距离应该在20cm-60cm之间;超出距离精度会大大下降;
2、由于太阳光包含有红外光,可以预料,在外界阳关充足的环境下,IphoneX的人脸识别会受较大影响;
3、由于结构光捕获三维信息时有一个短暂的多帧相位信息融合,对于持续移动和快速移动的人脸,识别精度会大大降低。
结构光人脸识别国内现状
1、目前能够把结构光整个发射、接收模组做到如IphoneX这般小,能够集成到手机上的基本还没有。据了解,目前能够做到最小的也得手机充电器般大小;
2、从结构光的技术原理上分析,要形成一个精准的三维模型,至少需要4-5帧视频图像进行重建,需要保证光源发射器的频率和摄像头捕捉画面频率同步,这对于普通红外摄像机的帧率25帧来讲,至少需要200ms时间完成光源信息采集,再通过算法对其点云重建,时间较长。目前对于Iphone的技术细节无法获取。
3、由于受硬件限制,目前3维人脸数据的采集难度较大,数据样本太少,对人脸识别算法的学习和研究带来一定难度。