控制镜头运动的方法、装置、设备及存储介质与流程

专利2022-06-29  61


本申请实施例涉及计算机技术领域,特别涉及一种控制镜头运动的方法、装置、设备及存储介质。



背景技术:

随着游戏技术的快速发展,越来越多的游戏客户端为用户提供导播模式。在用户利用导播模式观看游戏视频的过程中,游戏客户端可以控制导播镜头运动,将导播镜头聚焦到精彩的游戏场景,以提高用户的游戏视频观看体验。



技术实现要素:

本申请实施例提供了一种控制镜头运动的方法、装置、设备及存储介质,可用于提高控制镜头运动的效果。所述技术方案如下:

一方面,本申请实施例提供了一种控制镜头运动的方法,所述方法包括:

基于目标时间分片对应的多个目标帧的数据,获取镜头在所述目标时间分片中需要满足的第一目标参数,所述第一目标参数包括第一位置参数和第一缩放参数中的至少一个;

基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,所述目标运动速度包括目标平移速度和目标缩放速度中的至少一个;

基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

另一方面,提供了一种控制镜头运动的装置,所述装置包括:

获取模块,用于基于目标时间分片对应的多个目标帧的数据,获取镜头在所述目标时间分片中需要满足的第一目标参数,所述第一目标参数包括第一位置参数和第一缩放参数中的至少一个;

确定模块,用于基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,所述目标运动速度包括目标平移速度和目标缩放速度中的至少一个;

控制模块,用于基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

在一种可能实现方式中,任一目标帧对应的采样参数包括采样缩放参数,所述获取模块,还用于基于任一目标帧的数据,获取所述任一目标帧对应的距离参数;基于距离-缩放变化倍率曲线,确定与所述距离参数对应的缩放变化倍率;基于所述缩放变化倍率,确定所述任一目标帧对应的采样缩放参数。

在一种可能实现方式中,所述确定模块,用于基于第一运动方向和第二运动方向,获取所述目标时间分片对应的转向角度;确定与所述转向角度对应的转向混合系数;基于所述转向混合系数更新所述初始运动速度,得到更新后的初始运动速度;基于所述第一目标参数、所述更新后的初始运动速度、所述目标时间分片对应的时间间隔和所述时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度。

在一种可能实现方式中,确定模块,用于基于所述镜头在所述目标时间分片中已满足的第二目标参数和所述第一目标参数,获取所述镜头在所述目标时间分片中的变化参数,所述第二目标参数包括第二位置参数和第二缩放参数中的至少一个;获取所述时间-速度变化倍率曲线对应的积分值;基于所述变化参数、所述初始运动速度、所述目标时间分片对应的时间间隔和所述时间-速度变化倍率曲线对应的积分值,确定所述镜头在所述目标时间分片中的目标运动速度。

在一种可能实现方式中,所述控制模块,用于将控制所述镜头运动的过程划分为参考数量个子过程;基于任一子过程对应的时间参数和所述时间-速度变化倍率曲线,确定所述任一子过程对应的速度变化倍率;基于所述初始运动速度、所述目标运动速度和所述任一子过程对应的速度变化倍率,确定所述任一子过程对应的子运动速度;在所述任一子过程对应的时间间隔内,按照所述任一子过程对应的子运动速度控制所述镜头运动。

在一种可能实现方式中,所述装置还包括:

验证模块,用于基于参数变化阈值,对所述第一目标参数进行有效性验证;

所述确定模块,还用于基于有效性验证通过的第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度。

在一种可能实现方式中,所述装置还包括:

更新模块,用于基于矫正系数,更新所述目标运动速度,得到更新后的目标运动速度;

所述控制模块,还用于基于所述时间-速度变化倍率曲线、所述初始运动速度和所述更新后的目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

在一种可能实现方式中,所述时间-速度变化倍率曲线为贝塞尔曲线。

另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现上述任一所述的控制镜头运动的方法。

另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现上述任一所述的控制镜头运动的方法。

本申请实施例提供的技术方案至少带来如下有益效果:

基于多个目标帧的数据获取镜头在目标时间分片中需要满足的第一目标参数,第一目标参数的可靠性较高,有利于提高镜头运动的稳定性。此外,基于时间-速度变化倍率曲线控制镜头运动,有利于提高镜头在相邻时间分片之间的运动连续性,镜头运动过程的稳定性较高,控制镜头运动的效果较好。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种控制镜头运动的方法的实施环境的示意图;

图2是本申请实施例提供的一种控制镜头运动的方法流程图;

图3是本申请实施例提供的一种互动对象的运动过程的示意图;

图4是本申请实施例提供的一种中心位置参数、采样位置参数和集合位置参数指示的位置点的示意图;

图5是本申请实施例提供的一种距离-缩放变化倍率曲线的示意图;

图6是本申请实施例提供的一种时间-速度变化倍率曲线的示意图;

图7是本申请实施例提供的一种角度-转向混合系数曲线的示意图;

图8是本申请实施例提供的一种时间-运动速度曲线的示意图;

图9是本申请实施例提供的一种控制镜头运动的过程的示意图;

图10是本申请实施例提供的一种控制镜头运动的装置示意图;

图11是本申请实施例提供的一种控制镜头运动的装置示意图;

图12是本申请实施例提供的一种终端的结构示意图;

图13是本申请实施例提供的一种计算机设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

随着游戏技术的快速发展,越来越多的游戏客户端为用户提供导播模式。当用户选择导播模式时,镜头自动跟随游戏节奏走,为用户展示精彩的团战或者一些重要时刻,无需用户做任何操作。在用户利用导播模式观看游戏视频的过程中,游戏客户端通过控制导播镜头运动,将导播镜头聚焦到精彩的游戏场景,以提高用户的游戏视频观看体验。

对此,本申请实施例提供了一种控制镜头运动的方法,请参考图1,其示出了本申请实施例提供的控制镜头运动的方法的实施环境的示意图。该实施环境可以包括:终端11和服务器12。

其中,终端11安装有能够提供导播模式的游戏客户端,在导播模式下,终端11中的游戏客户端可应用本申请实施例提供的方法控制镜头运动。需要说明的是,本申请实施例中的镜头为导播模式下的导播镜头,该导播镜头聚焦的场景即为导播模式下用户观看到的场景。服务器12可以是指终端11中安装的游戏客户端的后台服务器,服务器12能够为终端11安装的游戏客户端提供数据支持。

在一种可能实现方式中,终端11可以是诸如手机、平板电脑、个人计算机等的智能设备。服务器12可以是一台服务器,也可以是由多台服务器组成的服务器集群,或者是一个云计算服务中心。终端11与服务器12通过有线或无线网络建立通信连接。

本领域技术人员应能理解上述终端11和服务器12仅为举例,其他现有的或今后可能出现的终端或服务器如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

基于上述图1所示的实施环境,本申请实施例提供一种控制镜头运动的方法,以该方法应用于终端中的游戏客户端为例。如图2所示,本申请实施例提供的方法可以包括如下步骤:

在步骤201中,基于目标时间分片对应的多个目标帧的数据,获取镜头在目标时间分片中需要满足的第一目标参数。

目标时间分片是指当前需要执行控制镜头运动的操作的时间分片。在对游戏视频进行导播的过程中,按照第一参考时间间隔将游戏视频划分为多个时间分片,然后基于本申请实施例提供的方法,依次在每个时间分片中执行控制镜头运动的操作。需要说明的是,第一参考时间间隔可以根据经验设置,也可以根据应用场景自由调整,本申请实施例对此不加以限定。示例性地,第一参考时间间隔可以设置为1秒,此时,目标时间分片对应的时间间隔为1秒。

目标时间分片对应的多个目标帧包括目标时间分片的起始时间戳对应的游戏视频帧和位于该起始时间戳对应的游戏视频帧之前的参考数量个游戏视频帧。参考数量可以根据经验设置,也可以根应用场景自由调整,本申请实施例对此不加以限定。示例性地,参考数量可以设置为10,也就是说,基于目标时间分片对应的11个目标帧,获取镜头在目标时间分片中需要满足的第一目标参数。

每个目标帧的数据是指该帧中的原始数据,包括但不限于该目标帧中的互动对象的位置数据、该目标帧的时间戳数据等。目标帧中的互动对象是指该目标帧中包括的参与游戏过程的游戏角色模型。

第一目标参数是指镜头在目标时间分片的结束时刻需要满足的参数。第一目标参数包括第一位置参数和第一缩放参数中的至少一个。其中,第一位置参数用于指示镜头在目标时间分片的结束时刻需要聚焦的位置,第一缩放参数用于指示镜头在目标时间分片的结束时刻需要达到的缩放值。在一种可能实现方式中,第一位置参数可以用位置坐标的形式表示,第一缩放参数可以用数值的形式表示。在一种可能实现方式中,在用数值表示第一缩放参数时,可以用0~1之间(包括0和1)的数值表示镜头的聚焦范围缩小,用1表示镜头的聚焦范围不变,用大于1的数值表示镜头的聚焦范围放大。

基于多个目标帧的数据获取第一目标参数,可以降低某一视频帧的异常数据对第一目标参数产生的不良影响,使得获取的第一目标参数可靠性较高,进行提高后续控制镜头运动过程的稳定性。

在一种可能实现方式中,基于目标时间分片对应的多个目标帧的数据,获取镜头在目标时间分片中需要满足的第一目标参数的过程包括以下步骤2011至步骤2013:

步骤2011:对目标时间分片对应的各个目标帧的数据进行采样处理,得到各个目标帧对应的采样参数。

每个目标帧对应的采样参数是指基于该目标帧确定的镜头在目标时间分片中需要满足的参数。每个目标帧对应的采样参数包括该目标帧对应的采样位置参数和采样缩放参数中的至少一种。

在一种可能实现方式中,在任一目标帧对应的采样参数包括采样位置参数的情况下,对目标时间分片对应的任一目标帧的数据进行采样处理,得到任一目标帧对应的采样参数的过程包括步骤a和步骤b:

步骤a:基于任一目标帧的数据,获取任一目标帧中的互动对象的中心位置参数。

任一目标帧中的互动对象的中心位置参数用于指示任一目标帧中的各个互动对象的位置的几何中心。该步骤的实现过程可以为:在任一目标帧的数据中,提取该任一目标帧中的各个互动对象的位置数据;基于各个互动对象的位置数据,获取任一目标帧中的互动对象的中心位置参数。

在一种可能实现方式中,基于各个互动对象的位置数据,获取任一目标帧中的互动对象的中心位置参数的过程为:将各个互动对象的位置数据的平均值作为任一目标帧中的互动对象的中心位置参数。该过程可以用公式1表示:

pi1=sum(pc)/n(p)(公式1)

其中,pi1表示该任一目标帧中的互动对象的中心位置参数;sum(pc)表示该任一目标帧中的各个互动对象的位置数据的总和;n(p)表示该任一目标帧中的互动对象的数量。

步骤b:基于任一目标帧中的互动对象的中心位置参数和互动对象的集合位置参数,确定任一目标帧对应的采样位置参数。

互动对象的集合位置参数是指在游戏视频中所有互动对象均需要到达的最终集合点的参数。该集合位置参数可以从游戏客户端的后台服务器获取。需要说明的是,对于不同的目标帧而言,互动对象的中心位置参数可能不同,但是互动对象的集合位置参数均相同。

在游戏视频的战斗场景中,如图3所示,互动对象的运动过程为:互动对象先从起始位置点301运动到中间集合点302,然后互动对象通过从上路朝下路移动,从中间集合点302运动到最终集合点303。游戏客户端的后台服务器可以通过对整个游戏视频的分析处理,得到最终集合点的参数,将最终集合点的参数反馈至游戏客户端。由此,游戏客户端获取互动对象的集合位置参数。

在一种可能实现方式中,基于任一目标帧中的互动对象的中心位置参数和互动对象的集合位置参数,确定任一目标帧对应的采样位置参数的过程为:基于任一目标帧中的互动对象的中心位置参数和第一权重值,以及互动对象的集合位置参数和第二权重值,确定任一目标帧对应的采样位置参数。示例性地,分别计算任一目标帧中的互动对象的中心位置参数和第一权重值的乘积,以及互动对象的集合位置参数和第二权重值的乘积,将两个乘积的和作为任一目标帧对应的采样位置参数。该过程可以用公式2表示:

pi=pi1×d1 pi2×d2(公式2)

其中,pi表示任一目标帧对应的采样位置参数;pi1表示任一目标帧中的互动对象的中心位置参数,d1表示第一权重值;pi2表示互动对象的集合位置参数,d2表示第二权重值。需要说明的是,第一权重值和第二权重值可以根据经验设置,也可以根据应用场景自由调整,本申请实施例对此不加以限定。示例性地,第一权重值可以设置为0.5,第二权重值也设置为0.5。此种设置方式可以使得用户既能观看到各个互动对象在当前位置的表现,也能观看到最终集合点上的表现。

示例性地,假设任一目标帧对应的中心位置参数、采样位置参数和集合位置参数均用位置坐标表示,则中心位置参数、采样位置参数和集合位置参数各指示一个位置点。中心位置参数、采样位置参数和集合位置参数指示的位置点可以如图4所示。在图4中,蓝方和红方为游戏视频中互为对手的两个战队,根据红方各个互动对象和蓝方各个互动对象的中心位置参数指示的位置点401,以及集合位置参数指示的位置点403,可以确定该目标帧对应的采样位置参数指示的位置点402。

通过综合考虑每个目标帧对应的中心位置参数和集合位置参数来确定每个目标帧对应的采样位置参数,能够在控制镜头运动的过程中,使镜头同时满足第一位置参数和第一缩放参数,降低视觉感受的突兀感。

在一种可能实现方式中,在任一目标帧对应的采样参数包括采样缩放参数的情况下,对目标时间分片对应的任一目标帧的数据进行采样处理,得到任一目标帧对应的采样参数的过程包括步骤a至步骤c:

步骤a:基于任一目标帧的数据,获取任一目标帧对应的距离参数。

在一种可能实现方式中,该步骤的实现过程为:基于任一目标帧的数据,分别计算每个互动对象的位置数据与该任一目标帧对应的采样位置参数之间的距离,以及该任一目标帧对应的采样位置参数和集合位置参数之间的距离;将上述距离中的最大距离作为该任一目标帧对应的距离参数。任一目标帧对应的距离参数可以用公式3表示:

l=max{|pc-pi|,|pi2-pi|}(公式3)

其中,l表示任一目标帧对应的距离参数;pc表示该任一目标帧中的各个互动对象的位置数据;pi表示该任一目标帧对应的采样位置参数;pi2表示集合位置参数。

步骤b:基于距离-缩放变化倍率曲线,确定与距离参数对应的缩放变化倍率。

在镜头不断运动的过程中,整个游戏视频中各个游戏视频帧对应的距离参数从lmax下降到lmin,同时伴随着缩放参数从smin增加到smax。lmax是指整个游戏视频中各个游戏视频帧对应的距离参数中的最大值,lmin是指整个游戏视频中各个游戏视频帧对应的距离参数中的最小值;smin是指整个游戏视频中镜头的缩放最小值,对应lmax;smax是指整个游戏视频中镜头的缩放最大值,对应lmin。

根据游戏场景本身的特性,在整个游戏视频中,各个游戏视频帧对应的距离参数l的取值不是在lmax和lmin之间线性变化,而是相对集中在lmin侧。所以,从smin到smax的变化,也应该是前面变化慢,后面变化快。因此,本申请实施例中使用的距离-缩放变化倍率曲线的斜率为增大趋势,也就是说,距离-缩放变化倍率曲线的斜率前小后大。此种距离-缩放变化倍率曲线可以在l的取值比较集中的范围内增大映射区间范围,优化镜头运动的视觉感受。需要说明的是,上述lmax、lmin、smin和smax可以由游戏客户端的后台服务器确定并反馈至游戏客户端,也可以由游戏客户端从记录有lmax、lmin、smin和smax的配置文件中读取得到。

示例性地,距离-缩放变化倍率曲线可以如图5中的501所示。图5中的横坐标表示归一化处理后的距离,纵坐标表示缩放变化倍率。图5所示的距离-缩放变化倍率曲线501的斜率为增大趋势。随着横坐标的数值从0变化到1,纵坐标的数值也从0变化到1。

在一种可能实现方式中,基于距离-缩放变化倍率曲线,确定与距离参数对应的缩放变化倍率的过程为:对距离参数进行归一化处理,得到归一化处理后的距离参数;基于距离-缩放变化倍率曲线,确定与归一化处理后的距离参数对应的缩放变化倍率。

在一种可能实现方式中,对距离参数进行归一化处理,得到归一化处理后的距离参数的过程可以用公式4表示:

l′=(lmax-l)/(lmax-lmin)(公式4)

其中,l′表示归一化处理后的距离参数;l表示归一化处理前的距离参数,lmax表示整个游戏视频中各个游戏视频帧对应的距离参数中的最大值;lmin表示整个游戏视频中各个游戏视频帧对应的距离参数中的最小值。

步骤c:基于缩放变化倍率,确定任一目标帧对应的采样缩放参数。

在一种可能实现方式中,基于缩放变化倍率,确定任一目标帧对应的采样缩放参数的过程可以用公式5表示:

si=(smax-smin)×r smin(公式5)

其中,si表示任一目标帧对应的采样缩放参数;r表示缩放变化倍率;smin表示整个游戏视频中镜头的缩放最小值;smax表示整个游戏视频中镜头的缩放最大值。

对于任一目标帧对应的采样参数仅包括采样位置参数的情况,根据上述步骤a和步骤b即可获取任一目标帧对应的采样参数;对于任一目标帧对应的采样参数仅包括采样缩放参数的情况,根据上述步骤a至步骤c即可获取任一目标帧对应的采样参数;对于任一目标帧对应的采样参数包括采样位置参数和采样缩放参数的情况,根据上述步骤a和步骤b,以及步骤a至步骤c可以获取任一目标帧对应的采样参数。

基于上述步骤2011,可以分别对每个目标帧的数据进行采样处理,得到各个目标帧对应的采样参数,然后执行步骤2012。

步骤2012:按照时间戳与目标时间分片的起始时间戳的距离,为各个目标帧设置权重值。

在一种可能实现方式中,按照时间戳与目标时间分片的起始时间戳的距离,为各个目标帧设置权重值的过程为:按照时间戳与目标时间分片的起始时间戳的距离从远到近的顺序,为各个目标帧设置从小到大的权重值;或者,按照时间戳与目标时间分片的起始时间戳的距离从近到远的顺序,为各个目标帧设置从大到小的权重值。在一种可能实现方式中,各个目标帧对应的权重值的分布符合高斯分布。

示例性地,假设目标帧的数量为5,按照时间戳与目标时间分片的起始时间戳的距离从远到近的顺序,为各个目标帧分别设置1/55、4/55、9/55、16/55和25/55的权重值。

步骤2013:基于各个目标帧对应的采样参数和各个目标帧对应的权重值,确定镜头在目标时间分片中需要满足的第一目标参数。

在一种可能实现方式中,基于各个目标帧对应的采样参数和各个目标帧对应的权重值,确定镜头在目标时间分片中需要满足的第一目标参数的过程为:分别计算每个目标帧对应的采样参数和每个目标帧对应的权重值的乘积,将各个乘积的和作为镜头在目标时间分片中需要满足的第一目标参数。

需要说明的是,对于任一目标帧对应的采样参数包括采样位置参数的情况,第一目标参数包括第一位置参数;对于任一目标帧对应的采样参数包括采样缩放参数的情况,第一目标参数包括第一缩放参数;对于任一目标帧对应的采样参数包括采样位置参数和采样缩放参数的情况,第一目标参数包括第一位置参数和第一缩放参数。

示例性地,假设目标帧的数量为5,按照时间戳与目标时间分片的起始时间戳的距离从远到近的顺序,为各个目标帧分别设置1/55、4/55、9/55、16/55和25/55的权重值。则第一目标参数中的第一位置参数的计算过程可以用公式6表示:

pn=p1×1/55 p2×4/55 p3×9/55 p4×16/55 p5×25/55(公式6)

其中,pn表示第一目标参数中的第一位置参数;p1、p2、p3、p4和p5分别表示按照时间戳与目标时间分片的起始时间戳的距离从远到近的顺序排列的5个目标帧对应的采样位置参数。

同样地,第一目标参数中的第一缩放参数的计算过程可以用公式7表示:

sn=s1×1/55 s2×4/55 s2×9/55 s4×16/55 s5×25/55(公式7)

其中,sn表示第一目标参数中的第一缩放参数;s1、s2、s3、s4和s5分别表示按照时间戳与目标时间分片的起始时间戳的距离从远到近的顺序排列的5个目标帧对应的采样缩放参数。

在一种可能实现方式中,在获取镜头在目标时间分片中需要满足的第一目标参数之后,还可以基于参数变化阈值,对第一目标参数进行有效性验证。

在一种可能实现方式中,基于参数变化阈值,对第一目标参数进行有效性验证的过程为:获取镜头在目标时间分片中的变化参数;基于变化参数和参数变化阈值的比对结果,对第一目标参数进行有效性验证。

在一种可能实现方式中,获取镜头在目标时间分片中的变化参数的过程为:基于镜头在目标时间分片中已满足的第二目标参数和第一目标参数,获取镜头在所述目标时间分片中的变化参数。其中,在目标时间分片中已满足的第二目标参数是指镜头在目标时间分片的起始时刻满足的参数,第二目标参数包括第二位置参数和第二缩放参数中的至少一个。

当第一目标参数包括第一位置参数时,镜头在目标时间分片中的变化参数包括位置变化参数,该位置变化参数可以用第一位置参数与第二位置参数之间的距离长度表示;当第一目标参数包括第一缩放参数时,镜头在目标时间分片中的变化参数包括缩放变化参数,该缩放变化参数可以用第一缩放参数与第二缩放参数的差值的绝对值表示。

在一种可能实现方式中,基于变化参数和参数变化阈值的比对结果,对第一目标参数进行有效性验证的过程为:当变化参数低于参数变化阈值时,确定第一目标参数的有效性验证不通过;当变化参数不低于参数变化阈值时,确定第一目标参数的有效性验证通过。

在一种可能实现方式中,对于第一目标参数包括第一位置参数和第一缩放参数的情况,镜头在目标时间分片中的变化参数包括位置变化参数和缩放变化参数。在此种情况下,基于变化参数和参数变化阈值的比对结果,对第一目标参数进行有效性验证的过程可以为:基于位置变化参数和第一参数变化阈值的比对结果,对第一位置参数进行有效性验证;基于缩放变化参数和第二参数变化阈值的比对结果,对第一缩放参数进行有效性验证。第一参数变化阈值和第二参数变化阈值可以相同,也可以不同,本申请实施例对此不加以限定。经过上述过程后,将有效性验证不通过的参数丢弃,将剩余的参数作为有效性验证通过的第一目标参数,基于有效性验证通过的第一目标参数执行步骤202。

示例性地,假设第一目标参数包括第一位置参数和第一缩放参数,第二目标参数包括第二位置参数和第二缩放参数,镜头在目标时间分片中的变化参数包括位置变化参数和缩放变化参数。假设第一位置参数为(1,1)的位置坐标,第二位置参数为(0,1)的位置坐标;第一缩放参数为10,第二缩放参数为2。则镜头在目标时间分片中的位置变化参数可以用两个位置坐标之间的欧式距离1表示;镜头在目标时间分片中的缩放变化参数可以用两个缩放参数之间的差值的绝对值8表示。假设第一参数变化阈值设置为2,第二参数变化阈值设置为3。则第一位置参数的有效性验证不通过,第一缩放参数的有效性验证通过。此时,有效性验证通过的第一目标参数中仅包括第一缩放参数。

通过对第一目标参数进行有效性验证,可以明显减少因为微小平移和微小缩放带来的镜头抖动现象。

需要说明的是,在获取镜头在目标时间分片中需要满足的第一目标参数之前,可以设置触发频率,根据触发频率,触发执行获取第一目标参数的步骤。触发频率可以根据经验设置,也可以根据应用场景灵活调整,本申请实施例对此不加以限定。根据触发频率确定的触发时刻可以为每个时间分片的前一小段时间对应的时刻,例如,每个时间分片的前0.2秒对应的时刻,从而可以保证在到达目标时间分片时,及时执行控制镜头运动的操作。

在步骤202中,基于第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度。

其中,目标运动速度包括目标平移速度和目标缩放速度中的至少一个。

镜头在目标时间分片中的初始运动速度是指镜头在目标时间分片的起始时刻的运动速度,初始运动速度包括初始平移速度和初始缩放速度中的至少一个。镜头在目标时间分片中的初始运动速度也是镜头在目标时间分片的前一个时间分片的结束时刻的运动速度。在目标时间分片的前一个时间分片中的控制镜头运动的过程结束时,可以得到镜头在目标时间分片中的初始运动速度。

目标时间分片对应的时间间隔是指目标时间分片从起始时间戳到结束时间戳之间的时长。镜头在目标时间分片中的目标运动速度是指镜头在目标时间分片的结束时刻的运动速度。也就是说,目标运动速度是指镜头在满足第一目标参数时的运动速度。

时间-速度变化倍率曲线可以由游戏的开发人员设置,也可以根据应用场景灵活调整,本申请实施例对此不加以限定。在一种可能实现方式中,时间-速度变化倍率曲线为贝塞尔曲线。贝塞尔曲线为平滑曲线,将时间-速度变化曲线设置为贝塞尔曲线,有利于提高镜头运动过程中的平滑性和稳定性。

示例性地,时间-速度变化倍率曲线可以如图6中的601所示,图6中的横坐标表示归一化处理后的时间,纵坐标表示速度变化倍率。图6所示的时间-速度变化倍率曲线601为一条贝塞尔曲线。随着横坐标的数值从0变化到1,纵坐标的数值也从0变化到1。

在一种可能实现方式中,对于对第一目标参数进行了有效性验证的情况,在本步骤中,基于有效性验证通过的第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度。

在一种可能实现方式中,基于第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度的过程包括步骤2021至步骤2023:

步骤2021:基于镜头在目标时间分片中已满足的第二目标参数和第一目标参数,获取镜头在目标时间分片中的变化参数。

镜头在目标时间分片中已满足的第二目标参数是指镜头在目标时间分片的起始时刻满足的参数,第二目标参数包括第二位置参数和第二缩放参数中的至少一个。在目标时间分片的前一个时间分片中的控制镜头运动的过程结束时,可以得到镜头在目标时间分片中已满足的第二目标参数。

当第一目标参数包括第一位置参数时,镜头在目标时间分片中的变化参数包括位置变化参数,该位置变化参数可以用第一位置参数与第二位置参数之间的距离长度表示;当第一目标参数包括第一缩放参数时,镜头在目标时间分片中的变化参数包括缩放变化参数,该缩放变化参数可以用第一缩放参数与第二缩放参数的差值的绝对值表示。

示例性地,假设第一位置参数为(1,1)的位置坐标,第二位置参数为(0,1)的位置坐标;第一缩放参数为10,第二缩放参数为2。则镜头在目标时间分片中的位置变化参数可以用两个位置坐标之间的欧式距离1表示;镜头在目标时间分片中的缩放变化参数可以用两个缩放参数之间的差值的绝对值8表示。

步骤2022:获取时间-速度变化倍率曲线对应的积分值。

计算时间-速度变化倍率曲线关于时间的积分值。示例性地,如图6所示,对于时间-速度变化倍率曲线中的时间为归一化处理后的情况,时间-速度变化倍率曲线对应的时间范围为[0,1]。用δv(t)表示时间-速度变化倍率曲线,则时间-速度变化倍率曲线对应的积分值可以根据计算得到。

步骤2023:基于变化参数、初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线对应的积分值,确定镜头在目标时间分片中的目标运动速度。

在一种可能实现方式中,镜头在目标时间分片中的目标运动速度可以根据公式8确定:

其中,δm表示变化参数,可以是指平移变化参数,也可以是指缩放变化参数;v1表示初始运动速度和目标运动速度中较小的运动速度,可以是指初始平移速度和目标平移速度中较小的平移速度,也可以是指初始缩放速度和目标平缩放速度中较小的缩放速度;v2表示初始运动速度和目标运动速度中较大的运动速度,可以是指初始平移速度和目标平移速度中较大的平移速度,也可以是指初始缩放速度和目标平缩放速度中较大的缩放速度;δt表示目标时间分片对应时间间隔;表示时间-速度变化倍率曲线对应的积分值。需要说明的是,

当初始运动速度与时间间隔的乘积不小于变化参数时,说明初始运动速度需要降速或保持不变,也就是说,初始运动速度不小于目标运动速度。此时,v1表示目标运动速度,v2表示初始运动速度。根据上述公式8计算出v1,即可得到目标运动速度。

当初始运动速度与时间间隔的乘积小于变化参数时,说明初始运动速度需要升速,也就是说,初始运动速度小于目标运动速度。此时,v1表示初始运动速度,v2表示目标运动速度。根据上述公式8计算出v2,即可得到目标运动速度。

在一种可能实现方式中,在目标运动速度包括目标平移速度和目标缩放速度的情况下,确定镜头在目标时间分片中的目标运动速度的过程包括:基于平移变化参数、初始平移速度、目标时间分片对应的时间间隔和时间-平移速度变化倍率曲线对应的积分值,按照上述公式8,确定镜头在目标时间分片中的目标平移速度;基于缩放变化参数、初始缩放速度、目标时间分片对应的时间间隔和时间-缩放速度变化倍率曲线对应的积分值,按照上述公式8,确定镜头在目标时间分片中的目标缩放速度。需要说明的是,时间-平移速度变化倍率曲线和时间-缩放速度变化倍率曲线可以为同一条曲线,也可以为两条不同的曲线,本申请实施例对此不加以限定。

在一种可能实现方式中,在确定镜头在目标时间分片中的目标运动速度的过程中,增加转向混合系数的影响,以降低因为改变方向(平移方向和缩放方向)带来的不适应感,提高镜头运动的稳定性。该过程可以包括以下步骤1至步骤4:

步骤1:基于第一运动方向和第二运动方向,获取目标时间分片对应的转向角度。

第一运动方向是指镜头在目标时间分片的起始时刻的运动方向,第一运动方向包括第一平移方向和第一缩放方向中的至少一个;第二运动方向是指镜头在目标时间分片的结束时刻的运动方向,第二运动方向包括第二平移方向和第二缩放方向中的至少一个。目标时间分片对应的转向角度包括平移转向角度和缩放转向角度中的至少一个。

在一种可能实现方式中,当目标时间分片对应的转向角度包括平移转向角度时,获取目标时间分片对应的转向角度的过程包括:基于第二平移方向和第一平移方向的夹角,确定目标时间分片对应的平移转向角度。也就是说,将第二平移方向和第一平移方向的夹角对应的度数作为目标时间分片对应的平移转向角度。第一平移方向可以根据目标时间分片的前一个时间分片的起始时刻的位置参数和结束时刻的位置参数确定;第二平移方向可以根据第二目标参数中的第二位置参数和第一目标参数中的第一位置参数确定。

当目标时间分片对应的转向角度包括缩放转向角度时,获取目标时间分片对应的转向角度的过程包括:基于第二缩放方向和第一缩放方向的比对结果,确定目标时间分片对应的缩放转向角度。第一缩放方向可以根据目标时间分片的前一个时间分片的起始时刻的缩放参数和结束时刻的缩放参数确定;第二缩放方向可以根据第二目标参数中的第二缩放参数和第一目标参数中的第一缩放参数确定。

在一种可能实现方式中,基于第二缩放方向和第一缩放方向的比对结果,确定目标时间分片对应的缩放转向角度的过程为:当第二缩放方向和第一缩放方向一致时,将第一角度作为目标时间分片对应的缩放转向角度;当第二缩放方向和第一缩放方向不一致时,将第二角度作为缩放转向角度。第一角度和第二角度可以根据经验设置,示例性地,第一角度设置为0度,第二角度设置为180度。需要说明的是,缩放方向包括放大和缩小两种,第二缩放方向与第一缩放方向一致是指第二缩放方向和第一缩放方向均为放大,或者,第二缩放方向和第一缩放方向均为缩小。

步骤2:确定与转向角度对应的转向混合系数。

在一种可能实现方式中,确定与转向角度对应的转向混合系数的方式包括但不限于以下两种:

方式一:基于角度-转向混合系数曲线,确定与转向角度对应的转向混合系数。

示例性地,角度-转向混合系数曲线可以如图7中的701所示。在图7中,横坐标表示角度,纵坐标表示转向混合系数。在确定转向角度后,可以根据该角度-转向混合系数曲线701确定与转向角度对应的转向混合系数。随着角度从0度变化到180度,转向混合系数从1下降到0。

方式二:基于角度和转向混合系数的对应关系,确定与转向角度对应的转向混合系数。

角度和转向混合系数的对应关系可以由游戏的开发人员设置,本申请实施例对此不加以限定。在一种可能实现方式中,角度和转向混合系数的对应关系可以用表格的形式表示。在确定转向角度后,可以在角度和转向混合系数的对应关系表中查询与转向角度对应的转向混合系数。

需要说明的是,对于转向角度包括平移转向角度和缩放转向角度的情况,需要根据上述方式一或者方式二,分别确定与平移转向角度对应的平移转向混合系数,以及与缩放转向角度对应的缩放转向混合系数。

步骤3:基于转向混合系数更新初始运动速度,得到更新后的初始运动速度。

在一种可能实现方式中,基于转向混合系数更新初始运动速度的方式为:将更新前的初始运动速度与转向混合系数的乘积作为更新后的初始运动速度。

步骤4:基于第一目标参数、更新后的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度。

该步骤4的实现过程可以参见步骤2021至步骤2023,此处不再赘述。

在一种可能实现方式中,在得到目标运动速度后,可以基于矫正系数更新目标运动速度,得到更新后的目标运动速度。该过程可以基于下述公式9实现:

v2(n)=v1(n)×r(公式9)

其中,v2(n)表示更新后的目标运动速度,v1(n)表示更新前的目标运动速度,r表示矫正系数。矫正系数可以根据经验设置,也可以根据应用场景灵活调整,本申请实施例对此不加以限定。示例性地,将矫正系数设置在[0.9,1]的范围内,例如r=0.95。基于此范围内的矫正系数更新目标运动参数,一方面可以较少积分计算带来的偏差,另一方面还可以使得镜头倾向于延后满足第一目标参数。相比于提前满足第一目标参数,延后满足第一目标参数可以提升视觉效果,减少停顿感。

在一种可能实现方式中,对于目标运动速度包括目标平移速度和目标缩放速度的情况,可以基于第一矫正系数更新目标平移速度,得到更新后的目标平移速度;基于第二矫正系数更新目标缩放速度,得到更新后的目标缩放速度。第一矫正系数与第二矫正系数可以相同,也可以不同,本申请实施例对此不加以限定。

在步骤203中,基于时间-速度变化倍率曲线、初始运动速度和目标运动速度,控制镜头运动,以满足第一目标参数。

需要说明的是,在基于矫正系数对目标运动速度进行更新的情况下,此步骤中的目标运动速度是指更新后的目标运动速度。在基于转向混合系数对初始运动速度进行更新的情况下,此步骤中的初始运动速度是指更新后的初始运动速度。

在一种可能实现方式中,基于时间-速度变化倍率曲线、初始运动速度和目标运动速度,控制镜头运动,以满足第一目标参数的过程包括步骤2031至步骤2034:

步骤2031:将控制镜头运动的过程划分为参考数量个子过程。

在目标时间分片对应的时间间隔内,可以根据第二参考时间间隔将控制镜头运动的过程划分为参考数量个连续的子过程,从而通过分步控制镜头运动使镜头满足第一目标参数。参考数量可以根据目标时间分片对应的时间间隔和第二参考时间间隔确定。示例性地,将目标时间分片对应的时间间隔和第二参考时间间隔的比值作为参考数量。

第二参考时间间隔可以根据目标时间分片对应的时间间隔确定,也可以根据经验设置,本申请实施例对此不加以限定。示例性地,当目标时间分片对应的时间间隔为1秒时,第二参考时间间隔可以设置为0.02秒。此时,参考数量为50。根据此种划分方式得到的每个子过程对应的时间间隔均为0.02秒。

在将镜头运动的过程划分为参考数量个子过程后,可以基于下述步骤2032和步骤2033获取每个子过程对应的子运动速度。

步骤2032:基于任一子过程对应的时间参数和时间-速度变化倍率曲线,确定任一子过程对应的速度变化倍率。

在一种可能实现方式中,时间-速度变化倍率曲线中的时间为归一化处理后的时间,时间-速度变化倍率曲线对应的时间范围为[0,1]。在确定任一子过程对应的速度变化倍率之前,需要先获取任一子过程对应的时间参数。在一种可能实现方式中,获取任一子过程对应的时间参数的过程包括以下两个步骤:

步骤1:将目标时间间隔和目标时间分片对应的时间间隔的比值作为目标比值。

其中,目标时间间隔是指目标时间分片中位于该任一子过程之前的各个子过程对应的时间间隔的总和。示例性地,假设目标时间分片对应的时间间隔为1秒,每个子过程对应的时间间隔为0.02秒,该任一子过程为目标时间分片中的第6个子过程。则目标时间间隔是指目标时间分片中位于该任一子过程之前的5个子过程对应的时间间隔的总和,目标时间间隔为0.1秒。在此种情况下,目标比值为0.1/1=0.1。

步骤2:当初始运动速度小于目标运动速度时,将目标比值作为该任一子过程对应的时间参数;当初始运动速度不小于目标运动速度时,将1和目标比值的差值作为该任一子过程对应的时间参数。

在基于上述步骤1和步骤2确定任一子过程对应的时间参数后,可以基于时间-速度变化倍率曲线,确定与该时间参数对应的速度变化倍率,将该速度变化倍率作为该任一子过程对应的速度变化倍率。

需要说明的是,速度变化倍率包括平移速度变化倍率和缩放速度变化倍率中的至少一个。在获取任一子过程对应的平移速度变化倍率的过程中,基于时间-平移速度变化倍率曲线,确定与该时间参数对应的平移速度变化倍率,将该平移速度变化倍率作为该任一子过程对应的平移速度变化倍率;在获取任一子过程对应的缩放速度变化倍率的过程中,基于时间-缩放速度变化倍率曲线,确定与该时间参数对应的缩放速度变化倍率,将该缩放速度变化倍率作为该任一子过程对应的缩放速度变化倍率。

步骤2033:基于初始运动速度、目标运动速度和任一子过程对应的速度变化倍率,获取任一子过程对应的子运动速度。

在一种可能实现方式中,可以基于公式10获取任一子过程对应的子运动速度:

vc=v1 (v2-v1)×δv(t)(公式10)

其中,vc表示任一子过程对应的子运动速度,v1表示初始运动速度和目标运动速度中较小的运动速度;v2表示初始运动速度和目标运动速度中较大的运动速度;t表示步骤2032中确定的该任一子过程对应的时间参数;δv(t)表示任一子过程对应的速度变化倍率。

子运动速度包括子平移速度和子缩放速度中的至少一个。在基于上述公式10计算子平移速度的过程中,vc表示任一子过程对应的子平移速度,v1表示初始平移速度和目标平移速度中较小的平移速度;v2表示初始平移速度和目标平移速度中较大的平移速度;δv(t)表示基于时间-平移速度变化曲线确定的该任一子过程对应的平移速度变化倍率。

在基于上述公式10计算子缩放速度的过程中,vc表示任一子过程对应的子缩放速度,v1表示初始缩放速度和目标缩放速度中较小的缩放速度;v2表示初始缩放速度和目标缩放速度中较大的缩放速度;δv(t)表示基于时间-缩放速度变化曲线确定的该任一子过程对应的缩放速度变化倍率。

步骤2034:在任一子过程对应的时间间隔内,按照任一子过程对应的子运动速度控制镜头运动。

需要说明的是,在任一子过程对应的时间间隔内,镜头运动的速度保持该任一子过程对应的子运动速度不变。示例性地,任一子过程对应的时间间隔为0.02秒,该任一子过程对应的子运动速度包括子平移速度和子缩放速度,其中,子平移速度为1米/秒,子缩放速度为0.5/秒。则在该任一子过程对应的0.02秒内,在控制镜头按照1米/秒的速度进行平移的同时,控制镜头按照0.5/秒的速度进行缩放。

在一种可能实现方式中,在确定任一子过程对应的子运动速度之后,即可继续确定下一个子过程对应的子运动速度,以在按照该任一子过程对应的子运动速度控制镜头运动之后,继续按照下一个子过程对应的子运动速度控制镜头运动,以此类推,直至确定目标时间分片中的最后一个子过程对应的子运动速度,然后按照最后一个子过程对应的子运动速度控制镜头运动,使得镜头满足第一目标参数,完成目标时间分片中的控制镜头运动的过程。然后可以基于上述步骤201至步骤203,继续执行控制镜头在下一个时间分片中运动的操作。

在基于本申请实施例提供的方法控制镜头运动的整个过程中,镜头在相邻时间分片之间的运动连续性较好,镜头在相邻时间分片之间能够平缓过渡,达到平滑运动的效果,减少用户的不适应感。示例性地,假设每个时间分片的时间间隔为1秒,在3个相邻的时间分片中镜头运动的时间-运动速度曲线可以如图8中的801所示,图8中的曲线801在各个交接点处具有良好的连续性,说明镜头运动过程的平滑性较好。

综上所述,控制镜头运动的过程可以如图9中的901-904所示:

901、准备临时参数:在获取第一目标参数之前,准备供后续过程使用的临时参数,包括但不限于触发频率、各个目标帧的权重值、参数变化阈值、时间-速度变化倍率曲线、距离-缩放变化倍率曲线和角度-转向混合系数曲线等。

902、获取第一目标参数:分别获取各个目标帧对应的采样位置参数和采样缩放参数,其中,采样缩放参数根据距离-缩放变化倍率曲线得到;根据各个目标帧对应的采样参数和权重值,确定第一目标参数;根据参数变化阈值对第一目标参数进行有效性验证,以达到对第一目标参数进行过滤的效果。

903、确定目标运动速度:根据角度-转向混合系数曲线,确定转向混合系数;根据转向混合系数更新初始运动速度;根据第一目标参数、时间间隔、时间-速度变化倍率曲线和更新后的初始运动速度,确定目标运动速度。

904、控制镜头运动:根据目标运动速度、更新后的初始运动速度和时间-速度变化倍率曲线,确定各个子过程对应的子运动速度。在各个子过程对应的时间间隔中,按照各个子过程对应的子运动速度控制镜头运动,使镜头满足第一目标参数。

在本申请实施例中,基于多个目标帧的数据获取镜头在目标时间分片中需要满足的第一目标参数,第一目标参数的可靠性较高,有利于提高镜头运动的稳定性。此外,基于时间-速度变化倍率曲线控制镜头运动,有利于提高镜头在相邻时间分片之间的运动连续性,镜头运动过程的稳定性较高,控制镜头运动的效果较好。

参见图10,本申请实施例提供了一种控制镜头运动的装置,该装置包括:

获取模块1001,用于基于目标时间分片对应的多个目标帧的数据,获取镜头在目标时间分片中需要满足的第一目标参数,第一目标参数包括第一位置参数和第一缩放参数中的至少一个;

确定模块1002,用于基于第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片的对应时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度,目标运动速度包括目标平移速度和目标缩放速度中的至少一个;

控制模块1003,用于基于时间-速度变化倍率曲线、初始运动速度和目标运动速度,控制镜头运动,以满足第一目标参数。

在一种可能实现方式中,获取模块1001,用于对目标时间分片对应的各个目标帧的数据进行采样处理,得到各个目标帧对应的采样参数;按照时间戳与目标时间分片的起始时间戳的距离,为各个目标帧设置权重值;基于各个目标帧对应的采样参数和各个目标帧对应的权重值,确定镜头在目标时间分片中需要满足的第一目标参数。

在一种可能实现方式中,任一目标帧对应的采样参数包括采样位置参数,获取模块1001,还用于基于任一目标帧的数据,获取任一目标帧中的互动对象的中心位置参数;基于任一目标帧中的互动对象的中心位置参数和互动对象的集合位置参数,确定任一目标帧对应的采样位置参数。

在一种可能实现方式中,任一目标帧对应的采样参数包括采样缩放参数,获取模块1001,还用于基于任一目标帧的数据,获取任一目标帧对应的距离参数;基于距离-缩放变化倍率曲线,确定与距离参数对应的缩放变化倍率;基于缩放变化倍率,确定任一目标帧对应的采样缩放参数。

在一种可能实现方式中,确定模块1002,用于基于第一运动方向和第二运动方向,获取目标时间分片对应的转向角度;确定与转向角度对应的转向混合系数;基于转向混合系数更新初始运动速度,得到更新后的初始运动速度;基于第一目标参数、更新后的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度。

在一种可能实现方式中,确定模块1002,用于基于镜头在目标时间分片中已满足的第二目标参数和第一目标参数,获取镜头在目标时间分片中的变化参数,第二目标参数包括第二位置参数和第二缩放参数中的至少一个;获取时间-速度变化倍率曲线对应的积分值;基于变化参数、初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线对应的积分值,确定镜头在目标时间分片中的目标运动速度。

在一种可能实现方式中,控制模块1003,用于将控制镜头运动的过程划分为参考数量个子过程;基于任一子过程对应的时间参数和时间-速度变化倍率曲线,确定任一子过程对应的速度变化倍率;基于初始运动速度、目标运动速度和任一子过程对应的速度变化倍率,确定任一子过程对应的子运动速度;在任一子过程对应的时间间隔内,按照任一子过程对应的子运动速度控制镜头运动。

在一种可能实现方式中,参见图11,该装置还包括:

验证模块1004,用于基于参数变化阈值,对第一目标参数进行有效性验证;

确定模块1002,还用于基于有效性验证通过的第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度。

在一种可能实现方式中,参见图11,该装置还包括:

更新模块1005,用于基于矫正系数,更新目标运动速度,得到更新后的目标运动速度;

控制模块1003,还用于基于时间-速度变化倍率曲线、初始运动速度和更新后的目标运动速度,控制镜头运动,以满足第一目标参数。

在一种可能实现方式中,时间-速度变化倍率曲线为贝塞尔曲线。

在本申请实施例中,基于多个目标帧的数据获取镜头在目标时间分片中需要满足的第一目标参数,第一目标参数的可靠性较高,有利于提高镜头运动的稳定性。此外,基于时间-速度变化倍率曲线控制镜头运动,有利于提高镜头在相邻时间分片之间的运动连续性,镜头运动过程的稳定性较高,控制镜头运动的效果较好。

需要说明的是,上述实施例提供的装置在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图12是本申请实施例提供的一种终端的结构示意图,该终端安装有游戏客户端。该终端可以是:智能手机、平板电脑、笔记本电脑或台式电脑。终端还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端包括有:处理器1201和存储器1202。

处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1201所执行以实现本申请中方法实施例提供的控制镜头运动的方法。

在一些实施例中,终端还可选包括有:外围设备接口1203和至少一个外围设备。处理器1201、存储器1202和外围设备接口1203之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1203相连。具体地,外围设备包括:射频电路1204、触摸显示屏1205、摄像头组件1206、音频电路1207、定位组件1208和电源1209中的至少一种。

外围设备接口1203可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和外围设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和外围设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路1204用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1204可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路1204还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏1205用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1205可以为一个,设置在终端的前面板;在另一些实施例中,显示屏1205可以为至少两个,分别设置在终端的不同表面或呈折叠设计;在再一些实施例中,显示屏1205可以是柔性显示屏,设置在终端的弯曲表面上或折叠面上。甚至,显示屏1205还可以设置成非矩形的不规则图形,也即异形屏。显示屏1205可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1206还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1201或射频电路1204的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1207还可以包括耳机插孔。

定位组件1208用于定位终端的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件1208可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。

电源1209用于为终端中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。当电源1209包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。

加速度传感器1211可以检测以终端建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1211可以用于检测重力加速度在三个坐标轴上的分量。处理器1201可以根据加速度传感器1211采集的重力加速度信号,控制触摸显示屏1205以横向视图或纵向视图进行用户界面的显示。加速度传感器1211还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器1212可以检测终端的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端的3d动作。处理器1201根据陀螺仪传感器1212采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器1213可以设置在终端的侧边框和/或触摸显示屏1205的下层。当压力传感器1213设置在终端的侧边框时,可以检测用户对终端的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或快捷操作。当压力传感器1213设置在触摸显示屏1205的下层时,由处理器1201根据用户对触摸显示屏1205的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1214采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1201授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1214可以被设置在终端的正面、背面或侧面。当终端上设置有物理按键或厂商logo时,指纹传感器1214可以与物理按键或厂商logo集成在一起。

光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制触摸显示屏1205的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1205的显示亮度;当环境光强度较低时,调低触摸显示屏1205的显示亮度。在另一个实施例中,处理器1201还可以根据光学传感器1215采集的环境光强度,动态调整摄像头组件1206的拍摄参数。

接近传感器1216,也称距离传感器,通常设置在终端的前面板。接近传感器1216用于采集用户与终端的正面之间的距离。在一个实施例中,当接近传感器1216检测到用户与终端的正面之间的距离逐渐变小时,由处理器1201控制触摸显示屏1205从亮屏状态切换为息屏状态;当接近传感器1216检测到用户与终端的正面之间的距离逐渐变大时,由处理器1201控制触摸显示屏1205从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图12中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

在示例性实施例中,还提供了一种计算机设备,参见图13,该计算机设备包括处理器1301和存储器1302,该存储器1302中存储有至少一条程序代码。该至少一条程序代码由一个或者一个以上处理器1301加载并执行,以实现上述任一种控制镜头运动的方法。

在示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由计算机设备的处理器加载并执行,以实现上述任一种控制镜头运动的方法。

可选地,上述计算机可读存储介质可以是只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、只读光盘(compactdiscread-onlymemory,cd-rom)、磁带、软盘和光数据存储设备等。

应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

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


技术特征:

1.一种控制镜头运动的方法,其特征在于,所述方法包括:

基于目标时间分片对应的多个目标帧的数据,获取镜头在所述目标时间分片中需要满足的第一目标参数,所述第一目标参数包括第一位置参数和第一缩放参数中的至少一个;

基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,所述目标运动速度包括目标平移速度和目标缩放速度中的至少一个;

基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

2.根据权利要求1所述的方法,其特征在于,所述基于目标时间分片对应的多个目标帧的数据,获取镜头在所述目标时间分片中需要满足的第一目标参数,包括:

对所述目标时间分片对应的各个目标帧的数据进行采样处理,得到所述各个目标帧对应的采样参数;

按照时间戳与所述目标时间分片的起始时间戳的距离,为所述各个目标帧设置权重值;

基于所述各个目标帧对应的采样参数和所述各个目标帧对应的权重值,确定所述镜头在所述目标时间分片中需要满足的第一目标参数。

3.根据权利要求2所述的方法,其特征在于,任一目标帧对应的采样参数包括采样位置参数,所述对所述目标时间分片对应的各个目标帧的数据进行采样处理,得到所述各个目标帧对应的采样参数,包括:

基于任一目标帧的数据,获取所述任一目标帧中的互动对象的中心位置参数;

基于所述任一目标帧中的互动对象的中心位置参数和所述互动对象的集合位置参数,确定所述任一目标帧对应的采样位置参数。

4.根据权利要求2所述的方法,其特征在于,任一目标帧对应的采样参数包括采样缩放参数,所述对所述目标时间分片对应的各个目标帧的数据进行采样处理,得到所述各个目标帧对应的采样参数,包括:

基于任一目标帧的数据,获取所述任一目标帧对应的距离参数;

基于距离-缩放变化倍率曲线,确定与所述距离参数对应的缩放变化倍率;

基于所述缩放变化倍率,确定所述任一目标帧对应的采样缩放参数。

5.根据权利要求1所述的方法,其特征在于,所述基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,包括:

基于第一运动方向和第二运动方向,获取所述目标时间分片对应的转向角度;

确定与所述转向角度对应的转向混合系数;

基于所述转向混合系数更新所述初始运动速度,得到更新后的初始运动速度;

基于所述第一目标参数、所述更新后的初始运动速度、所述目标时间分片对应的时间间隔和所述时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度。

6.根据权利要求1所述的方法,其特征在于,所述基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,包括:

基于所述镜头在所述目标时间分片中已满足的第二目标参数和所述第一目标参数,获取所述镜头在所述目标时间分片中的变化参数,所述第二目标参数包括第二位置参数和第二缩放参数中的至少一个;

获取所述时间-速度变化倍率曲线对应的积分值;

基于所述变化参数、所述初始运动速度、所述目标时间分片对应的时间间隔和所述时间-速度变化倍率曲线对应的积分值,确定所述镜头在所述目标时间分片中的目标运动速度。

7.根据权利要求1所述的方法,其特征在于,所述基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数,包括:

将控制所述镜头运动的过程划分为参考数量个子过程;

基于任一子过程对应的时间参数和所述时间-速度变化倍率曲线,确定所述任一子过程对应的速度变化倍率;

基于所述初始运动速度、所述目标运动速度和所述任一子过程对应的速度变化倍率,确定所述任一子过程对应的子运动速度;

在所述任一子过程对应的时间间隔内,按照所述任一子过程对应的子运动速度控制所述镜头运动。

8.根据权利要求1所述的方法,其特征在于,所述获取镜头在所述目标时间分片中需要满足的第一目标参数之后,所述方法还包括:

基于参数变化阈值,对所述第一目标参数进行有效性验证;

所述基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,包括:

基于有效性验证通过的第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度。

9.根据权利要求1所述的方法,其特征在于,所述确定所述镜头在所述目标时间分片中的目标运动速度之后,所述方法还包括:

基于矫正系数,更新所述目标运动速度,得到更新后的目标运动速度;

所述基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数,包括:

基于所述时间-速度变化倍率曲线、所述初始运动速度和所述更新后的目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

10.根据权利要求1-9任一所述的方法,其特征在于,所述时间-速度变化倍率曲线为贝塞尔曲线。

11.一种控制镜头运动的装置,其特征在于,所述装置包括:

获取模块,用于基于目标时间分片对应的多个目标帧的数据,获取镜头在所述目标时间分片中需要满足的第一目标参数,所述第一目标参数包括第一位置参数和第一缩放参数中的至少一个;

确定模块,用于基于所述第一目标参数、所述镜头在所述目标时间分片中的初始运动速度、所述目标时间分片对应的时间间隔和时间-速度变化倍率曲线,确定所述镜头在所述目标时间分片中的目标运动速度,所述目标运动速度包括目标平移速度和目标缩放速度中的至少一个;

控制模块,用于基于所述时间-速度变化倍率曲线、所述初始运动速度和所述目标运动速度,控制所述镜头运动,以满足所述第一目标参数。

12.根据权利要求11所述的装置,其特征在于,所述获取模块,用于对所述目标时间分片对应的各个目标帧的数据进行采样处理,得到所述各个目标帧对应的采样参数;按照时间戳与所述目标时间分片的起始时间戳的距离,为所述各个目标帧设置权重值;基于所述各个目标帧对应的采样参数和所述各个目标帧对应的权重值,确定所述镜头在所述目标时间分片中需要满足的第一目标参数。

13.根据权利要求11所述的装置,其特征在于,任一目标帧对应的采样参数包括采样位置参数,所述获取模块,还用于基于任一目标帧的数据,获取所述任一目标帧中的互动对象的中心位置参数;基于所述任一目标帧中的互动对象的中心位置参数和所述互动对象的集合位置参数,确定所述任一目标帧对应的采样位置参数。

14.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如权利要求1至10任一所述的控制镜头运动的方法。

15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至10任一所述的控制镜头运动的方法。

技术总结
本申请公开了控制镜头运动的方法、装置、设备及存储介质,属于计算机技术领域。方法包括:基于目标时间分片对应的多个目标帧的数据,获取镜头在目标时间分片中需要满足的第一目标参数;基于第一目标参数、镜头在目标时间分片中的初始运动速度、目标时间分片对应的时间间隔和时间‑速度变化倍率曲线,确定镜头在目标时间分片中的目标运动速度;基于时间‑速度变化倍率曲线、初始运动速度和目标运动速度,控制镜头运动,以满足第一目标参数。上述过程,基于多个目标帧的数据获取的第一目标参数的可靠性较高,有利于提高镜头运动的稳定性;基于时间‑速度变化倍率曲线控制镜头运动,有利于提高镜头在相邻时间分片之间的运动连续性。

技术研发人员:刘琦;翟光洲;崔卫华
受保护的技术使用者:腾讯科技(深圳)有限公司
技术研发日:2020.01.17
技术公布日:2020.06.05

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

最新回复(0)