视频处理方法及装置与流程

文档序号:14613159发布日期:2018-06-05 21:20阅读:174来源:国知局
视频处理方法及装置与流程

本发明涉及计算机领域,具体而言,涉及一种视频处理方法及装置。



背景技术:

相关技术中的虚拟现实(Virtual Reality,简称为VR)技术深刻影响我们未来的生活,包括医学,娱乐,教育等。VR视频作为VR娱乐行业的第一梯队,引领VR技术的不断突破和应用。特别是在谷歌,三星等巨头在移动终端的VR布局,利用头盔与手机终端配合,即可观看VR视频,设备简单,操作便利,得到了市场的认可。

VR视频通过拼接成360度全景视频,推送到终端后,配合头盔等显示外设,提供沉浸式的观看体验,与普通的视频相比较,可以实现360度无死角的观赏。但是相关技术中的VR视频也存在局限性,在无法支持VR视频播放的设备上,或者无法利用外设的情况下,比如在电视屏上将会呈现拉伸平面的视频效果,在没有配套VR头盔的手机上,VR视频也无法体现出沉浸感,不能正常播放VR视频,但同时占用了VR视频的带宽和流量。

针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。



技术实现要素:

本发明实施例提供了一种视频处理方法及装置,以至少解决相关技术中在视频播放终端不支持VR时不能播放VR视频的问题。

根据本发明的一个实施例,提供了一种视频处理方法,包括:将虚拟现实VR视频的画面还原成二维图像;使用所述二维图像生成多个视角的二维视频。

可选地,将虚拟现实VR视频的画面还原成二维图像包括:解析所述VR视频中的每一帧画面,并通过球面模型渲染将每一帧画面从平铺模式还原成全景模式;将所述全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像。

可选地,将所述全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像,包括以下之一:将所述全景模式中的每一帧画面的球面分割成六面体,采用纹理映射的方式以圆心坐标为中心点,采用120度视角,在不同的方向进行投影,得到上下左右前后六个视角的图像;将所述全景模式中的每一帧画面的球面进行自定义分割,采用纹理映射的方式以圆心坐标为中心点,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,生成M个图,并绕X轴旋转生成M个图,得到2M帧不同视角的图像。

可选地,使用所述二维图像生成多个视角的二维视频包括:按照所述二维图像的位置信息将所述二维图像汇聚成多路码流;对所述多路码流进行打包切片生成多个视角的二维视频。

可选地,所述多个视角的二维视频通过不同的索引号进行描述。

可选地,输出所述二维视频包括:接收视角选择信息;根据所述视角选择信息在所有二维视频中选择对应视角的指定二维视频;输出所述指定二维视频的码流。

可选地,在输出所述二维视频之前,所述方法还包括:确定视频播放终端满足以下条件至少之一:不支持VR播放,未连接VR穿戴设备。

可选的,在使用所述二维图像生成多个视角的二维视频之后,所述方法还包括:输出所述二维视频。

可选地,输出所述二维视频包括:输出一个或多个视角的二维视频。

可选地,在输出多个视角的二维视频时,所述多个视角的二维视频在视频播放终端分屏播放。

根据本发明的另一个实施例,提供了一种视频播放装置,包括:还原模块,用于将虚拟现实VR视频的画面还原成二维图像;生成模块,用于使用所述二维图像生成多个视角的二维视频。

可选地,所述还原模块包括:解析单元,用于解析所述VR视频中的每一帧画面,并通过球面模型渲染将每一帧画面从平铺模式还原成全景模式;分割单元,用于将所述全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像。

可选地,所述分割单元还用于以下之一:将所述全景模式中的每一帧画面的球面分割成六面体,采用纹理映射的方式以圆心坐标为中心点,采用120度视角,在不同的方向进行投影,得到上下左右前后六个视角的图像;将所述全景模式中的每一帧画面的球面进行自定义分割,采用纹理映射的方式以圆心坐标为中心点,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,生成M个图,并绕X轴旋转生成M个图,得到2M帧不同视角的图像。

可选地,所述生成模块包括:汇聚单元,用于按照所述二维图像的位置信息将所述二维图像汇聚成多路码流;处理单元,用于对所述多路码流进行打包切片生成多个视角的二维视频。

可选地,所述多个视角的二维视频通过不同的索引号进行描述。

可选的,所述装置还包括:输出模块,用于输出所述二维视频。

可选地,所述输出模块包括:接收单元,用于接收视角选择信息;选择单元,用于根据所述视角选择信息在所有二维视频中选择对应视角的指定二维视频;输出单元,用于输出所述指定二维视频的码流。

可选地,所述装置还包括:确定模块,用于在所述输出模块输出所述二维视频之前,确定视频播放终端满足以下条件至少之一:不支持VR播放,未连接VR穿戴设备。

根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:

将虚拟现实VR视频的画面还原成二维图像;

使用所述二维图像生成多个视角的二维视频。

通过本发明,通过视频的逆向还原,重新生成二维(2D)视角的视频,解决了相关技术中在视频播放终端不支持VR时不能播放VR视频的问题,并降低了视频播放终端对传输带宽的要求,减少流量的消耗和存储容量。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的视频处理方法的流程图;

图2是根据本发明实施例的视频处理装置的结构框图;

图3是本发明实施例中球面投影示意图;

图4是本发明实施例中六面体分割示意图;

图5是本发明实施例中纹理映射示意图;

图6是本发明实施例中自由视角分割示意图;

图7是本发明实施例中码流重新生成示意图;

图8是本发明实施例中客户端选择视角流程图;

图9是本发明实施例中VR直播的示意图;

图10是本发明实施例中VR点播的示意图;

图11是本发明实施例中两种播放器比较的示意图;

图12是本发明实施例中不支持VR视频的客户端选择流程图;

图13是本发明实施例中根据外接设备的连接自动切换视角的流程图;

图14是本发明实施例中点击视频选择视角视频的示意图;

图15是本发明实施例中宫格选择视角视频的示意图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

实施例1

在本实施例中提供了一种视频处理方法,图1是根据本发明实施例的视频处理方法的流程图,如图1所示,该流程包括如下步骤:

步骤S102,将虚拟现实VR视频的画面还原成二维图像;

步骤S104,使用二维图像生成多个视角的二维视频。

通过上述步骤,通过视频的逆向还原,重新生成二维(2D)视角的视频,解决了相关技术中在视频播放终端不支持VR时不能播放VR视频的问题,并降低了视频播放终端对传输带宽的要求,减少流量的消耗和存储容量。

可选地,上述步骤的执行主体可以为视频分发平台,如内容分发网络(Content Delivery Network,简称为CDN),也可以是视频呈现平台、如播放终端等,但不限于此。

可选地,将虚拟现实VR视频的画面还原成二维图像包括:

S11,解析VR视频中的每一帧画面,并通过球面模型渲染将每一帧画面从平铺模式还原成全景模式;

S12,将全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像。视角可以是上下左右前后视角,或者是按照不同拍摄机位的视角。

在本实施例中,将全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像,可以但不限于为以下方式:

将全景模式中的每一帧画面的球面分割成六面体,采用纹理映射的方式以圆心坐标为中心点,采用120度视角,在不同的方向进行投影,得到上下左右前后六个视角的图像;

将全景模式中的每一帧画面的球面进行自定义分割,采用纹理映射的方式以圆心坐标为中心点,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,生成M个图,并绕X轴旋转生成M个图,得到2M帧不同视角的图像,M是大于1的整数。以自定义的分割视角为90度视角为例,以原点为中心,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,分割的原理同样采用纹理映射的方式,生成4个图。同时,绕X轴旋转也生成4个图,一共8帧图。

可选的,使用二维图像生成多个视角的二维视频包括:

S21,按照二维图像的位置信息将二维图像汇聚成多路码流;每帧图在分割完成后,会按照位置进行标记,同一视角的图像帧的位置信息具备关联性;

S22,对多路码流进行打包切片生成多个视角的二维视频。

可选的,多个视角的二维视频通过不同的索引号进行描述,可以以切割的依次顺序生成的索引号。

可选的,在使用二维图像生成多个视角的二维视频之后,方法还包括:输出二维视频。输出二维视频包括:

S31,接收视角选择信息;视角选择信息用于指示用户选择的或者预设策略择优选择的观看视角(视频播放终端的呈现视角),在当前正在播放视频时,也可以是切换;

S32,根据视角选择信息在所有二维视频中选择对应视角的指定二维视频;

S33,输出指定二维视频的码流。可选的,输出二维视频包括:输出一个或多个视角的二维视频,在同时输出多个视角的二维视频时,视频播放终端可以通过分屏或者多频的方式进行播放呈现。

可选的,在输出二维视频之前,方法还包括:确定视频播放终端满足以下条件至少之一:不支持VR播放,未连接VR穿戴设备。由此可以节省网络带宽和存储空间,避免终端下载不能播放的视频类型。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

在本实施例中还提供了一种视频处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图2是根据本发明实施例的视频处理装置的结构框图,如图2所示,该装置包括:

还原模块20,用于将虚拟现实VR视频的画面还原成二维图像;

生成模块22,用于使用二维图像生成多个视角的二维视频。

可选的,还原模块包括:解析单元,用于解析VR视频中的每一帧画面,并通过球面模型渲染将每一帧画面从平铺模式还原成全景模式;分割单元,用于将全景模式中的每一帧画面进行视角分割,得到多个视角的二维图像。

可选的,分割单元还用于以下之一:将全景模式中的每一帧画面的球面分割成六面体,采用纹理映射的方式以圆心坐标为中心点,采用120度视角,在不同的方向进行投影,得到上下左右前后六个视角的图像;将全景模式中的每一帧画面的球面进行自定义分割,采用纹理映射的方式以圆心坐标为中心点,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,生成M个图,并绕X轴旋转生成M个图,得到2M帧不同视角的图像。

可选的,生成模块包括:汇聚单元,用于按照二维图像的位置信息将二维图像汇聚成多路码流;处理单元,用于对多路码流进行打包切片生成多个视角的二维视频。

可选的,多个视角的二维视频通过不同的索引号进行描述。

可选的,装置还包括:输出模块,用于输出二维视频。输出模块可以包括:接收单元,用于接收视角选择信息;选择单元,用于根据视角选择信息在所有二维视频中选择对应视角的指定二维视频;输出单元,用于输出指定二维视频的码流。

可选的,装置还包括:确定模块,用于在输出模块输出二维视频之前,确定视频播放终端满足以下条件至少之一:不支持VR播放,未连接VR穿戴设备。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例3

本实施例是本申请的可选实施例,用于结合具体的实例对本申请进行详细说明:

本发明涉VR视频播放时的视频处理方案,特别涉及一种视角选择的方法。

本发明提供一种基于逆向合成的VR视频多视角选择的方法,相关技术中,VR视频一般是通过多路视频信号采集后,经过合成拼接,生成360度的全景视频。在拼接的过程中,对于拼接缝通过锐化等多种处理,最大程度消除痕迹,拼接完成后,进行平面投影,形成平铺的图像进行传输。在本实施例的方案中,当视频码流分发到视频逆向合成器,通过逆向算法,首先将视频还原成球面视频,根据定义的视角将视频分割成多路2D视频码流推送到CDN侧。终端在呈现VR的视频时,选择相关的视角视频并下拉播放,实现在没有头盔等相关观看设备的情况下也能观看不同的视角视频。

本实施例从流程上可以分为三部分,第一部分为视频逆向合成器的逆向合成,通过逆向算法将VR视频还原,并分割成2D图像。第二部分为重新生成码流,将2D图像切片,打包形成新的码流,并在主m3u8文件中描述。第三部分为客户端选择视角,进行2D视频的呈现。下面进行展示说明书:

视频逆向合成器的逆向合成:

VR视频是以平面的模式分发到视频逆向合成器节点,其接收到码流后,解析其每一帧的画面,其画面为平铺模式,通过球面模型渲染,还原成VR全景模式,如图3所示,图3是本发明实施例中球面投影示意图,平面视频通过球面投影形成球面纹理的VR视频。

在视角分割过程中,采用以下两种方式。

六面体分割,将球面默认分割成六面体,如图4所示,图4是本发明实施例中六面体分割示意图,最终形成上下左右前后六个图。

分割采用纹理映射的方式,其原理如图5所示,图5是本发明实施例中纹理映射示意图。以圆心坐标为观看者位置,为了保证其图片有余量,采用120度视角,对不同方向进行拍摄,即在不同的方向进行投影,最终形成每个面的图像。

自定义视角分割,可以自定义的分割视角,以90度视角为例,以原点为中心,Y轴为正方向,X轴正方向为0度起始点,绕Z轴依次分割,分割的原理同样采用纹理映射的方式,生成4个图。同时,绕X轴旋转也生成4个图,一共8帧图。如图6所示,图6是本发明实施例中自由视角分割示意图。

重新生成码流:

如图7所示,图7是本发明实施例中码流重新生成示意图,每帧图分割完成后,按照位置进行标记,相同位置的帧图汇聚一路码流,并进行切片打包,形成一个个子码流的描述文件,如index1.m3u8,index2.m3u8…。以切割的依次顺序生成的索引号在主index.m3u8中进行描述:

#以下定义切割的视角

View angle=90

#以下定义子m3u8的

v1=index1.m3u8

v2=index2.m3u8

v3=index3.m3u8

v4=index4.m3u8

客户端视角选择:

如图8所示,图8是本发明实施例中客户端选择视角流程图,客户端在播放的过程中,首先下载VR视频的index.m3u8文件进行解析,获取其角度与子m3u8文件之间的对应关系。当用户选择某个视角的视频观看,下载对应的视角的子m3u8描述文件,并下拉码流进行播放。

下面结合具体的实例对本发明的技术方案做进一步描述。

实例一,VR直播逆向合成

如图9所示,图9是本发明实施例中VR直播的示意图,头端通过多路摄像头采集图像,传输到全景视频的合成器,完成全景视频的拼接合成投影,推送实时消息传输协议(Real Time Message Protocol,简称为rtmp)的码流至转码器,转码器将rtmp协议码流转码成hls(HTTP Live Streaming)格式码流推送到逆合成服务器。

在视频逆向合成的服务器上实时完成VR全景视频的逆向合成,并将分割的2D视频缓存到cache中,并推送到CDN节点。

实例二,VR点播逆向合成

如图10所示,图10是本发明实施例中VR点播的示意图,VR全景视频以mp4的格式注入到编码器,编码器转码成HLS格式,推送到视频逆合成服务器。

在视频逆合成节点上完成VR全景视频的逆向合成,并将分割的2D视频缓存到cache中,并推送到CDN节点。与VR直播逆向合成相比较,无需实时性考虑。

实例三,不支持VR视频播放的客户端视角选择。

VR视频的播放时需要播放器支持的,VR播放器在播放的过程中,将平铺的视频图像还原成全景视频,并进行分屏。如果播放器不支持,即普通播放器,那么看到的是原始的平铺画面。目前大部分的机顶盒是不支持VR播放的,如图11所示,图11是本发明实施例中两种播放器比较的示意图。

在此种情况下,通过判断是否支持VR播放来进行视角的选择。流程如图12所示,图12是本发明实施例中不支持VR视频的客户端选择流程图,包括:

下载主m3u8文件,并解析

判断是否包含视角的子m3u8文件,如果不包含,则为普通视频,直接播放。如果包含子文件,则为VR视频。

判断当前的设备是否支持VR视频的播放,如果支持,则调用播放器呈现VR视频,否则下载多路分割的2D视频,并以宫格的模式呈现,如四宫格。

用户选择其中某一路视频进行全屏播放。

实例四,根据外接设备的连接自动切换视角。

对于支持VR视频播放的设备,如果体验VR的沉浸感,需要外接头盔等设备。此案例在外接头盔设备是,切换到VR模式,当断连后,切换到视角选择模式。流程如图13所示,图13是本发明实施例中根据外接设备的连接自动切换视角的流程图,包括:

下载主m3u8文件,并解析

判断是否包含视角的子m3u8文件,如果不包含,则为普通视频,直接播放。如果包含子m3u8文件,则为VR视频。

判断是否外接VR设备,如果外接,则直接下载并播放VR视频,如果没有外接设备,则下载多路分割的2D视频,并以宫格的模式呈现,如四宫格。

用户选择其中某一路视频进行全屏播放。

实例五,播放VR视频时,切换到对应的视角2D视频播放。

在支持VR视频播放的设备上,裸眼观看时,可以通过手势,陀螺仪调整VR视频的视角,但此时需要下载全景的VR视频,带宽要求高,流量大。可以通过以下两种方式快速切换到对应的2D视角视频。

点击视频区域,通过当前触点的角度,计算其对应的2D视频索引,并下载对应的视频播放。示意图如图14所示,图14是本发明实施例中点击视频选择视角视频的示意图。

在播放VR视频时,同时展示2D视频的宫格播放,用户可以通过点击宫格自动切换到相关的2D视频,如图15所示,图15是本发明实施例中宫格选择视角视频的示意图。

通过本实施例,对于全景视频,通过视频的逆向合成,重新生成码流2D视角的码流,客户端通过不同的方式下载播放,有效的解决了在终端不支持VR视频播放,以及没有外设情况下无法观看VR视频的问题,通过视角的选择对应的2D视频播放,降低了对带宽的要求,减少流量的消耗。

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:

S1,将虚拟现实VR视频的画面还原成二维图像;

S2,使用二维图像生成多个视角的二维视频。

可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行:

将虚拟现实VR视频的画面还原成二维图像;

使用二维图像生成多个视角的二维视频。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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