一种基于即时通信进行立体视频的方法及装置
技术领域
本发明涉及计算机技术领域,具体涉及一种基于即时通信进行立体视频的方法及装置。
背景技术
立体(3D)视频技术可以提供符合立体视觉原理的具有深度信息的画面,从而能够真实地重现客观世界景象,表现出场景的纵深感、层次感和真实性,是当前视频技术发展的重要方向。
目前视频研究领域有两个主要的研究热点:双目立体视频和多视角视频(又称“Multi-ViewCoding,MVC”)。参阅图1,双目立体视频的基本原理是模拟人眼成像原理,采用双摄像机独立得到左眼图像和右眼图像,并使人的左右眼分别看到左右眼通道图像,最后合成得到具有立体感的图像。多视角视频由多个摄像机同时拍摄得到,具有多个视频通道,不同的摄像机的拍摄角度不同。在播放时这些不同角度的景物图像都会送到用户终端,如电视机显示屏上,用户在观看时可以选择不同的角度观看不同的景物画面图像。
其中,一种现有技术多视角视频技术允许用户观看动态场景,进行交互(如冻结,慢放或回退)和改变视角。应用该技术的系统采用多摄像机捕获多视频流,采用多视角3D重构和交织技术创建分层的视频帧,可以进行有效的压缩和动态场景的交互式回放。该系统还包括一个具有计算设备的渲染和接收装置,渲染程序用于渲染每一帧交互式视点图像。通常,根据用户观看的视角,从当前时域部分关联的帧组中找到需要播放的一个或多个视频帧。需要使用标定数据用于确定当前组每一帧图像所关联的视角,以及用户选择的视角是否和当前组中的某一帧一致或落在某两个视角的中间。当用户选择的视角和某帧一致,则在屏幕上渲染该帧,如果视角落在某两个视角之间,则需要渲染相关联的多帧。当需要的一帧或多帧被确定后,需要从交互式视频数据中解出所需的最小帧数据。如果数据被压缩,则需要采用解码单元进行数据解码。解码出来的数据被用来渲染当前用户指定的视点的交互式视频帧。如果需要的视角落在两帧之间,则首先需要将输入帧的主要层投影到和用户指定视角一致的一个虚拟视角上,然后将输入帧的边界层也投影到该视角上。
另一种现有技术交互式多视角视频采用一种新型的视频捕获系统。该系统包括视频摄像机、控制PC、服务器、网络组件和客户端,还包括音频组件用于捕获相关的音频。多个摄像机采用主-从配置方式,由一个或多个控制PC进行控制,从多个视点和方向进行同步采集。捕获到的视频数据由控制PC进行压缩,并实时地传输到一个或多个服务器上。压缩后的数据也可以实时地分发到终端用户或进行进一步的压缩,去除时域和空域的相关性。
在进行本发明创造过程中,发明人发现上述现有多视角视频技术至少存在以下问题:
上述现有技术多视角视频技术实现的功能过于简单,不能满足目前消费者的实际需求。比如现有技术一的多视角视频技术,着重于动态场景的交互式回放,现有技术二的多视频技术着重于视频的捕获。当需要进行多视角视频远程实时播放时,缺乏相应的系统、方法以及设备的支持;并且不支持实时双向交互式的立体视频的播放。
发明内容
本发明所采用的技术方案是:一种基于即时通信进行立体视频的方法,包括如下步骤:
获取即时通信中当前视频通话的双方所处环境的视频数据以及视差信息;
对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息;
根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,并将所述处于同一边缘带宽的物体置入同一视频集合,以获得多个视频集合;
对所述多个视频集合中的视频数据的深度以及视差信息进行编码以及解码;
根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,以获得在双方视频中显示出立体视频。
进一步地,对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息,包括如下步骤:
对所述视频数据按照格栅的方式进行区块化划分;
提取经过区块化划分后的视频数据中的视差信息,并将所述视差信息按照RGBA色谱进行划分;
获取划分后的每一区块的视频数据以及相应的视差信息。
进一步地,根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,包括如下步骤:
根据每一区块的视频数据的边缘带宽筛选出所述视频数据中所包含的多个不同物体的轮廓信息;
根据所述每一区块中的所述视差信息以及所述轮廓信息获取所述不同物体的信息。
进一步地,根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,包括如下步骤:
将解码后输出的视频数据进行转换,以转换成二维视频数据;
根据所述二维视频数据获取所述视频数据的深度以及视差信息;
根据所述视频数据的深度以及视差信息重建立体的视频数据。
进一步地,对所述多个视频集合中的视频数据的深度以及视差信息进行编码具体为:
去除所述多个视频集合中的视频数据的深度以及视差信息的协议头,以获得编码数据。
特别地,本发明还提供了一种基于即时通信进行立体视频的装置,包括:
获取模块,用于获取即时通信中当前视频通话的双方所处环境的视频数据以及视差信息;
划分模块,用于对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息;
筛选模块,用于根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,并将所述处于同一边缘带宽的物体置入同一视频集合,以获得多个视频集合;
编解码模块,用于对所述多个视频集合中的视频数据的深度以及视差信息进行编码以及解码;
重建模块,用于根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,以获得在双方视频中显示出立体视频。
进一步地,所述划分模块包括:
划分单元,用于对所述视频数据按照格栅的方式进行区块化划分;
提取单元,用于提取经过区块化划分后的视频数据中的视差信息,并将所述视差信息按照RGBA色谱进行划分;
第一获取单元,用于获取划分后的每一区块的视频数据以及相应的视差信息。
进一步地,所述筛选模块包括:
筛选单元,用于根据每一区块的视频数据的边缘带宽筛选出所述视频数据中所包含的多个不同物体的轮廓信息;
第二获取单元,用于根据所述每一区块中的所述视差信息以及所述轮廓信息获取所述不同物体的信息。
进一步地,所述重建模块包括:
转换单元,用于将解码后输出的视频数据进行转换,以转换成二维视频数据;
第三获取单元,用于根据所述二维视频数据获取所述视频数据的深度以及视差信息;
重建单元,用于根据所述视频数据的深度以及视差信息重建立体的视频数据。
进一步地,所述编解码模块包括:
去除单元,用于去除所述多个视频集合中的视频数据的深度以及视差信息的协议头;
第四获取单元,用于获得编码数据。
本发明的有益效果在于:与现有技术相比,本申请通过所述视频数据和所述视差信息进行区块化划分,选出环境中处于同一边缘带宽的物体,以获得多个视频集合,再进行编解码和重建,最终获得了立体视频。使得能够进行多视角视频远程实时播放时,并且支持实时双向交互式的立体视频的播放,提高了用户体验。
附图说明
图1是根据本发明一个实施例的基于即时通信进行立体视频的方法的流程图;
图2是根据本发明一个实施例的基于即时通信进行立体视频的方法的流程图;
图3是根据本发明一个实施例的基于即时通信进行立体视频的装置的结构图。
具体实施方式
下面将结合附图及具体实施例对本发明作进一步详细说明。
如图1所示,本发明所采用的技术方案是:一种基于即时通信进行立体视频的方法,包括如下步骤:
S100、获取即时通信中当前视频通话的双方所处环境的视频数据以及视差信息;
S200、对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息;
S300、根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,并将所述处于同一边缘带宽的物体置入同一视频集合,以获得多个视频集合;
S400、对所述多个视频集合中的视频数据的深度以及视差信息进行编码以及解码;
S500、根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,以获得在双方视频中显示出立体视频。
如图2所示,对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息,包括如下步骤:
S210、对所述视频数据按照格栅的方式进行区块化划分;
S220、提取经过区块化划分后的视频数据中的视差信息,并将所述视差信息按照RGBA色谱进行划分;
S230、获取划分后的每一区块的视频数据以及相应的视差信息。
根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,包括如下步骤:
S310、根据每一区块的视频数据的边缘带宽筛选出所述视频数据中所包含的多个不同物体的轮廓信息;
S320、根据所述每一区块中的所述视差信息以及所述轮廓信息获取所述不同物体的信息。
根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,包括如下步骤:
S510、将解码后输出的视频数据进行转换,以转换成二维视频数据;
S520、根据所述二维视频数据获取所述视频数据的深度以及视差信息;
S530、根据所述视频数据的深度以及视差信息重建立体的视频数据。
对所述多个视频集合中的视频数据的深度以及视差信息进行编码具体为:
去除所述多个视频集合中的视频数据的深度以及视差信息的协议头,以获得编码数据。
特别地,如图3所示,本发明还提供了一种基于即时通信进行立体视频的装置,包括:
获取模块100,用于获取即时通信中当前视频通话的双方所处环境的视频数据以及视差信息;
划分模块200,用于对所述视频数据和所述视差信息进行区块化划分,以获得每一区块的视频数据以及相应的视差信息;
筛选模块300,用于根据每一区块的视频数据以及相应的视差信息筛选出环境中处于同一边缘带宽的物体,并将所述处于同一边缘带宽的物体置入同一视频集合,以获得多个视频集合;
编解码模块400,用于对所述多个视频集合中的视频数据的深度以及视差信息进行编码以及解码;
重建模块500,用于根据解码后输出的视频数据的深度以及视差信息对所述当前视频通话的双方所处环境的视频数据进行重新构建,以获得在双方视频中显示出立体视频。
所述划分模块200包括:
划分单元210,用于对所述视频数据按照格栅的方式进行区块化划分;
提取单元220,用于提取经过区块化划分后的视频数据中的视差信息,并将所述视差信息按照RGBA色谱进行划分;
第一获取单元230,用于获取划分后的每一区块的视频数据以及相应的视差信息。
所述筛选模块300包括:
筛选单元310,用于根据每一区块的视频数据的边缘带宽筛选出所述视频数据中所包含的多个不同物体的轮廓信息;
第二获取单元320,用于根据所述每一区块中的所述视差信息以及所述轮廓信息获取所述不同物体的信息。
所述重建模块500包括:
转换单元510,用于将解码后输出的视频数据进行转换,以转换成二维视频数据;
第三获取单元520,用于根据所述二维视频数据获取所述视频数据的深度以及视差信息;
重建单元530,用于根据所述视频数据的深度以及视差信息重建立体的视频数据。
所述编解码模块400包括:
去除单元410,用于去除所述多个视频集合中的视频数据的深度以及视差信息的协议头;
第四获取单元420,用于获得编码数据。
本发明的有益效果在于:与现有技术相比,本申请通过所述视频数据和所述视差信息进行区块化划分,选出环境中处于同一边缘带宽的物体,以获得多个视频集合,再进行编解码和重建,最终获得了立体视频。使得能够进行多视角视频远程实时播放时,并且支持实时双向交互式的立体视频的播放,提高了用户体验。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制,显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。