一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自由视点视频画面拼接方法、终端及可读存储介质与流程

2022-02-20 04:33:46 来源:中国专利 TAG:


1.本发明涉及自由视点领域,尤其涉及一种自由视点视频画面拼接方法、终端及可读存储介质。


背景技术:

2.自由视点应用允许观看者在一定范围内以连续视点的形式观看视频。观看者可以设定视点的位置、角度,而不再局限于一个固定的摄像机视角。该应用往往需要多个摄像机同时拍摄,同时生成多个视点的视频,一些自由视点应用中,还需要生成多个视点的视频对应的深度图。
3.传统自由视点应用往往使用空域拼接的方式。对于空域拼接的方式,由于编码以及终端解码播放设备支持的编解码计算能力有限,最大编解码分辨率受到限制,因此单路视频的分辨率以及支持传输的视点数之间面临严重的冲突,导致单路视频的分辨率低。
4.上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。


技术实现要素:

5.本发明的主要目的在于提供一种自由视点视频画面拼接方法,旨在通过将同一时刻不同视点对应的视频画面拼接生成多个视频帧并发送至解码端,解码端接收视频帧并从所述视频帧中截取显示当前视点对应的图像,以减少每个视频帧拼接的画面,从而提高分辨率,解决视频分辨率低的问题。
6.为了实现上述目的,本发明提供一种自由视点视频画面拼接方法,所述自由视点视频画面拼接方法包括以下步骤:
7.接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;
8.接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频序列;
9.获取所述视频序列中所述的目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张视频帧;
10.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;
11.将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。
12.进一步地,所述根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像的步骤包括:
13.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识,确定所述目标视点对应的目标图像所在的目标视频帧以及所述目标视频帧中所述目标图像的位置信息;
14.根据所述位置信息在所述目标视频帧中截取所述目标视点对应的目标图像。
15.进一步地,当显示端请求发送深度图像时,所述获取所述视频序列中所述目标时
间戳对应的视频帧组的步骤之后,还包括:
16.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像与对应的深度图像;
17.将所述目标图像与对应的深度图像发送至显示端,以供所述显示端根据所述目标图像与对应的深度图像生成显示画面。
18.进一步地,所述获取所述视频序列中所述目标时间戳对应的视频帧组的步骤包括:
19.根据所述视频序列确定所述目标时间戳对应的视频帧组,并确定序列头或者图像头中的排布信息。
20.此外,为了实现上述目的,本发明还提供一种自由视点视频画面拼接方法,应用于编码端,所述自由视点视频的传输方法包括:
21.获取各个视点对应的图像以及预设排布信息;
22.根据所述预设排布信息将时间戳相同的图像拼接成至少两个视频帧,其中,相同时间戳对应不同视频帧中的图像对应的视点不同;
23.根据时间戳相同的视频帧生成视频帧组,其中,所述视频帧组至少包括两张视频帧;
24.根据播放顺序将不同时间戳对应的所述视频帧组生成视频序列,并将所述视频序列以及所述预设排布信息输入编码器,生成目标视频码流;
25.将所述目标视频码流发送至解码端,以供所述解码端解码所述目标视频码流获取对应的视频序列。
26.进一步地,当获取到各个视点对应的图像以及对应的深度图像时,所述根据所述预设排布信息将时间戳相同的图像拼接成至少两个视频帧的步骤包括:
27.根据所述预设排布信息将时间戳相同的图像以及对应的深度图像拼接成至少两个视频帧,其中,所述图像以及对应的深度图像拼接在同一视频帧中。
28.进一步地,所述将所述视频序列以及所述排布信息输入编码器,生成目标视频码流的步骤包括:
29.将所述视频序列输入编码器生成原始视频码流;
30.根据所述预设排布信息生成视频帧的排布信息,其中,所述视频帧的排布信息包含所述视频帧中每一图像的视点标识和位置信息,当所述视频帧中包括深度图像时,所述视频帧的排布信息还包含每一深度图像对应的视点标识和位置信息;
31.将所述视频帧的排布信息添加至所述原始视频码流的序列头或者所述视频帧的图像头中,生成目标视频码流。
32.为了实现上述目的,本发明还提供一种终端,所述终端为解密端,所述解码端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被所述处理器执行时,实现如上所述的自由视点视频画面拼接方法的步骤。
33.为了实现上述目的,本发明还提供一种终端,所述终端为编码端,所述编码端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被所述处理器执行时,实现如上所述的自由视点视
频画面拼接方法的步骤。
34.为了实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被处理器执行时实现如上所述任一项所述的自由视点画面拼接方法的步骤。
35.本发明的技术方案中,接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频序列;获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张的视频帧;根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。如此,本发明通过将同一时刻不同视点对应的视频画面拼接生成多个视频帧,并将生成的视频帧发送至解码端,解码端接收视频帧,并根据视频帧的排布信息以及当前视点对应的视点标识从所述视频帧中截取显示当前视点对应的图像,从而减少一个视频帧拼接的视频画面,以达到提高分辨率的目的。
附图说明
36.图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
37.图2是本发明自由视点视频画面拼接方法一实施例的流程示意图;
38.图3是本发明自由视点视频画面拼接方法一实施例的流程示意图;
39.图4是本发明自由视点视频画面拼接方法一实施例的拼接图像的第一实例图;
40.图5是本发明自由视点视频画面拼接方法一实施例的拼接图像的第二实例图;
41.图6是本发明自由视点视频画面拼接方法一实施例的拼接图像的第三实例图。
42.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
43.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
44.本发明的主要技术方案是:
45.接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;
46.接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频序列;
47.获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张视频帧;
48.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;
49.将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。
50.在相关技术中,由于编码以及终端解码播放设备支持的编解码计算能力有限,最大编解码分辨率受到限制,因此单路视频的分辨率以及支持传输的视点数之间面临严重的冲突,导致单路视频的分辨率低。
51.本发明的技术方案中,接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;接收编码端发送的视频码流,通过解码器解码所述
视频码流,获取视频序列;获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张视频帧;根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。如此,本发明通过将同一时刻不同视点对应的视频画面拼接生成多个视频帧,并将生成的视频帧发送至解码端,解码端接收视频帧,并根据视频帧的排布信息以及当前视点对应的视点标识从所述视频帧中截取显示当前视点对应的图像,从而减少一个视频帧拼接的视频画面,以达到提高分辨率的目的。
52.如图1所示,图1是本发明实施例方案涉及的终端的硬件运行环境示意图。
53.如图1所示,该终端可以包括:处理器1001,例如cpu,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
54.本领域技术人员可以理解,图1中示出的终端的结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
55.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及自由视点视频画面拼接程序。
56.在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的解码端的控制程序,并执行以下操作:
57.接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;
58.接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频序列;
59.获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张视频帧;
60.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;
61.将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。
62.进一步地,处理器1001可以调用存储器1005中存储的解码端的控制程序,还执行以下操作:
63.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识,确定所述目标视点对应的目标图像所在的目标视频帧以及所述目标视频帧中所述目标图像的位置信息;
64.根据所述位置信息在所述目标视频帧中截取所述目标视点对应的目标图像。
65.进一步地,处理器1001可以调用存储器1005中存储的解码端的控制程序,还执行以下操作:
66.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像与对应的深度图像;
67.将所述目标图像与对应的深度图像发送至显示端,以供所述显示端根据所述目标
图像与对应的深度图像生成显示画面。
68.进一步地,处理器1001可以调用存储器1005中存储的解码端的控制程序,还执行以下操作:
69.根据所述视频序列确定所述目标时间戳对应的视频帧组,并确定序列头中或者图像头中的排布信息。
70.进一步地,处理器1001可以调用存储器1005中存储的编码端的控制程序,还执行以下操作:
71.获取各个视点对应的图像以及预设排布信息;
72.根据所述预设排布信息将时间戳相同的图像拼接成至少两个视频帧,其中,相同时间戳对应不同视频帧中的图像对应的视点不同;
73.根据时间戳相同的视频帧生成视频帧组,其中,所述视频帧组至少包括两张视频帧;
74.根据播放顺序将不同时间戳对应的所述视频帧组生成视频序列,并将所述视频序列以及所述预设排布信息输入编码器,生成目标视频码流;
75.将所述目标视频码流发送至解码端,以供所述解码端解码所述目标视频码流获取对应的视频序列。
76.进一步地,处理器1001可以调用存储器1005中存储的编码端的控制程序,还执行以下操作:
77.根据所述预设排布信息将时间戳相同的图像以及对应的深度图像拼接成至少两个视频帧,其中,所述图像以及对应的深度图像拼接在同一视频帧中。
78.进一步地,处理器1001可以调用存储器1005中存储的编码端的控制程序,还执行以下操作:
79.将所述视频序列输入编码器生成原始视频码流;
80.根据所述预设排布信息生成视频帧的排布信息,其中,所述视频帧的排布信息包含所述视频帧中每一图像的视点标识和位置信息,当所述视频帧中包括深度图像时,所述视频帧的排布信息还包含每一深度图像对应的视点标识和位置信息;
81.将所述视频帧的排布信息添加至所述原始视频码流的序列头或者所述视频帧的图像头中,生成目标视频码流。
82.如图2所示,本发明一实施例中,所述自由视点视频画面拼接方法应用在解码端,包括以下步骤:
83.步骤s11,接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;
84.在本实施例中,当显示端有显示需求的时候,会发送显示请求,根据所述显示请求可获取显示端需要的画面对应的时间点以及对应视点的视点标识。当显示端需要显示真实视点的画面时,根据所述显示请求可获取画面对应的目标时间戳以及真实视点对应的视点标识;当显示端需要显示虚拟视点的画面时,可根据所述显示请求获取画面对应的目标时间戳以及虚拟视点的相邻视点对应的视点标识,其中,至少确定两个相邻视点对应的视点标识。
85.步骤s12,接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频
序列;
86.在本实施例中,接收编码端发送的视频码流,通过解码器对接收到的视频码流进行解码,获取视频序列以及排布信息。所述视频序列是由不同时间戳对应的视频帧组组成,所述排布信息在所述视频序列的序列头中或者在视频帧的图像头中。
87.步骤s13,获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张视频帧;
88.在本实施例中,所述视频序列是由不同时间戳对应的视频帧组组成,根据显示请求可获取显示端需要显示的画面对应的目标时间戳,根据所述目标时间戳在视频序列中查找时间戳与所述目标时间戳相同的视频帧组。时间戳与所述目标时间戳相同的所述视频帧组中的视频帧由各个视点的摄像机在目标时间戳对应的时刻点拍摄的视频画面拼接而成。每个视频帧组中包括时间戳相同的至少两张视频帧,所述视频帧可以是多个视点对应的画面拼接而成,而可以仅有一个视点对应的画面。
89.步骤s14,根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;
90.在本实施例中,所述视频帧组的排布信息包括所述视频帧组中的每一视频帧的排布信息,所述视频帧组的排布信息包括视点标识、视点图像于视频帧的坐标以及视点图像对应的宽高。根据目标视点对应的视点标识在所述视频帧组的排布信息中查找匹配的视点标识,并根据所述视点标识确定所述目标视点对应的目标图像所在的目标视频帧,并根据排布信息中视点图像于视频帧的坐标以及视点图像对应的宽高确定在目标视频帧中目标图像所在的位置以及目标图像的大小,截取所述目标图像。
91.步骤s15,将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。
92.在本实施例中,将从目标视频帧中截取的目标图像发送至显示端,所述显示端接收到所述目标图像后,根据所述目标图像生成显示画面,并在显示屏中显示所述显示画面。
93.综上所述,在本发明中,接收显示端发送的显示请求,根据所述显示请求获取目标时间戳以及目标视点对应的视点标识;接收编码端发送的视频码流,通过解码器解码所述视频码流,获取视频序列;获取所述视频序列中所述目标时间戳对应的视频帧组,其中,每个所述视频帧组中包括时间戳相同的至少两张的视频帧;根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像;将所述目标图像发送至显示端,以供所述显示端根据所述目标图像生成显示画面。如此,本发明通过将同一时刻不同视点对应的视频画面拼接生成多个视频帧,并将生成的视频帧发送至解码端,解码端接收视频帧,并根据视频帧的排布信息以及当前视点对应的视点标识从所述视频帧中截取显示当前视点对应的图像,从而减少一个视频帧拼接的视频画面,以达到提高分辨率的目的。
94.在本发明一实施例中,所述步骤s14包括:
95.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识,确定所述目标视点对应的目标图像所在的目标视频帧以及所述目标视频帧中所述目标图像的位置信息;
96.根据所述位置信息在所述目标视频帧中截取所述目标视点对应的目标图像。
97.在本实施例中,所述视频帧组的排布信息包括各个视点对应的视点标识、视点对应图像在视频帧中的坐标以及视点对应图像的宽高。根据目标视点对应的视点标识在所述
视频帧组的排布信息中查找与所述目标视点对应的视点标识匹配的视点标识,并确定所述目标视点对应的目标图像所在的目标视频帧以及在所述目标视频帧中所述目标图像的位置信息,即所述目标图像在目标视频帧中的坐标以及所述目标图像对应的宽高。根据所述位置信息截取所述目标图像,例如:在获取目标视点对应的目标图像的位置信息后,根据所述位置信息中的坐标找到所述目标图像左上角像素在目标视频帧中的坐标;在确定所述目标图像在视频帧中坐标后,根据所述目标图像对应的宽高确定所述目标图像在目标视频帧中的拼接区域,从而截取所述拼接区域中的图像,所述拼接区域中的图像为目标图像。如此,通过目标视点对应的视点标识以及视频帧组的排布信息确定所述目标视点对应的目标图像所在的视频帧以及在视频帧中的拼接区域,从而准确、快速的截取目标图像并发送至显示端。
98.在本发明一实施例中,当显示端请求发送深度图像时,所述步骤s13之后,还包括:
99.根据所述视频帧组的排布信息以及所述目标视点对应的视点标识截取目标图像与对应的深度图像;
100.将所述目标图像与对应的深度图像发送至显示端,以供所述显示端根据所述目标图像与对应的深度图像生成显示画面。
101.在本实施例中,当显示端请求发送深度图像时,需要编码端截取并发送所述显示请求中目标视点对应的视频画面以及深度图像,以供显示端根据所述目标视点对应的视频画面以及深度图像生成显示画面并在显示屏中显示。例如,当显示端需要显示一个虚拟视点对应的画面时,需要所述虚拟视点左右两侧相邻视点对应的图像以及深度图像,根据相邻视点的图像以及深度图像合成所述虚拟视点的图像画面,此时,所述显示端需要确定相邻视点对应的视点标识并向解码端发送显示请求;所述解码端根据接收到的显示请求获取相邻视点的视点标识,并根据所述相邻视点的视点标识以及视频帧组的排布信息确定各个所述相邻视点对应的目标图像所在的目标视频帧,由于各个视点对应的图像以及深度图像拼接在同一视频帧中,故可在所述目标视频帧中截取对应的相邻视点的目标图像以及对应的深度图像;将截取到的所述相邻视点对应的目标图像以及对应的深度图像发送至显示端,以供显示端根据各个相邻视点对应的图像以及深度图像生成显示图像。
102.在本发明一实施例中,所述步骤s13包括:
103.根据所述视频序列确定所述目标时间戳对应的视频帧组,并确定序列头中或者图像头中的排布信息。
104.在本实施例中,解码编码端发送的视频码流得到对应的视频序列后,查找时间戳与显示请求对应的时间戳相同的视频帧组,并获取存储于序列头或者图像头中的排布信息,通过所述排布信息以及目标视点对应的视点标识,可定位目标视点对应的目标图像所在的视频帧并确定所述目标图像在视频帧中的拼接区域,即所述拼接区域中的图像为目标视点对应的目标图像。当视频序列中多个视频帧的排布信息相同时,可将所述排布信息编号并插入序列头中,以所述排布信息拼接图像的视频帧可引用对应的编号,以根据所述编号找到视频帧对应的排布信息。如此,通过将多个视频帧相同的排布信息存储于视频序列的序列头中,降低解码端需要接收的数据量。
105.如图3所示,在本发明一实施例中,所述自由视点视频的传输方法应用于编码端,包括以下步骤:
106.步骤s21,获取各个视点对应的图像以及预设排布信息;
107.在本实施例中,多个相机拍摄得到多个视点对应的图像,其中,一个相机可拍摄得到一个视点对应的图像,或一个相机可拍摄得到一个视点对应的图像以及对应的深度图像。多个相机将同一时刻拍摄到的图像发送至编码端。编码端根据预先设定的排布方式生成预设排布信息,所述预设排布信息中的一条信息描述一个视点图像或深度图像的相关信息,所述相关信息的具体格式为{x,y,w,h,view_id},其中,x、y为图像左上角像素在视频帧中的坐标,w、h为图像的宽高,view_id为视点标识。
108.步骤s22,根据所述预设排布信息将时间戳相同的图像拼接成至少两个视频帧,其中,相同时间戳对应不同视频帧中的图像对应的视点不同;
109.在本实施例中,根据预设排布信息将接收到的相机发送的图像拼接成为视频帧,即根据预设排布信息中图像的宽和高调整对应的所述视点图像或者所述深度图像的大小,将调整后的图像根据坐标拼接至对应视频帧中。拼接至同一个视频帧中的图像对应的时间戳相同,一个视频帧组中至少包括两个视频帧。例如,部署了27台摄像机进行拍摄,若将九个摄像机拍摄的图像拼接成为一个视频帧,则时间戳相同的视频帧就有三个,其中,每个视频帧拼接九个视点对应的图像,如图4所示,其中p1、p2...p9为九个摄像头拍摄的图像。
110.步骤s23,根据时间戳相同的视频帧生成视频帧组,其中,所述视频帧组至少包括两张视频帧;
111.在本实施例中,在获取各个相机拍摄的图像后,将各个相机拍摄的图像拼接成为视频帧,将时间戳相同的视频帧拼接生成视频帧组,其中,所述视频帧组至少包括时间戳相同的两张视频帧。
112.步骤s24,根据播放顺序将不同时间戳对应的所述视频帧组生成视频序列,并将所述视频序列以及所述预设排布信息输入编码器,生成目标视频码流。
113.在本实施例中,根据播放的先后顺序将不同时间戳对应的视频帧组进行排序,根据排序后的多个所述视频帧组生成视频序列,并将所述视频序列以及对应的排布信息输入编码器,生成目标视频码流。
114.步骤s525,将所述目标视频码流发送至解码端,以供所述解码端解码所述目标视频码流获取对应的视频序列。
115.在本实施例中,在编码器生成目标视频码流后,将所述视频码流发送至解码端,以供解码端通过解码器解码所述视频码流,获取对应的视频序列,并根据显示端发送的显示请求在所述视频序列中查找并截取所述显示请求需要的目标视点的图像画面。
116.综上所述,本发明获取各个视点对应的图像以及排布信息;根据所述排布信息将时间戳相同的图像拼接成至少两个视频帧,相同时间戳对应不同视频帧中的图像对应的视点不同;根据时间戳相同的视频帧生成视频帧组,其中,所述视频帧组至少包括两张视频帧;根据播放顺序将不同时间戳对应的所述视频帧组生成视频序列,并将所述视频序列以及所述排布信息输入编码器,生成目标视频码流。将所述目标视频码流发送至解码端,以供所述解码端解码所述目标视频码流获取对应的视频序列。如此,通过将同一时刻的多个视点对应的图像拼接成多个视频帧,以减少一个视频帧中拼接的图像数量,达到提高分辨率的目的。
117.在本发明一实施例中,当获取到各个视点对应的图像以及对应的深度图像时,所
述步骤s22包括:
118.根据所述预设排布信息将时间戳相同的图像以及对应的深度图像拼接成至少两个视频帧,其中,所述图像以及对应的深度图像拼接在同一视频帧中。
119.在本实施例中,当相机将当前时刻拍摄的图像以及深度图像发送至编码端后,编码端根据预设排布信息将时间戳相同的图像以及对应的深度图像进行拼接,其中,所述预设排布信息包括图像或深度图像左上角像素在视频帧中的坐标、图像或深度图像在视频帧中的宽高、对应的视点标识以及是否为深度图像。将时间戳相同的图像或深度图像拼接成至少两个视频帧且将图像与对应的深度图像拼接在同一视频帧中,如图5以及图6所示,其中,p1、p2、p3...p10为视点对应的图像,d1、d2、d3....d9及d21、d22、d23...d30为各视点对应的图像的深度图像,以便查找虚拟视点的相邻视点对应的图像与深度图像,从而生成虚拟视点对应的图像。
120.在本发明一实施例中,所述将所述视频序列以及所述预设排布信息输入编码器,生成目标视频码流的步骤包括:
121.将所述视频序列输入编码器生成原始视频码流;
122.根据所述预设排布信息生成视频帧的排布信息,其中,所述视频帧的排布信息包含所述视频帧中每一图像的视点标识和位置信息,当所述视频帧中包括深度图像时,所述视频帧的排布信息还包含每一深度图像对应的视点标识和位置信息;
123.将所述视频帧的排布信息添加至所述原始视频码流的序列头或者所述视频帧的图像头中,生成目标视频码流。
124.在本实施例中,将相同时间戳的视频帧组合成视频帧组,并根据所述视频帧组对应的时间戳的先后顺序,对各个视频帧组进行排序,最后生成视频序列。将所述视频序列输入编码器生成原始视频码流,并根据预设排布信息生成各个视频帧的排布信息,其中,每个所述视频帧的排布信息包含所述视频帧中每一图像对应的视点标识以及位置信息,以供解码端根据视点标识查找到对应图像的拼接区域,从而截取图像。当视频帧中拼接深度图像时,所述排布信息中也包含每一深度图像对应的视点标识以及位置信息。所述视频帧的排布信息可添加至原视频码流的序列头或者各个视频帧的图像头中。当视频序列中有多个视频帧的排布信息相同时,可将相同的排布信息编号并添加至序列头中,并在对应的视频帧中添加对应的编号,以供解码端识别所述视频帧的排布信息。如此,在视频序列中多个视频帧排布信息相同时,将所述排布信息添加至视频帧,解码端在接收到所述视频序列时可根据读取所述视频序列中的排布信息以及各个视频帧中包含的排布信息对应的编号,降低解码端需要接收的数据量。
125.为了实现上述目的,本发明还提供一种终端,所述终端为解密端,,所述解码端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被所述处理器执行时,实现如上所述的自由视点视频画面拼接方法的步骤。
126.为了实现上述目的,本发明还提供一种终端,所述终端为编码端,所述编码端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被所述处理器执行时,实现如上所述的自由视点视频画面拼接方法的步骤。
127.为了实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有自由视点视频画面拼接程序,所述自由视点视频画面拼接程序被处理器执行时实现如上所述任一项所述的自由视点画面拼接方法的步骤。
128.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
129.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
130.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献