CN109819316A - 处理视频中人脸贴纸的方法、装置、存储介质及电子设备 - Google Patents

处理视频中人脸贴纸的方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN109819316A
CN109819316A CN201811627792.XA CN201811627792A CN109819316A CN 109819316 A CN109819316 A CN 109819316A CN 201811627792 A CN201811627792 A CN 201811627792A CN 109819316 A CN109819316 A CN 109819316A
Authority
CN
China
Prior art keywords
paster
data
face
matrix
distance
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.)
Granted
Application number
CN201811627792.XA
Other languages
English (en)
Other versions
CN109819316B (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.)
Douyin Vision Co Ltd
Douyin Vision Beijing Co Ltd
Original Assignee
Beijing ByteDance Network Technology 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 ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201811627792.XA priority Critical patent/CN109819316B/zh
Publication of CN109819316A publication Critical patent/CN109819316A/zh
Application granted granted Critical
Publication of CN109819316B publication Critical patent/CN109819316B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

本发明实施例公开了一种处理视频中人脸贴纸的方法、装置、存储介质及电子设备,方法包括:通过预定方式对视频中的人脸进行识别,以确定人脸数据;获取已选定贴纸的图片列表数据;根据图片列表数据和人脸数据确定贴纸计算矩阵;根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。

Description

处理视频中人脸贴纸的方法、装置、存储介质及电子设备
技术领域
本发明涉及互联网领域,特别涉及一种处理视频中人脸贴纸的方法、装置、存储介质及电子设备。
背景技术
随着科技的发展,视频通话已经越来越普及,也衍生出了很多应用场景。在某些应用场景下我们希望可以对人脸进行处理,以增强视频互动效果,比如在教育行业,可以给孩子脸上贴上一些有趣的贴纸,以增加孩子的注意力和课堂互动气氛。
在实现本发明的过程中,发明人发现现有的技术至少存在以下缺陷:上述方法在客户端中实现时,可以使用比较丰富的GPU进行处理,比较容易实现,但在web浏览器中由于无法通过GPU协助工作,因此无法实现视频中动态的为用户粘贴贴纸,用户体验较差。
发明内容
有鉴于此,本发明实施例提出了一种处理视频中人脸贴纸的方法、装置、存储介质及电子设备,用以解决现有技术的如下问题:在web浏览器中,无法实现为视频中用户动态的粘贴贴纸,用户体验较差。
一方面,本发明实施例提出了一种处理视频中人脸贴纸的方法,包括:通过预定方式对视频中的人脸视频中的人脸进行识别,以确定人脸数据;获取已选定贴纸的图片列表数据;根据所述图片列表数据和所述人脸数据确定贴纸计算矩阵;根据所述贴纸计算矩阵将所述贴纸进行调整,以匹配到识别到的所述人脸对应的部位。
另一方面,本发明实施例提出了一种处理视频中人脸贴纸的装置,包括:识别模块,用于通过预定方式对视频中的人脸进行识别,以确定人脸数据;第一获取模块,用于获取已选定贴纸的图片列表数据;确定模块,用于根据所述图片列表数据和所述人脸数据确定贴纸计算矩阵;匹配模块,用于根据所述贴纸计算矩阵将所述贴纸进行调整,以匹配到识别到的所述人脸对应的部位。
另一方面,本发明实施例提出了一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现本发明任意实施例提供的方法。
另一方面,本发明实施例提出了一种电子设备,至少包括存储器、处理器,所述存储器上存储有计算机程序,所述处理器在执行所述存储器上的计算机程序时实现本发明任意实施例提供的方法。
本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。
附图说明
图1为本发明第一实施例提供的处理视频中人脸贴纸的方法的流程图;
图2为本发明第二实施例提供的处理视频中人脸贴纸的方法的流程图;
图3为本发明第三实施例提供的处理视频中人脸贴纸的装置的结构示意图;
图4为本发明第五实施例提供的电子设备的结构示意图。
具体实施方式
为了使得本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外定义,本发明使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本发明实施例的以下说明清楚且简明,本发明省略了已知功能和已知部件的详细说明。
本发明第一实施例提供了一种处理视频中人脸贴纸的方法,该方法的流程如图1所示,包括步骤S101至S104:
S101,通过预定方式对视频中的人脸进行识别,以确定人脸数据。
由于web浏览器有着客户端无法比拟的便利性,人们可以随时随地打开网页参与视频互动,因此,web浏览器中也是需要融入人脸贴纸的。
由于视频是存在网页中的,其无法采用客户端渲染时使用GPU的方式实现贴纸效果,因此,本发明实施例提供了一种在web浏览器可以实现贴纸效果的方案。该方案在实现时,需要先对人脸进行识别,进而才能够获取识别到的人脸的相关数据。
在对人脸进行识别时,可以采用webAssembly编写可作为预定方式的预定程序,当通过该预定程序识别出人脸后,就可以确定人脸数据,例如用于匹配贴纸的人脸关键点数据,当然,为了更好的让贴纸和人脸完美匹配,还可以进一步获取人脸三维旋转角度数据等数据,本领域技术人员可以根据实际需求进行获取。
S102,获取已选定贴纸的图片列表数据。
每个贴纸都由多个图片组成,且各个图片的不同位置组合确定了贴纸的样式,而且该贴纸还是需要和人脸匹配的贴纸,因此,也有一些用于匹配的数据,当然还可能存在一些其他用于实现贴纸效果的数据,这些数据的集合则为图片列表数据。
S103,根据图片列表数据和人脸数据确定贴纸计算矩阵。
当已经清楚人脸的各种数据和贴纸的各种数据后,就可以根据知晓的这些数据来构造人脸和贴纸相关联的矩阵了。例如,知晓了贴纸的原始大小和与人脸的匹配点,则可以通过计算确定贴纸需要调整的大小;知晓了人脸的旋转角度,也知道贴纸的初始角度,则可以通过计算确定贴纸需要调整的角度等。当贴纸需要调整的数据都确定了,就可以确定贴纸计算矩阵。
S104,根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。
在贴纸与人脸匹配时,直接使用确定的贴纸计算矩阵即可。
本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。
本发明第二实施例提供了一种处理视频中人脸贴纸的方法,该方法的流程如图2所示,包括步骤S201至S207:
S201,获取音视频数据,将音视频数据拆分为音频数据和视频数据,并获取拆分后的视频数据。
S202,通过预定方式对视频中的人脸视频中的人脸进行识别,以确定人脸数据。
由于web浏览器有着客户端无法比拟的便利性,人们可以随时随地打开网页参与视频互动,因此,web浏览器中也是需要融入人脸贴纸的。
但由于视频是存在网页中的,其无法采用客户端渲染时使用GPU的方式实现贴纸效果,因此,本发明实施例提供了一种在web浏览器可以实现贴纸效果的方案。该方案在实现时,需要先对人脸进行识别,进而才能够获取识别到的人脸的相关数据。
在对人脸进行识别时,可以采用webAssembly编写作为预定方式的预定程序,当通过该预定程序识别出人脸后,就可以确定人脸数据,例如用于匹配贴纸的人脸关键点数据,当然,为了更好的让贴纸和人脸完美匹配,还可以进一步获取人脸三维旋转角度数据等数据,本领域技术人员可以根据实际需求进行获取。
S203,获取已选定贴纸的图片列表数据。
每个贴纸都由多个图片组成,且各个图片的不同位置组合确定了贴纸的样式,而且该贴纸还是需要和人脸匹配的贴纸,因此,也有一些用于匹配的数据,当然还可能存在一些其他用于实现贴纸效果的数据,这些数据的集合则为图片列表数据。
S204,根据图片列表数据和人脸数据确定贴纸计算矩阵。
当已经清楚人脸的各种数据和贴纸的各种数据后,就可以根据知晓的这些数据来构造人脸和贴纸相关联的矩阵了。例如,知晓了贴纸的原始大小和与人脸的匹配点,则可以通过计算确定贴纸需要调整的大小;知晓了人脸的旋转角度,也知道贴纸的初始角度,则可以通过计算确定贴纸需要调整的角度等。当贴纸需要调整的数据都确定了,就可以确定贴纸计算矩阵。
在根据图片列表数据和人脸数据确定贴纸计算矩阵时,具体过程可以如下:根据图片列表数据确定贴纸的预定挂载点信息,根据人脸数据确定人脸关键点信息;根据全部预定挂载点信息计算全部预定挂载点的中心点的第一中心点数据;计算各个预定挂载点之间的第一距离、第一相对角度;根据全部人脸关键点信息计算全部人脸关键点的中心点的第二中心点数据;计算各个人脸关键点之间的第二距离、第二相对角度;根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵。
具体根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵时,可以先生成多个矩阵,具体包括如下过程:
以第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;计算各个第一距离与第一距离对应的第二距离的比值,并根据比值生成缩放矩阵,其中,第一距离对应的第二距离为:第一距离对应的两个预定挂载点相对应的两个人脸关键点的之间的第二距离;计算各个第二相对角度与第二相对角度对应的第一相对角度的差值,并根据差值生成旋转矩阵,其中,第二相对角度对应的第一相对角度为:第二相对角度对应的两个人脸关键点相对应的两个预定挂载点的之间的第一相对角度;计算第二中心点数据与第一中心点数据之间的横坐标差值和纵坐标差值,并根据横坐标差值和纵坐标差值生成位移矩阵;根据转换矩阵、反向转换矩阵、缩放矩阵、旋转矩阵和位移矩阵生成贴纸计算矩阵。先生成多个矩阵,再通过多个矩阵生成贴纸计算矩阵的方式,可以满足浏览器底层api调用时需要传入一个矩阵的要求。
S205,根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。
在贴纸与人脸匹配时,直接使用确定的贴纸计算矩阵即可。
S206,将贴纸与人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据。至此,具有贴纸的视频数据和音频数据已经合成,用户可以看到具有贴纸的音视频数据。
S207,发送具有贴纸的音视频数据。至此,视频通话的另一端用户可以在屏幕上看到已经被贴上贴纸的用户的图像,也能够听到相对的声音。
本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。
本发明第三实施例提供了一种处理视频中人脸贴纸的装置,该装置的结构示意如图3所示,包括:
识别模块10,用于通过预定方式对视频中的人脸视频中的人脸进行识别,以确定人脸数据;第一获取模块20,与识别模块10耦合,用于获取已选定贴纸的图片列表数据;确定模块30,与第一获取模块20耦合,用于根据图片列表数据和人脸数据确定贴纸计算矩阵;匹配模块40,与确定模块30耦合,用于根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。
由于web浏览器有着客户端无法比拟的便利性,人们可以随时随地打开网页参与视频互动,因此,web浏览器中也是需要融入人脸贴纸的。
但由于视频是存在网页中的,其无法采用客户端渲染时使用GPU的方式实现贴纸效果,因此,本发明实施例提供了一种在web浏览器可以实现贴纸效果的方案。该方案在实现时,需要先对人脸进行识别,进而才能够获取识别到的人脸的相关数据。
在对人脸进行识别时,可以采用webAssembly编写作为预定方式的预定程序,当通过该预定程序识别出人脸后,就可以确定人脸数据,例如用于匹配贴纸的人脸关键点数据,当然,为了更好的让贴纸和人脸完美匹配,还可以进一步获取人脸三维旋转角度数据等数据,本领域技术人员可以根据实际需求进行获取。
每个贴纸都由多个图片组成,且各个图片的不同位置组合确定了贴纸的样式,而且该贴纸还是需要和人脸匹配的贴纸,因此,也有一些用于匹配的数据,当然还可能存在一些其他用于实现贴纸效果的数据,这些数据的集合则为图片列表数据。
当已经清楚人脸的各种数据和贴纸的各种数据后,就可以根据知晓的这些数据来构造人脸和贴纸相关联的矩阵了。例如,知晓了贴纸的原始大小和与人脸的匹配点,则可以通过计算确定贴纸需要调整的大小;知晓了人脸的旋转角度,也知道贴纸的初始角度,则可以通过计算确定贴纸需要调整的角度等。当贴纸需要调整的数据都确定了,就可以确定贴纸计算矩阵。
具体实现时,上述确定模块30可以包括:确定单元,用于根据图片列表数据确定贴纸的预定挂载点信息,根据人脸数据确定人脸关键点信息;计算单元,与确定单元耦合,用于根据全部预定挂载点信息计算全部预定挂载点的中心点的第一中心点数据;计算各个预定挂载点之间的第一距离、第一相对角度;根据全部人脸关键点信息计算全部人脸关键点的中心点的第二中心点数据;计算各个人脸关键点之间的第二距离、第二相对角度;生成单元,与计算单元耦合,用于根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵。
其中,上述生成单元具体用于:以第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;计算各个第一距离与第一距离对应的第二距离的比值,并根据比值生成缩放矩阵,其中,第一距离对应的第二距离为:第一距离对应的两个预定挂载点相对应的两个人脸关键点的之间的第二距离;计算各个第二相对角度与第二相对角度对应的第一相对角度的差值,并根据差值生成旋转矩阵,其中,第二相对角度对应的第一相对角度为:第二相对角度对应的两个人脸关键点相对应的两个预定挂载点的之间的第一相对角度;计算第二中心点数据与第一中心点数据之间的横坐标差值和纵坐标差值,并根据横坐标差值和纵坐标差值生成位移矩阵;根据转换矩阵、反向转换矩阵、缩放矩阵、旋转矩阵和位移矩阵生成贴纸计算矩阵。生成单元先生成多个矩阵,再通过多个矩阵生成贴纸计算矩阵的方式,可以满足浏览器底层api调用时需要传入一个矩阵的要求。
在一个优选实施例中,上述装置还包括:第二获取模块,与识别模块耦合,用于获取音视频数据,将音视频数据拆分为音频数据和视频数据;获取拆分后的视频数据;合并模块,与匹配模块耦合,用于将贴纸与人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据;发送具有贴纸的音视频数据。
本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。
本发明第四实施例提供了一种存储介质,存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例提供的方法,如下步骤S1至S4:
S1,通过预定方式对视频中的人脸进行识别,以确定人脸数据;
S2,获取已选定贴纸的图片列表数据;
S3,根据图片列表数据和人脸数据确定贴纸计算矩阵;
S4,根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。
计算机程序被处理器执行根据图片列表数据和人脸数据确定贴纸计算矩阵的步骤时,具体被处理器执行如下步骤:根据图片列表数据确定贴纸的预定挂载点信息,根据人脸数据确定人脸关键点信息;根据全部预定挂载点信息计算全部预定挂载点的中心点的第一中心点数据;计算各个预定挂载点之间的第一距离、第一相对角度;根据全部人脸关键点信息计算全部人脸关键点的中心点的第二中心点数据;计算各个人脸关键点之间的第二距离、第二相对角度;根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵。
计算机程序被处理器执行根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵的步骤时,具体被处理器执行如下步骤:以第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;计算各个第一距离与第一距离对应的第二距离的比值,并根据比值生成缩放矩阵,其中,第一距离对应的第二距离为:第一距离对应的两个预定挂载点相对应的两个人脸关键点的之间的第二距离;计算各个第二相对角度与第二相对角度对应的第一相对角度的差值,并根据差值生成旋转矩阵,其中,第二相对角度对应的第一相对角度为:第二相对角度对应的两个人脸关键点相对应的两个预定挂载点的之间的第一相对角度;计算第二中心点数据与第一中心点数据之间的横坐标差值和纵坐标差值,并根据横坐标差值和纵坐标差值生成位移矩阵;根据转换矩阵、反向转换矩阵、缩放矩阵、旋转矩阵和位移矩阵生成贴纸计算矩阵。
计算机程序被处理器执行通过预定程序对视频中的人脸进行识别,以确定人脸数据的步骤之前,还可以被处理器执行如下步骤:获取音视频数据,将音视频数据拆分为音频数据和视频数据;获取拆分后的视频数据。
计算机程序被处理器执行根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位的步骤之后,还可以被处理器执行如下步骤:将贴纸与人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据;发送具有贴纸的音视频数据。
下面结合距离示例对上述计算机程序的实现过程进行说明。
在客户端中,我们可以使用比较丰富的GPU处理方法,也有比较多的技术方案可以直接使用,但是在浏览器中无法使用GPU,因此所有设置都要从零开始,本实施例需要实现以下几点功能:
获得摄像头拍到的画面,以进行处理;人脸识别,其中包括人脸区域识别和人脸关键点识别,并输出数据;定义贴纸与人脸器官的对应关系;贴图算法,其中包含贴纸在最终视频中所应用的旋转、缩放、坐标,以便能够适配视频中人脸的真实位置;贴图控制,以实现动画效果;将贴图之后的效果导出,并替换摄像头拍到的画面,同话筒接收到的音频一起发送给接收方进行展现。
实现时,先定义贴纸(T),其中包含使用的图片列表(Is),图片挂载点、挂载点对应的人脸关键点,例如给人脸贴上一个眼镜,我们可以将两只眼镜片的中心点和人眼球的中心点作为挂载点和对应的关键点,最终将图片贴上去之后能够做到挂载点和关键点重合就可以达到比较真实的效果(以下将以眼镜做样例说明贴纸实现逻辑)。按一定频率在Is中选取不同的图片进行切换,可以实现动态图像的效果。具体的,还可以定义动画(A),其中包含多个T,以便在人脸中同时应用多个贴纸效果。
本实施例的具体过程如下:
1.通过navigator.getUserMedia获取用户的音视频信息,这是一个媒体流(S1),其中包含视频轨道(Tv)和音频轨道(Ts),持有S1并复制出媒体流(S2,其中包含Tv和Ts)以待第10步处理。
2.创建视频播放器(V1)并将S1导入进行播放,并根据需要判断是否静音。
3.创建画布(C),将V1绘制到C,并从中取出图像数据(D)。
4.使用webAssembly创建人脸识别程序(W),将D导入进行运算,获得识别结果(R),其中包含识别到的人脸和人脸关键点数据以及人脸的三维旋转角度。
5.根据策略在A中选取一个T,读取其指定的挂载点和人脸关键点信息,根据策略在Is中选取一张图片(I)。
6.计算两个挂载点的中心点(Po)作为变换中心,计算两个挂载点的距离(Di)、相对角度(Ai);计算两个关键点的中心点(Pd),计算两个关键点的距离(Dk)、相对角度(Ak)。
7.计算图片绘制时需要进行的变换矩阵:由变换中心生成坐标系转换矩阵Mc和反向转换矩阵M-c;计算Di/Dk值为缩放值,生成缩放矩阵Ms;计算Ak-Ai为旋转角度,生成旋转矩阵Mr;计算Pd-Po的x、y方向偏移,生成位移矩阵Mt。
8.计算M=M-c*Mt*Mr*Ms*Mc,对画布C应用transform(M),将图片I绘制到C中,此时例子中I所显示的眼镜就会准确贴到人的眼睛部位,并且眼镜的大小和方向是贴合人脸的。
9.重复进行5-8过程,以应用多个贴纸效果。
10.从C中获取视频流S3,其中包含一个视频轨道Tv2,从S2中删除Tv,并将Tv2加入,将S2发送给接收方,接收方使用视频播放器播放S2即可看到经过贴图处理的视频,并且能够听到发送方的声音。
该实施例选取webAssembly程序进行人脸识别,进行了图片贴纸信息的定义及各阶段的计算过程,改变摄像头获取的音视频内容并对音视频轨道进行替换的处理。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例记载的方法步骤。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
本发明第五实施例提供了一种电子设备,如图4所示,该电子设备至少包括存储器901和处理器902,存储器901上存储有计算机程序,处理器902在执行存储器901上的计算机程序时实现本发明任意实施例提供的方法,示例性的,计算机程序步骤如下S11至S14:
S11,通过预定方式对视频中的人脸进行识别,以确定人脸数据;
S12,获取已选定贴纸的图片列表数据;
S13,根据图片列表数据和人脸数据确定贴纸计算矩阵;
S14,根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位。
处理器902在执行存储器901上存储的根据图片列表数据和人脸数据确定贴纸计算矩阵的计算机程序时,具体执行如下计算机程序:根据图片列表数据确定贴纸的预定挂载点信息,根据人脸数据确定人脸关键点信息;根据全部预定挂载点信息计算全部预定挂载点的中心点的第一中心点数据;计算各个预定挂载点之间的第一距离、第一相对角度;根据全部人脸关键点信息计算全部人脸关键点的中心点的第二中心点数据;计算各个人脸关键点之间的第二距离、第二相对角度;根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵。
处理器902在执行存储器901上存储的根据第一中心点数据、第一距离、第一相对角度、第二中心点数据、第二距离和第二相对角度生成贴纸计算矩阵的计算机程序时,具体执行如下计算机程序:以第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;计算各个第一距离与第一距离对应的第二距离的比值,并根据比值生成缩放矩阵,其中,第一距离对应的第二距离为:第一距离对应的两个预定挂载点相对应的两个人脸关键点的之间的第二距离;计算各个第二相对角度与第二相对角度对应的第一相对角度的差值,并根据差值生成旋转矩阵,其中,第二相对角度对应的第一相对角度为:第二相对角度对应的两个人脸关键点相对应的两个预定挂载点的之间的第一相对角度;计算第二中心点数据与第一中心点数据之间的横坐标差值和纵坐标差值,并根据横坐标差值和纵坐标差值生成位移矩阵;根据转换矩阵、反向转换矩阵、缩放矩阵、旋转矩阵和位移矩阵生成贴纸计算矩阵。
处理器902在执行存储器901上存储的通过预定方式对视频中的人脸进行识别,以确定人脸数据的计算机程序之前,还可以执行如下计算机程序:获取音视频数据,将音视频数据拆分为音频数据和视频数据;获取拆分后的视频数据。
处理器902在执行存储器901上存储的根据贴纸计算矩阵将贴纸进行调整,以匹配到识别到的人脸对应的部位的计算机程序之后,还可以执行如下计算机程序:将贴纸与人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据;发送具有贴纸的音视频数据。
本发明实施例通过人脸数据和贴纸的图片列表数据构建其相互关联的贴纸计算矩阵,进而使用贴纸计算矩阵将贴纸与人脸匹配,实现在web浏览器中也能为用户动态粘贴贴纸,增强了web浏览器端视频时的功能,也提升了用户体验。
此外,尽管已经在本文中描述了示例性实施例,其范围包括任何和所有基于本发明的具有等同元件、修改、省略、组合(例如,各种实施例交叉的方案)、改编或改变的实施例。权利要求书中的元件将被基于权利要求中采用的语言宽泛地解释,并不限于在本说明书中或本申请的实施期间所描述的示例,其示例将被解释为非排他性的。因此,本说明书和示例旨在仅被认为是示例,真正的范围和精神由以下权利要求以及其等同物的全部范围所指示。
以上描述旨在是说明性的而不是限制性的。例如,上述示例(或其一个或更多方案)可以彼此组合使用。例如本领域普通技术人员在阅读上述描述时可以使用其它实施例。另外,在上述具体实施方式中,各种特征可以被分组在一起以简单化本发明。这不应解释为一种不要求保护的公开的特征对于任一权利要求是必要的意图。相反,本发明的主题可以少于特定的公开的实施例的全部特征。从而,以下权利要求书作为示例或实施例在此并入具体实施方式中,其中每个权利要求独立地作为单独的实施例,并且考虑这些实施例可以以各种组合或排列彼此组合。本发明的范围应参照所附权利要求以及这些权利要求赋权的等同形式的全部范围来确定。
以上对本发明多个实施例进行了详细说明,但本发明不限于这些具体的实施例,本领域技术人员在本发明构思的基础上,能够做出多种变型和修改实施例,这些变型和修改都应落入本发明所要求保护的范围之内。

Claims (12)

1.一种处理视频中人脸贴纸的方法,其特征在于,包括:
通过预定方式对所述视频中的人脸进行识别,以确定人脸数据;
获取已选定贴纸的图片列表数据;
根据所述图片列表数据和所述人脸数据确定贴纸计算矩阵;
根据所述贴纸计算矩阵将所述贴纸进行调整,以匹配到识别到的所述人脸对应的部位。
2.如权利要求1所述的方法,其特征在于,所述根据所述图片列表数据和所述人脸数据确定贴纸计算矩阵,包括:
根据所述图片列表数据确定所述贴纸的预定挂载点信息,根据所述人脸数据确定人脸关键点信息;
根据全部所述预定挂载点信息计算全部所述预定挂载点的中心点的第一中心点数据;
计算各个所述预定挂载点之间的第一距离和第一相对角度;
根据全部所述人脸关键点信息计算全部所述人脸关键点的中心点的第二中心点数据;
计算各个所述人脸关键点之间的第二距离和第二相对角度;
根据所述第一中心点数据、所述第一距离、所述第一相对角度、所述第二中心点数据、所述第二距离和所述第二相对角度生成所述贴纸计算矩阵。
3.如权利要求2所述的方法,其特征在于,所述根据所述第一中心点数据、所述第一距离、所述第一相对角度、所述第二中心点数据、所述第二距离和所述第二相对角度生成所述贴纸计算矩阵,包括:
以所述第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;
计算各个所述第一距离与所述第一距离对应的第二距离的比值,并根据所述比值生成缩放矩阵,其中,所述第一距离对应的第二距离配置为所述第一距离对应的两个预定挂载点相对应的两个所述人脸关键点的之间的距离;
计算各个所述第二相对角度与所述第二相对角度对应的第一相对角度的差值,并根据所述差值生成旋转矩阵,其中,所述第二相对角度对应的第一相对角度配置为所述第二相对角度对应的两个所述人脸关键点相对应的两个预定挂载点的之间的相对角度;
计算所述第二中心点数据与所述第一中心点数据之间的横坐标差值和纵坐标差值,并根据所述横坐标差值和所述纵坐标差值生成位移矩阵;
根据所述转换矩阵、所述反向转换矩阵、所述缩放矩阵、所述旋转矩阵和所述位移矩阵生成所述贴纸计算矩阵。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述通过预定方式对所述视频中的人脸进行识别,以确定人脸数据之前,还包括:
获取音视频数据,将所述音视频数据拆分为音频数据和视频数据;
获取拆分后的所述视频数据。
5.如权利要求4所述的方法,其特征在于,所述根据所述贴纸计算矩阵将所述贴纸进行调整,以匹配到识别到的人脸对应的部位之后,还包括:
将所述贴纸与所述人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据;
发送所述具有贴纸的音视频数据。
6.一种处理视频中人脸贴纸的装置,其特征在于,包括:
识别模块,用于通过预定方式对所述视频中的人脸进行识别,以确定人脸数据;
第一获取模块,用于获取已选定贴纸的图片列表数据;
确定模块,用于根据所述图片列表数据和所述人脸数据确定贴纸计算矩阵;
匹配模块,用于根据所述贴纸计算矩阵将所述贴纸进行调整,以匹配到识别到的所述人脸对应的部位。
7.如权利要求6所述的装置,其特征在于,所述确定模块包括:
确定单元,用于根据所述图片列表数据确定所述贴纸的预定挂载点信息,根据所述人脸数据确定人脸关键点信息;
计算单元,用于根据全部所述预定挂载点信息计算全部所述预定挂载点的中心点的第一中心点数据;计算各个所述预定挂载点之间的第一距离和第一相对角度;根据全部所述人脸关键点信息计算全部所述人脸关键点的中心点的第二中心点数据;计算各个所述人脸关键点之间的第二距离和第二相对角度;
生成单元,用于根据所述第一中心点数据、所述第一距离、所述第一相对角度、所述第二中心点数据、所述第二距离和所述第二相对角度生成所述贴纸计算矩阵。
8.如权利要求7所述的装置,其特征在于,所述生成单元,具体用于:
以所述第一中心点数据作为原点生成坐标系的转换矩阵和反向转换矩阵;
计算各个所述第一距离与所述第一距离对应的第二距离的比值,并根据所述比值生成缩放矩阵,其中,所述第一距离对应的第二距离配置为所述第一距离对应的两个预定挂载点相对应的两个所述人脸关键点的之间的距离;
计算各个所述第二相对角度与所述第二相对角度对应的第一相对角度的差值,并根据所述差值生成旋转矩阵,其中,所述第二相对角度对应的第一相对角度配置为所述第二相对角度对应的两个人脸所述关键点相对应的两个预定挂载点的之间的相对角度;
计算所述第二中心点数据与所述第一中心点数据之间的横坐标差值和纵坐标差值,并根据所述横坐标差值和所述纵坐标差值生成位移矩阵;
根据所述转换矩阵、所述反向转换矩阵、所述缩放矩阵、所述旋转矩阵和所述位移矩阵生成所述贴纸计算矩阵。
9.如权利要求6至8中任一项所述的装置,其特征在于,还包括:
第二获取模块,用于获取音视频数据,将所述音视频数据拆分为音频数据和视频数据;获取拆分后的所述视频数据。
10.如权利要求9所述的装置,其特征在于,还包括:
合并模块,用于将所述贴纸与所述人脸匹配后的视频数据与音频数据合并,生成具有贴纸的音视频数据;发送所述具有贴纸的音视频数据。
11.一种存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述方法的步骤。
12.一种电子设备,至少包括存储器、处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器在执行所述存储器上的计算机程序时实现权利要求1至5中任一项所述方法的步骤。
CN201811627792.XA 2018-12-28 2018-12-28 处理视频中人脸贴纸的方法、装置、存储介质及电子设备 Active CN109819316B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811627792.XA CN109819316B (zh) 2018-12-28 2018-12-28 处理视频中人脸贴纸的方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811627792.XA CN109819316B (zh) 2018-12-28 2018-12-28 处理视频中人脸贴纸的方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN109819316A true CN109819316A (zh) 2019-05-28
CN109819316B CN109819316B (zh) 2021-06-01

Family

ID=66601497

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811627792.XA Active CN109819316B (zh) 2018-12-28 2018-12-28 处理视频中人脸贴纸的方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN109819316B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110677713A (zh) * 2019-10-15 2020-01-10 广州酷狗计算机科技有限公司 视频图像处理方法及装置、存储介质
CN111402122A (zh) * 2020-03-20 2020-07-10 北京字节跳动网络技术有限公司 图像的贴图处理方法、装置、可读介质和电子设备
CN111695431A (zh) * 2020-05-19 2020-09-22 深圳禾思众成科技有限公司 一种人脸识别方法、装置、终端设备及存储介质
CN112132044A (zh) * 2020-09-24 2020-12-25 天津锋物科技有限公司 一种基于人脸对齐及仿射变换的人脸贴纸产生方法
CN112529985A (zh) * 2019-09-17 2021-03-19 北京字节跳动网络技术有限公司 图像处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105678686A (zh) * 2015-12-30 2016-06-15 北京金山安全软件有限公司 一种图片处理方法及装置
CN106303690A (zh) * 2015-05-27 2017-01-04 腾讯科技(深圳)有限公司 一种视频处理方法及装置
CN106341720A (zh) * 2016-08-18 2017-01-18 北京奇虎科技有限公司 一种在视频直播中添加脸部特效的方法及装置
CN107122774A (zh) * 2017-03-28 2017-09-01 武汉斗鱼网络科技有限公司 一种随图像中关键点移动的自适应贴图方法和系统
US9898836B2 (en) * 2015-02-06 2018-02-20 Ming Chuan University Method for automatic video face replacement by using a 2D face image to estimate a 3D vector angle of the face image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9898836B2 (en) * 2015-02-06 2018-02-20 Ming Chuan University Method for automatic video face replacement by using a 2D face image to estimate a 3D vector angle of the face image
CN106303690A (zh) * 2015-05-27 2017-01-04 腾讯科技(深圳)有限公司 一种视频处理方法及装置
CN105678686A (zh) * 2015-12-30 2016-06-15 北京金山安全软件有限公司 一种图片处理方法及装置
CN106341720A (zh) * 2016-08-18 2017-01-18 北京奇虎科技有限公司 一种在视频直播中添加脸部特效的方法及装置
CN107122774A (zh) * 2017-03-28 2017-09-01 武汉斗鱼网络科技有限公司 一种随图像中关键点移动的自适应贴图方法和系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112529985A (zh) * 2019-09-17 2021-03-19 北京字节跳动网络技术有限公司 图像处理方法及装置
WO2021052095A1 (zh) * 2019-09-17 2021-03-25 北京字节跳动网络技术有限公司 图像处理方法及装置
CN110677713A (zh) * 2019-10-15 2020-01-10 广州酷狗计算机科技有限公司 视频图像处理方法及装置、存储介质
CN111402122A (zh) * 2020-03-20 2020-07-10 北京字节跳动网络技术有限公司 图像的贴图处理方法、装置、可读介质和电子设备
CN111695431A (zh) * 2020-05-19 2020-09-22 深圳禾思众成科技有限公司 一种人脸识别方法、装置、终端设备及存储介质
CN112132044A (zh) * 2020-09-24 2020-12-25 天津锋物科技有限公司 一种基于人脸对齐及仿射变换的人脸贴纸产生方法

Also Published As

Publication number Publication date
CN109819316B (zh) 2021-06-01

Similar Documents

Publication Publication Date Title
CN109819316A (zh) 处理视频中人脸贴纸的方法、装置、存储介质及电子设备
KR101348521B1 (ko) 비디오의 개인화
CN112492380B (zh) 音效调整方法、装置、设备及存储介质
EP3889912A1 (en) Method and apparatus for generating video
EP4099709A1 (en) Data processing method and apparatus, device, and readable storage medium
CN110288547A (zh) 用于生成图像去噪模型的方法和装置
US10013804B2 (en) Delivering virtualized content
CN107437272B (zh) 基于增强现实的互动娱乐方法、装置及终端设备
CN108846377A (zh) 用于拍摄图像的方法和装置
CN110797038B (zh) 音频处理方法、装置、计算机设备及存储介质
TW202139052A (zh) 互動物件的驅動方法、裝置、設備以及儲存媒體
CN109934764A (zh) 全景视频文件的处理方法、装置、终端、服务器及存储介质
WO2021213008A1 (zh) 一种视频的音画匹配方法、相关装置以及存储介质
Ebner et al. Multi‐view reconstruction of dynamic real‐world objects and their integration in augmented and virtual reality applications
CN111491187A (zh) 视频的推荐方法、装置、设备及存储介质
CN106101576B (zh) 一种增强现实照片的拍摄方法、装置及移动终端
Tolosana et al. An introduction to digital face manipulation
CN113453027B (zh) 直播视频、虚拟上妆的图像处理方法、装置及电子设备
CN117593473B (zh) 动作图像与视频生成方法、设备与存储介质
CN112511815B (zh) 图像或视频生成方法及装置
CN108647710A (zh) 一种视频处理方法、装置、计算机及存储介质
CN107832366A (zh) 视频分享方法及装置、终端装置及计算机可读存储介质
CN116301386A (zh) 一种元宇宙沉浸式体验方法及系统
CN112508772A (zh) 图像生成方法、装置及存储介质
CN115880406A (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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: Tiktok vision (Beijing) Co.,Ltd.