CN111713113A - 用于360度视频编码的环路滤波填充 - Google Patents
用于360度视频编码的环路滤波填充 Download PDFInfo
- Publication number
- CN111713113A CN111713113A CN201980012973.8A CN201980012973A CN111713113A CN 111713113 A CN111713113 A CN 111713113A CN 201980012973 A CN201980012973 A CN 201980012973A CN 111713113 A CN111713113 A CN 111713113A
- Authority
- CN
- China
- Prior art keywords
- video data
- reconstructed picture
- padded
- picture
- degree video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/698—Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/33—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
一种示例方法包括:接收360度视频数据的编码图片,360度视频数据的编码图片被布置在从360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的图片进行解码,以获得360度视频数据的重构图片,360度视频数据的重构图片被布置在封装面中;对360度视频数据的重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
Description
相关申请
本申请要求享受于2019年2月7日提交的美国申请No.16/270,275的优先权,并且要求享受于2018年2月14日提交的美国临时申请No.62/630,624的优先权,将这两个申请的全部内容通过引用的方式并入本文中。
技术领域
本公开内容涉及对视频数据进行编码和解码。
背景技术
数字视频能力可以被合并到各种各样的设备中,包括数字电视机、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型计算机或台式计算机、平板计算机、电子书阅读器、数字相机、数字记录设备、数字媒体播放器、视频游戏设备、视频游戏控制台、蜂窝或卫星无线电电话(所谓的“智能电话”)、视频电话会议设备、视频流设备等。数字视频设备实现视频编码技术(诸如在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4(第10部分,高级视频编码(AVC))、ITU-T H.265(也被称为高效率视频编码(HEVC))、以及此类标准的扩展所定义的标准中描述的那些技术)。通过实现这样的视频编码技术,视频设备可以更加高效地发送、接收、编码、解码和/或存储数字视频信息。
视频编码技术包括空间(帧内图片)预测和/或时间(帧间图片)预测以减少或去除在视频序列中固有的冗余。对于基于块的视频编码,视频切片(例如,视频图片或视频图片的一部分)可以被分割为视频块,视频块也可以被称为编码树单元(CTU)、编码单元(CU)和/或编码节点。图片的经帧内编码(I)的切片中的视频块是使用相对于同一图片中的相邻块中的参考样本的空间预测来编码的。图片的经帧间编码(P或B)的切片中的视频块可以使用相对于同一图片中的相邻块中的参考样本的空间预测或者相对于其它参考图片中的参考样本的时间预测。图片可以被称为帧,并且参考图片可以被称为参考帧。
最近,已经开发了用于编码和发送例如用于虚拟现实(VR)应用的360度视频的技术。由于VR视频技术的最近发展,用户体验到的视频环境已经变得与视频本身的主题一样重要。这样的VR视频技术可以使用360度视频技术,该技术涉及将360度视频图形实时流式传输到VR头戴式显示器(HMD)和/或将360度视频从360度摄像机或网站实时流式传输到实时视频显示器,诸如VR头戴式显示器(HMD)。VR HMD允许用户通过转动头部改变视角来体验其周围发生的动作。为了创建360度视频,可以使用一组特殊的相机同时记录整个360度的场景,或者可以将多个视图(例如,视频和/或计算机生成的图像)拼接在一起以形成图像。
发明内容
概括而言,本公开内容涉及用于对360度视频数据进行编码和解码的技术。例如,视频编码装置(coder)(例如,视频编码器(encoder)或视频解码器(decoder))可以对360度视频数据的被布置在封装面(packed face)(例如,封装面是从360度视频数据的球体的投影中获得的)中的图片进行编码(code)(例如,编码(encode)或解码)。当观看360度视频数据的图片时,渲染器可以生成与观看者的头部朝向匹配的、360度视频数据的视口。取决于该朝向和视场,视口可能包括在封装面之间的一个或多个边界(例如,在图片内的相邻或不相邻区域之间的边界)。
尽管将360度视频数据的图片布置到封装面中可以提供各种优点(诸如利用通常针对视频数据的矩形图片所设计的视频编解码器的能力),但是这种布置可能出现一个或多个技术问题。例如,将360度视频数据的图片布置在封装面中导致在经渲染的视口内在图片边界以及在相邻和不相邻区域之间的边界处的可见的伪影(例如,可见的接缝伪影)。伪影可能是由于运动补偿或环路内滤波中的一者或两者导致的。
根据本公开内容的一种或多种技术,视频编码装置可以在解码过程期间向图片添加填充。例如,视频编码装置可以在应用环路内滤波之前向重构图片添加额外样本。以这种方式,视频编码装置可以减轻由于在封装面之间的边框处的变形和不连续性导致的失真和编码效率问题。因此,本公开内容描述了改善视频编码的技术操作的具有实际应用的技术解决方案的示例。
在一个示例中,一种对360度视频数据进行解码的方法包括:接收360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的解码图片被布置在所述封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
在另一示例中,一种用于对360度视频数据进行解码的设备包括:存储器;一个或多个处理器,其在电路中实现并且被配置为:从经编码的视频比特流获得360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的解码图片被布置在所述封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在所述存储器中,以在预测360度视频数据的后续图片时使用。
在另一示例中,一种用于对360度视频数据进行解码的设备包括:用于接收360度视频数据的编码图片的单元,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;用于对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片的单元,360度视频数据的解码图片被布置在所述封装面中;用于对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片的单元;用于对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片的单元;以及用于将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用的单元。
在另一示例中,一种计算机可读存储介质存储指令,所述指令在被执行时使得视频解码器的一个或多个处理器进行以下操作:获得360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的解码图片被布置在所述封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
在另一示例中,一种用于对360度视频数据进行解码的设备包括:存储器;一个或多个处理器,其在电路中实现并且被配置为:从经编码的视频比特流获得360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的解码图片被布置在所述封装面中;在360度视频数据的所述解码图片的视口中识别包括在所述封装面之间的接缝的一个或多个区域;以及将滤波器应用于一个或多个识别的区域。
在另一示例中,一种对360度视频数据进行编码的方法包括:获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
在另一示例中,一种用于对360度视频数据进行编码的设备,所述方法包括:存储器;一个或多个处理器,其在电路中实现并且被配置为:获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在所述存储器中,以在预测360度视频数据的后续图片时使用。
在另一示例中,一种用于对360度视频数据进行编码的设备包括:用于获得360度视频数据的重构图片的单元,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;用于对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片的单元;用于对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片的单元;以及用于将360度视频数据的经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用的单元。
在另一示例中,一种计算机可读存储介质存储指令,所述指令在被执行时使得视频编码器的一个或多个处理器进行以下操作:获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在存储器中,以在预测360度视频数据的后续图片时使用。
在附图和以下描述中阐述了一个或多个示例的细节。根据描述和附图并且根据权利要求,其它特征、目的和优点将是显而易见的。
附图说明
图1是示出被配置为执行本公开内容的技术的示例视频编码和解码系统的框图。
图2A–2D分别示出了利用等矩形投影(ERP)、立方图投影(CMP)、经调整的立方图投影(ACP)和赤道圆柱投影(ECP)获得的“撑杆跳高(Pole Vault)”序列的图片的示例投影。
图3A-3E分别示出了视口可以如何跨越图片边界或者在图片内的相邻或不相邻区域之间的边界的示例。
图4A示出了由于运动而导致的经渲染的视口接缝的示例。
图4B示出了由于滤波而导致的经渲染的视口接缝的示例。
图5A-5C示出了根据本公开内容的一种或多种技术的用于3x2封装的CMP和ACP图片的各种填充方案,其是基于具有六个面的立方体几何形状的。
图6A-6C示出了用于ECP图片的填充区域。
图7是示出被配置为执行本公开内容的技术的示例视频编码器的框图。
图8是示出被配置为执行本公开内容的技术的示例视频解码器的框图。
图9是示出被配置为执行本公开内容的技术的示例视频编码器的框图。
图10是示出被配置为执行本公开内容的技术的示例视频解码器的框图。
图11示出了根据本公开内容的一种或多种技术的将偏移应用于在360填充图片内的每个立方体面的滤波的示例。
图12是示出可以实现本公开内容的技术的滤波器单元的示例的框图。
图13是示出本公开内容的示例编码方法的流程图。
图14是示出本公开内容的示例解码方法的流程图。
具体实施方式
图1是示出可以利用用于对360度视频数据进行填充的技术的示例视频编码和解码系统10的框图。如图1所示,系统10包括源设备12,源设备12提供经编码的视频数据以在稍后的时间处由目的地设备14解码。具体地,源设备12经由计算机可读介质16来将视频数据提供给目的地设备14。源设备12和目的地设备14可以包括各种各样设备中的任何一种,这些设备包括台式计算机、笔记本计算机(即,膝上型计算机)、平板计算机、机顶盒、电话手机(诸如所谓的“智能”电话)、所谓的“智能”平板设备、电视机、相机、显示设备、数字媒体播放器、视频游戏控制台、视频流设备等。在一些情况下,源设备12和目的地设备14可以被配备用于无线通信。
目的地设备14可以经由计算机可读介质16接收要被解码的经编码的视频数据。计算机可读介质16可以包括能够将经编码的视频数据从源设备12移动到目的地设备14的任何类型的介质或设备。在一个示例中,计算机可读介质16可以包括通信介质,其使得源设备12能够实时地向目的地设备14直接发送经编码的视频数据。可以根据诸如无线通信协议之类的通信标准来对经编码的视频数据进行调制,并且将其发送给目的地设备14。通信介质可以包括任何无线或有线通信介质,例如,射频(RF)频谱或一条或多条物理传输线。通信介质可以形成诸如以下各项的基于分组的网络的一部分:局域网、广域网、或诸如互联网之类的全球网络。通信介质可以包括路由器、交换机、基站、或对于促进从源设备12到目的地设备14的通信而言可以有用的任何其它设备。
在一些示例中,可以将经编码的数据从输出接口22输出到存储设备。类似地,可以通过输入接口从存储设备存取经编码的数据。存储设备可以包括各种分布式或本地存取的数据存储介质中的任何一种,例如,硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪存、易失性或非易失性存储器、或用于存储经编码的视频数据的任何其它适当的数字存储介质。在另外的示例中,存储设备可以对应于文件服务器或另一中间存储设备,其可以存储由源设备12生成的经编码的视频。目的地设备14可以经由流式传输或下载来从存储设备存取被存储的视频数据。文件服务器可以是能够存储经编码的视频数据并且将该经编码的视频数据发送给目的地设备14的任何类型的服务器。示例文件服务器包括网页服务器(例如,用于网站)、FTP服务器、网络附加存储(NAS)设备或本地磁盘驱动器。目的地设备14可以通过任何标准数据连接(包括互联网连接)来存取经编码的视频数据。这可以包括适于存取被存储在文件服务器上的经编码的视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或这两者的组合。经编码的视频数据从存储设备的传输可以是流式传输、下载传输或其组合。
本公开内容的技术不必限于无线应用或环境。所述技术可以应用于视频编码,以支持各种多媒体应用中的任何一种,例如,空中电视广播、有线电视传输、卫星电视传输、互联网流式视频传输(例如,基于HTTP的动态自适应流式传输(DASH))、被编码到数据存储介质上的数字视频、对被存储在数据存储介质上的数字视频的解码、或其它应用。在一些示例中,系统10可以被配置为支持单向或双向视频传输,以支持诸如视频流式传输、视频回放、视频广播和/或视频电话之类的应用。
在图1的示例中,源设备12包括视频源18、视频编码器20、以及输出接口22。目的地设备14包括输入接口28、视频解码器30、显示设备32、以及区域确定单元34。在其它示例中,源设备和目的地设备可以包括其它组件或布置。例如,源设备12可以从诸如外部相机之类的外部视频源18接收视频数据。同样,目的地设备14可以与外部显示设备对接,而不是包括集成显示设备。
图1的所示的系统10仅是一个示例。用于参考图片推导和运动补偿的技术可以由任何数字视频编码和/或解码设备来执行。尽管一般来说,本公开内容的技术是由视频编码设备来执行的,但是所述技术还可以由通常被称为“CODEC”的视频编码器/解码器来执行。源设备12和目的地设备14仅是这样的编码设备的示例,其中,源设备12生成经编码的视频数据以用于传输给目的地设备14。在一些示例中,设备12、14可以以基本上对称的方式进行操作,使得设备12、14中的每一者均包括视频编码和解码组件。因此,系统10可以支持在视频设备12、14之间的单向或双向视频传输,例如,以用于视频流式传输、视频回放、视频广播或视频电话。
源设备12的视频源18可以包括视频捕获设备,诸如摄像机、包含先前捕获的视频的视频存档单元、和/或从视频内容提供者接收视频的视频馈送接口。作为另外的替代方式,视频源18可以生成基于计算机图形的数据作为源视频,或者生成实时视频、被存档的视频和计算机生成的视频的组合。在一些情况下,如果视频源18是摄像机,则源设备12和目的地设备14可以形成所谓的照相电话或视频电话。然而,如上文提及的,一般而言,在本公开内容中描述的技术可以适用于视频编码,并且可以应用于无线和/或有线应用。在每种情况下,被捕获的、预捕获的或计算机生成的视频可以由视频编码器20来编码。然后,输出接口22可以将经编码的视频信息输出到计算机可读介质16。
在本公开内容的示例中,视频源18可以被配置为捕获360度视频数据。例如,视频源18可以是相机组,其通常由指向不同方向并且理想地共同覆盖相机组周围的所有视点的多个单独的相机组成。视频源18还可以被配置为执行图像拼接,其中由多个单独的相机拍摄的视频和/或静止图片在时域中被同步并且在空间域中被拼接为球形视频或图像,但是被映射为矩形格式,诸如等矩形图(例如世界地图)或立方图。
计算机可读介质16可以包括诸如无线广播或有线网络传输之类的临时性介质、或者诸如硬盘、闪存驱动器、压缩光盘、数字多功能光盘、蓝光光盘之类的存储介质(即非暂时性存储介质)、或其它计算机可读介质。在一些示例中,网络服务器(未示出)可以例如经由网络传输从源设备12接收经编码的视频数据,并且将经编码的视频数据提供给目的地设备14。类似地,诸如光盘冲压设施之类的介质生产设施的计算设备可以从源设备12接收经编码的视频数据,并且产生包含经编码的视频数据的光盘。因此,在各个示例中,计算机可读介质16可以被理解为包括各种形式的一个或多个计算机可读介质。
目的地设备14的输入接口28从计算机可读介质16接收信息。计算机可读介质16的信息可以包括由视频编码器20定义的语法信息(其也被视频解码器30使用),语法信息包括描述块和其它编码单元的特性和/或处理的语法元素。显示设备32将经解码的视频数据显示给用户,并且可以包括各种显示设备中的任何一种,例如,阴极射线管(CRT)、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器、或另一种类型的显示设备。
视频编码器20和视频解码器30可以根据视频编码标准(诸如高效率视频编码(HEVC)标准,也被称为ITU-T H.265)进行操作。替代地,视频编码器20和视频解码器30可以根据其它专有或行业标准(诸如ITU-T H.264标准(其替代地被称为MPEG-4,第10部分,高级视频编码(AVC))、或此类标准的扩展)进行操作。然而,本公开内容的技术不限于任何特定的编码标准。视频编码标准的其它示例包括MPEG-2和ITU-T H.263。尽管在图1中未示出,但是在一些方面中,视频编码器20和视频解码器30可以各自与音频编码器和解码器集成,并且可以包括适当的MUX-DEMUX单元或者其它硬件和软件,以处理对公共数据流或单独的数据流中的音频和视频两者的编码。如果适用,MUX-DEMUX单元可以遵循ITU H.223复用器协议、或其它协议(诸如用户数据报协议(UDP))。通常,视频解码器30执行与由视频编码器20执行的过程基本类似的、但是相反的过程,以对经编码的数据进行解码。
视频编码器20和视频解码器30各自可以被实现为各种适当的编码器和/或解码器电路中的任何一种,例如,一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、分立逻辑、软件、硬件、固件、或其任何组合。当所述技术部分地用软件实现时,设备可以将用于软件的指令存储在适当的非暂时性计算机可读介质中,并且使用一个或多个处理器,用硬件来执行指令以执行本公开内容的技术。视频编码器200和视频解码器300中的每一者可以被包括在一个或多个编码器或解码器中,编码器或解码器中的任一者可以被集成为相应设备中的组合编码器/解码器(CODEC)的一部分。包括视频编码器20和/或视频解码器30的设备可以包括集成电路、微处理器、和/或无线通信设备(诸如蜂窝电话)。
视频编码器20还可以例如在图片报头、块报头、切片报头中向视频解码器30发送语法数据(诸如基于块的语法数据、基于图片的语法数据和基于序列的语法数据),或者发送其它语法数据(诸如序列参数集(SPS)、图片参数集(PPS)或视频参数集(VPS))。
根据本公开内容的技术,输出接口22和输入接口28可以对应于网络接口,诸如实现一种或多种网络协议(诸如以太网)的网络接口卡(NIC)。计算机可读介质16可以对应于可以穿越私有或公共网络(诸如互联网)的网络连接。
显示设备32可以对应于全景显示器。例如,显示设备32可以对应于头戴式显示器(HMD)或基本或完全包围用户的一个或多个屏幕。区域确定单元34可以被配置为确定显示设备32的多个区域。例如,显示设备32可以包括多个瓦片(tile),例如,与球形显示器(或者可以模拟球形显示器的显示器,诸如HMD)相对应的立方体面的一个或多个部分。
如本文所讨论的,区域确定单元34可以确定这些区域中的用户的视觉焦点(在图1中未示出)所指向的一个或多个区域。区域确定单元34可以使得输入接口28取得针对显示设备32的、用户的视觉焦点所指向的第一区域子集的视频数据。
在一些示例中,源设备12和目的地设备14可以被配置为实现同时多分辨率(SMR)技术。SMR是一种用于部分解码技术的新方法。与在传统的部分解码方案中使用的可缩放编码方法相比,根据SMR,可以传输独立编码的多分辨率流。SMR可以允许在位于逐渐远离用户的当前视点的区域或瓦片范围内逐渐降低质量。
在一个示例中,视频编码器20可以以例如6k、4k、8k、HD(1080p)和720p的多个分辨率对用于整个全景的数据进行编码。也就是说,视频编码器20可以以这些多个分辨率中的每一个对用于每个区域(或“瓦片”)的视频数据进行编码。以这种方式,对于每个分辨率,瓦片粒度可以是相同的。视频编码器20在对各个分辨率进行编码时可以避免层间依赖性。因此,视频解码器30可以以选择性的方式(例如,如由区域确定单元34所选择的)以不同的分辨率对用于瓦片的视频数据进行解码。例如,区域确定单元34可以为处于用户的当前视点的中心处的区域选择最高可用分辨率。随着移动远离当前视点的中心,解码分辨率可以逐渐下降。也就是说,区域确定单元34可以为距当前视点的中心更远的区域(瓦片)选择成比例地降低的分辨率。因此,视频解码器30可以以最低可用分辨率对用于在用户的当前视点后面的瓦片的视频数据进行解码。
如上文还提及的,视频编码器20、视频解码器30和/或区域确定单元34各自可以在适用的情况下被实现为各种合适的固定和/或可编程电路中的任何一者,例如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、分立逻辑电路、软件、硬件、固件、或其任何组合。当用软件或固件来实现功能时,用于软件或固件的指令通常被存储在基于硬件的计算机可读存储介质中并且由一个或多个处理器执行,所述一个或多个处理器也使用逻辑电路来实现。视频编码器20和视频解码器30中的每一者可以被包括在一个或多个编码器或解码器中,编码器或解码器中的任一者可以被集成为组合视频编码器/解码器(CODEC)的一部分。包括视频编码器20、视频解码器30和/或区域确定单元34的设备可以包括集成电路、微处理器、和/或无线通信设备(诸如蜂窝电话)。
目的地设备14可以包括被配置为存储取得的视频数据的存储器,诸如硬盘和/或缓冲器。这样的存储器可以被包括在视频解码器30、区域确定单元34内或者被包括在目的地设备14内的其它地方。
下文参考HEVC标准描述了各种视频编码技术。然而,本公开内容的技术可以与同360度视频数据一起使用的任何视频编码技术一起使用,包括诸如H.266(也被称为多功能视频编码(VVC))之类的未来的视频编码标准。
在HEVC和其它视频编码规范中,视频序列通常包括一系列图片。图片也可以被称为“帧”。图片可以包括三个样本阵列,其被表示为SL、SCb和SCr。SL是亮度样本的二维阵列(即,块)。SCb是Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。色度样本在本文中也可以被称为“色度(chroma)”样本。在其它情况下,图片可以是单色的,并且可以仅包括亮度样本的阵列。
为了生成图片的编码表示,视频编码器20可以生成编码树单元(CTU)集合。CTU中的每一者可以包括亮度样本的编码树块、色度样本的两个对应的编码树块、以及用于对编码树块的样本进行编码的语法结构。在单色图片或具有三个单独的色彩平面的图片中,CTU可以包括单个编码树块和用于对该编码树块的样本进行编码的语法结构。编码树块可以是样本的NxN块。CTU也可以被称为“树块”或“最大编码单元”(LCU)。广义地说,HEVC的CTU可以类似于其它标准(诸如H.264/AVC)的宏块。然而,CTU未必限于特定大小,并且可以包括一个或多个编码单元(CU)。切片可以包括按光栅扫描顺序连续排序的整数个CTU。
CTB包含四叉树,其节点是编码单元。在HEVC主简档中,CTB的大小的范围可以从16x16到64x64(但是在技术上可以支持8x8 CTB大小)。但是,编码单元(CU)的大小可以与CTB相同,并且小至8x8。每个编码单元是以一种模式来编码的。当CU被帧间编码时,CU可以被进一步分割为2或4个预测单元(PU),或者当进一步分割不适用时仅成为一个PU。当在一个CU中存在两个PU时,两个PU可以是一半大小的矩形,或者是具有CU的1/4或3/4大小的两个矩形大小。
为了生成经编码的CTU,视频编码器20可以对CTU的编码树块递归地执行四叉树分割,以将编码树块划分为编码块(因此名称为“编码树单元”)。编码块可以是样本的NxN块。CU可以包括:具有亮度样本阵列、Cb样本阵列和Cr样本阵列的图片的亮度样本的编码块和色度样本的两个对应的编码块、以及用于对编码块的样本进行编码的语法结构。在单色图片或具有三个单独的色彩平面的图片中,CU可以包括单个编码块和用于对该编码块的样本进行编码的语法结构。
视频编码器20可以将CU的编码块分割为一个或多个预测块。预测块是对其应用相同预测的样本的矩形(即,正方形或非正方形)块。CU的预测单元(PU)可以包括亮度样本的预测块、色度样本的两个对应的预测块以及用于对预测块进行预测的语法结构。在单色图片或具有三个单独的色彩平面的图片中,PU可以包括单个预测块以及用于对该预测块进行预测的语法结构。视频编码器20可以为CU的每个PU的亮度、Cb和Cr预测块生成预测亮度、Cb和Cr块。
视频编码器20可以使用帧内预测或帧间预测来生成用于PU的预测块。如果视频编码器20使用帧内预测来生成PU的预测块,则视频编码器20可以基于与PU相关联的图片的经解码的样本来生成PU的预测块。如果视频编码器20使用帧间预测来生成PU的预测块,则视频编码器20可以基于除了与PU相关联的图片之外的一个或多个图片的经解码的样本来生成PU的预测块。当CU被帧间编码时,针对每个PU存在一个运动信息集合。另外,可以利用唯一的帧间预测模式来对每个PU进行编码以推导运动信息集合。
在视频编码器20为CU的一个或多个PU生成预测亮度、Cb和Cr块之后,视频编码器20可以生成用于CU的一个或多个亮度残差块。CU的亮度残差块中的每个样本指示在CU的预测亮度块之一中的亮度样本与CU的原始亮度编码块中的对应样本之间的差异。另外,视频编码器20可以生成用于CU的Cb残差块。CU的Cb残差块中的每个样本可以指示在CU的预测Cb块之一中的Cb样本与CU的原始Cb编码块中的对应样本之间的差异。视频编码器20还可以生成用于CU的Cr残差块。CU的Cr残差块中的每个样本可以指示在CU的预测Cr块之一中的Cr样本与CU的原始Cr编码块中的对应样本之间的差异。
此外,视频编码器20可以使用四叉树分割来将CU的亮度、Cb和Cr残差块分解成一个或多个亮度、Cb和Cr变换块。变换块是对其应用相同变换的样本的矩形(例如,正方形或非正方形)块。CU的变换单元(TU)可以包括亮度样本的变换块、色度样本的两个对应的变换块以及用于对变换块样本进行变换的语法结构。因此,CU的每个TU可以与亮度变换块、Cb变换块和Cr变换块相关联。与TU相关联的亮度变换块可以是CU的亮度残差块的子块。Cb变换块可以是CU的Cb残差块的子块。Cr变换块可以是CU的Cr残差块的子块。在单色图片或具有三个单独的色彩平面的图片中,TU可以包括单个变换块以及用于对该变换块的样本进行变换的语法结构。
视频编码器20可以将一个或多个变换应用于TU的亮度变换块以生成用于TU的亮度系数块。系数块可以是变换系数的二维阵列。变换系数可以是标量。视频编码器20可以将一个或多个变换应用于TU的Cb变换块以生成用于TU的Cb系数块。视频编码器20可以将一个或多个变换应用于TU的Cr变换块以生成用于TU的Cr系数块。
在生成系数块(例如,亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可以对系数块进行量化。量化通常指代如下的过程:在该过程中,对变换系数进行量化以可能减少用于表示变换系数的数据量,从而提供进一步的压缩。在视频编码器20对系数块进行量化之后,视频编码器20可以对指示经量化的变换系数的语法元素进行熵编码。例如,视频编码器20可以对指示经量化的变换系数的语法元素执行上下文自适应二进制算术编码(CABAC)。
视频编码器20可以输出比特流,其包括形成编码图片和相关联的数据的表示的比特序列。比特流可以包括NAL单元的序列。NAL单元是包含以下各项的语法结构:对NAL单元中的数据的类型的指示、以及以在必要时穿插着竞争防止比特的RBSP的形式来包含该数据的字节。NAL单元中的每一者包括NAL单元报头并且封装(encapsulate)RBSP。NAL单元报头可以包括指示NAL单元类型码的语法元素。由NAL单元的NAL单元报头指定的NAL单元类型码指示NAL单元的类型。RBSP可以是包含被封装在NAL单元内的整数个字节的语法结构。在一些情况下,RBSP包括零比特。
不同类型的NAL单元可以封装不同类型的RBSP。例如,第一类型的NAL单元可以封装用于PPS的RBSP,第二类型的NAL单元可以封装用于编码切片的RBSP,第三类型的NAL单元可以封装用于SEI消息的RBSP,等等。封装用于视频编码数据的RBSP(与用于参数集和SEI消息的RBSP相反)的NAL单元可以被称为VCL NAL单元。
视频解码器30可以接收由视频编码器20生成的比特流。此外,视频解码器30可以解析该比特流以从该比特流获得语法元素。视频解码器30可以至少部分地基于从比特流获得的语法元素来重构视频数据的图片。用于重构视频数据的过程通常可以是与由视频编码器20执行的过程相反的。另外,视频解码器30可以对与当前CU的TU相关联的系数块进行逆量化。视频解码器30可以对系数块执行逆变换以重构与当前CU的TU相关联的变换块。视频解码器30可以通过将用于当前CU的PU的预测块的样本与当前CU的TU的变换块的对应样本相加,来重构当前CU的编码块。通过重构用于图片的每个CU的编码块,视频解码器30可以重构图片。
投影和映射可以用于在二维(2D)图上表示三维(3D)表面。例如,在360度视频应用中,投影和映射用于将在球体上表示的360度视频映射到二维视频帧上。投影和映射的示例包括:等矩形投影(ERP)、立方图投影(CMP)、经调整的立方图投影(ACP)和赤道圆柱投影(ECP)。图2A–2D分别示出了利用ERP、CMP、ACP和ECP投影获得的“PoleVault”序列的图片的示例投影。
在ERP格式下,通过将球体上的点的经度和纬度线性地映射到图片上的x-y坐标,来将球体上的点映射到2D图。图2A示出了在ERP格式下的360度视频的示例图片。
在CMP格式下,将球体表面上的点投影到与球体表面相切的平面(立方体的面)上的点。CMP将球体的表面投影到与球体表面相切的平面(立方体的六个面)上。图2B示出了在CMP格式下的360度视频的示例图片。
ACP格式是CMP格式的增强。在ACP格式下,将立方体面上的采样调整为几乎均匀的。图2C示出了在ACP格式下的360度视频的示例图片。
除了立方体几何形状外,圆柱几何形状也已经用于实现球体表面到所投影的图片的等面积映射。例如,在ECP格式下,赤道球段被映射到圆柱体上。在一个示例中,ECP格式用于将球体的在纬度±sin-1(2/3)≈±41.81°之间的赤道区域投影到圆柱体几何形状上,而圆形球体的极点区域在所投影的图片中弯曲成正方形区域。图2D示出了在ECP格式下的360度视频的示例图片。
在经由将三维(3D)表面变换到二维(2D)图上的已知的投影和映射技术来渲染360度视频时存在各种问题。例如,由于使用这样的技术而导致的接缝伪影。当所投影的图片由相邻的不连续区域组成时或者由于图片边界,倾向于出现接缝伪影。
在投影过程之后,视频图片是利用视频编码器(AVC、HEVC等)来压缩、存储或发送的,并且在接收机侧被解码,其中渲染器生成与观看者的头部朝向匹配的视口。取决于该朝向和视场,视口可能跨越图片边界或者在图片内的相邻或不相邻区域之间的边界。
图3A-3E分别示出了视口可以如何跨越图片边界或者在图片内的相邻或不相邻区域之间的边界的示例。在图片内用于渲染视口所需要的区域是由阴影矩形表示的(但是形状可以是矩形,或者可以不是矩形)。另外,在用于渲染所需要的区域内的边界是由粗线段表示的。
在ERP情况下,左右图片边界环绕球体的背面,因此,朝向球体背面而定向的视口可能跨越左右图片边界。在图3A中示出了在ERP中跨越左右图片边界的视口的示例。
在如图2B和2C中示出的CMP或ACP立方体面的3×2帧封装的情况下,视口可能跨越各种边界,如在图3B和3C中描绘的。尽管左、前和右立方体面在上半部图片中相邻放置,但是在左面(left face)与前面(front face)之间以及在前面与右面(right face)之间仍然存在边界,其中例如线是断开的(如在图2B和2C中可见的),并且类似地,对于下半部图片,其中在上面(top face)与后面(back face)之间以及在下面(bottom face)与后面之间存在边界。与实际的图片边界以及在图片的上半部与下半部之间的边界相比,在相邻的立方体面之间的这些边界不连续较少。图3B和3C示出了跨越各种边界的具有用于渲染所需要的区域的两个视口。在这些示例中,选择了立方体面的3x2封装,然而,存在具有不同边界的替代封装方案。例如,下半部图片可以具有按不同顺序的面,诸如上/后/下。3x2封装具有封装方案的最少边界之一。
在3D和3E中示出了具有与CMP和ACP的3x2封装等效的封装的ECP边界。主要区别在于,上半部图片是与用于投影球体的赤道区域的展开的圆柱体的四分之三相对应的连续区域。在这种封装中,展开的圆柱体的四分之一位于后部位置。例如,与CMP和ACP相比,线在前部区域内的任何边界处都不是断开的,然而,由于圆柱投影,线是弯曲的。其它边界与CMP和ACP边界是等效的。诸如6x1或1x6之类的替代封装方案将展开的圆柱形区域保持连接,然而,在圆柱区域与极点区域之间存在额外的边界。
图片边界以及在图片内的相邻区域与不相邻区域之间的边界可能导致经渲染的视口内的可见的接缝伪影。接缝伪影的两个潜在原因是运动和环路内滤波。
关于运动为潜在原因,在跨越图片边界指向区域的运动的情况下,运动估计过程可以选择部分地包括编码器添加以扩展参考图片的填充样本的块。在较高的量化参数(QP)值处,那些填充样本出现在视口中的边界的一侧,而边界的另一侧是不同的。图4A示出了由于运动而导致的经渲染的视口接缝的示例。在图4A中,可以在两条虚线之间识别接缝伪影。在较高的QP值处,这种类型的接缝伪影可能是强的(例如,对于经渲染的视点的观看者而言高度可见)。在一些示例中,当运动估计选择部分地定位为跨越中间图片边界的块时,在CMP或ACP图片(3x2封装)内部发生类似的问题。
关于环路内滤波(例如,解块、样本自适应偏移、和/或自适应环路)为潜在原因(其中,在图片边界上禁用滤波),清晰的未经滤波的接缝在经渲染的视口中可能是可见的,尤其是在较高的QP值处。在CMP或ACP图片(3x2封装)中,可能跨越中间图片边界发生滤波,从而导致可见(例如,对于经渲染的视点的观看者而言是可见的)的接缝伪影。图4B示出了由于滤波而导致的经渲染的视口接缝的示例。在图4B中,可以在两条虚线之间识别接缝伪影。
本文描述了解决上述问题的技术。根据本公开内容的一种或多种技术,视频编码装置(例如,视频编码器20或视频解码器30)可以将填充应用于360视频的重构图片。该技术可以被称为360填充。视频编码装置可以在重构360视频的图片之后的任何时刻处应用填充。作为一个示例,视频编码装置可以仅对重构图片应用一次360填充,并且将环路滤波器顺序地应用于经填充的图片,视频编码装置可以在不去除填充的情况下将经填充的图片存储在参考图片存储器缓冲区中。在这样的示例中,填充区域可以用于(1)减少经渲染的接缝伪影,并且(2)在运动估计和补偿过程中提高预测效率。作为另一示例,视频编码装置可以在每个环路滤波器之前应用360填充,并且在除了最后一个环路滤波器之外的每个环路滤波器之后去除360填充。在最后一个环路滤波器之后,视频编码装置可以将经滤波的填充图片存储到参考图片存储器中。与第二示例相比,第一示例(在应用环路滤波器之前应用360填充)可能具有较低的复杂度。
在一些示例中,在填充区域中的样本可以是额外的投影样本,即,利用相同的投影过程(例如,CMP、ACP或ECP过程)在投影区域周围获得的样本。存在用于填充样本的其它选项,例如,从所投影的图片中的一个区域转换到第二区域的梯度样本、或者其中将投影区域的边界样本复制到填充区域中的重复样本。通常,视频编码装置可以获得填充样本,使得在减少接缝伪影的同时保留压缩效率。
可以通过在图片中的投影区域周围的宽度和位置来定义填充区域。例如,填充区域可以沿着立方体面的所有边存在,这可以被称为对称情况,或者填充区域可以沿着对视口中的伪影减少贡献最大的一些边放置,这可以被称为不对称情况。
图5A-5C示出了根据本公开内容的一种或多种技术的用于3x2封装的CMP和ACP图片的各种填充方案,其是基于具有六个面的立方体几何形状的。在图5A中,每个立方体面的边沿着上、下、左和右具有填充。在图5B中,在上半部和下半部3x1图片周围存在填充。在图5C中,存在用于3x2 CMP或ACP的替代封装。
在图5A和5C中,沿着每个立方体面的边(在虚线外部的区域)存在填充,使得立方体面区域保持正方形。这是对称填充情况。通常,填充区域宽度可以根据立方体面的边而变化,这是图5B描绘的不对称填充情况。图5B示出了其中沿着所投影的图片的上半部和下半部3x1添加填充区域的情况。这是有利的,因为在上半部和下半部内的立方体面是相邻的,以避免不连续的边缘。支持这种类型的区域的假设是,与相邻的立方体面边缘相对应的接缝伪影在经渲染的视口中不太可见,并且因此可能不需要填充。
图6A-6C示出了用于ECP图片的填充区域。图6A示出了根据本公开内容的一种或多种技术的在上半部图片周围以及在上部、下部和后部区域周围的填充。图6B示出了在上半部和下半部3x1图片周围的填充。图6C示出了具有填充区域的6x1封装的ECP。
在3x2 ECP封装中,与用于立方体几何形状的填充相比,存在一个圆柱体区域,其被拆分成一个前区域和一个后区域。图6A描绘了对称填充区域情况,而图6B描绘了不对称情况。替代地,如图6C中描绘的,可以将ECP封装为1x6或6x1,其中圆柱体区域没有被拆分。根据封装类型,填充区域的数量可能是不同的。例如,(b)具有16个区域(每一面的边计数一个区域),而(d)具有18个区域。因此,为了类似的保护,在这种情况下,3x2封装类型可能是更有利的。
视频编码装置可以例如以文件格式、SEI消息等用信号通知填充区域的使用和其宽度。作为一个示例,视频编码器可以对以下项进行编码,并且视频解码器可以对以下项进行解码:指定是否使用360填充以及填充的任何特征(例如,宽度)的一个或多个语法元素。
图7是示出可以实现本公开内容的技术的视频编码器20的示例的框图。视频编码器20可以执行对视频切片内的视频块的帧内和帧间编码。帧内编码依赖于空间预测来减少或去除在视频中在给定视频帧或图片内的空间冗余。帧间编码依赖于时间预测来减少或去除在视频中在视频序列的相邻帧或图片内的时间冗余。帧内模式(I模式)可以是指若干基于空间的编码模式中的任何一种。帧间模式(诸如单向预测(P模式)或双向预测(B模式))可以是指若干基于时间的编码模式中的任何一种。
示出了图7的各个单元以帮助理解由视频编码器20执行的操作。这些单元可以被实现为固定功能电路、可编程电路、或其组合。固定功能电路是指提供特定功能并且在可以执行的操作上预先设置的电路。可编程电路是指可以被编程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以执行软件或固件,软件或固件使得可编程电路以软件或固件的指令所定义的方式进行操作。固定功能电路可以执行软件指令(例如,以接收参数或输出参数),但是固定功能电路执行的操作类型通常是不可变的。在一些示例中,这些单元中的一个或多个单元可以是不同的电路块(固定功能或可编程),并且在一些示例中,一个或多个单元可以是集成电路。
视频编码器20可以包括由可编程电路形成的算术逻辑单元(ALU)、基本功能单元(EFU)、数字电路、模拟电路和/或可编程核。在其中使用由可编程电路执行的软件来执行视频编码器20的操作的示例中,存储器可以存储视频编码器20接收并且执行的软件的目标代码,或者视频编码器20内的另一存储器可以存储这样的指令。
如图7所示,视频编码器20接收要被编码的视频帧内的当前视频块。在图7的示例中,视频编码器20包括模式选择单元40、参考图片存储器64(其也可以被称为解码图片缓冲区(DPB))、求和器50、变换处理单元52、量化单元54和熵编码单元56。模式选择单元40进而包括运动补偿单元44、运动估计单元42、帧内预测单元46和分割单元48。对于视频块重构,视频编码器20还包括逆量化单元58、逆变换单元60和求和器62。视频编码器20还包括滤波器单元63,其可以执行一种或多种类型的滤波(例如,环路内滤波)。下面参照图12讨论了滤波器单元63的一个示例的另外的细节。
在编码过程期间,视频编码器20接收要被编码的视频帧或切片。帧或切片可以被分成多个视频块。运动估计单元42和运动补偿单元44相对于一个或多个参考帧中的一个或多个块执行对所接收的视频块的帧间预测编码以提供时间预测。帧内预测单元46可以替代地使用与要被编码的块在相同的帧或切片中的一个或多个相邻块的像素来对所接收的视频块进行帧内预测,以提供空间预测。视频编码器20可以执行多个编码遍,例如,以便为视频数据的每个块选择适当的编码模式。
此外,分割单元48可以基于对先前编码遍中的先前分割方案的评估,来将视频数据的块分割为子块。例如,分割单元48可以首先将帧或切片分割为LCU,并且基于率失真分析(例如,率失真优化)来将每个LCU分割为子CU。模式选择单元40还可以产生指示将LCU分割为子CU的四叉树数据结构。四叉树的叶节点CU可以包括一个或多个PU和一个或多个TU。
模式选择单元40可以例如基于误差结果来选择预测模式(帧内或帧间)之一,并且将所得的预测块提供给求和器50以生成残差数据,并且提供给求和器62以重构编码块以用作参考帧。模式选择单元40还向熵编码单元56提供语法元素,诸如运动矢量、帧内模式指示符、分割信息和其它这样的语法信息。
运动估计单元42和运动补偿单元44可以高度集成,但是出于概念上的目的而分开示出。由运动估计单元42执行的运动估计是生成运动矢量的过程,运动矢量估计针对视频块的运动。例如,运动矢量可以指示当前视频帧或图片内的视频块的PU相对于以下项的位移:相对于在当前帧(或其它编码单元)内正被编码的当前块而言参考帧(或其它编码单元)内的预测块。预测块是在像素差方面被发现与要被编码的块紧密匹配的块,像素差可以由绝对差之和(SAD)、平方差之和(SSD)或其它差度量来确定。在一些示例中,视频编码器20可以计算被存储在参考图片存储器64中的参考图片的整数以下的像素位置的值。例如,视频编码器20可以对参考图片的四分之一像素位置、八分之一像素位置或其它分数的像素位置的值进行插值。因此,运动估计单元42可以相对于全部像素位置和分数像素位置执行运动搜索,并且以分数像素精度输出运动矢量。
运动估计单元42通过将经帧间编码的切片中的视频块的PU的位置与参考图片的预测块的位置进行比较来计算用于该PU的运动矢量。可以从第一参考图片列表(列表0)或第二参考图片列表(列表1)中选择参考图片,第一参考图片列表(列表0)或第二参考图片列表(列表1)中的每一者标识被存储在参考图片存储器64中的一个或多个参考图片。运动估计单元42向熵编码单元56和运动补偿单元44发送所计算出的运动矢量。
由运动补偿单元44执行的运动补偿可以涉及基于由运动估计单元42确定的运动矢量来取回或生成预测块。再次,在一些示例中,运动估计单元42和运动补偿单元44可以在功能上集成。在接收到用于当前视频块的PU的运动矢量时,运动补偿单元44可以在参考图片列表之一中定位运动矢量所指向的预测块。求和器50通过从正被编码的当前视频块的像素值中减去预测块的像素值来形成像素差值,从而形成残差视频块,如下所讨论的。通常,运动估计单元42执行相对于亮度分量的运动估计,并且运动补偿单元44将基于亮度分量所计算出的运动矢量用于色度分量和亮度分量两者。模式选择单元40还可以生成与视频块和视频切片相关联的语法元素,以供视频解码器30在对视频切片的视频块进行解码时使用。
此外,运动补偿单元44可以被配置为执行本公开内容的技术中的任何或所有技术(单独或以任何组合)。尽管关于运动补偿单元44进行了讨论,但是应当理解,模式选择单元40、运动估计单元42、分割单元48和/或熵编码单元56也可以被配置为单独地或结合运动补偿单元44来执行本公开内容的某些技术。
作为如上所述的由运动估计单元42和运动补偿单元44执行的帧间预测的替代,帧内预测单元46可以对当前块进行帧内预测。具体地,帧内预测单元46可以确定要用于对当前块进行编码的帧内预测模式。在一些示例中,帧内预测单元46可以例如在单独的编码遍期间使用各种帧内预测模式对当前块进行编码,并且帧内预测单元46(或者在一些示例中,模式选择单元40)可以从所测试的模式中选择要使用的适当的帧内预测模式。
例如,帧内预测单元46可以使用针对各种测试的帧内预测模式的率失真分析来计算率失真值,并且在所测试的模式当中选择具有最佳率失真特性的帧内预测模式。率失真分析通常确定在经编码的块与被编码以产生经编码的块的原始的未经编码的块之间的失真(或误差)量,以及用于产生经编码的块的比特率(即,比特数量)。帧内预测单元46可以根据针对各种经编码的块的失真和速率来计算比率,以确定哪种帧内预测模式表现出用于该块的最佳率失真值。
在为块选择帧内预测模式之后,帧内预测单元46可以将指示为该块所选择的帧内预测模式的信息提供给熵编码单元56。熵编码单元56可以对指示所选择的帧内预测模式的信息进行编码。视频编码器20可以在所发送的比特流配置数据(其可以包括多个帧内预测模式索引表和多个经修改的帧内预测模式索引表(也被称为码字映射表))中包括用于各种块的编码上下文的定义、以及对要用于每个上下文的最可能的帧内预测模式、帧内预测模式索引表和经修改的帧内预测模式索引表的指示。
视频编码器20通过从正被编码的原始视频块中减去来自模式选择单元40的预测数据,从而形成残差视频块。求和器50表示执行该减法运算的一个或多个组件。变换处理单元52将诸如离散余弦变换(DCT)或概念上类似的变换之类的变换应用于残差块,从而产生包括变换系数值的视频块。可以使用小波变换、整数变换、子带变换、离散正弦变换(DST)或其它类型的变换来代替DCT。在任何情况下,变换处理单元52将变换应用于残差块,从而产生变换系数的块。变换可以将残差信息从像素域转换到变换域,诸如频域。变换处理单元52可以将所得到的变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步降低比特率。量化过程可以减小与系数中的一些或所有系数相关联的比特深度。可以通过调整量化参数来修改量化程度。
在量化之后,熵编码单元56对经量化的变换系数进行熵编码。例如,熵编码单元56可以执行上下文自适应变长编码(CAVLC)、上下文自适应二进制算术编码(CABAC)、基于语法的上下文自适应二进制算术编码(SBAC)、概率区间分割熵(PIPE)编码、或另一种熵编码技术。在基于上下文的熵编码的情况下,上下文可以是基于相邻块的。在由熵编码单元56进行熵编码之后,可以将经编码的比特流发送到另一设备(例如,视频解码器30),或者将其存档以用于稍后的传输或取得。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换,以重构像素域中的残差块。具体地,求和器62将经重构的残差块与由运动补偿单元44或帧内预测单元46较早产生的经运动补偿的预测块相加,以产生经重构的视频块以存储在参考图片存储器64中。运动估计单元42和运动补偿单元44可以使用经重构的视频块作为参考块来对后续视频帧中的块进行帧间编码。
图8是示出可以实现本公开内容的技术的视频解码器30的示例的框图。在图8的示例中,视频解码器30包括熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考图片存储器82和求和器80。在一些示例中,视频解码器30可以执行通常与关于视频编码器20(图7)描述的编码遍相反的解码遍。运动补偿单元72可以基于从熵解码单元70接收的运动矢量来生成预测数据,而帧内预测单元74可以基于从熵解码单元70接收的帧内预测模式指示符来生成预测数据。
示出了图8的各个单元以帮助理解由视频解码器30执行的操作。这些单元可以被实现为固定功能电路、可编程电路、或其组合。固定功能电路是指提供特定功能并且在可以执行的操作上预先设置的电路。可编程电路是指可以被编程以执行各种任务并且在可以执行的操作中提供灵活功能的电路。例如,可编程电路可以执行软件或固件,软件或固件使得可编程电路以软件或固件的指令所定义的方式进行操作。固定功能电路可以执行软件指令(例如,以接收参数或输出参数),但是固定功能电路执行的操作类型通常是不可变的。在一些示例中,这些单元中的一个或多个单元可以是不同的电路块(固定功能或可编程),并且在一些示例中,一个或多个单元可以是集成电路。
视频解码器30可以包括由可编程电路形成的算术逻辑单元(ALU)、基本功能单元(EFU)、数字电路、模拟电路、和/或可编程核。在其中使用由可编程电路执行的软件来执行视频解码器30的操作的示例中,存储器可以存储视频解码器30接收并且执行的软件的目标代码,或者视频解码器30内的另一存储器可以存储这样的指令。
在解码过程中,视频解码器30从视频编码器20接收表示经编码的视频切片的视频块和相关联的语法元素的经编码的视频比特流。视频解码器30的熵解码单元70对比特流进行熵解码以生成经量化的系数、运动矢量或帧内预测模式指示符、以及其它语法元素。熵解码单元70将运动矢量和其它语法元素转发到运动补偿单元72。视频解码器30可以接收在视频切片级别和/或视频块级别的语法元素。
当视频切片被编码为帧内编码(I)切片时,帧内预测单元74可以基于用于信号通知的帧内预测模式和来自当前帧或图片的先前解码的块的数据来生成用于当前视频切片的视频块的预测数据。当视频帧被编码为帧间编码(即,B、P或GPB)切片时,运动补偿单元72基于从熵解码单元70接收的运动矢量和其它语法元素来产生用于当前视频切片的视频块的预测块。可以根据参考图片列表之一内的参考图片之一来产生预测块。视频解码器30可以基于被存储在参考图片存储器82中的参考图片,使用默认构造技术来构造参考帧列表(列表0和列表1)。
运动补偿单元72通过解析运动矢量和其它语法元素来确定用于当前视频切片的视频块的预测信息,并且使用预测信息来产生用于正被解码的当前视频块的预测块。例如,运动补偿单元72使用所接收的语法元素中的一些语法元素来确定用于对视频切片的视频块进行编码的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,B切片、P切片或GPB切片)、参考图片列表中的用于切片的一个或多个参考图片列表的构造信息、用于切片的每个经帧间编码的视频块的运动矢量、切片的每个经帧间编码的视频块的帧间预测状态、以及用于对当前视频切片中的视频块进行解码的其它信息。
运动补偿单元72还可以基于用于像素以下的精度的插值滤波器来执行插值。运动补偿单元72可以使用由视频编码器20在视频块的编码期间使用的插值滤波器来计算用于参考块的整数以下的像素的内插值。在这种情况下,运动补偿单元72可以根据所接收的语法元素来确定由视频编码器20使用的插值滤波器,并且使用插值滤波器来产生预测块。
此外,运动补偿单元72可以被配置为执行本公开内容的技术中的任何或所有技术(单独地或以任何组合)。例如,运动补偿单元72可以被配置为执行本文讨论的BIO技术。
逆量化单元76对在比特流中提供并且由熵解码单元70解码的经量化的变换系数进行逆量化,即反量化。逆量化过程可以包括:使用由视频解码器30针对视频切片中的每个视频块所计算出的量化参数QPY来确定应当应用的量化程度以及同样的逆量化程度。
逆变换单元78将逆变换(例如,逆DCT、逆整数变换或概念上类似的逆变换过程)应用于变换系数,以便在像素域中产生残差块。
在运动补偿单元72基于运动矢量和其它语法元素生成用于当前视频块的预测块之后,视频解码器30通过将来自逆变换单元78的残差块与由运动补偿单元72生成的对应的预测块相加,来形成经解码的视频块。求和器80表示执行该求和操作的一个或多个组件。
在求和器80重构经解码的视频块或图片之后,滤波器单元81可以执行一个或多个滤波活动(例如,环路内滤波)以生成经滤波的重构块或图片。下面参照图12来讨论滤波器单元81的一个示例的另外的细节。
然后,将给定帧或图片中的经解码的视频块存储在参考图片存储器82中,参考图片存储器82存储用于后续运动补偿的参考图片。参考图片存储器82还存储经解码的视频以用于稍后呈现在显示设备(诸如图1的显示设备32)上。例如,参考图片存储器82可以存储经解码的图片。
根据本公开内容的一种或多种技术,视频编码器20和视频解码器30可以包括填充单元,其被配置为将填充应用于360视频的图片。例如,视频编码器20可以包括填充单元65,并且视频解码器30可以包括填充单元83。
如上所讨论的,可以在环路滤波之前或之后应用360填充。例如,如图7所示,填充单元65可以位于滤波器单元63之后并且位于参考图片存储器64之前。在图7的架构中,与传统的填充(诸如在图片边界周围的样本复制)相比,运动估计和补偿过程可以更高效地预测来自填充区域的块。图8示出了对应的解码器架构。具体地,如图8所示,填充单元83可以位于滤波器单元81之后并且位于参考图片存储器82之前。在图7和图8两者中,相应的滤波器单元(即,滤波器单元63和滤波器单元81)可以包含诸如解块滤波器、样本自适应偏移(SAO)滤波器、和/或自适应环路滤波器(ALF)之类的环路滤波器,其对重构块或图片进行滤波,以生成经滤波的重构块或图片。这些滤波器中的每一者可能需要某种形式的填充(例如,在图片边界周围的样本复制),该填充可以在将360填充应用于经滤波的重构图片之前被去除。
由于对于环路滤波器而言可能需要填充,因此在一些示例中,可能更加高效的是,在顺序地应用环路滤波器并且将经填充且经滤波的重构图片存储到参考图片存储器中之前,对重构图片应用一次360填充。例如,如图9所示,填充单元65可以位于滤波器单元63之前。图10示出了对应的解码器架构。具体地,如图10所示,填充单元83可以位于滤波器单元81之前。
后一种架构可能需要对环路滤波器的适配,以考虑例如在ACP的立方体面周围的各种填充区域。于2018年7月3日提交的并且公开为US-2019-0014347-A1的美国专利申请No.16/026,350描述了对解块环路滤波器的适配以用于适当地对360度视频图片进行滤波。类似地,SAO和ALF环路滤波器需要适配,使得它们仅对立方体面区域(包括每个立方体面的边界)进行滤波。一种适配包括将偏移应用于360填充图片内的每个立方体面的滤波。图11示出了根据本公开内容的一种或多种技术的将偏移应用于360填充图片内的每个立方体面的滤波的示例。一个目标可以是将滤波限于立方体面和四个立方体面的边,而如果需要的话,滤波使用360填充样本。以这种方式,视频编码器20和/或视频解码器30可以减少经渲染的视口中的接缝伪影。
图12是示出可以实现本公开内容的技术的滤波器单元的示例的框图。滤波器单元101可以被认为是视频编码器20的滤波器单元63或视频解码器30的滤波器单元81的示例。如图12所示,滤波器单元101可以包括解块滤波器103、样本自适应偏移(SAO)滤波器105和自适应环路滤波器107,解块滤波器103被配置为对块边界进行滤波以从经重构的视频中去除块状伪影。在其它示例中,滤波器单元101可以包括与图12所示相比更少或更多的滤波器。
作为在视频编解码器环路中应用360填充的替代,于2017年6月29日提交的美国临时申请No.62/526,700描述了通过在视频编码器之前向视频图片应用填充(例如,作为从ERP到CMP、ACP或ECP的投影过程的一部分)来减少接缝伪影。该方法可以减少针对具有低运动内容的360度视频序列的接缝伪影,而对于高运动内容,相对窄的填充(例如,具有八个样本的宽度)可能不够宽来减少接缝伪影。
在本公开内容中提出的360填充可以更宽。例如,所添加的填充的宽度可以大于8个样本。例如,根据当前公开内容添加的填充的宽度可以是32、64、128或更多个样本。因此,可以更有效地减少接缝伪影(例如,在高运动情况下)。但是,对于360度视频图片中的极大运动,可能出现一些接缝伪影。因此,根据本公开内容的一种或多种技术,后处理单元可以应用额外的滤波。后处理单元可以被包括在上述各种视频编解码器架构中。例如,后处理单元或后处理设备可以将额外的滤波应用于视频编码器20的输出或视频解码器30的输出。这种后处理滤波可以应用于两种填充方法或没有任何填充。
后处理滤波的一个示例可以包括将低通滤波器应用于经渲染的视口的接缝伪影所位于的区域,以使转换平滑。在另一示例中,对应的填充区域可以混合在一起或“融合(blend)”,例如,通过根据与立方体面边界的距离来应用加权。
图13是示出本公开内容的示例编码方法的流程图。包括填充单元65的视频编码器20可以被配置为执行图13的技术。
在本公开内容的一个示例中,视频编码器20可以被配置为接收360度视频数据的球体(1300),并且将360度视频数据的球体布置成从360度视频数据的球体的投影获得的封装面的图片(1302)。例如,视频编码器20可以被配置为使用等矩形投影(ERP)、立方图投影(CMP)、经调整的立方图投影(ACP)、赤道圆柱投影(ECP)或任何其它投影技术中的任何一种来将360度视频数据的球体布置成封装面的图片。作为一个示例,视频编码器20可以将360度视频数据的球体布置成封装面的图片,如图2A–2D中的任何一个图所示。
视频编码器20还可以被配置为对封装面的图片进行编码(1304)。例如,运动补偿单元44可以生成用于封装面的图片的块的预测块,求和器50可以计算用于图片的块的残差块,并且变换处理单元52和量化单元54可以分别对残差块的系数进行变换和量化。
视频编码器20可以对经编码的360度视频数据的图片进行重构,以获得360度视频数据的重构图片,360度视频数据的重构图片被布置在封装面中(1306)。例如,逆量化单元58和逆变换单元60可以分别对残差块的量化系数进行逆量化和逆变换,以生成经重构的残差块,并且求和器62可以将经重构的残差块与由运动补偿单元44或帧内预测单元46产生的对应的经运动补偿的预测块相加,以产生经重构的视频块。
视频编码器20可以对360度视频数据的重构图片进行填充,以生成360度视频数据的经填充的重构图片(1308)。例如,填充单元65可以在360度视频数据的重构图片的投影区域(例如,封装面)周围添加额外的样本,如图5A-5C和6A-6C的示例中所示。
在一些示例中,为了添加额外的样本,填充单元65可以在封装面周围对称地添加额外的样本。例如,在图5A、5C、6A和6C的示例中,填充单元65可以在每个面周围(在虚线外部的区域)添加样本。
在一些示例中,为了添加额外的样本,填充单元65可以在封装面周围不对称地添加额外的样本。例如,在图5B和6B的示例中,填充单元65可以在每个面周围(在虚线外部的区域)添加样本。
填充单元65可以以各种方式获得额外的样本。作为一个示例,填充单元65可以将投影区域的边界样本复制到填充区域中。作为另一示例,填充单元65可以执行投影过程以将封装面转换为360度视频数据的球体,并且从该球体获得额外的样本。
视频编码器20可以对360度视频数据的经填充的重构图片进行环路内滤波(1310),并且存储360度视频数据的经填充且经滤波的重构图片(1312)。例如,滤波器单元63可以将诸如解块、SAO和ALF之类的滤波器的任何组合应用于360度视频数据的经填充的重构图片,以生成360度视频数据的经填充且经滤波的重构图片。滤波器单元63可以将360度视频数据的经填充且经滤波的重构图片存储在参考图片存储器64中。以这种方式,视频编码器20可以减轻由于在封装面之间的边框处的变形和不连续而导致的失真和编码效率问题。
在一些示例中,滤波器单元63可以基于360度视频数据的经填充的重构图片的被包括在封装面中的样本以及360度视频数据的经填充的重构图片的所添加的额外样本,来对360度视频数据的经填充的重构图片的被包括在封装面中的样本进行滤波。在这样的示例中的一些示例中,滤波器单元63可以不对360度视频数据的经填充的重构图片的所添加的额外样本进行滤波。以这种方式,滤波器单元63可以将滤波限于封装面(例如,立方体面)。
视频编码器20可以基于360度视频数据的经填充且经滤波的重构图片来对360度视频数据的后续图片进行编码(1314)。例如,运动估计单元42和/或运动补偿单元44可以利用360度视频数据的经填充且经滤波的重构图片的一个或多个块作为用于执行帧间预测的预测因子(predictor)块。
图14是示出本公开内容的示例解码方法的流程图。包括滤波器单元81的视频解码器30可以被配置为执行图14的技术。
在本公开内容的一个示例中,视频解码器30可以被配置为接收360度视频数据的编码图片,360度视频数据的编码图片被布置在从360度视频数据的球体的投影获得的封装面中(1400)。可以使用等矩形投影(ERP)、立方图投影(CMP)、经调整的立方图投影(ACP)、赤道圆柱投影(ECP)或任何其它投影技术中的任何一种来从投影获得封装面。
视频解码器30可以对经编码的360度视频数据的图片进行重构,以获得360度视频数据的重构图片,360度视频数据的重构图片被布置在封装面中(1402)。例如,逆量化单元76和逆变换单元78可以分别对残差块的量化系数(例如,从熵解码单元70获得)进行逆量化和逆变换,以生成经重构的残差块,并且求和器80可以将经重构的残差块与由运动补偿单元72产生的对应的经运动补偿的预测块相加,以产生经重构的视频块。
视频解码器30可以对360度视频数据的重构图片进行填充,以生成360度视频数据的经填充的重构图片(1404)。例如,填充单元83可以在360度视频数据的重构图片的投影区域(例如,封装面)周围添加额外的样本,如图5A-5C和6A-6C的示例中所示。
在一些示例中,为了添加额外的样本,填充单元83可以在封装面周围对称地添加额外的样本。例如,在图5A、5C、6A和6C的示例中,填充单元83可以在每个面周围(在虚线外部的区域)添加样本。
在一些示例中,为了添加额外的样本,填充单元83可以在封装面周围不对称地添加额外的样本。例如,在图5B和6B的示例中,填充单元83可以在每个面周围(在虚线外部的区域)添加样本。
填充单元83可以以各种方式获得额外的样本。作为一个示例,填充单元83可以将投影区域的边界样本复制到填充区域中。作为另一示例,填充单元83可以执行投影过程以将封装面转换为360度视频数据的球体,并且从该球体获得额外的样本。
视频解码器30可以对360度视频数据的经填充的重构图片进行环路内滤波(1406),并且存储360度视频数据的经填充且经滤波的重构图片(1408)。例如,滤波器单元81可以将诸如解块、SAO和ALF之类的滤波器的任何组合应用于360度视频数据的经填充的重构图片,以生成360度视频数据的经填充且经滤波的重构图片。滤波器单元81可以将360度视频数据的经填充且经滤波的重构图片存储在参考图片存储器82中。以这种方式,视频解码器30可以减轻由于在封装面之间的边框处的变形和不连续而导致的失真和编码效率问题。
在一些示例中,滤波器单元81可以基于360度视频数据的经填充的重构图片的被包括在封装面中的样本以及360度视频数据的经填充的重构图片的所添加的额外样本,来对360度视频数据的经填充的重构图片的被包括在封装面中的样本进行滤波。在这样的示例中的一些示例中,滤波器单元81可以不对360度视频数据的经填充的重构图片的所添加的额外样本进行滤波。以这种方式,滤波器单元81可以将滤波限于封装面(例如,立方体面)。
视频解码器30可以基于360度视频数据的经填充且经滤波的重构图片来对360度视频数据的后续图片进行重构(1410)。例如,运动补偿单元72可以利用360度视频数据的经填充且经滤波的重构图片的一个或多个块作为用于执行帧间预测的预测因子块。
视频解码器30或另一渲染器可以渲染360度视频数据的视口。例如,视频解码器30可以生成与观看者的头部朝向匹配的视口。
在一些示例中,可以应用后处理。例如,视频解码器30可以包含后处理器,其被配置为应用滤波以减少或消除接缝伪影。例如,后处理器可以进行以下操作:识别在经渲染的视口中的包括在封装面之间的接缝的一个或多个区域;以及将滤波器应用于一个或多个所识别的区域。如上所讨论的,在一些示例中,滤波器可以包括低通滤波器。
以下带编号的示例可以示出本公开内容的一个或多个方面:
示例1。一种对360度视频数据进行解码的方法,所述方法包括:接收360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的解码图片被布置在所述封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
示例2。根据示例1所述的方法,其中,对360度视频数据的所述重构图片进行填充包括:在360度视频数据的所述重构图片的投影区域周围添加额外样本。
示例3。根据示例2所述的方法,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,在所述投影区域周围添加所述额外样本包括:在所述封装面周围对称地添加额外样本。
示例4。根据示例2所述的方法,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,在所述投影区域周围添加所述额外样本包括:在所述封装面周围不对称地添加额外样本。
示例5。根据示例2-4的任何组合所述的方法,其中,所述额外样本包括额外的投影样本。
示例6。根据示例2-5的任何组合所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
示例7。根据示例6所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:不对360度视频数据的所述经填充的重构图片的所添加的额外样本进行滤波。
示例8。根据示例1-7的任何组合所述的方法,其中,所述投影是所述360度视频数据的所述球体的立方图投影。
示例9。根据示例1–8的任何组合所述的方法,还包括:从360度视频数据的所述经填充且经滤波的重构图片中去除所述填充,以生成360度视频数据的经滤波的重构图片。
示例10。根据示例9所述的方法,还包括:基于360度视频数据的所述经滤波的重构图片来渲染所述360度视频数据的视口。
示例11。根据示例10所述的方法,其中,渲染所述360度视频数据的所述视口包括:识别在经渲染的视口中的包括所述封装面之间的接缝的一个或多个区域;以及将滤波器应用于一个或多个识别的区域。
示例12。一种用于对360度视频数据进行解码的设备,所述设备包括:存储器;以及一个或多个处理器,其在电路中实现并且被配置为执行根据示例1-11的任何组合所述的方法。
示例13。一种用于对360度视频数据进行解码的设备,所述设备包括用于执行根据示例1-11的任何组合所述的方法的单元。
示例14。一种存储指令的计算机可读存储介质,所述指令在被执行时使得视频解码器的一个或多个处理器执行根据示例1-11的任何组合所述的方法。
示例15。一种对360度视频数据进行编码的方法,所述方法包括:获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
示例16。根据示例15所述的方法,其中,对360度视频数据的所述重构图片进行填充包括:在360度视频数据的所述重构图片的投影区域周围添加额外样本。
示例17。根据示例16所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
示例18。根据示例15-17的任何组合所述的方法,还包括:输出包括所述360度视频数据的表示的经编码的视频比特流。
示例19。一种用于对360度视频数据进行解码的设备,所述设备包括:存储器;以及一个或多个处理器,其在电路中实现并且被配置为执行根据示例15-18的任何组合所述的方法。
示例20。一种用于对360度视频数据进行解码的设备,所述设备包括用于执行根据示例15-18的任何组合所述的方法的单元。
示例21。一种存储指令的计算机可读存储介质,所述指令在被执行时使得视频解码器的一个或多个处理器执行根据示例15-18的任何组合所述的方法。
示例22。示例1-21的任何组合。
应认识到的是,根据示例,本文描述的任何技术的某些动作或事件可以以不同的顺序执行,可以被添加、合并或完全省略(例如,并非所有描述的动作或事件是对于实施所述技术都是必要的)。此外,在某些示例中,动作或事件可以例如通过多线程处理、中断处理或多个处理器并发地而不是顺序地执行。
在一个或多个示例中,所描述的功能可以用硬件、软件、固件或其任何组合来实现。如果用软件来实现,则所述功能可以作为一个或多个指令或代码存储在计算机可读介质上或者通过其进行传输并且由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其对应于诸如数据存储介质之类的有形介质或者通信介质,所述通信介质包括例如根据通信协议来促进计算机程序从一个地方传送到另一个地方的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质、或者(2)诸如信号或载波之类的通信介质。数据存储介质可以是可以由一个或多个计算机或者一个或多个处理器访问以取得用于实现在本公开内容中描述的技术的指令、代码和/或数据结构的任何可用的介质。计算机程序产品可以包括计算机可读介质。
通过举例而非限制性的方式,这样的计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、闪存、或者能够用于以指令或数据结构形式存储期望的程序代码以及能够由计算机访问的任何其它介质。此外,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者无线技术(例如,红外线、无线电和微波)从网站、服务器或其它远程源传输指令,则同轴电缆、光纤光缆、双绞线、DSL或者无线技术(例如,红外线、无线电和微波)被包括在介质的定义中。然而,应当理解的是,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其它暂时性介质,而是替代地针对非暂时性的有形存储介质。如本文所使用的,磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁性地复制数据,而光盘则利用激光来光学地复制数据。上述各项的组合也应当被包括在计算机可读介质的范围之内。
指令可以由一个或多个处理器来执行,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或其它等效的集成或分立逻辑电路。因此,如本文所使用的术语“处理器”可以指代前述结构中的任何一者或者适于实现本文描述的技术的任何其它结构。另外,在一些方面中,本文描述的功能可以在被配置用于编码和解码的专用硬件和/或软件模块内提供,或者被并入经组合的编解码器中。此外,所述技术可以完全在一个或多个电路或逻辑元件中实现。
本公开内容的技术可以在各种各样的设备或装置中实现,包括无线手机、集成电路(IC)或一组IC(例如,芯片组)。在本公开内容中描述了各种组件、模块或单元以强调被配置以执行所公开的技术的设备的功能性方面,但是不一定需要通过不同的硬件单元来实现。确切而言,如上所述,各种单元可以被组合在编解码器硬件单元中,或者由可互操作的硬件单元的集合(包括如上所述的一个或多个处理器)结合适当的软件和/或固件来提供。
已经描述了各个示例。这些和其它示例在所附的权利要求的范围内。
Claims (30)
1.一种对360度视频数据进行解码的方法,所述方法包括:
接收360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;
对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在所述封装面中;
对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;
对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及
将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
2.根据权利要求1所述的方法,其中,对360度视频数据的所述重构图片进行填充包括:
在360度视频数据的所述重构图片的投影区域周围添加额外样本。
3.根据权利要求2所述的方法,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,在所述投影区域周围添加所述额外样本包括:在所述封装面周围对称地添加额外样本。
4.根据权利要求2所述的方法,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,在所述投影区域周围添加所述额外样本包括:在所述封装面周围不对称地添加额外样本。
5.根据权利要求2所述的方法,其中,所述额外样本包括额外的投影样本。
6.根据权利要求2所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:
基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
7.根据权利要求6所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:
不对360度视频数据的所述经填充的重构图片的所添加的额外样本进行滤波。
8.根据权利要求1所述的方法,其中,所述投影是所述360度视频数据的所述球体的立方图投影。
9.根据权利要求1所述的方法,还包括:
从360度视频数据的所述经填充且经滤波的重构图片中去除所述填充,以生成360度视频数据的经滤波的重构图片;以及
基于360度视频数据的所述经滤波的重构图片来渲染所述360度视频数据的视口。
10.根据权利要求1所述的方法,还包括:
基于360度视频数据的经滤波的重构图片来渲染所述360度视频数据的视口。
11.根据权利要求10所述的方法,其中,渲染所述360度视频数据的所述视口包括:
识别在经渲染的视口中的包括在所述封装面之间的接缝的一个或多个区域;以及
将滤波器应用于一个或多个识别的区域。
12.根据权利要求1所述的方法,还包括:
通过至少使用360度视频数据的所述经填充且经滤波的重构图片执行运动补偿,来预测360度视频数据的后续图片。
13.一种用于对360度视频数据进行解码的设备,所述设备包括:
存储器;以及
一个或多个处理器,其在电路中实现并且被配置为:
从经编码的视频比特流中获得360度视频数据的编码图片,360度视频数据的所述编码图片被布置在从所述360度视频数据的球体的投影获得的封装面中;
对经编码的360度视频数据的所述图片进行解码,以获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在所述封装面中;
对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;
对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及
将360度视频数据的所述经填充且经滤波的重构图片存储在所述存储器中,以在预测360度视频数据的后续图片时使用。
14.根据权利要求13所述的设备,其中,为了填充360度视频数据的所述重构图片,所述一个或多个处理器被配置为:在360度视频数据的所述重构图片的投影区域周围添加额外样本。
15.根据权利要求14所述的设备,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,为了在所述投影区域周围添加所述额外样本,所述一个或多个处理器被配置为:在所述封装面周围对称地添加额外样本。
16.根据权利要求14所述的设备,其中,360度视频数据的所述重构图片的所述投影区域包括所述封装面,并且其中,为了在所述投影区域周围添加所述额外样本,所述一个或多个处理器被配置为:在所述封装面周围不对称地添加额外样本。
17.根据权利要求14所述的设备,其中,所述额外样本包括额外的投影样本。
18.根据权利要求14所述的设备,其中,为了对360度视频数据的所述经填充的重构图片进行环路内滤波,所述一个或多个处理器被配置为:
基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
19.根据权利要求18所述的设备,其中,为了对360度视频数据的所述经填充的重构图片进行环路内滤波,所述一个或多个处理器被配置为:
不对360度视频数据的所述经填充的重构图片的所添加的额外样本进行滤波。
20.根据权利要求13所述的设备,其中,所述投影是所述360度视频数据的所述球体的立方图投影。
21.根据权利要求13所述的设备,其中,所述一个或多个处理器还被配置为:
从360度视频数据的所述经填充且经滤波的重构图片中去除所述填充,以生成360度视频数据的经滤波的重构图片;以及
基于360度视频数据的所述经滤波的重构图片来渲染所述360度视频数据的视口。
22.根据权利要求21所述的设备,其中,所述一个或多个处理器还被配置为:
基于360度视频数据的所述经滤波的重构图片来渲染所述360度视频数据的视口。
23.根据权利要求22所述的设备,其中,为了渲染所述360度视频数据的所述视口,所述一个或多个处理器被配置为:
识别在经渲染的视口中的包括所述封装面之间的接缝的一个或多个区域;以及
将滤波器应用于一个或多个识别的区域。
24.一种对360度视频数据进行编码的方法,所述方法包括:
获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;
对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;
对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及
将360度视频数据的所述经填充且经滤波的重构图片存储在参考图片存储器中,以在预测360度视频数据的后续图片时使用。
25.根据权利要求24所述的方法,其中,对360度视频数据的所述重构图片进行填充包括:
在360度视频数据的所述重构图片的投影区域周围添加额外样本。
26.根据权利要求25所述的方法,其中,对360度视频数据的所述经填充的重构图片进行环路内滤波包括:
基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
27.根据权利要求24所述的方法,还包括:
输出包括所述360度视频数据的表示的经编码的视频比特流。
28.一种用于对360度视频数据进行编码的设备,所述设备包括:
存储器;以及
一个或多个处理器,其在电路中实现并且被配置为:
获得360度视频数据的重构图片,360度视频数据的所述重构图片被布置在从所述360度视频数据的球体的投影获得的封装面中;
对360度视频数据的所述重构图片进行填充,以生成360度视频数据的经填充的重构图片;
对360度视频数据的所述经填充的重构图片进行环路内滤波,以生成360度视频数据的经填充且经滤波的重构图片;以及
将360度视频数据的所述经填充且经滤波的重构图片存储在所述存储器中,以在预测360度视频数据的后续图片时使用。
29.根据权利要求28所述的设备,其中,为了对360度视频数据的所述重构图片进行填充,所述一个或多个处理器被配置为:
在360度视频数据的所述重构图片的投影区域周围添加额外样本。
30.根据权利要求29所述的设备,其中,为了对360度视频数据的所述经填充的重构图片进行环路内滤波,所述一个或多个处理器被配置为:
基于360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本以及360度视频数据的所述经填充的重构图片的所添加的额外样本,来对360度视频数据的所述经填充的重构图片的被包括在所述封装面中的样本进行滤波。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862630624P | 2018-02-14 | 2018-02-14 | |
US62/630,624 | 2018-02-14 | ||
US16/270,275 | 2019-02-07 | ||
US16/270,275 US11212438B2 (en) | 2018-02-14 | 2019-02-07 | Loop filter padding for 360-degree video coding |
PCT/US2019/017289 WO2019160763A1 (en) | 2018-02-14 | 2019-02-08 | Loop filter padding for 360-degree video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111713113A true CN111713113A (zh) | 2020-09-25 |
CN111713113B CN111713113B (zh) | 2022-03-22 |
Family
ID=67541308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980012973.8A Active CN111713113B (zh) | 2018-02-14 | 2019-02-08 | 用于360度视频编码的环路滤波填充 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11212438B2 (zh) |
CN (1) | CN111713113B (zh) |
TW (1) | TW201946448A (zh) |
WO (1) | WO2019160763A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10999602B2 (en) | 2016-12-23 | 2021-05-04 | Apple Inc. | Sphere projected motion estimation/compensation and mode decision |
US11259046B2 (en) | 2017-02-15 | 2022-02-22 | Apple Inc. | Processing of equirectangular object data to compensate for distortion by spherical projections |
US10924747B2 (en) | 2017-02-27 | 2021-02-16 | Apple Inc. | Video coding techniques for multi-view video |
US11093752B2 (en) | 2017-06-02 | 2021-08-17 | Apple Inc. | Object tracking in multi-view video |
US20190005709A1 (en) * | 2017-06-30 | 2019-01-03 | Apple Inc. | Techniques for Correction of Visual Artifacts in Multi-View Images |
US10754242B2 (en) | 2017-06-30 | 2020-08-25 | Apple Inc. | Adaptive resolution and projection format in multi-direction video |
US10715832B2 (en) * | 2018-03-16 | 2020-07-14 | Mediatek Inc. | Method and apparatus of block partition for VR360 video coding |
JP2022500914A (ja) * | 2018-09-14 | 2022-01-04 | ヴィド スケール インコーポレイテッド | フレキシブルグリッドリージョンのための方法および装置 |
KR20210094646A (ko) * | 2018-12-14 | 2021-07-29 | 지티이 코포레이션 | 몰입형 비디오 비트 스트림 처리 |
CN114245988A (zh) * | 2019-06-21 | 2022-03-25 | 三星电子株式会社 | 用于在约束预测模式下执行后重建滤波的视频编码方法和设备以及视频解码方法和设备 |
EP3981150A4 (en) | 2019-07-09 | 2022-08-03 | Beijing Bytedance Network Technology Co., Ltd. | SAMPLE DETERMINATION FOR ADAPTIVE LOOP FILTERING |
CN117278747A (zh) | 2019-09-22 | 2023-12-22 | 北京字节跳动网络技术有限公司 | 自适应环路滤波中的填充过程 |
CN117834924A (zh) | 2019-09-27 | 2024-04-05 | 北京字节跳动网络技术有限公司 | 不同视频单元之间的自适应环路滤波 |
KR20220071203A (ko) | 2019-10-10 | 2022-05-31 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 적응적 루프 필터링에서 이용 불가능한 샘플 위치들에서의 패딩 프로세스 |
US11711537B2 (en) | 2019-12-17 | 2023-07-25 | Alibaba Group Holding Limited | Methods for performing wrap-around motion compensation |
WO2021163845A1 (en) * | 2020-02-17 | 2021-08-26 | Intel Corporation | Enhancing 360-degree video using convolutional neural network (cnn) -based filter |
US11785237B2 (en) | 2020-03-26 | 2023-10-10 | Alibaba Group Holding Limited | Methods for signaling video coding data |
CN115209181B (zh) * | 2022-06-09 | 2024-03-22 | 咪咕视讯科技有限公司 | 一种基于环绕视角的视频合成方法、控制器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070076972A1 (en) * | 2005-09-30 | 2007-04-05 | Yi-Jen Chiu | System and method of spatio-temporal edge-preserved filtering techniques to reduce ringing and mosquito noise of digital pictures |
CN107113414A (zh) * | 2014-11-14 | 2017-08-29 | 三星电子株式会社 | 使用区域自适应平滑的360度视频的编码 |
US20170366808A1 (en) * | 2016-06-15 | 2017-12-21 | Mediatek Inc. | Method and Apparatus for Selective Filtering of Cubic-Face Frames |
US20180020202A1 (en) * | 2016-07-15 | 2018-01-18 | Mediatek Inc. | Method And Apparatus For Filtering 360-Degree Video Boundaries |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017051072A1 (en) * | 2015-09-23 | 2017-03-30 | Nokia Technologies Oy | A method, an apparatus and a computer program product for coding a 360-degree panoramic video |
US10887621B2 (en) * | 2016-07-08 | 2021-01-05 | Vid Scale, Inc. | 360-degree video coding using geometry projection |
JP2019530311A (ja) * | 2016-09-02 | 2019-10-17 | ヴィド スケール インコーポレイテッド | 360度ビデオ情報をシグナリングするための方法およびシステム |
US20190253624A1 (en) * | 2017-07-17 | 2019-08-15 | Ki Baek Kim | Image data encoding/decoding method and apparatus |
CN110024407B (zh) * | 2016-10-04 | 2021-10-15 | 有限公司B1影像技术研究所 | 图像数据编码/解码方法和装置 |
US20180098090A1 (en) * | 2016-10-04 | 2018-04-05 | Mediatek Inc. | Method and Apparatus for Rearranging VR Video Format and Constrained Encoding Parameters |
GB2555788A (en) * | 2016-11-08 | 2018-05-16 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
US20180192074A1 (en) * | 2017-01-03 | 2018-07-05 | Mediatek Inc. | Video processing method for processing projection-based frame with 360-degree content represented by projection faces packed in 360-degree virtual reality projection layout |
US10915986B2 (en) | 2017-03-20 | 2021-02-09 | Qualcomm Incorporated | Adaptive perturbed cube map projection |
US10957044B2 (en) | 2017-03-22 | 2021-03-23 | Qualcomm Incorporated | Sphere pole projections for efficient compression of 360-degree video |
US10839480B2 (en) | 2017-03-22 | 2020-11-17 | Qualcomm Incorporated | Sphere equator projection for efficient compression of 360-degree video |
EP3610649A1 (en) * | 2017-04-11 | 2020-02-19 | VID SCALE, Inc. | 360-degree video coding using face continuities |
US11032545B2 (en) | 2017-06-29 | 2021-06-08 | Qualcomm Incorporated | Reducing seam artifacts in 360-degree video |
US10798417B2 (en) | 2017-07-05 | 2020-10-06 | Qualcomm Incorporated | Deblock filtering for 360-degree video coding |
-
2019
- 2019-02-07 US US16/270,275 patent/US11212438B2/en active Active
- 2019-02-08 CN CN201980012973.8A patent/CN111713113B/zh active Active
- 2019-02-08 WO PCT/US2019/017289 patent/WO2019160763A1/en active Application Filing
- 2019-02-11 TW TW108104479A patent/TW201946448A/zh unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070076972A1 (en) * | 2005-09-30 | 2007-04-05 | Yi-Jen Chiu | System and method of spatio-temporal edge-preserved filtering techniques to reduce ringing and mosquito noise of digital pictures |
CN107113414A (zh) * | 2014-11-14 | 2017-08-29 | 三星电子株式会社 | 使用区域自适应平滑的360度视频的编码 |
US20170366808A1 (en) * | 2016-06-15 | 2017-12-21 | Mediatek Inc. | Method and Apparatus for Selective Filtering of Cubic-Face Frames |
US20180020202A1 (en) * | 2016-07-15 | 2018-01-18 | Mediatek Inc. | Method And Apparatus For Filtering 360-Degree Video Boundaries |
Non-Patent Citations (2)
Title |
---|
VAN DER AUWERA G ET AL: "AHG8:ECP with padding for 360-degree video", 《JVET MEETING JVET-JG0074》 * |
白瑞广: "全景视频系统若干关键技术研究", 《中国优秀硕士论文全文数据库(电子期刊)》 * |
Also Published As
Publication number | Publication date |
---|---|
WO2019160763A1 (en) | 2019-08-22 |
US11212438B2 (en) | 2021-12-28 |
TW201946448A (zh) | 2019-12-01 |
CN111713113B (zh) | 2022-03-22 |
US20190253622A1 (en) | 2019-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111713113B (zh) | 用于360度视频编码的环路滤波填充 | |
US10484682B2 (en) | Reference picture derivation and motion compensation for 360-degree video coding | |
CN113228633B (zh) | 视频编解码的方法和设备 | |
CN107408400B (zh) | 用于处理视频数据的装置和方法 | |
KR20160135226A (ko) | 비디오 코딩에서 인트라 블록 카피를 위한 검색 영역 결정 | |
CN110754091B (zh) | 用于360度视频编码的解块滤波 | |
US10721465B2 (en) | Motion compensation for cubemap packed frames | |
US11356681B2 (en) | Coded video sub-bitstream extraction | |
US11483558B2 (en) | Method for region-wise scalability with adaptive resolution change | |
US11343524B2 (en) | Method for adaptation parameter set reference and constraints in coded video stream | |
CN113692744A (zh) | 用信号通知具有子图片的输出层集的方法 | |
JP7402884B2 (ja) | 点群コーディングにおける効率的なパッチ回転 | |
CN114586364A (zh) | 用于多层视频流中的输出层集模式的方法 | |
CN113678458B (zh) | 对已编码视频比特流进行解码的方法 | |
US20230013085A1 (en) | Region-wise scalability with adaptive resolution change | |
US20240080467A1 (en) | Method for parameter set reference in coded video stream | |
CN114514742A (zh) | 采用已编码视频流中的子图片进行信号发送的用信号发送虚拟边界的方法 | |
US20210306650A1 (en) | Method for signaling subpicture partitioning in coded video stream | |
CN116438793A (zh) | 用于利用对最后有效系数进行编码的范围扩展的约束标志信令的技术 | |
CN116458155A (zh) | 用于具有持续赖斯自适应的范围扩展的约束标志信令技术 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |