一种在虚拟演播室中合成前景人物阴影的方法、装置及存储介质与流程

文档序号:21361805发布日期:2020-07-04 04:35阅读:407来源:国知局
一种在虚拟演播室中合成前景人物阴影的方法、装置及存储介质与流程

本发明涉及虚拟演播室领域,尤其是涉及一种在虚拟演播室中合成前景人物阴影的方法、装置及存储介质。



背景技术:

虚拟演播室是近年发展起来的一种独特的电视节目制作技术。它的实质是将计算机制作的虚拟三维场景与电视摄像机现场拍摄的人物活动图像进行数字化的实时合成,使人物与虚拟背景能够同步变化,从而实现两者天衣无缝的融合,以获得完美的合成画面。

为达到这一效果,在三维虚拟演播室中要用到色键抠像技术,通过将前景人物(通常是主持人)置于特定颜色的背景板前,再将拍摄到画面中特定颜色的背景部分抠掉,用渲染的三维虚拟背景替换特定颜色的背景来构成输出的合成画面。大部分的情况下,人物与三维背景直接合成。如果人物在三维场景没有阴影,在近景中真实摄像机只拍摄人物半身时,有没有阴影是不会影响观众的感受。但是,如果拍摄的全身人物时在三维场景中没有阴影,会让观众有人物漂浮在场景中的错觉,影响真实感,因此在虚拟演播室中阴影的合成非常重要。

现有的人物与阴影的合成方式通常有四种:方法一是在真实摄像机画面中分析人物轮廓,确定人物脚部位置,在人物脚下放置一张固定的阴影图片。该方法的缺陷在于阴影图片与人物的肢体运动以及三维场景的光线难以匹配;人物阴影的长度、角度无法缺乏变化、真实感较差。

方法二是依据真实摄像机中拍摄的人物生成一个类似阴影的剪影,放置在虚拟演播室中。该方法发的缺陷是在于剪影与人物来源于一个平面,对于模拟侧向光源产生的阴影会产生严重失真,人物运动时尤其明显。

方法三是真实摄像机拍摄人物脚下的阴影是灰黑色,通过色键技术将其还原。该方法的缺陷是对蓝绿箱内的灯光布置要求很高,蓝绿箱不能有任何污渍或印迹,而且这种方法常常会导致输出视频中夹杂着阴影噪声,影响视觉效果。

方法四是增加第二台真实摄影机放置于与三维虚拟场景中需要生成的阴影的对称点(也就是虚拟场景的光源位置),得到人物在该点的图像,生成黑色剪影放置在虚拟演播室中。该方法的缺陷是不仅需要添加额外的摄像机和抠像器,增加了系统的成本和复杂性,而且人必须同时处在两台摄像机的视野范围内,大大限制了人物在蓝绿箱中的活动范围。

综上所述现有的四种技术方案都不能提供一种成本低而真实感好的方法来实现虚拟演播室中的前景人物的阴影生成以及与前景人物的合成。

因此,需要提出一种新的技术方案来解决上述技术问题。



技术实现要素:

本发明的目的一是提供一种在虚拟演播室中合成前景人物阴影的方法,通过对含真实人物视频做分析提取出骨骼关节点位置,再绑定到三维人物模型上渲染出阴影,使得最终与色键后的前景做叠加的阴影与人物的动作保持一致。

本发明的上述发明目的一是通过以下技术方案得以实现的:

一种在虚拟演播室三维场景中合成前景人物阴影的方法,其特征在于:包括以下步骤:

步骤s1、获取含人物且人物置于指定颜色背景中的输入视频流,该输入视频流来自实时视频拍摄或来自视频文件解码;

步骤s2、运用计算机视觉方法分析输入视频流,捕获到人物的全身肢体动作,计算出人体的各个关节坐标信息,建立人物的骨骼跟踪数据矩阵;

步骤s3、根据人物特征,选择内置对应的三维人物模型坐标矩阵与所述骨骼跟踪数据矩阵绑定,通过所述骨骼跟踪数据矩阵驱动内置三维人物模型坐标矩阵运动;

步骤s4、完成对应三维人物模型绑定后,处理器渲染三维人物模型在三维场景中产生的阴影;

步骤s5、将所述输入视频流的色键抠像结果与含所述阴影的三维场景叠加。

通过采用上述技术方案,通过对实时视频中的人物进行肢体识别,提取出骨骼关节点位置,再绑定到三维人物模型,通过骨架跟踪数据来驱动预设的三维人物模型运动,计算机依据虚拟三维人物模型渲染出对应真实人物的阴影;最后将包含有阴影的虚拟场景与色键后的前景做叠加形成最终输出,使得合成的阴影,与人物的动作保持一致,可以完美地投射到虚拟场景中的墙面、桌椅等不规则的形体上,还可以根据多角度的灯光生成对应多角度的阴影,解决现有的技术无法在虚拟墙面、桌椅或凹凸不平的地面上形成正确的阴影以及合成的阴影无法和虚拟场景中的光源匹配的问题。

本发明进一步设置为:所述步骤s2、运用计算机视觉方法分析输入视频流,捕获到人物的全身肢体动作,计算出人体的各个关节坐标信息,建立人物的骨骼跟踪数据矩阵,具体包括如下步骤:

步骤s201、对所述输入视频流中的前景人物活动的骨骼关节点进行跟踪,并获得关节点坐标;

步骤s202、通过公式将分别将所述关节点的坐标依次转换为对应的三维场景空间坐标;

步骤s203、整合所述关节点的三维场景空间坐标,组成人物的骨骼跟踪数据矩阵。

通过采用上述技术方案,通过采集人物活动的骨骼关节点的三维坐标,提高处理精度的同时,还可以利用这一数据极其简便地完成人体姿态和动作的识别。

本发明进一步设置为:步骤s3中所述三维人物模型的人物特征包括a、b、c、d中一种或多种。

通过采用上述技术方案,通过在虚拟三维人物模型中设置多种人物特征,使得获得的三维人物模型更加贴进现实人物的实际情况。

本发明进一步设置为:步骤s4中阴影通过采用shadowmap的方法生成。

通过采用上述技术方案,shadowmap具有运算快、原理简单、编写简单等优点,提高视频流中人物阴影生成的流畅性。

本发明进一步设置为:步骤s4中的阴影生成公式为:shadow=b*pl*vl*mp,

其中b为偏差矩阵,可表示为:

pl为场景中的灯光投影矩阵,vl为场景中灯光的视角矩阵,mp为三维人物模型坐标矩阵。

通过采用上述技术方案,由于顶点经过矩阵变化之后,其xyz分量的取值范围是[-1,1],我们需要使用这个变化过的顶点值来找到shadowdepthmap中对应的点来比较深度,即要作为uv使用,而uv的取值范围是[0,1],因此需要使用偏差矩阵进行一个值域的变换。

本发明进一步设置为:步骤s5、将所述视频流的色键抠像结果与含所述阴影的三维场景叠加,三维场景叠加的具体公式为:y=scene*(1-α)+v*α,

其中y为最终合成结果画面,α为通过键混器获得的视频流的alpha键,scene为含阴影的三维场景,v为步骤s1中的输入视频流。

通过采用上述技术方案,该阴影生成的方法是基于肢体识别得到骨架信息即可实现对驱动三维人物模型,从而渲染阴影,在保证人物与阴影的完美贴合的同时,虚拟灯光增加时,各个角度都可以生成正确的阴影。

本发明目的二是提供一种在虚拟演播室中合成前景人物阴影的装置,具有成本低、但合成真实感强的前景人物阴影的特点。

本发明的上述发明目的二是通过以下技术方案得以实现:

一种在虚拟演播室中合成前景人物阴影的装置,包括存储器和处理器,所述存储器存储有能够被处理器加载并执行上述在虚拟演播室三维场景中合成前景人物阴影方法的计算机程序。

本发明目的三是提供一种计算机可读存储介质,具有便于实现低成本、高逼真度的前景人物阴影合成的特点。

本发明的上述发明目的三是通过以下技术方案得以实现:

一种计算机可读存储介质,存储有能够被处理器加载并执行上述虚拟演播室三维场景中合成前景人物阴影方法的计算机程序。

综上所述,本发明的有益技术效果为:通过对含人物的输入视频流进行逐帧分析处理,计算出真实肢体的骨架信息,将真实人物骨骼关节点空间位置和事先已预置的虚拟三维人物模型的骨骼关节点绑定,并依据虚拟三维人物模型渲染出对应真实人物的阴影,使得生成的阴影人与物动作完美贴合,从而提高虚拟场景合成的真实度。

附图说明

图1是本发明实施例一的整体流程框图;

图2是本发明实施例一选取的各个关节点的示意图;

图3是本发明实施例一的阴影合成的示意图;

图4是本发明实施例二的结构框图。

图中:1、数据存储模块;2、视频流获取模块;3、视频流数据处理模块;4、阴影合成模块;5、场景叠加模块。

具体实施方式

以下结合附图对本发明作进一步详细说明。

实施例一:

参照图1,为本发明公开的一种在虚拟演播室中合成前景人物阴影的方法,具体包括以下步骤:

步骤s1、获取含人物且人物置于指定颜色背景中的输入视频流,该输入视频流来自实时视频拍摄或来自视频文件解码。

该含人物输入视频流为包括处于特定背景的人物视频v,通常来源于i/o(输入/输出)设备或存储介质。获取该含人物输入视频流的处理器可以是通用处理器,包括中间处理器(centralprocessingunit,简称cpu)、图像处理器(graphicsprocessingunit)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

参照图2,步骤s2、运用计算机视觉方法分析输入视频流,捕获到人物的全身肢体动作,计算出人体的各个关节坐标信息,建立人物的骨骼跟踪数据矩阵ms。

对该视频每帧画面作分析处理,通过计算机视觉分析法捕获到人物的全身肢体动作,从所得到的输入视频流中分析出真实人物骨骼中各个关节点的空间三维位置坐标值。具体包括以下步骤:

步骤s201、通过对所得到的输入视频流中的前景人物活动的骨骼关节点进行跟踪,从中分析出视频流中的前景人物活动的20个骨骼关节点(包括头部、颈部、手臂各个关节点、躯干、臀部各个关节点、脚部各个关节点等20个人体主要关节点)的坐标(ximage,yimage,zimage),并对20个关节点进行编号;

步骤s202、通过公式将分别将20个关节点的坐标依次转换为对应的三维场景空间坐标;其公式为:

其中的s(xn,yn,zn)为第n个关节点在其对应三维场景空间的坐标信息,h=3.5×10-4rad,k=12.36cm,l=1.18rad,o=3.7cm,d'=-10,f=0.0021,kinect的分辨率w×h·为640×480。

步骤s203、整合20个关节点的三维场景空间坐标,组成人物的骨骼跟踪数据矩阵ms。

步骤s3、选择内置三维人物模型与骨骼跟踪数据绑定,根据人物特征,选择内置对应的三维人物模型坐标矩阵mp,将三维人物模型坐标矩阵mp与骨骼跟踪数据矩阵ms绑定,通过骨骼跟踪数据矩阵ms驱动内置三维人物模型坐标矩阵mp运动。三维人物模型的人物特征包括a、b、c、d中的一种或多种,其中a代表性别;b代表年龄;c代表身高;d代表体型;本实施例中的人物特征包含a、b、c、d四种具体为男、女、老、少、高、矮、胖、瘦8种情况可选择,根据实际人物特征选择对应的三维人物模型的特征,使其所建立形成的三维人物模型更加贴进现实人物的实际情况。

参照图3,步骤s4、完成对应三维人物模型绑定后,处理器依据虚拟三维人物模型在三维场景中渲染出对应真实人物的阴影。本实施例中采用shadowmap的方法说明阴影的生成。其公式如下:shadow=b*pl*vl*mp,

其中b为偏差矩阵,可表示为:

顶点经过矩阵变化之后,其xyz分量的取值范围是[-1,1],现在我们需要使用这个变化过的顶点值来找到shadowdepthmap中对应的点来比较深度,即要作为uv使用,而uv的取值范围是[0,1],因此需要通过偏差矩阵来进行值域的变换。pl为场景中的灯光投影矩阵,vl为场景中灯光的视角矩阵,mp为三维人物模型坐标矩阵。该公式将mp变换到以光源位置为视点的投影坐标系下,得到对应的阴影深度贴图shadow,渲染到所述的三维场景,得到含阴影的三维场景scene。

步骤s5将输入视频流的色键抠像结果(前景人物)与含阴影的三维场景叠加。

三维场景叠加的具体公式为:y=scene*(1-α)+v*α,其中y为最终合成结果画面,α为通过键混器获得视频流的alpha键,scene为含阴影的三维场景,v为步骤s1中的输入视频流。将包含有阴影的虚拟场景与色键后的前景做叠加形成最终输出。

本实施例的具体工作过程:获取含真实人物的视频流;对该视频每帧画面作分析处理,实时提取出真实人物骨骼中各个关节点的空间三维位置坐标值;将真实人物骨骼关节点空间位置和事先已预置的虚拟三维人物模型的骨骼关节点绑定,计算机依据虚拟三维人物模型渲染出对应真实人物的阴影;最后将包含有阴影的虚拟场景与色键后的前景做叠加形成最终输出。基于肢体识别得到骨架信息即可实现对驱动三维人物模型,从而渲染阴影,使得阴影与人物的动作保持一致,在保证人物与阴影的完美贴合的同时,因为阴影是依据灯光渲染,因此也可以完美地投射到虚拟场景中的墙面、桌椅等不规则的形体上,还可以根据多角度的灯光生成对应多角度的阴影,从而提高虚拟场景合成的真实度。

实施例二:

参照图4,在一实施例中,提供一种在虚拟演播室中合成前景人物阴影的装置与上述实施例一当中的在虚拟演播室中合成前景人物阴影的方法一一对应,该在虚拟演播室中合成前景人物阴影的装置包括含人物输入视频流的数据存储模块1、视频流获取模块2、视频流数据处理模块3、阴影合成模块4以及场景叠加模块5。各功能模块详细说明如下:

数据存储模块1,用于存储含前景人物的拍摄视频数据;

视频流获取模块2,用于获取存储在数据存储模块1中所需的含前景人物的视频数据;

视频流数据处理模块3,用于对获取到的含人物输入视频流的每帧画面作分析处理,实时提取出真实人物骨骼中各个关节点的空间三维位置坐标值;

阴影合成模块4,用于将真实人物骨骼关节点空间位置和事先已预置的虚拟三维人物模型的骨骼关节点绑定,并依据虚拟三维人物模型渲染出对应真实人物的阴影;

场景叠加模块5,用于将包含有阴影的虚拟场景与色键后的前景做叠加形成最终输出。

关于虚拟演播室中合成前景人物阴影的装置的限定可以参见上文中对虚拟演播室中合成前景人物阴影的方法的限定,在此不再赘述。上述虚拟演播室中合成前景人物阴影的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

计算机设备可以是服务器,其包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中存储器用于存储获取到的含人物输入视频流,也存储叠加合成后的新的视频流。处理器用于提供计算和控制能力,处理器执行计算机程序时实现以下步骤:

步骤s1、获取含人物且人物置于指定颜色背景中的输入视频流,该输入视频流来自实时视频拍摄或来自视频文件解码;

步骤s2、运用计算机视觉方法分析输入视频流,捕获到人物的全身肢体动作,计算出人体的各个关节坐标信息,建立人物的骨骼跟踪数据矩阵;

步骤s3、根据人物特征,选择内置对应的三维人物模型坐标矩阵与所述骨骼跟踪数据矩阵绑定,通过所述骨骼跟踪数据矩阵驱动内置三维人物模型坐标矩阵运动;

步骤s4、完成对应三维人物模型绑定后,处理器渲染三维人物模型在三维场景中产生的阴影;

步骤s5、将所述输入视频流的色键抠像结果与含所述阴影的三维场景叠加。

实施例三:

在一个实施例中,提供了一种计算机可读存储介质,其存储有能够被处理器加载并执行上述在虚拟演播室中合成前景人物阴影方法的计算机程序,计算机程序被处理器执行时实现以下步骤:

步骤s1、获取含人物且人物置于指定颜色背景中的输入视频流,该输入视频流来自实时视频拍摄或来自视频文件解码;

步骤s2、运用计算机视觉方法分析输入视频流,捕获到人物的全身肢体动作,计算出人体的各个关节坐标信息,建立人物的骨骼跟踪数据矩阵;

步骤s3、根据人物特征,选择内置对应的三维人物模型坐标矩阵与所述骨骼跟踪数据矩阵绑定,通过所述骨骼跟踪数据矩阵驱动内置三维人物模型坐标矩阵运动;

步骤s4、完成对应三维人物模型绑定后,处理器渲染三维人物模型在三维场景中产生的阴影;

步骤s5、将所述输入视频流的色键抠像结果与含所述阴影的三维场景叠加。

所述的计算机程序可存储于一非易失性计算机可读取存储介质中,例如包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

具体实施方式的实施例均为本发明的较佳实施例,并非依此限制本发明的保护范围,故:凡依本发明的结构、形状、原理所做的等效变化,均应涵盖于本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1