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

视频融合方法、装置、设备、系统及计算机可读存储介质与流程

2021-12-17 20:55:00 来源:中国专利 TAG:


1.本发明涉及视频处理技术领域,更具体地说,涉及一种视频融合方法、装置、设备、系统及计算机可读存储介质。


背景技术:

2.随着三维地图应用的广泛普及,三维地图的视频融合及渲染对于客户端和服务器的性能压力越来越大。目前,可通过客户端或者服务端在渲染三维模型时进行视频融合渲染,客户端在执行该过程时,由于不需要将视频发送至服务端,可以有效的减少网络带宽对视频传输带来的影响,避免网络宽带较差时,由于服务端不能及时接收到视频,导致不能进行视频融合的现象出现,但是通过客户端执行该过程时,需要对视频进行解码后再执行视频融合及渲染操作,对本地客户端的性能要求非常高;服务端在执行该过程时,虽然可以降低对本地客户端的性能要求,但是服务器在进行融合之前,同样需要对接收到的视频进行解码,然后再执行视频融合及渲染过程,性能压力也很大,势必会极大的影响服务器的渲染能力。


技术实现要素:

3.本发明的目的在于提供一种视频融合方法、装置、设备、系统及计算机可读存储介质,以降低视频融合给服务端和客户端带来的性能压力,提升服务端和客户端的视频融合及渲染性能。
4.为实现上述目的,本发明提供一种视频融合方法,所述视频融合方法基于服务端,包括:
5.接收客户端发送的渲染请求,并生成对应的渲染后的图像画面;
6.利用所述渲染请求确定三维场景下的当前视角点位置,根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
7.将所述视频融合区域的位置、所述待填充位置及渲染后的图像画面发送至所述客户端,以使所述客户端将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置。
8.其中,所述根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置,包括:
9.获取所述当前视角点位置下的视频融合区域的第一三维坐标;
10.确定所述第一三维坐标在成像平面的第二三维坐标;
11.将所述第二三维坐标转换为二维屏幕坐标,并根据所述成像平面的长宽值获得所述视频融合区域在成像平面上的二维比例坐标,以通过所述二维比例坐标确定渲染后的图像画面中的待填充位置。
12.其中,所述确定所述第一三维坐标在成像平面的第二三维坐标,包括:
13.在三维场景下,确定当前视角点与所述视频融合区域间的成像平面;
14.将所述当前视角点位置与所述视频融合区域的第一三维坐标连线,将连线与所述成像平面交点的三维坐标作为所述第一三维坐标在所述成像平面的第二三维坐标。
15.为实现上述目的,本发明进一步提供一种视频融合方法,所述视频融合方法基于客户端,包括:
16.向服务端发送渲染请求,以使所述服务端生成对应的渲染后的图像画面,根据所述渲染请求确定三维场景下的当前视角点位置,并根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置,
17.接收所述服务端发送的所述视频融合区域的位置、所述待填充位置及渲染后的图像画面;
18.将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置。
19.其中,所述将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置,包括:
20.获取摄像机拍摄的至少一路实况视频的实况画面;
21.根据所述视频融合区域的位置确定所述实况画面中的目标实况画面;
22.将所述目标实况画面的像素值通过删减或者插值方式,替换所述渲染后的图像画面中待填充位置的像素值。
23.为实现上述目的,本发明进一步提供一种视频融合装置,所述视频融合装置基于服务端,包括:
24.第一接收模块,用于接收客户端发送的渲染请求,并生成对应的渲染后的图像画面;
25.当前视角点位置确定模块,用于利用所述渲染请求确定三维场景下的当前视角点位置;
26.待填充位置确定模块,用于根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
27.第一发送模块,用于将所述视频融合区域的位置、所述待填充位置及渲染后的图像画面发送至所述客户端,以使所述客户端将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置。
28.为实现上述目的,本发明进一步提供一种视频融合装置,所述视频融合装置基于客户端,包括:
29.第二发送模块,用于向服务端发送渲染请求,以使所述服务端生成对应的渲染后的图像画面,根据所述渲染请求确定三维场景下的当前视角点位置,并根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
30.第二接收模块,用于接收所述服务端发送的所述视频融合区域的位置、所述待填充位置及渲染后的图像画面;
31.填充模块,用于将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置。
32.为实现上述目的,本发明进一步提供一种基于服务端的电子设备,包括:
33.存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述的
基于服务端的视频融合的步骤。
34.为实现上述目的,本发明进一步提供一种基于客户端的电子设备,包括:
35.存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述的基于客户端的视频融合的步骤。
36.为实现上述目的,本发明进一步提供一种视频融合系统,包括上述的基于服务端的电子设备和基于客户端的电子设备。
37.通过以上方案可知,本发明实施例提供的一种视频融合方法、装置、设备、系统及计算机可读介质;在本方案中,服务端仅执行渲染操作,不需要执行视频融合操作,也即:服务端将视频融合区域的位置、待填充位置及渲染后的图像画面发送至客户端后,通过客户端执行视频融合操作。由于本方案在进行视频融合时,服务端不执行视频融合操作,因此客户端便不需要将实况视频传输到服务端,因此服务端也不需要对视频进行解码,从而有效的减少网络带宽对视频传输带来的影响,并将视频解码性能分摊到客户端上,有效的降低了服务端由于视频融合带来的性能压力,提升了多路视频融合渲染性能。
附图说明
38.为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对实施例或背景技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
39.图1为本发明实施例公开的实况画面示意图;
40.图2为本发明实施例公开的一种视频融合系统结构示意图;
41.图3为本发明实施例公开的一种视频融合方法流程示意图;
42.图4为本发明实施例公开的基于虚拟相机的画面示意图;
43.图5为本发明实施例公开的成像平面中的四边形示意图;
44.图6为本发明实施例公开的虚拟摄像机投影示意图;
45.图7为本发明实施例公开的另一种视频融合方法流程示意图;
46.图8为本发明实施例公开的一种裁剪画面示意图;
47.图9为本发明实施例公开的一种视频融合装置结构示意图;
48.图10为本发明实施例公开的另一种视频融合装置结构示意图;
49.图11为本发明实施例公开的一种基于服务端的电子设备结构示意图。
具体实施方式
50.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
51.可以理解的是,三维地图下的视频融合,即在三维模型中叠加摄像机实况或者回放视频的功能,即在原有的三维模型下,根据摄像机的安装位置,将摄像机视频画面以投影或者幕布的方式在三维中渲染播放,通常需要将摄像机视频解码后以三维材质的方式添加
到三维引擎中,并且实时解码渲染,以达到动态的三维地图效果。通常会以倾斜摄影模型来呈现,这样会使得效果更加的逼真。其中,幕布即在三维场景中增加一块多边形平面,也可以是空间多边形,即不在同一平面上,幕布方式的视频融合,视频画面是播放在幕布上的,并不在三维模型上,旋转角度后可以明显看到幕布与三维模型之间的间隙。投影即在三维场景中直接改变三维模型的材质,类似播放电影和幻灯片一样将视频画面投影到三维模型上,模型上的材质发生改变,这种方式视频是贴合在三维模型上,任意旋转角度后是看不到间隙的。参见图1,为本实施例公开的在倾斜摄影的三维场景中叠加摄像机1的实况画面示意图。
52.目前,三维城市地图类型主要有白模城市模型、精细城市模型以及倾斜摄影模型。传统的地图加载方式,是将底图和模型文件加载到本地,然后用本地pc机渲染显示,也就是说在放大缩小移动等操作的情况下,会去获取底图和模型文件,传输到本地pc后,由客户端或者浏览器来渲染显示。这种方式下相对来说服务端的压力较轻,只需要根据坐标位置实时计算后传输文件即可,本地pc渲染压力较大,尤其在需要渲染三维模型的情况下,需要高性能的pc机。
53.进而,考虑到本地pc渲染所带来的高性能配置要求,部分厂家开始将渲染工作转移到服务端,在服务端增加高性能的显卡,由服务器进行渲染后,通过虚拟相机(即三维场景中的视角点位置)获得渲染后的画面,将渲染画面压缩后进行视频流传输,本地客户端pc只需要和播放实时视频一样解码播放即可,当需要互动操作时,将鼠标位置信息发送给服务端,服务器将虚拟相机移动或缩放到所需的位置,再将新画面压缩传输,继而达到实时交互的要求。这种方式下,本地客户端pc配置要求会大大降低,只需要一台普通的笔记本电脑即可查看高清晰度的三维城市地图。当然对服务器的配置要求会很高,并且能同时查看的互动的客户端数量也是有限制的,这样的情况下如果要增加视频融合业务,必然会增加服务器的负担,在需要渲染原有三维模型的情况下,同时需要解码一路或者几路的高清视频,从而大大降低了服务器的渲染能力。
54.因此在本技术中,公开了一种视频融合方法、装置、设备、系统及计算机可读存储介质,以降低视频融合带来的性能压力,提升视频融合渲染性能。为了便于理解,下面对本技术的技术方案所适用的系统架构进行介绍,参见图2,为本发明实施例公开的一种视频融合系统结构示意图;该系统包括客户端11和服务器12。
55.客户端11为操作者查看三维地图的终端,如:计算机、平板电脑、手机等终端设备。操作者通过客户端查看三维地图时,在执行放大缩小移动等操作的情况下,会向服务器发送渲染请求,服务器根据该请求执行渲染操作。
56.服务器12接收客户端发送的渲染请求,并生成对应的渲染后的图像画面,再利用所述渲染请求确定三维场景下的当前视角点位置,根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置,并将视频融合区域的位置、待填充位置及渲染后的图像画面发送至客户端,通过客户端11将实况画面中与所述视频融合区域的位置对应的画面,填充至图像画面中的待填充位置。
57.可以看出,本方案在服务端渲染的基础上,将视频融合业务直接在客户端pc上叠加,将视频解码性能分摊到客户端上,即通过客户端在三维渲染后的实时画面中叠加实况画面,将两种融合在一起。服务端在配置好视频融合的位置后,不需要叠加视频,仅需要渲
染原有的三维模型即可。通过本方案,视频流不需要在传输到服务端,仅在服务器上进行视频渲染融合到三维模型中,视频融合业务极大的降低了服务器的性能压力,而对于用户来说丝毫不会有任何视觉上的差异体验。
58.参见图3,本发明实施例提供的一种视频融合方法流程示意图;其中,本实施例所述的视频融合方法基于服务端,具体包括:
59.s101、接收客户端发送的渲染请求,并生成对应的渲染后的图像画面;
60.在本技术中,客户端为操作者查看三维地图的终端,并且,操作者通过客户端查看三维地图时,在执行放大缩小移动等操作的情况下,均会向服务器发送渲染请求,服务端接收到该渲染请求后,便执行渲染操作。
61.需要说明的是,目前的视频融合方案大多都是在客户端本地上或者在服务器上增加幕布或者投影的方式,将实况画面融合到三维场景中去。在本技术中,首先需要在服务端配置好摄像机点位和所需投影位置或者幕布位置,该投影位置或者幕布位置即为本技术所述的视频融合区域的位置。具体来说,视频融合目前都是需要手动配置的,通过对点的方式完成,在本实施例中为了方便描述,以幕布为例,配置幕布所在的位置,例如图1中的四边形abcd,配置后实况视频画面能和倾斜摄影模型大致匹配在一起。
62.s102、利用渲染请求确定三维场景下的当前视角点位置,根据当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
63.需要说明的是,客户端的系统启动后,便会有一个初始视角点位置,客户端的操作者通过客户端查看三维地图时,若通过鼠标、键盘等装置执行了放大缩小移动等操作,则当前视角点位置就会发生改变。因此客户端向服务端发送的渲染请求中,会携带了操作者执行放大缩小移动等操作的执行参数,服务器通过该执行参数便可更新当前视角点位置。例如:若系统启动后的初始视角点位置为位置一,此时操作者执行了画面缩小操作,客户端便将该画面缩小操作的执行参数作为渲染请求中携带的参数发送给服务器,服务器通过分析该执行参数确定当前视角点位置,此时的位置便更新为位置二。
64.可以理解的是,三维场景中查看当前视角点位置下的画面时,具体是通过三维引擎中的虚拟相机来查看的,虚拟相机所在的位置就是视角点位置,当前视角点位置下看到的画面即是虚拟相机拍摄后的成像画面,参见图4,为本发明实施例提供的基于虚拟相机的画面示意图,图中由abcd组成的四边形即为当前视角点位置下的视频融合区域。本技术在确定待填充位置时,具体为:在平行于近裁剪面和远裁剪面之间的成像平面中,将虚拟相机与abcd连线后获得的成像平面中的abcd作为待填充位置。
65.需要说明的是,如果当前视角点位置下不存在视频融合区域,则直接将融合后的画面压缩成视频流传输给客户端,否则,继续执行根据当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置这一步骤。
66.s103、将视频融合区域的位置、待填充位置及渲染后的图像画面发送至客户端,以使客户端将实况画面中与视频融合区域的位置对应的画面,填充至图像画面中的待填充位置。
67.在本技术中,该视频融合区域的位置和待填充位置均为二维坐标位置。服务器计算出视频融合区域的位置和待填充位置之后,需要将上述两个位置发送至客户端。客户端发现有位置信息传回时,请求摄像机视频流,将需要填充的待填充位置替换成摄像机裁剪
后的视频码流。
68.综上可以看出,本方案在原有服务端渲染三维模型的基础上,为了解决三维模型中进行视频融合后性能压力问题,采用服务端渲染的情况下,通过客户端进行多路视频的融合叠加,使得视频融合业务不再影响服务端的三维渲染能力,再不增加服务器和客户端硬件性能的情况下,极大的增加视频融合解码能力,提高解码路数。
69.基于上述实施例,在本实施例中,根据当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置时,具体包括如下:
70.s11、获取所述当前视角点位置下的视频融合区域的第一三维坐标;
71.需要说明的是,由于服务端已经预先配置完所有视频融合的幕布位置或投影位置,即整个三维场景中所有适合配置视频叠加的位置都配置完成。因此,若当前视角点位置下存在视频融合区域,则可从预先配置的内容中获取该视频融合区域的三维坐标,在本技术中,为了区分,将当前视角点位置下的视频融合区域的三维坐标称为第一三维坐标。需要说明的是,该第一三维坐标的数量可以看出视频融合区域的形状确定,如图4中的视频融合区域为四边形,则对应的第一三维坐标包括:a位置处的三维坐标、b位置处的三维坐标、c位置处的三维坐标和d位置处的三维坐标。
72.s12、确定所述第一三维坐标在成像平面的第二三维坐标;
73.其中,本技术在确定第一三维坐标在成像平面的第二三维坐标时,包括如下步骤:在三维场景下,确定当前视角点与所述视频融合区域间的成像平面;将当前视角点位置与视频融合区域的第一三维坐标连线,将连线与成像平面交点的三维坐标作为第一三维坐标在成像平面的第二三维坐标。
74.参见图4,若在三维场景中增加四边形abcd作为幕布,在三维虚拟相机的当前视角点p位置下的成像画面中同样可以看到四边形abcd,通过p点分别与abcd四个点的连线,可以在成像平面中得到abcd四边形。该成像平面是平行于近裁剪面和远裁剪面之间的任意平面,记录下四边形abcd的世界坐标系下的三维坐标,在本实施例中,将该三维坐标称为第二三维坐标,参见图5,为本实施例公开的成像平面中的四边形示意图,将第二三维坐标用pos1,pos2,pos3,pos4进行标记。该第二三维坐标具体可以根据当前视角点位置、第一三维坐标和成像平面位置确定。
75.s13、将所述第二三维坐标转换为二维屏幕坐标,并根据所述成像平面的长宽值获得所述视频融合区域在成像平面上的二维比例坐标,以通过所述二维比例坐标确定渲染后的图像画面中的待填充位置。
76.需要说明的是,本技术计算出第二三维坐标pos1,pos2,pos3,pos4的位置后,需要将pos1、pos2、pos3、pos4这几个三维坐标转换成二维比例坐标,通过该二维比例坐标便可确定渲染后的图像画面中的待填充位置。具体来说,该步骤包括如下几个步骤:
77.1)计算虚拟摄像机的投影矩阵m
p
。由于虚拟摄像机为透视投影,其数学上的意义为截锥六面体,参见图6,为本实施例所述的虚拟摄像机投影示意图,若近裁剪面的左下角坐标为(l,b,n),近裁剪面的右上角坐标为(r,t,n),近裁剪面距离为n,远裁剪面距离为f,通过六个平面和相关点的运算可以推导得到:
[0078][0079]
其中,
[0080]
2)计算虚拟摄像机的视图矩阵,即从世界三维坐标系转换到摄像机二维坐标系的换算矩阵m
v
。视图矩阵包含两部分,虚拟摄像机的旋转变换矩阵r和位移变换矩阵t,视图矩阵为:
[0081][0082]
3)通过四边形abcd世界三维坐标计算相机坐标系下的二维坐标,以a点为例,pos1=(x1,y1,z1),可推导该点相机坐标系下的空间坐标v=(x1',y1',n),其中,v=m
v
·
m
p
·
pos1。
[0083]
4)记当前成像平面的长宽值分别为:w、h,此时四边形abcd在屏幕中的比例坐标就是(x1'/w,y1'/h),(x2'/w,y2'/h),(x3'/w,y3'/h),(x4'/w,y4'/h)。
[0084]
进一步,得到二维比例坐标(x1'/w,y1'/h),(x2'/w,y2'/h),(x3'/w,y3'/h),(x4'/w,y4'/h)后,只需要在这个区域内填充摄像机视频画面即可,填充方式为:清除三维渲染画面中这个区域的视频像素值,填充对应的真实相机的实况像素值。
[0085]
需要说明的是,本实施例中的幕布同样可以是多边形,甚至是空间多边形(多边形不在一个平面上),但是,幕布是空间多边形的情况与幕布在同一平面的情况相同,同样可将多边形的各个顶点,分别与成像平面相交,得到三维世界坐标,随后通过坐标转换,得到相机坐标系下的二维空间坐标,再根据屏幕的长宽大小,获得屏幕中的比例坐标,同样视频画面也会进行多个点的裁剪,最后将裁剪后的视频替换到对应位置。
[0086]
综上可以看出,由于目前无论是客户端渲染方式还是服务端渲染方式,都无法解决视频融合后的性能压力,随着叠加的视频路数的增加,都会成倍的增加渲染性能压力,导致正常的三维渲染能力下降。因此在本方案中,为了解决在三维地图中视频融合后性能瓶颈问题,提出了利用服务端进行三维渲染,并在对位置计算后发送至客户端,通过客户端将摄像机视频流叠加到服务端渲染后的视频流中,达到视频融合的效果,有效的降低了服务端由于视频融合带来的性能压力,提升了多路视频融合渲染性能。
[0087]
参见图7,为本发明实施例提供的一种视频融合方法流程示意图;需要说明的是,本实施例所述的融合方法是基于客户端的执行的,上述实施例所述的融合方法是基于服务端执行的,两者仅仅执行角度是不同的,因此相同部分可以相互参照。
[0088]
在本实施例中,该视频融合方法具体包括:
[0089]
s201、向服务端发送渲染请求,以使服务端生成对应的渲染后的图像画面,根据渲染请求确定三维场景下的当前视角点位置,并根据当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
[0090]
s202、接收服务端发送的视频融合区域的位置、待填充位置及渲染后的图像画面;
[0091]
s203、将实况画面中与视频融合区域的位置对应的画面,填充至图像画面中的待填充位置。
[0092]
其中,本方案将实况画面中与视频融合区域的位置对应的画面,填充至图像画面中的待填充位置,包括:
[0093]
获取摄像机拍摄的至少一路实况视频的实况画面;根据视频融合区域的位置确定实况画面中的目标实况画面;将目标实况画面的像素值通过删减或者插值方式,替换渲染后的图像画面中待填充位置的像素值。
[0094]
需要说明的是,由于本方案具体是通过服务端执行渲染操作,将视频融合的压力分摊至客户端,因此本方案在执行多路视频融合操作时不会出现性能压力。客户端接收到服务端发送的视频融合区域的位置、待填充位置及渲染后的图像画面后,发现该图像画面需要融合多路视频,则从摄像机获取对应的视频,从而填充至对应的待填充位置。
[0095]
可以理解的是,服务器在预先配置时,需要区分摄像机视频画面是否进行过裁剪,因为视频画面并不是完整的贴合到三维模型中的,为了和三维模型对应,在视频融合的配置过程中有些画面被过度拉伸,而过度拉伸的部分画面会被裁剪掉,不需要再放到三维渲染中去。因此服务器在预先配置幕布位置abcd之外,还需要记录视频裁剪的位置,参见图8,为本发明实施例提供的一种裁剪画面示意图,幕布位置为abcd,其中bde这个三角是要裁剪的,那就需要记录e点的坐标,此时服务端向客户端发送的视频融合区域的位置、待填充位置应该分别为abce和abcd。
[0096]
在进行视频融合时,无论是否需要裁剪视频画面,最终均需要按照对应点的位置填充到三维渲染画面中,即a点对应a点,b点对应b点,c点对应c点,d点或e点对应d点,也即:如果abcd中不存在裁剪位置,则将abcd填充至abcd,如果存在裁剪位置e,则将abce填充至abcd。在此具体以abce填充至abcd为例进行说明:在填充时,由于abcd(e)和abcd两个图像中像素点数量不一致,因此存在缩放计算,即按照比例关系将abce的像素点删减或者插值的方式填充至abcd,然后才将视频融合后的视频画面在客户端上进行播放显示。该填充过程具体可包括如下步骤:
[0097]
1)首先计算三维渲染画面中的abcd所占像素值;假设三维渲染画面的分辨率是1920*1080,根据abcd四个点所在的比例坐标,分别计算acbd四条边的长度。
[0098]
2)根据acbd四条边的长度,对abce视频的像素值计算;假设abcd视频的分辨率同样是1920*1080,即ab边的像素值需删减后和ab边相同。
[0099]
3)分别将ab、be、ec、ca四条边与ab、bd、dc、ca四边删减或者插值后相等,然后逐个像素点进行替换。
[0100]
其中,本技术中的删减或者插值方式具体为:
[0101]
若目标实况画面的像素值大于待填充位置的像素值,则通过删减方式,将目标实况画面的像素值均匀删减后替换待填充位置的像素值,如:若目标实况画面的像素值为100,待填充位置的像素值为10,则从100个像素值中均匀删除像素值后剩余10个像素值填充至待填充位置;若目标实况画面的像素值小于待填充位置的像素值,则通过插值方式,将目标实况画面的像素值均匀插值替换待填充位置的像素值,如:若目标实况画面的像素值为10,待填充位置的像素值为100,则将这10个像素值均匀插值替换至待填充位置的100个像素值中,从而实现在目标实况画面与待填充位置的像素值不同的情况下,实现了两个画
面的融合。
[0102]
综上可以看出,本技术通过服务端利用三维投影关系计算得到融合视频在三维渲染视频流中的待填充位置,通过客户端将实况像素值与待填充位置的像素值按照比例关系进行像素点删减或者插值计算,替换到三维渲染视频流中。这种由客户端实现像素值替换过程的方式,可将视频解码能力分摊到到各个客户端pc机上,从而使得视频融合性能压力分别由服务器和客户端pc来完成,融合路数取决于各自pc机实况解码性能,降低了服务器的视频渲染压力。
[0103]
下面对本发明实施例提供的视频融合装置进行介绍,下文描述的视频融合装置与上文描述的视频融合方法可以相互参照。
[0104]
参见图9,本发明实施例提供的一种视频融合装置结构示意图;所述视频融合装置基于服务端,包括:
[0105]
第一接收模块21,用于接收客户端发送的渲染请求,并生成对应的渲染后的图像画面;
[0106]
当前视角点位置确定模块22,用于利用所述渲染请求确定三维场景下的当前视角点位置;
[0107]
待填充位置确定模块23,用于根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
[0108]
第一发送模块24,用于将所述视频融合区域的位置、所述待填充位置及渲染后的图像画面发送至所述客户端,以使所述客户端将实况画面中与所述视频融合区域的位置对应的画面,填充至所述图像画面中的待填充位置。
[0109]
其中,所述待填充位置确定模块包括:
[0110]
第一坐标获取单元,用于获取所述当前视角点位置下的视频融合区域的第一三维坐标;
[0111]
第二坐标确定单元,用于确定所述第一三维坐标在成像平面的第二三维坐标;
[0112]
坐标转换单元,用于将所述第二三维坐标转换为二维屏幕坐标,并根据所述成像平面的长宽值获得所述视频融合区域在成像平面上的二维比例坐标,以通过所述二维比例坐标确定渲染后的图像画面中的待填充位置。
[0113]
其中,所述坐标确定单元具体用于:在三维场景下,确定当前视角点与所述视频融合区域间的成像平面;将所述当前视角点位置与所述视频融合区域的第一三维坐标连线,将连线与所述成像平面交点的三维坐标作为所述第一三维坐标在所述成像平面的第二三维坐标。
[0114]
参见图10,本发明实施例提供的一种视频融合装置结构示意图;所述视频融合装置基于客户端,包括:
[0115]
第二发送模块31,用于向服务端发送渲染请求,以使所述服务端生成对应的渲染后的图像画面,根据所述渲染请求确定三维场景下的当前视角点位置,并根据所述当前视角点位置下的视频融合区域确定渲染后的图像画面中的待填充位置;
[0116]
第二接收模块32,用于接收所述服务端发送的所述视频融合区域的位置、所述待填充位置及渲染后的图像画面;
[0117]
填充模块33,用于将实况画面中与所述视频融合区域的位置对应的画面,填充至
所述图像画面中的待填充位置。
[0118]
其中,所述填充模块包括:
[0119]
实况画面获取单元,用于获取摄像机拍摄的至少一路实况视频的实况画面;
[0120]
目标实况画面确定单元,用于根据所述视频融合区域的位置确定所述实况画面中的目标实况画面;
[0121]
像素值替换单元,用于将所述目标实况画面的像素值通过删减或者插值方式,替换所述渲染后的图像画面中待填充位置的像素值。
[0122]
参见图11,为本发明实施例公开的一种基于服务端的电子设备结构示意图;包括:存储器41,用于存储计算机程序;处理器42,用于执行计算机程序时实现上述任意方法实施例所述的基于服务端的视频融合方法的步骤。
[0123]
进一步,本技术还公开了另一种基于客户端的电子设备,该设备包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现上述任意方法实施例所述的基于客户端的视频融合方法的步骤。
[0124]
需要说明的是,若该电子设备为基于服务端,则该电子设备可以为服务器,如果该电子设备基于客户端,则该电子设备可以为计算机、平板电脑、手机等终端设备。具体来说,该电子设备可以包括存储器41、处理器42和总线43。
[0125]
其中,存储器41包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序,该存储器为非易失性存储介质中的操作系统和计算机可读指令的运行提供环境。处理器42在一些实施例中可以是一中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器或其他数据处理芯片,为网关设备提供计算和控制能力,执行所述存储器41中保存的计算机程序时,可以实现前述任一实施例公开的视频融合方法的步骤。
[0126]
该总线43可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0127]
进一步地,设备还可以包括网络接口44,网络接口44可选的可以包括有线接口和/或无线接口(如wi-fi接口、蓝牙接口等),通常用于在该设备与其他电子设备之间建立通信连接。
[0128]
图11仅示出了具有组件41-44的设备,本领域技术人员可以理解的是,图11示出的结构并不构成对设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
[0129]
进一步,本发明实施例还公开了一种视频融合系统,包括上述基于服务端的电子设备和基于客户端的电子设备。
[0130]
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法实施例所述基于服务端的视频融合方法的步骤,和/或,实现上述方法实施例所述的基于客户端的视频融合方法的步骤。
[0131]
其中,该存储介质可以包括:u盘、移动硬盘、只读存储器(read-only memory,
rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0132]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0133]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

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

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

相关文献