基于区块链的多视点视频发送方法、服务器及存储介质

文档序号:31860745发布日期:2022-10-19 04:47阅读:45来源:国知局
基于区块链的多视点视频发送方法、服务器及存储介质

1.本发明涉及视频传输领域,更具体的涉及一种多视点视频传输方法。


背景技术:

2.随着图像处理技术和硬件设备规格的提高,提供视频的方式正逐渐从只显示一个固定视点视图的方式转变为向用户提供多个视点视图的方式。为了让用户能够身临其境地观看视频,近年以来正在以各种形式提供视频服务,例如vr(虚拟现实)、ar(增强现实)等。为了能够使得用户观看任意视点的视频图像,需要使用视点合成方法得到未捕获的中间视点视频图像,但由于不可能将任意视点的视频内容都存储在内容服务器,因此需要在服务器或客户端处进行视点图像生成。视点图像生成可以在服务器或客户端处理,一般情况下考虑到现有计算机的容量和处理能力,通常在客户端处进行视点视频图像的合成。
3.但由于中间视点视频图像的生成需要基于原始视频和深度信息得到,考虑到网络延迟、计算时延等,影响用户观看视频图像的效果,尤其针对体育比赛、音乐会等对时延敏感的视频服务,由于提供的视频内容不够及时、稳定,有时将会严重影响用户观看效果。


技术实现要素:

4.本发明的目的是克服现有技术的上述不足,提供一种能够及时稳定的得到多视点视频、提高任意视点观看流畅度的多视点视频传输方法。本发明的技术方案如下:
5.一种基于区块链的多视点视频发送方法,其特征在于,包括以下步骤:
6.s1:接收多视点视频图像以及采集设备配置信息,所述多视点视频图像中每个视点的视频图像由位于多个不同视角位置的采集设备拍摄得到;所述采集设备配置信息包括采集设备的数量和位置信息。
7.s2:将所述采集设备配置信息发送给服务描述文件生成器,所述服务器描述文件生成器用于生成服务描述文件,服务器基于服务描述文件向客户端提供多视点服务;
8.s3:将上述多个采集设备采集的rgb视频数据分别转换为yuv格式,通过深度估计生成深度视频数据,基于上述yuv格式的视频数据和所述深度视频数据生成3d扭曲视频数据;
9.s4:将所述yuv格式的多视点视频数据以及3d扭曲视频数据进行h.265编码并获得h.265格式的多视点视频数据;
10.s5:为所述h.265格式的多视点视频数据中的每个视点生成对应的媒体管理文档,所述媒体管理文档包含多视点视频数据的访问地址;
11.s6:将所述媒体管理文档发送给服务描述文件生成器,以便每个媒体管理文档通过对应的视点位置映射到服务描述文件中;
12.s7:服务描述文件生成器通过接收到的采集设备参数信息、媒体管理文档生成服务描述文件;
13.s8:构建区块链数据通信网络模型,并针对待传输的服务描述文件采用如下函数
进行区块加密:其中,δf表示单位时间传输密钥区块的信息变化量,e表示数据转化量,f0和f1分别为待传输的服务描述文件的暗文和明文,a表示数据传输经过的区块下限,b表示数据传输经过的区块上限;
14.s9:将处理后的服务描述文件通过上述区块链数据通信网络发送给客户端;客户端通过服务描述文件访问媒体管理文档并选择对应的视点图像,基于客户端的观看请求将对应视点的视频数据通过内容分发网络发送给客户端。
15.所述客户端基于所述服务描述文件生成视点地图以展示视点位置,所述视点位置包含任意视点信息,客户端能够通过视点地图选取所要观看的视点图像。
16.当客户端选择原始视点图像时,通过服务描述文件中包含的媒体管理文档访问对应的视点图像进行观看,所述原始视点图像为所述采集设备采集得到的视点图像。
17.当客户端选择虚拟视点图像时,该所述原始视点图像以及所述扭曲视频数据生成上述虚拟视点图像并发送给客户端。
18.根据服务描述文件,计算客户端选择的视点位置与当前正在观看的视点位置的距离,在所述距离小于阈值时,向客户端提供正在观看的视点视频图像。
19.在所述距离大于或等于阈值时,根据客户端选择的视点对应的媒体管理文档,向客户端提供对应视点的视频数据。
20.所述区块链宽度为w={m(x,y)|x∈m1∩ms,y∈m}(1),其中,m(x,y)表示数据通信网络中的主区块,x与y分别表示主区块中的横、纵坐标,m表示所有区块的集合,m1表示存活区块的集合,ms表示空闲区块的集合。
21.其中,加密算法采用rsa非对称加密算法。
22.本发明的多视点视频传输方法,通过额外发送一个服务描述文件,可以整体控制任意视点视频的提供,服务描述文件包括视点相关的映射信息,该映射信息可以减少因为网络环境而可能发生的延迟,当用户切换了不同的视点时,能够提供无缝衔接的观看效果。并且采用区块链技术防止服务描述文件被篡改,从而保证了多视点视频图像传输的安全性。
附图说明
23.图1是本发明实施例提供的多视点视频传输方法的流程图;
24.图2是本发明实施例提供的多视点视频传输方法涉及的服务器的示意图;
25.图3是本发明实施例提供的改进的空洞填充算法的示意图;
26.图4是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
27.在提供多视点视频观看服务时,必须要考虑以下几个重要因素:响应速度、可扩展性、适应性以及身临其境的效果。
28.响应速度要求用户必须能够实时收到系统的响应,并且在用户请求改变视图后获取新的视频内容的延迟时间应当尽可能小,影响因素包括与网络相关的延迟和处理延迟。可扩展性要求即使多个客户端同时连接以请求另一个视点的视频图像,也应该能够顺利处
理。适应性要求即使网络环境动态变化,它也应该能够为异构网络上的客户端提供最佳质量。身临其境要求用户必须能够选择任何观点,并应提供流畅且响应迅速的视频服务。
29.上述要求对提供多视点视频观看服务提出了较大的挑战,本发明的重点在于实现对多视点视频传输的整体控制,从整体上改善上述多个因素对观看多视点视频内容的影响。
30.在摄像机等采集设备捕获视点图像文件时,通常每台摄像机按计算得到的距离进行排列。距离可以根据具体情况变化,例如摄像机规格或视频服务的整体舞台尺寸。这也取决于提供服务的方式,例如整体服务结构类型可以是圆顶、立方体或球形结构。由于摄像机的距离、数量等配置信息包含了深度信息、视点相关信息等,因此在开始拍摄前,上述信息需要被传输给服务描述文件生成器,以便后续得到并传输任意视点图像。
31.在多视点视频服务中,通常包含了多个不同的视点视频图像。但通常两个视点图像被用于合成中间视点图像,包括使用左右原始视频图像、左右深度视频图像以及合成所需的信息进行。通常方法包括3d扭曲、空洞填充等。但是现有技术中在客户端生成中间视点图像大约需要1秒左右,用户需要相当长的时间才能接收到中间视点视频内容。因此,在服务器端通过服务描述文件尽可能地缩短向用户提供多视点视频内容的时间。
32.参考图1,首先,将上述多个采集设备采集的rgb视频数据分别转换为yuv格式,通过深度估计生成深度视频数据,基于上述yuv格式的视频数据和所述深度视频数据生成3d扭曲视频数据;
33.将所述yuv格式的多视点视频数据以及3d扭曲视频数据进行h.265编码并获得h.265格式的多视点视频数据;将多视点视频数据以及3d扭曲视频数据由h.265编码器进行h.265编码,可以减小视点图像和3d扭曲图像之间的差异。为所述h.265格式的多视点视频数据中的每个视点生成对应的媒体管理文档,所述媒体管理文档包含多视点视频数据的访问地址。每个视点流都有一个对应的媒体管理文档,并且还有一个管理整个服务的媒体管理文档。媒体管理文档可以元文件的形式存在,客户端可以解析元文件并下载相应的视点图像以提供视频观看服务。
34.参考图2,视频采集完成后,可以将采集设备的数量、采集设备的距离信息发送给服务描述文件生成器,并且将媒体管理文档发送给服务描述文件生成器从而进行服务配置。服务描述文件生成器通过接收到的采集设备参数信息、媒体管理文档生成服务描述文件;基于所述服务描述文件生成视点地图以展示视点位置,所述视点位置包含任意视点信息,客户端能够通过视点地图选取要观看的视点图像。
35.通过区块链数据通信网络发送服务描述文件给客户端,客户端通过服务描述文件访问媒体管理文档并选择对应的视点图像,基于客户端的观看请求将对应视点的视频数据通过内容分发网络发送给客户端。
36.当客户端选择原始视点图像时,通过服务描述文件中包含的媒体管理文档访问对应的视点图像进行观看,所述原始视点图像为所述采集设备采集得到的视点图像。当客户端选择虚拟视点图像时,该所述原始视点图像以及所述扭曲视频数据生成上述虚拟视点图像并发送给客户端。
37.根据服务描述文件,计算客户端选择的视点位置与当前正在观看的视点位置的距离,在所述距离小于第一阈值时,向客户端提供正在观看的视点视频图像。在所述距离大于
或等于第一阈值时,根据客户端选择的视点对应的媒体管理文档,向客户端提供对应视点的视频数据。此外,在具体实现过程中,将视点移动到更近的视图而不是移动到更远的视图更加顺畅,从而能够提供更加平滑的视频观看效果。因此,在上述距离过大并且超过第二阈值时,可以考虑仅提供当前视点相邻的视点图像进行显示。
38.可以使用改进的空洞填充算法生成虚拟视点图像,从而进一步提高服务器向客户端提供视点图像的速度。参考图3,假设区域s是要被修复的区域,定义其边界为δs,属于区域s的像素p将被其邻域b
ξ
(p)修复,其邻域大小为ξ。这里,我们设置ξ为3,假设考虑灰度图像,则彩色图像通过以下方式得到。首先,给定图像i(q)和q点的梯度值

i(q),计算点p中图像的近似值iq(p):
[0039][0040]
接下来,将点p修复为b
ξ
(p)中所有q点的函数:
[0041][0042]
权重函数ω(p,q)定义为三个变量的乘积:
[0043]
ω(p,q)=dir(p,q)
·
dst(p,q)
·
lev(p,q)(3)。其中,方向向量dir(p,q)确保像素的贡献接近法线方向,几何距离向量dst(p,q)减少了在几何上远离p的像素的贡献。水平距离向量lev(p,q)确保通过p靠近边界的像素比更远的像素贡献更多。上述空洞填充算法能够提高现有技术中虚拟视点合成的速度,使服务器能够更加高效地向客户端提供虚拟视点图像
[0044]
基于区块链技术传输服务描述文件,从而防止服务描述文件被篡改,提高服务描述文件传输的安全性,进一步保证多视点视频的显示效果。首先建立区块链,例如可使用overlay结构建立数据通信网络模型,连接区块链中的各个区块,假设上述结构下区块链的宽度为w={m(x,y)|x∈m1∩ms,y∈m}(4),其中,m(x,y)表示数据通信网络中的主区块,x与y分别表示主区块中的横、纵坐标,m表示所有区块的集合,m1表示存活区块的集合,ms表示空闲区块的集合。假设mc表示数据通信网络模型,以传输链路的中心为节点,区块之间的连接为mc=λm∩w(5),其中λ是邻居区块。设λ值为n,此时邻居区块为n+1和n-1,将n与n+1或n-1与n代入式(5)可得到连续存在的两个区块信息,从而实现多个数据传输区块的连接。
[0045]
本发明采用rsa非对称加密算法完成加密,提高破解密钥的难度,确保服务描述文件传输的可靠性。所采用的加密函数为其中,δf表示单位时间传输密钥区块的信息变化量,e表示数据转化量,f0和f1分别为待传输的服务描述文件的暗文和明文,a表示数据传输经过的区块下限,b表示数据传输经过的区块上限。采用上述加密方法确保了数据传输的安全性。
[0046]
此外,本发明提供一种服务器,所述服务器用于包含服务描述文件生成器,所述服务器用于执行上述的多视点视频传输方法。
[0047]
此外,本发明提供一种计算机可读的记录介质,该记录介质上存储有可执行指令,该指令被处理器执行时使该处理器执行上述的多视点视频的传输方法。
[0048]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括
一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
[0049]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读的记录介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读的记录介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读的记录介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0050]
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0051]
本领域的普通技术人员可以理解实现上述实施方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读的记录介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1