CN109804633B - 利用自适应帧内预测的全向视频编码和解码的方法和装置 - Google Patents

利用自适应帧内预测的全向视频编码和解码的方法和装置 Download PDF

Info

Publication number
CN109804633B
CN109804633B CN201780060296.8A CN201780060296A CN109804633B CN 109804633 B CN109804633 B CN 109804633B CN 201780060296 A CN201780060296 A CN 201780060296A CN 109804633 B CN109804633 B CN 109804633B
Authority
CN
China
Prior art keywords
block
picture
lut
prediction
format
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.)
Active
Application number
CN201780060296.8A
Other languages
English (en)
Other versions
CN109804633A (zh
Inventor
F.拉卡普
F.加尔平
P.博德斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital Madison Patent Holdings SAS
Original Assignee
InterDigital Madison Patent Holdings SAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by InterDigital Madison Patent Holdings SAS filed Critical InterDigital Madison Patent Holdings SAS
Publication of CN109804633A publication Critical patent/CN109804633A/zh
Application granted granted Critical
Publication of CN109804633B publication Critical patent/CN109804633B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

在全向视频中,由于编码空间和呈现空间之间的投影,呈现空间中的直线可能在要编码的帧中不再看上去为直线。为了适应全向视频的几何形状,沿非直线曲线执行帧内预测。具体地,沿非直线曲线复制当前块的相邻重构块中的参考样本以形成当前块的预测块。可以基于当前块的单个帧内预测定向模式在线计算非直线曲线。非直线曲线的参数可以基于在形成全向视频时使用的映射,以及当前块的位置/大小。可以使用取决于当前块的位置和大小的查找表或分析函数来获得非直线曲线。

Description

利用自适应帧内预测的全向视频编码和解码的方法和装置
技术领域
本实施例一般涉及用于视频编码和解码的方法和装置,更具体地,涉及利用适配帧内预测的视频编码和解码的方法和装置。
背景技术
最近,可用的大视场内容(高达360°)已经增长。观看沉浸式显示设备(诸如头戴式显示器(HMD),智能眼镜,PC屏幕,平板电脑,智能手机等)上的内容的用户潜在地不完全可见这样的内容。这意味着在给定时刻,用户可能只是查看内容的一部分。然而,用户典型可以通过诸如头部移动,鼠标移动,触摸屏,语音等各种方式在内容内导航。典型期望编码和解码该内容。
发明内容
根据本原理的一般方面,提出一种用于编码视频数据的方法,包括:访问用于画面的第一块的帧内预测的定向模式;确定与第一块相邻的重构块中的多个参考样本;沿非直线曲线传播多个参考样本中的每一个到第一块内的一组样本位置,以形成第一块的预测块,其中,非直线曲线基于访问的定向模式;编码定向模式;以及编码第一个块和预测块之间的差。
根据本原理的另一方面,提供了一种用于编码视频数据的装置,包括至少一个存储器和一个或多个处理器,被配置为:访问用于画面的第一块的帧内预测的定向模式;确定与第一块相邻的重构块中的多个参考样本;沿着非直线曲线传播多个参考样本中的每一个到第一块内的一组样本位置,以形成第一块的预测块,其中,非直线曲线基于访问的定向模式;编码定向模式;以及编码第一个块和预测块之间的差。
可以以第一格式表示画面,并且可以以第二格式表示与画面相关联的获取的画面。非直线曲线还可以基于第一格式和第二格式之间的映射。第一格式可以是2D矩形格式,第二格式可以是3D球体格式或立方体格式,并且映射可以是等矩形映射,立方体映射,金字塔映射,二十面体映射或八面体映射。获取的画面可以用于通过映射生成画面。可以在比特流中发信号通知第一格式和第二格式之间的映射。
根据本原理的另一个一般方面,提出一种用于解码视频数据的方法,包括:访问用于画面的第一块的帧内预测的定向模型;确定与第一块相邻的解码块中的多个参考样本;沿非直线曲线传播多个参考样本中的每一个到第一块内的一组样本位置,以形成第一块的预测块,其中,非直线曲线基于访问的定向模式;以及使用预测块解码第一块。
根据本原理的另一方面,提供了一种用于解码视频数据的装置,包括至少一个存储器和一个或多个处理器,所述处理器被配置为访问用于画面的第一块的帧内预测的定向模型;确定与第一块相邻的解码块中的多个参考样本;沿着非直线曲线传播多个参考样本中的每一个到第一块内的一组样本位置,以形成第一块的预测块,其中,非直线曲线基于访问的定向模式;以及使用预测块解码第一块。
解码画面可以以第一格式表示,并且与解码画面相关联的显示画面可以以第二格式表示。非直线曲线还可以基于第一格式和第二格式之间的映射。第一格式可以是2D矩形格式,第二格式可以是3D球体格式或立方体格式,并且映射可以是等矩形映射,立方体映射,金字塔映射,二十面体映射或八面体映射。解码画面可用于通过逆映射生成显示画面。
为了确定用于预测的参考样本,可以将第一块中的第一样本位置映射到呈现空间中的第二块中的第二样本位置,呈现空间中的第二块与画面中的第一块对应,基于第二样本位置和定向模式,可以在呈现空间中确定与第二块相邻的第三位置;然后,第三位置可以被映射到与画面中的第一块相邻的第四位置,其中第四位置处的样本被用作参考样本以预测块中的第一样本位置。可以将与定向模式对应的方向转换为呈现空间中的另一方向,并且可以基于另一方向确定与第二块相邻的第三位置。
为了加速计算,查找表可以将要预测的第一块中的样本位置与对应的参考样本位置相关联。查找可以取决于定向模式以及画面中第一块的位置和大小。当第二块小于第一块时,第二块的查找表可以是第一块的查找表的子部分,例如,左上部分。
在另一个实施例中,函数可以将要预测的第一块中的样本位置与对应的参考样本位置相关联,其中,函数的一个或多个参数可以取决于定向模式以及画面中的第一块的位置和大小。
根据本原理的另一方面,比特流被格式化为包括:编码的用于画面的第一块的帧内预测的定向模式;和画面的第一块和第一块的预测块之间的差的编码,其中,通过沿非直线曲线将多个参考样本中的每一个传播到第一块内的一组样本位置来形成预测块,其中,非直线曲线基于访问的定向模式,其中,所述多个参考样本位于与所述第一块相邻的重构块中。
本实施例还提供一种用于根据上述方法编码或解码视频数据的装置。本实施例还提供一种用于传输根据上述方法生成的比特流的装置。
本实施例还提供一种计算机可读存储介质,具有存储于其上的用于根据上述方法编码或解码视频数据的指令。本实施例还提供一种计算机可读存储介质,具有存储于其上的根据上述方法生成的比特流。
附图说明
图1例示根据本原理的实施例的编码和解码全向视频的示例性系统。
图2A示出使用等矩形投影将示例性球面S映射到2D帧F,图2B示出使用立方体映射将示例性立方体表面映射到图2C所示的2D帧。
图3A,3B,3C和3D例示示例性逆等矩形映射。
图4A示出点从3D表面投影到呈现帧G,并且图4B示出投影的近似。
图5例示示例性HEVC视频编码器的框图。
图6A示出在HEVC中可用的一组35个帧内预测模式,图6B示出沿由角度预测模式指示的方向复制参考样本。
图7例示示例性HEVC视频解码器的框图。
图8例示其中呈现帧中的直线不被视为要编码的帧中的直线的示例。
图9例示根据本原理的实施例的定位帧内预测器的示例性实现方式。
图10例示根据本原理的实施例的定位用于帧内预测的帧内预测器的示例性方法。
图11A示出针对块的中心处的特定方向导出的,用箭头描绘的曲线的示例,并且图11B示出沿曲线的帧内预测的另一示例。
图12示出根据本原理的示例性实施例的执行适配于编码器侧的全向视频的帧内预测的示例性方法。
图13例示HEVC的平面模式。
图14示出对于不同预测角度使用用于等矩形映射的提出的新定向帧内模式的预测的示例。
图15示出等矩形帧中的示例性块。
图16显示参考样本的位置。
图17例示示例性系统的框图,其中可以实现本原理的示例性实施例的各个方面。
图18表示根据本原理的特定实施例的系统的第一实施例。
图19表示根据本原理的特定实施例的系统的第一实施例。
图20表示根据本原理的特定实施例的系统的第一实施例。
图21表示根据本原理的特定实施例的系统的第一实施例。
图22表示根据本原理的特定实施例的系统的第一实施例。
图23表示根据本原理的特定实施例的系统的第一实施例。
图24表示根据本原理的系统的第一实施例。
图25表示根据本原理的系统的第一实施例。
图26表示根据本原理的沉浸式视频呈现设备的第一实施例。
图27表示根据本原理的沉浸式视频呈现设备的第一实施例。
图28表示根据本原理的沉浸式视频呈现设备的第一实施例。
具体实施方式
大视场内容可以尤其是三维计算机图形图像场景(3D CGI场景),点云或沉浸式视频。可以使用许多术语来设计这样的沉浸式视频,诸如例如虚拟现实(VR),360,全景,4π球面度,沉浸式,全向,大视场。
沉浸式视频典型指在是二维像素阵列(即,颜色信息的元素)的矩形帧上编码的视频,像“常规”视频那样。在许多实现方式中,可以执行以下过程。为了呈现,帧首先映射在凸体积的内表面上,也称为映射表面(例如,球体,立方体,金字塔),其次,该体积的一部分由虚拟相机捕获。由虚拟相机捕获的图像被呈现在沉浸式显示设备的屏幕上。立体视频被编码在一个或两个矩形帧上,投影在两个映射表面上,这两个映射表面被组合以根据设备的特性由两个虚拟相机捕获。
可以根据帧中的映射函数来编码像素。映射函数可以取决于映射表面。对于相同的映射表面,使用几个映射函数是可能的。例如,可以根据帧表面内的不同布局来构造立方体的面。例如,可以例如根据等矩形投影(equirectangular projection)或者根据球心投影(gnomonic projection)来映射球体。由所选投影函数产生的像素的组织修改或断开线连续性,正交局部帧,像素密度并引入时间和空间的周期性。这些是用于编码和解码视频的典型特征。现有的编码和解码方法通常不考虑沉浸式视频的特性。实际上,由于沉浸式视频可以是360°视频,例如平移引入运动和不连续性,这需要在场景的内容不改变的同时编码大量数据。在编码和解码视频帧时考虑沉浸式视频特性将为编码或解码方法带来有价值的优势。
图1例示根据示例实施例的编码和解码系统的总体概述。图1的系统是功能系统。预处理模块110可以准备用于由编码设备120编码的内容。预处理模块110可以执行多图像获取,将获取的多个图像合并在公共空间中(如果我们编码方向,典型是3D球体),以及使用例如但不限于等矩形映射或立方体映射将3D球体映射到2D帧。预处理模块110还可以接受特定格式(例如,等矩形)的全向视频作为输入,并预处理视频以将映射改变为更适合于编码的格式。取决于获取的视频数据表示,预处理模块110可以执行映射空间改变。
将参照说明书的其他附图描述编码设备120和编码方法。在编码之后,将可以例如编码沉浸式视频数据或3D CGI编码数据的数据发送到网络接口130,其典型可以在任何网络接口中实现,例如存在于网关中。然后通过诸如因特网(但是可以预见任何其他网络)的通信网络传输数据。然后经由网络接口600接收数据。网络接口140可以在网关,电视,机顶盒,头戴式显示设备,沉浸式(投影)墙或任何沉浸式视频呈现设备中实现。
在接收之后,数据被发送到解码设备150。解码功能是在下面的图18到28中描述的处理功能之一。然后由播放器160处理解码数据。播放器160为呈现设备170准备数据。并且可以从传感器或用户输入数据接收外部数据。更确切地,播放器160准备将由呈现设备170显示的视频内容的一部分。解码设备150和播放器160可以集成在单个设备(例如,智能电话,游戏控制台,STB,平板电脑,电脑等)。在其他实施例中,播放器160可以集成在呈现设备170中。
可以设想几种类型的系统例如在呈现沉浸式视频时来执行沉浸式显示设备的解码,播放和呈现功能。
用于处理增强现实,虚拟现实或增强虚拟内容的第一系统例示在图18至图22中。这样的系统包括处理功能,沉浸式视频呈现设备,其可以是例如头戴式显示器(HMD),平板电脑,或者智能手机,并且可以包括传感器。沉浸式视频呈现设备还可以包括显示设备和处理功能之间的附加接口模块。处理功能可以由一个或多个设备执行。它们可以集成到沉浸式视频呈现设备中,或者它们可以集成到一个或多个处理设备中。处理设备包括一个或几个处理器和与沉浸式视频呈现设备的通信接口,诸如无线或有线通信接口。
处理设备还可以包括第二通信接口,其具有诸如因特网的宽接入网络和直接地或通过诸如家庭或本地网关的网络设备访问位于云上的内容。处理设备还可以通过第三接口(诸如以太网类型的本地接入网接口)访问本地贮存器。在实施例中,处理设备可以是具有一个或几个处理单元的计算机系统。在另一个实施例中,它可以是智能手机,其可以通过有线或无线链路连接到沉浸式视频呈现设备,或者可以插入沉浸式视频呈现设备的外壳中并通过连接器或同样无线地与其通信。处理设备的通信接口是有线接口(例如,总线接口,广域网接口,局域网接口)或无线接口(诸如,IEEE 802.11接口或接口)。
当由沉浸式视频呈现设备执行处理功能时,沉浸式视频呈现设备可以配备有直接或通过网关以接收和/或发送内容的到网络的接口。
在另一个实施例中,该系统包括辅助设备,该辅助设备与沉浸式视频呈现设备并且与处理设备通信。在这样的实施例中,该辅助设备可以包含至少一个处理功能。
沉浸式视频呈现设备可以包括一个或多个显示器。该设备可以在其每个显示器的前面采用诸如透镜之类的光学器件。显示器也可以是沉浸式显示设备的一部分,如智能手机或平板电脑的情况。在另一个实施例中,显示器和光学器件可以嵌入头盔,眼镜或用户可以佩戴的面罩中。沉浸式视频呈现设备还可以集成几个传感器,如稍后所述。沉浸式视频呈现设备还可以包括几个接口或连接器。它可以包括一个或几个无线模块,以与传感器,处理功能,手持或其他身体部位相关设备或传感器通信。
沉浸式视频呈现设备还可以包括由一个或几个处理器执行的处理功能,并且被配置为解码内容或处理内容。这里通过处理内容,理解准备可以显示的内容的所有功能。这可以包括,例如,解码内容,在显示其之前合并内容以及修改内容以适合显示设备。
沉浸式内容呈现设备的一个功能是控制虚拟相机,该虚拟相机捕获被构造为虚拟体积的内容的至少一部分。该系统可以包括姿势跟踪传感器,其完全或部分地跟踪用户的姿势,例如,用户头部的姿势,以处理虚拟相机的姿势。一些定位传感器可以跟踪用户的位移。该系统还可以包括与环境相关的其他传感器,例如以测量照明,温度或声音状况。这样的传感器还可以与用户的身体相关,例如,以测量出汗或心率。通过这些传感器获取的信息可以用于处理内容。该系统还可以包括用户输入设备(例如,鼠标,键盘,遥控器,操纵杆)。来自用户输入设备的信息可用于处理内容,管理用户界面或控制虚拟相机的姿势。传感器和用户输入设备通过有线或无线通信接口与处理设备和/或与沉浸式呈现设备通信。
使用图18至图22,描述用于显示增强现实,虚拟现实,增强虚拟或从增强现实到虚拟现实的任何内容的该第一类型系统的几个实施例。
图18例示被配置为解码,处理和呈现沉浸式视频的系统的特定实施例。该系统包括沉浸式视频呈现设备10,传感器20,用户输入设备30,计算机40和网关50(可选)。。
图26例示的沉浸式视频呈现设备10包括显示器101。显示器例如是OLED或LCD类型。沉浸式视频呈现设备10例如是HMD,平板电脑或智能手机。设备10可以包括触摸表面102(例如,触摸板或触觉屏幕),相机103,与至少一个处理器104连接的存储器105和至少一个通信接口106。至少一个处理器104处理从传感器20接收到的信号。
来自传感器的一些测量值用于计算设备的姿势并控制虚拟相机。用于姿势估计的传感器例如是陀螺仪,加速度计或罗盘。也可以使用更复杂的系统,例如使用一套相机。在这种情况下,至少一个处理器执行图像处理以估计设备10的姿势。一些其他测量用于根据环境条件或用户的反应来处理内容。用于观察环境和用户的传感器例如是麦克风,光传感器或接触传感器。也可以使用更复杂的系统,像例如跟踪用户眼睛的摄像机。在这种情况下,至少一个处理器执行图像处理以操作预期测量。传感器20和用户输入设备30数据也可以发送到计算机40,计算机40将根据这些传感器的输入处理数据。
存储器105包括用于处理器104的参数和代码程序指令。存储器105还可以包括从传感器20和用户输入设备30接收的参数。通信接口106使沉浸式视频呈现设备能够与计算机40通信。处理设备的通信接口106是有线接口(例如,总线接口,广域网接口,局域网接口)或无线接口(诸如,IEEE 802.11接口或接口)。
计算机40将数据和可选的控制命令发送到沉浸式视频呈现设备10。计算机40负责处理数据,即准备它们以由沉浸式视频呈现设备10显示。处理可以由计算机40专门完成或者部分处理可以由计算机完成,部分由沉浸式视频呈现设备10完成。计算机40直接或通过网关或网络接口50连接到因特网。计算机40从因特网接收表示沉浸式视频的数据,处理这些数据(例如,解码它们并且可能准备将由沉浸式视频呈现设备10显示的视频内容的一部分),并将处理后的数据发送到沉浸式视频呈现设备10用于显示。在另一实施例中,系统还可以包括本地贮存器(未表示),其中存储表示沉浸式视频的数据,所述本地贮存器可以例如在计算机40上或在可通过局域网访问的本地服务器上(未表示)。
图19表示第二实施例。在该实施例中,STB 90直接或经由网关50连接到诸如因特网的网络(即,STB 90包括网络接口)。STB 90通过无线接口或通过有线接口连接到呈现设备,诸如电视机100或沉浸式视频呈现设备200。除了STB的典型功能之外,STB90还包括处理用于在电视100或任何沉浸式视频呈现设备200上呈现的视频内容的处理功能。这些处理功能与为计算机40描述的处理功能相同,并且这里不再描述。传感器20和用户输入设备30也与前面关于图18描述的类型相同。STB 90从因特网获得表示沉浸式视频的数据。在另一实施例中,STB 90从存储表示沉浸式视频的数据的本地贮存器(未表示)获得表示沉浸式视频的数据。
图20表示与图18中表示的相关的第三实施例。游戏控制台60处理内容数据。游戏控制台60将数据和可选的控制命令发送到沉浸式视频呈现设备10。游戏控制台60被配置为处理表示沉浸式视频的数据并将处理后的数据发送到沉浸式视频呈现设备10以供显示。处理可以由游戏控制台60专门完成,或者部分处理可以由沉浸式视频呈现设备10完成。
游戏控制台60直接或通过网关或网络接口50连接到因特网。游戏控制台60从因特网获得表示沉浸式视频的数据。在另一实施例中,游戏控制台60从存储表示沉浸式视频的数据的本地贮存器(未表示)获得表示沉浸式视频的数据,所述本地贮存器可以在游戏控制台60上或在例如可通过局域网访问(未表示)的本地服务器上。
游戏控制台60从因特网接收表示沉浸式视频的数据,处理这些数据(例如,解码它们并可能准备将要显示的视频的一部分),并将处理后的数据发送到沉浸式视频呈现设备10以供显示。游戏控制台60可以从传感器20和用户输入设备30接收数据,并且可以使用它们来处理从因特网或从本地贮存器获得的表示沉浸式视频的数据。
图21表示所述第一类型的系统的第四实施例,其中沉浸式视频呈现设备70由插入外壳705中的智能手机701形成。智能手机701可以连接到因特网,并因此可以从因特网获得表示沉浸式视频的数据。在另一实施例中,智能手机701从存储表示沉浸式视频的数据的本地贮存器(未表示)获得表示沉浸式视频的数据,所述本地贮存器可以位于智能手机701上或例如可通过局域网(未表示)访问的本地服务器。
参考图27描述沉浸式视频呈现设备70,图27给出沉浸式视频呈现设备70的优选实施例。它可选地包括至少一个网络接口702和用于智能手机701的外壳705。智能手机701包括智能手机和显示器的所有功能。智能手机的显示器用作沉浸式视频呈现设备70显示器。因此,不包括除智能手机701之外的显示器。然而,包括诸如透镜的光学器件704用于在智能手机显示器上看到数据。智能手机701被配置为可能根据从传感器20和用户输入设备30接收到的数据来处理(例如,解码并准备显示)表示沉浸式视频的数据。来自传感器的一些测量用于计算设备的姿势和控制虚拟相机。用于姿势估计的传感器例如是陀螺仪,加速度计或罗盘。也可以使用更复杂的系统,例如使用一套相机。在这种情况下,至少一个处理器执行图像处理以估计设备10的姿势。一些其他测量用于根据环境状况或用户的反应来处理内容。用于观察环境和用户的传感器例如是麦克风,光传感器或接触传感器。也可以使用更复杂的系统,像例如跟踪用户眼睛的摄像机。在这该情况下,至少一个处理器执行图像处理以操作预期测量。
图22表示所述第一类型的系统的第五实施例,其中沉浸式视频呈现设备80包括用于处理和显示数据内容的所有功能。该系统包括沉浸式视频呈现设备80,传感器20和用户输入设备30。沉浸式视频呈现设备80被配置为可能根据从传感器20和从用户输入设备30接收的数据来处理(例如,解码并准备用于显示)表示沉浸式视频的数据。可以将沉浸式视频呈现设备80连接到因特网,并因此可以从因特网获得表示沉浸式视频的数据。在另一实施例中,沉浸式视频呈现设备80从存储表示沉浸式视频的数据的本地贮存器(未表示)获得表示沉浸式视频的数据,所述本地贮存器可以在沉浸式视频呈现设备80上或者在例如可通过局域网访问的本地服务器上(未表示)。
沉浸式视频呈现设备80在图28中例示。沉浸式视频呈现设备包括显示器801。显示器可以是例如OLED或LCD类型,触摸板(可选)802,相机(可选)803,与至少一个处理器804连接的存储器805和至少一个通信接口806。存储器805包括参数和代码程序指令用于处理器804。存储器805还可以包括从传感器20和用户输入设备30接收的参数。存储器也可以足够大以存储表示沉浸式视频内容的数据。对于这几种类型的存储器可以存在并且存储器805可以是不同类型(SD卡,硬盘,易失性或非易失性存储器......)。通信接口806使沉浸式视频呈现设备能够与因特网网络通信。处理器804处理表示视频的数据,以在显示器801显示它们。相机803捕获环境的图像以用于图像处理步骤。从该步骤提取数据以控制沉浸式视频呈现设备。
用于处理增强现实,虚拟现实或增强虚拟内容的第二系统在图23至25中例示。这样的系统包括沉浸式壁。
图23表示第二类型的系统。它包括显示器1000,其是从计算机4000接收数据的沉浸式(投影)壁。计算机4000可以从因特网接收沉浸式视频数据。计算机4000通常直接或通过网关5000或网络接口连接到因特网。在另一实施例中,沉浸式视频数据由计算机4000从存储表示沉浸式视频的数据的本地贮存器(未表示)获得,所述本地贮存器可以在计算机4000中或在例如可通过局域网(未表示)访问的本地服务器中。
该系统还可以包括传感器2000和用户输入设备3000。沉浸式壁1000可以是OLED或LCD类型。它可以配备一个或几个摄像头。沉浸式壁1000可以处理从传感器2000(或多个传感器2000)接收的数据。从传感器2000接收的数据可以与照明条件,温度,用户的环境有关,例如,物体的位置。
沉浸式壁1000还可以处理从用户输入设备3000接收的数据。用户输入设备3000发送诸如触觉信号之类的数据,以给出关于用户情绪的反馈。用户输入设备3000的示例是诸如智能电话,遥控器和具有陀螺仪功能的设备之类的手持设备。
传感器2000和用户输入设备3000数据也可以被发送到计算机4000。计算机4000可以根据从这些传感器/用户输入设备接收的数据处理视频数据(例如,解码它们并准备它们用于显示)。传感器信号可以通过沉浸式壁的通信接口接收。该通信接口可以是蓝牙型,WIFI型或任何其他类型的连接,优选地是无线的,但也可以是有线连接。
计算机4000将处理后的数据和可选的控制命令发送到沉浸式壁1000。计算机4000被配置为处理数据,即准备它们用于显示,以由沉浸式壁1000显示。处理可以由计算机4000专门完成,或者部分处理可以由计算机4000完成,部分由沉浸式壁1000完成。
图24表示第二类型的另一系统。它包括沉浸式(投影)壁6000,其被配置为处理(例如,解码和准备数据用于显示)并显示视频内容。它还包括传感器2000,用户输入设备3000。
沉浸式壁6000通过网关5000或直接从因特网接收沉浸式视频数据。在另一实施例中,沉浸式视频数据由沉浸式壁6000从其中存储表示沉浸式视频的数据的本地贮存器(未表示)获得,所述本地贮存器可以位于沉浸式壁6000或例如可通过局域网(未表示)访问的本地服务器中。
该系统还可以包括传感器2000和用户输入设备3000。沉浸式壁6000可以是OLED或LCD型。它可以配备有一个或几个摄像头。沉浸式壁6000可以处理从传感器2000(或多个传感器2000)接收的数据。从传感器2000接收的数据可以与照明条件,温度,用户的环境有关,例如,物体的位置。
沉浸式壁6000还可以处理从用户输入设备3000接收的数据。用户输入设备3000发送诸如触觉信号之类的数据,以给出关于用户情绪的反馈。用户输入设备3000的示例是诸如智能电话,遥控器和具有陀螺仪功能的设备之类的手持设备。
沉浸式壁6000可以根据从这些传感器/用户输入设备接收的数据处理视频数据(例如,解码它们并准备它们用于显示)。传感器信号可以通过沉浸式壁的通信接口接收。该通信接口可以是蓝牙类型,WIFI类型或任何其他类型的连接,优选地是无线的,但也可以是有线连接。沉浸式壁6000可以包括至少一个通信接口,以与传感器并且与因特网通信。
图25例示沉浸式壁用于游戏的第三实施例。一个或几个游戏控制台7000优选地通过无线接口连接到沉浸式壁6000。沉浸式壁6000通过网关5000或直接从因特网接收来自因特网的沉浸式视频数据。在另一实施例中,沉浸式视频数据由沉浸式壁6000从其中存储表示沉浸式视频的数据的本地贮存器(未表示)获得,所述本地贮存器可以位于沉浸式壁6000或可例如通过局域网(未表示)访问的本地服务器中。
游戏控制台7000将指令和用户输入参数发送到沉浸式壁6000。沉浸式壁6000可能根据从传感器2000和用户输入设备3000和游戏控制台7000接收的输入数据处理沉浸式视频内容,以准备内容用于显示。沉浸式壁6000还可以包括内部存储器以存储要显示的内容。在一个实施例中,我们认为全向视频以能够将周围3D表面S投影到标准矩形帧F上的格式表示,该标准矩形帧F以适合于视频编解码器的格式表示。可以使用各种投影将3D表面投影到2D表面。例如,图2A示出使用等矩形投影将示例性球体表面S映射到2D帧F,并且图2B示出使用立方体映射将示例性立方体映射到图2C示出的2D帧。其他映射(诸如,金字塔,二十面体或八面体映射)可以将3D表面映射到2D帧。
然后可以使用现有视频编码器编码2D帧F,例如,与VP9,VP 10,MPEG-2,H.264/AVC或H.265/HEVC兼容的编码器。2D帧F还可以利用适应于全向视频的属性的编码器(例如使用调整的VP9,VP10,MPEG-2,H.264/AVC或H.265/HEVC编码器)来编码。在编码和解码之后,解码2D帧可以被映射回对应的3D表面,例如,用于等矩形映射的球体或用于立方体映射的球。然后可以将3D表面投影到与用户视点对应的“虚拟屏幕”上,以获得最终呈现帧。解码2D帧并从3D表面投影到呈现帧的步骤可以合并为单个步骤,其中解码帧的一部分被映射到呈现帧上。
为了简化符号,我们可以将解码2D帧也称为“F”,并且将呈现中使用的3D表面也称为S。应当理解,要编码的2D帧和要解码的2D帧可以由于视频压缩而不同,并且预处理中的3D表面和呈现中的3D表面也可能不同。在本申请中,我们可互换地使用术语“映射”和“投影”,可互换地使用术语“像素”和“样本”,并且可互换地使用术语“帧”和“画面”。
等矩形映射
图3例示示例性逆等矩形映射,其中2D帧被映射到呈现帧。图3A示出解码帧(也称为“等矩形帧”)中的x-y坐标中的点P。图3B示出使用θ-φ极坐标从P映射到呈现的2D表面上的点P′。图3C示出使用笛卡尔坐标在3D呈现空间S中对应于P′的点P3d。图3D示出点P″,其由P3d投影到局部呈现帧G中与P3d处的表面相切的局部平面上产生。通过构造P″在帧的中心。局部呈现帧G通常基于用户想要看到的内容,例如,基于HMD或用户的手持设备指向什么,与2D帧F的一部分对应。局部呈现帧G也称为局部呈现版本。
从P到P′,从P′到P3d,并且从P3d到P″的映射分别表示为“f”,“3d”和“pro/”。在图3中,逆等矩形映射以多个步骤(“/”,“3d”和“pro/”)示出用于说明目的。例如,通过将“/”,“3d”和“pro/”组合成一个或两个步骤,可以以更少的步骤执行逆等矩形映射。
数学上,假设归一化坐标,当帧F中的像素M(x,y)在点Μ′(θ,φ)处被映射到2D参数表面上时,映射“/”可以表示为:
f:M(x,y)→M′(θ,φ),θ=2πχ,φ=τiy (1)
利用非归一化坐标:
从点M′(θ,φ)到坐标M3d的3D表面的映射“3d”可以表示为:
为了从点M3d返回到帧F,我们计算逆变换T-1
从3D表面S上的点M3d(X,Y,Z),我们可以使用标准的笛卡尔到极变换返回到2D参数帧:
为了进一步回到2D帧F,我们可以使用:
f-1:M′(θ,φ)→M(x,y) (6)
对于奇点(通常在极点处),当x和y接近0时,我们可以直接设置:
应该注意的是,模块化情况应特别小心。
图4A示出点从3D表面投影到呈现帧G(“pro/”)。如果从G中的局部呈现帧观察的点Q′接近P′,则与表面S相切的平面可以由表面本身近似。在图4B中,我们示出Q″可以通过表面Q′上的Q的图像来近似。
从3D空间到2D表面的投影经常引入一些影响或改变,这些影响或改变对于以与传统平面视频获得的质量/比特率折衷相似的质量/比特率折衷对作为结果的视频进行编码可能是具有挑战性的。这些影响或改变可能包括:
-强几何失真:
·直线不再是直的,
·正交坐标系不再是正交的
-非均匀像素密度:要编码的画面中的像素并不总是表示要编码的表面上的相同大小(即,呈现阶段期间图像上的相同大小),
-强不连续性:帧布局可能会在两个相邻像素之间引入强不连续性,
-帧中可能出现一些周期性(例如,从一个边界到相对的边界)
表1列出不同映射的一些改变:
表1
在下文中,我们主要使用HEVC编码器和解码器来例示全向视频的编码和解码。应该注意,本原理可以应用于其他编码器或解码器。
图5例示示例性HEVC编码器500。为了利用一个或多个画面编码视频序列,将画面划分为一个或多个切片,其中每个切片可以包括一个或多个切片段。切片段被组织成编码单元,预测单元和变换单元。
在本申请中,术语“重构”和“解码”可以互换使用。通常但不一定在编码器侧使用术语“重构”,同时在解码器侧使用“解码”。
HEVC规范区分“块”和“单元”,其中“块”针对样本阵列中的特定区域(例如,亮度,Y),并且“单元”包括所有编码颜色分量(Y,Cb,Cr或单色)的并置块,语法元素以及与块相关联的预测数据(例如,运动矢量)。
为了编码,将画面划分为具有可配置大小的方形的编码树块(CTB),并且将连续的一组编码树块分组为切片。编码树单元(CTU)包含编码颜色分量的CTB。CTB是划分成编码块(CB)的四叉树的根,并且编码块被划分为一个或多个预测块(PB)并形成划分成变换块(TB)的四叉树的根。对应于编码块,预测块和变换块,编码单元(CU)包括预测单元(PU)和树形结构的变换单元(TU)组,PU包括所有颜色分量的预测信息,以及TU包括每个颜色分量的残差编码语法结构。亮度分量的CB,PB和TB的大小应用于对应的CU,PU和TU。在本申请中,术语“块”可以用于指代CTU,CU,PU,TU,CB,PB和TB中的任何一个。另外,“块”也可以用于指代H.264/AVC或其他视频编码标准中规定的宏块,分区和子块,更一般地,指代各种大小的数据的阵列。
在示例性编码器500中,画面由编码器元件编码,如下所述。要编码的画面以CU为单位处理。使用帧内或帧间模式编码每个CU。当CU以帧内模式编码时,其执行帧内预测(560)。在帧间模式中,执行运动估计(575)和补偿(570)。编码器判定(505)用于编码CU的帧内模式或帧间模式中的哪一个,并且通过预测模式标志指示帧内/帧间判定。通过从原始图像块中减去(510)预测块来计算预测残差。
帧内模式中的CU从同一切片内的重构相邻样本预测。在HEVC中可用一组35个帧内预测模式,包括DC,平面和33个角度预测模式,如图6A所示。从与当前块相邻的行和列重构帧内预测参考。使用来自先前重构的块的可用样本,参考在水平和垂直方向上扩展块大小的两倍。当角度预测模式用于帧内预测时,可以沿由角度预测模式指示的方向复制参考样本,如图6B中的示例。角度预测模式在本申请中也称为定向预测模式。
可以使用两个不同选项编码当前块的可应用亮度帧内预测模式。如果可应用模式包括在三个最可能模式(MPM)的构造列表中,则通过MPM列表中的索引来发信号通知模式。否则,通过模式索引的固定长度二值化来发信号通知模式。三个最可能的模式是从相邻块的顶部和左侧的帧内预测模式推导。
对于帧间CU,对应编码块被进一步划分为一个或多个预测块。在PB级别上执行帧间预测,并且对应的PU包含关于如何执行帧间预测的信息。
可以用两种方法来发信号通知运动信息(即,运动矢量和参考画面索引),即“合并模式”和“高级运动矢量预测(AMVP)”。
在合并模式中,视频编码器或解码器基于已经编码的块来组装候选列表,并且视频编码器发信号通知候选列表中的候选之一的索引。在解码器侧,基于发信号通知的候选者重构运动矢量(MV)和参考画面索引。
在AMVP中,视频编码器或解码器基于从已编码的块确定的运动矢量来组装候选列表。然后,视频编码器发信号通知候选列表中的索引以识别运动矢量预测器(MVP)并发信号通知运动矢量差(MVD)。在解码器侧,运动矢量(MV)被重构为MVP+MVD。
在HEVC中,用于运动补偿的运动信息的精度是亮度分量的四分之一样本(也称为四分之一像素或1/4像素)和色度分量的八分之一样本(也称为1/8像素)。7抽头或8抽头插值滤波器用于分数-样本位置的插值,即,水平和垂直方向二者上的全样本位置的1/4,1/2和3/4可以针对亮度进行寻址。
然后,变换(525)和量化(530)预测残差。熵编码(545)量化的变换系数以及运动矢量和其他语法元素以输出比特流。编码器还可以跳过变换并且在4×4TU的基础上将量化直接应用于非变换残差信号。编码器还可以绕过变换和量化二者,即,在不应用变换或量化处理的情况下直接编码残差。在直接PCM编码中,不应用预测,并且编码单元样本被直接编码到比特流中。
编码器解码编码块以提供进一步预测的参考。去量化(540)和逆变换(550)量化的变换系数以解码预测残差。组合(555)解码的预测残差和预测块,重构图像块。环内滤波器(565)被应用于重构画面,例如以执行去块/SAO滤波以减少编码伪像。滤波图像存储在参考画面缓冲器中(580)。
图7例示示例性HEVC视频解码器700的框图。在示例性解码器700中,比特流由解码器元件解码,如下所述。视频解码器700一般执行与编码通道相反的解码通道,如图5中所描述,其执行视频解码作为编码视频数据的一部分。
具体地,解码器的输入包括视频比特流,其可以由视频编码器500生成。首先熵解码(730)比特流以获得变换系数,运动矢量和其他编码信息。去量化(740)和逆变换(750)变换系数以解码预测残差。组合(755)解码的预测残差和预测块,重构图像块。可以从帧内预测(760)或运动补偿预测(即,帧间预测)(775)获得预测块(770)。如上所述,AMVP和合并模式技术可用于推导运动补偿的运动矢量,其可以使用插值滤波器来计算参考块的亚整数样本的插值。环内滤波器(765)应用于重构图像。滤波图像存储在参考画面缓冲器中(780)。
如图6A和图6B所示,帧内预测利用先前重构的参考像素的因果形状内的像素来预测当前块,例如,可以沿如图6B所示的方向复制参考像素。
帧内直线运动传播模式擅长于近似图像和视频中的大量刚性直纹理(例如,建筑物,包含直边的对象)。因此,当在预测块上的图像内容分布呈现主方向时,定向模式通常是有效的。然而,对于短焦距图像或者在等矩形映射内容中从球形表面弯曲的图像,由于映射或透视失真,对象可能会失真并且主方向更可能遵循非直线曲线。
图8例示其中呈现帧中的直线(820)在要编码的帧中不被视为直线(810)的示例。具体地,图8例示当前预测块(830)和对应的参考样本(850)的局部映射和呈现。在局部映射和呈现中,预测块周围只有一小部分映射到呈现版本。左图像是要编码的示例性等矩形帧F的裁剪部分。右图像是示例性呈现帧中的裁剪部分,以例示预测块的局部呈现版本(840)。等矩形帧中的预测块(830)的相邻样本(850)被映射到呈现帧G中的相邻区域(860)。参考帧(870)以预测块的中心为中心。箭头(880)示出如果编码呈现版本,则传统编码器可以选择可能的定向模式。
因为直线在预测块(830)中不再是直的,所以HEVC中定义的定向帧内预测对于具有等矩形内容中的非直线曲线的块可能不是非常有效。
我们建议适应全向视频的帧内预测以提高压缩效率。特别地,我们可以通过考虑修改的几何形状(例如,要编码的等矩形图像的那些)来选择帧内预测器,即,沿所选方向复制的参考样本以预测预测块中的像素,从而改进帧内预测。
在一个实施例中,2D帧F中的预测块被映射到呈现空间。然后,基于直线帧内预测方向,对应于2D帧中的预测块,针对呈现空间中的块中的像素计算参考样本。然后我们可以在2D帧中对应于呈现空间中的参考样本定位参考样本。
参考样本可以处于整数样本位置,或处于分数样本位置。对于分数样本参考样本,可以应用插值,如同直线定向模式的情况。此外,可以使用低通内核预滤波参考样本,以传播更平滑的信号,该信号更可能提供更好的预测器。
在不失一般性的情况下,我们考虑预测块的局部呈现,其中参考帧位于预测块的中心。如图9所示,将当前预测块周围的样本L投影到呈现帧G中的样本L″,并且将当前块投影到呈现块,在当前块的中心处与3D呈现表面S相切的补片。
图10例示根据本原理的实施例的用于定位帧内预测的帧内预测器的示例性方法1000。因为在编码器和解码器两者处执行帧内预测,所以可以在编码器和解码器处使用方法1000。为了便于表示,我们使用“译码器”来指代编码器或解码器。如在HEVC中,针对帧内预测块B访问(1005)单个帧内预测。在步骤1010,译码器针对块B的中心P计算(910)P′,然后计算P3d
P′=/(P),p3d=3d(P′) (8)
译码器然后获得(920)与块B的点P3d处的表面相切的平面G。通过构造Proj:P3d→P″=[0 0]。
对于块B周围的因果邻域L,译码器计算(1020)对应的邻居L′,L3d和平面G上的投影L″:
VN∈I,N′=f(N),N3d=3d(N′),N″=Proj(N3d) (9)
对于当前块B的像素M,译码器计算(1030,910)M′,然后计算M3d。然后将3D表面上的点M3d投影(920)到点M″处的平面G上:
M″=Proj(M3d) (10)
对于要在编码器处测试或者在解码器处从比特流解码的方向d″,对于点M″,译码器定位(1040)在方向d″上经过点M″的直线的交点,M″+a*d″,投影的邻居L″在V″:
v″={M″+ad″)n L″ (11)
等式(11)中的d″是呈现空间中的方向,并且可以从2D编码或解码帧中的方向d推导。为了计算方向d″,对于像素Q=P+ed(其中e是小步长),译码器可以计算Q′然后Q3d
Q′=f(P+ed),Q3d=3d(Q′), (12)
并且将Q3d投影到Q点处的平面G上
Q″=Proj{Q3d) (13)
然后方向d″可以计算为:
d″=Q″-P″ (14)
相同的方向d″可以应用于呈现帧G中的所有像素M″。该途径的一个优点是块内的模式对于整个块是一致的。
为了在要编码或解码的帧中定位参考像素,将V″投影(930)回V3d中的表面上然后到V:
然后计算(940)V的坐标作为帧F中的V的逆图像
v=/-1(V′). (16)
然后使用作为结果的点V(1050)作为方向d上的像素M的帧内预测器。
对于块的像素,给定像素的位置和方向d,可以预先计算帧内预测器,并且可以将结果存储在查找表(LUT)中。当使用查找表时,可以简化方法1000。例如,可以通过访问查找表来替换步骤1010-1040,并且在步骤1050,可以基于查找表来定位预测块中的特定位置的参考样本。
可以将新的帧内预测视为沿基于块的帧内预测方向推导的非直线曲线(或变形曲线)的块内的预测样本。可以通过在特定位置(也称为“锚点”)(例如预测块的中心或其左角)设置参考帧来计算变形曲线。用于推导方向d″的锚点也可以从另一个点(例如左上角)中选择。图11A示出在块的中心处针对特定方向d推导的曲线的示例,用箭头(1110)绘出。
这里,基于直线选择局部呈现帧G中的参考样本,其中直线运动传播模式比2D编码或解码帧中更可能有用。基于逆映射选择的参考样本将反映由映射引起的变形。如图11A所示,由箭头(1110)指示的方向d将适应于非直线曲线(1120,1130)以反映新的帧内预测方向。在该实施例中,参考样本和参考样本的方向都被适配。帧G中的方向对于所有参考样本是相同的,因此在帧F中是不同的。
在上文中,我们将帧F中的方向d转换为呈现帧G中的方向d″以执行直线交叉。在另一实施例中,方向d可以直接用G表示,即,直接编码d″作为当前块的预测方向。在该情况下,局部呈现帧G的选择应该已知并在编码器和解码器之间同步。
在另一实施例中,我们可以近似沿参考样本的方向并且在等矩形域中直接应用定向模式。这里,曲线在参考样本位置处平行,然后根据映射函数变形,如图11B中的示例所示。在该情况下,参考样本的方向在帧F中相同但在帧G中不同。
在该实施例中,预测的方向在帧F中表示用于单个像素M。因此,为了计算局部呈现帧G中的预测方向d″,译码器可以计算N′,然后N3d,用于N=M+ed,其中e是块的像素的小步长:
N′=/(AT+ed),N3d=3d(N′), (17)
然后将N3d投影到点N″处的平面G上,
N"=Proj(N3d) (18)
方向d″可以在M″处计算”:
d"=N"-M" (19)
因为d″随像素M″的位置而变化,所以对于不同样本,呈现帧G中的方向d″不相同。
图12示出根据本原理的示例性实施例的用于在编码器侧执行适应于全向视频的帧内预测的示例性方法1200。编码器接受图像块(1210)作为输入。编码器还可以获得用户输入,例如,指示是否使用适应于全向视频的帧内预测的标志warped_intra。
在获得(1220)块之后,编码器确定(1230)哪些相邻样本将被用作用于帧内预测的参考样本。可以滤波(1240)参考样本以平滑内容从而改进帧内预测或者内插获得分数样本位置。如果标志warped_intra(1245)为真,则编码器启用新曲线方向。特别地,编码器可以获得(1250)弯曲参数,例如作为预定义LUT,或者用于计算如上所述的函数“f(),”projO,“或”3d()“的映射参数,以提供新方向。新方向用于执行(1260)帧内预测。可以针对块计算RD(速率-失真)成本(1270)。编码器基于帧内预测或其他测试的帧间预测模式来判定(1280)要使用的最佳预测模式。可以输出(1290)为预测块选择的预测模式和RD成本。编码器可以根据需要在图像中的块上循环。如果编码器选择新帧内方向,则编码器使用新帧内方向执行帧内预测以形成预测块,并且编码当前块的新帧内模式和预测残差(即,当前预测块和预测块之间的差)。
在解码器侧,如果warped_intra标志被设置为真,则可以基于设置的那个预测模式来选择新帧内预测模式。如果选择了新帧内预测,则解码器例如继续基于新帧内预测模式解码块,如上所述。
发信号通知
根据第一实施例,解码器专用于某种类型的全向视频内容。默认情况下激活映射函数,即,块始终使用上述方法之一使用“弯曲”线预测。
根据第二实施例,解码器可以适应于不同布局。解码器经由高级语法接收当前布局的索引。然后,块根据发信号通知的映射函数,使用上述方法之一使用“弯曲”线来预测。
根据另一实施例,可以发送映射函数,解码器重新创建对应的方向。然后,块根据发送的映射函数,使用上述方法之一使用“弯曲”线来预测。
根据另一实施例,在块,切片或序列级别直接发信号通知映射函数。
根据另一实施例,变形参数作为在块,切片或序列级别定义的字典发送。
被选择用于将要编码的帧映射到球体的特定布局通常由序列固定,并且可以在序列级别(例如,在SPS(序列参数集)中)发信号通知。
关于映射函数,可以使用几种检索信息的方式。
-可以在解码器侧实现查找表,以在整个等矩形帧上发信号通知变形。这里,解码器或编码器不需要在帧内预测期间在2D帧F和呈现帧G之间执行投影,并且变形直接应用于帧F。
-解码器可以重新创建帧G上的投影以应用直线模式,然后投影回帧F。
-存在许多映射函数。解码器可以基于索引来确定主映射函数,例如,经由参数集(诸如,视频参数集,序列参数集,画面参数集)在比特流中发送。
除了上述全向视频的映射之外,变形也可以来自短焦距。在该情况下,全局焦距值以及必要的失真参数可以通过驱动整个序列的诸如视频参数集(VPS)或序列参数集(SPS)之类的高级语法来传输。如果焦距沿视频变化,则这些值可以包括在画面参数集中。根据其他实施例,可以在切片或块级别发送信息。
存在诸如DC模式的其他传播方法,其利用因果参考样本的平均值填充预测块以形成预测块。在这种情况下,新类型的内容不修改模式的效率。然而,诸如H.265/HEVC中的平面模式或平面模式H.264/AVC之类的高级技术利用参考样本之间的像素值的变化来创建当前块表面的平滑预测。对于这些模式,等矩形映射也可能降低这样的模式的效率。
对于平面模式,要预测的块中的像素值直接取决于四个像素,如图13中的示例所示。为了使平面模式适应全向视频,而不是依赖于来自垂直和水平方向的像素,如上面解释计算的曲线可用于指向相关参考像素位置。
新工具利用参考样本变化并用改进的方法(诸如用于位置依赖帧内预测组合的所谓PDPC和用于多参数帧内预测的MPI)填充预测块。可以通过指向遵循为定向模式推导出的变形曲线的像素来适应这些模式。
图14示出对于不同的预测角度,-15°,-30°,-45°,-60°,-75°,-90°,-105°,-120°,-135°(0°对应于水平方向),从左上到右下使用提出的用于等矩形映射的新定向帧内模式的预测的示例。作为结果的预测块从图15所示位置的等矩形帧计算。可以注意到,曲线与等矩形映射的几何形状一致。
对于预测块中的各个像素,通过上述方法给出从L形复制的参考样本。如果映射被固定且已知,则可以预先计算函数或LUT以加速预测处理。表2示出用于预测角度为45°的示例性LUT的一部分,其中LUT中的(x,y)位置处的项表示用于块中的(x,y)位置处的样本的参考样本的位置。基于LUT,可以将参考样本复制或传播到预测块中的对应样本位置以形成预测块。表示参考样本位置的数字在图16中描述。负值对应于左参考样本,而正值对应于顶部参考样本,如图16中描绘。
相同的查找表可以用于不同的块大小。对于特定块位置和方向,编码器或解码器可能只需要最大块大小的一个查找表,并且可以使用最大大小的LUT的左上部分获得小于最大块大小的块的查找表。
表2
0 1 2 3 4 5 6 7 8 9 10 11 12
0 1 2 3 4 5 6 7 8 9 10 11 12
-1 0 1 2 3 4 5 6 7 8 9 10 11
-2 0 1 2 2 3 4 5 6 7 8 9 10
-3 -1 0 1 2 3 4 5 6 6 7 8 9
-4 -2 -1 0 1 2 3 4 5 6 7 8 9
-5 -3 -2 0 1 1 2 3 4 5 6 7 8
-6 -4 -3 -1 0 1 2 3 3 4 5 6 7
-7 -5 -4 -2 -1 0 1 2 3 4 5 5 6
-8 -6 -5 -3 -2 -1 0 1 2 3 4 5 6
-9 -7 -6 -4 -3 -2 -1 1 1 2 3 4 5
-10 -8 -7 -5 -4 -3 -2 0 1 2 2 3 4
-11 -9 -8 -6 -5 -4 -3 -1 0 1 2 3 3
-12 -10 -9 -7 -6 -5 -4 -2 -1 0 1 2 3
对于等矩形映射,可以仅使用块的垂直位置来描述查找表。此外,可能仅针对图像的前一半描述查找表,并且通过镜像图像的前一半的索引来推断后一半。
预测块中的位置与参考样本位置之间的对应关系也可以由分析函数表示,例如,使用二次函数拟合上述LUT。拟合可能并不总是准确的。在给定帧内预测方向,预测块的块位置/大小的情况下,可以在编码器或解码器处推导或预先计算LUT或分析函数。因此,编码器仍然仅需要发送帧内预测块的单个定向模式,而帧内预测可以遵循编码器或解码器中的不同变形曲线用于帧内预测块。
提出的方法依赖于定义曲线帧内传播的一般原理而不是经典使用的直线方向。根据一些实施例,曲线传播可以被视为添加到现有的新的定向帧内模式。在其他实施例中,它们可以替换现有编解码器中的对应帧内模式。
例如,取决于视频的类型,考虑的预测块的位置和大小,可以将二次曲线添加为另一帧内模式。在以广角/短焦距拍摄视频的另一示例中,一些失真可能使直线变形。有时使用圆柱形校正来减少失真。在视频失真的情况下,曲线帧内预测经常可以通过沿变形曲线传播参考像素来提高压缩效率,尤其是在边界上。
对于短焦距视频,失真的经典模型使用Brown-Conrady模型,其中2D+3D失真被合并为简单的2D函数:(xd,yd)=g(xu,yu,S),其中(xd,yd)是失真后的像素坐标(帧F中),并且(xu,yu)是失真前的像素坐标(帧G中)。失真函数g()是组合:g=f-1 o 3d-1 o proj-1。可以使用Brown-Conrady模型获得失真函数g()。
函数g-1可以通常作为离线处理从g中恢复,其中像素被映射到对应的未失真像素,并且应用于上述实施例。逆函数g-1可能并不总是在分析上可逆并且可以使用数值方法或使用LUT找到。
应该注意,在本实施例中,发送单个帧内预测方向用于预测块。基于单个方向,编码器或解码器可以推导变形曲线,如图11A和11B所示,以基于块的位置和如上所述的映射用于帧内预测。由于块的位置已经在比特流中指示,所以不需要额外的语法用于块的位置。映射典型不经常改变。因此,可以在画面级别,序列级别或视频级别传输映射,这应该仅产生非常小的开销。因此,本实施例比沿其可以执行帧内预测的曲线编码参数更有效,因为曲线的参数可能需要在块级别传输。
在上文中,我们描述使用等矩形映射的各种实施例,即,对于全向视频,3D表面被认为是球体。应当注意,本原理可以应用于具有凸表面的其他3D表面,以及其他类型的视频,例如但不限于以非常大的视野(像鱼眼镜头一样非常小的焦距)获取的平面图像。更一般地,本原理可以应用于包含失真内容的图像/视频,这可以归因于表面到要编码的平面帧的映射或者以非常短的焦距捕获的场景(其倾向于弯曲图像靠近边界)。
图17例示示例性系统1700的框图,其中可以实现本原理的示例性实施例的各个方面。系统1700可以体现为包括下面描述的各种组件的设备,并且被配置为执行上述处理。这种设备的示例包括但不限于HMD,个人计算机,膝上型计算机,智能电话,平板计算机,数字多媒体机顶盒,数字电视接收器,个人视频记录系统,连接的家用电器和服务器。系统1700可以包括传感器,并且可以经由通信信道通信地耦合到其他类似系统,如图17所示并且如本领域技术人员已知的实现上述示例性视频系统。
系统1700可以包括至少一个处理器1710,其被配置为执行加载在其中的指令,用于实现如上所述的各种处理。处理器1710可以包括嵌入式存储器,输入输出接口和本领域已知的各种其他电路。系统1700还可以包括至少一个存储器1720(例如,易失性存储器设备,非易失性存储器设备)。系统1700可以另外包括存储设备1740,其可以包括非易失性存储器,包括但不限于EEPROM,ROM,PROM,RAM,DRAM,SRAM,闪存,磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备1740可以包括内部存储设备,附接的存储设备和/或网络可访问存储设备。系统1700还可以包括编码器/解码器模块1730,其被配置为处理数据以提供编码视频或解码视频。
编码器/解码器模块1730表示可以包括在设备中以执行编码和/或解码功能的(多个)模块。编码器500和解码器700可以用在编码器/解码器模块1730中。众所周知,设备可以包括编码和解码模块中的一个或二者。另外,编码器/解码器模块1730可以实现为系统1700的单独元件,或者可以作为本领域技术人员已知的硬件和软件的组合并入处理器1710内。
系统1700还可以包括显示器(1790)或者可以经由通信信道通信地耦合到显示器。显示器例如是OLED或LCD类型。显示器也可以是通常具有巨大的尺寸的沉浸式(投影)墙。
系统1700还可以包括触摸表面1780(例如,触摸板或触觉屏幕)和相机1770。处理器1710可以处理从传感器接收的信号,传感器可以是或可以不是系统1700的一部分。来自传感器的一些测量可以用于计算系统1700或连接到系统1700的另一设备的姿势。相机1770可以捕获环境的图像以用于图像处理。处理器1710还可以执行图1中描述的预处理和后处理功能。
要加载到处理器1710以执行上文描述的各种处理的程序代码可以存储在存储设备1740中,并且随后加载到存储器1720上以供处理器1710执行。根据本原理的示例性实施例,一个或多个处理器1710,存储器1720,存储设备1740和编码器/解码器模块1730可以在本文上面讨论的处理的执行期间存储各种项目中的一个或多个,包括但不限于输入视频,比特流,等式,公式,矩阵,变量,运算和运算逻辑。
系统1700还可以包括通信接口1750,其允许经由通信信道1760与其他设备通信。通信接口1750可以包括但不限于被配置为从通信信道1760发送和接收数据的收发器。通信接口可以包括但不限于调制解调器或网卡,并且通信信道可以在有线和/或无线介质中实现。系统1700的各种组件可以使用各种合适的连接(包括但不限于内部总线,电线和印刷电路板)而连接或通信地耦合在一起。
可以通过由处理器1710或由硬件或由硬件和软件的组合实现的计算机软件来实施根据本原理的示例性实施例。作为非限制性示例,根据本原理的示例性实施例可以由一个或多个集成电路实现。存储器1720可以是适合于技术环境的任何类型,并且作为非限制性示例,可以使用任何适当的数据存储技术来实现,例如光学存储器设备,磁性存储器设备,基于半导体的存储器设备,固定存储器和可移动存储器。处理器1710可以是适合于技术环境的任何类型,并且作为非限制性示例,可以包括微处理器,通用计算机,专用计算机和基于多核架构的处理器中的一个或多个。
以上描述了各种方法,并且每个方法包括用于实现描述的方法的一个或多个步骤或动作。除非为了方法的适当操作需要特定顺序的步骤或动作,可以修改或组合特定步骤和/或动作的顺序和/或使用。
本文描述的实现方式可以在例如方法或处理,装置,软件程序,数据流或信号中实现。即使仅在单个实现方式形式的上下文中讨论(例如,仅作为方法讨论),所讨论的特征的实现方式也可以以其他形式(例如,装置或程序)来实现。装置可以在例如适当的硬件,软件和固件中实现。方法可以在例如诸如处理器之类的装置中实现,该处理器一般指代处理设备,包括例如计算机,微处理器,集成电路或可编程逻辑器件。处理器还包括通信设备,诸如例如计算机,蜂窝电话,便携式/个人数字助理(“PDA”),以及便于最终用户之间的信息通信的其他设备。
对本原理的“一个实施例”或“实施例”或“一个实现方式”或“实现方式”的引用以及其其他变型意味着结合该实施例描述的特定特征,结构,特性等包括在本原理的至少一个实施例中。因此,在整个说明书中出现在各个地方的短语“在一个实施例中”或“在实施例中”或“在一个实现方式中”或“在实现方式中”以及任何其他变型不一定都指代同一个实施例。
另外,本申请或其权利要求可以指代“确定”各种信息。确定信息可以包括例如估计信息,计算信息,预测信息或从存储器检索信息中的一个或多个。
此外,本申请或其权利要求可以指代“访问”各种信息。访问信息可以包括例如接收信息,检索信息(例如,从存储器中),存储信息,处理信息,传输信息,移动信息,复制信息,擦除信息,计算信息,确定信息,预测信息或估计信息中的一个或多个。
另外,本申请或其权利要求可以指代“接收”各种信息。与“访问”一样,接收是一个广义的术语。接收信息可以包括例如访问信息或检索信息(例如,从存储器中)中的一个或多个。此外,“接收”典型涉及在操作期间以这样或那样的方式,例如,存储信息,处理信息,传输信息,移动信息,复制信息,擦除信息,计算信息,确定信息,预测信息或估计信息。
对于本领域技术人员显而易见的是,实现方式可以产生各种信号,这些信号被格式化以承载可以例如存储或传输的信息。该信息可以包括例如用于执行方法的指令,或者由描述的实现方式之一产生的数据。例如,可以格式化信号以承载描述的实施例的比特流。这种信号可以例如被格式化作为电磁波(例如,使用频谱的射频部分)或者作为基带信号。格式化可以包括例如编码数据流和用编码数据流调制载波。信号承载的信息可以是例如模拟或数字信息。如已知,信号可以通过各种不同的有线或无线链路传输。信号可以存储在处理器可读介质上。

Claims (18)

1.一种用于编码视频数据的方法,包括:
访问用于2D画面的第一块的帧内预测的定向模式,所述2D画面以适于编码的第一格式表示,其中,所述画面以第二格式呈现,所述第二格式是所述2D画面映射于3D表面的投影格式;
基于所述定向模式从多个查找表LUT当中确定LUT,其中,多个LUT分别对应于多个定向模式;
确定与第一块相邻的重构块中的多个参考样本;
基于所述第一块的位置访问所述LUT的一部分,以及基于所述LUT的所述一部分形成所述第一块的预测块,其中,所述LUT的所述一部分的多个项对应于所述预测块的多个样本位置,其中,所述多个项表示所述2D画面中的多个非直线曲线,参考样本沿所述多个非直线曲线传播到所述预测块的样本位置以形成所述预测块,以及其中,所述2D画面中的非直线曲线映射到所述2D画面的所述投影中的直线;
编码定向模式;以及
编码第一个块和预测块之间的差。
2.如权利要求1所述的方法,其中,在比特流中发信号通知第一格式和第二格式之间的映射。
3.如权利要求1所述的方法,其中,所述LUT的所述一部分的访问是基于在所述2D画面中的垂直方向上所述第一块的位置。
4.如权利要求1所述的方法,其中,针对所述2D画面的第一一半的所述LUT的相应项被镜像用于所述2D画面的第二一半。
5.如权利要求1所述的方法,其中,所述LUT的所述一部分的访问是基于所述第一块的大小和在所述2D画面中的垂直方向上所述第一块的位置。
6.如权利要求1所述的方法,其中,所述多个项的相应值指示参考样本是在所述第一块的左侧还是在所述第一块的顶部的重构块中。
7.一种用于编码视频数据的装置,包括一个或多个处理器,被配置为:
访问用于2D画面的第一块的帧内预测的定向模式,所述2D画面以适于编码的第一格式表示,其中,所述画面以第二格式呈现,所述第二格式是所述2D画面映射于3D表面的投影格式;
基于所述定向模式从多个查找表LUT当中确定LUT,其中,多个LUT分别对应于多个定向模式;
确定与第一块相邻的重构块中的多个参考样本;
基于所述第一块的位置访问所述LUT的一部分,以及基于所述LUT的所述一部分形成所述第一块的预测块,其中,所述LUT的所述一部分的多个项对应于所述预测块的多个样本位置,其中,所述多个项表示所述2D画面中的多个非直线曲线,参考样本沿所述多个非直线曲线传播到所述预测块的样本位置以形成所述预测块,以及其中,所述2D画面中的非直线曲线映射到所述2D画面的所述投影中的直线;
编码定向模式;以及
编码第一个块和预测块之间的差。
8.如权利要求7所述的装置,其中,所述LUT的所述一部分的访问是基于在所述2D画面中的垂直方向上所述第一块的位置。
9.如权利要求7所述的装置,其中,所述LUT的所述一部分的访问是基于所述第一块的大小和在所述2D画面中的垂直方向上所述第一块的位置。
10.如权利要求7所述的装置,其中,针对所述2D画面的第一一半的所述LUT的相应项被镜像用于所述2D画面的第二一半。
11.一种用于解码视频数据的方法,包括:
访问用于2D画面的第一块的帧内预测的定向模式,所述2D画面以用于解码器输出的第一格式表示,其中,画面的解码版本以第二格式呈现,所述第二格式是所述2D画面映射于3D表面的投影格式;
基于所述定向模式从多个查找表LUT当中确定LUT,其中,多个LUT分别对应于多个定向模式;
确定第一块相邻的解码块中的多个参考样本;
基于所述第一块的位置访问所述LUT的一部分,以及基于所述LUT的所述一部分形成所述第一块的预测块,其中,所述LUT的所述一部分的多个项对应于所述预测块的多个样本位置,其中,所述多个项表示所述2D画面中的多个非直线曲线,参考样本沿所述多个非直线曲线传播到所述预测块的样本位置以形成所述预测块,以及其中,所述2D画面中的非直线曲线映射到所述2D画面的所述投影中的直线;以及
使用预测块解码第一块。
12.如权利要求11所述的方法,其中,在比特流中发信号通知第一格式和第二格式之间的映射。
13.如权利要求11所述的方法,其中,所述LUT的访问的部分是基于在所述2D画面中的垂直方向上所述第一块的位置。
14.如权利要求11所述的方法,其中,针对所述2D画面的第一一半的所述LUT的相应项被镜像用于所述2D画面的第二一半。
15.如权利要求11所述的方法,其中,所述LUT的所述一部分的访问是基于所述第一块的大小和在所述2D画面中的垂直方向上所述第一块的位置。
16.一种用于解码视频数据的装置,包括一个或多个处理器,被配置为:
访问用于2D画面的第一块的帧内预测的定向模式,所述2D画面以用于解码器输出的第一格式表示,其中,画面的解码版本以第二格式呈现,所述第二格式是所述2D画面映射于3D表面的投影格式;
基于所述定向模式从多个查找表LUT当中确定LUT,其中,多个LUT分别对应于多个定向模式;
确定第一块相邻的解码块中的多个参考样本;
基于所述第一块的位置访问所述LUT的一部分,以及基于所述LUT的所述一部分形成所述第一块的预测块,其中,所述LUT的所述一部分的多个项对应于所述预测块的多个样本位置,其中,所述多个项表示所述2D画面中的多个非直线曲线,参考样本沿所述多个非直线曲线传播到所述预测块的样本位置以形成所述预测块,以及其中,所述2D画面中的非直线曲线映射到所述2D画面的所述投影中的直线;以及
使用预测块解码第一块。
17.如权利要求16所述的装置,其中,所述LUT的所述一部分的访问是基于在所述2D画面中的垂直方向上所述第一块的位置。
18.如权利要求17所述的装置,其中,针对所述2D画面的第一一半的所述LUT的相应项被镜像用于所述2D画面的第二一半。
CN201780060296.8A 2016-09-30 2017-09-28 利用自适应帧内预测的全向视频编码和解码的方法和装置 Active CN109804633B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306269.8A EP3301931A1 (en) 2016-09-30 2016-09-30 Method and apparatus for omnidirectional video coding with adaptive intra prediction
EP16306269.8 2016-09-30
PCT/EP2017/074672 WO2018060358A1 (en) 2016-09-30 2017-09-28 Method and apparatus for omnidirectional video coding and decoding with adaptive intra prediction

Publications (2)

Publication Number Publication Date
CN109804633A CN109804633A (zh) 2019-05-24
CN109804633B true CN109804633B (zh) 2023-09-01

Family

ID=57138005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780060296.8A Active CN109804633B (zh) 2016-09-30 2017-09-28 利用自适应帧内预测的全向视频编码和解码的方法和装置

Country Status (6)

Country Link
US (1) US11089296B2 (zh)
EP (2) EP3301931A1 (zh)
JP (1) JP7008903B2 (zh)
KR (1) KR102424140B1 (zh)
CN (1) CN109804633B (zh)
WO (1) WO2018060358A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715818B2 (en) 2016-08-04 2020-07-14 Intel Corporation Techniques for hardware video encoding
CA3142170C (en) * 2017-05-31 2023-07-04 Lg Electronics Inc. Method and device for performing image decoding on basis of intra prediction in image coding system
EP3435676A1 (en) * 2017-07-25 2019-01-30 Thomson Licensing Method and apparatus for encoding and decoding an omnidirectional video
GB2567859A (en) * 2017-10-27 2019-05-01 Sony Corp Image data encoding and decoding
KR20200139830A (ko) * 2018-05-21 2020-12-14 엘지전자 주식회사 영상 코딩 시스템에서 lut를 기반으로 도출된 mvd를 사용하는 영상 디코딩 방법 및 그 장치
WO2019245204A1 (ko) * 2018-06-19 2019-12-26 삼성전자 주식회사 영상 압축을 수행하는 전자 장치 및 전자 장치의 동작 방법
CN110662087B (zh) * 2018-06-30 2021-05-11 华为技术有限公司 点云编解码方法和编解码器
US10762394B2 (en) 2018-07-31 2020-09-01 Intel Corporation System and method for 3D blob classification and transmission
US10887574B2 (en) * 2018-07-31 2021-01-05 Intel Corporation Selective packing of patches for immersive video
US11212506B2 (en) 2018-07-31 2021-12-28 Intel Corporation Reduced rendering of six-degree of freedom video
US10893299B2 (en) 2018-07-31 2021-01-12 Intel Corporation Surface normal vector processing mechanism
US11178373B2 (en) 2018-07-31 2021-11-16 Intel Corporation Adaptive resolution of point cloud and viewpoint prediction for video streaming in computing environments
US11057631B2 (en) 2018-10-10 2021-07-06 Intel Corporation Point cloud coding standard conformance definition in computing environments
US10841356B2 (en) 2018-11-28 2020-11-17 Netflix, Inc. Techniques for encoding a media title while constraining bitrate variations
US10880354B2 (en) * 2018-11-28 2020-12-29 Netflix, Inc. Techniques for encoding a media title while constraining quality variations
US11025913B2 (en) 2019-03-01 2021-06-01 Intel Corporation Encoding video using palette prediction and intra-block copy
US11012710B2 (en) 2019-03-06 2021-05-18 Tencent America LLC Techniques for intra prediction for 360 image and video coding
US11019360B2 (en) * 2019-03-21 2021-05-25 Qualcomm Incorporated Generalized reference sample derivation methods for intra prediction in video coding
US10855983B2 (en) * 2019-06-13 2020-12-01 Intel Corporation Encoding video using two-stage intra search
CN112449171B (zh) * 2019-09-03 2021-10-29 上海交通大学 点云分视角传输的编码方法、系统及介质
KR102476057B1 (ko) * 2019-09-04 2022-12-09 주식회사 윌러스표준기술연구소 클라우드 가상 현실을 위한 imu 센서 데이터를 활용한 비디오 인코딩 및 디코딩 가속 방법 및 장치
JP7480319B2 (ja) * 2020-02-13 2024-05-09 グーグル エルエルシー 画像およびビデオ圧縮のイントラ予測
CN111818333B (zh) * 2020-06-16 2022-04-29 中国科学院深圳先进技术研究院 一种帧内预测方法、装置、终端及存储介质
US11563977B2 (en) 2020-09-24 2023-01-24 Tencent America LLC Method and apparatus for video coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102907100A (zh) * 2010-05-17 2013-01-30 Sk电信有限公司 使用帧内块和帧间块相混合的编码块的视频编码/解码设备及其方法
CN103283232A (zh) * 2011-01-14 2013-09-04 西门子公司 用于形成预测值的方法和装置
WO2016064862A1 (en) * 2014-10-20 2016-04-28 Google Inc. Continuous prediction domain

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2047687B1 (en) 2006-08-02 2018-05-16 Thomson Licensing DTV Adaptive geometric partitioning for video encoding
ZA200901048B (en) 2006-09-29 2010-05-26 Thomson Licensing Geometric intra prediction
ES2752001T3 (es) 2008-04-15 2020-04-02 Orange Predicción de imágenes por determinación previa de una familia de píxeles de referencia, codificación y decodificación que usan dicha predicción
WO2014171713A1 (ko) 2013-04-15 2014-10-23 인텔렉추얼 디스커버리 주식회사 인트라 예측을 이용한 비디오 부호화/복호화 방법 및 장치
US9918094B2 (en) * 2014-10-20 2018-03-13 Google Llc Compressing and representing multi-view video
US20160112713A1 (en) * 2014-10-20 2016-04-21 Google Inc. Mapping spherical image to 2d representations
US9918082B2 (en) * 2014-10-20 2018-03-13 Google Llc Continuous prediction domain
US9917877B2 (en) * 2014-10-20 2018-03-13 Google Llc Streaming the visible parts of a spherical video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102907100A (zh) * 2010-05-17 2013-01-30 Sk电信有限公司 使用帧内块和帧间块相混合的编码块的视频编码/解码设备及其方法
CN103283232A (zh) * 2011-01-14 2013-09-04 西门子公司 用于形成预测值的方法和装置
WO2016064862A1 (en) * 2014-10-20 2016-04-28 Google Inc. Continuous prediction domain

Also Published As

Publication number Publication date
CN109804633A (zh) 2019-05-24
EP3301931A1 (en) 2018-04-04
KR20190052016A (ko) 2019-05-15
JP2019530350A (ja) 2019-10-17
US11089296B2 (en) 2021-08-10
JP7008903B2 (ja) 2022-01-25
KR102424140B1 (ko) 2022-07-25
US20190260989A1 (en) 2019-08-22
WO2018060358A1 (en) 2018-04-05
EP3520413A1 (en) 2019-08-07

Similar Documents

Publication Publication Date Title
CN109804633B (zh) 利用自适应帧内预测的全向视频编码和解码的方法和装置
CN109792520B (zh) 用于利用自适应帧内最可能模式的全向视频译码的方法和装置
US20200029092A1 (en) Method and apparatus for encoding and decoding a large field of view video
EP3301916A1 (en) Method and apparatus for omnidirectional video coding with adaptive intra most probable modes
US20190238853A1 (en) Method and apparatus for encoding and decoding an omnidirectional video
US20190238848A1 (en) Method and apparatus for calculating quantization parameters to encode and decode an immersive video
US11812066B2 (en) Methods, devices and stream to encode global rotation motion compensated images
CN109845264B (zh) 用于编码和解码大视场视频的方法和装置
CN111052746B (zh) 用于编码和解码全向视频的方法和装置
CN111108751B (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
TA01 Transfer of patent application right

Effective date of registration: 20210525

Address after: Paris France

Applicant after: Interactive Digital Madison Patent Holdings

Address before: Delaware, USA

Applicant before: Interactive Digital VC Holdings

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant