一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于偏移图映射的视频手动瘦脸方法和装置以及设备与流程

2022-06-05 09:00:05 来源:中国专利 TAG:


1.本发明涉及视频处理技术领域,尤其涉及一种基于偏移图映射的视频手动瘦脸方法和装置以及设备。


背景技术:

2.在视频编辑行业中,视频人像的瘦脸大多都是预置好的固定模版效果复用,即使有多种方案可以选择,但是不能实现对不同用户达到特定的效果。市面上有许多的针对单一图片的手动操作瘦脸方案,但是几乎没有对同一个人像的视频动态片段实现连续的手动操作瘦脸效果方案。


技术实现要素:

3.有鉴于此,本发明的目的在于提出一种基于偏移图映射的视频手动瘦脸方法和装置以及设备,旨在解决目前在视频编辑中对视频人像进行瘦脸美型时无法实现连续的手动操作瘦脸效果的问题。
4.为实现上述目的,本发明提供一种基于偏移图映射的视频手动瘦脸方法,所述方法包括:
5.获取待处理视频,从所述待处理视频中选择具有人脸的单帧图片作为当前帧人脸图;
6.根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,并通过opengl三角网格对所述偏移图进行渲染;
7.将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频。
8.优选的,对所述当前帧人脸图进行人脸点检测得到人脸点数据;所述根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,包括:
9.根据液化算法计算所述人脸点数据中的每一人脸点坐标对应的偏移量,得到偏移图。
10.优选的,所述根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,包括:
11.当对所述当前帧人脸图进行多次瘦脸操作时,基于所述偏移图以进行当前步操作,将上一步操作后的偏移量与当前步操作所得到的偏移量进行叠加后,更新为对应人脸点坐标的当前偏移量,得到当前偏移图。
12.优选的,所述根据液化算法计算所述人脸点数据中的每一人脸点坐标对应的偏移量,包括:
13.根据液化公式:计算人脸点坐标x液化后的坐标y,将y-x的值定义为人脸点坐标x的偏移量,其中,start表示瘦脸操作的起点、end表示瘦脸操作的终点、rad表示半径。
14.优选的,所述根据液化公式计算人脸点坐标x液化后的坐标y,包括:
15.将所述瘦脸操作的轨迹分成n段;
16.根据所述液化公式计算每一段的人脸点坐标的偏移量,并将各段的人脸点坐标的偏移量进行累加。
17.优选的,所述将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频,包括:
18.基于所述人脸点数据建立对应的固定标准人脸的三角剖分网格,将所述当前帧人脸图的人脸点与所述固定标准人脸的人脸点建立对应的偏移量映射关系;
19.根据所述偏移量映射关系将所述固定标准人脸的人脸点映射至所述待处理视频的同一个人脸不同帧上的人脸点坐标的偏移量,得到瘦脸操作处理后的目标视频。
20.优选的,所述待处理视频包括单个视频或多个不同视频。
21.为实现上述目的,本发明还提供一种基于偏移图映射的视频手动瘦脸装置,所述装置包括:
22.获取单元,用于获取待处理视频,从所述待处理视频中选择具有人脸的单帧图片作为当前帧人脸图;
23.计算单元,用于根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,并通过opengl三角网格对所述偏移图进行渲染;
24.映射单元,用于将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频。
25.为了实现上述目的,本发明还提出一种设备,包括处理器、存储器以及存储在所述存储器内的计算机程序,所述计算机程序被所述处理器执行以实现如上述实施例所述的一种基于偏移图映射的视频手动瘦脸方法的步骤。
26.为了实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行以实现如上述实施例所述的一种基于偏移图映射的视频手动瘦脸方法的步骤。
27.有益效果:
28.以上方案,基于待处理视频中选取一单帧图片进行计算对应的偏移图,将渲染后的偏移图映射至待处理视频的同一个人脸不同帧上,能够对待处理视频片段中的人脸视频帧进行个性化的手动瘦脸操作,并可将瘦脸效果应用于整个待处理视频中,从而实现在连续的视频片段达到瘦脸效果的目的。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
30.图1为本发明一实施例提供的一种基于偏移图映射的视频手动瘦脸方法的流程示意图。
31.图2为本发明一实施例提供的对单帧人脸进行多次操作的效果示意图。
32.图3为本发明一实施例提供的对不同帧人脸进行多步操作的效果示意图。
33.图4为本发明一实施例提供的一种基于偏移图映射的视频手动瘦脸装置的结构示意图。
34.发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
35.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
36.以下结合实施例详细阐述本发明的内容。
37.参照图1所示为本发明一实施例提供的一种基于偏移图映射的视频手动瘦脸方法的流程示意图。该方法的执行主体可以为终端。
38.本实施例中,该方法包括:
39.s11,获取待处理视频,从所述待处理视频中选择具有人脸的单帧图片作为当前帧人脸图。
40.其中,所述待处理视频包括单个视频或多个不同视频。
41.s12,根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,并通过opengl三角网格对所述偏移图进行渲染。
42.其中,对所述当前帧人脸图进行人脸点检测得到人脸点数据;所述根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,包括:
43.根据液化算法计算所述人脸点数据中的每一人脸点坐标对应的偏移量,得到偏移图。
44.其中,所述根据液化算法计算所述人脸点数据中的每一人脸点坐标对应的偏移量,包括:
45.根据液化公式:计算人脸点坐标x液化后的坐标y,将y-x的值定义为人脸点坐标x的偏移量,其中,start表示瘦脸操作的起点、end表示瘦脸操作的终点、rad表示半径。
46.在本实施例中,对于待处理视频中的单帧人脸,通过采用液化算法进行计算,进一步的,将瘦脸操作的起点start、终点end、以及选定的操作半径rad参数传入,根据液化公式计算出每一个人脸点坐标x的液化后坐标y,在此将y-x的值计作坐标点x的偏移量,同时将每个坐标点的偏移量用opengl存储在纹理介质中,方便后续的opengl实时渲染出瘦脸结果。同时操作后的结果图则根据存储的数据使用opengl三角
网格渲染完成,实现高自由度的液化效果。
47.其中,所述根据液化公式计算人脸点坐标x液化后的坐标y包括:
48.将所述瘦脸操作的轨迹分成n段;
49.根据所述液化公式计算每一段的人脸点坐标的偏移量,并将各段的人脸点坐标的偏移量进行累加。
50.进一步的,所述将所述瘦脸操作的轨迹分成n段,包括:
51.根据所述瘦脸操作的起点到所述瘦脸操作的终点之间的距离除以所述半径,得到所述n段。
52.在本实施例中,由于操作起点、终点不固定,在此根据起点到终点的距离除以固定半径,将瘦脸操作起点至终点的轨迹以瘦脸半径参数为最大值分成多段,每一段都通过液化公式进行计算得到每个人脸点坐标的偏移量,并且将偏移量按段累加,从而实现液化效果的稳定连续。
53.进一步的,所述根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,包括:
54.当对所述当前帧人脸图进行多次瘦脸操作时,基于所述偏移图以进行当前步操作,将上一步操作后的偏移量与当前步操作所得到的偏移量进行叠加后,更新为对应人脸点坐标的当前偏移量,得到当前偏移图。
55.在本实施例中,对于当前帧人脸图的多次操作,其每一步的操作都是基于上一步操作后的结果图进行的,而保存至以opengl形式存储偏移图的偏移量的数据则是在前一步的结果上的叠加。例如,对于坐标点x,上一步记录的偏移量为offset1,则当前步的操作需要获得坐标点x offset1上的偏移量offset2,将offset2 offset1更新保存在坐标点x对应的偏移量数据中。从而保证在结果图上的每一步操作都能所见即所得。可参见图2所示的效果图。
56.s13,将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频。
57.其中,所述将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频,包括:
58.基于所述人脸点数据建立对应的固定标准人脸的三角剖分网格,将所述当前帧人脸图的人脸点与所述固定标准人脸的人脸点建立对应的偏移量映射关系;
59.根据所述偏移量映射关系将所述固定标准人脸的人脸点映射至所述待处理视频的同一个人脸不同帧上的人脸点坐标的偏移量,得到瘦脸操作处理后的目标视频。
60.在本实施例中,在对待处理视频中单帧图片的每一次操作,除了计算出当前图片的偏移图,还根据人脸检测计算出的人脸点数据,建立固定标准人脸的人脸点坐标的三角剖分网格,将当前帧人脸图的人脸点和创建的固定标准人脸的人脸点数据建立对应映射关系x
stand
=f(x
user
),由于是基于人脸检测的,所以同一个人脸的同一个位置(比如眼角)在不同帧的实际坐标可能是x1,x2,但是对应的固定标准人脸上的眼角坐标x
stand
=f(x1)=f(x2),利用opengl的三角网格实时渲染出当前帧人脸的每个坐标点到固定标准人脸的人脸点的映射,当前人脸点坐标x的形变位移量=固定标准人脸的人脸点上f(x)的形变偏移量。
61.当视频播放到另一帧的时候,对于同一个人脸,尽管在新的视频帧上,人脸点坐标
x的实际位置可能更新到x
new
,但是对应的固定标准人脸的人脸点x
stand
一直不变,所以x
new
的形变偏移量也还是等于固定人脸点上f(x
new
)的形变偏移量。
62.进一步的,还包括:
63.当对所述待处理视频的不同帧进行多步瘦脸操作时,将上一帧操作后的人脸点坐标的偏移量对应所述固定标准人脸的人脸点的偏移量与当前帧操作所得到人脸点坐标的偏移量对应所述固定标准人脸的人脸点的偏移量进行叠加,以实现视频中同一个人脸不同帧上的瘦脸操作。
64.在本实施例中,在记录当前帧人脸至opengl固定标准人脸的偏移量数据之后,还可以进一步的支持不同帧的多步操作的叠加,即第一帧坐标x1的偏移量对应的固定标准人脸在f(x1)上的偏移量可以和第二帧在坐标x2对应的固定标准人脸坐标f(x2)的偏移量叠加。可参见图3所示的效果图。
65.特别的,由于采用固定标准人脸的人脸点来映射视频上同一个人脸不同帧的坐标形变偏移量,因此对于同一个人脸的不同视频,本方案也提供了读取保存和加载应用固定标准人脸的opengl偏移量数据的方法,进行一次个性化的瘦脸操作,就可以在整个连续的视频片段、不同的视频上都实现同样的瘦脸效果。基于上述实施例中,可以对视频片段中单张、多张人脸帧进行个性化的手动瘦脸操作,并将瘦脸效果应用于整个视频,还可以应用于同一个人脸的不同视频,拓宽丰富了个性化瘦脸效果在视频场景中的应用。
66.参照图4所示为本发明一实施例提供的一种基于偏移图映射的视频手动瘦脸装置的结构示意图。
67.在本实施例中,该装置40包括:
68.获取单元41,用于获取待处理视频,从所述待处理视频中选择具有人脸的单帧图片作为当前帧人脸图;
69.计算单元42,用于根据液化算法计算所述当前帧人脸图对应瘦脸操作的偏移图,并通过opengl三角网格对所述偏移图进行渲染;
70.映射单元43,用于将渲染后的所述偏移图映射至所述待处理视频的同一个人脸不同帧上,得到瘦脸操作处理后的目标视频。
71.进一步的,对所述当前帧人脸图进行人脸点检测得到人脸点数据。
72.进一步的,所述计算单元42,还包括:
73.偏移量计算单元,用于根据液化算法计算所述人脸点数据中的每一人脸点坐标对应的偏移量,得到偏移图。
74.进一步的,所述计算单元42,还包括:
75.叠加单元,用于当对所述当前帧人脸图进行多次瘦脸操作时,基于所述偏移图以进行当前步操作,将上一步操作后的偏移量与当前步操作所得到的偏移量进行叠加后,更新为对应人脸点坐标的当前偏移量,得到当前偏移图。
76.进一步的,所述偏移量计算单元,还用于:
77.根据液化公式:计算人脸点坐标x液化后的坐标y,将y-x的值定义为人脸点坐标x的偏移量,其中,start表示瘦脸操作的起点、end表示瘦脸操作的终点、rad表示半径。
78.进一步的,所述根据液化公式计算人脸点坐标x液化后的坐标y,包括:
79.将所述瘦脸操作的轨迹分成n段;
80.根据所述液化公式计算每一段的人脸点坐标的偏移量,并将各段的人脸点坐标的偏移量进行累加。
81.进一步的,所述映射单元43,还包括:
82.建立单元,用于基于所述人脸点数据建立对应的固定标准人脸的三角剖分网格,将所述当前帧人脸图的人脸点与所述固定标准人脸的人脸点建立对应的偏移量映射关系;
83.处理单元,用于根据所述偏移量映射关系将所述固定标准人脸的人脸点映射至所述待处理视频的同一个人脸不同帧上的人脸点坐标的偏移量,得到瘦脸操作处理后的目标视频。
84.该装置40的各个单元模块可分别执行上述方法实施例中对应步骤,故在此不对各单元模块进行赘述,详细请参见以上对应步骤的说明。
85.本发明实施例还提供一种设备,该设备包括如上所述的基于偏移图映射的视频手动瘦脸装置,其中,基于偏移图映射的视频手动瘦脸装置可以采用图4实施例的结构,其对应地,可以执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,详细可以参见上述实施例中的相关记载,此处不再赘述。
86.所述设备包括:手机、数码相机或平板电脑等具有拍照功能的设备,或者具有图像处理功能的设备,或者具有图像显示功能的设备。所述设备可包括存储器、处理器、输入单元、显示单元、电源等部件。
87.其中,存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(例如图像播放功能等)等;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器和输入单元对存储器的访问。
88.输入单元可用于接收输入的数字或字符或图像信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,本实施例的输入单元除了包括摄像头,还可包括触敏表面(例如触摸显示屏)以及其他输入设备。
89.显示单元可用于显示由用户输入的信息或提供给用户的信息以及设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元可包括显示面板,可选的,可以采用lcd(liquid crystal display,液晶显示器)、oled(organic light-emitting diode,有机发光二极管)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器以确定触摸事件的类型,随后处理器根据触摸事件的类型在显示面板上提供相应的视觉输出。
90.本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令,所述指令由
处理器加载并执行以实现图1所示的基于偏移图映射的视频手动瘦脸方法。所述计算机可读存储介质可以是只读存储器,磁盘或光盘等。
91.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例、设备实施例及存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
92.并且,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
93.上述说明示出并描述了本发明的优选实施例,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献