基于节点计算的全景视频传输方法及系统

文档序号:1548182 发布日期:2020-01-17 浏览:27次 >En<

阅读说明:本技术 基于节点计算的全景视频传输方法及系统 (Panoramic video transmission method and system based on node calculation ) 是由 徐异凌 张文军 杨琦 谢绍伟 管云峰 柳宁 于 2018-10-10 设计创作,主要内容包括:本发明提供了一种基于节点计算的全景视频传输方法及系统,包括中间节点,实时获取用户终端的反馈信息,其中,根据用户视野信息计算用户视野区域,选择包含用户视野区域的视频流进行拼接,得到处理后的视频流;根据用户网络状况信息选择传输方案,针对处理后的视频流提取出传输区域,将传输区域编码传输至对应的用户终端;传输方案包括无冗余传输和冗余传输,在无冗余传输中,传输区域为用户视野区域,在冗余传输中,传输区域为用户视野区域加冗余区域,冗余区域根据用户网络状况信息和用户终端处理能力信息计算得到。本发明通过结合用户终端的反馈信息,可以有效降低处理时延、减少带宽开销,从而整体提高用户的消费体验。(The invention provides a node calculation-based panoramic video transmission method and a node calculation-based panoramic video transmission system, which comprise an intermediate node, wherein feedback information of a user terminal is acquired in real time, a user visual field area is calculated according to user visual field information, and video streams containing the user visual field area are selected for splicing to obtain processed video streams; selecting a transmission scheme according to the user network condition information, extracting a transmission area aiming at the processed video stream, and transmitting the transmission area code to a corresponding user terminal; the transmission scheme comprises non-redundant transmission and redundant transmission, wherein in the non-redundant transmission, a transmission area is a user visual field area, in the redundant transmission, the transmission area is a user visual field area and a redundant area, and the redundant area is obtained by calculation according to user network condition information and user terminal processing capacity information. The invention can effectively reduce the processing time delay and the bandwidth overhead by combining the feedback information of the user terminal, thereby integrally improving the consumption experience of the user.)

基于节点计算的全景视频传输方法及系统

技术领域

本发明涉及节点计算及视频处理领域,具体地,涉及基于节点计算的全景视频传输方法及系统。

背景技术

随着沉浸式媒体的迅速发展,虚拟现实(Virtual Reality,VR)应用到越来越多的消费场景,例如游戏、比赛直播等。在这些场景中,往往要求具有较低的响应时延以保证用户不会产生眩晕感,这对数据的传输时延提出了更高的要求。但全景视频作为VR中的一种基本数据格式,数据量巨大且处理较为复杂。一般全景视频的产生需要多路摄像机覆盖360度范围进行数据收集,如图1所示,然后通过拼接、渲染,将多路视频拼接成一个球形数据,然后供用户消费。其中拼接这一过程比较复杂,在本地处理器能力有限的情况下,往往会产生一定时延。在直播场景下,这种时延会对用户的体验会造成一定的影响。但事实上用户在观看全景视频时只关注其中部分内容,进行完整拼接是没有必要的,并且节点计算逐步发展成熟,将全景视频的部分处理放入中间节点是切实可行的。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种基于节点计算的全景视频传输方法及系统。

根据本发明提供的一种基于节点计算的全景视频传输方法,包括中间节点,所述中间节点执行:

信息获取步骤:实时获取用户终端的反馈信息,所述反馈信息至少包括:用户视野信息、用户网络状况信息与用户终端处理能力信息;

拼接步骤:根据所述用户视野信息计算用户视野区域,选择包含用户视野区域的视频流进行拼接,得到处理后的视频流;

传输决策步骤:根据所述用户网络状况信息选择传输方案,针对处理后的视频流提取出传输区域,将传输区域编码传输至对应的用户终端;

所述传输方案包括无冗余传输和冗余传输,在所述无冗余传输中,所述传输区域为所述用户视野区域,在所述冗余传输中,所述传输区域为用户视野区域加冗余区域,所述冗余区域根据所述用户网络状况信息和所述用户终端处理能力信息计算得到。

较佳的,在所述冗余传输中,所述传输决策步骤还包括:

对所述用户视野区域以及所述冗余区域进行不等质量编码传输至对应的用户终端,即降低冗余区域的编码质量。

较佳的,所述反馈信息至少包括:

用户视野信息:描述用户当前观看的视频内容位置信息;

用户网络状况信息:描述用户当前网络的传输状况,包括带宽和延迟;

用户终端处理能力信息:描述用户终端的计算能力,包括吞吐量,响应时间与cpu占用率。

较佳的,拼接前的视频流由摄像机传输至所述中间节点,所述摄像机在传输视频流的同时传递协助拼接信息,所述协助拼接信息包括:

流覆盖范围信息:为包括水平角度信息与竖直角度信息的角度范围信息,描述当前视频流最终成像时所涵盖的区域在整个全景中的位置;

时间戳信息:描述拍摄当前视频流的时间;

摄像机矩阵信息:包括外参数以及内参数,所述外参数包括摄像机的旋转矩阵与平移矩阵,旋转矩阵与平移矩阵共同描述了如何把点从世界坐标系转换到摄像机坐标系,旋转矩阵描述世界坐标系的坐标轴相对于摄像机坐标轴的方向,平移矩阵描述了在摄像机坐标系下空间原点的位置;内参数包括焦距及成像平面坐标系到像素坐标系的变换。

较佳的,每个摄像机传输的视频流都作为独立的视频流传输。

根据本发明提供的一种基于节点计算的全景视频传输系统,包括中间节点,所述中间节点包括:

信息获取模块:实时获取用户终端的反馈信息,所述反馈信息至少包括:用户视野信息、用户网络状况信息与用户终端处理能力信息;

拼接模块:根据所述用户视野信息计算用户视野区域,选择包含用户视野区域的视频流进行拼接,得到处理后的视频流;

传输决策模块:根据所述用户网络状况信息选择传输方案,针对处理后的视频流提取出传输区域,将传输区域编码传输至对应的用户终端;

所述传输方案包括无冗余传输和冗余传输,在所述无冗余传输中,所述传输区域为所述用户视野区域,在所述冗余传输中,所述传输区域为用户视野区域加冗余区域,所述冗余区域根据所述用户网络状况信息和所述用户终端处理能力信息计算得到。

较佳的,在所述冗余传输中,所述传输决策模块还包括:

对所述用户视野区域以及所述冗余区域进行不等质量编码传输至对应的用户终端,即降低冗余区域的编码质量。

较佳的,所述反馈信息至少包括:

用户视野信息:描述用户当前观看的视频内容位置信息;

用户网络状况信息:描述用户当前网络的传输状况,包括带宽和延迟;

用户终端处理能力信息:描述用户终端的计算能力,包括吞吐量,响应时间与cpu占用率。

较佳的,拼接前的视频流由摄像机传输至所述中间节点,所述摄像机在传输视频流的同时传递协助拼接信息,所述协助拼接信息包括:

流覆盖范围信息:为包括水平角度信息与竖直角度信息的角度范围信息,描述当前视频流最终成像时所涵盖的区域在整个全景中的位置;

时间戳信息:描述拍摄当前视频流的时间;

摄像机矩阵信息:包括外参数以及内参数,所述外参数包括摄像机的旋转矩阵与平移矩阵,旋转矩阵与平移矩阵共同描述了如何把点从世界坐标系转换到摄像机坐标系,旋转矩阵描述世界坐标系的坐标轴相对于摄像机坐标轴的方向,平移矩阵描述了在摄像机坐标系下空间原点的位置;内参数包括焦距及成像平面坐标系到像素坐标系的变换。

较佳的,每个摄像机传输的视频流都作为独立的视频流传输。

与现有技术相比,本发明具有如下的有益效果:

本发明通过结合中间节点计算能力和用户视野信息等用户端反馈信息,可以有效降低处理时延、减少带宽开销,从而整体提高用户的消费体验。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为一种现有的基于多摄像机的全景视频采集示意图;

图2为本发明与传统传输方法融合的工作流程图;

图3为本发明与传统传输方法融合的传输原理图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。

如图2、图3所示,本发明提供的一种基于节点计算的全景视频传输方法,包括中间节点,中间节点执行:

信息获取步骤:实时获取用户终端的反馈信息,反馈信息至少包括:用户视野信息、用户网络状况信息与用户终端处理能力信息;

拼接步骤:根据用户视野信息计算用户视野区域,选择包含用户视野区域的视频流进行拼接,得到处理后的视频流;

传输决策步骤:根据用户网络状况信息选择传输方案,针对处理后的视频流提取出传输区域,将传输区域编码传输至对应的用户终端;

传输方案包括无冗余传输和冗余传输,在无冗余传输中,传输区域为用户视野区域,在冗余传输中,传输区域为用户视野区域加冗余区域,冗余区域根据用户网络状况信息和用户终端处理能力信息计算得到。

本发明的传输方案包括无冗余传输和冗余传输两种传输状态,与传统的全拼接方法并不冲突,而且可以共存。

无冗余传输状态:当带宽情况良好,即传输环境可针对用户视野变化迅速做出反应时,中间节点根据用户视野信息计算用户视野区域作为传输区域,然后选取包含用户视野区域的视频流进行拼接,并截取传输区域,编码传输到用户终端解码呈现,即无冗余传输方案。

冗余传输状态:当带宽情况较差,即传输环境无法及时对用户头动作出反应时,采取基于用户视野的冗余传输方案,即综合考虑网络带宽状况、用户视野信息以及用户终端处理能力等用户终端的反馈信息,计算出待传输的最佳区域,并根据最佳区域选择对应的视频流进行拼接,将最佳区域作为传输区域进行传输。具体的,根据用户视野信息计算用户视野区域,根据用户网络状况信息与用户终端处理能力信息计算冗余区域,用户视野区域与所述冗余区域共同构成传输区域(即上述最佳区域),选择包含用户视野区域以及冗余区域的视频流进行拼接,得到处理后的视频流。

在上述冗余传输状态的基础上,中间节点除了传输统一编码的最佳区域,也可对用户视野区域以及冗余区域进行不等质量编码传输至对应的用户终端,即降低冗余区域的编码质量。最佳区域的范围一般大于用户视野区域,可有效避免因网络延迟造成的用户视野丢失情况。用户终端接收到最佳区域后,还需要进一步进行映射与渲染,但由于数据量比较小,因此花费的时间很少。

为了实现以上两种拼接方案,需要在摄像机传输视频流至中间节点的时同时传递相应的协助拼接信息来协助进行中间节点拼接,该协助拼接信息需要包含以下信息:

A.流覆盖范围CoverageRange信息。描述当前视频流最终成像时所涵盖的区域在整个全景中的位置,为包括水平和竖直角度信息的角度范围信息。通过角度覆盖范围与用户视野信息的初步对比,可快速地找到用户视野信息所涉及的摄像机流,以进行部分拼接。

B.时间戳Timestamp信息。描述拍摄当前视频流的时间,指导云服务器的拼接。因为多路视频流到达云服务器的时间可能存在差异,但是所拼接的内容一定是同一时刻录制的,所以需要时间戳来保证同步性。

C.摄像机矩阵CameraMatrix信息:在进行拼接时需要将不同摄像机拍摄的内容映射到平移坐标系下,因此需要利用摄像机矩阵的相关参数。摄像机矩阵分为两个部分,摄像机内参数矩阵与外参数矩阵。在进行全景拼接时,可以通过前几帧图像的具体内容来计算摄像机的内外参数,但为了尽可能的减少延时,建议将摄像机的内外参数保存在信息中协助拼接。外参数包括摄像机的旋转矩阵与平移矩阵,二者共同描述了如何把点从世界坐标系转换到摄像机坐标系,旋转矩阵描述世界坐标系的坐标轴相对于摄像机坐标轴的方向,平移矩阵描述了在摄像机坐标系下空间原点的位置;内参数包括焦距及成像平面坐标系到像素坐标系的变换;内外参数组合到一起可得摄像机矩阵,利用该矩阵,可将摄像机拍摄的图像投影变换到同一个坐标系下进行拼接。

需注意,以上信息为协助中间节点进行拼接的必须信息,但不局限于以上信息。

为了实现冗余与非冗余传输方案的判断,用户端需要向中间节点发送反馈信息,该反馈信息包括:

A.用户视野信息:描述用户当前观看的视频内容位置信息;

B.用户网络状况信息:描述用户当前网络的传输状况,包括带宽,延迟;

C.用户终端处理能力信息:描述用户本地处理器的计算能力,包括吞吐量,响应时间与cpu占用率。

需注意,以上信息为协助中间节点进行方案选取的必须信息,但不局限于以上信息。

基于上述一种基于节点计算的全景视频传输方法,本发明还提供一种基于节点计算的全景视频传输系统,包括中间节点,所述中间节点包括:

信息获取模块:实时获取用户终端的反馈信息,反馈信息至少包括:用户视野信息、用户网络状况信息与用户终端处理能力信息;

拼接模块:根据用户视野信息计算用户视野区域,选择包含用户视野区域的视频流进行拼接,得到处理后的视频流;

传输决策模块:根据用户网络状况信息选择传输方案,针对处理后的视频流提取出传输区域,将传输区域编码传输至对应的用户终端;

传输方案包括无冗余传输和冗余传输,在无冗余传输中,传输区域为用户视野区域,在冗余传输中,传输区域为用户视野区域加冗余区域,冗余区域根据用户网络状况信息和用户终端处理能力信息计算得到。

在冗余传输中,传输决策模块还包括:对用户视野区域以及冗余区域进行不等质量编码传输至对应的用户终端,即降低冗余区域的编码质量。

在反馈信息中,用户视野信息描述用户当前观看的视频内容位置信息;用户网络状况信息描述用户当前网络的传输状况,包括带宽和延迟;用户终端处理能力信息描述用户终端的计算能力,包括吞吐量,响应时间与cpu占用率。

拼接前的视频流由摄像机传输至中间节点,每个摄像机传输的视频流都作为独立的视频流传输,摄像机在传输视频流的同时传递协助拼接信息,协助拼接信息包括:

流覆盖范围:为包括水平角度信息与竖直角度信息的角度范围信息,描述当前视频流最终成像时所涵盖的区域在整个全景中的位置;

时间戳:描述拍摄当前视频流的时间;

摄像机矩阵:包括外参数以及内参数,外参数包括摄像机的旋转矩阵与平移矩阵,旋转矩阵与平移矩阵共同描述了如何把点从世界坐标系转换到摄像机坐标系,旋转矩阵描述世界坐标系的坐标轴相对于摄像机坐标轴的方向,平移矩阵描述了在摄像机坐标系下空间原点的位置;内参数包括焦距及成像平面坐标系到像素坐标系的变换。

以观看球赛为例,采取MMT(MPEG Media Transport)的传输方式。全景视频包含了球场全部信息,一共有五台相机进行拍摄,每个相机产生一路视频流,中间节点收集用户视野信息,在非冗余传输的情况下,中间节点根据用户视野信息选择相关相机拍摄的视频流,然后进行拼接、渲染,然后在形成的曲面视频上提取对应用户视野信息正好大小的矩形区域,进行反映射到平面,然后编码进行流化传输,当用户收到对应的视频流之后可直接进行观看,本地只需进行解码操作。如果是冗余传输,中间节点需要收集用户的视野信息、用户本地处理能力以及网络性能等反馈信息,然后计算出传输的最佳区域,然后选取与该最佳区域相关的视频流进行拼接渲染,然后提取该最佳区域进行编码传输,用户本地接收到该数据之后还需要进一步处理,因为最佳区域大于用户视野信息,所以需要映射到球面后方可观看,但是因为数据量较小,一般本地服务器都可轻易完成。

在MMT传输的情况下,对应的与相机流一同发送的信息描述如表一所示:

表一 MMT-based multi-source stream descriptor

Figure BDA0001824336740000071

descriptor_tag:指示描述子的类型;

descriptor_length:指定从字段后的下一个字节到描述符最后一个字节的字节的字节数;

Timestamp:用于流同步的时间信息,记录拍摄时间;

CoverageRange:说明该流最终成像时覆盖的角度范围,用于判断用户视野信息区域是否涉及该相机拍摄内容;

CameraMatrix()包含拍摄该流的相机的矩阵信息;

CameraIntrinsics为相机内参数矩阵,CameraExtrinsics为相机外参数矩阵需要注意的是,表一只是以上述字段为例对拼接信息说明,并不局限于以上字段及其大小。

用户反馈的信息如表二所示:

表二 MMT-based User feedback descriptor

Figure BDA0001824336740000081

descriptor_tag:指示描述子的类型;

descriptor_length:指定从字段后的下一个字节到描述符最后一个字节的字节的字节数;

UserFov:指示用户视野信息

UserNet:指示用户网络状况参数

UserCal:指示用户终端处理能力参数

需要注意的是,表二只是以上述字段为例对拼接信息说明,并不局限于以上字段及其大小。

本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种用于IPTV运营的管理方法及平台

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类