全景视频动画的模板剪辑方法、装置、终端、系统及介质与流程

专利2022-05-09  87


本发明属于视频处理技术领域,尤其涉及一种全景视频动画的模板剪辑方法、装置、终端、系统及存储介质。



背景技术:

在播放全景视频时,无法将360度画面内容一次性地完全显示在播放装置上,用户作为播放装置前的观察者,需要选择适合自己的观察视角,该观察视角即当前视频帧的播放视角,现有技术中通常是在播放之前或播放过程中由用户手动进行打点编辑(或称动画编辑),根据打点编辑数据(或称动画逻辑)来播放全景视频。其中,打点编辑主要是指在全景视频的时间轴上添加关键帧并设置每个关键帧的播放视角等。

现有技术中,当需要在不同的终端设备使用相同的动画逻辑播放相同的全景视频,或者需要根据相同的动画逻辑对不同的全景视频进行播放时,需要用户重新进行动画编辑,导致编辑时间较长,进而降低了用户体验。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种全景视频动画的模板剪辑方法、装置、终端、系统及存储介质。

一方面,本发明一实施例提供一种全景视频动画的模板剪辑方法,所述方法包括下述步骤:

配置待播放的全景视频的动画模板文件;

解析所述动画模板文件,得到动画数据序列;

基于所述动画数据序列获取当前解码时间戳的动画数据;

根据获取到的动画数据计算当前渲染模型的渲染参数;

根据所述渲染参数对贴合至所述渲染模型上的全景视频帧进行渲染。

优选地,所述动画数据序列包括每个关键帧的参数以及相邻关键帧之间的动画插值类型,所述根据获取到的动画数据计算当前渲染模型的渲染参数的步骤,包括:

若当前解码时间戳对应关键帧的参数,则根据当前解码时间戳对应的关键帧的参数计算当前渲染模型的渲染参数;

若当前解码时间戳对应动画插值类型,则根据当前解码时间戳对应的动画插值类型进行插值计算,根据插值计算结果计算当前渲染模型的渲染参数。

优选地,所述关键帧的参数包括所述关键帧的时间戳、视角朝向和缩放程度,或所述关键帧的参数包括关键帧的时间戳、以及关键帧的视角朝向和缩放程度相对于参考关键帧的相对变化量。

优选地,所述动画插值类型包括以下之一或其组合:

线性、慢进快出、快进慢出、先慢后快再慢。

优选地,所述待播放的全景视频包括第一全景视频和第二全景视频,所述动画数据序列还包括转场动画数据,所述转场动画数据包括第一转场关键帧与第二转场关键帧之间的动画插值类型,所述第一转场关键帧为所述第一全景视频的最末关键帧,所述第二转场关键帧为所述第二全景视频的首个关键帧。

另一方面,本发明一实施例提供了一种全景视频动画的模板剪辑方法,所述方法包括下述步骤:

第一终端根据用户的打点编辑操作数据生成动画模板文件;

第二终端基于所述动画模板文件并使用如上所述的方法剪辑全景视频。

另一方面,本发明一实施例提供了一种全景视频动画的模板剪辑装置,所述装置包括:

模板配置模块,用于配置待播放的全景视频的动画模板文件;

模板解析模块,用于解析所述动画模板文件,得到动画数据序列;

动画数据获取模块,用于基于所述动画数据序列获取当前解码时间戳的动画数据;

渲染参数计算模块,用于根据获取到的动画数据计算当前渲染模型的渲染参数;以及

渲染模块,用于根据所述渲染参数对贴合至所述渲染模型上的全景视频帧进行渲染。

另一方面,本发明一实施例提供了一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上所述方法的步骤。

另一方面,本发明一实施例提供了一种全景视频动画的模板剪辑系统,包括第一终端和第二终端,其中,所述第一终端用于根据用户的打点编辑操作数据生成动画模板文件,所述第二终端为如上所述的终端。

另一方面,本发明一实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。

本发明通过配置待播放的全景视频的动画模板文件,并解析动画模板文件,得到动画数据序列,基于动画数据序列获取当前解码时间戳的动画数据,根据获取到的动画数据计算当前渲染模型的渲染参数,并根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染,从而通过共享动画模板文件节约了在不同终端上对同一或不同全景视频编辑动画的时间,或在同一终端上使用相同动画数据剪辑不同全景视频的时间,进而提高了用户体验。

附图说明

图1是本发明实施例一提供的全景视频动画的模板剪辑方法的实现流程图;

图2是本发明实施例二提供的全景视频动画的模板剪辑方法的实现流程图;

图3是本发明实施例三提供的全景视频动画的模板剪辑装置的结构示意图;

图4是本发明实施例四提供的终端的结构示意图;以及

图5是本发明实施例五提供的全景视频动画的模板剪辑系统的结构示意图;

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

以下结合具体实施例对本发明的具体实现进行详细描述:

实施例一:

图1示出了本发明实施例一提供的全景视频动画的模板剪辑方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:

在步骤s101中,配置待播放的全景视频的动画模板文件。

本发明实施例适用于终端设备,该终端设备包括但不限于是各种个人计算机、笔记本电脑、智能手机、相机、平板电脑和便携式可穿戴设备,该终端设备可通过安装相应的全景视频处理软件或插件实现本方法。

在本发明实施例中,可以由执行本方法的终端生成动画模板文件,也可以由执行本方法以外的终端生成动画模板文件,为便于描述,将生成动画模板文件的终端定义为第一终端,将执行本方法的终端定义为第二终端,该第二终端与第一终端可以为同一终端。在第一终端生成动画模板文件时,具体地,第一终端可检测用户的打点编辑操作,并根据获取到的打点编辑操作数据得到动画数据序列,当接收到模板文件生成请求时,根据该动画数据序列生成动画模板文件,该动画模板文件可以以json(javascriptobjectnotation,对象简谱)等格式保存。

其中,动画数据序列是由多组动画数据构成的序列,优选地,动画数据序列包括每个关键帧的参数以及相邻关键帧之间的动画插值类型,换言之,每组动画数据为某一关键帧的参数,或某两个相邻关键帧之间的动画插值类型,以便于后续根据该动画数据序列对渲染模型进行渲染,使全景视频能够在第二终端上按照第一终端中编辑的动画模板文件自动剪辑。具体实现中,第一终端在检测用户的打点编辑操作过程中,可在接收到关键帧设置请求之后,获取用户输入的关键帧的参数类型和参数值;可在接收到过渡动效(过渡动画特效)设置请求之后,获取用户输入的动画插值类型。

进一步优选地,关键帧的参数包括该关键帧的时间戳、视角朝向和缩放程度,由于该关键帧的参数为绝对值,因此可直接应用于后期渲染中,并便于后续基于视角变化维度实现从全景视频到平面视频的自动渲染。又一优选地,关键帧的参数包括该关键帧的时间戳、以及该关键帧的视角朝向和缩放程度相对于参考关键帧的相对变化量,由于该关键帧的参数为相对值,从而增加了动画编辑的丰富性。其中,参考关键帧可以为该关键帧的前一关键帧,也可以为用户指定的任一关键帧,例如,首个关键帧,本申请不对如何确定关键帧进行具体限定。更进一步地,关键帧的参数还可以包括透明度。

作为示例地,动画数据序列中一关键帧的参数的定义如下:

其中,timeratio为时间戳的归一化数据,即某一帧的时间戳/视频的总时长;

id为关键帧的标记名称,每个关键帧都有各自的标记名称;

camera-fov为opengl(opengraphicslibrary,开放式图形库)渲染模型中对投影矩阵设置的视场角,其大小可影响画面的缩放程度;

camera-distance为opengl渲染模型中渲染模型摄像机距离渲染模型的球心的距离,其大小也可影响画面的缩放程度;

entity-yaw为渲染模型的偏航角,其值控制了全景视频显示的方向;

entity-pitch为渲染模型的俯仰角,其值控制了全景视频显示的方向;

entity-roll为渲染模型的横滚角,其值控制了全景视频显示的方向。

上述的视角朝向具体可以包括偏航角、俯仰角和横滚角,上述的缩放程度可以具体包括视场角和/或渲染模型摄像机距离渲染模型的球心的距离。

优选地,动画插值类型包括线性、慢进快出、快进慢出和先慢后快再慢中的一种或者多种组合,从而进一步增加了动画编辑的丰富性,当然还可以有其他动画插值类型,本申请不做具体限定。

待播放的全景视频可以仅包含一个全景视频,也可以包含多个全景视频,优选地,待播放的全景视频包括第一全景视频和第二全景视频,动画数据序列还包括转场动画数据,转场动画数据包括第一转场关键帧与第二转场关键帧之间的动画插值类型,第一转场关键帧为第一全景视频的最末关键帧,第二转场关键帧为第二全景视频的首个关键帧,以实现多个全景视频的转场渲染。其中,转场动画数据可以理解为由第一全景视频到第二全景视频的转场阶段的动画数据,第一转场关键帧与第二转场关键帧之间的动画插值类型同样可以为上述的线性、慢进快出、快进慢出和先慢后快再慢中的一种或者多种组合,该转场动画数据还可以包括第一转场关键帧之前连续m个关键帧的参数、第二转场关键帧之后连续n个关键帧的参数以及相邻关键帧之间的动画插值类型,以实现第一全景视频到第二全景视频的平滑过渡,换言之,动画数据中的部分关键帧的参数可以是根据用户的转场动画编辑操作得到。其中,m和n的数值可以由用户在打点编辑过程中确定,本申请不对m和n的数值做具体限定。

在第一终端生成动画模板文件之后,当第二终端接收到针对待播放的全景视频的动画模板配置请求时,配置由第一终端生成的动画模板文件。

在步骤s102中,解析动画模板文件,得到动画数据序列。

在本发明实施例中,第二终端解析动画模板文件,得到上述的动画数据序列。

在步骤s103中,基于动画数据序列获取当前解码时间戳的动画数据。

在本发明实施例中,在第二终端对待播放的全景视频解码过程中,根据动画数据序列获取当前解码时间戳的动画数据,若动画数据序列包括每个关键帧的参数以及相邻关键帧之间的动画插值类型,则当前解码时间戳对应的动画数据可以是关键帧的参数,也可以是动画插值类型。

在步骤s104中,根据获取到的动画数据计算当前渲染模型的渲染参数。

在本发明实施例中,优选地,若当前解码时间戳对应关键帧的参数,则根据当前解码时间戳对应的关键帧的参数计算当前渲染模型的渲染参数,若当前解码时间戳对应插值类型,则根据当前解码时间戳对应的动画插值类型进行插值计算,根据插值计算结果计算当前渲染模型的渲染参数。其中,渲染参数可以包括渲染模型摄像机的pitch(俯仰角)、yaw(偏航角)、roll(横滚角)、fov(视场角)和distance(距离)等。

在根据当前解码时间戳对应的关键帧的参数计算当前渲染模型的渲染参数时,若关键帧的参数包括该关键帧的视角朝向和缩放程度相对于参考关键帧的相对变化量,即关键帧的参数为相对值,则可根据参考关键帧的参数以及该关键帧的参数计算当前渲染模型的渲染参数。

在根据当前解码时间戳对应的动画插值类型进行插值计算时,若该关键帧的参数包括视角朝向和缩放程度,即该关键帧的参数为绝对值,则可根据当前解码时间戳对应的动画插值类型获取对应的动画插值函数,根据当前解码时间戳、当前解码时间戳的前一关键帧的参数、当前解码时间戳的后一关键帧的参数并使用获取到的动画插值函数进行插值计算;若关键帧的参数包括该关键帧的视角朝向和缩放程度相对于参考关键帧的相对变化量,即该关键帧的参数为相对值,则可根据当前时间戳、参考关键帧的参数、当前解码时间戳的前一关键帧的参数、当前解码时间戳的后一关键帧的参数并使用获取到的动画插值函数进行插值计算。

在步骤s105中,根据计算出的渲染参数对贴合至渲染模型上的全景视频帧进行渲染。

在本发明实施例中,在计算出当前解码时间戳的渲染模型的渲染参数之后,按照计算出的渲染参数对与该解码时间戳对应的、贴合至渲染模型上的全景视频帧进行渲染。进一步地,判断当前解码时间戳对应的全景视频帧是否为最后一帧,若是,则确定剪辑完成,否则,跳转至步骤s103,从而实现了全景视频的自动剪辑和播放。

在这里需要指出的是,通常在对与解码时间戳对应的、贴合至渲染模型上的全景视频帧进行渲染前的某一时段内,已经完成了对应的渲染参数的计算,且已计算出的每个解码时间戳的渲染参数通常会缓存于终端中,在对贴合至渲染模型上的当前全景视频帧进行渲染时,获取缓存于终端中的对应的渲染参数进行渲染,以保证全景视频播放的流畅性。

在本发明实施例中,配置待播放的全景视频的动画模板文件,并解析动画模板文件,得到动画数据序列,基于动画数据序列获取当前解码时间戳的动画数据,根据获取到的动画数据计算当前渲染模型的渲染参数,并根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染,从而通过共享动画模板文件节约了在不同终端上对同一或不同全景视频编辑动画的时间,或在同一终端上使用相同动画数据剪辑不同全景视频的时间,进而提高了用户体验。

实施例二:

图2示出了本发明实施例二提供的全景视频动画的模板剪辑方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:

在步骤s201中,第一终端根据用户的打点编辑操作数据生成动画模板文件。

在本发明实施例中,步骤s201具体实现方式可参考前述实施例一的相关描述,在此不作赘述。

在步骤s202中,第二终端配置该动画模板文件,并根据已配置的动画模板文件剪辑全景视频。

在本发明实施例中,在第二终端配置动画模板文件,并根据已配置的动画模板文件剪辑全景视频时,可按照实施例一中描述的步骤s101及步骤s105剪辑全景视频。

在本发明实施例中,第一终端根据用户的打点编辑操作数据生成动画模板文件,第二终端配置该动画模板文件,并根据已配置的动画模板文件剪辑全景视频,从而通过在第一终端上进行一次动画编辑操作,即可应用于任意全景视频或第二终端上,节约了动画编辑操作的时间,进而提高了用户体验。

实施例三:

图3示出了本发明实施例三提供的全景视频动画的模板剪辑装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:

模板配置模块31,用于配置待播放的全景视频的动画模板文件;

模板解析模块32,用于解析动画模板文件,得到动画数据序列;

动画数据获取模块33,用于基于动画数据序列获取当前解码时间戳的动画数据;

渲染参数计算模块34,用于根据获取到的动画数据计算当前渲染模型的渲染参数;以及

渲染模块35,用于根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染。

优选地,动画数据序列包括每个关键帧的参数以及相邻关键帧之间的动画插值类型,渲染参数计算模块34还包括:

第一参数计算模块,用于若当前解码时间戳对应关键帧的参数,则根据当前解码时间戳对应的关键帧的参数计算当前渲染模型的渲染参数;以及

第二参数计算模块,用于若当前解码时间戳对应动画插值类型,则根据当前解码时间戳对应的动画插值类型进行插值计算,根据插值计算结果计算当前渲染模型的渲染参数;

优选地,该全景视频动画的模板剪辑装置还包括:

模板生成模块,用于根据用户的打点编辑操作数据生成动画模板文件。

在本发明实施例中,全景视频动画的模板剪辑装置的各模块可由相应的硬件或软件模块实现,各模块可以为独立的软、硬件模块,也可以集成为一个软、硬件模块,在此不用以限制本发明。全景视频动画的模板剪辑装置的各模块的具体实施方式可参考前述方法实施例的描述,在此不再赘述。

实施例四:

图4示出了本发明实施例五提供的终端的结构,为了便于说明,仅示出了与本发明实施例相关的部分。

本发明实施例的终端4包括处理器40、存储器41以及存储在存储器41中并可在处理器40上运行的计算机程序42。该处理器40执行计算机程序42时实现上述各方法实施例中的步骤,例如图1所示的步骤s101至s105。或者,处理器40执行计算机程序42时实现上述各装置实施例中各模块的功能,例如图3所示模块31至35的功能。

在本发明实施例中,通过配置待播放的全景视频的动画模板文件,并解析动画模板文件,得到动画数据序列,基于动画数据序列获取当前解码时间戳的动画数据,根据获取到的动画数据计算当前渲染模型的渲染参数,并根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染,从而通过共享动画模板文件节约了在不同终端上对同一或不同全景视频编辑动画的时间,或在同一终端上使用相同动画数据剪辑不同全景视频的时间,进而提高了用户体验。

实施例五:

图5示出了本发明实施例五提供的全景视频动画的模板剪辑系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分。

本发明实施例的全景视频动画的模板剪辑系统5包括第一终端51和第二终端52,其中,第一终端51用于根据用户的打点编辑操作数据生成动画模板文件,第二终端52为如实施例四描述的终端。

在本发明实施例中,第一终端根据用户的打点编辑操作数据生成动画模板文件,第二终端配置动画模板文件,并根据已配置的动画模板文件剪辑全景视频,从而只需通过在第一终端上进行一次动画编辑操作,就可以应用于任意全景视频或第二终端上,节约了动画编辑操作的时间,进而提高了用户体验。

实施例六:

在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法实施例中的步骤,例如,图1所示的步骤s101至s105。或者,该计算机程序被处理器执行时实现上述各装置实施例中各模块的功能,例如图3所示模块31至35的功能。

在本发明实施例中,通过配置待播放的全景视频的动画模板文件,并解析动画模板文件,得到动画数据序列,基于动画数据序列获取当前解码时间戳的动画数据,根据获取到的动画数据计算当前渲染模型的渲染参数,并根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染,从而通过共享动画模板文件节约了在不同终端上对同一或不同全景视频编辑动画的时间,或在同一终端上使用相同动画数据剪辑不同全景视频的时间,进而提高了用户体验。

本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,rom/ram、磁盘、光盘、闪存等存储器。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。


技术特征:

1.一种全景视频动画的模板剪辑方法,其特征在于,所述方法包括:

配置待播放的全景视频的动画模板文件;

解析所述动画模板文件,得到动画数据序列;

基于所述动画数据序列获取当前解码时间戳的动画数据;

根据获取到的动画数据计算当前渲染模型的渲染参数;

根据所述渲染参数对贴合至所述渲染模型上的全景视频帧进行渲染。

2.如权利要求1所述的全景视频动画的模板剪辑方法,其特征在于,所述动画数据序列包括每个关键帧的参数以及相邻关键帧之间的动画插值类型,所述根据获取到的动画数据计算当前渲染模型的渲染参数的步骤,包括:

若当前解码时间戳对应关键帧的参数,则根据当前解码时间戳对应的关键帧的参数计算当前渲染模型的渲染参数;

若当前解码时间戳对应动画插值类型,则根据当前解码时间戳对应的动画插值类型进行插值计算,根据插值计算结果计算当前渲染模型的渲染参数。

3.如权利要求2所述的全景视频动画的模板剪辑方法,其特征在于,所述关键帧的参数包括所述关键帧的时间戳、视角朝向和缩放程度,或所述关键帧的参数包括所述关键帧的时间戳以及所述关键帧的视角朝向和缩放程度相对于参考关键帧的相对变化量。

4.如权利要求2所述的全景视频动画的模板剪辑方法,其特征在于,所述动画插值类型包括以下之一或其组合:

线性、慢进快出、快进慢出、先慢后快再慢。

5.如权利要求2所述的全景视频动画的模板剪辑方法,其特征在于,所述待播放的全景视频包括第一全景视频和第二全景视频,所述动画数据序列还包括转场动画数据,所述转场动画数据包括第一转场关键帧与第二转场关键帧之间的动画插值类型,所述第一转场关键帧为所述第一全景视频的最末关键帧,所述第二转场关键帧为所述第二全景视频的首个关键帧。

6.一种全景视频动画的模板剪辑方法,其特征在于,所述方法包括:

第一终端根据用户的打点编辑操作数据生成动画模板文件;

第二终端基于所述动画模板文件并使用如权利要求1-5任意一项所述的方法剪辑全景视频。

7.一种全景视频动画的模板剪辑装置,其特征在于,所述装置包括:

模板配置模块,用于配置待播放的全景视频的动画模板文件;

模板解析模块,用于解析所述动画模板文件,得到动画数据序列;

动画数据获取模块,用于基于所述动画数据序列获取当前解码时间戳的动画数据;

渲染参数计算模块,用于根据获取到的动画数据计算当前渲染模型的渲染参数;以及

渲染模块,用于根据所述渲染参数对贴合至所述渲染模型上的全景视频帧进行渲染。

8.一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。

9.一种全景视频动画的模板剪辑系统,其特征在于,包括第一终端和第二终端,其中,所述第一终端用于根据用户的打点编辑操作数据生成动画模板文件,所述第二终端为如权利要求8所述的终端。

10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。

技术总结
本发明适用于视频处理技术领域,提供了一种全景视频动画的模板剪辑方法、装置、终端、系统及存储介质,该方法包括:配置待播放的全景视频的动画模板文件,并解析动画模板文件,得到动画数据序列,基于动画数据序列获取当前解码时间戳的动画数据,根据获取到的动画数据计算当前渲染模型的渲染参数,并根据渲染参数对贴合至渲染模型上的全景视频帧进行渲染,从而通过共享动画模板文件节约了在不同终端上对同一或不同全景视频编辑动画的时间,或在同一终端上使用相同动画数据剪辑不同全景视频的时间,进而提高了用户体验。

技术研发人员:那强
受保护的技术使用者:影石创新科技股份有限公司
技术研发日:2021.03.31
技术公布日:2021.08.03

转载请注明原文地址:https://doc.8miu.com/read-1657.html

最新回复(0)