视频图像的处理方法及装置与流程

文档序号:28721037发布日期:2022-01-29 15:05阅读:66来源:国知局
视频图像的处理方法及装置与流程

1.本公开一般地涉及计算机技术领域。更具体地,本公开涉及视频图像的处理方法及装置。


背景技术:

2.在短视频日益生动的今天,越来越多的人参与到内容创作的行业中。现在市面上很多厂商都提供了短视频编辑合成的能力,但是现有视频渲染架构没有解决用户侧的学习使用成本高、视频渲染慢、发热严重、合成过程资源占用高等痛点。
3.另外,图层结构作为渲染架构的基本构成,现有技术的渲染架构仅仅只是把图层树当成一个个个体看待,却忽略了图层间的关系,例如,一个复杂特效在用户侧的完整还原,在还原的过程中渲染架构没有考虑到各个图层间的上下文去优化渲染性能,渲染效果不佳。
4.因此如何获得一种渲染效率高且渲染效果佳的视频图像处理方法为现有技术中需要解决的问题。


技术实现要素:

5.为了至少部分地解决背景技术中提到的技术问题,本公开的方案提供了一种视频图像的处理方法及装置。
6.根据本公开的第一方面,本公开提供了一种视频图像的处理方法,其中,所述方法包括:获取待处理视频图像帧;根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;根据所述递归下降式图层渲染树进行图层渲染;将所述图层渲染的渲染结果进行输出。
7.可选地,所述根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树包括:根据所述待处理视频图像帧的轨道式图层渲染树提取所述待处理视频图像帧的所有图层;根据所述待处理视频图像帧的所有图层、所述图层渲染信息进行数据转换,获得递归下降式图层;将所述递归下降式图层组织为所述递归下降式图层渲染树。
8.可选地,所述将所述递归下降式图层组织为所述递归下降式图层渲染树包括:解析所述递归下降式图层,合并其中可统一渲染的图层,并丢弃其中的无效图层,获得所述递归下降式图层渲染树。
9.可选地,所述根据所述递归下降式图层渲染树进行图层渲染包括:对所述递归下降式图层渲染树进行渲染必要性检查;根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染。
10.可选地,所述对所述递归下降式图层渲染树进行渲染必要性检查包括:对比所述待处理视频图像帧的所述递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息;和/或,判断所述图层渲染所需的外部依赖文件是否准备就绪。
11.可选地,所述根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染包括:若所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息存在变换,且所述图层渲染所需的外部依赖文件已准备就绪,则展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染。
12.可选地,所述将所述图层渲染的渲染结果进行输出包括:根据预设输出尺寸对所述渲染结果进行等比例缩放;和/或,根据预设输出格式对所述渲染结果进行数据格式转换。
13.根据本公开的第二方面,本公开提供了一种视频图像的处理装置,其中,所述装置包括:获取模块,其配置为用于获取待处理视频图像帧;转译模块,其配置为用于根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;渲染模块,其配置为用于根据所述递归下降式图层渲染树进行图层渲染;输出模块,其配置为用于将所述图层渲染的渲染结果进行输出。
14.可选地,所述转译模块用于采取如下方式根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树:根据所述待处理视频图像帧的轨道式图层渲染树提取所述待处理视频图像帧的所有图层;根据所述待处理视频图像帧的所有图层、所述图层渲染信息进行数据转换,获得递归下降式图层;将所述递归下降式图层组织为所述递归下降式图层渲染树。
15.可选地,所述转译模块用于采取如下方式将所述递归下降式图层组织为所述递归下降式图层渲染树:解析所述递归下降式图层,合并其中可统一渲染的图层,并丢弃其中的无效图层,获得所述递归下降式图层渲染树。
16.可选地,所述渲染模块用于采取如下方式根据所述递归下降式图层渲染树进行图层渲染:对所述递归下降式图层渲染树进行渲染必要性检查;根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染。
17.可选地,所述渲染模块用于采取如下方式对所述递归下降式图层渲染树进行渲染必要性检查:对比所述待处理视频图像帧的所述递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息;和/或,判断所述图层渲染所需的外部依赖文件是否准备就绪。
18.可选地,所述渲染模块用于采取如下方式根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染:若所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息存在变换,且所述图层渲染所需的外部依赖文件已准备就绪,则展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染。
19.可选地,所述输出模块用于采取如下方式将所述图层渲染的渲染结果进行输出:根据预设输出尺寸对所述渲染结果进行等比例缩放;和/或,根据预设输出格式对所述渲染结果进行数据格式转换。
20.根据本公开的第三方面,本公开提供了一种电子装置,其中,所述电子装置包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现上述本公开的第一方面的方法。
21.根据本公开的第四方面,本公开提供了一种计算机可读存储介质,其中,所述存储
介质存储有计算机程序,所述计算机程序被执行时,实现上述本公开的第一方面的方法。
22.本公开的视频图像的处理方法和装置,通过将视频图像帧的轨道式图层渲染树转译为递归下降式图层渲染树,并根据递归下降式图层渲染树进行图层渲染,从而提高了视频图像帧的渲染效率及渲染效果,而且,有效降低了用户侧的学习成本。
附图说明
23.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分其中:
24.图1是示出根据本公开的一个实施例的视频图像的处理方法的流程图;
25.图2是示出根据本公开的一个实施例的视频图像的处理装置的示意性框图。
具体实施方式
26.下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
27.下面结合附图来详细描述本公开的具体实施方式。
28.本公开提供一种视频图像的处理方法。参照图1,图1是示出根据本公开的一个实施例的视频图像的处理方法的流程图。如图1中所示,所述方法包括以下步骤s101-s104。步骤s101:获取待处理视频图像帧。步骤s102:根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树。步骤s103:根据所述递归下降式图层渲染树进行图层渲染。步骤s104:将所述图层渲染的渲染结果进行输出。
29.本公开的视频图像的处理方法,采用双层渲染树结构,上层为轨道式图层渲染树结构,以为用户侧提供音视频轨道式图层接口,从而降低用户的学习成本;下层为递归下降式图层渲染树结果,通过递归下降式图层渲染树进行图层渲染,有效提高了视频图像帧的渲染效率及渲染效果;双层渲染树结构之间采用渲染树转译层做承上启下的图层树转换工作。
30.在步骤s101中,可以获取待处理视频图像帧。
31.根据本公开的实施例,为了对视频图像进行处理,首先应获取待处理视频图像帧。该待处理视频图像帧可以是通过任何适当途径获取到的,例如可以由视频解码获得,或来自于图库,或由设计人员专门设计等等。
32.在步骤s102中,可以根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树。
33.优选地,所述根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树包括:根据所述待处理视频图像帧的轨道式图层渲染树提取所述待处理视频图像帧的所有图层;根据所述待处理视频图像帧的所有图层、所述图层渲染信息进行数据转换,获得递归下降式图层;将所述递归下降式图层组织为所述递归下降式图层渲染树。
34.根据本公开的实施例,轨道式图层渲染树指多个视频轨道层级组成的渲染树结构,其中,视频轨道通常用于放置视频素材,通过多个/多层级视频轨道的组合和对象在不同轨道不同时间段的设置,呈现不同的视觉效果。图层渲染信息指与待处理视频图像帧各图层渲染相关的所有必要信息,包括但不限于以下内容的一种或多种:外部依赖文件的名称、性质、存储路径等,图层变换信息,特效、蒙版、遮罩、滤镜等相关信息,图层父子关系信息、渲染上下文信息等;其中,外部依赖文件指待处理视频图像帧各图层渲染所需要的文件,可以是视频画面、图片、文字、音频中的一种或多种。递归下降式图层指以预合成为基础的可重复嵌套的图层,其中,预合成最基本的作用是可重新对素材进行编辑,简单来说,为了便于管理,可将一些图层合并为预合成,从而可以对该预合成添加统一的效果,进行统一管理与控制,避免为每一图层添加同一效果的繁琐操作;同时可以在预合成中随意替换、添加或删除其中的图层,即可以方便地对原始素材进行二次修改;此外,预合成可作为素材被多次使用。递归下降式图层渲染树指通过解析递归下降式图层得到的树状图层渲染关系。
35.具体地,本实施例的递归下降式图层渲染树的获得方法包括:遍历待处理视频图像帧的轨道式图层渲染树,提取待处理视频图像帧的所有图层;根据待处理视频图像帧各图层所依赖的素材及其关联信息、图层渲染信息,创建图层信息数组,其中,图层信息数组用于记录轨道式图层的信息,包括但不限于:图层依赖的素材/动画信息、图层变换信息、图层父子关系、蒙版、特效等信息;本实施例中,可以针对每个依赖的素材创建一个图层信息,加入到图层信息数组中,并将轨道式图层添加到图层信息数组中,从而构建出图层信息数组;然后可以创建一个预合成图层;之后可以遍历图层信息数组,根据每个图层信息创建轨道式下降图层,具体地,将每个图层信息转换为对应的轨道式下降图层的信息,包括添加图层变换信息、滤镜、特效、转场、描边等处理信息,并将该图层添加到创建的预合成图层中,即获得轨道式下降图层;优选地,如果图层信息中包括特效、轨道蒙层、转场等信息,可以再创建一个预合成用于放置衍生的图层,例如,如果图层信息中包括特效信息,则可以再创建一个预合成用于存放衍生出来的特效图层,即特效会有一个原始图层与特效图层,通过透明度叠加去控制特效程度。获得递归下降式图层后,可以根据图层间关系,如图层父子关系,将递归下降式图层组织为递归下降式图层渲染树。
36.进一步优选地,所述将所述递归下降式图层组织为所述递归下降式图层渲染树包括:解析所述递归下降式图层,合并其中可统一渲染的图层,并丢弃其中的无效图层,获得所述递归下降式图层渲染树。
37.根据本公开的实施例,无效图层指不可见、宽高为0、透明度为0、和/或作为轨道蒙版的图层,这类图层通常不会在结果中展示,因此,在将递归下降式图层组织为递归下降式图层渲染树时,可暂时将这类图层丢弃,以减少后续图层渲染的步骤。此外,合并可统一渲染的图层,同样可以有效减少后续图层渲染的步骤,提高图层渲染效率。
38.在步骤s103中,可以根据所述递归下降式图层渲染树进行图层渲染。
39.优选地,所述根据所述递归下降式图层渲染树进行图层渲染包括:对所述递归下降式图层渲染树进行渲染必要性检查;根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染。
40.根据本公开的实施例,在进行图层渲染时,首先对递归下降式图层渲染树进行渲染必要性检查,从而只对符合一定条件的视频图像帧进行图层渲染,提高图层渲染的效率。
41.进一步优选地,所述对所述递归下降式图层渲染树进行渲染必要性检查包括:对比所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息;和/或,判断所述图层渲染所需的外部依赖文件是否准备就绪。所述根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染包括:若所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息存在变换,且所述图层渲染所需的外部依赖文件已准备就绪,则展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染。
42.具体地,若当前待处理视频图像帧非首帧,则遍历当前待处理视频图像帧的递归下降式图层渲染树,并将其与上一帧视频图像帧的递归下降式图层渲染树的图层信息进行对比,若二者一致,则跳过此次渲染;若二者不一致,则判断当前待处理视频图像帧的所有图层在图层渲染时所需的外部依赖文件是否准备就绪,若准备就绪,则对当前待处理视频图像帧进行图层渲染;若未准备就绪,则跳过此次图层渲染。若当前待处理视频图像帧为首帧,则仅需判断当前待处理视频图像帧的所有图层在图层渲染时所需的外部依赖文件是否准备就绪,若准备就绪,则对当前待处理视频图像帧进行图层渲染。其中,准备就绪指当前待处理视频图像帧的所有图层在图层渲染时所需的所有外部依赖文件均已加载完成;外部依赖文件可以根据外部依赖文件的名称及存储路径进行加载。
43.在对当前待处理视频图像帧进行图层渲染时,展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染。
44.具体地,每一个图层均可以包括多种不同的素材源,如图片、视频、颜色等,在对各图层进行渲染时,首先从其素材源获取画面内容,然后可以根据画面内容之间的遮罩关系对图层应用图层内遮罩,接下来可以根据特效信息对图层内容使用指定的特效;然后可以根据图层变换信息对图层进行放大、缩小、旋转等操作,并可以对图层透明度进行调整。各图层的渲染根据实际需要进行,可以包括但不限于上述渲染步骤/内容,若某一图层不需要特殊渲染,且其与之上一级预合成大小一致,则可省略对该图层的渲染,以提高图层渲染的效率。
45.对于存在图层间遮罩的情况,可以根据图层间遮罩关系进行图层间遮罩处理,对图层内容的进一步裁剪。其中,图层间遮罩只能作用于下方图层,即最顶层图层不涉及图层间遮罩;遮罩算法可采用现有技术中的相关算法,包括alpha(透明度)、luma(亮度)、invertalpha(反向透明度)、invertluma(反向亮度)等;此外,遮罩图层一般不参与图层叠加渲染。本公开实施例的图层间遮罩指上层图层作为下层图层的遮罩,以达到将下层图层在上层图层之外的内容排除的效果。
46.最后可以根据图层父子关系将当前图层与其下方图层进行混合,在图层间混合的过程中,可以考虑该当前图层(上层)和/或其下方图层(下层)的透明度,以避免半透明或者完全不可见的区域混合出错误的颜色。图层间混合仅在上层图层叠加到下层图层时发生,若当前图层处于最底层或者当前图层是轨道蒙版,则跳过图层间混合,以节省一次渲染过程,提高图层渲染效率。当最顶层图层与下方图层完成图层混合后,该图层渲染的渲染流程结束。
47.根据本公开的实施例,为了提高图层渲染效率,递归下降式图层组织为递归下降式图层渲染树时,对其中可统一渲染的图层进行了合并,因此,在图层渲染的过程中,涉及
多图层渲染。具体地,本公开的多图层渲染从递归下降式图层渲染树的最顶层预合成作为入口,遍历预合成所包含的图层,创建接收渲染结果的上下文,然后图层渲染至保存渲染结果的上下文。其中,相机图层作为坐标系统的提供者,不参与渲染;若图层不显示或已过了其生命周期,则跳过,不进行渲染。
48.在步骤s104中,可以将所述图层渲染的渲染结果进行输出。
49.根据本公开的实施例,将图层渲染的渲染结果进行输出,可以根据需要输出到屏幕或保存为视频文件。
50.优选地,所述将所述图层渲染的渲染结果进行输出包括:根据预设输出尺寸对所述渲染结果进行等比例缩放;和/或,根据预设输出格式对所述渲染结果进行数据格式转换。
51.具体地,根据实际需要的输出尺寸大小对图层渲染获得的画面进行等比例缩放;此外,有些平台的编码器对图层渲染获得的画面的数据格式有要求,不同平台的编码器对画面的数据格式的要求可能不同,则可以根据所要求的数据格式对渲染结果进行数据格式转换。本公开的实施例优选将上述两个操作合并为一个步骤进行输出,从而减少一次渲染过程,并最终完成整个链路的渲染过程。
52.本公开的视频图像的处理方法采用双层渲染树结构,用户可以通过轨道式图层接口实现高质量的图层渲染效果,节约了用户的学习使用成本;此外,采用递归下降式图层渲染树进行图层渲染,充分收集整个渲染树的图层信息,并结合前后帧图层信息变化、图层间遮罩关系、图层变换信息、图层上下文信息(包括图层父子关系信息及渲染上下文信息等)等对图层渲染过程进行优化,有效提高了图层渲染的效率。
53.本公开还提供了一种视频图像的处理装置。该装置用于执行以上结合图1所描述的视频图像的处理方法实施例中的步骤。
54.参照图2,图2是示出根据本公开的一个实施例的视频图像的处理装置100的示意性框图。该装置100包括获取模块101、转译模块102、渲染模块103和输出模块104。该获取模块101配置为用于获取待处理视频图像帧。该转译模块102配置为用于根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树。该渲染模块103配置为用于根据所述递归下降式图层渲染树进行图层渲染。该输出模块104配置为用于将所述图层渲染的渲染结果进行输出。
55.根据本公开的实施例,所述转译模块102用于采取如下方式根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树:根据所述待处理视频图像帧的轨道式图层渲染树提取所述待处理视频图像帧的所有图层;根据所述待处理视频图像帧的所有图层、所述图层渲染信息进行数据转换,获得递归下降式图层;将所述递归下降式图层组织为所述递归下降式图层渲染树。
56.根据本公开的实施例,所述转译模块102用于采取如下方式将所述递归下降式图层组织为所述递归下降式图层渲染树:解析所述递归下降式图层,合并其中可统一渲染的图层,并丢弃其中的无效图层,获得所述递归下降式图层渲染树。
57.根据本公开的实施例,所述渲染模块103用于采取如下方式根据所述递归下降式图层渲染树进行图层渲染:对所述递归下降式图层渲染树进行渲染必要性检查;根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染。
58.根据本公开的实施例,所述渲染模块103用于采取如下方式对所述递归下降式图层渲染树进行渲染必要性检查:对比所述待处理视频图像帧的所述递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息;和/或,判断所述图层渲染所需的外部依赖文件是否准备就绪。
59.根据本公开的实施例,所述渲染模块103用于采取如下方式根据所述渲染必要性检查的检查结果对所述递归下降式图层渲染树进行图层渲染:若所述待处理视频图像帧的递归下降式图层渲染树与上一帧视频图像帧的递归下降式图层渲染树的图层信息存在变换,且所述图层渲染所需的外部依赖文件已准备就绪,则展开所述递归下降式图层渲染树,按照从下到上的顺序逐图层进行渲染。
60.根据本公开的实施例,所述输出模块104用于采取如下方式将所述图层渲染的渲染结果进行输出:根据预设输出尺寸对所述渲染结果进行等比例缩放;和/或,根据预设输出格式对所述渲染结果进行数据格式转换。
61.可以理解的是,关于以上参照图2描述的实施例中的视频图像的处理装置,其中各个模块执行操作的具体方式已经在结合图1所描述的视频图像的处理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
62.本公开实施例还提供了一种电子装置,其中,所述电子装置包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如下步骤:获取待处理视频图像帧;根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;根据所述递归下降式图层渲染树进行图层渲染;将所述图层渲染的渲染结果进行输出。
63.可以理解的是,所述处理器执行所述计算机程序时实现的步骤与上述方法中的各个步骤的实现方式基本一致,具体方式已经在有关视频图像的处理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
64.在另一方面中,本公开提供一种计算机可读存储介质,其中,所述存储介质存储有计算机程序,所述计算机程序被执行时,实现如下步骤:获取待处理视频图像帧;根据所述待处理视频图像帧及图层渲染信息进行图层转译,获得递归下降式图层渲染树;根据所述递归下降式图层渲染树进行图层渲染;将所述图层渲染的渲染结果进行输出。
65.可以理解的是,所述处理器执行所述计算机程序时实现的步骤与上述方法中的各个步骤的实现方式基本一致,具体方式已经在有关视频图像的处理方法的实施例中进行了详细描述,此处将不做详细阐述说明。
66.以上对本公开实施例进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本公开的方法及其核心思想;同时,对于本领域的一般技术人员,依据本公开的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本公开的限制。
67.应当理解,本公开的权利要求、说明书及附图中的术语“第一”和“第二”、等是用于区别不同对象,而不是用于描述特定顺序。本公开的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
68.还应当理解,在此本公开说明书中所使用的术语仅仅是出于描述特定实施例的目
的,而并不意在限定本公开。如在本公开说明书和权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本公开说明书和权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
69.以上对本公开实施例进行了详细介绍,本文中应用了具体个例对本公开的原理及实施方式进行了阐述,以上实施例的说明仅用于帮助理解本公开的方法及其核心思想。同时,本领域技术人员依据本公开的思想,基于本公开的具体实施方式及应用范围上做出的改变或变形之处,都属于本公开保护的范围。综上所述,本说明书内容不应理解为对本公开的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1