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

一种视角切换方法、装置、用户端、服务器及存储介质与流程

2022-02-20 12:36:54 来源:中国专利 TAG:
一种视角切换方法、装置、用户端、服务器及存储介质与流程

本申请涉及流媒体技术领域,特别是涉及一种视角切换方法、装置、用户端、服务器及存储介质。

背景技术

在视频直播或视频拍摄等过程中,往往会涉及视角切换过程。例如,在某一视频直播过程中,用户可以选择将当前播放的视频由视角A所对应的视频画面切换为视角B所对应的视频画面,从而观看到视角B所对应的视频画面。

目前,在视角切换过程中,由于不同视角所对应的视频属于不完全不同的视频流,因此,在视角切换过程中,需要重新获取切换后的视角所对应的视频流,这导致视角切换过程所需的时长大大增加,甚至可能导致视角切换过程出现卡顿现象。



技术实现要素:

本申请实施例的目的在于提供一种视角切换方法、装置、用户端、服务器及存储介质,以缩短视角切换过程所需的时长,降低卡顿现象发生的概率。具体技术方案如下:

在本申请实施的第一方面,首先提供了一种视角切换方法,应用于用户端,所述方法包括:

向服务器发送针对第一视角下的目标视频的第一获取请求;

接收所述服务器返回的在多个视角下目标视频的第一视频集合,所述多个视角包括所述第一视角;

播放所述第一视频集合中所述第一视角下的目标视频;

在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频。

可选的,所述第一视频集合中所述第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率,所述第三视角为所述多个视角中除所述第一视角以外的任一视角。

可选的,所述第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关,所述第三视角所对应的目标距离为所述第三视角上的摄像机与所述第一视角上的摄像机间的距离。

可选的,所述方法还包括:

在将当前播放的第一视角下的目标视频切换为所述第一视频集合包括的第二视角下的目标视频时,向所述服务器发送针对第二视角下的目标视频的第二获取请求;

接收所述服务器返回的在多个视角下的目标视频的第二视频集合;所述第二视频集合中第二视角下的目标视频的分辨率高于所述第一视频集合中所述第一视角下的目标视频的分辨率;

将当前播放的第二视角下的目标视频切换为所述第二视频集合中第二视角下的目标视频。

可选的,所述在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频的步骤,包括:

在接收到将所述第一视角切换为第二视角的视角切换指令时,若所述第一视频集合中包括所述第二视角下的目标视频,则基于当前播放的所述第一视角下目标视频的时间点,播放所述第一视频集合中所述第二视角下的目标视频。

可选的,所述在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频的步骤,包括:

在接收到将所述第一视角切换为第二视角的视角切换指令时,若所述第一视频集合中未包括所述第二视角下的目标视频,则基于所述第一视频集合中的各视角下的目标视频,合成所述第二视角下的目标视频;

基于当前播放的所述第一视角下目标视频的时间点,播放所述第二视角下的目标视频。

可选的,若所述目标视频为直播视频,则所述第一视频集合中的每一目标视频为直播场景中的前景图组和前景深度图组;

所述播放所述第一视频集合中所述第一视角下的目标视频的步骤,包括:

获取预设背景图组和预设背景深度图组;

获取所述第一视频集合中第一视角下的前景图组和前景深度图组;

基于所述预设背景深度图组和所述第一视角下的前景深度图组,对所述预设背景图组和所述第一视角下的前景图组进行图像融合,得到第一视角下的第一融合视频;

播放所述第一融合视频;

所述基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频的步骤,包括:

获取所述预设背景图组和所述预设背景深度图组;

基于所述第一视频集合,获取第二视角下的前景图组和前景深度图组;

基于所述预设背景深度图组和所述第二视角下的前景深度图组,对所述预设图组和所述第二视角下的前景图组进行图像融合,得到第二视角下的第二融合视频;

播放所述第二融合视频。

在本申请实施的第二方面,还提供了一种视角切换方法,应用于服务器,所述方法包括:

接收用户端发送的针对第一视角下的目标视频的第一获取请求;

基于所述第一获取请求,获取多个视角下的目标视频,得到第一视频集合,所述多个视角包括所述第一视角;

向所述用户端发送所述第一视频集合,以使所述用户端在接收到所述第一视频集合后,播放所述第一视频集合中所述第一视角下的目标视频,并在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频。

在本申请实施的第三方面,还提供了一种视角切换装置,应用于用户端,所述装置包括:

第一发送模块,用于向服务器发送针对第一视角下的目标视频的第一获取请求;

第一接收模块,用于接收所述服务器返回的在多个视角下目标视频的第一视频集合,所述多个视角包括所述第一视角;

播放模块,用于播放所述第一视频集合中所述第一视角下的目标视频;

第一切换模块,用于在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频。

在本申请实施的第四方面,一种视角切换装置,应用于服务器,所述装置包括:

第三接收模块,用于接收用户端发送的针对第一视角下的目标视频的第一获取请求;

第一获取模块,用于基于所述第一获取请求,获取多个视角下的目标视频,得到第一视频集合,所述多个视角包括所述第一视角;

第三发送模块,用于向所述用户端发送所述第一视频集合,以使所述用户端在接收到所述第一视频集合后,播放所述第一视频集合中所述第一视角下的目标视频,并在接收到将所述第一视角切换为第二视角的视角切换指令时,基于所述第一视频集合,将当前播放的第一视角下的目标视频切换为所述第二视角下的目标视频。

在本申请实施的第五方面,还提供了一种用户端,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现权利要求上述任一所述的视角切换方法步骤。

在本申请实施的第六方面,还提供了一种服务器,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现权利要求上述任一所述的视角切换方法步骤。

在本申请实施的第七方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求上述任一所述的视角切换方法步骤。

在本申请实施的第八方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的视角切换方法。

本申请实施例提供的技术方案,用户端在向服务器请求获取第一视角下的目标视频时,服务器向用户端发送包括多个视角下的目标视频的第一视频集合,也就是服务器在向用户端发送第一视角下的目标视频的同时,还向用户端发送了其他视角下的目标视频,这使得用户端在接收到将第一视角切换为第二视角的视角切换指令时,可以根据接收到的第一视频集合,直接播放第二视角下的目标视频。这使得目标视频的视角切换过程中,用户端不需要重新向服务器请求获取第二视角下的目标视频,有效缩短了第二视角下目标视频的获取时长,从而缩短了视角切换过程所需的时长,降低了卡顿现象发生的概率。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为某一直播场景的示意图;

图2为本申请实施例提供的视角切换方法的第一种流程示意图;

图3为本申请实施例提供的视角切换方法的第二种流程示意图;

图4为本申请实施例提供的视角切换方法的第三种流程示意图;

图5为本申请实施例提供的视角切换方法的第四种流程示意图;

图6为本申请实施例提供的视角切换方法的第五种流程示意图;

图7为本申请实施例提供的视角切换方法的第六种流程示意图;

图8为本申请实施例提供的视角切换方法的第七种流程示意图;

图9为本申请实施例提供的视角切换方法的第八种流程示意图;

图10为本申请实施例提供的视角切换过程的一种信令图;

图11为本申请实施例提供的视角切换装置的第一种结构示意图;

图12为本申请实施例提供的视角切换装置的第二种结构示意图;

图13为本申请实施例提供的用户端的一种结构示意图;

图14为本申请实施例提供的服务器的一种结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

如图1所示,图1为某一直播场景的示意图。在图1所示的直播场景中,舞台的四周设置了7个摄像机,即图1中的摄像机1-摄像机7。

为便于用户对播放的视频进行视角切换,需要在直播场景中部署大量的摄像机对舞台进行拍摄。以用户观看的视频进行视角切换过程为例进行说明。

现假设用户当前观看的视频为图1中摄像机4拍摄到的视频。某一时刻,用户想要观看摄像机2所在的视角上的视频。此时,用户可以触发用户端向服务器发送获取摄像机2所在的视角上的视频流的视频获取请求。服务器在接收到视频获取请求后,可以获取摄像机2所拍摄到的视频流,并将获取到的视频流发送给用户端,从而使得用户观看的摄像机2所在视角上的视频。

由于视角切换过程中,用户端需要重新获取切换后的视角所对应的视频流,这增加了视角切换过程所需的时长,设置可能出现卡顿现象。

为解决相关技术中的问题,本申请实施例提供了一种视角切换方法。如图2所示,图2为本申请实施例提供的视角切换方法的第一种流程示意图。该方法应用于用户端,具体包括以下步骤。

步骤S201,向服务器发送针对第一视角下的目标视频的第一获取请求。

步骤S202,接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角。

步骤S203,播放第一视频集合中第一视角下的目标视频。

步骤S204,在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

通过图2所示的方法,用户端在向服务器请求获取第一视角下的目标视频时,服务器向用户端发送包括多个视角下的目标视频的第一视频集合,也就是服务器在向用户端发送第一视角下的目标视频的同时,还向用户端发送了其他视角下的目标视频,这使得用户端在接收到将第一视角切换为第二视角的视角切换指令时,可以根据接收到的第一视频集合,直接播放第二视角下的目标视频。这使得目标视频的视角切换过程中,用户端不需要重新向服务器请求获取第二视角下的目标视频,有效缩短了第二视角下目标视频的获取时长,从而缩短了视角切换过程所需的时长,降低了卡顿现象发生的概率。

下面通过具体的实施例,对本申请实施例进行说明。

针对上述步骤S201,即向服务器发送针对第一视角下的目标视频的第一获取请求。

在本步骤中,用户可以利用用户端触发对第一视角下的目标视频的观看操作。此时用户端将向服务器发送针对第一视角下的目标视频的视频获取请求,(记为第一获取请求)。

为便于理解,以主播直播场景为例。当用户利用移动设备或笔记本等用户端观看某一主播的直播间时,也就是用户通过点击操作观看某一主播的直播间时,用户端将向直播视频的推流服务器发送该直播间所对应的视频流的第一获取请求。

一个可选的实施例中,上述第一获取请求中可以包括上述目标视频的视频标识。以目标视频为主播的直播视频为例,第一获取请求中可以包括主播所对应的直播间号。

上述目标视频的视频标识除了表示为上述直播间号外,可以表示为其他信息,例如,视频的标题、名称等。在此,对上述目标视频的视频标识不作具体限定。

另一可选的实施例中,上述第一获取请求中可以包括上述目标视频的视频标识,以及上述第一视角的视角标识。

上述第一视角的视角标识可以采用多种方式表示。仍以上述图1为例,摄像机4所对应的视角的视角标识可以表示为:舞台中心点与摄像机镜头的中心点间的夹角。在此,对上述第一视角的视角标识的表示方式不作具体限定。

在本申请实施例中,上述第一视角可以为目标视频所对应的默认视角。仍以上述主播的直播场景为例,上述第一视角可以为摄像机拍摄方向正对主播的方向。在此,对上述第一视角不作具体限定。

在本申请实施例中,根据实际应用场景的不同,上述用户端与服务器也可以有所变化。以用户端为例,当上述目标视频为电视直播视频时,上述用户端可以为电视或手机等设备。当上述目标视频为网络直播视频时,上述用户端可以为手机或电脑等设备。在此,对上述用户端和服务器不作具体限定。

针对上述步骤S202,即接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角。

在本步骤中,在实际拍摄场景中,可以在多个不同的视角上设置对应的摄像机,从而拍摄到多个不同视角下的目标视频(为便于区分,记为第一数量个不同视角下的目标视频)。服务器对拍摄得到的多个视角下的目标视频进行存储。服务器在接收到上述第一获取请求后,从其存储的目标视频中获取多个视角下的目标视频(为便于区分,记为第二数量个不同视角下的目标视频),作为第一视频集合。服务器可以将该第一视频集合发送给用户端。此时,用户端将接收到服务器发送的第一视频集合。

在本申请实施例中,上述服务器中存储有多个拍摄场景中不同视角下的目标视频。为便于理解,下面仅以某一拍摄场景中多个视角下的目标视频为例进行说明,并不起任何限定作用。上述第一数量个视角下的目标视频可以为不同摄像机在不同拍摄视角上拍摄得到的多个视频流。

为便于理解,仍以上述图1所示的直播场景为例。由于该直播场景中设置有7个摄像机,即摄像机1-摄像机7,并且,每一摄像机对舞台进行拍摄时的拍摄视角不同。因此,摄像机1-摄像机7在进行拍摄时,将得到7个不同视角下的视频流。服务器可以获取摄像机1-摄像机7所对应拍摄得到的视频流,并对获取到的视频流进行存储。

一个可选的实施例中,服务器在获取上述第一视频集合时,可以将其存储的所有视角下的目标视频作为第一视频集合中包括的目标视频。仍以上述图1为例进行说明,服务器可以将摄像机1-摄像机7所对应的视频流作为第一视频集合中包括的视频流。此时,上述第二数量等于上述第一数量。

另一个可选的实施例中,服务器在获取上述第一视频集合时,可以以第一视角为中心,获取其预设范围内各视角下的目标视频作为第一视频集合中包括的目标视频。仍以上述图1所示的直播场景为例进行说明,若第一视角为摄像机4所对应的拍摄视角,则服务器可以将摄像机2-摄像机6的视频流作为第一视频集合中包括的视频流。此时,上述第二数量小于上述第一数量。

再一个可选的实施例中,服务器在获取上述第一视频集合时,在将第一视角下的目标视频作为第一视频集合包括的目标视频的同时,还可以按照预设选取规则,如等间隔选择或者随机选择的方式,从剩余的其他视角下的目标视频作为第一视频集合包括的目标视频。此时,上述第二数量小于上述第一数量。

仍以上述图1所示的直播场景为例进行说明,若第一视角为摄像机4所对应的拍摄视角,则服务器在将摄像机4的视频流确定为第一视频集合包括的视频流的同时,针对摄像机1-3以及摄像机5-7所对应的视频流,服务器可以选择将摄像机1、3、5和7所对应的视频流作为第一视频集合包括的视频流。

在此,对上述第一视频集合中包括的多个视角下的目标视频的选择方式不作具体的限定。

一个可选的实施例中,上述第一视频集合中第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率,第三视角为多个视角中除第一视角以外的任一视角。也就是上述第一视频集合中的第一视角上的目标视频的分辨率最高。

为便于理解,以摄像机采集到的视频的分辨率为:w×h×3为例进行说明。其中,w表示视频中每一视频帧的宽度,h表示视频中每一视频帧的高度,3表示红绿蓝(Red Green Blue,RGB)3个颜色通道。

在上述第一视频集合中,第一视角下的目标视频的分辨率可以为w×h×3,每一第三视角下的目标视频的分辨率可以低于w×h×3,如α·w×α·h×3,其中,α为预设系数,0<α<1。

一个可选的实施例中,第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关,第三视角所对应的目标距离为第三视角上的摄像机与第一视角上的摄像机间的距离。也就是针对上述第一视频集合中的每一第三视角下的目标视频,当该第三视角所对应的目标距离越小时,该第三视角下的目标视频的分辨率越高;当该第三视角所对应的目标距离越大时,该第三视角下的目标视频的分辨率越低。

关于上述第一视频集合中每一视角下的目标视频的分辨率的确定可参见下文描述,在此不作具体说明。

在本申请实施例中,当上述第一视频集合中第一视角下的目标视频的分辨率最高时,可以有效降低第一视频集合中各目标视频所对应的总数据量,这将有效降低服务器向用户端发送第一视频集合所需的网络资源,提高第一视频集合发送的效率。

针对上述步骤S203,即播放第一视频集合中第一视角下的目标视频。

在本步骤中,用户端在接收到上述第一视频集合后,可以对该第一视频集合中的第一视角下的目标视频进行播放。

针对上述步骤S204,即在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

在本步骤中,在上述第一视角下的目标视频的播放过程中,用户随时可以对观看的视频的视角进行视角切换。此时,用户端将接收到视角切换指令,该视角切换指令包括第二视角的视角标识。该第二视角的视角标识用于指示将当前播放目标视频的视角切换为第二视角。也就是将上述第一视角切换为第二视角。用户端在接收到的视角切换指令后,可以确定需要切换当前播放的视频所对应的视角。此时,用户端可以根据第一视频集合,将当前播放目标视频切换为第二视角下的目标视频,也就是将上述第一视角下的目标视频切换为第二视角下的目标视频。

在本申请实施例中,上述第二视角可以为摄像机所对应的真实拍摄视角,也可以为虚拟摄像机所对应的拍摄视角(即虚拟视角)。

一个可选的实施例中,当上述第二视角为摄像机所对应的真实拍摄视角时,服务器中将存储该第二视角所对应的目标视频。此时,上述第一视频集合中可以包括该第二视角下的目标视频,也可以不包括该第二视角下的目标视频。

另一个可选的实施例中,当上述第二视角为虚拟摄像机所对应的拍摄视角时,服务器所存储的多个视角下的目标视频中将不会包括第二视角下的目标视频。此时,上述第一视频集合中也不会包括第二视角下的目标视频。

在第一视频集合包括上述第二视角下的目标视频和不包括上述第二视角下的目标视频的两种情况,上述视角切换过程有所不同,具体可参见下文描述,在此不作赘述。

通过上述步骤S204,用户端在接收到视角切换指令后,可以及时根据第一视频集合中包括的目标视频进行视角切换。由于视角切换过程设置在用户端中,这有效缩短视角切换所需时长的同时,有效节约了服务器中的系统资源,保证了服务器的稳定性。

一个可选的实施例中,当上述第一视频集合中包括第二视角下的目标视频时,根据上述图2所示的方法,本申请实施例还提供了一种视角切换方法,如图3所示,图3为本申请实施例提供的视角切换方法的第二种流程示意图。该方法包括以下步骤。

步骤S301,向服务器发送针对第一视角下的目标视频的第一获取请求。

步骤S302,接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角。

步骤S303,播放第一视频集合中第一视角下的目标视频。

上述步骤S301-步骤S303与上述步骤S201-步骤S203相同。

步骤S304,在接收到将第一视角切换为第二视角的视角切换指令时,若第一视频集合中包括第二视角下的目标视频,则基于当前播放的第一视角下目标视频的时间点,播放第一视频集合中第二视角下的目标视频。

在本申请实施例中,由于上述第一视频集合中的每一目标视频为对应的摄像机在不同视角对同一拍摄场景进行拍摄得到的,因此,上述第一视频集合中的每一目标视频所对应的时间段是相同的。当上述第一视频集合中包括第二视角下的目标视频时,用户端可以根据当前时刻第一视角下目标视频所播放到的时间点,从相同时间点处开始播放第二视角下的目标视频。

在视角切换过程中,通过第一视角下目标视频所播放到的时间点,对第二视角下的目标视频进行播放,可以有效保证视角切换前的目标视频与视角切换后的目标视频间内容的连贯性,保证了视频播放的连续性和流畅性。

一个可选的实施例中,当上述第一视频集合中未包括第二视角下的目标视频时,根据图2所示的方法,本申请实施例还提供了一种视角切换方法。如图4所示,图4为本申请实施例提供的视角切换方法的第三种流程示意图。该方法包括以下步骤。

步骤S401,向服务器发送针对第一视角下的目标视频的第一获取请求。

步骤S402,接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角。

步骤S403,播放第一视频集合中第一视角下的目标视频。

上述步骤S401-步骤S403与上述步骤S201-步骤S203相同。

步骤S404,在接收到将第一视角切换为第二视角的视角切换指令时,若第一视频集合中未包括第二视角下的目标视频,则基于第一视频集合中的各视角下的目标视频,合成第二视角下的目标视频。

在本申请实施例中,由于当上述第二视角为虚拟视角时,用户端所接收到的第一视频集合中并不包括第二视角下的目标视频。或者,由于服务器未将第二视角下的目标视频作为第一视频集合中目标视频,用户端所接收到的第一视频集合中将不会包括第二视角下的目标视频。用户端在接收到上述视角切换指令后,将根据第一视频集合中包括的各视角下的目标视频,合成第二视角下的目标视频。

一个可选的实施例中,用户端在基于第一视频集合中的各视角下的目标视频,合成第二视角下的目标视频时,可以选择距离第二视角所在位置最近的一个或多个摄像机所在视角下的目标视频,合成第二视角下的目标视频。

为便于理解,仍以上述图1所示直播场景为例进行说明。现假设图1中的摄像机1为一虚拟摄像机,第二视角为摄像机1所在位置对应的拍摄视角。上述第一视频集合由摄像机2-摄像机7所拍摄到的视频组成。

用户端为了切换至第二视角下的视频,可以利用摄像机2所拍摄到的视频,合成虚拟摄像机所对应的视角下的视频。

为便于理解,仅以摄像机2所拍摄到的视频中的一帧图像(即图像A)合成虚拟摄像机所对应的视角下的视频中的一帧图像(即图像B)为例对视频合成过程进行说明。

用户端可以将图像A投影至虚拟摄像机的拍摄视角所对应的图像坐标系中,得到包含空洞区域的投影图像。用户端可以利用空洞区域周围像素点的图像信息,如RGB值等,确定空洞区域中各像素点的图像信息,从而根据确定出的图像信息进行空洞填补,得到图像B。以此类推,用户端可以对摄像机2所拍摄到的视频中的每一帧图像进行投影,从而得到虚拟摄像机所对应的视角下的视频。

步骤S405,基于当前播放的第一视角下目标视频的时间点,播放第二视角下的目标视频。

通过上述步骤S404和步骤S405,用户端可以根据第一视频集合中各个视角下的目标视频,合成第二视角下的目标视频,从而完成视角切换过程,减少实际场景中所需部署的摄像机数量,在实现视角切换的同时,减低了拍摄场景中摄像机部署的部署成本。

在本申请实施例中,用户端在合成上述第二视角下的目标视频时,由于该第二视角下的目标视频是根据上述第一视频集合中包括的各视角下的目标视频进行合成的。此时,用户端无需重新获取合成第二视角下的目标视频所对应的各视角下的目标视频,这使得用户端可以及时合成第二视角下的目标视频,从而完成当前播放的目标视频的视角切换过程。这在保证视角切换顺利完成的情况下,有效降低了视频合成所需的时长,从而缩短视角切换过程所需的时长,有效降低了视角切换过程出现卡顿现象的概率。

另外,即使由于视频合成过程所需的时间较长造成视角切换过程出现卡顿现象,例如,采用第一视频集合中的所有目标视频合成第二视角下的目标视频时,所有目标视频的数据量相对较大,可能导致视频合成所需时间较长,从而造成视角切换过程出现卡顿现象。此时,由于不需要重新获取各视角所对应的目标视频,这使得采用本申请实施例所导致的卡顿现象所持续的时长也将小于基于相关技术中合成第二视角所对应的目标视频所造成的卡顿现象所持续的时长。

一个可选的实施例中,若目标视频为直播视频,则第一视频集合中的每一目标视频为直播场景中的前景图组和前景深度图组。

一个可选的实施例中,当上述目标视频为直播视频时,根据图2所示的方法,本申请实施例还提供了一种视角切换方法。如图5所示,图5为本申请实施例提供的视角切换方法的第四种流程示意图。该方法包括以下步骤。

步骤S501,向服务器发送针对第一视角下的目标视频的第一获取请求。

步骤S502,接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角。

上述步骤S501-步骤S502与上述步骤S201-步骤S202相同。

步骤S503,获取预设背景图组和预设背景深度图组。

一个可选的实施例中,上述预设背景图组和上述预设背景深度图组为预先拍摄得到的多帧视频图像和每一帧视频图像所对应的深度图像。

以直播视频为某一主播的直播视频为例进行说明。上述预设背景图组可以为主播未直播(即主播不在拍摄场景中)时,摄像机对拍摄场景进行图像采集所得到的多张图像的集合。上述预设背景深度图组为预设背景图组中每一图像所对应深度图像的集合。

上述预设背景图组所对应的拍摄场景可以为主播进行直播时,主播直播时的拍摄场景,也可以为预先选择的任一拍摄地点所对应的场景。在此,对上述预设背景图组所对应的拍摄场景不作具体限定。

一个可选的实施例中,上述预设背景深度图像组可以利用深度摄像机对上述拍摄场景进行拍摄得到。深度摄像机的拍摄视角与摄像机的拍摄视角相同。

另一个可选的实施例中,上述预设背景深度图像组可以是利用预先训练好的高精度深度估计模型对上述预设背景图像组中每一图像进行处理得到的。相关技术中的高精度深度估计模型均可用于本申请实施例中,在此,对上述高精度深度估计模型不作具体限定。

上述预设背景图组中可以包括多个背景图像,上述预设背景深度图组中可以包括多个背景深度图像。预设背景图组中包括的背景图像的数量,与预设背景深度图组包括的背景深度图像的数量相同。在此,对上述预设背景图组中包括的背景图像的数量以及预设背景深度图组包括的背景深度图像的数量不作具体限定。

步骤S504,获取第一视频集合中第一视角下的前景图组和前景深度图组。

在本步骤中,上述第一视频集合中每一视角下的目标视频由每一视角下的前景图组和每一视角下的前景深度图组共同组成,用户端可以从上述第一视频集合中,获取第一视角下的前景图组和第一视角下的前景深度图组。

为便于理解,以某一主播直播时的视频A为例。上述前景图组可以为视频A的每一视频帧中前景图像的集合,也就是视频A的每一视频帧中主播的人体图像的集合。上述前景深度图组为每一前景图像所对应深度图像的集合。

在本申请实施例中,上述在从摄像机拍摄到的视频中获取前景图组时,可以利用实时分割模型,对每一视频帧中的前景和背景进行分割,得到前景图组。例如,视频为某一主播直播时的直播视频,可以利用实时人体分割模型分割得到直播视频中每一视频帧中的人体图像,得到直播图像中的前景图组。

上述前景深度图组的获取方式可参照上述预设背景深度图组的获取方式,在此不作具体说明。

在本申请实施例中,上述步骤S503可以在上述步骤S504之前/之后执行,也可以与上述步骤S504同时执行。在此,对上述步骤S503和步骤S504的执行顺序不作具体限定。

步骤S505,基于预设背景深度图组和第一视角下的前景深度图组,对预设背景图组和第一视角下的前景图组进行图像融合,得到第一视角下的第一融合视频。

一个可选的实施例中,用户端在对上述预设背景图组和第一视角下的前景图组进行图像融合时,可以将预设背景图组中的目标背景图像与第一视角下的前景图组进行融合。其中,目标背景图像所对应视角为第一视角,或者,目标背景图像所对应的视角也可以为任一视角。在此,对目标背景图像的选择不作具体限定。

一个可选的实施例中,为了弱化背景对用户的视觉影响,用户端在对上述目标背景图像与第一视角下的前景图组进行图像融合时,可以对目标背景图像进行高斯模糊处理,从而对高斯模糊处理后的目标背景图像和第一视角下的前景图组进行图像融合。

相关技术中的图像融合技术均可用户本申请实施例,在此,对上述图像融合的过程不作具体说明。

步骤S506,播放第一融合视频。

在本步骤中,用户端可以将当前播放的第一视角下的目标视频切换为上述第一融合视频,也就是播放第一融合视频。

上述步骤S503-步骤S506是对上述步骤S203的细化。

步骤S507,在接收到将第一视角切换为第二视角的视角切换指令时,获取预设背景图组和预设背景深度图组。

步骤S508,基于第一视频集合,获取第二视角下的前景图组和前景深度图组。

一个可选的实施例中,当上述第一视频集合中包括第二视角下的目标视频时,用户端可以从第一视频集合中获取第二视角下的前景图组和前景深度图组。具体获取方式可参照上述第一视角下的前景图组和前景深度图组的获取方式,在此不作具体说明。

另一个可选的实施例中,当上述第一视频集合中未包括第二视角下的目标视频时,用户端可以根据第一视频集合中包括的各视角下的前景图组和前景深度图组,合成第二视角下的前景图组和前景深度图组。具体合成方式可参照上述第二视角下目标视频的合成方式,在此不作具体说明。

在本申请实施例中,上述步骤S507可以在上述步骤S508之前/之后执行,也可以与上述步骤S508同时执行。在此,对上述步骤S507和步骤S508的执行顺序不作具体限定。

步骤S509,基于预设背景深度图组和第二视角下的前景深度图组,对预设图组和第二视角下的前景图组进行图像融合,得到第二视角下的第二融合视频。

在图5所示的实施例中,在接收到视角切换指令后,用户端需要重新获取预设背景图组和预设背景深度图组,也就是执行上述步骤S507。除此以外,用户端也可以直接不执行上述步骤S507,也就是在执行在接收到视角切换指令后,直接执行上述步骤S508。在执行上述步骤S509进行图像融合时,可以根据上述步骤S503所获取到的预设背景图组和预设背景深度图组进行图像融合。

步骤S510,播放第二融合视频。

上述步骤S507-步骤S510的执行过程与上述步骤S503-步骤S506的执行过程相似,在此对上述步骤S507-步骤S510的执行过程不作具体说明。

上述步骤S507-步骤S510是对上述步骤S204的细化。

一个可选的实施例中,根据上述图2所示的方法,本申请实施例还提供了一种视角切换方法。如图6所示,图6为本申请实施例提供的视角切换方法的第五种流程示意图。该方法增加了以下步骤,即步骤S205-步骤S207。

步骤S205,在将当前播放的第一视角下的目标视频切换为第一视频集合包括的第二视角下的目标视频时,向服务器发送针对第二视角下的目标视频的第二获取请求。

上述第二获取请求中包括目标视频的视频标识,以及第二视角的视角标识。

在本申请实施例中,用户端可以先执行上述步骤S204,再执行步骤S205。用户端也可以同时执行上述步骤S204和步骤S205。在此,对上述步骤S204和步骤S205的执行顺序不作具体限定。

步骤S206,接收服务器返回的在多个视角下的目标视频的第二视频集合;第二视频集合中第二视角下的目标视频的分辨率高于第一视频集合中第一视角下的目标视频的分辨率。

一个可选的实施例中,上述第二视频集合中第二视角下的目标视频的分辨率高于第四视角下的目标视频的分辨率,第四视角为多个视角中除第二视角以外的任一视角。也就是在第二视频集合中第二视角下的目标视频的分辨率最高。

一个可选的实施例中,上述第二视频集合中每一第四视角下的目标视频的分辨率与该第四视角所对应的目标距离呈负相关,第四视角所对应的目标距离为第四视角上的摄像机与第二视角上的摄像机间的距离。也就是针对第二视频集合中的每一第四视角下的目标视频,当该第四视角所对应的目标距离越小时,该第四视角下的目标视频的分辨率越高;当该第四视角所对应的目标距离越大时,该第四视角下的目标视频的分辨率越低。

步骤S207,将当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频。

在本步骤中,在接收到上述第二视频集合后,用户端可以将当前播放的目标视频切换为第二视频集合中第二视角下的目标视频。也就是播放第二视频集合中第二视角下的目标视频。

上述步骤S207中当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频的切换方式,可参照上述将第一视角下的目标视频切换为第一视频集合中第二视角下的目标视频的切换方式,在此不作具体说明。

通过上述步骤S205-步骤S207,在接收到将第一视角切换为第二视角的视角切换指令时,用户端将直接执行步骤S204,因此,用户端当前播放的目标视频为第一视频集合中第二视角下的目标视频,该目标视频的分辨率低于第一视频集合中第一视角下的目标视频。为了保证用户所观看的目标视频的分辨率,用户端重新获取高分辨率的第二视角下的目标视频,并播放重新获取到的第二视角下的目标视频,在保证视角切换及时至第二视角的同时,通过切换至重新获取二视角下的高分辨率的目标视频,有效保证了当前播放的第二视角下的目标视频的分辨率,提高视觉效果。

在图6所示的方法中,仅以第一视频集合中包括第二视角下的目标视频时,重新获取高分辨率的第二视角下的目标视频为例进行说明。除此以外,当第一视频集合中未包括第二视角下的目标视频时,用户端也可以重新获取高分辨率的第二视角下的目标视频。

例如,由于第二视角为虚拟视角导致第一视频集合中未包括第二视角下的目标视频时。用户端也可以向服务器发送上述第二获取请求。服务器在接收到的第二获取请求后,可以向用户端发送包括多个视角下的目标视频所构成的第三视频集合。在该第三视频集合中,与第二视角间距离最近的真实拍摄视角下的目标视频的分辨率最高。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种视角切换方法。如图7所示,图7为本申请实施例提供的视角切换方法的第六种流程示意图。该方法应用于服务器,具体包括以下步骤。

步骤S701,接收用户端发送的针对第一视角下的目标视频的第一获取请求。

在本步骤中,当用户端向服务器发送针对第一视角下的目标视频的第一获取请求时,服务器将接收到该第一获取请求。

步骤S702,基于第一获取请求,获取多个视角下的目标视频,得到第一视频集合,多个视角包括第一视角。

在本申请实施例中,服务器中存储有同一拍摄场景中摄像机在不同拍摄视角所拍摄到的目标视频。也就是服务器中存储有多个视角下的目标视频。当服务器接收到上述第一获取请求后,服务器可以获取多个视角下的目标视频,得到第一视频集合。

步骤S703,向用户端发送第一视频集合,以使用户端在接收到第一视频集合后,播放第一视频集合中第一视角下的目标视频,并在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

在本步骤中,服务器在获取得到上述第一视频集合后,可以将该第一视频集合发送给用户端。用户端在接收到服务器发送的第一视频集合后,可以播放第一视频集合中第一视角下的目标视频。当用户端接收到将第一视角切换为第二视角的视角切换指令时,用户端可以基于接收到的第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

通过图7所示的方法,用户端在向服务器请求获取第一视角下的目标视频时,服务器向用户端发送包括多个视角下的目标视频的第一视频集合,也就是服务器在向用户端发送第一视角下的目标视频的同时,还向用户端发送了其他视角下的目标视频,这使得用户端在接收到将第一视角切换为第二视角的视角切换指令时,可以根据接收到的第一视频集合,直接播放第二视角下的目标视频。这使得目标视频的视角切换过程中,用户端不需要重新向服务器请求获取第二视角下的目标视频,有效缩短了第二视角下目标视频的获取时长,从而缩短了视角切换过程所需的时长,降低了卡顿现象发生的概率。

一个可选的实施例中,若上述目标视频为直播视频,则第一视频集合中的每一目标视频为直播场景中的前景图组和前景深度图组。

在本申请实施例中,当上述目标视频为直播视频时,第一视频集合中仅包括前景图组和前景深度图组,用户端在接收到的第一视频集合,并对第一视频集合中的目标视频进行播放时,可以根据上述预设背景深度图组和目标视频的前景深度图组,对上述预设背景图组和目标视频的前景图组进行图像融合,得到融合视频,并对融合视频进行播放。这在降低第一视频集合数据量,提高第一视频集合的传输效率的同时,增加了播放的目标视频的选择性。

一个可选的实施例中,上述第一视频集合中第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率,第三视角为多个视角中除第一视角以外的任一视角。

一个可选的实施例中,当上述第一视频集合中第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率时,根据上述图7所示的方法,本申请实施例还提供了一种视角切换方法。如图8所示,图8为本申请实施例提供的视角切换方法的第七种流程示意图。具体包括以下步骤。

步骤S801,接收用户端发送的针对第一视角下的目标视频的第一获取请求。

上述步骤S801与上述步骤S701相同。

步骤S802,基于第一获取请求,获取第一视角下的目标视频以及多个第三视角下的目标视频。

步骤S803,对每一第三视角下的目标视频的分辨率进行调整,得到调整后的第三视角下目标视频,并将第一视角下的目标视频以及调整后的第三视角下目标视频作为第一视频集合。

一个可选的实施例中,针对每一第三视角下的目标视频,服务器可以根据该第三视角所对应的目标距离,调整该第三视角下目标视频的分辨率,得到调整后的第三视角下的目标视频。

一个可选的实施例中,第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关,第三视角所对应的目标距离为第三视角上的摄像机与第一视角上的摄像机间的距离。

为便于理解,仍以摄像机采集到的视频的分辨率为:w×h×3为例,结合图1所示的直播场景进行说明。

现假设第一视角为摄像机4所对应的拍摄视角。di表示摄像机i到摄像机4的距离,即摄像机i的拍摄视角所对应的目标距离。

服务器可以分别计算图1中每一摄像机所对应的目标距离,例如,d1=d7=3d,d2=d6=2d,d3=d5=d,d4=0。

服务器可以根据每一摄像机所对应的目标距离,确定每一摄像机所对应的拍摄视角下的目标视频的分辨率。

例如,在摄像机4的拍摄视角下的目标视频的分辨率为:α0·w×α0·h×3=w×h×3;在摄像机3和摄像机5的拍摄视角下的目标视频的分辨率为:α1·w×α1·h×3=α·w×α·h×3;在摄像机2和摄像机6的拍摄视角下的目标视频的分辨率为:α2·w×α2·h×3;在摄像机1和摄像机7的拍摄视角下的目标视频的分辨率为:α3·w×α3·h×3。

在本申请实施例中,上述目标距离可以根据两个摄像机的摄像机外参计算得到。

上述摄像机外参包括世界坐标系中的位置和方向,可以表示为摄像机旋转矩阵和摄像机位移矩阵。

上述摄像机旋转矩阵Rcam可以表示为:

上述摄像机位移矩阵tcam可以表示为:

上述摄像机的摄像机外参具体可以表示为外参矩阵extrinsicscam,即

其中,cam表示摄像机,R为世界坐标系中的方向,t表示世界坐标系中的位置,x表示世界坐标系中的X轴方向,y为世界坐标系中的Y轴方向,z为世界坐标系中的Z轴方向。

任意两个摄像机(如摄像机cami和摄像机camj)间的目标距离可以表示为:

上述步骤S802-步骤S803是对上述步骤S702的细化。

通过上述步骤S802-步骤S803,第一视频集合中第一视角下的目标视频的分辨率最高,这可以有效降低第一视频集合中各目标视频所对应的总数据量,这将有效降低服务器向用户端发送第一视频集合所需的网络资源,提高第一视频集合发送的效率。

步骤S804,向用户端发送第一视频集合,以使用户端在接收到第一视频集合后,播放第一视频集合中第一视角下的目标视频,并在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

上述步骤S804与上述步骤S703相同。

一个可选的实施例中,根据上述图7所示的方法,本申请实施例还提供了一种视角切换方法。如图9所示,图9为本申请实施例提供的视角切换方法的第八种流程示意图。具体增加以下步骤,即步骤S704-步骤S706。

步骤S704,接收用户端发送的针对第二视角下的目标视频的第二获取请求,第二获取请求为用户端在接收到视角切换指令、且第一视频集合中包括第二视角下的目标视频时发送的。

在本步骤中,用户端在接收到的视角切换指令时,在将当前播放的第一视角下的目标视频切换为第一视频集合包括的第二视角下的目标视频时,为了提高播放的第二视角下的目标视频的分辨率,提高用户视觉效果,用户端可以向服务器发送针对第二视角下的目标视频的第二获取请求。

步骤S705,基于第二获取请求,获取多个视角下的目标视频,得到第二视频集合;第二视频集合中第二视角下的目标视频的分辨率高于第一视频集合中第一视角下的目标视频的分辨率。

在本步骤中,服务器在接收到上述第二获取请求后,可以获取第二视角下的目标视频,以及多个第四视角下的目标视频,并对每一第四视角下的目标视频的分辨率进行调整,得到调整后的第四视角下的目标视频。服务器将第二视角下的目标视频以及调整后的第四视角下的目标视频作为第二视频集合中包括的目标视频。

上述第四视角下的目标视频的分辨率的调整方式可参照上述第三视角下下的目标视频的分辨率的调整方式,在此不作具体说明。

步骤S706,向用户端发送第二视频集合,以使用户端将当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频。

通过上述步骤S704-步骤S706,服务器根据接收到的第二获取请求,将高分辨率的第二视角下的目标视频发送至用户端,这使得可以将当前播放的分辨率较低的第二视角下的目标视频切换为高分辨率的第二视角下的目标视频,提高了当前播放的目标视频的分辨率,提高了视觉效果。

为便于理解,以目标视频为某一主播的直播视频为例,结合图10进行说明。图10为本申请实施例提供的视角切换过程的一种信令图。

步骤S1001,主播端获取第一拍摄场景的图像,得到背景图组。

上述第一拍摄场景中不包括上述主播。上述主播端为主播进行直播时使用的电子设备。

步骤S1002,主播端将背景图组发送至服务器。

步骤S1003,服务器在接收到背景图组后,利用预先训练好的高精度深度估计模型,获取背景图组中每一背景图像所对应的背景深度图像,得到背景深度图组。

步骤S1004,服务器向用户端发送背景图组和背景深度图组。

步骤S1005,用户端对接收到的背景图组和背景深度图组进行存储。

上述步骤S1001-步骤S1005是在主播未进行直播时执行的。上述背景图组和背景深度图组也可以是预先存储在用户端中的。

步骤S1006,主播端在主播进行直播时获取多个视角下的视频流,作为多个视角下的目标视频。

上述目标视频为直播场景中的前景图组和前景深度图组。

步骤S1007,主播端将获取到的多个视角下的目标视频发送至服务器。

步骤S1008,服务器对接收到的多个视角下的目标视频进行存储。

步骤S1009,用户端向服务器发送针对第一视角下的目标视频的第一获取请求。

步骤S1010,服务器在接收到第一获取请求后,获取存储的多个视角下的目标视频。

步骤S1011,服务器对每一第三视角下的目标视频的分辨率进行调整,得到调整后的第三视角下目标视频,并将第一视角下的目标视频以及调整后的第三视角下目标视频作为第一视频集合。

上述第三视角为上述多个视角中除第一视角以外的任一视角。

上述第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关。

步骤S1012,服务器将第一视频集合发送给用户端。

步骤S1013,用户端在接收到第一视频集合后,播放第一视频集合中第一视角下的目标视频。

在本步骤中,用户端基于其存储的背景深度图组和第一视频集合所包括的第一视角下的前景深度图组,对其存储的背景图组和第一视频集合所包括的第一视角下的前景图组进行图像融合,得到第一视角下的融合视频;播放该融合视频。

步骤S1014,用户端在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

步骤S1015,用户端在将当前播放的第一视角下的目标视频切换为第一视频集合包括的第二视角下的目标视频时,向服务器发送针对第二视角下的目标视频的第二获取请求。

步骤S1016,服务器基于接收到的第二获取请求,获取多个视角下的目标视频,得到第二视频集合。

上述第二视频集合中每一第四视角下的目标视频的分辨率与该第四视角所对应的目标距离呈负相关,第四视角所对应的目标距离为第四视角上的摄像机与第二视角上的摄像机间的距离。第四视角为多个视角中除第二视角以外的任一视角。

步骤S1017,服务器向用户端发送第二视频集合。

步骤S1018,用户端在接收到第二视频集合后,将当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种视角切换装置。如图11所示,图11为本申请实施例提供的视角切换装置的第一种结构示意图。该装置应用于用户端,具体包括以下模块。

第一发送模块1101,用于向服务器发送针对第一视角下的目标视频的第一获取请求;

第一接收模块1102,用于接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角;

播放模块1103,用于播放第一视频集合中第一视角下的目标视频;

第一切换模块1104,用于在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

可选的,上述第一视频集合中第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率,第三视角为多个视角中除第一视角以外的任一视角。

可选的,上述第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关,第三视角所对应的目标距离为第三视角上的摄像机与第一视角上的摄像机间的距离。

可选的,上述视角切换装置还可以包括:

第二发送模块,用于在将当前播放的第一视角下的目标视频切换为第一视频集合包括的第二视角下的目标视频时,向服务器发送针对第二视角下的目标视频的第二获取请求;

第二接收模块,用于接收服务器返回的在多个视角下的目标视频的第二视频集合;第二视频集合中第二视角下的目标视频的分辨率高于第一视频集合中第一视角下的目标视频的分辨率;

第二切换模块,用于将当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频。

可选的,上述第一切换模块1104,具体可以用于在接收到将第一视角切换为第二视角的视角切换指令时,若第一视频集合中包括第二视角下的目标视频,则基于当前播放的第一视角下目标视频的时间点,播放第一视频集合中第二视角下的目标视频。

可选的,上述第一切换模块1104,具体可以用于在接收到将第一视角切换为第二视角的视角切换指令时,若第一视频集合中未包括第二视角下的目标视频,则基于第一视频集合中的各视角下的目标视频,合成第二视角下的目标视频;

基于当前播放的第一视角下目标视频的时间点,播放第二视角下的目标视频。

可选的,若目标视频为直播视频,则第一视频集合中的每一目标视频为直播场景中的前景图组和前景深度图组;

上述播放模块1103,具体可以用于获取预设背景图组和预设背景深度图组;获取第一视频集合中第一视角下的前景图组和前景深度图组;基于预设背景深度图组和第一视角下的前景深度图组,对预设背景图组和第一视角下的前景图组进行图像融合,得到第一视角下的第一融合视频;播放第一融合视频;

上述第一切换模块1104,具体可以用于获取预设背景图组和预设背景深度图组;基于第一视频集合,获取第二视角下的前景图组和前景深度图组;基于预设背景深度图组和第二视角下的前景深度图组,对预设图组和第二视角下的前景图组进行图像融合,得到第二视角下的第二融合视频;播放第二融合视频。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种视角切换装置。如图12所示,图12为本申请实施例提供的视角切换装置的第二种结构示意图。该装置应用于服务器,具体包括以下模块。

第三接收模块1201,用于接收用户端发送的针对第一视角下的目标视频的第一获取请求;

第一获取模块1202,用于基于第一获取请求,获取多个视角下的目标视频,得到第一视频集合,多个视角包括第一视角;

第三发送模块1203,用于向用户端发送第一视频集合,以使用户端在接收到第一视频集合后,播放第一视频集合中第一视角下的目标视频,并在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

可选的,上述第一视频集合中第一视角下的目标视频的分辨率高于第三视角下的目标视频的分辨率,第三视角为多个视角中除第一视角以外的任一视角;

上述第一获取模块1202,具体可以用于基于第一获取请求,获取第一视角下的目标视频以及多个第三视角下的目标视频;对每一第三视角下的目标视频的分辨率进行调整,得到调整后的第三视角下目标视频,并将第一视角下的目标视频以及调整后的第三视角下目标视频作为第一视频集合。

可选的,上述第一视频集合中每一第三视角下的目标视频的分辨率与该第三视角所对应的目标距离呈负相关,第三视角所对应的目标距离为第三视角上的摄像机与第一视角上的摄像机间的距离。

可选的,上述视角切换装置还可以包括:

第四接收模块,用于接收用户端发送的针对第二视角下的目标视频的第二获取请求,第二获取请求为用户端在接收到视角切换指令、且第一视频集合中包括第二视角下的目标视频时发送的;

第二获取模块,用于基于第二获取请求,获取多个视角下的目标视频,得到第二视频集合;第二视频集合中第二视角下的目标视频的分辨率高于第一视频集合中第一视角下的目标视频的分辨率;

第四发送模块,用于向用户端发送第二视频集合,以使用户端将当前播放的第二视角下的目标视频切换为第二视频集合中第二视角下的目标视频。

可选的,若目标视频为直播视频,则第一视频集合中的每一目标视频为直播场景中的前景图组和前景深度图组。

通过本申请实施例提供的装置,用户端在向服务器请求获取第一视角下的目标视频时,服务器向用户端发送包括多个视角下的目标视频的第一视频集合,也就是服务器在向用户端发送第一视角下的目标视频的同时,还向用户端发送了其他视角下的目标视频,这使得用户端在接收到将第一视角切换为第二视角的视角切换指令时,可以根据接收到的第一视频集合,直接播放第二视角下的目标视频。这使得目标视频的视角切换过程中,用户端不需要重新向服务器请求获取第二视角下的目标视频,有效缩短了第二视角下目标视频的获取时长,从而缩短了视角切换过程所需的时长,降低了卡顿现象发生的概率。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种用户端,如图13所示,包括处理器1301、通信接口1302、存储器1303和通信总线1304,其中,处理器1301,通信接口1302,存储器1303通过通信总线1304完成相互间的通信,

存储器1303,用于存放计算机程序;

处理器1301,用于执行存储器1303上所存放的程序时,实现如下步骤:

向服务器发送针对第一视角下的目标视频的第一获取请求;

接收服务器返回的在多个视角下目标视频的第一视频集合,多个视角包括第一视角;

播放第一视频集合中第一视角下的目标视频;

在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种服务器,如图14所示,包括处理器1401、通信接口1402、存储器1403和通信总线1404,其中,处理器1401,通信接口1402,存储器1403通过通信总线1404完成相互间的通信,

存储器1403,用于存放计算机程序;

处理器1401,用于执行存储器1403上所存放的程序时,实现如下步骤:

接收用户端发送的针对第一视角下的目标视频的第一获取请求;

基于第一获取请求,获取多个视角下的目标视频,得到第一视频集合,多个视角包括第一视角;

向用户端发送第一视频集合,以使用户端在接收到第一视频集合后,播放第一视频集合中第一视角下的目标视频,并在接收到将第一视角切换为第二视角的视角切换指令时,基于第一视频集合,将当前播放的第一视角下的目标视频切换为第二视角下的目标视频。

通过本申请实施例提供的用户端和服务器,用户端在向服务器请求获取第一视角下的目标视频时,服务器向用户端发送包括多个视角下的目标视频的第一视频集合,也就是服务器在向用户端发送第一视角下的目标视频的同时,还向用户端发送了其他视角下的目标视频,这使得用户端在接收到将第一视角切换为第二视角的视角切换指令时,可以根据接收到的第一视频集合,直接播放第二视角下的目标视频。这使得目标视频的视角切换过程中,用户端不需要重新向服务器请求获取第二视角下的目标视频,有效缩短了第二视角下目标视频的获取时长,从而缩短了视角切换过程所需的时长,降低了卡顿现象发生的概率。

上述用户端/服务器提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述用户端/服务器与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中任一所述的视角切换方法。

基于同一种发明构思,根据上述本申请实施例提供的视角切换方法,本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的视角切换方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、用户端、服务器、计算机可读存储介质及计算机程序产品等实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

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

再多了解一些

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

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

相关文献