人脸相似度计算方法及装置与流程

文档序号:16672039发布日期:2019-01-18 23:38阅读:478来源:国知局
人脸相似度计算方法及装置与流程

本发明涉及脸部信息处理领域,具体而言,涉及人脸相似度计算方法及装置。



背景技术:

随着生活质量的提高,人们对外貌越来越重视。对于外貌气质不佳的人,通常会选择脸部整形的方式来提高自身的外貌气质。

在脸部整形领域,以及相关领域,整形医生通常会根据用户的实际情况来为用户确定相应的脸部整形策略,脸部整形策略如垫高某个脸上的某个部位、改变脸上某个部位的形态。在整形完成后,用户可以通过对比整形前后的照片来判断整形是否达到预期的目的。

在整形的时候,有些人期望将自己按照指定照片上的人脸进行整容,但在规划的时候,用户通常难以准确的确定自己与该照片上的人脸有多大的差别,只能是通过肉眼进行分别。



技术实现要素:

本发明的目的在于提供一种人脸相似度计算方法。

第一方面,本发明实施例提供了人脸相似度计算方法,包括:

获取第一用户的第一二维脸部图像和第二用户的第一二维脸部图像;

将第一二维脸部图像输入至特征识别模型,以确定第一用户的第一脸部特征点;

将第二二维脸部图像输入至特征识别模型,以确定第二用户的第二脸部特征点;

根据第一脸部特征点计算第一用户的第一人脸特征信息;

根据第二脸部特征点计算第二用户的第二人脸特征信息;第一人脸特征信息和第二人脸特征信息的类型是相同的;

根据第一人脸特征信息和第二人脸特征信息,计算第一用户和第二用户的相似度。

第二方面,本发明实施例提供了人脸相似度计算方法,包括:

获取模块,用于获取第一用户的第一二维脸部图像和第二用户的第一二维脸部图像;

第一确定模块,用于将第一二维脸部图像输入至特征识别模型,以确定第一用户的第一脸部特征点;

第二确定模块,用于将第二二维脸部图像输入至特征识别模型,以确定第二用户的第二脸部特征点;

第一计算模块,用于根据第一脸部特征点计算第一用户的第一人脸特征信息;

第二计算模块,用于根据第二脸部特征点计算第二用户的第二人脸特征信息;第一人脸特征信息和第二人脸特征信息的类型是相同的;

第三计算模块,用于根据第一人脸特征信息和第二人脸特征信息,计算第一用户和第二用户的相似度。

本发明实施例提供的人脸相似度计算方法,在实现时,首先分别获取了第一用户和第二用户的二维脸部图像;而后,将两个用户的二维脸部图像分别输入至特征识别模型,以确定这两个用户分别对应的脸部特征点;而后,分别利用这两个用户的脸部特征点计算人脸特征信息,并最终利用计算出的脸部特征信息,确定这两个用户的相似度。通过使用特征识别模型,使得脸部特征点获取的更有针对性,也更统一,提高了后续评价相似度的准确程度。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例所提供的人脸相似度计算方法的基本流程图;

图2示出了本发明实施例所提供的人脸相似度计算方法中,二维正脸脸部图像的示意图;

图3示出了本发明实施例所提供的人脸相似度计算方法中,90°侧脸图像的示意图;

图4示出了本发明实施例所提供的人脸相似度计算方法中,45°侧脸图像的示意图;

图5示出了本发明实施例所提供的人脸相似度计算方法中,实例1所对应的脸部示意图;

图6示出了本发明实施例所提供的人脸相似度计算方法中,实例2所对应的脸部示意图;

图7示出了本发明实施例所提供的人脸相似度计算方法中,实例3所对应的脸部示意图;

图8示出了本发明实施例所提供的人脸相似度计算方法中,实例4所对应的脸部示意图;

图9示出了本发明实施例所提供的人脸相似度计算方法中,实例5所对应的脸部示意图;

图10示出了本发明实施例所提供的人脸相似度计算方法中,实例6所对应的脸部示意图;

图11示出了本发明实施例所提供的人脸相似度计算方法中,实例7所对应的脸部示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

相关技术中,在特征对比领域,通常采用将两张照片进行重叠的方式来确定这两张照片的相似度,但这种确定相似度的准确度并不理想。

有鉴于此,本申请提供了一种人脸相似度计算方法,如图1所示,包括如下步骤:

s101,获取第一用户的第一二维脸部图像和第二用户的第一二维脸部图像;

s102,将第一二维脸部图像输入至特征识别模型,以确定第一用户的第一脸部特征点;

s103,将第二二维脸部图像输入至特征识别模型,以确定第二用户的第二脸部特征点;

s104,根据第一脸部特征点计算第一用户的第一人脸特征信息;

s105,根据第二脸部特征点计算第二用户的第二人脸特征信息;第一人脸特征信息和第二人脸特征信息的类型是相同的;

s106,根据第一人脸特征信息和第二人脸特征信息,计算第一用户和第二用户的相似度。

其中,用户的脸部二维图像(第一二维脸部图像和第二维脸部图像)可以是通过摄像机进行拍摄后直接得到的,还可以是先获取用户的三维脸部图像,而后从三维脸部图像中映射出对应的二维脸部图像,该二维脸部图像可以是正脸图像、90°侧脸图像(与正脸图像的视角夹角为90的视角的图像),也可以是45°侧脸图像,当然,二维脸部图像也可以是其他角度的侧脸图像,但这三个角度的二维脸部图像(正脸图像、90°侧脸图像和45°侧脸图像)更具有针对性。本申请所提供的方案,对于第一用户和第二用户均是进行了相同的操作,也就是,第一二维脸部图像和第一二维脸部图像是含义均是相同的,差别只是针对两个用户进行拍摄而得到的图像;类似的,第一脸部特征点和第二脸部特征点的类型也应当是相同的;第一人脸特征信息和第二人脸特征信息的类型是相同的。进而,后续步骤中,将主要对针对第一用户的和与第一用户相关的特征进行介绍,第二用户的和与第二用户相关的特征的含义可以参照对于与第一用户相关的特征的解释。

步骤s101中所生成的第一二维脸部图像可以是一个视角的图像(只是一个角度的图像),也可以是不同视角的图像(如二维脸部图像中同时包含有第一正脸图像和第一90°侧脸图像)。

步骤s102中,将第一二维脸部图像输入至特征识别模型,使得特征识别模型可以输出第一脸部特征点,具体而言,特征识别模型输出的可以是第一脸部特征点的具体坐标。

而后,步骤s104中,可以直接将脸部特征点的具体坐标作为人脸特征信息进行输出,比如左唇角点和右唇角点可以反应出嘴部的宽度,进而,可以直接将左唇角点和右唇角点作为人脸特征信息进行输出;也可以是先根据左唇角点和右唇角点计算出嘴部宽度,并将嘴部宽度作为第一人脸特征信息进行输出。

具体实现的时候,步骤s102中所确定出的第一脸部特征点可能是多个,在该种情况下,步骤s104的具体实现过程可以是从多个第一脸部特征点中选择出可以输出的第一脸部特征点作为第一人脸特征信息。

在确定了第一人脸特征信息和第二人脸特征信息后,就可以根据这两个信息来确定这两个用户的相似度了(如可以使用第一人脸特征信息和第二人脸特征信息的比值来表征相似度)。

如前文中的说明,第一二维脸部图像有两种获取方式,分别是直接通过2d摄像机对人脸进行拍摄后,获取到的;以及,先获取用户的三维脸部图像,而后从三维脸部图像中映射出对应的二维脸部图像。如果采用先获取用户的三维脸部图像的方式,则本申请所提供的方法中,步骤s101包括:

步骤1011,获取第一用户的第一三维脸部图像;第一三维脸部图像是使用三维扫描装置对第一用户的脸部进行扫描得到的;

步骤1012,对第一三维脸部图像进行指定角度的映射,以确定一二维脸部图像;所述一二维脸部图像包括以下的任意一种或多种图像:正脸图像、90°侧脸图像和45°侧脸图像。

步骤1011中,可以是通过专门的3d人脸扫描装置对用户进行的人脸扫描。3d人脸扫描装置可以是手持式,也可以是落地式。扫描方式可以是扫描装置固定不动,人头部转动进行扫描;也可以是人头部固定不动,扫描装置中的摄像头自动的沿某个轨迹围绕人脸转动进行扫描。为保证扫描精度,优选使用落地式的3d人脸扫描装置,扫描装置中的摄像头自动的沿某个轨迹围绕人脸转动进行扫描的方式,完成3d扫描的工作。3d人脸扫描装置上优选设置有led照明设备和头顶固定单元,该led照明设备的主要作用是在进行3d拍摄的时候,提供照明;头顶固定单元在使用的时候,可以固定在用户的头部,以使用户的头部不会发生位移。

步骤1012中,主要是对步骤1011中的第一三维脸部图像按照指定的角度进行映射,以确定该指定角度所对应的第一二维脸部图像,映射的角度可以根据用户的实际情况来确定,但需要说明的是,步骤s102中特征识别模型通常只能针对某一个角度的第一二维脸部图像进行识别,因此,在执行步骤1012的时候,首先需要确定步骤s102中特征识别模型所能够识别的第一二维脸部图像的角度,并根据该角度确定步骤1012中指定角度的具体数值。

采用从三维脸部图像中映射二维图像的方式,优点在于3d扫描的过程中对人脸的角度没有过高的要求,扫描后的三维图像可根据设定的参数对人脸的角度进行自动调整,调整后映射的二维图像可直接使用。而通过摄像机拍摄二维图像,则需要人工提前摆正人脸的角度,进行拍摄。人脸摆正的角度要求严格,不易操作,获取的二维图像容易出现数据偏差。

具体的,步骤s102中,确定的第一脸部特征点可以是一个也可以是多个。通常情况下,这些第一脸部特征点按照在脸上的位置上的不同,可以分为不同的群组,进而,

第一脸部特征点包括以下的任意一个或多个特征群组:第一正脸特征群组、第一90°侧脸特征群组和第一45°侧脸特征群组;第二脸部特征点包括以下的任意一个或多个特征群组:第二正脸特征群组、第二90°侧脸特征群组和第二45°侧脸特征群组;

第一正脸特征群组和第二正脸特征群组均包括以下的任意一个或多个特征点群组:外轮廓点群组、正眼部点群组、鼻部点群组和嘴部点群组;

第一90°侧脸特征群组和第二90°侧脸特征群组均包括以下的任意一个或多个特征点群组:

侧轮廓点群组、侧眼部点群组和耳部点群组;

第一45°侧脸特征群组和第二45°侧脸特征群组均包括以下的任意一个或多个特征点群组:

斜轮廓点群组;

外轮廓点群组包括以下任意一个或多个特征点:

额中点、左额角水平外延点、右额角水平外延点、左鬓角凸点、右鬓角凸点、左鬓角凹点、右鬓角凹点、左颧骨高点、右颧骨高点、左颧骨下缘点、右颧骨下缘点、左颌角点、右颌角点和颏底点;

正眼部点群组包括以下任意一个或多个特征点:

左上眉头起点、右上眉头起点、左眉尾点、右眉尾点、左上眼眶顶点、右上眼眶顶点、左眼内眦点、右眼内眦点、左上睑缘顶点、右上睑缘顶点、左眼外眦点、右眼外眦点、左下睑缘底点和右下睑缘底点;

鼻部点群组包括以下任意一个或多个特征点:

印堂点、左鼻翼宽点、右鼻翼宽点、左鼻孔顶点、右鼻孔顶点和鼻唇角点;

嘴部点群组包括以下任意一个或多个特征点:

唇谷点、左唇角点、右唇角点、下唇底点、唇珠中点和下内唇中点;

侧轮廓点群组包括以下任意一个或多个特征点:

侧额中点、侧下额过度点、侧额末点、侧印堂点、侧鼻山根点、侧鼻梁起点、侧鼻梁高点、侧鼻头起点、侧鼻头顶点、侧鼻孔顶点、侧鼻小柱中点、侧鼻唇角点、侧人中中点、侧上唇沿顶点、侧下唇下拐点、侧颏唇沟凹点、侧颏过度点、侧颏下缘点、侧颈颚拐点;

侧眼部点群组包括以下任意一个或多个特征点:

侧眼眶顶点、侧上睑外缘顶点、侧下睑外缘底点、侧鼻基底点和侧嘴角点;

耳部点群组包括以下任意一个或多个特征点:

侧对耳轮下脚缘点和侧耳垂底点;

斜轮廓点群组包括以下任意一个或多个特征点:

斜上颧点、斜颧骨拐点、斜颧骨过渡点、斜苹果肌高点、斜内面颊起点、斜内面颊点、斜内面颊末点和斜颏起点。

具体实现时,第一脸部特征点可以是外轮廓点群组、侧轮廓点群组、斜轮廓点群组、正眼部点群组、侧眼部点群组、鼻部点群组、嘴部点群组和耳部点群组中,任意一个或多个群组中的点。

为了更加准确的说明上述各个特征点的位置,下面以列表的形式说明各个特征点在脸上的具体位置,如表1-表3所示:

表1:二维正脸脸部图像(如图2所示)

表2:90°侧脸图像(如图3所示)

表3:45°侧脸图像(如图4所示)

具体实现时,表1中的特征点均是根据第一二维正脸脸部图像(第一二维脸部图像中的一种)确定的;表2中的特征点均是根据第一90°侧脸图像(第一二维脸部图像中的一种)确定的;表3中的特征点均是根据第一1-89°侧脸图像(第一二维脸部图像中的一种,如45°侧脸图像)确定的。

通过上述内容可知,不同角度的图像是用来确定不同的特征点的,比如第一二维正脸脸部图像是用来确定外轮廓点群组中的特征点、正眼部点群组中的特征点、鼻部点群组中的特征点和嘴部点群组中的特征点;第一90°侧脸图像是用来确定侧轮廓点群组中的特征点、侧眼部点群组中的特征点、耳部点群组中的特征点;第一45°侧脸图像是用来确定斜轮廓点群组中的特征点。

也就是第一二维脸部图像包括第一二维正脸脸部图像、第一45°侧脸图像和第一90°侧脸图像;第一脸部特征点包括第一正脸特征群组、第一90°侧脸特征群组和第一45°侧脸特征群组;

步骤将第一二维脸部图像输入至特征识别模型,以确定第一用户的第一脸部特征点包括如下任意一个或多个步骤:

将第一二维正脸脸部图像输入至特征识别模型,以确定第一用户所对应的正脸特征群组;第一用户所对应的正脸特征群组包括以下任意一个或多个群组中的特征点:外轮廓点群组、正眼部点群组、鼻部点群组和嘴部点群组;

将第一90°侧脸图像输入至特征识别模型,以确定第一90°侧脸特征群组;第一90°侧脸特征群组包括以下任意一个或多个群组中的特征点:侧轮廓点群组、侧眼部点群组、耳部点群组;

将第一45°侧脸图像输入至特征识别模型,以确定第一45°侧脸特征群组;第一45°侧脸特征群组包括斜轮廓点群组。

对应的,第二二维脸部图像包括第二二维正脸脸部图像、第二45°侧脸图像和第二90°侧脸图像;第二脸部特征点包括第二正脸特征群组、第二90°侧脸特征群组和第二45°侧脸特征群组;

步骤将第二二维脸部图像输入至特征识别模型,以确定第二用户的第二脸部特征点包括如下任意二个或多个步骤:

将第二二维正脸脸部图像输入至特征识别模型,以确定第二用户所对应的正脸特征群组;第二用户所对应的正脸特征群组包括以下任意一个或多个群组中的特征点:外轮廓点群组、正眼部点群组、鼻部点群组和嘴部点群组;

将第二90°侧脸图像输入至特征识别模型,以确定第二90°侧脸特征群组;第二90°侧脸特征群组包括以下任意一个或多个群组中的特征点:侧轮廓点群组、侧眼部点群组、耳部点群组;

将第二45°侧脸图像输入至特征识别模型,以确定第二45°侧脸特征群组。第二45°侧脸特征群组包括斜轮廓点群组。

通过上述表1-3中的特征点,用户可以自行选择使用哪些特征点来计算人脸特征信息,即,计算某些脸部区域的评分,具体的,

第一人脸特征信息包括以下的任意一个或多个特征信息:

第一正脸特征信息、第一90°侧脸特征信息和第一45°侧脸特征信息;第二人脸特征信息包括以下的任意一个或多个特征信息:第二正脸特征信息、第二90°侧脸特征信息和第二45°侧脸特征信息;

第一正脸特征信息和第二正脸特征信息均包括以下的任意一个或多个:

脸部长宽比、上庭长度、额面宽、颞宽、颧宽、外面颊饱满度、颌宽、下庭长度、下颏长度、对称度、五官分布评价值、眉尾长、眉扬角、眉间距、眉眼间距、眼长、眼裂大小、眼大小、眼扬角、眼间距、中庭长度、鼻翼宽度、鼻孔裸露程度、人中长度、唇分线、唇扬角、唇闭合度、嘴大小、上唇薄厚、下唇薄厚、颌骨结构评价值;

第一90°侧脸特征信息和第二90°侧脸特征信息均包括以下的任意一个或多个:

额前倾度、额部饱满度、印堂高度、眼凸度、鼻根高度、鼻根形态、鼻梁形态、鼻头高度、鼻基底高、鼻唇角、上唇凸瘪、下唇凸瘪、下颏翘度、下颏前倾度、下颌缘清晰度、颌骨结构评价值;

第一45°侧脸特征信息和第二45°侧脸特征信息均包括以下的任意一个或多个:

颧骨高度、苹果肌饱满度、内面颊饱满度。

进而,

步骤根据第一脸部特征点计算第一用户的第一人脸特征信息包括如下任意一个或多个步骤:

根据第一正脸特征群组中的特征点,计算第一正脸特征信息;

根据第一90°侧脸特征群组中的特征点,计算第一90°侧脸特征信息;

根据第一45°侧脸特征群组中的特征点,计算第一45°侧脸特征信息;

步骤根据第二脸部特征点计算第二用户的第二人脸特征信息包括如下任意一个或多个步骤:

根据第二正脸特征群组中的特征点,计算第二正脸特征信息;

根据第二90°侧脸特征群组中的特征点,计算第二90°侧脸特征信息;

根据第二45°侧脸特征群组中的特征点,计算第二45°侧脸特征信息。

具体的,下面列举出计算每个第一正脸特征信息所使用到的特征点,但应当知晓的是,在实际计算的时候,可以完全按照如下公开的特征点进行计算,也可以根据实际情况进行微调,但至少应当使用对应的特征点的一部分。

计算脸部长宽比的特征点:

额中点、颏底点、左颧骨高点、右颧骨高点;

计算上庭长度的特征点:

额中点、印堂点、鼻唇角点;

计算额面宽的特征点:

左鬓角凸点、右鬓角凸点、左颧骨高点、右颧骨高点;

计算颞宽的特征点:

左鬓角凹点、右鬓角凹点、左颧骨高点、右颧骨高点;

计算颧宽的特征点:

左鬓角凹点、右鬓角凹点、左颧骨高点、右颧骨高点、左颧骨下缘点、右颧骨下缘点;

计算外面颊饱满度的特征点:

左颧骨高点、右颧骨高点、左颧骨下缘点、右颧骨下缘点、左颌角点、右颌角点;

计算颌宽的特征点:

左颧骨高点、右颧骨高点、左颌角点、右颌角点。

计算下庭长度的特征点:

印堂点、鼻唇角点、颏底点。

计算下颏长度的特征点:

印堂点、鼻唇角点、下唇底点、颏底点。

计算对称度的特征点:

印堂点、鼻唇角点、左唇角点、右唇角点。

计算五官分布评价值的特征点:

额中点、左额角水平外延点、右额角水平外延点、左颧骨高点、右颧骨高点、左颌角点、右颌角点、颏底点、左眼外眦点、右眼外眦点、左唇角点、右唇角点。

计算眉尾长的特征点:

左上眉头起点、右上眉头起点、左眉尾点、右眉尾点、左颧骨高点、右颧骨高点。

计算眉扬角的特征点:

左上眉头起点、右上眉头起点、左眉尾点、右眉尾点。

计算眉间距的特征点:

左上眉头起点、右上眉头起点、左颧骨高点、右颧骨高点。

计算眉眼间距的特征点:

印堂点、鼻唇角点、左上眼眶顶点、右上眼眶顶点、左上睑缘顶点、右上睑缘顶点。

计算眼长的特征点:

左眼内眦点、右眼内眦点、左眼外眦点、右眼外眦点、左颧骨高点、右颧骨高点。

计算眼裂大小的特征点:

左上睑缘顶点、右上睑缘顶点、左下睑缘底点、右下睑缘底点、左颧骨高点、右颧骨高点

计算眼大小的特征点:

额中点、左额角水平外延点、右额角水平外延点、左颧骨高点、右颧骨高点、左颌角点、右颌角点、颏底点、左眼内眦点、右眼内眦点、左上睑缘顶点、右上睑缘顶点、左眼外眦点、右眼外眦点、左下睑缘底点、右下睑缘底点。

计算眼扬角的特征点:

左眼内眦点、右眼内眦点、左眼外眦点、右眼外眦点。

计算眼间距的特征点:

左眼外眦点、右眼外眦点、左颧骨高点、右颧骨高点。

计算中庭长度的特征点:

额中点、印堂点、鼻唇角点、颏底点。

计算鼻翼宽度的特征点:

左颧骨高点、右颧骨高点、左鼻翼宽点、右鼻翼宽点。

计算鼻孔的特征点:

左鼻孔顶点、右鼻孔顶点、鼻唇角点。

计算人中长度的特征点:

印堂点、鼻唇角点、唇谷点。

计算唇分线的特征点:

鼻唇角点、唇珠中点、颏底点。

计算唇扬角的特征点:

唇珠中点、左唇角点、右唇角点。

计算唇闭合度的特征点:

左唇角点、右唇角点、唇珠中点、下内唇中点。

计算嘴大小的特征点:

左颧骨高点、右颧骨高点、左唇角点、右唇角点。

计算上唇薄厚的特征点:

印堂点、鼻唇角点、唇谷点、唇珠中点。

计算下唇薄厚的特征点:

印堂点、鼻唇角点、下内唇中点、下唇底点。

具体的,下面列举出计算每个90°侧脸特征信息所使用到的特征点,但应当知晓的是,在实际计算的时候,可以完全按照如下公开的特征点进行计算,也可以根据实际情况进行微调,但至少应当使用对应的特征点的一部分。

计算额前倾度的特征点:

侧额中点、侧印堂点。

计算额部饱满度的特征点:

侧额中点、侧下额过度点、侧额末点。

计算印堂高度的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧印堂点。

计算眼凸度的特征点:

侧眼眶顶点、侧上睑外缘顶点。

计算鼻根高度的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧鼻山根点。

计算鼻根形态的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧印堂点、侧鼻山根点。

计算鼻梁形态的特征点:

侧鼻梁起点、侧鼻梁高点、侧鼻头起点。

计算鼻头高度的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧嘴角点、侧鼻头顶点。

计算鼻基底高的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧嘴角点、侧鼻唇角点。

计算鼻唇角的特征点:

侧鼻头顶点、侧鼻唇角点、侧上唇沿顶点。

计算上唇凸瘪的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧上唇沿顶点、侧颏过度点、侧鼻唇角点。

计算下唇凸瘪的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧上唇沿顶点、侧下唇下拐点、侧颏过度点、侧鼻唇角点。

计算下颏翘度的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧下睑外缘底点、侧颏唇沟凹点、侧颏过度点。

计算下颏前倾度的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧下睑外缘底点、侧颏过度点。

计算下颌缘清晰度的特征点:

侧耳垂底点、侧颏下缘点、侧颈颚拐点。

计算颌骨结构评价值的特征点:

侧对耳轮下脚缘点、侧下睑外缘底点、侧嘴角点。

具体的,下面列举出计算每个45°侧脸特征信息所使用到的特征点,但应当知晓的是,在实际计算的时候,可以完全按照如下公开的特征点进行计算,也可以根据实际情况进行微调,但至少应当使用对应的特征点的一部分。

计算颧骨高度的特征点:

斜上颧点、斜颧骨拐点、斜苹果肌高点。

计算苹果肌饱满度的特征点:

斜颧骨过渡点、斜苹果肌高点、斜内面颊起点。

计算内面颊饱满度的特征点:

斜内面颊点、斜内面颊末点、斜颏起点。

下面以具体的几个实例来说明部分正脸特征信息(第一人脸特征信息和第二人脸特征信息)的计算过程:

实例1:计算眼大小的方式:

如图5所示,图中标记出了如下特征点:meb(额中点),ln1(左额角水平外延点),rn1(右额角水平外延点),lq1(左颧骨高点),rq1(右颧骨高点),lh1(左颌角点),rh1(右颌角点),mkb(颏底点),ly1(左眼内眦点),ry1(右眼内眦点),ly3(左上睑缘顶点),ry3(右上睑缘顶点),ly5(左眼外眦点),ry5(右眼外眦点),ly7(左下睑缘底点),ry7(右下睑缘底点)。

计算公式:

平均眼裂高度:

yh=

[(ly3-ly7)+(ry3-ry7)]/2=[((971,698)-(979,760))+((602,692)-(604,755))]/2≈125.21;

平均眼宽:

yw=[(ly5-ly1)+(ry1-ry5)]/2=[((1056,736)-(900,747))+((675,748)-(513,727))]/2≈320.01;

脸部面积:

ms=s(meb,ln1,lq1,lh1,mkb,rh1,rq1,rn1)=[(780,283),(1117,424),(1198,788),(1117,1142),(799,1393),(448,1143),(362,789),(438,420)]=560250.47;

眼部面积:ys=2×yh×yw≈20034.28;

眼大小特征值k=100×ys/ms≈3.58;

需要说明的是,计算出的特征值(如眼大小特征值)、眼部面积、等数值都可以作为眼大小的特征信息,具体使用哪种数值作为最终的特征信息可以依据实际情况而定,但经过发明人的实际使用和验证,认为将特征值作为对应的特征信息最为合适。即将眼大小特征值作为眼大小的特征信息最为合适,类似的,后文中所列举的例子中,也优选将特征值作为对应的特征信息,但也可以使用其他的数值作为特征信息。

实例2:计算中庭长度的方式:

如图6所示,图中标记出了如下特征点:

meb(额中点),myt(印堂点),mbc(鼻唇角点),mkb(颏底点);

计算公式:

脸长ll=meb-mkb=(780,283)-(799,1393)≈1110.85;

中庭长度zl=myt-mbc=(788,624)-(790,1034)≈409.7;

中庭长度特征值k=zl/ll≈0.37;

实例3:计算颧宽的方式:

如图7所示,图中标记出了如下特征点:

rn3(右鬓角凹点),ln3(左鬓角凹点),rq1(右颧骨高点),lq1(左颧骨高点),rw1(右颧骨下缘点),lw1(左颧骨下缘点);

颞宽nw=rn3-ln3=(360,620)-(1197,644)≈838.16;

脸宽lw=rq1-lq1=(362,789)-(1198,788)≈835.3;

外面颊宽ww=rw1-lw1=(397,972)-(1162,978)≈764.62;

颧宽特征值k=(nw+ww)/2/lw≈1;

下面以具体的几个实例来说明部分90°侧脸特征信息的计算过程:

实例4:计算鼻基底高的方式:

如图8所示,图中标记出了如下特征点:

ce1(侧对耳轮下脚缘点),cy3(侧下睑外缘顶点),cbj(侧鼻基底点),cc5(侧嘴角点);

ee线(ce1点与cy3点连线)长度:ee=ce1-cy3≈490.43;

el线(cy3点与cc5点连线);

bj线(cbj点到el线)长度:bj≈62.13;

鼻基底高特征值:k=bj/ee≈7.89;

实例5:计算鼻唇角的方式:

如图9所示,图中标记出了如下特征点:

cz1(侧鼻小柱中点),cz2(侧鼻唇角点),crz(侧人中中点);

鼻唇角:点cz1和点cz2的连线,与点cz2和点crz的连线右侧夹角a;

鼻唇角特征值:a≈104.14°。

下面以具体的几个实例来说明部分人脸45°侧脸特征信息的计算过程:

实例6:计算颧骨高度的方式:

如图10所示,图中标记出了如下特征点:

xq1(斜上颧点),xq2(斜颧骨拐点),xq4(斜苹果肌高点);

颧骨高度:点xq1和点xq2的连线,与点xq2和点xq4的连线左侧夹角a;

颧骨高度特征值:a≈158.74°;

实例7:计算苹果肌饱满度的方式:

如图11所示,图中标记出了如下特征点:

xq3(斜颧骨过渡点),xq4(斜苹果肌高点),xn1(斜内面颊起点);

苹果肌饱满度:点xq3和点xq4的连线,与点xq4和点xn1的连线左侧夹角a;

苹果肌饱满度特征值:a≈175.49°。

下面对训练特征识别模型过程进行简要说明:

步骤201,获取多个训练样本;训练样本上记载有人工标注出的特征点(人工标注特征点的方式可以参考上述表1-3中的位置);

步骤202,将随机的一个训练样本输入至未训练完成模型中,以确定训练结果;

步骤203,根据训练样本上人工标注出的特征点和训练结果中的特征点,计算训练结果所对应的损失函数;

步骤204,判断损失函数是否小于预设的阈值;若是,则执行步骤205,若否,则执行步骤206;

步骤205,将当前的未训练完成模型作为特征识别模型输出;

步骤206,根据损失函数对未训练完成模型进行训练,并重新执行步骤202。

与上述方法相对应的,本申请还提供了一种人脸相似度计算装置,包括:

获取模块,用于获取第一用户的第一二维脸部图像和第二用户的第一二维脸部图像;

第一确定模块,用于将第一二维脸部图像输入至特征识别模型,以确定第一用户的第一脸部特征点;

第二确定模块,用于将第二二维脸部图像输入至特征识别模型,以确定第二用户的第二脸部特征点;

第一计算模块,用于根据第一脸部特征点计算第一用户的第一人脸特征信息;

第二计算模块,用于根据第二脸部特征点计算第二用户的第二人脸特征信息;第一人脸特征信息和第二人脸特征信息的类型是相同的;

第三计算模块,用于根据第一人脸特征信息和第二人脸特征信息,计算第一用户和第二用户的相似度。

与上述方法相对应的,本申请还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行所述人脸相似度计算方法。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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