CN111104822B - 人脸朝向识别方法、装置及电子设备 - Google Patents

人脸朝向识别方法、装置及电子设备 Download PDF

Info

Publication number
CN111104822B
CN111104822B CN201811253176.2A CN201811253176A CN111104822B CN 111104822 B CN111104822 B CN 111104822B CN 201811253176 A CN201811253176 A CN 201811253176A CN 111104822 B CN111104822 B CN 111104822B
Authority
CN
China
Prior art keywords
face
specified
algorithm
angle
appointed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811253176.2A
Other languages
English (en)
Other versions
CN111104822A (zh
Inventor
张修宝
沈海峰
李剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to CN201811253176.2A priority Critical patent/CN111104822B/zh
Publication of CN111104822A publication Critical patent/CN111104822A/zh
Application granted granted Critical
Publication of CN111104822B publication Critical patent/CN111104822B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • G06V10/242Aligning, centring, orientation detection or correction of the image by image rotation, e.g. by 90 degrees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本申请提供了一种人脸朝向识别方法、装置及电子设备,其中,该方法包括:使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置;使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置;根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果。

Description

人脸朝向识别方法、装置及电子设备
技术领域
本发明涉及图像处理领域,具体而言,涉及一种人脸朝向识别方法、装置及电子设备。
背景技术
目前基于固定摄像头的人脸识别技术在很多领域得到了应用,而随着移动设备的拍照功能的增强,基于移动端的人脸识别技术也具有了越来越多的应用需求。其中,由于用户拍照习惯可能不同,获取的图像中人脸朝向也可能不同,需要对其进行有效的识别,才能使人脸检测和识别更准确。
当前的人脸朝向识别,通过神经网络的方法,需要大量的训练数据,同时需要大量的人员进行标注,且识别过程较慢,不利于实时应用场景。
发明内容
有鉴于此,本发明实施例的目的在于提供一种人脸朝向识别方法、装置及电子设备。
第一方面,本申请实施例提供了一种人脸朝向识别方法,包括:
使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置;
使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置;
根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;
将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述使用第二算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置的步骤,包括:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像;
使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点;
获得所述人脸特征点中的指定人脸部位的特征点;
根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点的步骤,包括:
对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
Cx=ax1x1+ax2x2+...+axnxn
Cy=ay1x1+ay2x2+...+aynxn
ax1+ax2+...+axn=1,ay1+ay2+...+ayn=1;
其中,ax1、ax2、...、axn表示各个特征点在横坐标下的权重;ay1、ay2、...、ayn表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;(Cx,Cy)表示所述中心点的坐标;(xi,yi)表示所述指定人脸部位的第i个特征点的坐标。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述指定人脸部位包括眼睛,所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述指定人脸部位包括鼻子,所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;
通过上述方式计算得到每个指定角度下的检测误差。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置的步骤,包括:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;
使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;
获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述根据所述检测误差确定出误差在限定范围内的目标指定角度的步骤,包括:
从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
结合第一方面,本申请实施例提供了第一方面的一种可能的实施方式,其中:所述多个指定角度包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。
第二方面,本申请实施例还提供一种人脸朝向识别装置,包括:
第一计算模块,用于使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置;
第二计算模块,用于使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置;
误差计算模块,用于根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;
角度确定模块,用于根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;
朝向匹配模块,用于将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述第二计算模块,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像;
使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点;
获得所述人脸特征点中的指定人脸部位的特征点;
根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述第二计算模块,还用于:
对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
Cx=ax1x1+ax2x2+...+axnxn
Cy=ay1x1+ay2x2+...+aynxn
ax1+ax2+...+axn=1,ay1+ay2+...+ayn=1;
其中,ax1、ax2、...、axn表示各个特征点在横坐标下的权重;ay1、ay2、...、ayn表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;(Cx,Cy)表示所述中心点的坐标;(xi,yi)表示所述指定人脸部位的第i个特征点的坐标。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述误差计算模块,还用于:
计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述指定人脸部位包括鼻子,所述误差计算模块,还用于:
计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述误差计算模块,还用于:
计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;
通过上述方式计算得到每个指定角度下的检测误差。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述第一计算模块,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;
使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;
获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述角度确定模块,还用于:
从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
结合第二方面,本申请实施例提供了第二方面的一种可能的实施方式,其中:所述多个指定角度包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面的第X种中任一种可能的实施方式中的方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面的任一种可能的实施方式中方法的步骤。
本申请实施例提供的人脸朝向识别方法、装置及电子设备,通过将人脸图像沿着指定角度旋转后,再对人脸图像中的指定人脸部位的误差进行检测从而得到一个目标指定角度,而进一步地可以得到目标指定角度对应匹配的人脸朝向,与现有技术中的通过神经网络的识别,需要前期需要大量的标注数据,需要较长的识别时间相比,本申请能够实现较快的识别。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的电子设备的方框示意图。
图2为本发明实施例提供的人脸朝向识别方法的流程图。
图3a示出了一个实例中包括人脸部分的图像的第一朝向的示意图。
图3b示出了一个实例中包括人脸部分的图像的第二朝向的示意图。
图4为本发明实施例提供的人脸朝向识别方法的步骤S202的详细流程图。
图5示出了一个实例中包括人脸部分的图像带有特征点标记的示意图。
图6为本发明实施例提供的人脸朝向识别方法的步骤S203的详细流程图。
图7为本发明实施例提供的人脸朝向识别装置的功能模块示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
目前关于人脸识别的技术发展,越来越多的领域都会使用到人脸识别技术,例如,安检领域、打卡领域、修图等。现有的安检领域或打卡领域多是基于固定的摄像头获得人脸图像,由于摄像头的方向固定,因此得到的人脸照片一般朝向一指定方向,可以直接对采集到的人脸图像进行进一步地检测,是否是本人等。但是在修图领域或者人物搜索中采集到的人脸图像可能不是正向的,或者使用移动设备采集到的人脸图像也可能不是正向的,则需要对人脸图像的当前的朝向进行识别。
为便于对本实施例进行理解,首先对执行本申请实施例所公开的一种人脸朝向识别方法的电子设备进行详细介绍。
实施例一
如图1所示,是一电子设备100的方框示意图。所述电子设备100包括存储器111、存储控制器112、处理器113、外设接口114、输入输出单元115、显示单元116。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对电子设备100的结构造成限定。例如,电子设备100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。本实施例所述的电子设备100可以是个人计算机、图像处理服务器、车载设备或者移动电子设备等具有图像处理能力的计算设备。
存储器111、存储控制器112、处理器113、外设接口114、输入输出单元115及显示单元116各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述存储器111中存储至少一个以软件或固件(Firmware)的形式的软件功能模块,或所述电子设备100的操作系统(Operating System,OS)中固化有软件功能模块。所述处理器113用于执行存储器中存储的可执行模块。
其中,所述存储器111可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器111用于存储程序,所述处理器113在接收到执行指令后,执行所述程序,本发明实施例任一实施例揭示的过程定义的电子设备100所执行的方法可以应用于处理器113中,或者由处理器113实现。
处理器113可能是一种集成电路芯片,具有信号的处理能力。上述的处理器113可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
外设接口114将各种输入/输入装置耦合至处理器113以及存储器111。在一些实施例中,外设接口114,处理器113以及存储控制器112可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
输入输出单元115用于提供给用户输入数据。所述输入输出单元115可以是,但不限于,鼠标和键盘等。
显示单元116在所述电子设备100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据给用户参考。在本实施例中,所述显示单元可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器进行计算和处理。
图像采集单元118可以拍摄用户期望的图像(例如照片、视频等),并且将所拍摄的图像存储在所述存储装置104中以供其它组件使用。
进一步地,电子设备100是车载设备、个人电脑时,所述电子设备100还可以包括定位模块。所述定位模块可以是GPS模块,用于接收GPS卫星播报的定位信号,并根据定位信号计算出自身的位置。上述位置例如可用经度、纬度以及海拔高度来表示。可以理解,实现定位的方式并不限于GPS系统。例如,其他可用的卫星定们系统还包括北斗卫星定位系统(Compass Navigation Satellite System,CNSS)或者格洛纳斯系统(Global NavigationSatellite System,GLONASS)。此外,定位也并不限于采用卫星定位技术,例如,还可采用无线定位技术,例如基于无线基站的定位技术或者无线热点的定位技术。此时,GPS模块可被替换成相应的模块,或者直接经由处理器执行特定的定位程序来实现。
实施例二
请参阅图2,是本发明实施例提供的人脸朝向识别方法的流程图。下面将对图2所示的具体流程进行详细阐述。
步骤S201,使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置。
本实施例中,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置。
所述多个指定角度可以包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。当然,也可以包括顺时针30°、顺时针60°、顺时针100°及顺时针200°等其它角度。具体可以根据获得的待识别人脸图像可能的偏转角度设置指定角度的数值。当然,还可以按照逆时针方向设置指定角度。
在一个实例中,如图3a和3b所示,图3a和图3b示出了一个实例中包括人脸部分的图像的两个朝向的示意图。其中图3a的图像表示朝左偏转的图像,将图3a中的图像顺时针转动90°可以得到正向的图像,也就是图3b所示的图像。
下面以表格的形式呈现出图像的不同朝向与该朝向的图像需要转向正向的图像所需向顺时针方向调整角度的对应关系,表1:
图像实际朝向 正向 向右 向下 向左
旋转至正向所需角度 90° 180° 270°
其中,旋转至正向所需角度可对应步骤S201中所使用的指定角度。
当然,图像还可以有更多的朝向,则与之对应可以有更多对应的旋转至正向所需角度,例如,图像朝左下,则对应的所需角度是135°,在此不再一一列举。
步骤S201可以包括:将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
其中,五官特征点可以至少表示出人脸的眼、嘴、鼻子的位置。
当然,第一算法也可以是可以识别出人脸中更多特征点的算法,例如,可以是识别出人脸中的八十个特征点的人脸识别算法。
步骤S202,使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置。
本实施例中,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置。
在一种实施方式中,如图4所示,步骤S202可包括步骤S2021-S2024,具体描述如下。
步骤S2021,将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像。
第一指定角度可以是沿顺时针方向的90°。
步骤S2022,使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点。
其中,人脸识别算法可以是任意能够识别出人脸上的特征点的算法。例如,可以是Dlib库实现人脸的68个特征点人脸的提取识别。当然,也可以使用其它的人脸识别算法得到更多或者更少数量的人脸特征点。
步骤S2023,获得所述人脸特征点中的指定人脸部位的特征点。
以指定人脸部位是眼睛为了进行描述,如图5所示,可以得到两只眼睛中的特征点。其中包括左眼的六个特征点和右眼的六个特征点。
步骤S2024,根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置。
其中,中心点可以表示对应指定人脸部位的中心位置或最突出的位置。例如,若指定人脸部位是嘴巴,中心点可以表示嘴巴中间点;再例如,若指定人脸部位是鼻子,则中心点可以表示鼻尖;再例如,若指定人脸部位是眼睛,则中心点可以包括两个,分别是左眼眼球中点和右眼眼球中点。
在一种实施方式中,可以对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
进一步地,所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
Cx=ax1x1+ax2x2+...+axnxn
Cy=ay1x1+ay2x2+...+aynxn
ax1+ax2+...+axn=1,ay1+ay2+...+ayn=1;
其中,ax1、ax2、...、axn表示各个特征点在横坐标下的权重;ay1、ay2、...、ayn表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;(Cx,Cy)表示所述中心点的坐标;(xi,yi)表示所述指定人脸部位的第i个特征点的坐标。
本实施例中,ax1、ax2、...、axn可以根据所取的指定人脸部位的不同进行不同的调整。
在一实施方式中,指定人脸部位是眼睛时,ax1、ax2、...、axn可以均取相等的值,也就是ay1、ay2、...、ayn可以均取相等的值,也就是/>
在另一实施方式中,指定人脸部位是鼻子时,靠近鼻尖的特征点可以设置较大的权重,远离鼻尖的特征点可以设置较小的权重。
再一种实施方式中,指定人脸部位是嘴巴时,靠近嘴中心位置的特征点可以设置较大的权重,远离嘴中心位置的特征点可以设置较小的权重。
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
本申请提供的两种算法,第一算法和第二算法主要是为了不同的算法对人脸中的指定人脸部位的位置进行识别计算,并不对第一算法和第二算法本身进行限定,本领域的技术人员可以根据实际计算量的需求进行选择。
可以理解的是,本实施例中并不对第一组指定人脸部位位置和第二组指定人脸部位位置计算顺序为限,可以先计算第一组指定人脸部位位置,也可以先计算第二组指定人脸部位位置,当然还可以同时输入两个不同的算法分别计算。
步骤S203,根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差。
步骤S203可以包括:计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;通过上述方式计算得到每个指定角度下的检测误差。
具体地,可以通过以下公式计算得到每个指定角度下的第一算法与第二算法的计算结果之间的检测误差:
d=[(x1-x2)2+(y1-y2)2]1/2
其中,d表示一指定角度下的第一算法与第二算法的计算结果之间的检测误差;(x1,y1)表示一指定角度在第一算法下得到的指定人脸部位的位置;(x2,y2)表示一指定角度在第二算法下得到的指定人脸部位的位置。
本实施例中,指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
下面以眼睛为例进行说明,如图6所示,步骤S203的实现,具体可包括以下步骤:
步骤S2031,计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
步骤S2032,计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
步骤S2033,对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
在一个实例中可以,利用以下公式,计算两种检测方法在该旋转角度下的误差为Err_angle:
Err_angle=(el+er)/2;
其中,el表示左眼检测误差;er表示右眼检测误差。
可以理解的是,左眼检测误差和右眼检测误差对应的权重可以另外设置,具体可以根据需求取值。
下面以鼻子为例进行说明,步骤S203的实现,具体可包括:计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
步骤S204,根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度。
步骤S204可以包括:从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
在一个实例中,以上述的表1所示的旋转至正向所需角度对应的多个指定角度为例进行说明。若在0°、90°、180°及270°计算得到的检测误差分别为Err1、Err2、Err3、Err4。其中,Err2的值最小,则将Err2对应的指定角度90°作为目标指定角度。
步骤S205,将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果。
进一步地,以上面的实例为例进行描述,若将Err2对应的指定角度90°作为目标指定角度,则对应表1可以得到90°对应的朝向向左作为识别结果。
本申请实施例中所提到的第一指定角度、第二指定角度、第三指定角度及第四指定角度可以是指相同的角度,也可以是指不同的角度,上述的第一、第二、第三、第四只是为了区别不同的描述情况对角度的描述。
进一步地,可以将待识别人脸图像根据识别结果进行转动得到一正向的人脸图像。
实施例三
基于同一申请构思,本申请实施例中还提供了与人脸朝向识别方法对应的人脸朝向识别装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述人脸朝向识别方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
请参阅图7,是本发明实施例提供的人脸朝向识别装置的功能模块示意图。本实施例中的人脸朝向识别装置的各个模块用于执行实施例二中的方法中的各个步骤。所述人脸朝向识别装置包括:第一计算模块301、第二计算模块302、误差计算模块303、角度确定模块304、朝向匹配模块305;其中,
第一计算模块301,用于使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置;
第二计算模块302,用于使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置;
误差计算模块303,用于根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;
角度确定模块304,用于根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;
朝向匹配模块305,用于将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果。
一种可能的实施方式中,所述第二计算模块302,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像;
使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点;
获得所述人脸特征点中的指定人脸部位的特征点;
根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
一种可能的实施方式中,所述第二计算模块302,还用于:
对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
一种可能的实施方式中,所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
Cx=ax1x1+ax2x2+...+axnxn
Cy=ay1x1+ay2x2+...+aynxn
ax1+ax2+...+axn=1,ay1+ay2+...+ayn=1;
其中,ax1、ax2、...、axn表示各个特征点在横坐标下的权重;ay1、ay2、...、ayn表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;(Cx,Cy)表示所述中心点的坐标;(xi,yi)表示所述指定人脸部位的第i个特征点的坐标。
一种可能的实施方式中,所述误差计算模块303,还用于:
计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
一种可能的实施方式中,所述指定人脸部位包括鼻子,所述误差计算模块303,还用于:
计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
一种可能的实施方式中,所述误差计算模块303,还用于:
计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;
通过上述方式计算得到每个指定角度下的检测误差。
一种可能的实施方式中,所述第一计算模块301,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;
使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;
获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
一种可能的实施方式中,所述角度确定模块304,还用于:
从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
一种可能的实施方式中,所述指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
一种可能的实施方式中,所述多个指定角度包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。
此外,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的方法的步骤。
本申请实施例所提供的人脸朝向识别方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行上述方法实施例中所述的人脸朝向识别方法的步骤,具体可参见上述方法实施例,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (22)

1.一种人脸朝向识别方法,其特征在于,包括:
使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置;
使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置;其中,所述第一算法与所述第二算法不同,所述指定人脸部位相同;
根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;
将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果;
所述根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度的步骤,包括:
从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
2.如权利要求1所述的人脸朝向识别方法,其特征在于,所述使用第二算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置的步骤,包括:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像;
使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点;
获得所述人脸特征点中的指定人脸部位的特征点;
根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
3.如权利要求2所述的人脸朝向识别方法,其特征在于,所述根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点的步骤,包括:
对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
4. 如权利要求3所述的人脸朝向识别方法,其特征在于, 所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
,/>
其中,表示各个特征点在横坐标下的权重;/>表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;/>表示所述中心点的坐标;/>表示所述指定人脸部位的第i个特征点的坐标,i为小于等于n的正整数。
5.如权利要求1所述的人脸朝向识别方法,其特征在于,所述指定人脸部位包括眼睛,所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
6.如权利要求1所述的人脸朝向识别方法,其特征在于,所述指定人脸部位包括鼻子,所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
7.如权利要求1所述的人脸朝向识别方法,其特征在于,所述根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差的步骤,包括:
计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;
通过上述方式计算得到每个指定角度下的检测误差。
8.如权利要求1所述的人脸朝向识别方法,其特征在于,所述使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第一组指定人脸部位位置的步骤,包括:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;
使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;
获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
9.如权利要求1所述的人脸朝向识别方法,其特征在于,所述指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
10.如权利要求1-9任意一项所述的人脸朝向识别方法,其特征在于,所述多个指定角度包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。
11.一种人脸朝向识别装置,其特征在于,包括:
第一计算模块,用于使用第一算法计算得到待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的多个第一组指定人脸部位位置,第一组指定人脸部位位置包括在每个指定角度下使用第一算法得到的指定人脸部位的位置;
第二计算模块,用于使用第二算法计算得到所述待识别人脸图像在沿着多个指定角度旋转后,在每个指定角度对应位置下的第二组指定人脸部位位置,第二组指定人脸部位位置包括在每个指定角度下使用第二算法得到的指定人脸部位的位置;其中,所述第一算法与所述第二算法不同,所述指定人脸部位相同;
误差计算模块,用于根据所述第一组指定人脸部位位置和所述第二组指定人脸部位位置计算得到在每个指定角度下的第一算法与第二算法的计算结果之间的检测误差;
角度确定模块,用于根据每个所述指定角度对应的所述检测误差确定出误差在限定范围内的目标指定角度;
朝向匹配模块,用于将所述目标指定角度对应匹配的人脸朝向作为所述待识别人脸图像的识别结果;
所述角度确定模块,还用于:
从每个所述指定角度对应的所述检测误差确定出误差最小的目标指定角度。
12.如权利要求11所述的人脸朝向识别装置,其特征在于,所述第二计算模块,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第一旋转图像;
使用第二算法中的人脸识别算法对所述第一旋转图像进行识别,得到该第一旋转图像的人脸特征点;
获得所述人脸特征点中的指定人脸部位的特征点;
根据所述第二算法中的中心算法计算所述指定人脸部位对应的多个特征点对应的所述指定人脸部位的中心点,将所述中心点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第二组指定人脸部位位置。
13.如权利要求12所述的人脸朝向识别装置,其特征在于,所述第二计算模块,还用于:
对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点。
14. 如权利要求13所述的人脸朝向识别装置,其特征在于, 所述对所述指定人脸部位对应的多个特征点进行加权计算得到所述指定人脸部位的中心点通过以下公式计算得到:
,/>
其中,表示各个特征点在横坐标下的权重;/>表示各个特征点在y坐标下的权重;n表示所述指定人脸部位对应的特征点的数量;/>表示所述中心点的坐标;/>表示所述指定人脸部位的第i个特征点的坐标,i为小于等于n的正整数。
15.如权利要求11所述的人脸朝向识别装置,其特征在于,所述误差计算模块,还用于:
计算在第二指定角度下的所述第一组指定人脸部位位置对应的左眼位置和第二组指定人脸部位位置对应的左眼位置的左眼检测误差;
计算在第二指定角度下的所述第一组指定人脸部位位置对应的右眼位置和第二组指定人脸部位位置对应的右眼位置的右眼检测误差;
对所述左眼检测误差和所述右眼检测误差进行加权计算得到在所述第二指定角度下的第一算法与第二算法的计算结果之间的检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
16.如权利要求11所述的人脸朝向识别装置,其特征在于,所述指定人脸部位包括鼻子,所述误差计算模块,还用于:
计算在第三指定角度下的所述第一组指定人脸部位位置对应的鼻尖位置和第二组指定人脸部位位置对应的鼻尖位置的鼻尖检测误差;
根据上述步骤计算得到其它指定角度下的第一算法与第二算法的计算结果之间的检测误差。
17.如权利要求11所述的人脸朝向识别装置,其特征在于,所述误差计算模块,还用于:
计算在第四指定角度下的所述第一组指定人脸部位位置对应的第三位置和第二组指定人脸部位位置对应的第四位置之间的欧几里德距离,将所述欧几里德距离作为所述第四指定角度下的检测误差;
通过上述方式计算得到每个指定角度下的检测误差。
18.如权利要求11所述的人脸朝向识别装置,其特征在于,所述第一计算模块,还用于:
将所述待识别人脸图像按照第一指定角度进行旋转,得到第二旋转图像;
使用第一算法对所述第二旋转图像进行识别,得到该第二旋转图像的各个五官特征点;
获得所述五官特征点中的指定人脸部位的五官特征点,将该五官特征点作为所述第一指定角度下的指定人脸部位位置;
通过上述步骤得到每一个指定角度下的指定人脸部位位置,从而得到第一组指定人脸部位位置。
19.如权利要求11所述的人脸朝向识别装置,其特征在于,所述指定人脸部位包括眼睛、鼻子、嘴巴中的任意至少一种。
20.如权利要求11-19任意一项所述的人脸朝向识别装置,其特征在于,所述多个指定角度包括:顺时针0°、顺时针90°、顺时针180°及顺时针270°中的任意组合的角度。
21.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至10任一所述的方法的步骤。
22.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至10任一所述的方法的步骤。
CN201811253176.2A 2018-10-25 2018-10-25 人脸朝向识别方法、装置及电子设备 Active CN111104822B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811253176.2A CN111104822B (zh) 2018-10-25 2018-10-25 人脸朝向识别方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811253176.2A CN111104822B (zh) 2018-10-25 2018-10-25 人脸朝向识别方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111104822A CN111104822A (zh) 2020-05-05
CN111104822B true CN111104822B (zh) 2023-09-19

Family

ID=70418303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811253176.2A Active CN111104822B (zh) 2018-10-25 2018-10-25 人脸朝向识别方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111104822B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005059834A1 (en) * 2003-12-15 2005-06-30 Isis Innovation Limited Estimation of orientation of image features
JP2012123515A (ja) * 2010-12-07 2012-06-28 Denso Corp 顔向き検出装置
CN106558027A (zh) * 2015-09-30 2017-04-05 株式会社理光 用于估计相机姿态中的偏离误差的算法
WO2018170864A1 (zh) * 2017-03-20 2018-09-27 成都通甲优博科技有限责任公司 一种人脸识别跟踪方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6897082B2 (ja) * 2016-12-13 2021-06-30 富士通株式会社 顔向き推定用コンピュータプログラム、顔向き推定装置及び顔向き推定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005059834A1 (en) * 2003-12-15 2005-06-30 Isis Innovation Limited Estimation of orientation of image features
JP2012123515A (ja) * 2010-12-07 2012-06-28 Denso Corp 顔向き検出装置
CN106558027A (zh) * 2015-09-30 2017-04-05 株式会社理光 用于估计相机姿态中的偏离误差的算法
WO2018170864A1 (zh) * 2017-03-20 2018-09-27 成都通甲优博科技有限责任公司 一种人脸识别跟踪方法

Also Published As

Publication number Publication date
CN111104822A (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
CN109871909B (zh) 图像识别方法及装置
EP3309751B1 (en) Image processing device, method, and program
CN109059906B (zh) 车辆定位方法、装置、电子设备、存储介质
CN107194361B (zh) 二维姿势检测方法及装置
CN108932456B (zh) 人脸识别方法、装置和系统及存储介质
CN111046125A (zh) 一种视觉定位方法、系统及计算机可读存储介质
Niu et al. Resource-efficient and automated image-based indoor localization
CN109766882B (zh) 人体光点的标签识别方法、装置
US20140219569A1 (en) Image recognition system and method for identifying similarities in different images
CN111459269A (zh) 一种增强现实显示方法、系统及计算机可读存储介质
CN112966711A (zh) 基于卷积神经网络的指针式仪表示数识别方法及系统
CN110057355B (zh) 一种室内定位方法、装置、系统及计算设备
CN112991441A (zh) 相机定位方法、装置、电子设备及存储介质
EP2927635B1 (en) Feature set optimization in vision-based positioning
CN111104822B (zh) 人脸朝向识别方法、装置及电子设备
CN112907663A (zh) 定位方法、计算机程序产品、装置及系统
Wang et al. Camera calibration method based on Pascal’s theorem
CN111695405B (zh) 一种狗脸特征点的检测方法、装置、系统及存储介质
WO2018089081A1 (en) System and method associated with object verification
CN110910337A (zh) 一种船只航迹融合方法、装置及终端设备
CN115164900A (zh) 一种基于全向相机的城市环境下视觉辅助导航方法及系统
CN109871857A (zh) 用于识别手势的方法和装置
CN115393838A (zh) 指针式仪表读数识别方法、装置、电子设备及存储介质
CN114674328A (zh) 地图生成方法、装置、电子设备、存储介质、及车辆
TWI522976B (zh) 地圖標記方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant