虚拟投影方法、装置以及可读存储介质转让专利

申请号 : CN202111135154.8

文献号 : CN113676711B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任志忠

申请人 : 北京天图万境科技有限公司

摘要 :

本发明实施例提供一种虚拟投影方法、装置以及可读存储介质,属于电影技术领域。该方法基于虚拟摄像机和物理摄像机,该方法包括:确定所述虚拟摄像机的呈像视口的大小;基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;基于所述待投影的虚拟面,确定初始成像深度图;基于所述初始成像深度图,生成虚拟投影布;以及将所述物理摄像机的视频源投射到所述虚拟投影布上。本发明可以使得视频源在虚拟场景中完美投放,以准确显示画面。

权利要求 :

1.一种虚拟投影方法,其特征在于,该方法基于虚拟摄像机和物理摄像机,该方法包括:

确定所述虚拟摄像机的呈像视口的大小;

基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;

基于所述待投影的虚拟面,确定初始成像深度图;

基于所述初始成像深度图,生成虚拟投影布;以及将所述物理摄像机的视频源投射到所述虚拟投影布上;

所述基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面包括:先确定位于呈像视口之内的虚拟的待投影体,然后确定位于视口内的,在虚拟的待投影体外,且与镜头的屏面平行的平面,最后将所述待投影体和所述与镜头的屏面平行的平面叠加,组成待投影的虚拟面。

2.根据权利要求1所述的虚拟投影方法,其特征在于,在确定初始成像深度图之后,该方法还包括:

提取所述初始成像深度图;

确定遮挡物参与渲染的成像深度图;

从所述初始成像深度图中删除所述遮挡物参与渲染的成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。

3.根据权利要求1所述的虚拟投影方法,其特征在于,所述将所述物理摄像机的视频源投射到所述虚拟投影布上包括:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;

基于所述投影比例,将所述视频源进行缩放和矫正,以投射到所述虚拟投影布上。

4.根据权利要求1‑3中任一项权利要求所述的虚拟投影方法,其特征在于,生成所述虚拟投影布包括生成基础网格体并启用材质。

5.根据权利要求1‑3中任一项权利要求所述的虚拟投影方法,其特征在于,所述虚拟的待投影体包括:

虚拟地面、虚拟墙体以及虚拟房顶中的至少一者。

6.一种虚拟投影装置,其特征在于,该装置基于虚拟摄像机和物理摄像机,该装置包括:

呈像视口确定单元、虚拟面确定单元、深度图确定单元、投影布生成单元以及投影单元,其中,

所述呈像视口确定单元用于确定所述虚拟摄像机的呈像视口的大小;

所述虚拟面确定单元用于基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;

所述深度图确定单元用于基于所述待投影的虚拟面,确定初始成像深度图;

所述投影布生成单元用于基于所述初始成像深度图,生成虚拟投影布;以及所述投影单元用于将所述物理摄像机的视频源投射到所述虚拟投影布上;

所述基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面包括:先确定位于呈像视口之内的虚拟的待投影体,然后确定位于视口内的,在虚拟的待投影体外,且与镜头的屏面平行的平面,最后将所述待投影体和所述与镜头的屏面平行的平面叠加,组成待投影的虚拟面。

7.根据权利要求6所述的虚拟投影装置,其特征在于,所述深度图确定单元还用于:提取所述初始成像深度图;

确定遮挡物参与渲染的成像深度图;

从所述初始成像深度图中删除所述遮挡物参与渲染的成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。

8.根据权利要求6所述的虚拟投影装置,其特征在于,所述投影单元还用于:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;

基于所述投影比例,将所述视频源进行缩放和矫正,以投射到所述虚拟投影布上。

9.根据权利要求6‑8中任一项权利要求所述的虚拟投影装置,其特征在于,所述投影布生成单元还用于生成基础网格体并启用材质。

10.一种机器可读存储介质,其特征在于,其上存储有指令,该指令被执行时实现所述权利要求1‑5中任意一项权利要求所述的方法。

说明书 :

虚拟投影方法、装置以及可读存储介质

技术领域

[0001] 本发明涉及电影技术领域,具体地涉及一种虚拟投影方法、装置以及可读存储介质。

背景技术

[0002] 在科幻电影拍摄当中,需要用到大量的特效来呈现虚拟的场景。当前可采用将物理摄像机拍摄的视频源(例如人物的视频)直接投放到虚拟场景中,以看起来像是人物在虚
拟场景中动作。但是,由于虚拟场景并非实体,在虚拟场景中投放视频源极有可能出现问
题,例如视频源直接插入虚拟地面下等等,导致画面显示不准确。

发明内容

[0003] 本发明实施例的目的是提供一种虚拟投影方法、装置以及可读存储介质,该虚拟投影方法、装置以及可读存储介质可以使得视频源在虚拟场景中完美投放,以准确显示画
面。
[0004] 为了实现上述目的,本发明实施例提供一种虚拟投影方法,该方法基于虚拟摄像机和物理摄像机,该方法包括:确定所述虚拟摄像机的呈像视口的大小;基于所述呈像视口
的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;基于所述待投影
的虚拟面,确定初始成像深度图;基于所述初始成像深度图,生成虚拟投影布;以及将所述
物理摄像机的视频源投射到所述虚拟投影布上。
[0005] 优选地,在确定初始成像深度图之后,该方法还包括:提取所述初始成像深度图;确定遮挡物参与渲染的成像深度图;从所述初始成像深度图中删除所述遮挡物参与渲染的
成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0006] 优选地,所述将所述物理摄像机的视频源投射到所述虚拟投影布上包括:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;基于所述投影比
例,将所述视频源进行缩放和矫正,以投射到所述虚拟投影布上。
[0007] 优选地,生成所述虚拟投影布包括生成基础网格体并启用材质。
[0008] 优选地,所述虚拟的待投影体包括:虚拟地面、虚拟墙体以及虚拟房顶中的至少一者。
[0009] 本发明实施例还提供一种虚拟投影装置,该装置基于虚拟摄像机和物理摄像机,该装置包括:呈像视口确定单元、虚拟面确定单元、深度图确定单元、投影布生成单元以及
投影单元,其中,所述呈像视口确定单元用于确定所述虚拟摄像机的呈像视口的大小;所述
虚拟面确定单元用于基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以
确定待投影的虚拟面;所述深度图确定单元用于基于所述待投影的虚拟面,确定初始成像
深度图;所述投影布生成单元用于基于所述初始成像深度图,生成虚拟投影布;以及所述投
影单元用于将所述物理摄像机的视频源投射到所述虚拟投影布上。
[0010] 优选地,所述深度图确定单元还用于:提取所述初始成像深度图;确定遮挡物参与渲染的成像深度图;从所述初始成像深度图中删除所述遮挡物参与渲染的成像深度图,得
到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0011] 优选地,所述投影单元还用于:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;基于所述投影比例,将所述视频源进行缩放和矫正,以投射
到所述虚拟投影布上。
[0012] 优选地,所述投影布生成单元还用于生成基础网格体并启用材质。
[0013] 本发明实施例还提供一种机器可读存储介质,其上存储有指令,该指令被执行时实现上文所述的方法。
[0014] 通过上述技术方案,采用本发明提供的虚拟投影方法和装置,该方法基于虚拟摄像机和物理摄像机,该方法包括:确定所述虚拟摄像机的呈像视口的大小;基于所述呈像视
口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;基于所述待投
影的虚拟面,确定初始成像深度图;基于所述初始成像深度图,生成虚拟投影布;以及将所
述物理摄像机的视频源投射到所述虚拟投影布上。本发明可以使得视频源在虚拟场景中完
美投放,以准确显示画面。
[0015] 本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

[0016] 附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附
图中:
[0017] 图1是现有技术的显示画面不准确的情形的示意图;
[0018] 图2是本发明一实施例提供的虚拟投影方法的流程图;
[0019] 图3是本发明一实施例提供的投影情形的示意图;
[0020] 图4是本发明另一实施例提供的虚拟投影方法的流程图;
[0021] 图5是本发明另一实施例提供的投影情形的示意图;
[0022] 图6是本发明一实施例提供的虚拟投影装置的结构示意图。
[0023] 附图标记说明
[0024] 1       呈像视口确定单元 2       虚拟面确定单元
[0025] 3       深度图确定单元        4       投影布生成单元
[0026] 5       投影单元。

具体实施方式

[0027] 以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
[0028] 图1是现有技术的显示画面不准确的情形的示意图。如图1所示,对应虚拟摄像机呈像视口的视频源与镜头的屏面平行,整个视频源被分为虚拟的待投影体外的部分以及虚
拟的待投影体内的部分,其中插入了虚拟的待投影体内的部分导致画面显示出现问题。可
以理解的是,虽然此处以虚拟地面为例,但是同样的,虚拟墙体、虚拟房顶等等类似的虚拟
平面或转角都可能出现该问题。
[0029] 图2是本发明一实施例提供的虚拟投影方法的流程图。如图2所示,该方法基于虚拟摄像机和物理摄像机,该方法包括:
[0030] 步骤S21,确定所述虚拟摄像机的呈像视口的大小;
[0031] 例如,首先确定虚拟摄像机的呈像视口的大小,例如图1中从虚拟摄像机镜头射出的两条线之间即为该呈像视口。该呈像视口的大小与虚拟的待投影体到虚拟摄像机的镜头
的垂直距离D、成像元件的尺寸以及镜头焦距这三者有关,即虚拟摄像机的呈像视口的大小
可以通过这三者确定。
[0032] 步骤S22,基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;
[0033] 例如,如图3所示,虚拟的待投影体是弯折型的,那么根据呈像视口的大小,先确定位于呈像视口之内的虚拟的待投影体L1+L2,然后确定位于视口内的,在虚拟的待投影体
外,且与镜头的屏面平行的平面L,最后将两部分叠加,组成待投影的虚拟面。虚拟的待投影
体可以理解为阻挡了正常投射的部分,例如可以是虚拟地面、虚拟墙体、虚拟房顶等等类似
的虚拟平面或转角。
[0034] 步骤S23,基于所述待投影的虚拟面,确定初始成像深度图;
[0035] 例如,确定待投影的虚拟面的深度图,深度图的确定方式较为常见,在此不再赘述。
[0036] 步骤S24,基于所述初始成像深度图,生成虚拟投影布;以及
[0037] 例如,将深度图转为基础网格体并启用材质,构成“虚拟投影布”,将“虚拟投影布”附着在待投影的虚拟面上。
[0038] 步骤S25,将所述物理摄像机的视频源投射到所述虚拟投影布上。
[0039] 例如,最后,将视频源投射到虚拟投影布上,以完成投影。例如,先对视频源进行透视校正。然后,由于虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离D不同,则充满呈
像视口的视频源的尺寸也应该随之调整。因此,首先根据所述虚拟的待投影体到所述虚拟
摄像机的镜头的垂直距离D,确定投影比例,然后根据投影比例进行视频源的缩放。
[0040] 图4是本发明另一实施例提供的虚拟投影方法的流程图。图5是本发明另一实施例提供的投影情形的示意图。如图5所示,如果在虚拟摄像机与虚拟的待投影体之间,还有遮
挡物位于呈像视口内,则在确定初始成像深度图之后,该方法还包括:
[0041] 步骤S41,提取所述初始成像深度图;
[0042] 步骤S42,确定遮挡物参与渲染的成像深度图;
[0043] 步骤S43,从所述初始成像深度图中删除所述遮挡物参与渲染的成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0044] 例如,将初始成像深度图提取出来,从中删除遮挡物参与渲染的成像深度图,就可以得到最终成像深度图。该最终成像深度图是比初始成像深度图更为优选的,因此可以使
用最终成像深度图替换上文各步骤中使用初始成像深度图的步骤中的初始成像深度图,例
如使用最终成像深度图生成虚拟投影布。
[0045] 图6是本发明一实施例提供的虚拟投影装置的结构示意图。如图6所示,该装置基于虚拟摄像机和物理摄像机,该装置包括:呈像视口确定单元1、虚拟面确定单元2、深度图
确定单元3、投影布生成单元4以及投影单元5,其中,所述呈像视口确定单元1用于确定所述
虚拟摄像机的呈像视口的大小;所述虚拟面确定单元2用于基于所述呈像视口的大小得到
所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;所述深度图确定单元3用于基
于所述待投影的虚拟面,确定初始成像深度图;所述投影布生成单元4用于基于所述初始成
像深度图,生成虚拟投影布;以及所述投影单元5用于将所述物理摄像机的视频源投射到所
述虚拟投影布上。
[0046] 优选地,所述深度图确定单元3还用于:提取所述初始成像深度图;确定遮挡物参与渲染的成像深度图;从所述初始成像深度图中删除所述遮挡物参与渲染的成像深度图,
得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0047] 优选地,所述投影单元还用于5:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;基于所述投影比例,将所述视频源进行缩放和矫正,以投射
到所述虚拟投影布上。
[0048] 优选地,所述投影布生成单元4还用于生成基础网格体并启用材质。
[0049] 上文所述的虚拟投影装置与上文所述的虚拟投影方法的实施例类似,在此不再赘述。
[0050] 所述虚拟投影装置包括处理器和存储器,上述呈像视口确定单元1、虚拟面确定单元2、深度图确定单元3、投影布生成单元4以及投影单元5等均作为程序单元存储在存储器
中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0051] 处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来进行投影。
[0052] 存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存
储芯片。
[0053] 本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述虚拟投影方法。
[0054] 本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述虚拟投影方法。
[0055] 本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
[0056] 确定所述虚拟摄像机的呈像视口的大小;基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;基于所述待投影的虚拟面,确定初始成
像深度图;基于所述初始成像深度图,生成虚拟投影布;以及将所述物理摄像机的视频源投
射到所述虚拟投影布上。
[0057] 优选地,在确定初始成像深度图之后,该方法还包括:提取所述初始成像深度图;确定遮挡物参与渲染的成像深度图;从所述初始成像深度图中删除所述遮挡物参与渲染的
成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0058] 优选地,所述将所述物理摄像机的视频源投射到所述虚拟投影布上包括:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;基于所述投影比
例,将所述视频源进行缩放和矫正,以投射到所述虚拟投影布上。
[0059] 优选地,生成所述虚拟投影布包括生成基础网格体并启用材质。
[0060] 优选地,所述虚拟的待投影体包括:虚拟地面、虚拟墙体以及虚拟房顶中的至少一者。
[0061] 本文中的设备可以是服务器、PC、PAD、手机等。
[0062] 本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
[0063] 确定所述虚拟摄像机的呈像视口的大小;基于所述呈像视口的大小得到所述呈像视口内的虚拟的待投影体,以确定待投影的虚拟面;基于所述待投影的虚拟面,确定初始成
像深度图;基于所述初始成像深度图,生成虚拟投影布;以及将所述物理摄像机的视频源投
射到所述虚拟投影布上。
[0064] 优选地,在确定初始成像深度图之后,该方法还包括:提取所述初始成像深度图;确定遮挡物参与渲染的成像深度图;从所述初始成像深度图中删除所述遮挡物参与渲染的
成像深度图,得到最终成像深度图,以基于所述最终成像深度图生成所述虚拟投影布。
[0065] 优选地,所述将所述物理摄像机的视频源投射到所述虚拟投影布上包括:根据所述虚拟的待投影体到所述虚拟摄像机的镜头的垂直距离,确定投影比例;基于所述投影比
例,将所述视频源进行缩放和矫正,以投射到所述虚拟投影布上。
[0066] 优选地,生成所述虚拟投影布包括生成基础网格体并启用材质。
[0067] 优选地,所述虚拟的待投影体包括:虚拟地面、虚拟墙体以及虚拟房顶中的至少一者。
[0068] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
[0069] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0070] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0071] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0072] 在一个典型的配置中,计算设备包括一个或多个处理器 (CPU)、输入/输出接口、网络接口和内存。
[0073] 存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介
质的示例。
[0074] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。
计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、
动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电
可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 
(CD‑ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他
磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文
中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据
信号和载波。
[0075] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包
括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要
素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的
过程、方法、商品或者设备中还存在另外的相同要素。
[0076] 以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、
改进等,均应包含在本申请的权利要求范围之内。