人脸识别方法、装置、芯片系统、存储介质及程序产品与流程
本技术涉及终端,尤其涉及人脸识别方法、装置、芯片系统、存储介质及程序产品。
背景技术:
1、为了提升用户的拍摄体验,终端设备通常采用人脸检测算法以精确识别人脸。这些算法能够快速且准确地在图像中定位人脸,并识别出面部特征点,如眼睛、鼻子和嘴巴等。在识别出人脸后,终端设备可以应用多种美化处理技术。这些技术可以帮助用户在拍摄时获得更清晰、更美观的照片,从而提升整体的拍摄体验。
2、然而,在一些场景下,人脸检测算法可能会误将这些假人脸识别为真人脸,并对其进行美化处理,导致用户体验较差。
技术实现思路
1、本技术实施例提供一种人脸识别方法、装置、芯片系统、存储介质及程序产品,应用于终端技术领域。在终端设备获取图像数据和拍摄距离后,终端设备可以基于图像数据确定图像数据中的人脸像素面积1,并基于拍摄距离确定人脸像素面积2,并基于人脸像素面积1与人脸像素面积2之间的差异,确定人脸识别结果,使得终端设备进行人脸识别时的准确性较高,有助于提升用户体验。
2、第一方面,本技术实施例提出一种人脸识别方法。该方法包括:接收第一操作,第一操作触发拍摄图像;基于第一操作,获取第一图像数据和第一距离,第一距离为终端设备与被摄目标之间的距离;基于第一图像数据,计算第一人脸面积;基于第一距离,计算第二人脸面积;基于第一人脸面积和第二人脸面积,得到目标结果,目标结果用于指示第一图像数据中的人脸是否为真人脸。
3、其中,第一操作可以理解为用户触发终端设备进行拍摄的操作。接收第一操作可以理解为终端设备检测到用户输入的第一操作,从而使得终端设备可响应于该操作进行图像拍摄。
4、第一操作例如可以为下文中的当终端设备显示图1中的界面(b)时,用户触发拍照控件104的输入操作,例如点击拍照控件104等。接收第一操作,例如可以为下文中的当终端设备显示图1中的界面(b)时,响应于触发拍照控件104的输入操作。
5、第一图像数据可以理解为由终端设备的摄像头获取的多张初始图像的图像数据或像素数据。第一距离可以理解为终端设备(或摄像头)与拍摄对象之间的距离。基于第一操作,获取第一图像数据和第一距离可以理解为基于用户触发终端设备进行拍摄的操作,终端设备获取多张初始图像的图像数据或像素数据,以及终端设备(或摄像头)与拍摄对象之间的距离。
6、第一图像数据例如可以为下文中的s301中的图像数据。第一距离例如可以为下文中的s301中的拍摄距离。基于第一操作,获取第一图像数据和第一距离例如可以为下文中的响应于用户触发终端设备进行拍摄的操作,终端设备获取图像数据和拍摄距离。
7、第一人脸面积可以理解为基于第一图像数据进行人脸识别后确定的人脸像素面积。第一人脸面积例如可以为下文中的人脸像素面积1。
8、第二人脸面积可以理解为基于第一距离计算的第二人脸面积。第二人脸面积例如可以为下文中的人脸像素面积2。
9、目标结果可以理解为基于第一人脸面积和第二人脸面积进行判断,以得到人脸识别的结果。目标结果包含真人脸和假人脸两种结果。基于第一人脸面积和第二人脸面积,得到目标结果可以理解为判断第一人脸面积和第二人脸面积之间的差异,得到人脸识别的结果。
10、目标结果例如可以为下文中的s308中的真假人脸检测结果。基于第一人脸面积和第二人脸面积,得到目标结果例如可以为下文中的将人脸像素面积1与人脸像素面积2进行对比,以确定新图像中的人脸是否是真人脸。
11、本技术的人脸识别方法,终端设备通过获取与被摄目标之间的第一距离,计算出一个合理的人脸面积(第二人脸面积),并将其与从第一图像数据中计算出的人脸面积(第一人脸面积)进行比较,以更准确地判断人脸的真实性。通过结合距离信息进行判断,该方法有效减少了仅依赖图像特征可能导致的误判,提高了检测的准确性和该人脸识别方法的鲁棒性,尤其在光线不足或背景复杂的情况下,距离信息提供了额外的判断依据。
12、在一种可能的实现方式中,计算第二人脸面积,包括:基于第一距离和标定公式,计算第二人脸面积,标定公式用于描述不同拍摄距离下的人脸面积。
13、其中,标定公式可以理解为描述在不同拍摄距离下,人脸面积的变化规律的公式。基于第一距离和标定公式,计算第二人脸面积可以理解为将拍摄距离代入标定公式,可以计算第二人脸面积。
14、基于第一距离和标定公式,计算第二人脸面积例如可以为下文中s304中的终端设备基于标定公式确定的人脸像素面积2。
15、这样,通过使用距离信息计算人脸面积,可以得到一个合理的人脸面积估算。
16、在一种可能的实现方式中,基于第一图像数据,计算第一人脸面积,包括:对第一图像数据进行人脸识别,确定第一部分图像,第一部分图像包括第一图像数据中的部分或全部人脸;基于第一部分图像,计算第一人脸面积。
17、其中,第一部分图像可以理解为第一图像数据中的人脸所对应的图像。对第一图像数据进行人脸识别,确定第一部分图像可以理解为对由终端设备的摄像头获取的多张初始图像的图像数据或像素数据进行人脸识别,确定第一图像数据中的人脸所对应的图像。
18、第一部分图像例如可以为下文中s302中的新图像。对第一图像数据进行人脸识别,确定第一部分图像例如可以为下文中的对图像数据的每张初始图像进行人脸识别,以生成新图像。
19、基于第一部分图像,计算第一人脸面积可以理解为基于第一图像数据中的人脸所对应的图像,计算其人脸像素面积。
20、基于第一部分图像,计算第一人脸面积例如可以为下文中s304中的终端设备计算新图像中的人脸像素面积1。
21、这样,通过从第一图像数据中提取第一部分图像并计算第一人脸面积,可以在无需外部信息的情况下初步判断人脸的大小。这为后续的人脸识别提供了基础。
22、在一种可能的实现方式中,确定第一部分图像,包括:基于第一图像数据进行人脸识别,确定第一区域,第一区域为通过人脸框选中的区域;对第一区域进行外扩处理,得到第二区域,第二区域所覆盖的范围大于等于第一区域所覆盖的范围;裁剪第二区域对应的图像,获得第一部分图像。
23、其中,第一区域可以理解为第一图像数据中的人脸对应的区域。基于第一图像数据进行人脸识别,确定第一区域可以理解为对第一图像数据进行人脸识别,以识别第一图像数据中的人脸对应的区域。
24、第一区域例如可以为下文中s301中的人脸框(图像数据中人脸所在的区域)。基于第一图像数据进行人脸识别,确定第一区域例如可以为下文中s301中的终端设备基于图像数据获取人脸框。
25、第二区域可以理解为对第一区域进行外扩处理后所形成的区域。对第一区域进行外扩处理,得到第二区域可以理解为对第一区域进行外扩处理,得到外扩第一区域后所形成的区域。
26、第二区域例如可以为下文中s302中的外扩后的人脸框。对第一区域进行外扩处理,得到第二区域例如可以为下文中s302中的终端设备对人脸框进行外扩,得到外扩后的人脸框。
27、裁剪第二区域对应的图像,获得第一部分图像可以理解为裁剪外扩处理后所形成的区域,得到第一部分图像。裁剪第二区域对应的图像,获得第一部分图像例如可以为下文中s302中的裁剪外扩后的人脸框所对应的图像区域,以生成新图像。
28、这样,通过人脸识别确定第一区域,可以精确定位人脸的位置。此外,对第一区域进行外扩处理,可以包含人脸周围的背景信息,有助于在复杂背景下更有效地进行人脸识别。
29、在一种可能的实现方式中,基于第一人脸面积和第二人脸面积,得到目标结果,包括:基于第一人脸面积和第二人脸面积,确定第一结果;基于第一结果,以及第二结果和/或第三结果,确定目标结果,第二结果是基于第一模型对第一图像数据进行真假人脸识别确定的,第三结果是基于第一图像数据中人脸关键点确定的。
30、其中,第一结果可以理解为由第一人脸面积和第二人脸面积确定的人脸识别结果。基于第一人脸面积和第二人脸面积,确定第一结果可以理解为判断第一人脸面积和第二人脸面积之间的差异,得到人脸识别的结果。
31、第一结果例如可以为下文中s305中的标签2。基于第一人脸面积和第二人脸面积,确定第一结果例如可以为下文中s305中的将人脸像素面积1与基于标定公式确定的人脸像素面积2进行对比,并根据对比结果输出标签2。
32、第二结果可以理解为对第一图像数据进行真假人脸识别确定的人脸识别结果。第三结果可以理解为基于第一图像数据中人脸关键点确定的人脸识别结果。基于第一结果,以及第二结果和/或第三结果,确定目标结果可以理解为基于第一人脸面积和第二人脸面积,确定的人脸识别结果,以及对第一图像数据进行真假人脸识别确定的人脸识别结果,和/或,基于第一图像数据中人脸关键点确定的人脸识别结果,确定最终的人脸识别结果。
33、第二结果例如可以为下文中s303中的标签1。第三结果例如可以为下文中s307中的标签3。基于第一结果,以及第二结果和/或第三结果,确定目标结果例如可以为下文中s308中基于标签1、标签2以及标签3输出真假人脸检测结果。
34、这样,通过结合多种结果,该人脸识别方法可以更有效地减少误判和漏判的情况。尤其是在复杂环境中,这种多层次、多角度的机制可以显著提升人脸识别的准确性和鲁棒性。
35、在一种可能的实现方式中,第二结果是基于第一模型对第一部分图像进行真假人脸识别确定的,第三结果是基于第一部分图像中人脸关键点确定的,第一部分图像包括第一图像数据中的部分或全部人脸。
36、这样,通过识别第一部分图像,可以减少不必要的计算负担,从而提升该人脸识别方法的运行效率。
37、在一种可能的实现方式中,第一图像数据为多张图像的图像数据,第一部分图像包括多张图像中每张图像中的人脸区域图像;该人脸识别方法还包括:确定多张人脸区域图像中第一人脸区域图像中的第一人脸关键点;确定多张人脸区域图像中第二人脸区域图像中的第二人脸关键点;基于第一人脸关键点与第二人脸关键点,确定第三结果。
38、其中,第一人脸关键点可以理解为第一人脸区域图像中的人脸关键点坐标。第二人脸关键点可以理解为第二人脸区域图像中的人脸关键点坐标。第一人脸关键点与第二人脸关键点可以理解为不同的人脸关键点坐标。基于第一人脸关键点与第二人脸关键点,确定第三结果可以理解为基于第一人脸区域图像中的人脸关键点坐标与第二人脸区域图像中的人脸关键点坐标,输出基于第一人脸关键点与第二人脸关键点确定的人脸识别结果。
39、第一人脸关键点和第二人脸关键点例如可以为下文中s307中的至少两张图像中的人脸关键点坐标。基于第一人脸关键点与第二人脸关键点,确定第三结果例如可以为下文中s307中的基于多张新图像中至少两张图像中的人脸关键点坐标判断面部是否有运动,并根据判断结果输出标签3。
40、这样,通过分析多张图像中的人脸区域,该人脸识别方法能够获得更全面的数据基础,为确定第三结果提供了更可靠的依据,从而提升了判断的准确性。
41、在一种可能的实现方式中,基于第一人脸关键点与第二人脸关键点,确定第三结果,包括:根据第一高度与第二高度之间的差异,确定第三结果,第一高度是基于第一人脸关键点确定的第一人脸五官的高度,第二高度是基于第二人脸关键点确定的第一人脸五官的高度。
42、其中,根据第一高度与第二高度之间的差异,确定第三结果可以理解为基于第一人脸关键点与第二人脸关键点确定的第一人脸五官的高度之间的差异,输出基于第一人脸关键点与第二人脸关键点的人脸识别结果。
43、根据第一高度与第二高度之间的差异,确定第三结果例如可以为下文中的根据眼睛的关键点坐标1与眼睛的关键点坐标2,判断眼睛处于运动状态,进而输出人脸识别结果。
44、这样,通过分析关键点高度的差异,能够更精确地识别人脸特征的细微变化,有助于提高人脸识别的准确性。
45、在一种可能的实现方式中,确定目标结果,包括:在第三结果用于指示第一图像数据中的人脸为真人脸的情况下,目标结果用于指示第一图像数据中的人脸为真人脸。
46、这样,通过仅在第三结果指示为真人脸时,将目标结果确认为真人脸,有助于提高识别的准确性。
47、在一种可能的实现方式中,在第三结果用于指示第一图像数据中的人脸为假人脸的情况下,基于第一结果和第二结果确定目标结果。
48、这样,即便第三结果显示为假人脸,仍可通过其他结果进行进一步验证,增强了该人脸识别方法在各种情况下的鲁棒性,确保了判断的可靠性。
49、在一种可能的实现方式中,基于第一结果和第二结果确定目标结果,包括:在第一结果用于指示第一图像数据中的人脸为假人脸的情况下,目标结果用于指示第一图像数据中的人脸为假人脸;在第一结果用于指示第一图像数据中的人脸为真人脸的情况下,目标结果与第二结果相同。
50、这样,结合初步筛选和进一步验证,不仅提升人脸识别的准确性和效率,还优化资源使用。
51、在一种可能的实现方式中,对第一部分图像进行编码,得到第二标签,包括:向第一模型输入第一部分图像,第一模型输出第二结果。
52、其中,第一模型可以理解为编码第一图像的模型。向第一模型输入第一部分图像,第一模型输出第二结果可以理解为向编码第一图像的模型输入第一部分图像,输出人脸识别结果。
53、第一模型例如可以为下文中的真假人脸分类模型。向第一模型输入第一部分图像,第一模型输出第二结果例如可以为下文中s303中向真假人脸分类模型输入新图像,真假人脸分类模型对该新图像进行识别,输出标签1。
54、这样,通过对图像进行编码并生成标签,提高了数据处理效率和模型精度。
55、在一种可能的实现方式中,获取训练样本,训练样本包含多个真人脸图像和多个假人脸图像;对训练样本中的人脸进行人脸识别,确定第三区域,第三区域为人脸所对应的区域;对第三区域进行外扩处理,得到第四区域,第四区域所覆盖的范围大于等于第三区域所覆盖的范围;裁剪第四区域对应的图像,获得多个第二部分图像;向初始模型输入多个第二部分图像,初始模型输出预测结果,预测结果用于指示多个第二图像中每个图像中的人脸为真人脸或假人脸;基于预测结果对初始模型进行调整,直至得到第一模型。
56、其中,训练样本可以理解为用于训练第一模型的输入数据。训练样本例如可以为下文中s401中的数据集。获取训练样本例如可以为下文中s401中的获取数据集。
57、第三区域可以理解为对训练样本进行人脸识别所确定的人脸区域。对训练样本中的人脸进行人脸识别,确定第三区域例如可以为下文中的通过使用人脸检测算法对图5中的(a)所示的图像进行人脸检测,可以识别出人脸区域。
58、第四区域可以理解为对第三区域进行外扩处理后所形成的区域。对第三区域进行外扩处理,得到第四区域可以理解为对第三区域进行外扩处理,得到外扩第三区域后所形成的区域。
59、对第三区域进行外扩处理,得到第四区域例如可以为下文中的对图5中的(b)所示的人脸框进行外扩,以包含更多的背景信息(如头发、耳朵等),外扩比例例如可以为20%,外扩的结果可以如图5中的(c)所示。
60、裁剪第四区域对应的图像,获得多个第二部分图像例如可以为下文中对图5中的(c)所示的外扩后的人脸框所覆盖的人脸区域进行裁剪,可以得到如图5中的(d)所示的预处理后的数据(即预处理后的真人脸和假人脸图像)。
61、向初始模型输入多个第二部分图像,初始模型输出预测结果例如可以为下文中的向未训练的真假人脸识别模型输入多个第二部分图像,未训练的真假人脸识别模型输出人脸识别结果。
62、基于预测结果对初始模型进行调整,直至得到第一模型例如可以为下文中的根据假人脸分类模型的预测结果调整真假人脸分类模型的参数,最终得到训练好的真假人脸分类模型。
63、这样,通过上述步骤,提高了人脸识别的准确性和模型的鲁棒性,丰富了训练数据,优化了模型精度。
64、第二方面,本技术实施例提供一种人脸识别装置,该人脸识别装置可以是终端设备,也可以是终端设备内的芯片或者芯片系统。该人脸识别装置可以包括显示单元和处理单元。当该人脸识别装置是终端设备时,该处显示单元可以是显示屏。该显示单元用于执行显示的步骤,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种人脸识别方法。当该人脸识别装置是终端设备时,该处理单元可以是处理器。该人脸识别装置还可以包括存储单元,该存储单元可以是存储器。该存储单元用于存储指令,该处理单元执行该存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种人脸识别方法。当该人脸识别装置是终端设备内的芯片或者芯片系统时,该处理单元可以是处理器。该处理单元执行存储单元所存储的指令,以使该终端设备实现第一方面或第一方面的任意一种可能的实现方式中描述的一种人脸识别方法。该存储单元可以是该芯片内的存储单元(例如,寄存器、缓存等),也可以是该终端设备内的位于该芯片外部的存储单元(例如,只读存储器、随机存取存储器等)。
65、示例性的,显示单元,用于显示获取的图像数据。
66、处理单元,用于对第一部分图像进行人脸识别。
67、第三方面,本技术实施例提供一种终端设备,包括处理器和存储器,存储器用于存储代码指令,处理器用于运行代码指令,以执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。
68、第四方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令在计算机上运行时,使得计算机执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。
69、第五方面,本技术实施例提供一种包括计算机程序的计算机程序产品,当计算机程序在计算机上运行时,使得计算机执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。
70、第六方面,本技术提供一种芯片或者芯片系统,该芯片或者芯片系统包括至少一个处理器和通信接口,通信接口和至少一个处理器通过线路互联,至少一个处理器用于运行计算机程序或指令,以执行第一方面或第一方面的任意一种可能的实现方式中描述的方法。其中,芯片中的通信接口可以为输入/输出接口、管脚或电路等。
71、在一种可能的实现中,本技术中上述描述的芯片或者芯片系统还包括至少一个存储器,该至少一个存储器中存储有指令。该存储器可以为芯片内部的存储单元,例如,寄存器、缓存等,也可以是该芯片的存储单元(例如,只读存储器、随机存取存储器等)。
72、第七方面,本技术提供又一种人脸识别装置,包括用于执行如第一方面中任一种可能实现方式中的方法的模块。
73、应当理解的是,本技术的第二方面至第七方面与本技术的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com