从Pico到Meta,一系列的VR头显厂商都在积极探索面容追踪技术,从而进一步提升用户的沉浸感水平。致力于为行业提供开发者工具和参考设计的高通同样有在研发相关领域。
在名为“Facial expression recognition”的专利申请中,高通就介绍了一种可用于AR/VR的面容追踪技术。具体来说,发明描述了一种利用面部landmark信息来优化表情识别的方法。
面部表情识别和面部landmark检测是面部分析系统执行的两个重要任务。面部表情识别涉及图像帧中描绘的面部表情的自动分类和/或估计。
面部landmark检测则涉及定位图像帧中的关键点位。关键点位可以包括眼角、嘴角、鼻尖和其他。检测到的面部landmark位置可以表征和/或指示面部的形状。
尽管面部表情和面部landmark检测技术存在相关性,但它们通常针对单独的任务实现,并输出不同类型的信息。
高通提出的发明可以为面部表情识别系统提供利用面部landmark检测技术的能力,从而实现更准确和更有效的面部表情识别。例如,面部表情识别系统可以使用3DMM技术来确定与图像帧的landmark特征相关联的信息,并将landmark特征信息作为输入,以执行面部表情识别。
在一个示例中,landmark特征信息可以允许神经网络更有效地确定图像帧中与识别面部表情相关和/或重要的区域。因此,在训练用于面部表情识别的神经网络中利用landmark特征信息可以提高神经网络输出的表情分类的准确性。
图2示出了表情识别系统200。表情识别系统200可以包括一个或多个引擎,例如图像帧引擎202、landmark特征引擎204和表情识别引擎206,表情识别系统200的一个或多个引擎可以对应于和/或包括经训练以执行面部表情识别的机器学习模型,例如深度神经网络。
在一个示例中,图像帧引擎202可以接收由表情识别系统200的图像传感器捕获的图像帧208。图像帧208可以是彩色图像帧(例如RGB图像帧)、灰度图像帧、红外(IR)图像帧、近红外(NIR)图像帧或任何其他类型的图像帧。
在一个示例中,接收图像帧208可以发起和/或是面部表情识别过程的一部分。例如,响应于接收到图像帧208,图像帧引擎202可以将图像帧208传递给landmark特征引擎204和/或表情识别引擎206,以便确定与图像帧208相关联的一个或多个面部表情。
表情识别系统200可以基于用于面部landmark检测的一种或多种技术来实现面部表情识别过程。landmark特征可以包括与面部特征的全部或一部分相关联的图像帧的任何点、位置和/或区域。例如,landmark特征可以指示和/或与嘴角、眼角、嘴唇的边界、脸颊的上曲线、鼻尖以及其他面部特征相关联。
在一个示例中,面部特征可以与多个landmark特征(例如,10、20、30等地标特征)相关联和/或由其定义。面部landmark检测可涉及检测关键landmark特征,例如对于任务具有相对高的重要性和/或相关性的特征。
尽管面部landmark检测和面部表情识别都是面部分析系统使用的技术,但它们通常涉及单独的操作和/或输出不同的结果。例如,一系列现有的面部表情识别过程不会利用任何用于面部landmark检测的技术。
如图2所示,landmark特征引擎204可以确定与图像帧208相关联的landmark特征信息210。landmark特征信息210可以包括指示和/或基于图像帧208的一个或多个landmark特征的任何信息。
在一个示例中,landmark特征信息210可以包括使用诸如3DMM系统获得的信息。3DMM系统可以使用混合形状工具来变形和/或建模3D头部模型的区域。通过调整与工具相关联的一个或多个混合形状系数,可以调整由混合形状工具对3D头部模型造成的变形。混合形状系数可以对应于面部表情的全部或部分的近似语义参数化。
例如,混合形状系数可以对应于完整的面部表情,或者对应于部分”面部表情。部分表情的示例包括抬起一条眉毛、闭上一只眼睛、移动面部的一侧等。在一个示例中,单个混合形状系数可以近似单个面部肌肉运动的线性化效果。
3DMM系统可以通过改变与3D头部模型相关联的一个或多个混合形状系数来有效地调整3D头部模型的面部表情。
图3A示出了可以由3DMM系统生成的示例3D头部模型302。在所述示例中,用户可以通过调整一个或多个滑块控件306的位置来调整3D头部模型302的面部表情。每个滑块控件可以与混合形状相关联。
在所述示例中,混合形状的混合形状系数表示为0和6000之间的值,其中3000的值对应于中性面部表情,0和6000的值对应与中性面部表情的最大偏差。当用户调整一个或多个滑块控件306时,3DMM系统可以相应地调整混合形状系数,从而致使3D头部模型302的面部表情的相应调整。
在一个示例中,混合形状系数可以包括识别系数和/或面部表情系数。识别系数可以表示与特定面部相关联的面部特征。面部表情系数可以表示与各种面部表情相关联的面部特征的变化。
基于与特定人相关联的身份系数,3DMM系统可以将通用3D头部模型转换为特定人的3D头部模型。另外,基于与特定面部表情相关联的面部表情系数,3DMM系统可以将通用3D头部模型转换为表示特定面部表情的3D头部模型。
图3B提供了可由3DMM使用各种类型的混合形状系数生成和/或变换的各种3D头部模型的示例。例如,模型310示出了具有中性表情的通用3D头部模型,模型312示出了变换成表示惊讶的面部表情的模型310,模型314示出了变换成表示高兴的面部表情,模型316则示出了变换成表示厌恶的面部表情。
返回图2,landmark特征信息210可以包括与图像帧208相关联的一个或多个混合形状系数。landmark特征引擎204可以检测图像帧208内的人的面部。landmark特征引擎204可以将与人面相对应的图像数据与人脸的3D头部模型进行比较。基于比较,landmark特征引擎204可以确定对应于与人的面部相关联的面部表情的一组混合形状系数。
在一个示例中,所确定的混合形状系数可以表示landmark特征信息210的全部或一部分。在其他示例中,landmark特征数据210可以包括基于混合形状系数生成的landmark图像帧。在一个示例中,landmark图像帧可以指示和/或表示图像帧内的人的面部的一个或多个关键landmark特征。
为了生成landmark图像帧,landmark特征引擎204可以基于混合形状系数确定与图像帧208相关联的多个lanmark特征。例如,混合形状系数可以指示图像帧208内对应于各种landmark特征的位置。
在图3C中,由landmark特征引擎204确定的landmark特征示为叠加在与图像帧318内的人面相对应的图像数据上的点。landmark特征引擎204可以确定与人面相关联的任何数量的landmark特征。例如,landmark特征引擎204可以确定100个landmark特征、200个landmark或300个landmark特征。
landmark特征引擎204可以通过确定对应于关键landmark特征的landmark特征子集来生成landmark图像帧。landmark特征引擎204可以通过确定特别指示人的面部表情的landmark特征来确定相关landmark特征。
例如,与特定面部特征(例如人的眼睛、鼻子和/或嘴)相关联的landmark特征在不同面部表情之间的结构、外观和/或位置上可能比与其他面部特征(如人的下巴或前额)相关联的landmark特征变化更大。因此,landmark特征引擎204可以确定可变(因此相关)landmark特征是关键landmark特征。
在一个实施例中,landmark特征引擎204可以基于在关键landmark特征之间形成一个或多个连接来生成landmark图像帧。例如,landmark特征引擎204可以确定定义与关键landmark特征相关联的一个或多个面部特征的线、曲线、边界和/或形状。landmark特征引擎204可以绘制相关连接以生成landmark图像帧。
在说明性示例中,landmark图像帧可以是二值图像帧,其使用设置为一个像素值的像素来指示关键landmark特征之间的连接。另外,landmark特征引擎204可以使用混合形状系数的某些类型和/或子集来生成landmark图像帧。例如,landmark特征引擎204可以使用基于面部表情混合形状系数确定的landmark特征来生成landmark图像帧。
图3D和图3E示出了可以由landmark特征引擎204生成的landmark图像帧的各种示例。例如,图3D示出了基于图像帧320(A)和图像帧320(B)生成的landmark图像帧。图像帧320(A)和320(B)表示显示不同面部表情的同一人的面部的图像。
landmark图像帧322(A)对应于基于与图像帧320(A)相关联的面部表情混合形状系数(而不是身份混合形状系数)生成的旋转地标图像框。landmark图像帧324(A)对应于基于与图像帧320(A)相关联的面部表情混合形状系数(而不是识别混合形状系数)生成的正面landmark图像框。
另外,landmark图像帧326(a)对应于基于与图像帧320(a)相关联的面部表情混合形状系数和身份混合形状系数生成的正面landmark图像框。landmark图像帧322(B)、324(B)和326(B)是基于与图像帧320(B)相关联的混合形状系数生成的对应landmark图像帧。如图所示,基于图像帧320(A)生成的landmark图像帧不同于基于图像帧310(B)生成的landmark图像帧。
图3E示出了基于图像帧328(A)和图像帧324(B)生成的landmark图像帧。图像帧328(A)和328(B)表示两个不同的人(例如具有不同平均面部形状的人)的图像。landmark图像帧330(A)对应于基于与图像帧328(A)相关联的面部表情混合形状系数(而不是身份混合形状系数)生成的旋转landmark图像框。landmark图像帧332(A)对应于基于与图像帧328(A)相关联的面部表情混合形状系数和识别混合形状系数两者生成的正面地标图像框。
另外,landmark图像帧334(a)对应于基于与图像帧320(a)相关联的面部表情混合形状系数(而不是身份混合形状系数)生成的正面landmark图像框。landmark图像帧330(B)、332(B)和334(B)是基于与图像帧328(B)相关联的混合形状系数生成的对应landmark图像帧。如图所示,基于图像帧328(A)生成的landmark图像帧不同于基于图像帧3228(B)生成的landmark图像帧。
图3F是配置为确定图2中所示的landmark特征信息210的示例性landmark特征系统300框图。
例如,landmark特征模块300可以配置成确定混合形状系数和/或landmark图像帧。在一个示例中,landmark特征系统300的全部或一部分可以对应于和/或由表情识别系统200的landmark特征引擎204实现。
如图3E所示,面部检测引擎338可以接收图像帧336(例如对应于图2中的图像帧208)。面部检测引擎338可以执行任何类型或形式的对象检测、对象识别、面部检测和/或面部识别算法,以检测图像帧336内的一个或多个面部。
在一个示例中,如果面部检测引擎328确定图像帧338包括与人的面部相对应的图像数据,3DMM拟合器340可以确定与人的面部相关联的混合形状系数。
如上所述,混合形状系数可以对应于landmark特征信息210。在其他示例中,landmark特征系统300的landmark图像生成器342可以基于由3DMM拟合器340确定的混合形状系数来生成地标图像帧344,3DMM拟合器340可以使用机器学习模型来确定与图像帧336相关联的landmark特征。例如,CNN可以利用将图像帧366与图像帧362的3D重建版本进行比较的损失函数。
在说明性示例中,可以基于图像帧364的估计深度图生成图像帧336的重建版本。例如,3DMM拟合器340可以使用估计的深度图来确保图像帧366的3D重建版本与(2D)图像帧362一致。损失函数可以提供精确和/或密集的landmark特征集。
名为“Facial expression recognition”的高通专利申请最初在2021年2月提交,并在日前由美国专利商标局公布。