视频编码方法及装置制造方法及图纸

技术编号:13382970 阅读:37 留言:0更新日期:2016-07-21 16:50
本发明专利技术公开了一种视频编码方法及装置,属于编码技术领域。所述方法包括:获取全景视频,全景视频由全景图像帧组成;将全景视频划分成N个视角视频序列,每个视角视频序列由全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且N个视角视频序列的水平视角的总和为全景图像帧的总水平视角,N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;对N个视角视频序列分别进行编码,得到N组编码数据;确定用户的观看视角;选择水平视角包括观看视角的视角视频序列,将视角视频序列的编码数据提供给用户。本发明专利技术解决了接收并解码全景视频中所有的全景图像帧的编码数据,导致资源浪费的问题,达到了节省资源的效果。

【技术实现步骤摘要】
视频编码方法及装置
本专利技术涉及编码
,特别涉及一种视频编码方法及装置。
技术介绍
全景视频是由一系列全景图像帧组成的视频,全景图像帧是记录预定视角的景物所形成的图像帧,例如,预定视角为水平360°、垂直180°,或,预定视角为水平360°、垂直270°等等。编码器在通过全景相机得到全景视频后,需要对全景视频进行编码,并将编码后的全景视频发送给解码器进行解码,以便用户观看解码后得到的全景视频。相关技术提供的一种视频编码方法包括:编码器获取全景视频中的所有全景图像帧;对于每个全景图像帧,将该全景图像帧按照H.264/AVC(AdvancedVideoCoding,高级视频编码)中定义的语法结构进行编码,得到下标连续的宏块集合,即得到该全景图像帧的编码数据;或者,将每个全景图像帧按照H.265/HEVC(HighEfficiencyVideoCoding,高效视频编码)中定义的语法结构进行编码,得到以块为单元的矩形区域集合,即得到该全景图像帧的编码数据;将每个全景图像帧对应的编码数据发送给解码器。用户的视角通常在150°左右,所以,全景图像帧中只有150°左右的视角的编码数据是有效的,其余的编码数据都是无效的,接收和解码这些无效的编码数据会造成资源浪费。
技术实现思路
为了解决接收并解码全景视频中所有的全景图像帧的编码数据,导致资源浪费的问题,本专利技术实施例提供了一种视频编码方法及装置。所述技术方案如下:第一方面,提供了一种视频编码方法,所述方法包括:获取全景视频所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列,每个视角视频序列由所述全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;对所述N个视角视频序列分别进行编码,得到N组编码数据确定用户的观看视角;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户。第二方面,提供了一种视频编码方法,所述方法包括:向编码器提供用户的观看视角,所述编码器用于获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列;对所述N个视角视频序列分别进行编码,得到N组编码数据;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户;每个视角视频序列由所述全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠,;接收所述编码器发送的所述编码数据;对所述编码数据进行解码。第三方面,提供了一种视频编码装置,所述装置包括:视频获取模块,用于获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;视频划分模块,用于将所述视频获取模块获取的所述全景视频划分成N个视角视频序列,每个视角视频序列由所述全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;视频编码模块,用于对所述视频划分模块得到的所述N个视角视频序列分别进行编码,得到N组编码数据;视角确定模块,用于确定用户的观看视角;第一提供模块,用于选择水平视角包括所述视角确定模块确定的所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户。第四方面,提供了一种视频编码装置,所述装置包括:视角提供模块,用于向编码器提供用户的观看视角,所述编码器用于获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列;对所述N个视角视频序列分别进行编码,得到N组编码数据;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户;每个视角视频序列由所述全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠,;第一接收模块,用于接收所述编码器发送的所述编码数据;数据解码模块,用于对所述第一接收模块接收的所述编码数据进行解码。本专利技术实施例提供的技术方案的有益效果是:通过将全景视频划分成N个视角视频序列,对该N个视角视频序列分别进行编码,得到N组编码数据;确定用户的观看视角;选择水平视角包括观看视角的视角视频序列,将视角视频序列的编码数据提供给用户,可以只将与用户的观看视角内的视角视频序列的编码数据提供给用户,避免了传输和解码观看视角外的视角视频序列的编码数据,解决了接收并解码全景视频中所有的全景图像帧的编码数据,导致资源浪费的问题,达到了节省资源的效果。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术各个实施例涉及的视频编码方法的实施环境图;图2是本专利技术一个实施例提供的视频编码方法的方法流程图;图3A是本专利技术另一实施例提供的视频编码方法的方法流程图;图3B是本专利技术另一实施例提供的区域的划分示意图;图3C是本专利技术另一实施例提供的视角视频序列的示意图;图3D是本专利技术另一实施例提供的传输的视角视频序列中各个区域的示意图;图3E是本专利技术另一实施例提供的视频编码方法的示意图;图4是本专利技术一个实施例提供的视频编码装置的结构框图;图5是本专利技术再一实施例提供的视频编码装置的结构框图;图6是本专利技术一个实施例提供的视频编码装置的结构框图;图7是本专利技术再一实施例提供的视频编码装置的结构框图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。图1是本专利技术各个实施例涉及的视频编码方法的实施环境图,图1的上图中包括全景相机101和用户设备102,此时,编码器位于全景相机101中,解码器位于用户设备102中。其中,用户设备102可以是虚拟现实头盔、电视、计算机、手机等等,本实施例不作限定。全景相机101在拍摄得到全景视频后,通过编码器将全景视频划分成N个视角视频序列,对每个视角视频序列进行编码,得到N组编码数据;根据用户的观看视角将对应的编码数据发送给用户设备102,用户设备102通过解码器对该编码数据进行解码,对解码得到的视角视频序列进行播放。图1的下图中包括全景相机101、服务器102和用户设备103,此时,编码器位于服务器102中,解码器位于用户设备103中。全景相机101在拍摄得到全景视频后,将全景视频发送给服务器102,服务器102通过编码器将全景视频划分成N个视角视频序列,对每个视角视频序列进行编码,得到N组编码数据;根据用户本文档来自技高网...

【技术保护点】
一种视频编码方法,其特征在于,所述方法包括:获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列,每个视角视频序列由所述全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;对所述N个视角视频序列分别进行编码,得到N组编码数据;确定用户的观看视角;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户。

【技术特征摘要】
1.一种视频编码方法,其特征在于,所述方法包括:获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列,每个视角视频序列由所述全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;对所述N个视角视频序列分别进行编码,得到N组编码数据;确定用户的观看视角;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户;获取与所述水平视角相邻,且小于所述水平视角的连续n个水平视角所对应的视角视频序列;获取与所述水平视角相邻,且大于所述水平视角的连续m个水平视角所对应的视角视频序列,所述n和m均为正整数,且n+m≤N-1;将所述n+m个视角视频序列中的属于同一全景图像帧的每n+m个区域的编码数据依次提供给所述用户。2.根据权利要求1所述的方法,其特征在于,所述将所述全景视频划分成N个视角视频序列,包括:根据预设的视角划分规则,将所述全景视频中的每个全景图像帧按照水平视角划分成N个区域;将所有的全景图像帧中具有相同的水平视角的区域组成一个视角视频序列,得到所述N个视角视频序列。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:若在时刻Ti时确定所述用户的观看视角发生变化,则禁止发送所述视角视频序列中的第i个区域的编码数据,所述i为正整数;选择更新视角视频序列,将所述更新视角视频序列中的第i个区域的编码数据提供给所述用户,所述更新视角视频序列是水平视角与变化后的所述观看视角匹配的视角视频序列;将i更新为i+1,循环执行在时刻Ti时,将所述更新视角视频序列中的第i个区域的编码数据提供给所述用户的步骤。4.根据权利要求1所述的方法,其特征在于,每个视角视频序列内,第j个区域的编码数据是依据第j-1个区域的编码数据生成的;或者,第j个区域的编码数据是依据第j-1个区域的编码数据和第l个区域的编码数据生成的,所述j和l均为正整数,且l>j≥2;不同视角视频序列间,任意两个区域的编码数据在时域上无关。5.根据权利要求1所述的方法,其特征在于,当所述区域包括至少两个宏块时,每个区域内,一个宏块的编码数据是依据与其在空域内相邻的宏块的编码数据生成的;不同区域间,在空域内相邻的两个宏块的编码数据无关。6.一种视频编码方法,其特征在于,所述方法包括:向编码器提供用户的观看视角,所述编码器用于获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;将所述全景视频划分成N个视角视频序列;对所述N个视角视频序列分别进行编码,得到N组编码数据;选择水平视角包括所述观看视角的视角视频序列,将所述视角视频序列的编码数据提供给所述用户;每个视角视频序列由所述全景视频中所有的全景图像帧中具有相同的水平视角的区域组成,且所述N个视角视频序列的水平视角的总和为所述全景图像帧的总水平视角,所述N为正整数,其中,一个全景图像帧中的各个区域之间互不重叠;接收所述编码器发送的所述编码数据;依次接收n+m个视角视频序列中属于同一全景图像帧的每n+m个区域的编码数据,所述n+m个视角视频序列是与所述水平视角相邻,且小于所述水平视角的连续n个水平视角所对应的视角视频序列,以及,与所述水平视角相邻,且大于所述水平视角的连续m个水平视角所对应的视角视频序列,所述n和m均为正整数,且n+m≤N-1;对所述编码数据进行解码。7.根据权利要求6所述的方法,其特征在于,所述对所述编码数据进行解码,包括:对当前时刻接收的、水平视角与所述观看视角匹配的视角视频序列中的区域的编码数据进行解码,并播放得到的所述区域;对所述当前时刻接收的所述n+m个视角视频序列中的n+m个区域的编码数据进行缓存。8.根据权利要求7所述的方法,其特征在于,若在时刻Ti时所述用户的观看视角发生变化,则所述方法还包括:从缓存的所述n+m个区域的编码数据中,选择更新视角视频序列中的第i个区域的编码数据,对所述编码数据进行解码,并播放得到的所述第i个区域;其中,所述更新视角视频序列是水平视角与变化后的所述观看视角匹配的视角视频序列。9.根据权利要求6所述的方法,其特征在于,所述对所述编码数据进行解码,包括:对当前时刻接收的、水平视角与所述观看视角匹配的视角视频序列中的区域的编码数据进行解码,并播放得到的所述区域;对所述当前时刻接收的所述n+m个视角视频序列中的n+m个区域的编码数据进行解码,并缓存得到的所述n+m个区域。10.根据权利要求9所述的方法,其特征在于,若在时刻Ti时所述用户的观看视角发生变化,则所述方法还包括:从缓存的所述n+m个区域中,选择更新视角视频序列中的第i个区域,并播放所述第i个区域;其中,所述更新视角视频序列是水平视角与变化后的所述观看视角匹配的视角视频序列。11.一种视频编码装置,其特征在于,所述装置包括:视频获取模块,用于获取全景视频,所述全景视频由全景图像帧组成,所述全景图像帧是记录预定视角的景物所形成的图像帧;视频划分模块,用于将所述视频获取模块获取的所述全景视频划分成N个视角视频序列,每个视角视频序列由所述全景视频中所有的全景...

【专利技术属性】
技术研发人员:王曜
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1