CN113992977A - 视频数据的处理方法和装置 - Google Patents
视频数据的处理方法和装置 Download PDFInfo
- Publication number
- CN113992977A CN113992977A CN202111226168.0A CN202111226168A CN113992977A CN 113992977 A CN113992977 A CN 113992977A CN 202111226168 A CN202111226168 A CN 202111226168A CN 113992977 A CN113992977 A CN 113992977A
- Authority
- CN
- China
- Prior art keywords
- sequence number
- time point
- target
- interpolation
- key frame
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title description 9
- 238000012545 processing Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 22
- 238000009877 rendering Methods 0.000 claims abstract description 14
- 238000013507 mapping Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 17
- 230000000694 effects Effects 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 10
- 230000009466 transformation Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000003213 activating effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/8146—Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/262—Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本说明书一个实施例提供了一种视频数据的处理方法和装置。该方法包括:通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
Description
技术领域
本文件涉及电子技术领域,尤其涉及一种视频数据的处理方法和装置。
背景技术
随着科学技术的发展,动画技术也日益成熟,其中,关键帧是一种应用广泛的动画技术。当用户针对待处理视频进行关键帧的编辑操作时,常依赖于丰富的操作控件,故关键帧技术对于用户来说存在一定的上手难度。
在一些尺寸屏幕较小的移动终端所提供的视频编辑应用程序中,虽然可以提供易于操作的简化版的编辑界面,但往往难以实现复杂而精细的关键帧动画,降低了关键帧动画的灵活性。
发明内容
本说明书一个实施例的目的是提供一种视频数据的处理方法和装置,以解决如何提高关键帧动画的灵活性。
为解决上述技术问题,本说明书一个实施例是这样实现的:
第一方面,本说明书一个实施例提供了一种视频数据的处理方法,包括:
加载待处理视频;
响应于用户对所述待处理视频的关键帧添加操作,在所述待处理视频中添加关键帧;其中,所述关键帧记录有至少一个贴图的第一属性信息;
若确定满足预设的插值条件,则根据添加的各所述关键帧所记录的所述第一属性信息,对每个所述贴图进行至少一次插值处理,得到每个所述贴图的至少一个第二属性信息;
根据所述第一属性信息和所述第二属性信息进行渲染处理,得到目标视频。
第二方面,本说明书另一个实施例提供了一种视频数据的处理装置,包括:
视频加载模块,用于加载待处理视频;
关键帧添加模块,用于响应于用户对所述待处理视频的关键帧添加操作,在所述待处理视频中添加关键帧;其中,所述关键帧记录有至少一个贴图的第一属性信息;
贴图处理模块,用于若确定满足预设的插值条件,则根据添加的各所述关键帧所记录的所述第一属性信息,对每个所述贴图进行至少一次插值处理,得到每个所述贴图的至少一个第二属性信息;
视频生成模块,用于根据所述第一属性信息和所述第二属性信息进行渲染处理,得到目标视频。
第三方面,本说明书又一个实施例提供了一种视频数据的处理设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现如上述第一方面所述的视频数据的处理方法的步骤。
第四方面,本说明书再一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现如上述第一方面所述的视频数据的处理方法的步骤。
在本说明书一个实施例中,通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
附图说明
为了更清楚地说明本说明书一个或多个实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个实施例提供的视频数据的处理方法的一种流程示意图;
图2为本说明书一个实施例提供的待处理视频的编辑界面的局部界面图;
图3A-图3D为本说明书一个实施例提供的视频数据的处理方法中插值序号确定方法的一组实例图;
图4为本说明书一个实施例提供的插值的示意图;
图5为本说明书一个实施例提供的视频数据的处理装置的模块组成示意图;
图6为本说明书一实施例提供的视频数据的处理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
图1为本说明书一个实施例提供的视频数据的处理方法的一种流程示意图。
本实施例所提供的视频数据的处理方法可以应用于电脑端,也可以应用于移动终端,还可以应用于其他具备视频编辑功能的电子设备等。下文以视频数据的处理方法的执行主体为移动终端为例进行说明,其他电子设备与移动终端类似,不再赘述。
S102,加载待处理视频。
在加载待处理设备之前,移动终端可以启动视频编辑应用程序。该视频编辑应用程序可以是动画编辑应用程序,也可以是其他具有关键帧编辑功能的视频编辑应用程序。
一方面,待处理视频可以是动画视频,也可以是其他可利用关键帧处理的视频。另一方面,待处理视频可以是从未添加关键帧的视频,也可以是已添加过至少一个关键帧的视频。
移动终端可以通过新建的方式创建一个从未添加过关键帧的待处理视频,也可以通过套用模板的方式创建一个已添加过至少一个关键帧的待处理视频,还可以通过导入的方式启动一个已添加过至少一个关键帧但还需要继续编辑的待处理视频,等等。待处理视频的加载方式不限于前述的几种示例。
S104,响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息。
关键帧是一种应用广泛的动画技术,可以理解为,在时间轴上的多个指定的时间点分别记录贴图在各时间点的状态,对相邻时间点的两个状态进行插值,以获得时间轴上的任一时间点贴图的状态,从而实现动画的过程。
贴图可以是Sticker(贴纸)对象,即用作关键帧动画的贴纸,例如,在待处理视频中,一个角色头上戴的王冠可以视为一个贴图。贴图可以由视频编辑应用程序提供,也可以由用户自定义设置。
下面介绍本实施例提供的一种Sticker对象的数据结构。
一个Sticker对象包括且不限于KeyFrameAnimation(关键帧动画)和用于捕获当前状态创建关键帧的方法Transform。
其中,KeyFrameAnimation可以存储Sticker对象的所有关键帧信息。KeyFrameAnimation可以包含多个动画通道,通过KeyFrameAnimation中存储的关键帧信息,可以计算时间轴上任一时间点该Sticker对象的显示状态。
Transform是用来描述贴纸的变换属性的集合,它可以决定贴纸的具体位置。Transform包括且不限于:位置X、位置Y、旋转、缩放X、缩放Y、透明度、模糊值以及显示比例。前述的位置X、位置Y用于表征该Sticker对象在预设的直角坐标系中的位置信息,前述的缩放X以及缩放Y用于表征该Sticker对象在预设的直角坐标系中的缩放系数。
Transform可以与KeyFrameAnimation所包括的动画通道之间存在对应关系,例如,Transform包括位置X、位置Y、旋转、缩放X以及缩放Y,则KeyFrameAnimation包括五个动画通道,各个动画通道分别与位置X、位置Y、旋转、缩放X以及缩放Y对应。
具体实施时,用户可以利用改变Transform中所包括的变换属性或者增减动画通道来改变关键帧动画效果。
每个动画通道可以包括一个或多个关键帧集合[Key],[Key]代表着多个关键帧的集合,在集合中,多个关键帧可以按照时间升序存储。[Key]中可以包含一个或多个关键帧Key,每个Key记录了与该Key对应的关键帧时间、关键帧值以及关键帧的TimeFunction(曲线属性)。对于任一Key,对应的关键帧时间、关键帧值以及关键帧的TimeFunction可以是唯一的。TimingFunction代表上一个关键帧到当前关键帧的曲线变化过程,可以实现加速度的效果。TimingFunction可以包括线性函数,也可以包括非线性函数。
在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息,可以是在待处理视频对应的各个动画通道中分别添加关键帧,也可以是对各个动画通道统一添加关键帧。
以屏幕尺寸较小的移动终端为例进行说明,当用户在移动终端上进行视频数据处理时,受屏幕尺寸限制,移动终端可以只显示与待处理视频对应的一条时间轴,当用户针对该时间轴中的任一时间点添加关键帧时,可以理解为,在该时间点的所有已建立的动画通道均添加了一个关键帧,则第一属性信息可以理解为各个动画通道的关键帧对应的关键帧值的集合。
例如,KeyFrameAnimation包括五个动画通道,各个动画通道分别与位置X、位置Y、旋转、缩放X以及缩放Y对应,用户在时间点1建立Sticker对象1的第一个关键帧,与Sticker对象1在各个动画通道对应的初始值相比,在时间点1,位置X与缩放Y发生了改变,而位置Y、旋转以及缩放X保持不变,则将位置Y、旋转以及缩放X对应的初始值、改变后的位置X对应的关键帧值以及改变后的缩放Y对应的关键帧值作为为Sticker对象1的第一属性信息,第一个关键帧记录有该第一属性信息。
可选地,响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧,包括:若检测到用户在待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将第一移动操作结束时时间指示控件指示的时间点确定为待添加关键帧的目标时间点;响应于用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息;根据第一属性信息在待处理视频的目标时间点添加关键帧。
关键帧添加操作可以结合图2进行说明。图2为本说明书一个实施例提供的待处理视频的编辑界面的局部界面图。
具体实施时,待处理视频的编辑界面可以包含如图2所示的关键帧编辑区域201和图2中未示出的视频显示区域。如图2,关键帧编辑区域201中已添加4个关键帧,其中,时间指示控件202指示与关键帧203对应的时间点。关键帧编辑区域201还可以包括关键帧添加控件204和关键帧删除控件205。视频显示区域可以显示待处理视频,待处理视频可以包括至少一个贴图。
若检测到用户在关键帧编辑区域201中针对时间指示控件202的第一移动操作,则将第一移动操作结束时时间指示控件202指示的时间点确定为待添加关键帧的目标时间点。第一移动操作可以是拖动操作,也可以是长按操作与拖动操作的组合操作,还可以是其他移动操作,此处不再一一列举。
用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,可以是,在视频显示区域中执行的贴图调节操作。通过贴图调节操作可以改变贴图的变换属性的数值,例如,对贴图执行的贴图拖动操作可以改变贴图的位置X与位置Y,或者,对贴图执行的贴图缩放操作可以改变贴图的缩放X和缩放Y,对贴图执行的透明度调节操作可以改变贴图的透明度。
需要注意的是,在具有大尺寸屏幕的用户终端,如电脑端上利用关键帧进行视频数据处理时,待处理视频的编辑界面可以显示数量丰富的操控控件,以便于执行高精度的动画编辑过程,进而实现丰富的动画效果。然而,在另一些具有中小尺寸屏幕的用户终端,如移动终端,当用户利用关键帧进行视频数据处理时,受屏幕尺寸限制,待处理视频的编辑界面中显示的操控控件的数量较少,使得用户难以执行复杂的动画编辑操作,进而降低了动画效果。
而本实施例中,采用前述的Sticker对象的数据结构,且通过在视频显示区域中执行的贴图调节操作改变贴图的变换属性的数值,能够在屏幕尺寸较小的用户终端上进行视频数据处理的情况下,实现精细而复杂的动画编辑操作,丰富了动画效果,提高了关键帧动画的灵活性。
响应于用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息,在具体实施时,可以将第一属性调节操作执行之后的贴图的各个变换属性的数值的集合作为贴图的第一属性信息。
根据第一属性信息在待处理视频的目标时间点添加关键帧,可以理解为,在目标时间点添加关键帧,该关键帧记录有贴图的第一属性信息。
具体实施时,移动终端可以先确定待处理视频当前已添加的关键帧的数量作为第一数量,再根据第一数量和第一属性信息在待处理视频的目标时间点添加关键帧。根据第一数量和第一属性信息在待处理视频的目标时间点添加关键帧,包括:确定第一数量是否为零;若是,则在检测到用户在编辑界面中的关键帧添加操作时,根据第一属性信息在待处理视频的目标时间点添加关键帧;若否,则根据第一属性信息在待处理视频的目标时间点添加关键帧。
例如,待处理视频当前已添加的关键帧的数量为零,即不存在已添加的关键帧,若检测到用户在关键帧编辑区域201中针对时间指示控件202的第一移动操作,则将第一移动操作结束时时间指示控件202指示的时间点确定为待添加关键帧的目标时间点,响应于用户在视频显示区域中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息,根据用户针对关键帧添加控件204的单击操作,在目标时间点添加第一个关键帧,该关键帧记录有第一属性信息。
又例如,待处理视频当前已添加的关键帧的数量大于零,即存在已添加的关键帧,若检测到用户在关键帧编辑区域201中针对时间指示控件202的第一移动操作,则将第一移动操作结束时时间指示控件202指示的时间点确定为待添加关键帧的目标时间点,响应于用户在视频显示区域中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息并在目标时间点添加第一个关键帧,该关键帧记录有第一属性信息。
下面列举几种除添加关键帧外的关键帧编辑的操作过程:
(1)若检测到用户对任一关键帧的选择操作,则将被用户选中的关键帧确定为目标关键帧,激活目标关键帧;目标关键帧记录有目标贴图的第一属性信息;响应于用户对目标贴图的第二调节操作,确定目标贴图的第一属性信息的更新信息;根据更新信息对目标关键帧记录的第一属性信息进行更新处理。图2中示出的关键帧203可以是被激活的目标关键帧。选择操作可以是针对时间指示控件202的拖动操作,该拖动操作结束时时间指示控件202停留在目标关键帧上。选择操作也可以是针对目标关键帧的单击操作。
(2)若检测到用户对任一关键帧的选择操作,则将被用户选中的关键帧作为目标关键帧,激活目标关键帧;响应于用户对目标关键帧的删除操作,删除目标关键帧。用户对目标关键帧的删除操作,可以是用户对关键帧删除控件205的单击操作。
(3)若检测到用户对任一关键帧选择操作,则将被用户选中的关键帧作为目标关键帧,激活目标关键帧;目标关键帧位于第三时间点;响应于用户针对时间指示控件的第二移动操作,将第二移动操作结束时时间指示控件指示的时间点确定为第四时间点,将目标关键帧从第三时间点移动至第四时间点。
S106,若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;
在对采用上述数据结构的Sticker对象的关键帧进行添加、更新、删除等操作之后,使得时间轴上存在大于等于两个关键帧,可以根据至少两个关键帧进行插值处理。插值的定义为在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。
预设的插值条件可以是检测到用户针对插值控件的触发操作,也可以是关键帧的数量大于等于预设阈值,还可以是视频数据处理时间达到预设时间阈值等等。
可选地,根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息,包括:将待处理视频的时间轴中,除各关键帧所在的目标时间点之外的各时间点确定为插值时间点;根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧;针对每个插值时间点,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息。
下面可以结合图3A-图3D说明插值时间点。
图3A-图3D为本说明书一个实施例提供的视频数据的处理方法中插值序号确定方法的一组实例图。如图3A,各关键帧所在的目标时间点包括0.0,0.4,1.2,3.5,3.6,6.6,8.8,9.0以及9.4,则除前述的9个目标之间点之外的时间点均为插值时间点。例如,针对插值时间点5.6,与5.6相邻的前一个关键帧为目标时间点3.6所对应的关键帧,后一个关键帧为目标时间点6.6所对应的关键帧。
可选地,根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧,包括:根据目标时间点的时间先后顺序,对目标时间点进行顺序编号,得到每个目标时间点的序号;确定序号中的最大序号、最小序号以及目标中间序号;针对每个插值时间点,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号;将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧;将插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧。
根据目标时间点的时间先后顺序,对目标时间点进行顺序编号,得到每个目标时间点的序号,参照图3A,0.0对应于序号0,0.4对应于序号1……9.4对应于序号8,在序号8之后还有一个空位对应于序号9。
确定序号中的最大序号、最小序号以及目标中间序号,最大序号可以是关键帧数量,最小序号可以是零,目标中间序号可以是最大序号与最小序号的平均值。该平均值可能是整数,也可能是非整数,若求得的平均值为非整数,则舍弃掉小数点后的数字,只保留整数位,将舍弃后得到的数值作为目标中间序号。如图3A,通过“高”303标示最大序号,通过“中”302标示目标中间序号,以及通过“低”301标示最小序号。则此时“高”303对应于序号9,“中”302对应于序号4,以及“低”301对应于序号0。
将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧;将插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧。在另一实施例中,也可以是,将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧;将插值序号的上一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧。
可选地,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号,包括:将最大序号、最小序号以及目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;依次比对插值时间点与当前目标中间序号对应的目标时间点的时间先后顺序;根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,将相同的序号确定为插值时间点的插值序号。
如图3A,首先,移动终端可以比较插值时间点与序号0对应的目标时间点,即第一个关键帧对应的目标时间点。若插值时间点小于等于序号0对应的目标时间点,即按照时间轴上的时间顺序,插值时间点位于序号0对应的目标时间点之前,则将序号0作为插值序号。若插值时间点大于等于序号0对应的目标时间点,则继续执行下一个判断。
其次,移动终端可以比较插值时间点与序号8对应的目标时间点,即最后一个关键帧对应的目标时间点。若插值时间点大于等于序号8对应的目标时间点,即按照时间轴上的时间顺序,插值时间点位于序号8对应的目标时间点之后,则将序号9作为插值序号。若插值时间点小于等于序号8对应的目标时间点,则继续执行下一个判断。该步骤可以与上一个比较插值时间点与序号0对应的目标时间点的步骤交换执行顺序。
接着,确定序号中的最大序号、最小序号以及目标中间序号。将最大序号、最小序号以及目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号,可以理解为,将序号9确定为当前最大序号,将序号0确定为当前最小序号,将序号4确定为当前目标中间序号。
最后,比较插值时间点与当前目标中间序号(序号4)对应的目标时间点,根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,将相同的序号确定为插值时间点的插值序号。
可选地,根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,包括:若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之后,则将当前最小序号和当前目标中间序号确定为待更新的序号;按照序号的先后顺序将中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和当前最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之前,则将当前最大序号和当前目标中间序号确定为待更新的序号;将当前目标中间序号确定为当前最大序号;根据更新后的当前最大序号和当前最小序号重新确定目标中间序号;将重新确定的目标中间序号确定为当前目标中间序号;若确定更新处理后的当前最大序号、当前最小序号和当前目标中间序号为相同的序号,则将相同的序号确定为插值时间点的插值序号。
以插值时间点为8.9为例,如图3A和图3B,8.9大于当前目标中间序号(序号4)对应的目标时间点3.6,则将当前最小序号(序号0)和当前目标中间序号(序号4)确定为待更新的序号,具体为,按照序号的先后顺序将中间目标序号(序号4)的下一个序号(序号5)确定为当前最小序号,根据更新后的当前最小序号(序号5)和当前最大序号(序号9)重新确定目标中间序号,求5和9的平均值得到7,将重新确定的目标中间序号(序号7)确定为当前目标中间序号。
如图3C,8.9小于当前目标中间序号(序号7)对应的目标时间点9.0,则将当前最大序号(序号9)和当前目标中间序号(序号7)确定为待更新的序号;将当前目标中间序号(序号7)确定为当前最大序号,具体为,根据更新后的当前最大序号(序号7)和当前最小序号(序号5)重新确定目标中间序号,求7和5的平均值得到6,将重新确定的目标中间序号(序号6)确定为当前目标中间序号。
如图3D,8.9大于当前目标中间序号(序号6)对应的目标时间8.8,则将当前最小序号(序号5)和当前目标中间序号(序号6)确定为待更新的序号,具体为,按照序号的先后顺序将中间目标序号(序号6)的下一个序号(序号7)确定为当前最小序号,根据更新后的当前最小序号(序号7)和当前最大序号(序号7)重新确定目标中间序号,求7和7的平均值得到7,将重新确定的目标中间序号(序号7)确定为当前目标中间序号。此时,当前最小序号(序号7)、当前最大序号(序号7)以及当前目标中间序号(序号7)为相同的序号,则将相同的序号(序号7)确定为插值时间点的插值序号。
可选地,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息,包括:获取插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;获取插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;根据预设方式,基于第一时间点和第二时间点,确定插值时间点对应的时间插值比例;根据时间插值比例和预设的曲线映射公式,确定插值时间点对应的曲线映射比例;获取前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;获取后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;根据曲线映射比例、第一目标属性信息以及第二目标属性信息,确定相应贴图在插值时间点的第二属性信息。
获取插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;获取插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;根据预设方式,基于第一时间点和第二时间点,确定插值时间点对应的时间插值比例。
例如,插值时间点8.9的前一个关键帧所在的目标时间点为8.8,作为第一时间点;插值时间点的后一个关键帧所在的目标时间点为9.0,作为第二时间点。
时间插值比例的获取公式如下:
r=(t-T1)/(T2-T1) (1)
其中,r为时间插值比例,t指的是插值时间点,T1指的是第一时间点,T2指的是第二时间点。
图4为本说明书一个实施例提供的插值的示意图。如图4所示,插值时间点405的上一个关键帧对应于目标时间点402,则该目标时间点402为第一时间点;插值时间点405的下一个关键帧对应于目标时间点403,则该目标时间点403为第二时间点。
根据时间插值比例和预设的曲线映射公式,确定插值时间点对应的曲线映射比例。曲线映射公式如下所示:
r′=curve.remapping(r) (2)
r′指的是曲线映射比例,r是通过公式(1)计算得到的时间插值比例,函数curve.remapping(x)指的是插值时间点的下一个关键帧的关键帧信息中所包括的曲线属性TimingFunction,其自变量用x表示。
根据曲线映射比例、第一目标属性信息以及第二目标属性信息,确定相应贴图在插值时间点的第二属性信息。针对贴图的任一变换属性,可以认为,根据第一目标属性信息中该变换属性的数值、第二目标属性信息中该变换属性的数值以及区别映射比例r′,可以求得贴图在插值时间点的该变换属性的预测数值,即贴图在插值时间点的插值,插值计算公式如下:
v=T1.value+(T2.value-T1.value)*r′ (3)
其中,v表示贴图在插值时间点的插值,T1.value表示插值时间点的前一个关键帧的第一目标属性信息,T2.value表示插值时间点的后一个关键帧的第二目标属性信息,r′表示曲线映射比例。
第二属性信息可以视为贴图在插值时间点的各个变换属性的集合。
S108,根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。
第一属性信息可以视为贴图在各个目标时间点的各个变换属性的集合,则第一属性信息和第二属性信息共同构成了贴图在时间轴上的任一时间点的各个变换属性的数值。
针对待处理视频中的任一贴图,根据该贴图在时间轴上的任一时间点的各个变换属性的数值,可以对待处理视频的视频数据进行渲染处理,以获得目标视频,该目标视频中,贴图可以按照用户意愿流畅而自然地运动,使得关键帧动画的灵活性提升。
在如图1所示的实施例中,通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
图5为本说明书一个实施例提供的视频数据的处理装置的模块组成示意图。如图5所示,该视频数据的处理装置包括:
视频加载模块51,用于加载待处理视频;
关键帧添加模块52,用于响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;
贴图处理模块53,用于若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;
视频生成模块54,用于根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。
可选地,关键帧添加模块52,具体用于:若检测到用户在待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将第一移动操作结束时时间指示控件指示的时间点确定为待添加关键帧的目标时间点;响应于用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息;根据第一属性信息在待处理视频的目标时间点添加关键帧。
可选地,贴图处理模块53,包括:时间点确定子模块,用于将待处理视频的时间轴中,除各关键帧所在的目标时间点之外的各时间点确定为插值时间点;关键帧确定子模块,用于根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧;属性信息确定子模块,用于针对每个插值时间点,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息。
可选地,关键帧确定子模块,包括:目标时间点编号单元,用于根据目标时间点的时间先后顺序,对目标时间点进行顺序编号,得到每个目标时间点的序号;第一序号确定单元,用于确定序号中的最大序号、最小序号以及目标中间序号;第二序号确定单元,用于针对每个插值时间点,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号;第一关键帧确定单元,用于将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧;第二关键帧确定单元,用于将插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧。
可选地,第二序号确定单元,包括:第一序号确定子单元,用于将最大序号、最小序号以及目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;时间点顺序比对子单元,用于依次比对插值时间点与当前目标中间序号对应的目标时间点的时间先后顺序;插值序号确定子单元,用于根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,将相同的序号确定为插值时间点的插值序号。
可选地,插值序号确定子单元,具体用于:若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之后,则将当前最小序号和当前目标中间序号确定为待更新的序号;按照序号的先后顺序将中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和当前最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之前,则将当前最大序号和当前目标中间序号确定为待更新的序号;将当前目标中间序号确定为当前最大序号;根据更新后的当前最大序号和当前最小序号重新确定目标中间序号;将重新确定的目标中间序号确定为当前目标中间序号;若确定更新处理后的当前最大序号、当前最小序号和当前目标中间序号为相同的序号,则将相同的序号确定为插值时间点的插值序号。
可选地,属性信息确定子模块,具体用于:获取插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;获取插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;根据预设方式,基于第一时间点和第二时间点,确定插值时间点对应的时间插值比例;根据时间插值比例和预设的曲线映射公式,确定插值时间点对应的曲线映射比例;获取前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;获取后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;根据曲线映射比例、第一目标属性信息以及第二目标属性信息,确定相应贴图在插值时间点的第二属性信息。
在本说明书一个实施例中,通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
本说明书一实施例提供的视频数据的处理装置能够实现前述视频数据的处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
进一步地,本说明书一个实施例还提供了一种视频数据的处理设备,图6为本说明书一实施例提供的视频数据的处理设备的结构示意图,如图6所示,该设备包括:存储器601、处理器602、总线603和通信接口604。存储器601、处理器602和通信接口604通过总线603进行通信,通信接口604可以包括输入输出接口,输入输出接口包括但不限于键盘、鼠标、显示器、麦克风、扩音器等。
图6中,存储器601上存储有可在处理器602上运行的计算机可执行指令,计算机可执行指令被处理器602执行时实现以下流程:
加载待处理视频;
响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;
若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;
根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。
可选地,计算机可执行指令被处理器602执行时,响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧,包括:若检测到用户在待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将第一移动操作结束时时间指示控件指示的时间点确定为待添加关键帧的目标时间点;响应于用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息;根据第一属性信息在待处理视频的目标时间点添加关键帧。
可选地,计算机可执行指令被处理器602执行时,根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息,包括:将待处理视频的时间轴中,除各关键帧所在的目标时间点之外的各时间点确定为插值时间点;根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧;针对每个插值时间点,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息。
可选地,计算机可执行指令被处理器602执行时,根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧,包括:根据目标时间点的时间先后顺序,对目标时间点进行顺序编号,得到每个目标时间点的序号;确定序号中的最大序号、最小序号以及目标中间序号;针对每个插值时间点,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号;将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧;将插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧。
可选地,计算机可执行指令被处理器602执行时,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号,包括:将最大序号、最小序号以及目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;依次比对插值时间点与当前目标中间序号对应的目标时间点的时间先后顺序;根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,将相同的序号确定为插值时间点的插值序号。
可选地,计算机可执行指令被处理器602执行时,根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,包括:若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之后,则将当前最小序号和当前目标中间序号确定为待更新的序号;按照序号的先后顺序将中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和当前最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之前,则将当前最大序号和当前目标中间序号确定为待更新的序号;将当前目标中间序号确定为当前最大序号;根据更新后的当前最大序号和当前最小序号重新确定目标中间序号;将重新确定的目标中间序号确定为当前目标中间序号;若确定更新处理后的当前最大序号、当前最小序号和当前目标中间序号为相同的序号,则将相同的序号确定为插值时间点的插值序号。
可选地,计算机可执行指令被处理器602执行时,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息,包括:获取插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;获取插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;根据预设方式,基于第一时间点和第二时间点,确定插值时间点对应的时间插值比例;根据时间插值比例和预设的曲线映射公式,确定插值时间点对应的曲线映射比例;获取前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;获取后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;根据曲线映射比例、第一目标属性信息以及第二目标属性信息,确定相应贴图在插值时间点的第二属性信息。
在本说明书一个实施例中,通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
本说明书一实施例提供的视频数据的处理设备能够实现前述视频数据的处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
进一步地,本说明书另一个实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储计算机可执行指令,计算机可执行指令被处理器执行时实现以下流程:
加载待处理视频;
响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;
若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;
根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。
可选地,计算机可执行指令被处理器602执行时,响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧,包括:若检测到用户在待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将第一移动操作结束时时间指示控件指示的时间点确定为待添加关键帧的目标时间点;响应于用户在编辑界面中针对待处理视频的至少一个贴图的第一属性调节操作,确定贴图的第一属性信息;根据第一属性信息在待处理视频的目标时间点添加关键帧。
可选地,计算机可执行指令被处理器602执行时,根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息,包括:将待处理视频的时间轴中,除各关键帧所在的目标时间点之外的各时间点确定为插值时间点;根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧;针对每个插值时间点,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息。
可选地,计算机可执行指令被处理器602执行时,根据目标时间点,确定与每个插值时间点相邻的前一个关键帧和后一个关键帧,包括:根据目标时间点的时间先后顺序,对目标时间点进行顺序编号,得到每个目标时间点的序号;确定序号中的最大序号、最小序号以及目标中间序号;针对每个插值时间点,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号;将插值序号对应的目标时间点上的关键帧,确定为与插值时间点相邻的前一个关键帧;将插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与插值时间点相邻的后一个关键帧。
可选地,计算机可执行指令被处理器602执行时,根据最大序号、最小序号以及目标中间序号,确定插值时间点的插值序号,包括:将最大序号、最小序号以及目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;依次比对插值时间点与当前目标中间序号对应的目标时间点的时间先后顺序;根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,将相同的序号确定为插值时间点的插值序号。
可选地,计算机可执行指令被处理器602执行时,根据比对结果确定当前最大序号、当前最小序号和当前目标中间序号中待更新的序号;对待更新的序号进行更新处理得到对应的当前序号,直至当前最大序号、当前最小序号和当前目标中间序号为相同的序号,包括:若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之后,则将当前最小序号和当前目标中间序号确定为待更新的序号;按照序号的先后顺序将中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和当前最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;若比对结果为插值时间点位于当前目标中间序号对应的目标时间点之前,则将当前最大序号和当前目标中间序号确定为待更新的序号;将当前目标中间序号确定为当前最大序号;根据更新后的当前最大序号和当前最小序号重新确定目标中间序号;将重新确定的目标中间序号确定为当前目标中间序号;若确定更新处理后的当前最大序号、当前最小序号和当前目标中间序号为相同的序号,则将相同的序号确定为插值时间点的插值序号。
可选地,计算机可执行指令被处理器602执行时,根据插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在插值时间点的第二属性信息,包括:获取插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;获取插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;根据预设方式,基于第一时间点和第二时间点,确定插值时间点对应的时间插值比例;根据时间插值比例和预设的曲线映射公式,确定插值时间点对应的曲线映射比例;获取前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;获取后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;根据曲线映射比例、第一目标属性信息以及第二目标属性信息,确定相应贴图在插值时间点的第二属性信息。
在本说明书一个实施例中,通过加载待处理视频;响应于用户对待处理视频的关键帧添加操作,在待处理视频中添加关键帧;其中,关键帧记录有至少一个贴图的第一属性信息;若确定满足预设的插值条件,则根据添加的各关键帧所记录的第一属性信息,对每个贴图进行至少一次插值处理,得到每个贴图的至少一个第二属性信息;根据第一属性信息和第二属性信息进行渲染处理,得到目标视频。通过本实施例,能够通过少量操作灵活地获取各个贴图的关键帧所记录的第一属性信息和进行插值处理后得到的第二属性信息,利用获取的第一属性信息和第二属性信息渲染目标视频能够丰富动画效果,提高关键帧动画的灵活性。
其中,所述的计算机可读存储介质包括只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
本说明书一实施例提供的计算机可读存储介质能够实现前述视频数据的处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本说明书的实施例可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。
Claims (14)
1.一种视频数据的处理方法,其特征在于,包括:
加载待处理视频;
响应于用户对所述待处理视频的关键帧添加操作,在所述待处理视频中添加关键帧;其中,所述关键帧记录有至少一个贴图的第一属性信息;
若确定满足预设的插值条件,则根据添加的各所述关键帧所记录的所述第一属性信息,对每个所述贴图进行至少一次插值处理,得到每个所述贴图的至少一个第二属性信息;
根据所述第一属性信息和所述第二属性信息进行渲染处理,得到目标视频。
2.根据权利要求1所述的方法,所述响应于用户对所述待处理视频的关键帧添加操作,在所述待处理视频中添加关键帧,包括:
若检测到用户在所述待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将所述第一移动操作结束时所述时间指示控件指示的时间点确定为待添加关键帧的目标时间点;
响应于所述用户在所述编辑界面中针对所述待处理视频的至少一个贴图的第一属性调节操作,确定所述贴图的第一属性信息;
根据所述第一属性信息在所述待处理视频的所述目标时间点添加关键帧。
3.根据权利要求1所述的方法,其特征在于,所述根据添加的各所述关键帧所记录的所述第一属性信息,对每个所述贴图进行至少一次插值处理,得到每个所述贴图的至少一个第二属性信息,包括:
将所述待处理视频的时间轴中,除各所述关键帧所在的目标时间点之外的各时间点确定为插值时间点;
根据所述目标时间点,确定与每个所述插值时间点相邻的前一个关键帧和后一个关键帧;
针对每个所述插值时间点,根据所述插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在所述插值时间点的第二属性信息。
4.根据权利要求3所述的方法,其特征在于,所述根据所述目标时间点,确定与每个所述插值时间点相邻的前一个关键帧和后一个关键帧,包括:
根据所述目标时间点的时间先后顺序,对所述目标时间点进行顺序编号,得到每个所述目标时间点的序号;
确定所述序号中的最大序号、最小序号以及目标中间序号;
针对每个插值时间点,根据所述最大序号、所述最小序号以及所述目标中间序号,确定所述插值时间点的插值序号;
将所述插值序号对应的目标时间点上的关键帧,确定为与所述插值时间点相邻的前一个关键帧;
将所述插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与所述插值时间点相邻的后一个关键帧。
5.根据权利要求4所述的方法,所述根据所述最大序号、所述最小序号以及所述目标中间序号,确定所述插值时间点的插值序号,包括:
将所述最大序号、所述最小序号以及所述目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;
依次比对所述插值时间点与所述当前目标中间序号对应的目标时间点的时间先后顺序;
根据比对结果确定所述当前最大序号、所述当前最小序号和所述当前目标中间序号中待更新的序号;对所述待更新的序号进行更新处理得到对应的当前序号,直至所述当前最大序号、所述当前最小序号和所述当前目标中间序号为相同的序号,将所述相同的序号确定为所述插值时间点的插值序号。
6.根据权利要求5所述的方法,其特征在于,所述根据比对结果确定所述当前最大序号、所述当前最小序号和所述当前目标中间序号中待更新的序号;对所述待更新的序号进行更新处理得到对应的当前序号,直至所述当前最大序号、所述当前最小序号和所述当前目标中间序号为相同的序号,包括:
若所述比对结果为所述插值时间点位于所述当前目标中间序号对应的目标时间点之后,则将所述当前最小序号和所述当前目标中间序号确定为待更新的序号;按照序号的先后顺序将所述中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和所述最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;
若所述比对结果为所述插值时间点位于所述当前目标中间序号对应的目标时间点之前,则将所述当前最大序号和所述当前目标中间序号确定为待更新的序号;将所述当前目标中间序号确定为所述当前最大序号;根据更新后的所述当前最大序号和所述当前最小序号重新确定目标中间序号;将重新确定的所述目标中间序号确定为当前目标中间序号;
若确定更新处理后的所述当前最大序号、所述当前最小序号和所述当前目标中间序号为相同的序号,则将所述相同的序号确定为所述插值时间点的插值序号。
7.根据权利要求3所述的方法,其特征在于,所述根据所述插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在所述插值时间点的第二属性信息,包括:
获取所述插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;
获取所述插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;
根据预设方式,基于所述第一时间点和所述第二时间点,确定所述插值时间点对应的时间插值比例;
根据所述时间插值比例和预设的曲线映射公式,确定所述插值时间点对应的曲线映射比例;
获取所述前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;
获取所述后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;
根据所述曲线映射比例、所述第一目标属性信息以及所述第二目标属性信息,确定相应贴图在所述插值时间点的第二属性信息。
8.一种视频数据的处理装置,其特征在于,包括:
视频加载模块,用于加载待处理视频;
关键帧添加模块,用于响应于用户对所述待处理视频的关键帧添加操作,在所述待处理视频中添加关键帧;其中,所述关键帧记录有至少一个贴图的第一属性信息;
贴图处理模块,用于若确定满足预设的插值条件,则根据添加的各所述关键帧所记录的所述第一属性信息,对每个所述贴图进行至少一次插值处理,得到每个所述贴图的至少一个第二属性信息;
视频生成模块,用于根据所述第一属性信息和所述第二属性信息进行渲染处理,得到目标视频。
9.根据权利要求8所述的装置,所述关键帧添加模块,具体用于:
若检测到用户在所述待处理视频的编辑界面中针对时间指示控件的第一移动操作,则将所述第一移动操作结束时所述时间指示控件指示的时间点确定为待添加关键帧的目标时间点;
响应于所述用户在所述编辑界面中针对所述待处理视频的至少一个贴图的第一属性调节操作,确定所述贴图的第一属性信息;
根据所述第一属性信息在所述待处理视频的所述目标时间点添加关键帧。
10.根据权利要求8所述的装置,其特征在于,所述贴图处理模块,包括:
时间点确定子模块,用于将所述待处理视频的时间轴中,除各所述关键帧所在的目标时间点之外的各时间点确定为插值时间点;
关键帧确定子模块,用于根据所述目标时间点,确定与每个所述插值时间点相邻的前一个关键帧和后一个关键帧;
属性信息确定子模块,用于针对每个所述插值时间点,根据所述插值时间点的前一个关键帧和后一个关键帧记录的至少一个贴图的第一属性信息,确定相应贴图在所述插值时间点的第二属性信息。
11.根据权利要求10所述的装置,其特征在于,所述关键帧确定子模块,包括:
目标时间点编号单元,用于根据所述目标时间点的时间先后顺序,对所述目标时间点进行顺序编号,得到每个所述目标时间点的序号;
第一序号确定单元,用于确定所述序号中的最大序号、最小序号以及目标中间序号;
第二序号确定单元,用于针对每个插值时间点,根据所述最大序号、所述最小序号以及所述目标中间序号,确定所述插值时间点的插值序号;
第一关键帧确定单元,用于将所述插值序号对应的目标时间点上的关键帧,确定为与所述插值时间点相邻的前一个关键帧;
第二关键帧确定单元,用于将所述插值序号的下一个序号所对应的目标时间点上的关键帧,确定为与所述插值时间点相邻的后一个关键帧。
12.根据权利要求11所述的装置,其特征在于,所述第二序号确定单元,包括:
第一序号确定子单元,用于将所述最大序号、所述最小序号以及所述目标中间序号,分别确定为当前最大序号、当前最小序号和当前目标中间序号;
时间点顺序比对子单元,用于依次比对所述插值时间点与所述当前目标中间序号对应的目标时间点的时间先后顺序;
插值序号确定子单元,用于根据比对结果确定所述当前最大序号、所述当前最小序号和所述当前目标中间序号中待更新的序号;对所述待更新的序号进行更新处理得到对应的当前序号,直至所述当前最大序号、所述当前最小序号和所述当前目标中间序号为相同的序号,将所述相同的序号确定为所述插值时间点的插值序号。
13.根据权利要求12所述的装置,其特征在于,所述插值序号确定子单元,具体用于:
若所述比对结果为所述插值时间点位于所述当前目标中间序号对应的目标时间点之后,则将所述当前最小序号和所述当前目标中间序号确定为待更新的序号;按照序号的先后顺序将所述中间目标序号的下一个序号确定为当前最小序号;根据更新后的当前最小序号和所述最大序号重新确定目标中间序号,将重新确定的目标中间序号确定为当前目标中间序号;
若所述比对结果为所述插值时间点位于所述当前目标中间序号对应的目标时间点之前,则将所述当前最大序号和所述当前目标中间序号确定为待更新的序号;将所述当前目标中间序号确定为所述当前最大序号;根据更新后的所述当前最大序号和所述当前最小序号重新确定目标中间序号;将重新确定的所述目标中间序号确定为当前目标中间序号;
若确定更新处理后的所述当前最大序号、所述当前最小序号和所述当前目标中间序号为相同的序号,则将所述相同的序号确定为所述插值时间点的插值序号。
14.根据权利要求10所述的装置,其特征在于,所述属性信息确定子模块,具体用于:
获取所述插值时间点的前一个关键帧所在的目标时间点,作为第一时间点;
获取所述插值时间点的后一个关键帧所在的目标时间点,作为第二时间点;
根据预设方式,基于所述第一时间点和所述第二时间点,确定所述插值时间点对应的时间插值比例;
根据所述时间插值比例和预设的曲线映射公式,确定所述插值时间点对应的曲线映射比例;
获取所述前一个关键帧记录的至少一个贴图的第一属性信息,作为第一目标属性信息;
获取所述后一个关键帧记录的至少一个贴图的第一属性信息,作为第二目标属性信息;
根据所述曲线映射比例、所述第一目标属性信息以及所述第二目标属性信息,确定相应贴图在所述插值时间点的第二属性信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111226168.0A CN113992977A (zh) | 2021-10-21 | 2021-10-21 | 视频数据的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111226168.0A CN113992977A (zh) | 2021-10-21 | 2021-10-21 | 视频数据的处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113992977A true CN113992977A (zh) | 2022-01-28 |
Family
ID=79739868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111226168.0A Pending CN113992977A (zh) | 2021-10-21 | 2021-10-21 | 视频数据的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113992977A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436310A (zh) * | 2008-11-28 | 2009-05-20 | 牡丹江新闻传媒集团有限公司 | 二维动画制作过程中的中间帧自动生成的方法 |
CN102682459A (zh) * | 2011-03-15 | 2012-09-19 | 新奥特(北京)视频技术有限公司 | 关键帧动画曲线的插值方法 |
CN104318600A (zh) * | 2014-10-10 | 2015-01-28 | 无锡梵天信息技术股份有限公司 | 一种使用Bézier曲线实现角色行走轨迹动画的方法 |
CN108010112A (zh) * | 2017-11-28 | 2018-05-08 | 腾讯数码(天津)有限公司 | 动画处理方法、装置及存储介质 |
CN109242939A (zh) * | 2018-10-10 | 2019-01-18 | 广联达科技股份有限公司 | 一种模拟施工进度的关键帧动画制作方法和装置 |
CN109658484A (zh) * | 2018-12-21 | 2019-04-19 | 上海哔哩哔哩科技有限公司 | 一种动画自动生成方法及动画自动生成系统 |
CN110428485A (zh) * | 2019-07-31 | 2019-11-08 | 网易(杭州)网络有限公司 | 二维动画编辑方法及装置、电子设备、存储介质 |
CN112634409A (zh) * | 2020-12-28 | 2021-04-09 | 稿定(厦门)科技有限公司 | 自定义动画曲线生成方法及装置 |
-
2021
- 2021-10-21 CN CN202111226168.0A patent/CN113992977A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101436310A (zh) * | 2008-11-28 | 2009-05-20 | 牡丹江新闻传媒集团有限公司 | 二维动画制作过程中的中间帧自动生成的方法 |
CN102682459A (zh) * | 2011-03-15 | 2012-09-19 | 新奥特(北京)视频技术有限公司 | 关键帧动画曲线的插值方法 |
CN104318600A (zh) * | 2014-10-10 | 2015-01-28 | 无锡梵天信息技术股份有限公司 | 一种使用Bézier曲线实现角色行走轨迹动画的方法 |
CN108010112A (zh) * | 2017-11-28 | 2018-05-08 | 腾讯数码(天津)有限公司 | 动画处理方法、装置及存储介质 |
CN109242939A (zh) * | 2018-10-10 | 2019-01-18 | 广联达科技股份有限公司 | 一种模拟施工进度的关键帧动画制作方法和装置 |
CN109658484A (zh) * | 2018-12-21 | 2019-04-19 | 上海哔哩哔哩科技有限公司 | 一种动画自动生成方法及动画自动生成系统 |
CN110428485A (zh) * | 2019-07-31 | 2019-11-08 | 网易(杭州)网络有限公司 | 二维动画编辑方法及装置、电子设备、存储介质 |
CN112634409A (zh) * | 2020-12-28 | 2021-04-09 | 稿定(厦门)科技有限公司 | 自定义动画曲线生成方法及装置 |
Non-Patent Citations (1)
Title |
---|
关东东;关华勇;傅颖;: "一种3维动画中间帧非线性插值算法", no. 12 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105184839B (zh) | 视频与几何图形的无缝表示 | |
US20100214299A1 (en) | Graphical manipulation of chart elements for interacting with chart data | |
CN108492338B (zh) | 动画文件的压缩方法、装置、存储介质和电子装置 | |
JP2001013950A (ja) | 静的図表間のデータ関係の動的表示を制御するためのシステムおよび方法 | |
CN112508793A (zh) | 一种图像缩放方法、装置及电子设备和存储介质 | |
CA2758140C (en) | Conversion of swf morph shape definitions for vector graphics rendering | |
CN112565868B (zh) | 视频播放方法、装置及电子设备 | |
US9396575B2 (en) | Animation via pin that defines multiple key frames | |
CN113827965B (zh) | 游戏场景中样条线的渲染方法、装置及设备 | |
CN110572717A (zh) | 视频编辑方法和装置 | |
CA2758143C (en) | Conversion of swf shape definitions for vector graphics rendering | |
CN114302009A (zh) | 视频处理方法、装置、电子设备及介质 | |
CN111428455B (zh) | 表格管理方法、装置、设备及存储介质 | |
CN113992977A (zh) | 视频数据的处理方法和装置 | |
CN111757177A (zh) | 视频裁剪方法及装置 | |
CN115423896A (zh) | 曲线生成方法、装置、电子设备及存储介质 | |
CN110703973B (zh) | 图像裁剪方法和装置 | |
CN113268301A (zh) | 动画生成方法、装置、设备及存储介质 | |
CN108765527B (zh) | 动画显示方法、装置、电子设备及存储介质 | |
CN110662104B (zh) | 视频拖动条生成方法、装置、电子设备及存储介质 | |
JP2001256508A (ja) | アニメーション作成装置および方法、ならびにコンピュータで実行可能なアニメーション作成方法のプログラムを記録したコンピュータ読取可能な記録媒体 | |
JP2009015774A (ja) | 情報処理装置及び情報処理方法 | |
CN117115309A (zh) | 旅行相册视频生成方法和系统 | |
CN117649460A (zh) | 蒙版操作方法及其设备、存储介质、终端 | |
CN114100123A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20220128 |