CN104396244A - 用于视频编码和解码的装置、方法和计算机程序 - Google Patents

用于视频编码和解码的装置、方法和计算机程序 Download PDF

Info

Publication number
CN104396244A
CN104396244A CN201380031859.2A CN201380031859A CN104396244A CN 104396244 A CN104396244 A CN 104396244A CN 201380031859 A CN201380031859 A CN 201380031859A CN 104396244 A CN104396244 A CN 104396244A
Authority
CN
China
Prior art keywords
picture
motion vector
block
reference picture
current block
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
Application number
CN201380031859.2A
Other languages
English (en)
Other versions
CN104396244B (zh
Inventor
D·拉萨诺维斯基
M·M·安尼克塞拉
J·莱内玛
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.)
Nokia Technologies Oy
Original Assignee
Nokia Oyj
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 Nokia Oyj filed Critical Nokia Oyj
Publication of CN104396244A publication Critical patent/CN104396244A/zh
Application granted granted Critical
Publication of CN104396244B publication Critical patent/CN104396244B/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
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/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/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • 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
    • H04N19/513Processing of motion vectors
    • 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
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • 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
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明公开一种方法、装置和计算机程序产品,其中用于编码和解码的有效运动矢量值的集合可以依赖于使用的参考画面。选择帧的当前块以供编码,并且选择用于当前块的参考块。基于选择的参考块,确定参考类型。基于参考类型和参考块,确定用于当前块的运动矢量。基于确定的运动矢量对运动矢量信息进行编码和解码。

Description

用于视频编码和解码的装置、方法和计算机程序
技术领域
本发明涉及一种用于视频编码和解码的装置、方法和计算机程序。
背景技术
本节旨在于提供在权利要求中记载的本发明的背景或者上下文。这里的描述可以包括如下概念,这些概念可以被探求、但是未必是先前已经设想或者探求的概念。因此,除非这里另有指示,在本节中描述的内容不是在本申请中的说明书和权利要求书之前的现有技术并且不因包含于本节中而被承认为现有技术。
视频编码系统可以包括将输入视频变换成适合用于存储/传输的压缩的表示的编码器和可以将经压缩的视频表示解压回成可查看形式的解码器。编码器可以丢弃原有视频序列中的一些信息以便以更紧凑形式表示视频以例如实现视频信息在比以其它方式可能需要的比特率更低的比特率的存储/传输。
可扩展视频编码是指编码结构,其中一个比特流可以包含内容在不同比特率、分辨率、帧速率和/或其它类型的可扩展性的多个表示。可扩展比特流可以由提供可用最低质量视频的基础层和在与更低层一起接收和解码时增强视频质量的一个或者多个增强层组成。为了提高用于增强层的编码效率,该层的编码表示可以依赖于较低层。每层与所有它的依赖层一起是视频信号在某个空间分辨率、时间分辨率、质量水平和/或其它类型的可扩展性的操作点上的一个表示。
当前考察和开发用于提供三维(3D)视频内容的各种技术。特别地,密集研究已经被聚焦于各种多视图应用,其中查看者能够仅看见来自特定视点的一对立体视频和来自不同视点的另一对立体视频。用于这样的多视图应用的最可行方式之一已经转向这样的方式,其中向解码器侧提供仅有限数目的输入视图、例如单一或者立体视频加上一些补充数据,并且所有需要的视图然后被解码器本地渲染(即合成)以在显示器上被显示。
在对3D视频内容的编码中,可以使用视频压缩系统、比如高级视频编码标准H.264/AVC或者H.264/AVC的多视图视频编码MVC扩展。
发明内容
一些实施例利用用于编码和解码的有效运动矢量值的集合可以依赖于使用的参考画面这样的考虑。在一些情况下(例如对于特定类型的参考画面),有效运动矢量分量值的集合可以是空的,在该情况下,可以省略对与运动矢量分量有关的语法元素的编码,并且可以在解码中推导运动矢量分量的值。在一些情况下,有效运动矢量分量值的集合可以小于用于帧间预测的运动矢量值的普通集合,在该情况下,用于运动矢量差的熵编码可以例如通过使用与用于其它帧间预测运动矢量的情境不同的情境自适应二进制算术编码(CABAC)情境用于这些运动矢量差来改变。在一些情况下,运动矢量值的似然性可能比(例如空间地或者时间地)邻近运动矢量更多依赖于参考画面,因此熵编码可能不同于用于其它运动矢量的熵编码,例如可以使用不同初始CABAC情境或者可以维持和例如基于参考画面的类型适配不同情境。
一些实施例提供一种用于指示合适将运动矢量信息与参考画面索引的指示组合的机制。在这些情况下,解码器可以先对关于与预测单元关联的参考索引的指示进行解码。如果该参考索引指向具有指示的特殊运动矢量场的画面中,则运动矢量预测和差分运动矢编码过程可以被完全地或者部分地回避和/或基于情境的熵解码过程可以不同于其它运动矢量的熵解码过程。另外,如果差分运动矢量编码已经被完全地或者部分地回避,则可以利用用于预测单元的特殊过程推导运动矢量。
在一些实施例中,用于基于视图合成的预测、视图间预测和层间预测的运动矢量分量可能在它们的适用范围上受限制,这些适用范围限定语法元素的集合和解码操作的集合。
根据本发明的第一方面,提供一种方法,该方法包括:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第二方面,提供一种方法,该方法包括:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第三方面,提供一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置用于与至少一个处理器一起使该装置:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第四方面,提供一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置用于与至少一个处理器一起使该装置:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第五方面,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时使装置至少执行以下:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第六方面,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时使装置至少执行以下:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第七方面,提供一种装置,该装置包括:
用于选择帧的当前块以供编码的装置;
用于选择用于当前块的参考块的装置;
用于基于选择的参考块确定参考类型的装置;
用于基于参考类型和参考块确定用于当前块的运动矢量的装置;以及
用于用于基于确定的运动矢量对运动矢量信息进行编码的装置。
根据本发明的第八方面,提供一种装置,该装置包括:
用于选择帧的当前块以供编码的装置;
用于选择用于当前块的参考块的装置;
用于确定标识参考块属于的画面的参考画面索引的装置;
用于基于参考画面索引确定用于当前块的运动矢量的装置;以及
用于基于确定的运动矢量对运动矢量信息进行编码的装置。
根据本发明的第九方面,提供一种方法,该方法包括:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十方面,提供一种方法,该方法包括:
接收包比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十一方面,提供一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置用于与至少一个处理器一起使该装置:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十二方面,提供一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置用于与至少一个处理器一起使该装置:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十三方面,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时使装置至少执行以下:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十四方面,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时使装置至少执行以下:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第十五方面,提供一种装置,该装置包括:
用于接收包括与帧的当前块相关的经编码的信息的比特流的装置;
用于对经编码的信息进行解码的装置;
用于检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示的装置;
用于如果经编码的信息包含用于当前块的参考类型的指示、则使用参考类型以确定如何获得与当前块相关的运动矢量信息的装置;以及
用于获得运动矢量信息的装置。
根据本发明的第十六方面,提供一种装置,该装置包括:
用于接收包括与帧的当前块相关的经编码的信息的比特流的装置;
用于对经编码的信息进行解码的装置;
用于检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示的装置;
用于如果经编码的信息包含用于当前块的参考类型的指示、则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
用于获得运动矢量信息的装置。
根据本发明的第十七方面,提供一种视频编码器,该视频编码器被配置用于:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第十八方面,提供一种视频编码器,该视频编码器被配置用于:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据本发明的第十九方面,提供一种视频解码器,该视频解码器被配置用于:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据本发明的第二十方面,提供一种视频解码器,该视频解码器被配置用于:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
附图说明
为了更好地理解本发明,现在将通过示例参照附图,在附图中:
图1示出立体相机布置的简化2D模型;
图2示出多视图相机布置的简化模型;
图3示出多视图自动立体显示器(ASD)的简化模型;
图4示出基于DIBR的3DV系统的简化模型;
图5和6示出基于飞行时间的深度估计系统的示例;
图7a示出用作用于帧内预测的候选的当前编码的块的空间邻域;
图7b示出用作用于帧间预测的候选的当前编码的块的时间邻域;
图8示出具有视图合成功能的视频编码器的示例为简化框图;
图9示出具有视图合成功能的视频解码器的示例为简化框图;
图10示意地示出适合用于采用本发明的一些实施例的电子设备;
图11示意地示出适合用于采用本发明的一些实施例的用户设备;
图12进一步示意地示出使用无线和有线网络连接而连接的采用本发明的实施例的电子设备;
图13作为流程图示出根据一个示例实施例的编码方法;
图14作为流程图示出根据一个示例实施例的解码方法。
具体实施方式
为了理解本发明的各种方面和与之有关的实施例,以下简要地描述视频编码的一些紧密有关的方面。
在这一节中描述H.264/AVC的一些关键定义、比特流和编码结构以及概念作为其中可以实施一些实施例的视频编码器、解码器、编码方法、解码方法和比特流结构的示例。本发明的方面不限于H.264/AVC,但是实际上对于本发明可以在其上面被部分地或者完全地实现的一个可能基础给出描述。
H.264/AVC标准由国际电信联盟(ITU-T)的电信标准化部门的视频编码专家组(VCEG)和国际标准化组织(ISO)/国际电工委员会(IEC)的运动图片专家组(MPEG)的联合视频团队(JVT)开发。H.264/AVC标准由两个母标准组织发布,并且它被称为ITU-T推荐H.264和ISO/IEC国际标准14496-10、也称为MPEG-4部分10高级视频编码(AVC)。已经有H.264/AVC标准的多个版本,每个版本向该规范集成新扩展或者特征。这些扩展包括可扩展视频编码(SVC)和多视图视频编码(MVC)。
与许多更早视频编码标准相似地,在H.264/AVC中指定了比特流语法和语义以及用于无错比特流的解码过程。未指定编码过程,但是编码器必须生成相符比特流。可以用在H.264/AVC的附录C中指定的假设参考解码器(HRD)验证比特流和解码器相符。该标准包含有助于应对传输错误和丢失的编码工具,但是在编码中使用工具是可选的,并且对于错误比特流尚未指定解码过程。
用于向H.264/AVC编码器的输入和H.264/AVC解码器的输出的基本单元是画面。画面可以是帧或者场。帧通常包括照度样本和对应色度样本的矩阵。场是在源信号被交织时的帧的交替样本行的集合并且可以用作编码器输入。宏块(MB)是16x16照度样本块和对应色度样本块。块具有由在最高和最低样本行以及在最左和最右样本列的样本组成的边界样本。可以例如在帧内预测中使用与正在编码或者解码的另一个块相邻的边界样本。色度画面在与照度画面比较时可以被子采样。例如在4:2:0采样模式中,沿着两个坐标轴,色度画面的空间分辨率是照度画面空间分辨率的一半,因而宏块包含每个色度分量的一个8x8色度样本块。画面被分割成一个或者多个分片组,并且分片组包含一个或者多个分片。分片由在特定分片组内的光栅扫描中连续地排序的整数数目的宏块组成。
用于H.264/AVC编码器的输出和H.264/AVC解码器的输入的基本单元是网络抽象层(NAL)单元。对部分地丢失或者破坏的NAL单元的解码通常是困难的。为了通过面向分组的网络传送或者存储成结构化的文件,NAL单元通常被封装成分组或者相似结构。已经在H.264/AVC中针对不提供成帧结构的传输或者存储环境指定了字节流格式。字节流格式通过在每个NAL单元前面附着开始码来将NAL单元相互分离。为了避免错误检测NAL单元边界,编码器运行面向字节的开始码模拟预防算法,如果开始码原本会出现,则该算法向NAL单元有效载荷添加模拟预防字节。为了实现在面向分组与面向流的系统之间的简单直接网关操作,无论是否使用字节流格式,总是执行开始码模拟预防。
H.264/AVC如同许多其它适当编码标准允许将经编码的画面拆分成分片。跨越分片边界禁用画面内预测。因此,分片可以视为一种用于将经编码的画面拆分成独立地可解码画面的方式,并且分片因此是用于传输的基本单元。
H.264/AVC的一些简档实现每个经编码的画面使用上至八个分片组。在使用多于一个分片组时,画面被分割成分片组映射单元,分片组映射单元在使用宏块自适应帧场(MBAFF)编码时等于两个竖直地连续宏块而在其它情况下等于宏块。画面参数集包含数据,基于该数据,画面的每个分片组映射单元与特定分片组关联。分片组可以包含任何分片组映射单元、包括非相邻映射单元。在为画面指定多于一个分片组时,使用该标准的灵活宏块排序(FMO)特征。
在H.264/AVC中,分片由按照光栅扫描顺序的在特定分片组内的一个或者多个连续宏块(或者在使用MBAFF时的宏块对)组成。如果使用仅一个分片组,则H.264/AVC分片包含按照光栅扫描顺序的连续宏块并且因此与许多先前编码标准中的分片相似。在H.264/AVC的一些简档中,经编码的画面的分片可以在比特流中相对于彼此按照任何顺序出现,这称为任意分片排序(ASO)特征。否则,分片必须在比特流中按照光栅扫描顺序。
NAL单元由首部和有效载荷组成。NLC单元首部指示NAL单元的类型和在NAL单元中包含的经编码的分片是参考画面还是非参考画面的一部分。用于SVC和MVC NAL单元的首部还包含与可扩展性和多视图分级相关的各种指示。
H.264/AVC的NAL单元可以被分类为视频编码层(VCL)NAL单元和非VCL NAL单元。VCL NAL单元是经编码的分片NAL单元、经编码的分片数据分割块NAL单元或者VCL前缀NAL单元。经编码的分片NAL单元包含代表一个或者多个经编码的宏块的语法元素,每个经编码的宏块对应于在未压缩的画面中的样本块。有四个类型的经编码的分片NAL单元:在瞬时解码刷新(IDR)画面中的经编码的分片、在非IDR画面中的经编码的分片、辅助经编码的画面(比如阿尔法平面)的经编码的分片和经编码的分片扩展(对于在基础层中的SVC分片或者不在基础视图中的MVC分片)。三个经编码的分片数据分割块NAL单元的集合包含与经编码的分片相同的语法元素。经编码的分片数据分割块A包括分片的宏块首部和运动矢量,而经编码的分片数据分割块B和C包括分别包括用于帧内宏块和帧间宏块的经编码的残值数据。注意仅在H.264/AVC的一些简档中包括对于分片数据分割的支持。VCL前缀NAL单元在先于SVC和MVC比特流中的基础层的经编码的分片并且包含关联经编码的分片的可扩展性分级的指示。
H.264/AVC的非VCL NAL单元可以是以下类型之一:序列参数集、画面参数集、补充增强信息(SEI)NAL单元、访问单元定界符、序列结束NAL单元、流结束NAL单元或者填充符数据NAL单元。参数集对于重建经解码的画面是必需的,而其它非VCL NAL单元对于重建解码的采样值不是必需的并且用作以下呈现的其它目的。
在序列参数集中包括经过经编码的视频序列保持不变的许多参数。除了解码过程必需的参数之外,序列参数集还可以可选地包含视频可使用性信息(VUI),该VUI包括对于缓冲、画面输出定时、渲染和资源预留而言重要的参数。画面参数集包含可能在若干经编码的画面中不变的这样的参数。H.264/AVC比特流中不存在画面首部,但是频繁地改变的画面级数据在每个分片首部中被重复,并且画面参数集携带其余画面级参数。H.264/AVC语法允许序列和画面参数集的许多实例,并且每个实例用唯一标识符来标识。每个分片首部包括对于对包含分片的画面的解码而言活跃的画面参数集的标识符,并且每个画面参数集包含活跃序列参数集的标识符。因而,画面和序列参数集的传输无需与分片的传输准确地同步。替代地,活跃序列和画面参数集在它们被引用之前的任何时刻被接收就足够了,这允许使用与用于分片数据的协议相比更可靠的传输机制来传输参数集。例如可以包括参数集作为在用于H.264/AVC实时传送协议(RTP)会话的会话描述中的参数。如果带内传输参数集,则可以重复它们以提高错误稳健性。
H.264/AVC的SEI NAL单元包含一个或者多个SEI消息,该一个或者多个SEI消息不是对输出画面的解码所必需的、但是辅助有关过程、比如画面输出定时、渲染、错误检测、错误隐藏和资源预留。在H.264/AVC中指定若干SEI消息,并且用户数据SEI消息使组织和公司能够指定SEI消息以供它们自己使用。H.264/AVC包含用于指定的SEI消息的语法和语义,但是未定义用于在接收者中处置消息的过程。因而,要求编码器在它们创建SEI消息时遵循H.264/AVC标准,并且不要求符合H.264/AVC标准的解码器针对输出顺序相符来处理SEI消息。在H.264/AVC中包括SEI消息的语法和语义的原因之一是允许不同系统规范等同地解释补充信息并且因此互操作。旨在于系统规范可能需要在编码端和在解码端均使用特定SEI消息,并且还能够指定用于在接收者中处置特定SEI消息的过程。
在H.264/AVC中的经编码的画面由针对画面的解码所需的VCLNAL单元组成。经编码的画面可以是主要经编码的画面或者冗余经编码的画面。主要经编码的画面在有效比特流的解码过程中使用,而冗余经编码的画面是应当仅在主要经编码的画面不能被成功地解码时被解码的冗余表示。
在H.264/AVC中,访问单元由主要经编码的画面和与它关联的那些NAL单元组成。约束NAL单元在访问单元内的出现顺序如下。可选访问单元定界符NAL单元可以指示访问单元的开始。它跟随有零个或者更多SEI NAL单元。主要经编码的画面的经编码的分片或者分片数据分割块接着出现、跟随有用于零个或者更多冗余经编码的画面的经编码的分片。
如以上所言,在可扩展视频编码中,视频信号可以被编码成被构造的基础层和一个或者多个增强层。增强层可以例如增强另一层或者其部分所表示的视频内容的时间分辨率(即帧速率)、空间分辨率或者简单地增强其质量。每层与所有它的依赖层一起是视频信号例如在某个空间分辨率、时间分辨率和质量水平的表示。在本文中,将可扩展层与所有它的依赖层一起称为“可扩展层表示”。可扩展比特流的与可扩展层表示对应的部分可以被提取和解码以产生原有信号在某个保真度的表示。
在一些情况下,在增强层中的数据可以在某个位置之后或者甚至在任意定位被截短,其中每个截短定位可以包括代表逐渐增强的可视质量的附加数据。这样的可扩展性称为细粒度化(粒度)可扩展性(FGA)。在SVC标准的一些草案版本中包括FGS,但是它最后从最终SVC标准被排除。在SVC标准的一些草案版本的情境中随后讨论FGS。不能被截短的那些增强层提供的可扩展性称为粗粒度化(粒度)可扩展性(CGS)。它共同地包括传统质量(SNR)可扩展性和空间可扩展性。SVC标准支持所谓中粒度化可扩展性(MGS),其中质量增强画面与SNR可扩展层画面相似地被编码、但是与FGS层画面相似地、通过使quality_id语法元素大于0来被高级语法元素指示。
SVC使用层间预测机制,其中某些信息可以根据除了当前重建的层之外的层或者下一更低层来预测。可以被层间预测的信息包括帧内纹理、运动和残值数据。层间运动预测包括预测块编码模式、首部信息等,其中来自更低层的运动可以用于预测更高层。在帧内编码的情况下,根据周围宏块或者根据更低层的共位的宏块的预测是可能的。这些预测技术不采用来自更早编码的访问单元的信息并且因此称为帧内预测技术。另外,来自更低层的残值数据也可以用于预测当前层。
SVC指定称为单循环解码的概念。它通过使用约束型帧内纹理预测模式来实现,通过这一方式层间帧内纹理预测能够应用于宏块(MB),对于这些MB,基础层的对应块位于帧内MB以内。同时,在基础层中的那些帧内MB使用约束型帧内预测(例如使语法元素“contrained_intra_pred_flag”等于1)。在单循环解码中,解码器仅针对回放所希望的可扩展层(称为“希望的层”或者“目标层”)执行运动补偿和全画面重建、由此大大减少解码复杂性。除了希望的层之外的所有层无需被完全地解码,因为对希望的层的重建无需未用于层间预测(如果它是层间帧内纹理预测、层间运动预测或者层间残值预测)的MB的数据的全部或者部分。
单解码循环是对多数画面的解码所需要的,而第二解码循环选择性地应用于重建基础表示,需要该基础表示作为预测参考、但是其不是用于输出或者显示,并且仅对于所谓关键画面(对于这些关键画面,“store_ref_base_pic_flag”等于1)而重建该基础表示。
在SVC草案中的可扩展性结构以三个语法元素为特征:“temporal_id”、“dependency_id”和“quality_id”。语法元素“temporal_id”用来指示时间可扩展性分级或者间接地指示帧速率。包括更小的最大“temporal_id”值的画面的可扩展层表示具有比包括更大的最大“temporal_id”值的画面的可扩展层表示更小的帧速率。给定的时间层通常依赖于更低时间层(即具有更小“temporal_id”值的时间层)、但是不依赖于任何更高时间层。语法元素“dependency_id”用来指示CGS层间编码依赖性分级(该CGS层间编码依赖性分级如更早提到的那样包括SNR和空间可扩展性二者)。在任何时间级位置,更小“dependency_id”值的画面可以用于层间预测,该层间预测用于对具有更大“dependency_id”值的画面的编码。语法元素“quality_id”用来指示MGS层的质量级分级。在任何时间位置和有了相同的“dependency_id”值,具有等于QL的“quality_id”的画面使用具有等于QL-1的“quality_id”的画面用于层间预测。
为了简化,在一个访问单元中的具有相同“dependency_id”值的所有数据单元(例如在SVC情境中的网络抽象化层单元或者NAL单元)称为依赖性单元或者依赖性表示。在一个依赖性单元内,具有相同“quality_id”值的所有数据单元称为质量单元或者层表示。
也称为经解码的基础画面的基础表示是通过对具有等于0的“quality_id”并且“store_ref_base_pic_flag”被设置等于1的依赖性单元的视频编码层(VCL)NAL单元进行解码而产生的经解码的画面。也称为经解码的画面的增强表示通过普通解码过程产生,在该解码过程中,对于最高依赖性表示而存在的所有层表示被解码。
每个H.264/AVC VCL NAL单元(具有在范围1到5中的NAL单元类型)在SVC比特流中被前置有前缀NAL单元。符合H.264/AVC的解码器实现方式忽略前缀NAL单元。前缀NAL单元包括“temporal_id”值,并且因此对基础层进行解码的SVC解码器可以从前缀NAL单元得知时间可扩展性分级。另外,前缀NAL单元包括用于基础表示的参考画面标记命令。
SVC使用与H.264/AVC相同的机制以提供时间可扩展性。时间可扩展性通过给予调整帧速率的灵活性来提供视频质量在时域中的精化。在H.264/AVC、SVC和MVC中,时间可扩展性可以通过使用非参考画面和/或分级参考画面预测结构来实现。仅使用非参考画面能够实现与在MPEG-1/2/4中通过丢弃非参考画面使用常规B画面相似的时间可扩展性。分级编码结构可以实现更灵活的时间可扩展性。
在H.264/AVC中,可以通过在子序列信息补充增强信息(SEI)消息中的子序列层编号用信号发送时间级别。在SVC中,在网络抽象化层(NAL)单元首部中通过语法元素“temporal_id”用信号发送时间级别。在可扩展性信息SEI消息中用信号发送用于每个时间级别的比特率和帧速率信息。
如更早提到的那样,CSG包括空间可扩展性和SNR可扩展性二者。空间可扩展性初始地被设计为支持视频的不同分辨率的表示。对于每个时间时刻,VCL NAL单元在相同访问单元中被编码,并且这些VCL NAL单元可以对应于不同分辨率。在解码期间,低分辨率VCL NAL单元提供可以通过对高分辨率画面的最终解码和重建而可选地继承的运动场和残值。在与更旧视频压缩标准比较时,SVC的空间可扩展性已经被一般化为使基础层能够是增强层的裁剪和缩放版本。
在FGS增强层的基本形式中,仅使用层间预测。因此,FGS增强层可以被自由地截短而未在经解码的序列中引起任何错误传播。然而FGS的基本形式面临低压缩效率的问题。这一问题出现是因为仅低质量画面用于帧间预测参考。因此已经提出FGS增强的画面用作帧间预测参考。然而这可能在丢弃一些FGS数据时引起也称为漂移的编码-解码不匹配。
SVC的一个特征是FGS NAL单元可以被自由地丢弃或者截短,并且MGS NAL单元可以被自由地丢弃(但是不能被截短)而不影响比特流的相符。如以上讨论的那样,在那些FGS或者MGS数据已经在编码期间用于帧间预测参考时,对数据的丢弃或者截短将造成在解码器侧中和在编码器侧中的经解码的画面之间的不匹配。这一不匹配也称为漂移。
为了控制由于对FGS或者MGS数据的丢弃或者截短所致的漂移,SVC应用以下解决方案:在某个依赖性单元中,基础表示(通过仅对具有等于0的“quality_id”的CGS画面和所有依赖于的更低层数据进行解码)存储于解码画面缓冲器中。在对具有相同“dependency_id”值的后续依赖性单元进行编码时,包括FGS或者MGS NAL单元的所有NAL单元使用基本表示用于帧间预测参考。因而,由于对在更早访问单元中的FGS或者MGS NAL单元的丢弃或者截短所致的所有漂移在这一访问单元被停止。对于具有相同“dependency_id”值的其它依赖性单元,所有NAL单元使用经解码的画面用于帧间预测参考以求高编码效率。每个NAL单元在NAL单元首部中包括语法元素“use_ref_base_pic_flag”。在这一元素的值等于1时,对NAL单元的解码在帧间预测过程期间使用参考画面的基本表示。语法元素“store_ref_base_pic_flag”指定是(在等于1时)否(在等于0时)存储当前画面的基本表示用于将来画面以供帧间预测。
具有大于0的“quality_id”的NAL单元不含与参考画面列表构造和加权预测有关的语法元素、即语法元素“num_ref_active_1x_minus1”(x=0或者1),参考画面列表重新排序语法表和加权预测语法表不存在。因而,MGS或者FGS层必须在需要时从相同依赖性单元的具有等于0的“quality_id”的NAL单元继承这些语法元素。
泄漏预测技术通过使用基本表示和经解码的画面的加权组合对FGS数据进行预测来利用基本表示和经解码的画面二者(对应于最高解码的“quality_id”)。加权因子可以用来控制潜在漂移在增强层画面中的衰减。在使用泄漏预测时,SVC的FGS特征常称为自适应参考FGS(AR-FGS)。AR-FGS是一种用于在编码效率与漂移控制之间平衡的工具。AR-FGS通过分片级信号发送和对加权因子的MB级适配来实现泄漏预测。
将在MVC中的访问单元定义为按照解码顺序连续的NAL单元的集合并且包含由一个或者多个视图分量组成的确切一个主要经编码的画面。除了主要经编码的画面之外,访问单元也可以包含一个或者多个冗余经编码的画面、一个辅助经编码的画面或者不含编码的画面的分片或者分片数据分割部的其它NAL单元。对访问单元的解码总是产生由一个或者多个经解码的视图分量组成的一个经编码的画面。换而言之,在MVC中的访问单元包含用于一个输出时间实例的视图的视图分量。
在MVC中的视图分量称为在单个访问单元中的视图的经编码的表示。
视图间预测可以在MVC中被使用并且是指根据相同访问单元的不同视图分量的经解码的样本预测视图分量。在MVC中,与帧间预测相似地实现视图间预测。例如视图间参考画面被置于与用于帧间预测的参考画面相同的参考画面列表中,并且参考索引以及运动矢量对于视图间和帧间参考画面被相似地编码或者推断。
在MVC中的锚画面是经编码的画面,在该经编码的画面中,所有分片可以仅参考在相同访问单元内的分片、即可以使用视图间预测,但是不使用帧间预测,并且按照输出顺序的所有后继编码的画面不使用从按照解码顺序在经编码的画面之前的任何画面的帧间预测。视图间预测可以用于IDR视图分量,这些IDR视图分量是非基本视图的部分。在MVC中的基本视图是在经编码的视频序列中具有最小视图顺序索引值的视图。基本视图可以与其它视图独立地被解码并且不使用视图间预测。基本视图可以由仅支持单视图简档、比如H.264/AVC的基线简档或者高简档的H.264/AVC解码器解码。
在MVC标准中,MVC解码过程的子过程中的许多子过程通过分别用“视图分量”、“帧视图分量”和“场视图分量”替换在H.264/AVC标准的子过程规范中的术语“画面”、“帧”和“场”来使用H.264/AVC标准的相应子过程。类似地,术语“画面”、“帧”和“场”经常在下文中用来分别意味着“视图分量”、“帧视图分量”和“场视图分量”。
将经编码的视频序列定义为按照从IDR访问单元——包括该IDR访问单元——到无论哪个更早出现的下一IDR访问单元——不含下一IDR访问单元——或者到比特流的结束这一解码顺序的连续访问单元的序列。
可以定义画面组(GOP)及其特性如下。GOP无论任何先前画面是否被解码都可以被解码。开放GOP是这样的画面组,在该画面组中,按照输出顺序在初始帧内画面之前的画面可能在解码从开放GOP的初始帧内画面开始时未正确地可解码。换而言之,开放GOP的画面可以引用(在帧内预测时)属于先前GOP的画面。H.264/AVC解码器可以从在H.264/AVC比特流中的恢复点SEI消息识别开始开放GOP的帧内画面。封闭GOP是这样的画面组,在该画面组中,所有画面可以在解码从封闭GOP的初始帧内画面开始时被正确地解码。换而言之,在封闭GOP中的画面未引用在先前GOP中的任何画面。在H.264/AVC中,封闭GOP从IDR访问单元开始。作为结果,封闭GOP结构与开放GOP结构比较而言具有更多错误弹性可能性、然而代价是可能压缩效率减少。开放GOP编码结构由于在选择参考画面时的更大灵活性而在压缩时潜在地更高效。
H.264/AVC的比特流语法指示特定画面是否为用于任何其它画面的帧间预测的参考画面。任何编码类型(I、P、B)的画面可以是在H.264/AVC中的参考画面或者非参考画面。NAL单元首部指示NAL单元的类型和在NAL单元中包含的经编码的分片是否为参考画面或者非参考画面的部分。
有用于指定高效率视频编码(HEVC)标准的正在进行的视频编码标准化项目。HEVC的关键定义、比特流和编码结构以及概念中的许多关键定义、比特流和编码结构以及概念与H.264/AVC的关键定义、比特流和编码结构以及概念相同或者相似。在这一节中描述HEVC的一些关键定义、比特流和编码结构以及概念作为其中可以实施一些实施例的视频编码器、解码器、编码方法、解码方法和比特流结构的示例。本发明的方面不限于HEVC,但是实际上对于本发明可以在其上面被部分地或者完全地实现的一个可能基础给出描述。
与H.264/AVC相似地,HEVC比特流由多个访问单元组成,每个访问单元包括与画面关联的经编码的数据。每个访问单元被划分成NAL单元、包括一个或者多个VCL NAL单元(即经编码的分片NAL单元)和零个或者更多非VCL NAL单元、例如参数集NAL单元或者补充增强信息(SEI)NAL单元。每个NAL单元包括NAL单元首部和NAL单元有效载荷。在草案HEVC标准中,两字节NAL单元首部用于所有指定的NAL单元类型。NAL单元首部的第一字节包含一个预留位、一位指示nal_ref_idc——该一位指示主要地指示在这一访问单元中携带的画面为参考画面还是非参考画面——和六位NAL单元类型指示。NAL单元首部的第二字节包括用于时间级别的三位temporal_id指示和在草案HEVC标准中需要具有等于1的值的五位预留字段(称为reserved_one_5bits)。预计五位预留字段被扩展、比如将来可扩展和3D视频扩展所使用。预计这些五位将携带关于可扩展性分级的信息、比如quality_id等、dependency_id等、任何其它类型的层标识符、视图顺序索引等、视图标识符、与SVC的priority_id——如果从比特流去除所有大于具体标识符值的NAL单元,则priority_id指示有效子比特流提取——相似的标识符。不失一般性,在一些示例实施例中,从reserved_one_5bits的值推导可变LayerId例如如下:LayerId=reserved_one_5bits–1。
在草案HEVC标准中,定义用于画面分割的一些关键定义和概念如下。分割被定义为将集合划分成子集,从而集合的每个元素在子集中的确切一个子集中。
将视频画面划分成覆盖画面的区域的编码单元(CU)。编码单元由定义用于在编码单元内的样本的预测过程的一个或者多个预测单元(PU)和定义用于在编码单元中的样本的预测误差编码过程的一个或者多个变换单元(TU)组成。编码单元可以由具有从可能编码单元大小的预定义集合可选择的大小的样本方块组成。具有最大允许大小的编码单元可以称为最大编码单元(LCU),并且视频画面可以被划分成非重叠最大编码单元。最大编码单元可以例如通过递归地拆分最大编码单元和所得编码单元来进一步拆分成更小编码单元的组合。每个所得编码单元可以具有至少一个预测单元和与它关联的至少一个变换单元。每个预测单元和变换单元还可以被拆分成更小预测单元和变换单元以便分别增加预测和预测误差编码过程的粒度。每个预测单元具有与它相关联的预测信息,该预测信息定义什么种类的预测将应用于在该预测单元内的像素(例如用于帧间预测的预测单元的运动矢量信息和用于帧内预测的预测单元的帧内预测方向性信息)。相似地,每个变换单元与如下信息关联,该信息描述用于在变换单元内的样本的预测误差解码过程(例如包括DCT系数信息)。可以在编码单元级用信号发送预测误差编码是否将应用于每个编码单元。在没有与编码单元关联的预测误差残值的情况下,可以认为没有用于编码单元的变换单元。可以在比特流中用信号发送将图像划分成编码单元以及将编码单元划分成预测单元和变换单元从而允许解码器再现这些单元的既定结构。
包括H.264/AVC和HEVC的许多混合ISP编码解码器在两个阶段中对视频信息进行编码。在第一阶段中,预测在某个画面区域或者“块”中的像素或者样本值。例如可以通过运动补偿机制预测这些像素或者样本值,这些运动补偿机制涉及到发现和指示在先前编码的视频帧之一中的与正在编码的块紧密对应的区域。此外,可以通过涉及到发现和指示空间区域关系的空间机制来预测像素或者样本值。
使用来自先前编码的图像的图像信息的预测方式也可以称为帧间预测方法,这些帧间预测方法也可以称为时间预测和运动补偿。使用在相同图像内的图像信息的预测方式也可以称为帧内预测方法。
第二阶段是对在预测的像素块或者样本块与原有像素块或者样本块之间的误差进行编码的阶段。这可以通过使用指定的变换对像素或者样本值的差值进行变换来实现。这一变换可以是离散余弦变换(DCT)或者其变化。在变换差值之后,变换的差值被量化和熵编码。
通过变化量化过程的保真性,编码器可以控制在像素或者样本表示的准确性(即画面的可视质量)与所得经编码的视频表示的大小(即文件大小或者传输比特率)之间的平衡。
解码器通过应用与编码器为了形成像素或者样本块的预测的表示而使用的预测机制相似的预测机制(使用由编码器创建的并且在图像的压缩表示中存储的运动或者空间信息)和预测误差解码(预测误差编码的用于在空间域中恢复量化的预测误差信号的逆操作)来重建输出视频。
在应用像素或者样本预测和误差解码过程之后,解码器组合预测和预测误差信号(像素或者样本值)以形成输出视频帧。
解码器(和编码器)也可以应用附加滤波过程以便在传递输出视频用于显示和/或存储为用于在视频序列中的即将来临的画面的预测参考之前提高它的质量。
在包括H.264/AVC和HEVC的许多视频编码解码器中,运动信息用与每个经运动补偿的图像块关联的运动矢量来指示。这些运动矢量中的每个运动矢量表示在待编码(在编码器侧中)或者解码(在解码器侧中)的画面中的图像块与在先前编码或者解码的画面之一中的预测源块的移位。H.264/AVC和HEVC如同许多其它视频压缩标准将画面划分成矩形网格,对于这些矩形中的每个矩形指示在参考画面之一的相似块用于帧间预测。预测块的位置被编码为运动矢量,该运动矢量指示预测的块相比于正在编码的块的定位。为了高效地表示运动矢量,它们可以相对于块专属预测的运动矢量来差分地编码。在许多视频编码解码器中,以预定义的方式、例如通过计算相邻块的经编码或者解码的运动矢量的中值来创建预测的运动矢量。用于创建运动矢量预测的另一方式是从相邻块和/或在时间参考画面中的共位的块生成候选预测的列表并且用信号发送选择的候选作为运动矢量预测符。除了预测运动矢量值之外,还可以预测先前编码/解码的画面的参考索引。可以从相邻块和/或从在时间参考画面中的共位的块预测参考索引。另外,许多高效率视频编码解码器运用常称为合并化/合并模式的附加运动信息编码/解码机制,其中预测和使用所有运动场信息——该运动场信息包括运动矢量和用于每个可用参考画面列表的对应参考画面索引——而无任何修改/校正。相似地,使用相邻块和/或在时间参考画面中的共位的块的运动场信息来执行预测运动场信息,并且在填充有可用相邻/共位的块的运动场信息的运动场候选列表之中用信号发送使用的运动场信息。
可以使用以下因素中的一个或者多个因素来表征帧间预测过程。
运动矢量表示的准确性。例如运动矢量可以是四分之一像素准确性,并且可以使用有限麻涌响应(FIR)滤波器来获得在分数像素定位中的样本值。
用于帧间预测的块分割。包括H.264/AVC和HEVC的许多编码标准允许选择块——针对该块应用运动矢量用于在编码器中的运动补偿——的大小和形状并且在比特流中指示选择的大小和形状,从而解码器可以再现在编码器中完成的运动补偿预测。
用于帧间预测的参考画面数目。帧间预测源是先前解码的画面。包括H.264/AVC和HEVC的许多编码标准实现存储用于帧间预测的多个参考画面和在块基础上选择使用的参考画面。例如可以在H.264/AVC中在宏块或者宏块分割基础上和在HEVC中在PU或者CU基础上选择参考画面。许多编码标准、比如H.264/AVC和HEVC在比特流中包括语法结构,这些语法结构使解码器能够创建一个或者多个参考画面列表。指向参考画面列表的参考画面索引可以用来指示多个参考画面中的哪个参考画面用于特定块的帧间预测。参考画面索引可以在一些帧间编码模式中由编码器编码到比特流中或者它可以在一些其它帧间编码模式中(由编码器和解码器)例如使用邻近块来推导。
运动矢量预测。为了在比特流中高效地表示运动矢量,运动矢量可以相对于块专属预测的运动矢量来差分地编码。在许多视频编码解码器中,以预定义的方式、例如通过计算相邻块的经编码或者解码的运动矢量的中值来创建预测的运动矢量。用于创建运动矢量预测的另一方式是从相邻块和/或在时间参考画面中的共位的块生成候选预测的列表并且用信号发送选择的候选作为运动矢量预测符。除了预测运动矢量值之外,还可以预测先前经编码/解码的画面的参考索引。通常从相邻块和/或在时间参考画面中的共位的块预测参考索引。通常跨越分片边界禁用对运动矢量的差分编码。
多假设运动补偿预测。H.264/AVC和HEVC实现在P分片中使用单个预测块(这里称为单预测分片)或者将两个经运动补偿的预测块的线性组合用于也称为B分片的双预测分片。在B分片中的个体块可以被双预测、单预测或者帧内预测,并且在P分片中的个体块可以被单预测或者帧内预测。用于双预测画面的参考画面不限于按照输出顺序的后续画面和先前画面,但是实际上可以使用任何参考画面。在许多编码标准、比如H.264/AVC和HEVC中,为P分片构造称为参考画面列表0的一个参考画面列表,并且为B分片构造列表0和列表1这两个参考画面列表。对于B分片,即使用于预测的参考画面可以具有与彼此或者当前画面的任何解码或者输出顺序关联,在前向方向上的预测可以是指从在参考画面列表0中的参考画面预测,而在向后方向上的预测可以是指从在参考画面列表1中的参考画面预测。
加权预测。许多编码标准将预测权重1用于帧间(P)画面的预测块而0.5用于B画面的每个预测块(导致求平均)。H.264/AVC允许用于P和B分片的加权预测。在隐式加权预测中,权重与画面顺序计数成比例,而在显式加权预测中,显式地指示预测权重。
在许多视频编码解码器中,在运动补偿之后的预测残值先用变换内核(比如DCT)来变换、然后被编码。这一点的原因是在残值之中经常仍有一些相关性并且变换可以在许多情况下帮助减少这一相关性并且提供更高效编码。
在草案HEVC中,每个PU具有与它关联的预测信息,该预测信息定义什么种类的预测将应用于在该PU内的像素(例如用于帧间预测的PU的运动矢量信息和用于帧内预测的PU的帧内预测方向性信息)。相似地,每个TU与如下信息关联,该信息描述用于在所述TU内的样本的预测误差解码过程(例如包括DCT系数信息)。通常在CU级用信号发送预测误差编码是否应用于每个CU。在没有与CU关联的预测误差残值的情况下,可以认为没有用于所述CU的TU。
在视频编码标准、比如H.264/AVC和HEVC中的许多语法元素在编码器中被熵编码和在解码器中被熵解码。熵编码可以例如使用情境自适应二进制算术编码(CABAC)、基于情境的可变长度编码、霍夫曼编码或者任何相似熵编码来完成。
许多视频编码器利用拉格朗日成本函数以发现速率-失真最优编码模式、例如希望的宏块模式和关联运动矢量。这一类型的成本函数使用加权因子或者λ以将由于有损编码方法所致的确切或者估计的图像失真和为了表示在图像区域中的像素/样本值而需要的确切或者估计的信息量联系在一起。拉格朗日成本函数可以由下式表示:
C=D+λR
其中C是待最小化的拉格朗日成本,D是当前考虑的模式和运动矢量的图像失真(例如在原有图像块中和在经编码的图像块中的像素/样本值之间的均方误差),λ是拉格朗日系数,并且R是为了表示用于在解码器中重建图像块的所需数据(包括用于表示候选运动矢量的数据量)而需要的比特数。
在一些编码格式和编码解码器中,在所谓短期与长期参考画面之间进行区分。这一区分可以影响一些解码过程、比如在时间直接模式中的运动矢量扩展或者隐式加权预测。如果用于时间直接模式的使用的参考画面二者是短期参考画面,则可以根据在当前画面与参考画面中的每个参考画面之间的POC差值扩展在预测中使用的运动矢量。然而,如果用于时间直接模式的至少一个参考画面是长期参考画面,则使用运动矢量的默认扩展、例如可以使用将运动扩展(scale)至一半。相似地,如果短期参考画面用于隐式加权预测,则可以根据在当前画面的POC与参考画面的POC之间的POC差值扩展预测权值。然而,如果长期参考画面用于隐式加权预测,则可以使用默认预测权值、比如在用于双预测的块的隐私加权预测中使用0.5。
一些视频编码格式、比如H.264/AVC包括frame_num语法元素,该语法元素用于与多个参考画面有关的各种解码过程。在H.264/AVC中,用于IDR画面的frame_num的值是0。用于非IDR画面的frame_num的值等于被递增1的在解码顺序上的先前参考画面的frame_num(在模算术中、即,在frame_num的最大值之后卷绕至0的frame_num值)。
H.264/AVC和HEVC包括画面顺序计数(POC)概念。POC的值是对于每个画面而推导的并且随着按照输出顺序的增加画面定位而未减少。POC因此指示画面的输出顺序。POC可以在解码过程中例如用于在双预测分片的时间直接模式中的运动矢量的隐式扩展、用于在加权预测中的隐式地推导的权重和用于参考画面列表初始化。另外,可以在验证输出顺序相符性时使用POC。在H.264/AVC中,POC相对于先前IDR画面或者如下画面被指定,该画面包含存储器管理控制操作,该存储器管理控制操作标记所有画面为“未用于参考”。
H.264/AVC指定用于解码的参考画面标记的过程以便控制在解码器中的存储器消耗。在序列参数集中确定用于帧间预测的参考画面的最大数目,称为M。在参考画面被解码时,标记它为“用于参考”。如果对参考画面的解码导致标记为“用于参考”的多于M个画面,则标记至少一个画面为“未用于参考”。有用于解码的参考画面标记的两个操作类型:自适应存储器控制和滑动窗。在画面基础上选择用于解码的参考画面标记的操作模式。自适应存储器控制实现用信号显式发送哪些画面被标记为“未用于参考”并且也可以向短期参考画面分配长期索引。自适应存储器控制要求在比特流中存在存储器管理控制操作(MMCO)参数。如果使用滑动窗操作模式并且有标记为“用于参考”的M个画面,则在标记为“用于参考”的那些短期参考画面之中曾是第一解码的画面的短期参考画面被标记为“未用于参考”。换而言之,滑动窗操作模式产生在短期参考画面之中的先入先出缓冲操作。
在H.264/AVC中的存储器管理控制操作之一使除了当前画面之外的所有参考画面被标记为“未用于参考”。瞬时解码刷新(IDR)画面仅包含帧内编码的分片并且导致参考画面的相似“重置”。
在草案HEVC标准中,不使用参考画面标记语法结构和有关解码过程,但是取而代之,参考画面集合(RPS)语法结构和解码过程代之以用于相似目的。对于画面有效或者活跃的参考画面集合包括作为参考用于该画面的所有参考画面和对于在解码顺序上的任何后续画面保持标记为“用于参考”的所有参考画面。存在参考画面集合的六个子集,称为RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll。六个子集的注解如下。“Curr”是指在当前画面的参考画面列表中包括的参考画面并且因此可以作为用于当前画面的帧间预测参考。“Foll”是指未包括在当前画面的参考画面列表中的参考画面、但是可以在解码顺序上的后续画面中用作参考画面。“St”是指短期参考画面,这些短期参考画面一般可以通过它们的POC值的某个数目的最低有效位来标识。“Lt”是指长期参考画面,这些长期参考画面被特定地标识并且一般具有比提到的某个数目的最低有效位可以表示的POC值差值更大的相对于当前画面的POC值差值。“0”是指具有比当前画面的POC值更小的POC值的那些参考画面。“1”是指具有比当前画面的POC值更大的POC值的那些参考画面。RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0和RefPicSetStFoll1统称为参考画面集合的短期子集。RefPicSetLtCurr和RefPicSetLtFoll统称为参考画面集合的长期子集。
在HEVC中,参考画面集合可以在序列参数集中指定并且通过指向参考画面集合的索引在分片首部中使用参考画面集合。也可以在分片首部中指定参考画面集合。一般参考画面集合的长期子集仅在分片首部中指定,而相同参考画面集合的短期子集可以在画面参数集或者分片首部中指定。参考画面集合可以被独立地编码或者可以从另一参考画面集合来预测(称为RPS间预测)。在参考画面集合被独立地编码时,语法结构包括对不同类型的参考画面迭代的三个循环:具有比当前画面更低的POC值的短期参考画面、具有比当前画面更高的POC值的短期参考画面以及长期参考画面。每个循环条目指定将标记为“用于参考”的画面。一般而言,画面用差分POC值来指定。RPS间预测利用可以从先前解码的参考画面集合预测当前画面的参考画面集合这样的事实。这是因为当前画面的所有参考画面是先前画面的参考画面或者先前解码的画面本身。仅有必要指示这些画面中的哪些画面应当是参考画面和用于当前画面的预测。在两个类型的参考画面集合编码中,还为每个参考画面发送标志(used_by_curr_pic_X_flag),该标志指示参考画面是(被包括在*Curr列表中)否(被包括在*Foll列表中)应当用于被当前画面引用。在当前画面使用的参考画面集合中包括的画面被标记为“用于参考”,并且不在当前画面使用的参考画面集合中的画面被标记为“未用于参考”。如果当前画面是IDR画面,则RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll都被设置成空。
可以在编码器中和/或在解码器中使用解码画面缓冲器(DPB)。缓冲经解码的画面有用于在帧间预测中进行参考和用于将经解码的画面重新排序成输出顺序这两个原因。由于H.264/AVC和HEVC为参考画面标记和输出重新排序二者提供大量灵活性,所以用于参考画面缓冲和输出画面缓冲的分离的缓冲器可能浪费存储器资源。因此,DPB可以包括用于参考画面和输出重新排序的统一的解码画面缓冲过程。经解码的画面可以在它不再用作参考并且无需输出时从DPB被去除。
在H.264/AVC和HEVC的许多编码模式中,用指向参考画面列表的索引指示用于帧间预测的参考画面。可以用可变长度编码对索引进行编码,该可变长度编码通常使更小索引具有用于对应语法元素的更短值。在H.264/AVC和HEVC中,为每个双预测(B)分片生成两个参考画面列表(参考画面列表0和参考画面列表1),并且为每个帧间编码(P)的分片形成一个参考画面列表(参考画面列表0)。此外,对于在HEVC中的B分片,在已经构造了最终参考画面列表(列表0和列表1)之后构造经组合的列表(列表C),也称为合并列表。经组合的列表可以用于在B分片内的单预测(也称为单向预测)。
通常在两个步骤中构造参考画面列表、比如参考画面列表0和参考画面列表1:第一步,生成初始参考画面列表。可以例如基于frame_num、POC、temporal_id或者关于预测分级的信息、比如GOP结构或者其任何组合生成初始参考画面列表。第二步,可以按照可以在分片首部中包含的参考画面列表重新排序(RPLR)命令(也称为参考画面列表修改语法结构)对初始参考画面列表重新排序。RPLR命令指示被排序到相应参考画面列表的开头的画面。这一第二步骤也可以称为参考画面列表修改过程,并且可以在参考画面列表修改语法结构中包括RPLR命令。如果使用参考画面集合,则可以初始化参考画面列表0以先包含RefPicSetStCurr0、跟随有RefPicSetStCurr1、跟随有RefPicSetLtCurr。可以初始化参考画面列表1以先包含RefPicSetStCurr1、跟随有RefPicSetStCurr0。可以通过参考画面列表修改语法结构来修改初始参考画面列表,其中可以通过指向列表的条目索引来标识在初始参考画面列表中的画面。
由于多视图视频向编码器和解码器提供用于利用视图间冗余性的可能性,所以也可以在参考画面列表中包括经解码的视图间帧。
可以构造HEVC中的经组合的列表如下。如果用于经组合的列表的修改标志是零,则通过隐式机制构造组合的列表;否则,通过在比特流中包括的参考画面组合命令构造它。在隐式机制中,在列表C中的参考画面以交织方式被映射到来自列表0和列表1的参考画面,从列表0的第一条目开始、跟随有列表1的第一条目等等。已经在列表C中映射的任何参考画面不被再次映射。在显式机制中,用信号发送列表C中的条目数目,跟随有从列表0或者列表1中的条目到列表C的每个条目的映射。此外,在列表0和列表1相同时,编码器具有如下选项,该选项是设置ref_pic_list_combination_flag为0以指示来自列表1的参考画面未被映射并且列表C等效于列表0。
典型高效率视频编码解码器、比如草案HEVC编码解码器运用常称为合并化/合并模式/过程/机制的附加运动信息编码/解码机制,其中预测和使用块/PU的所有运动信息而无任何修改/校正。用于PU的前述运动信息包括1)‘PU仅使用参考画面列表0来单预测’还是‘PU仅使用参考画面列表1来单预测’还是‘PU使用参考画面列表0和列表1二者来双预测’的信息、2)与参考画面列表0对应的运动矢量值、3)在参考画面列表0中的参考画面索引、4)与参考画面列表1对应的运动矢量值、5)在参考画面列表1中的参考画面索引。相似地,预测运动信息是使用相邻块和/或在时间参考画面中的共位的块的运动信息来执行的。通常,常称为合并列表的列表通过包括与可用相邻/共位的块关联的运动预测候选来构造,并且用信号发送列表中的选择的运动预测候选的索引。然后,选择的候选的运动信息被复制到当前PU的运动信息。在合并机制被运用于整个CU并且用于CU的预测信号用作重建信号、即预测残值未被处理时,这一类型的对CU进行编码/解码通常称为略过模式或者基于合并的略过模式。除了略过模式之外,合并机制也被运用于个体PU(未必如在略过模式中的整个CU),并且在这一情况下,预测残值可以用来提高预测质量。这一类型的预测模式通常称为合并间模式。
用于参考画面标记的语法结构可以存在于视频编码系统中。例如在已经完成对画面的解码时,经解码的参考画面标记语法结构如果存在则可以用来自适应地标记画面为“未用于参考”或者“用于长期参考”。如果经解码的参考画面标记语法结构不存在并且标记为“用于参考”的画面的数目不再能够增加,则可以使用滑窗参考画面标记,滑窗参考画面标记基本地标记最早(在解码顺序上)经解码的参考画面为未用于参考的。
在H.264/AVC及其MVC扩展中的运动矢量(MV)预测利用可以在相同图像的邻近块中(空间相关性)或者在先前经编码的图像中(时间相关性)存在的相关性。图7a示出当前编码的块(cb)的空间邻域,并且图7b示出当前编码的块的时间邻域,该邻域用作为用于H.264/AVC中的运动矢量预测的候选。
当前块cb的运动矢量可以通过运动估计和运动补偿过程来估计并且可以用差分脉冲码调制(DPCM)来编码而且以在运动矢量预测(MVp)与实际运动矢量MV之间的残值的形式被传输为MVd(x,y)=MV(x,y)–MVp(x,y)。
可以计算紧接在当前分割部或者子分割部以上(块B)、对角地在当前分割部或者子分割部以上和右侧(块C)以及紧接在当前分割部或者子分割部左侧(块A)的宏块分割部或者子分割部的运动矢量的中值(median)。
在一些实施例中,可以指定运动矢量预测MVp估计如下:
在空间邻近块(A,B,C)中的仅一个空间邻近块具有与当前块相同的参考索引时,那么MVp=mvLXN    (1)
在多于一个或者没有邻近块(A,B,C)具有与当前块相同的参考索引时,那么MVp=median{mvLXA,mvLXB,mvLXC}   (2)
其中mvLXA、mvLXB、mvLXC是空间邻近块的运动矢量(无参考帧id)。
在一些情形中,可以利用P_SKIP模式或者B_SKIP模式。在P_SKIP模式中,当前块的参考帧索引总是0,并且利用的列表是第一列表0(refIdxL0=0)。运动矢量通过仅使用紧接在当前块左侧(块A)和紧接在当前块以上(块B)的块来估计。如果紧接在左侧和紧接在以上的块不存在,则选择零值运动矢量预测MVp。由于在P_SKIP模式中没有MV=MVp,所以不传输运动矢量差值dMV。
在B_SKIP模式中,可以利用两个运动矢量预测估计过程:空间直接模式,其中如图7a中所示根据空间邻近块计算运动矢量预测;或者时间直接模式,其中如图8b中所示根据时间邻近块计算运动矢量预测。
运动矢量预测过程包括对以下值的估计:
a.参考索引refIdxL0、refIdxL1
b.运动矢量mvL0和mvL1。
在空间直接模式中,对于两个参考画面列表(参考画面列表0、参考画面列表1)独立地运行参考索引预测和运动矢量预测的过程。在每个列表中选择最小正参考索引,并且运动矢量预测过程应用于每个参考画面列表以产生mvpL0和mvpL1。
运动矢量预测mvpLX的每个分量由运动矢量mvLXA、mvLXB和mvLXC的对应矢量分量的中值给出:
mvpLX[0]=Median(mvLXA[0],mvLXB[0],mvLXC[0])
mvpLX[1]=Median(mvLXA[1],mvLXB[1],mvLXC[1]).
在时间直接模式中,可以通过对来自邻近(在时间方向上)块的运动矢量的时间插值来计算当前块到列表0和列表1的运动矢量。可以利用从当前画面到参考画面的画面顺序计数(POC)距离作为差值因子。
MV0=MVc*(TDb/TDd)
MV1=MVc*(TDb-TDD)/TDd,
其中TDb是在当前帧与在列表0中的参考帧之间的画面顺序计数距离;TDd是在列表0和列表1中的参考帧之间的画面顺序计数;并且MVc是来自参考画面列表0的共位的块的运动矢量。
接着,为了更好地理解本发明的实施例,简要地描述三维(3D)多视图应用的一些方面以及与之紧密相关的深度和视差信息的概念。
立体视频内容由向查看者的左和右眼分离地示出的偏移图像对组成。这些偏移图像用特别的立体相机布置来捕获,并且其假设了在相机之间的特定立体基线距离。
图1示出这样的立体相机布置的简化2D模型。在图1中,C1和C2是指立体相机布置的相机、更具体地是指相机的中心位置,b是两个相机的中心之间的距离(即立体基线),f是相机的焦距,并且X是在实际3D景物中的正在捕获的对象。现实对象X被投影到在相机C1和C2捕获的图像中的不同位置,这些位置分别是x1和x2。在图像的在绝对坐标系的x1与x2之间的水平距离称为视差。相机布置所捕获的图像称为立体图像,并且在这些图像中呈现的视差创建或者增强立体感。为了使图像能够向查看者的左和右眼被分离地示出,可能需要查看者使用特别的3D眼镜。对视差的适配是用于调整立体视频内容以使其在各种显示器上舒适地可查看的关键特征。
然而视差适配不是简单直接的过程。它需要具有不同基线距离的附加相机视图(即b可变)或者渲染在现实中不可用的虚拟相机视图。图2示出与这一解决方案相适的这样的多视图相机布置的简化模型。这一布置能够与若干用于立体基线的离散值一起提供捕获的立体视频内容并且因此允许立体显示器选择与查看条件相适的一对相机。
用于3D视觉的更高级方式是具有无需眼镜的多视图自动立体显示器(ASD)300。ASD一次发射多于一个视图,但是该发射以如图所示查看者仅看见来自特定视点的立体对这样的方式被局限在空间中,其中在注视最右视点时在视图的中间看见房屋。另外,查看者能够从不同视点看见另一立体对,例如在图3中在注视最左视点时在视图的右边界看见房屋。因此,如果连续视图是立体对并且它们被恰当地管理,则支持运动像差查看。ASD技术可以能够在相同时间示出例如52或者更多不同图像,在这些图像中,仅一个立体对从具体视点可见。这支持例如在起居室环境中的无眼镜的多用户3D视觉。
以上描述的立体和ASD应用需要多视图视频在显示器可用。H.264/AVC视频编码标准的MVC扩展允许在解码器侧的多视图功能。MVC比特流的基本视图可以由任何H.264/AVC解码器解码,这有助于向现有服务中引入立体和多视图内容。MVC允许视图间预测,这可以根据相邻视图有多相关而产生与对所有视图的独立编码相比的显著比特率节省。然而MVC编码的视频的比特率通常与视图数目成比例。考虑ASD可能需要例如52个视图作为输入,所以用于这样的数目的视图的总比特流将挑战可用带宽的限制。
因而,已经发现一种用于这样的多视图应用的更可行解决方案是具有有限数目的输入视图、例如单一或者立体视图加上一些补充数据并且在解码器侧本地渲染(即合成)所有需要的视图。从用于视图渲染的若干可用技术中,基于深度图像的渲染(DIBR)已经表现为一种有竞争力的备选。
在图4中示出基于DIBR的3DV系统的简化模型。3D视频编码解码器的输入包括具有立体基线b0的立体视频和对应的深度信息。然后3D视频编码解码器合成在具有基线(bi<b0)的两个输入视图之间的多个虚拟视图。DIBR算法也可以实现外推在两个输入视图以外而不在它们之间的视图。相似地,DIBR算法可以实现提供单个纹理视图和相应深度视图的视图合成。然而为了实现基于DIBR的多视图渲染,纹理数据应当与对应深度数据一起在解码器侧可用。
在这样的3DV系统中,在编码器侧针对每个视频帧以深度画面(也称为深度图)的形式产生深度信息。深度图是具有每像素深度信息的图像。深度图中的每个样本表示相应纹理样本与相机位于其上的平面的距离。换而言之,如果z轴沿着相机的拍摄轴(并且因此与相机所位于的平面正交),则深度图中的样本表示在z轴上的值。
可以通过各种手段来获得深度信息。例如可以从捕获相机配准的视差计算3D景物的深度。深度估计算法取得立体视图作为输入并且计算在视图的两个偏移图像之间的局部视差。每个图像在重叠块中被逐个像素处理,并且针对每个像素块执行在偏移图像中对于匹配块的水平局部搜索。一旦计算出按像素的视差,按照等式(3)计算对应深度值z:
z = f &CenterDot; b d + &Delta;d - - - ( 3 ) ,
其中如图1中所示,f是相机的焦距并且b是在相机之间的基线距离。另外,d是指在两个相机之间观测到的视差,并且相机偏移Δd反映两个相机的光学中心的可能水平错位。
取代以上描述的立体视图深度估计或者除了该立体视图深度估计之外,还可以使用飞行时间(TOF)原理来获得深度值。图5和6示出基于TOF的深度估计系统的示例。相机具有用于照射景物的光源、例如红外线发射器。这样的照射器可以被布置为对于在例如10-100MHz之间的频率提供强度调制的电磁发射,这可能需要使用LED或者激光器二极管。红外线光通常用来使照射不显眼。从在景物中的对象反射的光由在与照射器相同的频率同步地调制的图像传感器检测。图像传感器具有光学器件;收集反射的光的透镜和光学带通滤波器,该光学带通滤波器用于仅通过具有与照射器相同的波长的光、因此帮助抑制背景光。图像传感器针对每个像素测量光从照射器向对象行进和返回已经花费的时间。到对象的距离被表示为在照射调制中的相移,该相移可以对于在景物中的每个像素而言同时地从采样的数据来确定。
在深度增强的多视图编码的情况下,可以在编码器的编码循环中和在解码器的解码循环中利用视图合成、因此提供视图合成预测(VSP)。视图合成(synthesis)画面(参考分量)可以从经编码的纹理视图和深度视图来合成并且可以包含可以用于视图合成预测的样本。视图合成画面也可以称为合成参考分量,该合成参考分量可以被定义为包含可以用于视图合成预测的样本。合成参考分量可以用作为用于视图合成预测的参考画面、但是通常未被输出或者显示。视图合成画面通常是对于相同相机位置而生成的,其中对于正在编码或者解码的画面假设相同的相机参数。在图8中描绘编码循环的示例。
用于推导视图合成画面的示例过程的输入是纹理视图分量srcPicY的经解码的照度分量、上采样至srcPicY的分辨率的两个色度分量srcPicCb和srcPicCr以及深度分量DisPic。
用于推导视图合成画面的示例过程的输出是通过基于视差的歪曲而产生的合成参考分量vspPic的样本阵列,其可以用以下伪代码举例说明:
其中函数“Disparity()”将在空间位置i、j的深度图值转换成视差值dX,PicHeight是画面的高度,PicWidth是画面的宽度,srcTexturePicY是源纹理画面,outputPicY是输出画面的Y分量,outputPicCb是输出画面的Cb分量,并且outputPicCr是输出画面的Cr分量。
如以下所示考虑相机设置、比如在两个视图b之间的平移、相机的焦距f和深度图表示的参数(Znear(Z近),Zfar(Z远))来计算视差。
dX ( i , j ) = f &CenterDot; b z ( i , j ) ; z ( i , j ) = 1 DisPic ( i , j ) 255 &CenterDot; ( 1 Z near - 1 Z far ) + 1 Z far - - - ( 4 )
从以上描述的过程产生的vspPic画面可以具有各种歪曲非自然成分、比如空洞和/或闭塞,并且为了抑制那些非自然成分,可以应用各种处理后操作、比如空洞填充。
然而可以避免这些操作以减少计算复杂性,因为视图合成画面vspPic被用于参考画面以供预测并且可以不向显示器输出。
可以用与用视图间参考画面完成的方式相似的方式在参考画面列表中引入合成的(synthesized)画面{outputPicY,outputPicCb,outputPicCr}。在视图合成预测的情况下的信号发送和用参考画面列表的操作可以保持与在H.264/AVC或者HEVC中指定的信号发送和操作相同或者相似。
相似地,运动信息推导的过程及其在视图合成预测中的应用可以保持与为H.264/AVC或者HEVC的帧间和视图间预测而指定的过程相同或者相似。
在3D视频编码/解码过程中引入视图合成预测可以不影响运动信息信号发送和解码这样的低级操作,因此任何这样的操作可以实现保留与现有H.264/AVC或者HEVC编码标准的低级兼容性。
可扩展视频编码是指编码结构,其中一个比特流可以包含内容在不同比特率、分辨率和/或帧速率的多个表示。在这些情况下,接收器可以根据它的特性(例如与设备的显示器的分辨率最佳匹配的分辨率)提取希望的表示。备选地,服务器或者网元可以例如根据网络特性或者接收器的处理能力提取比特流的将向接收器传输的部分。可扩展比特流可以由提供可用最低质量视频的基础层和在被接收和与更低层一起解码时增强视频质量的一个或者多个增强层来组成。为了提高用于增强层的编码效率,该层的编码表示可以依赖于更低层。例如可以通过更低层预测增强层的运动和模式信息。相似地,更低层的像素数据可以用来创建用于增强层的预测。
可以将用于质量可扩展性(也称为信噪比或者SNR)和/或空间可扩展性的可扩展视频编码器实施如下。对于基础层,可以使用常规非可扩展视频编码器和解码器。在用于增强层的参考画面缓冲器和/或参考画面列表中包括基础层的经重建/解码的画面。在空间可扩展性的情况下,经重建/解码的基础层画面可以在它插入到用于增强层画面的参考画面列表中之前被上采样。基础层的经解码的画面可以与增强层的经解码的参考画面相似地被被插入到参考画面列表中以供增强层的编码/解码。因而,编码器可以选择基础层参考画面作为帧间预测参考并且指示它与在编码的比特流中的参考画面索引一起使用。解码器从比特流、例如从参考画面索引解码出基础层画面用作为用于增强层的帧间预测参考。在经解码的基础层画面被用作增强层的预测参考时,它称为层间参考画面。
尽管用具有增强层和基础层的两个可扩展层描述示例实施例,但是需要理解实施例可以被推广至在具有多于两层的可扩展性分级中的任何两层。在这一情况下,第二增强层可以在编码和/或解码过程中依赖于第一增强层,并且第一增强层因此可以视为用于对第二增强层的编码和/或解码的基础层。另外,需要理解可以在增强层的参考画面缓冲器或者参考画面列表中有来自多于一层的层间参考画面,并且这些层间参考画面中的每个层间参考画面可以视为驻留在用于正在进行编码和/或解码的增强层的基础层或者参考层中。
在运动补偿中使用的运动矢量可以利用周围预测单元的运动信息来差分地编码。这一种推导过程未考虑运动矢量在某些预测过程的情境中的统计量特性。例如,如果可扩展视频编码利用基础层画面作为用于增强层的预测候选,则运动矢量场可以很不同于指向在不同时间时刻的画面的传统运动矢量场。在与3D视频编码有关的另一示例中,可以用并联相机布置来产生源视频,并且矫正输入多视图视频数据以避免相机几何形状和颜色的未对准。在这些境况之下,良好地适合用于双向时间预测的沿着x和y轴的移位+/-N的统一概率模型可能对于描述在视图间参考分量中的移位而言不是最优的。在深度增强的3D视频编码中,视图合成预测参考分量通常与正在编码/解码的画面对准,并且因此指向在不同时间时刻的参考画面的空间邻近运动矢量不可能是用于指向视图合成预测参考分量的运动矢量的良好预测。
例如H.264/AVC指定竖直运动矢量分量范围可以上至[-512,511.75],而水平运动矢量分量可以属于另一范围[-2048至2047.5]。这些指定施加对执行解码的计算平台以及存储器访问的某些要求。希望放宽这些要求。
在视图间预测和矫正的输入视频的情况下,移位分量mv_y可能接近0,因为几何地矫正相机并且预计相同对象存在于所有可用视图中的相同竖直y坐标。在水平方向(x轴)上的移位可能接近视差值+/-n而有一些子像素偏移。因此,对在常规视频编码系统、比如H.264/AVC中利用的运动矢量的统计量假设未反映在H.264/AVC的视图间预测中观测到的实际运动矢量统计量。
在视图合成预测的情况下和在高质量深度图的假设之下,预计运动矢量分量(mv_y和mv_x)的移位接近0,0而有可能由于深度图或者视图合成预测处理的不准确而产生的某个子像素偏移+/-n。因此,在常规视频编码系统、比如H.264/AVC中利用的对运动矢量的统计量假设未反映在3D视频编码的视图合成预测中观测到的实际运动矢量统计量。
在层间参考画面用于对增强层块进行编(解)码时,预计两个运动矢量分量为0。这是基于如下假设,该假设为可以基于在基础层上和可能在一些其它更低层上的共位的块预测增强层块。因此,运动矢量可以视为指向在不同层上的相同位置。如果使用的是空间可扩展性,则假设基础层参考画面在向增强层的参考画面列表中插入基础层参考画面之前先被上采样至增强层的分辨率。
从运动编码而产生的运动矢量分量可以用预测的运动矢量(MVP)来差分地编码。在一些编码器中,这一差分值用CABAC来编码并且更新CABAC本身。
然而在H.264/AVC中,在用于运动矢量的沿着x和y轴的移位+/-N的统一概率假设下设计CABAC初始化,该假设可能对于视图间预测、视图合成预测和层间预测而言不是最优的。
解码器可以通过指定的操作集合从经解码的比特流提取运动矢量分量。这些操作可以包括CABAC比特解码、对运动矢量的差分解码、对所得运动矢量限幅以确认所得运动矢量属于某个范围(例如在经编码的帧限制内)。除此之外,解码器还可以在所得运动矢量指向在参考帧中的子像素位置的情况下执行参考帧插值。
在基于视图合成的预测和层间预测的情况下水平和竖直运动矢量分量(mv_x和mv_y)二者以及在视图间预测的情况下竖直运动矢量分量(mv_y)最可能等于零。然而应当预备解码器用于最坏情况复杂性、即需要以上说明的操作的子像素运动矢量。应当注意解码器应当能够实时执行解码操作和所需插值以便与指定的标准和假设参考解码器的所需水平相符,即使经编码的比特流不会产生这样的运动矢量。
在一些编码器中,运动矢量相对于邻近块(空间预测)或者在另一画面中的共位的块(时间预测)的运动矢量来预测。待使用的实际运动矢量通过向预测的运动矢量添加在比特流中指示的差分运动矢量(MVd)来生成。可以有特殊模式(比如“略过模式”),这些模式省略对差分运动矢量的解码并且使用预测的运动矢量作为用于预测单元的最终运动矢量。
根据本发明的一些示例实施例的编码器可以包括以下操作中的一个或者多个操作。这里应当注意相似原理也在用于解码的解码器侧适用。
在图8中作为框图描绘编码器800的示例,并且在图13中为流程图描绘根据一个示例实施例的编码器的操作。编码器800接收802纹理视图的当前帧的块以供编码。该块也可以称为当前块。向第一组合器804、比如减法单元和向运动估计器806提供当前块。运动估计器806具有对存储先前编码的帧的帧缓冲器812的访问或者可以通过其它手段向运动估计器806提供一个或者多个先前编码的帧的一个或者多个块。运动估计器806检查一个或者多个先前编码的块中的哪个先前编码的块可以提供用于使用该块作为用于当前块的预测参考的良好基础。如果已经发现适当预测参考,则运动估计器806计算运动矢量,该运动矢量指示选择的块相对于当前块在当前帧中的位置在参考帧中位于何处。运动矢量信息可以由第一熵编码器814编码。也向计算预测的块的运动预测器810提供预测参考的信息。
第一组合器804确定在当前块与预测的块808之间的差值。该差值可以例如通过计算在当前块的像素值与预测的块的对应像素值之间的差值来确定。这一差值可以称为预测误差。预测误差由变换单元816变换到变换域。该变换可以例如是离散余弦变化(DCT)。变换的值由量化器818量化。量化的值可以由第二熵编码器820编码。也可以向重建变换的值的逆量化器822提供量化的值。重建的变换的值然后由逆变换单元824逆变换以获得重建的预测误差值。第二组合器826与预测的块组合重建的预测误差值以获得当前块的重建的块值。重建的块值按照正确顺序由排序单元828排序并且存储到帧缓冲器812中。
在一些实施例中,编码器800也包括视图合成预测器830,该视图合成预测器可以使用一个或者多个其它视图832的纹理视图帧和深度信息834(例如深度图)以基于例如两个不同相机捕获的两个不同视图合成其它视图836。也可以向帧缓冲器812存储其它纹理视图帧832和/或合成的视图836,从而运动估计器806可以在选择用于当前块的预测参考时使用其它视图和/或合成的视图。在一些情况下(例如对于特定类型的参考画面),编码器可以定义有效运动矢量分量值的集合为空,在该情况下,可以省略对与运动矢量分量有关的语法元素的编码并且可以在解码中推导运动矢量分量的值。在一些情况下,编码器可以定义有效运动矢量分量值的集合小于用于帧间预测的运动矢量值的普通集合,在该情况下,用于运动矢量差值的熵编码可以例如通过使用与用于常规帧间预测运动矢量的情境不同的CABAC情境用于这些运动矢量差值来改变。可以在对运动矢量信息进行编码时由第一熵编码器814使用不同CABAC情境。在一些情况下,运动矢量值的似然性可以比邻近运动矢量(例如空间地或者时间地)更重地依赖于参考画面,因此熵编码可以不同于用于其它运动矢量的熵编码,例如可以使用不同初始CABAC情境和/或可以使用不同CABAC二值化方案和/或可以维持和适配不同情境和/或可以例如基于以下使用对语法元素的非情境自适应编码:参考画面的类型(例如视图合成画面、视图间参考画面、层间参考画面、帧间/时间参考画面)和/或当前画面和参考画面的可扩展层和/或当前画面和参考画面的视图和/或使用的参考画面和潜在地有当前画面的任何其它属性。
在一些实施例中,提供一种用于指示运动矢量信息何时与参考画面索引的指示组合的机制。例如参考画面的类型可以与在每个参考画面列表中的每个参考画面关联。参考画面的类型可以例如是时间(帧间)参考画面、视图间参考、视图合成参考画面或者层间参考画面。编码器和解码器可以推断用于参考画面的类型,并且该类型可以在比特流中由编码器显式地指示。然后可以根据用于预测单元的参考画面的类型或者任何其它属性推断运动矢量的存在、熵编码方法和/或解码过程。
编码器可以对如下指示进行编码并且解码器可以对如下指示进行解码,该指示定义哪个或者哪些参考画面具有与它们关联的固定运动矢量。该指示可以例如处于画面或者分片级。可以从参考画面的类型(例如VSP、视图间和层间参考画面)和/或当前画面和参考画面的可扩展层和/或当前画面和参考画面的视图和/或使用的参考画面和潜在地有当前画面的任何其它属性来推断该指示。
解码器可以先对关于与预测单元关联的参考索引的的指示进行解码。如果该参考索引指向具有指示的特殊运动矢量场的画面中,则运动矢量预测和差分运动矢量解码过程可以被完全地或者部分地回避和/或基于情境的熵解码过程可以不同于常规运动矢量的解码过程。另外,如果差分运动矢量编码已经被完全地或者部分地回避,则利用用于预测单元的特殊过程推导运动矢量。
用于基于视图合成的预测、视图间预测和层间预测的运动矢量分量可能在它们的适用范围上受限制,这些适用范围定义语法元素的集合和解码操作的集合。例如可以限制运动矢量分量或者相对于预测值的运动矢量分量差值的值范围和/或精确性。另外,在一些实施例中,用于基于视图合成的预测、视图间预测和/或层间预测的差分运动矢量分量可以具有与用于帧间或者时间运动补偿的预测的差分运动矢量分量相比的不同初始情境。另外,在一些实施例中,与对帧间或者时间运动补偿预测的差分运动矢量分量的二值化相比,可以对于基于情境的算术编码和解码不同地二值化用于基于视图合成的预测、视图间预测和/或层间预测的差分运动矢量分量。
在编码器对帧或者画面的块进行编码时,编码器可以确定哪个参考块将提供适当编码效率。待编码的块已经被输入到在图13中用块10图示的编码器中。参考块可以属于相同画面、即预测将是帧内预测、属于当前块的帧的先前或者后继帧、因此代表帧间预测、属于合成的视图、因此代表视图合成预测、属于不同视图的帧、因此代表视图间预测或者属于不同层的帧、因此代表层间预测。未限制本发明的范围,帧内预测和帧间预测在本申请中也可以分别称为常规帧内预测和常规帧间预测。
在编码器已经选择102用于当前块的参考块(即预测参考)并且确定104参考块的类型时,编码器可以向比特流中插入122参考块(帧)的指示。该指示可以是或者可以包括参考索引,并且该指示可以被解释为表示预测类型。
编码器的操作然后可以依赖于预测类型。如果预测类型是常规帧间预测,则编码器然后可以基于预测参考来确定运动矢量并且确定在实际运动矢量与预测参考的运动矢量之间的差值。这一差值也可以称为差分运动矢量(MVd)。编码器然后可以将运动矢量差值编码120到比特流中。
如果预测的类型是视图合成预测106或者层间预测114,则编码器可以限制108、116运动矢量的水平和竖直分量mv_x、mv_y在范围[-a,a]内。该范围可以是预定的,例如可以要求a的值为0,或者可以例如在每序列基础上例如在序列参数集语法结构中用信号发送它。在一般情况下,该范围也可以是不对称的[a,b],其中a≤b,并且a无需等于b。另外,在一般情况下,用于水平运动矢量分量的范围可以不同于用于相应竖直运动矢量分量的范围。在该情况下,可以表达用于运动矢量的水平分量mv_x、mv_y的限制为第一范围[a1,b1],并且可以表达用于运动矢量的竖直分量mv_x、mv_y的限制为第二范围[a2,b2]。
如果预测的类型是视图间预测110,则编码器可以限制112运动矢量的竖直分量mv_y在范围[-a,a]内。该范围可以是预定的,例如可以要求a的值为0,或者可以例如在每序列基础上例如在序列参数集语法结构中用信号发送它。在一般情况下,该范围也可以是不对称的[a,b],其中a≤b,并且a无需等于b。
在一些实施例中,可以在大的测试集之上估计用于运动矢量的适用范围限制(a,b)。对于层间预测和视图合成预测的水平和竖直运动矢量分量二者以及对于视图间预测的竖直运动矢量分量,一个可能示例是零限制、即等于0。
在一些实施例中,用于运动矢量的适用范围限制(a,b),运动矢量的整数部分限于0,并且运动矢量的子像素部分可以在子像素部分的表示的准确性的限制内不受限制。因此,实际运动矢量范围可以在基于H.264/AVC和HEVC的编码系统中是[-0.75,0.75]。如果准确性是0.25,则运动矢量范围将在这一示例中包含以下值:[-0.75,-0.5,-0.25,0,0.25,0.5,0.75]。
在一些实施例中,用于某些类型的预测或者参考画面(例如视图合成画面、视图间参考画面和/或层间参考画面)的运动矢量和运动矢量差值的精确性可以不同于用于帧间或者时间参考画面的精确性。例如四分之一像素(0.25)的精确性可以用于帧间或者时间参考画面,但是整数像素精确性可以用于视图合成参考画面。
可以对于视图合成、层间和视图间预测的运动矢量定义118情境初始化表以由在传输视频流的装置中的熵编码器和/或由在接收视频流的装置中的熵解码器使用。可以例如使用大的测试序列集得到用于运动矢量的CABAC的情境和/或初始化值,对于这些测试序列可以例如通过编码来计算运动矢量的统计量。
在下文中,将参照图9和和参照图14的流程图描述解码器900的一个示例实施例的操作。解码器900接收200、902包含经编码的视频信息的比特流或者比特流的一部分。经编码的视频信息可以包含预测误差值、运动矢量、参考索引等。这里应当注意无需在相同比特流中包括所有这一信息,但是可以使用不同种类的语法元素在不同比特流中传输信息中的一些信息。
在下文中,主要地描述涉及运动矢量处理的解码,并且主要地从本说明书省略描述其它解码操作904、比如块重建。
解码器900可以包括对接收的熵编码的信息进行解码的熵解码器906。可以向运动矢量解码器908提供经解码的信息。运动矢量解码器908可以包括参考类型检查单元910,该参考类型检查单元可以检查经解码的信息以确定是否已经在接收的比特流中包括用于当前块的参考的类型的参考索引或者另一种类的参考指示。如果已经接收参考指示,则参考类型检查单元910可以基于参考指示来确定202参考类型。如果尚未接收参考指示,则参考类型检查单元910可以使用其它数据以确定参考类型。
运动矢量解码器908还可以包括可以重建用于当前块的运动矢量分量的运动矢量重建单元912。
如果参考指示指示已经使用常规帧内预测来预测当前块,则可以通过使用接收的预测误差信息和在与当前帧相同的帧内的先前解码的块的信息来重建220当前块。如果该指示指示已经使用常规帧间预测来预测当前块,则运动矢量信息和预测误差信息被解码并且与预测参考——即编码器800已经在重建220用于当前帧的预测参考时使用的其它先前解码的帧的块——一起使用。
如果参考指示指示已经使用视图合成预测204来预测当前块,则以下操作在一些实施例中可以由解码器900执行。解码器900可以包括或者可以已经从编码器800接收水平和竖直运动矢量分量被限制206在其内的范围[-a,b]的信息。换而言之,解码器了解水平和竖直运动矢量分量不应具有在范围[-a,b]以外的值。在一些实施例中,a等于b,但是作为一般情况,a无需等于b。在一些实施例中,a=b=0。解码器也读取语法元素,这些语法元素分别描述水平和竖直运动矢量分量mv_x和mv_y,并且对将在获得218当前块时使用的水平和竖直运动矢量分量进行解码216。然而如果a(和b)的值等于0并且编码器尚未将差分运动矢量分量编码到比特流中,则解码器900不读取描述水平和竖直运动矢量分量的语法元素。另外,解码器可以省略对运动矢量分量进行解码。取而代之,解码器可以确定水平和竖直运动分量的值均为零、即mv_x=mv_y=0。也无需在a=b=0时对参考画面进行插值。
如果参考指示指示已经使用视图间预测208来预测当前块,则以下操作在一些实施例中可以由解码器900执行。解码器900可以包括或者可以已经从编码器800接收竖直运动矢量分量被限制210在其内的范围[-a,b]的信息。换而言之,解码器了解竖直运动矢量分量不应具有在范围[-a,b]以外的值。在一些实施例中,a等于b,但是作为一般情况,a无需等于b。在一些实施例中,a=b=0。解码器也读取语法元素,这些语法元素分别描述水平和竖直运动矢量分量mv_x和mv_y,并且对将在获得218当前块时使用的水平和竖直运动矢量分量进行解码216。然而如果a(和b)的值等于0并且编码器尚未将差分运动矢量分量编码到比特流中,则解码器900不读取描述竖直运动矢量分量的语法元素、但是仅读取描述水平运动矢量分量的语法元素而且对将在获得当前块时使用的水平运动矢量分量进行解码。也无需在a=b=0时在竖直方向上对参考画面进行插值。
如果参考指示指示已经使用层间预测212来预测当前块,则以下操作在一些实施例中可以由解码器900执行。解码器900可以包括或者可以已经从编码器800接收水平和竖直运动矢量分量被限制214在其内的范围[-a,b]的信息。换而言之,解码器了解水平和竖直运动矢量分量不应具有在范围[-a,b]以外的值。在一些实施例中,a等于b,但是作为一般情况,a无需等于b。在一些实施例中,a=b=0。解码器也读取语法元素,这些语法元素分别描述水平和竖直运动矢量分量mv_x和mv_y,并且对将在获得218当前块时使用的水平和竖直运动矢量分量进行解码216。然而如果a(和b)的值等于0并且编码器尚未将差分运动矢量分量编码到比特流中,则解码器900不读取描述水平和竖直运动矢量分量的语法元素。另外,解码器可以省略对运动矢量分量进行解码。取而代之,解码器可以确定水平和竖直运动分量的值均为零、即mv_x=mv_y=0。也无需在a=b=0时对参考画面进行插值。
在运动矢量分量未被编码到比特流中的情况下,解码器也略过对与运动矢量分量的语法元素的读取。例如使用预定义的默认值来推断无语法元素存在于比特流中的运动矢量分量。
在其中不同CABAC情境用于某些参考画面类型的情况下,解码器先例如基于参考索引断定参考画面类型、然后根据参考画面类型选择CABAC情境用于预测单元并且最终使用选择的CABAC情境从比特流读取和解码差分运动矢量分量。
编码器可以对如下语法元素进行编码并且解码器可以对如下语法元素进行解码,这些语法元素确定待使用的固定运动矢量而不是用于常规帧间预测的运动矢量预测和差分地编码的运动矢量。固定运动矢量语法元素可以例如处于画面或者分片级并且在例如画面参数集、适配参数集、画面首部或者分片首部中被编码和从例如画面参数集、适配参数集、画面首部或者分片首部被解码。固定运动矢量语法元素可以例如涉及例如基于语法结构确定的画面、分片、瓦片、预定单元数目,该语法结构包括固定运动矢量语法元素或者显式语法元素、比如固定运动矢量语法元素生效的预测单元数目。编码器可以例如基于用于多视图编码的全局视差确定固定运动矢量,该全局视差可以例如是用于如下那些像素的视差,这些像素旨在于在屏幕的水平面上而不是在平布水平面前面或者后面被感知。
编码器可以对与预测单元关联的参考画面索引的预测单元级别指示进行编码并且解码器可以对该预测单元级别指示进行解码。该指示可以是指示参考索引的语法元素或者它可以是可以从其推导参考索引的语法元素值、比如编码模式。
解码器可以包括比较,该比较标识选择的参考画面索引是否指示使用参考画面之一,该参考画面具有与它关联的固定运动矢量。在有与参考画面关联的固定运动矢量的情况下,解码器可以选择该运动矢量以执行用于预测单元的运动补偿预测。在没有与参考画面关联的固定运动矢量的情况下,解码器可以利用例如邻近预测单元的运动矢量和差分运动矢量信息来生成运动矢量信息。
编码器和解码器可以利用选择的运动矢量来执行用于预测单元的运动补偿预测。
在示例实施例中,可以使用例如如在H.264/AVC或者草案HEVC中指定的用于算术算符、逻辑算符、关系算符、按位算符、赋值算符和范围符号表示的公共符号表示。另外,可以使用在H.264/AVC或者草案HEVC中指定的公共数学函数并且可以使用例如如在H.264/AVC或者草案HEVC中指定的算符的优先和执行顺序的公共顺序(从左向右或者从右向左)。
在示例实施例中,以下描述符可以用来指定每个语法元素的解析过程。
-ae(v):情境自适应算术(CABAC)熵编码的语法元素。
-b(8):具有任何位串模式(8位)的字节。
-se(v):以左位优先的有符号整数Exp-Golomb编码的语法元素。
-u(n):使用n位的无符号整数。在n是在语法表中的“v”时,位数以依赖于其它语法元素的值的方式变化。用于这一描述符的解析过程由来自比特流的n个接下来的位指定,这些位被解释为以最高有效位被优先写入的无符号整数的二进制表示。
-ue(v):以左位优先的无符号整数Exp-Golomb编码的语法元素。
可以例如使用以下表将Exp-Golomb位串转换成码编号(codeNum):
Bit string codeNum
1 0
010 1
011 2
00100 3
00101 4
00110 5
00111 6
0001000 7
0001001 8
0001010 9
... ...
Bit string:位串
可以例如使用以下表将与将Exp-Golomb位串对应的码编号转换成se(v):
codeNum syntax element value
0 0
1 1
2 -1
3 2
4 -2
5 3
6 -3
... ...
Syntax element value:语法元素值
在示例实施例中,可以指定语法结构、语法元素的语义和解码过程如下。在粗体类型中表示在比特流中的语法元素。每个语法元素由它的名称(有下划线字符的所有小写字母)、可选地由它的一个或者两个语法类别和用于它的编码表示方法的一个或者两个描述符描述。解码过程根据语法元素的值和先前编码的语法元素的值表现。在语法表或者文本中使用语法元素的值时,它在普通(即非粗体)类型中出现。在一些情况下,语法表可以使用从语法元素值得到的其它变量的值。这样的变量在小写和大写字母的混合所命名的语法表或者文本中出现而无任何下划线字符。始于大写字母的变量被推导用于对当前语法结构进行解码并且都是依赖性语法结构。始于大写字母的变量可以在解码过程中用于以后语法结构而未提及变量的起源语法结果。始于小写字母的变量仅在其中推导它们的情境中被使用。在一些情况下,用于语法元素值或者变量值的“助记”名称与它们的数值可互换的使用。有时使用“助记”名称而无任何关联数值。在文本中指定值和名称的关联。名称由被下划线字符分离的一组或者多组字符构造。每组始于大写字母并且可以包含更多大写字母。
在示例实施例中,可以使用以下各项来指定语法结构。在波形括号中包含的一组语句是复合语句并且在功能上视为单个语句。“while”结构指定测试条件是否成立并且如果成立则指定反复地评估语句(或者复合语句)直至条件不再成立。“do…while”结构指定评估语句一次、跟随有测试条件是否成立并且如果成立则指定反复评估语句直至条件不再成立。“if…else”结构指定测试条件是否成立并且如果条件成立则指定评估主语句、否则指定评估备选语句。如果无需备选语句评估则省略该结构的“else”部分和关联备选语句。“for”结构指定评估初始语句、跟随有测试条件并且如果条件成立则指定反复评估主语句、跟随有后续语句直至条件不再成立。
在一个示例实施例中,以这样的方式修改草案HEVC标准的预测单元语法使得用于帧间模式的运动矢量差值的存在依赖于使用的参考画面的类型和/或可扩展层和/或视图和/或任何其它属性。通常,使用的参考画面由在比特流中的参考画面索引标识。对于在基本视图中和在基础层中的参考画面,运动矢量差值通常定义为对于帧间模式存在。然而如果例如在可扩展扩展中指定无运动矢量差值对于特定参考画面类型存在而预测单元语法无任何改变。预测单元语法结构的示例如下而添加的部分用下划线来指示:
Descriptor:描述符
如从以上语法结构可见,MvdPresent(refIdx,LX)函数的返回值用来确定mvd_coding()语法结构对于来自参考画面列表LX的具有索引refIdx的参考画面是否存在。可以指定函数MvdPresent(refIdx,LX)如下。在(正在解码的)当前画面在基础层和基本视图中(例如在LayerId等于0)并且在参考画面列表LX中的索引refIdx标识在基础层和基本视图中的画面(例如在LayerId等于0)时,函数MvdPresent返回1。在参考画面列表LX中的索引refIdx标识视图合成画面时,函数MvdPresent返回0。在(正在解码的)当前画面在增强层和基本视图中(例如在LayerId等于比0更大的CurrLayerId)并且在参考画面列表LX中的索引refIdx标识在更低层、比如基础层中的画面(例如在引用的画面的LayerId小于CurrLayerId)时,函数MvdPresent返回0。
尽管已经使用特定编码标准及其扩展作为基础来描述本发明的实施例,但是本发明也可以应用于其它编码解码器、比特流格式和编码结构。
提供如以下描述的那样可以组合成单个解决方案的以下元素,或者它们可以被分离地利用。如更早说明的那样,视频编码器和视频解码器二者通常应用预测机制,因此以下元素可以相似地适用于视频编码器和视频解码器二者。
在以上呈现的各种实施例中,选择正在编码/解码的当前块cb的邻近块。选择邻近块的示例包括空间邻居(例如如图7a中指示的那样)。其它示例包括在相同视图的先前和/或以后帧中的时间(如图7b中指示的那样)、在相邻视图中的空间邻居、在不同层中的空间邻居和在合成的视图中的空间邻居。本发明的方面不限于提到的选择邻近块的方法,但是实际上对于本发明的其它实施例可以被部分地或者完全地实现在其上的一个可能基础给出描述。
尽管对于用于照度的预测来描述实施例中的许多实施例,但是将理解在许多编码布置中,可以使用预定关系根据照度预测信息推导色度预测信息。例如可以假设与用于照度相同的参考样本可以用于色度分量。
以下进一步具体描述用于实施本发明的实施例的适当装置和可能机制。就这一点而言,先参照示出示例性装置或者电子设备50的示意框图的图10,该装置或者电子设备可以结合根据本发明的一个实施例的编码解码器。
电子设备50可以例如是无线通信系统的移动终端或者用户设备。然而将理解可以在可能需要对视频图像进行编码和解码或者编码或者解码的任何电子设备或者装置内实施本发明的实施例。
装置50可以包括用于包含和保护设备的壳30。装置50还可以包括形式为液晶显示器的显示器32。在本发明的其它实施例中,显示器可以是适合于显示图像或者视频的任何适当显示器技术。装置50还可以包括键区34。在本发明的其它实施例中,可以运用任何适当数据或者用户接口机制。例如可以实施用户接口为虚拟键盘或者数据录入系统作为触敏显示器的部分。该装置可以包括麦克风36或者任何适当音频输入,该音频输入可以是数字或者模拟信号输入。装置50还可以包括音频输出设备,该音频输出设备在本发明的实施例中可以是以下各项中的任何一项:耳机38、扬声器或者模拟音频或者数字音频输出连接。装置50也可以包括电池40(或者在本发明的其它实施例中,该设备可以由任何适当移动能量设备、比如太阳能电池、燃料电池或者时钟机构发生器供电)。该装置还可以包括用于与其它设备的近程视线通信的红外线端口42。在其它实施例中,装置50还可以包括任何适当近程通信解决方案、如比如蓝牙无线连接或者USB/火线有线连接。
装置50可以包括用于控制装置50的控制器56或者处理器。控制器56可以连接到存储器58,该存储器在本发明的实施例中可以存储形式为图像的数据和音频数据二者和/或也可以存储用于在控制器56上实施的指令。控制器56还可以连接到适合于实现音频和/或视频数据的编码和解码或者辅助由控制器56实现的编码和解码的编码解码器电路装置54。
装置50还可以包括用于提供用户信息并且适合于提供用于在网络认证和授权用户的认证信息的读卡器48和智能卡46、例如UICC和UICC读取器。
装置50可以包括无线电接口电路装置52,该无线电接口电路装置连接到控制器并且适合于生成例如用于与蜂窝通信网络、无线通信系统或者无线局域网通信的无线通信信号。装置50还可以包括天线44,该天线连接到无线电接口电路装置52用于向其它装置发送在无线电接口电路装置52生成的射频信号以及用于从其它装置接收射频信号。
在本发明的一些实施例中,装置50包括能够记录或者检测个别帧的相机,这些帧然后向编码解码器54或者控制器被传递以用于处理。在本发明的其它实施例中,该装置可以在传输和/或存储之前从另一设备接收视频图像数据以用于处理。在本发明的其它实施例中,装置50可以无线地或者通过有线连接来接收图像以供编码/解码。
关于图12,示出可以在其内利用本发明的实施例的系统的示例。系统10包括可以通过一个或者多个网络通信的多个通信设备。系统10可以包括有线或者无线网络的任何组合、这些有线或者无线网络包括但不限于无线蜂窝电话网络(比如GSM、UMTS、CDMA网络等)、比如IEEE 802.x标准中的任何标准定义的无线局域网(WLAN)、蓝牙专用网络、以太网局域网、令牌环局域网、广域网和因特网。
系统10可以包括适合用于实施本发明的实施例的有线和无线通信设备或者装置50二者。
例如图12中所示系统示出移动电话网络11并且示出因特网28的表示。与因特网28的连通可以包括但不限于远程无线连接、近程无线连接和各种有线连接,这些有线连接包括但不限于电话线路、线缆线路、功率线路和相似的通信途径。
系统10中所示示例通信设备可以包括但不限于电子设备或者装置50、个人数字助理(PDA)和移动电话14的组合、PDA 16、集成消息接发设备(IMD)18、桌面型计算机20、笔记本计算机22。装置50可以静止或者在由移动的个人携带时可移动。装置50也可以位于运输模式中,该运输模式包括但不限于小汽车、卡车、出租车、公共汽车、火车、船只、飞机、自行车、摩托车或者任何相似的适当运输模式。
一些或者更多装置可以发送和接收呼叫和消息并且通过与基站24的无线连接25与服务提供商通信。基站24可以连接到网络服务器26,该网络服务器允许在移动电话网络11与因特网28之间的通信。该系统可以包括附加通信设备和各种类型的通信设备。
通信设备可以使用各种传输技术来通信,这些传输技术包括但不限于码分多址(CDMA)、全球移动通信系统(GSM)、通用移动电信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议-网际协议(TCP-IP)、短消息接发服务(SMS)、多媒体消息接发服务(MMS)、电子邮件、即时消息接发服务(IMS)、蓝牙、IEEE 802.11和任何相似无线通信技术。参与实施本发明的各种实施例的通信设备可以使用各种介质来通信,这些介质包括但不限于无线电、红外线、激光、线缆连接和任何适当连接。
虽然以上示例描述在电子设备内的编码解码器内操作的本发明的实施例,但是将认识可以实施如以下描述的本发明为任何视频编码解码器的部分。因此例如可以在视频编码解码器中实施本发明的实施例,该视频编码解码器可以通过固定或者有线通信路径实施视频编码。
因此,用户设备可以包括视频编码解码器、比如以上在本发明的实施例中描述的视频编码解码器。应当认识术语用户设备旨在于覆盖任何适当类型的无线用户设备、比如移动电话、便携数据处理设备或者便携web浏览器。
另外,公共陆地移动网络(PLMN)的单元也可以包括如以上描述的视频编码解码器。
一般而言,可以在硬件或者专用电路、软件、逻辑或者其任何组合中实施本发明的各种实施例。例如可以在硬件中实施一些方面,而可以在控制器、微处理器或者其它计算设备可以执行的固件或者软件中实施其它方面,但是本发明不限于此。尽管本发明的各种方面可以被图示和描述为框图、流程图或者使用一些其它图形表示来图示和描述,但是合理地理解可以在作为非限制示例的硬件、软件、固件、专用电路或者逻辑、通用硬件或者控制器或者其它计算设备或者其某个组合中实施这里描述的这些块、装置、系统、技术或者方法。
可以通过移动设备的数据处理器、比如在处理器实体中可执行的计算机软件或者通过硬件或者通过软件和硬件的组合来实施本发明的实施例。另外就这一点而言,应当注意如各图中的逻辑流程的任何块可以代表程序步骤或者互连的逻辑电路、块和功能或者程序步骤和逻辑电路、块和功能的组合。软件可以存储于比如在处理器内实施的存储器芯片或者存储器块、磁介质、比如硬盘或者软盘和光介质、如例如DVD及其数据变体CD这样的物理介质上。
存储器可以是适合于本地技术环境的任何类型并且可以使用任何适当数据存储技术、比如基于半导体的存储器设备、磁存储器设备和系统、光学存储器设备和系统、固定存储器和可移除存储器来实施。数据处理器可以是适合于本地技术环境的任何类型并且可以包括作为非限制示例的通用计算机、专用计算机、微处理器、数字信号处理器(DSP)和基于多核处理器架构的处理器中的一项或者多项。
可以在各种部件、比如集成电路模块中实现本发明的实施例。集成电路的设计主要是高度自动化过程。复杂而强大的软件工具可用于将逻辑级设计转换成准备好在半导体衬底上蚀刻和形成的半导体电路设计。
程序、比如Mountain View,California的Synopsys公司和SanJose,California的Cadence Design提供的程序使用建立好的设计规则以及预存的设计模块的库在半导体芯片上自动对导体布线和对部件定位。一旦已经完成用于半导体电路的设计,就可以按照标准化电子格式(例如Opus、GDSII等)向半导体制作设施或者“fab”发送所得设计用于制作。
前文描述已经通过示例而非限制的示例提供对本发明示例性实施例的完全而有启发的描述。然而各种修改和适配鉴于在与附图和所附权利要求结合阅读时的前文描述可以变得为相关领域技术人员所清楚。然而对本发明的教导的所有这样和相似的修改仍将落入本发明的范围内。
在下文中,将提供一些示例。
根据第一示例,提供一种方法,该方法包括:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据第二示例,提供一种方法,该方法包括:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
在一些实施例中,该方法包括提供一个或者多个参考帧以供参考块的选择。
在一些实施例中,该方法包括,一个或者多个参考帧包括以下各项的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在一些实施例中,该方法包括,确定运动矢量包括确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在一些实施例中,该方法包括:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该方法的一些实施例中,a1等于b1并且a2等于b2。
在该方法的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该方法包括提供参考类型的指示。
在一些实施例中,该方法包括至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该方法包括在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在一些实施例中,该方法包括定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在一些实施例中,该方法包括提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供运动矢量语法元素。
在一些实施例中,该方法包括在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行编码。
在一些实施例中,该方法包括基于用于多视图编码的全局视差确定固定运动矢量。
在一些实施例中,该方法包括使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在一些实施例中,该方法包括:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧、视图间帧或者层间帧选择时在对运动矢量进行编码时使用第一熵编码情境。
在一些实施例中,该方法在移动通信设备中用来对视频信息进行编码。
在该方法的一些实施例中,视频信息是多视图视频信息。
根据第三示例,提供一种装置,该装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起,使该装置:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据第四示例,提供一种装置,该装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起,使该装置:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置提供一个或者多个参考帧以供参考块的选择。
在该装置的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该装置的一些实施例中,a1等于b1并且a2等于b2。
在该装置的一些实施例中,a1等于0并且a2等于0。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置提供参考类型的指示。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供运动矢量语法元素。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行编码。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置基于用于多视图编码的全局视差确定固定运动矢量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第一熵编码情境。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置对视频信息进行编码。
在该装置的一些实施例中,视频信息是多视图视频信息。
在一些实施例中,该装置是移动站的部件。
根据第五示例,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据第六示例,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供一个或者多个参考帧以供参考块的选择。
在该计算机程序产品的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少执行以下:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该计算机程序产品的一些实施例中,a1等于b1并且a2等于b2。
在该计算机程序产品的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供参考类型的指示。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供运动矢量语法元素。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行编码。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少基于用于多视图编码的全局视差确定固定运动矢量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少执行以下:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第一熵编码情境。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少对视频信息进行编码。
在该计算机程序产品的一些实施例中,视频信息是多视图视频信息。
根据第七示例,提供一种装置,该装置包括:
用于选择帧的当前块以供编码的装置;
用于选择用于当前块的参考块的装置;
用于基于选择的参考块确定参考类型的装置;
用于基于参考类型和参考块确定用于当前块的运动矢量的装置;以及
用于用于基于确定的运动矢量对运动矢量信息进行编码的装置。
根据第八示例,提供一种装置,该装置包括:
用于选择帧的当前块以供编码的装置;
用于选择用于当前块的参考块的装置;
用于确定标识参考块属于的画面的参考画面索引的装置;
用于基于参考画面索引确定用于当前块的运动矢量的装置;以及
用于基于确定的运动矢量对运动矢量信息进行编码的装置。
在一些实施例中,该装置包括用于提供一个或者多个参考帧以供参考块的选择的装置。
在该装置的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在一些实施例中,该装置包括用于确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量的装置。
在一些实施例中,该装置包括:
用于如果选择的参考块来自视图合成的帧、视图间帧或者层间帧、则限制竖直运动矢量分量在第一范围[a1,b1]内的装置;以及
用于如果选择的参考块来自视图合成的帧或者层间帧、则限制水平运动矢量分量在第二范围[a2,b2]内的装置。
在该装置的一些实施例中,a1等于b1并且a2等于b2。
在该装置的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该装置包括用于提供参考类型的指示的装置。
在一些实施例中,该装置包括用于至少提供指示画面的第一参考画面列表的装置,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该装置包括用于在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型的装置。
在一些实施例中,该装置包括用于定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量的装置。
在一些实施例中,该装置包括用于提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供运动矢量语法元素的装置。
在一些实施例中,该装置包括用于在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行编码的装置。
在一些实施例中,该装置包括用于基于用于多视图编码的全局视差确定固定运动矢量的装置。
在一些实施例中,该装置包括用于使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差的装置。
在一些实施例中,该装置包括:
用于确定第一熵编码情境和第二熵编码情境的装置;
用于在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第二熵编码情境的装置;以及
用于在参考块不是选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行编码时使用第一熵编码情境的装置。
在一些实施例中,该装置是包括用于对视频信息进行编码的装置的移动通信设备的部件。
在该装置的一些实施例中,视频信息是多视图视频信息。
根据第九示例实施例,提供一种方法,该方法包括:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据第十示例实施例,提供一种方法,该方法包括:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
在一些实施例中,该方法包括提供一个或者多个参考帧以供参考块的选择。
在该方法的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在该方法的一些实施例中,确定运动矢量包括确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在一些实施例中,该方法包括:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该方法的一些实施例中,a1等于b1并且a2等于b2。
在该方法的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该方法包括接收参考类型的指示。
在一些实施例中,该方法包括至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该方法包括在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在一些实施例中,该方法包括定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在一些实施例中,该方法包括提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级接收运动矢量语法元素。
在一些实施例中,该方法包括从画面参数集、从适配参数集、从画面首部或者从分片首部对运动矢量语法元素进行解码。
在一些实施例中,该方法包括基于用于多视图编码的全局视差确定固定运动矢量。
在一些实施例中,该方法包括使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在一些实施例中,该方法包括:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行解码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧面、视图间帧或者层间帧时在对运动矢量进行解码时使用第一熵编码情境。
在一些实施例中,该方法在移动通信设备中用来对视频信息进行解码。
在该方法的一些实施例中,视频信息是多视图视频信息。
根据第十一示例,提供一种装置,该装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起,使该装置:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据第十二示例实施例,提供一种装置,该装置包括至少一个处理器和包括计算机程序代码的至少一个存储器,至少一个存储器和计算机程序代码被配置为与至少一个处理器一起,使该装置:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置提供一个或者多个参考帧以供参考块的选择。
在该装置的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置确定运动矢量包括确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该装置的一些实施例中,a1等于b1并且a2等于b2。
在该装置的一些实施例中,a1等于0并且a2等于0。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置接收参考类型的指示。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级接收运动矢量语法元素。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行解码。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置基于用于多视图编码的全局视差确定固定运动矢量。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行解码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧面、视图间帧或者层间帧时在对运动矢量进行解码时使用第一熵编码情境。
在该装置的一些实施例中,所述至少一个存储器在其上存储有代码,该代码在由所述至少一个处理器执行时还使该装置对视频信息进行解码。
在该装置的一些实施例中,视频信息是多视图视频信息。
在一些实施例中,该装置是移动站的部件。
根据第十三示例,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据第十四示例,提供一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,一个或者多个指令的一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
接收比特流,比特流包括与帧的当前块相关的经编码的信息;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供一个或者多个参考帧以供参考块的选择。
在该计算机程序产品的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少执行以下:
如果选择的参考块来自视图合成的帧、视图间帧或者层间帧,则限制竖直运动矢量分量在第一范围[a1,b1]内;以及
如果选择的参考块来自视图合成的帧或者层间帧,则限制水平运动矢量分量在第二范围[a2,b2]内。
在该计算机程序产品的一些实施例中,a1等于b1并且a2等于b2。
在该计算机程序产品的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少接收参考类型的指示。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供指示画面的第一参考画面列表,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级接收运动矢量语法元素。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行解码。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少基于用于多视图编码的全局视差确定固定运动矢量。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少执行以下:
确定第一熵编码情境和第二熵编码情境;
在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行解码时使用第二熵编码情境;以及
在参考块不是选自视图合成的帧面、视图间帧或者层间帧时在对运动矢量进行解码时使用第一熵编码情境。
在一些实施例中,该计算机程序产品包括一个或者多个指令的序列,一个或者多个指令的序列在由一个或者多个处理器执行时使该装置至少对视频信息进行解码。
在该计算机程序产品的一些实施例中,视频信息是多视图视频信息。
根据第十五示例,提供一种装置,该装置包括:
用于接收包括与帧的当前块相关的经编码的信息的比特流的装置;
用于对经编码的信息进行解码的装置;
用于检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示的装置;
用于如果经编码的信息包含用于当前块的参考类型的指示、则使用参考类型以确定如何获得与当前块相关的运动矢量信息的装置;以及
用于获得运动矢量信息的装置。
根据第十六示例实施例,提供一种装置,该装置包括:
用于接收包括与帧的当前块相关的经编码的信息的比特流的装置;
用于对经编码的信息进行解码的装置;
用于检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示的装置;
用于如果经编码的信息包含用于当前块的参考类型的指示、则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
用于获得运动矢量信息的装置。
在一些实施例中,该装置包括用于提供一个或者多个参考帧以供参考块的选择的装置。
在该装置的一些实施例中,一个或者多个参考帧包括以下各项中的至少一项:
-视图合成的帧;
-视图间帧;
-层间帧;或者
-帧间预测的帧。
在一些实施例中,该装置包括用于确定用于运动矢量的水平运动矢量分量和竖直运动矢量分量的装置。
在一些实施例中,该装置包括:
用于如果选择的参考块来自视图合成的帧、视图间帧或者层间帧、则限制竖直运动矢量分量在第一范围[a1,b1]内的装置;以及
用于如果选择的参考块来自视图合成的帧或者层间帧、则限制水平运动矢量分量在第二范围[a2,b2]内的装置。
在该装置的一些实施例中,a1等于b1并且a2等于b2。
在该装置的一些实施例中,a1等于0并且a2等于0。
在一些实施例中,该装置包括用于接收参考类型的指示的装置。
在一些实施例中,该装置包括用于至少提供指示画面的第一参考画面列表的装置,这些画面用作可以从其选择参考块的参考画面。
在一些实施例中,该装置包括用于在第一参考画面列表中提供与已经从其选择参考块的参考画面关联的参考类型的装置。
在一些实施例中,该装置包括用于定义用于从视图合成的帧、视图间帧或者层间帧选择的参考块的固定运动矢量的装置。
在一些实施例中,该装置包括用于提供用于固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级接收运动矢量语法元素的装置。
在一些实施例中,该装置包括用于在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对运动矢量语法元素进行解码的装置。
在一些实施例中,该装置包括用于基于用于多视图编码的全局视差确定固定运动矢量的装置。
在一些实施例中,该装置包括用于使用针对旨在于在屏幕水平面上被感知的那些像素的视差作为全局视差的装置。
在一些实施例中,该装置包括:
用于确定第一熵编码情境和第二熵编码情境的装置;
用于在参考块选自视图合成的帧、视图间帧或者层间帧时在对运动矢量进行解码时使用第二熵编码情境的装置;以及
用于在参考块不是选自视图合成的帧面、视图间帧或者层间帧时在对运动矢量进行解码时使用第一熵编码情境的装置。
在一些实施例中,该装置是包括用于对视频信息进行解码的装置的移动通信设备的部件。
在该装置的一些实施例中,视频信息是多视图视频信息。
根据第十七示例,提供一种视频编码器,该视频编码器被配置用于:
选择帧的当前块以供编码;
选择用于当前块的参考块;
基于选择的参考块确定参考类型;
基于参考类型和参考块确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据第十八示例,提供一种视频编码器,该视频编码器被配置用于:
选择帧的当前块以供编码;
选择用于当前块的参考块;
确定标识参考块属于的画面的参考画面索引;
基于参考画面索引确定用于当前块的运动矢量;以及
基于确定的运动矢量对运动矢量信息进行编码。
根据第十九示例,提供一种视频解码器,该视频解码器被配置用于:
接收包括与帧的当前块相关的经编码的信息的比特流;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含用于当前块的参考类型的指示;
如果是,则使用参考类型以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。
根据第二十示例,提供一种视频解码器,该视频解码器被配置用于:
接收包括与帧的当前块相关的经编码的信息的比特流;
对经编码的信息进行解码;
检查接收的信息以确定经解码的信息是否包含标识参考块属于的画面的参考画面索引的指示;
如果是,则使用参考画面索引以确定如何获得与当前块相关的运动矢量信息;以及
获得运动矢量信息。

Claims (44)

1.一种方法,包括:
选择画面的当前块以供编码;
选择用于所述当前块的参考块;
基于所选择的参考块确定参考类型或者确定标识所述参考块属于的所述画面的参考画面索引;
基于所述参考类型和所述参考块或者基于所述参考画面索引,确定用于所述当前块的运动矢量;以及
基于所确定的运动矢量对运动矢量信息进行编码。
2.根据权利要求1所述的方法,还包括提供一个或者多个参考画面以供所述参考块的所述选择,其中所述一个或者多个参考画面包括以下各项中的至少一项:
-视图合成的画面;
-视图间画面;
-层间画面;或者
-帧间预测的画面。
3.根据权利要求1或者2所述的方法,其中所述确定运动矢量包括确定用于所述运动矢量的水平运动矢量分量和竖直运动矢量分量。
4.根据权利要求3所述的方法,还包括:
在所选择的参考块来自所述视图合成的画面、所述视图间画面或者所述层间画面时,限制所述竖直运动矢量分量在第一范围[a1,b1]内;以及
在所选择的参考块来自所述视图合成的画面或者所述层间画面时,限制所述水平运动矢量分量在第二范围[a2,b2]内。
5.根据权利要求4所述的方法,其中a1等于b1并且a2等于b2;或者a1等于0并且a2等于0。
6.根据权利要求1至5中任一项所述的方法,还包括至少提供指示画面的第一参考画面列表,所述画面用作能够从其选择所述参考块的参考画面。
7.根据权利要求1至6中任一项所述的方法,还包括在所述第一参考画面列表中提供与已经从其选择所述参考块的所述参考画面关联的参考类型。
8.根据权利要求1至7中任一项所述的方法,还包括定义用于从所述视图合成的画面、所述视图间画面或者所述层间画面选择的参考块的固定运动矢量。
9.根据权利要求8所述的方法,还包括提供用于所述固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供所述运动矢量语法元素;以及在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对所述运动矢量语法元素进行编码。
10.根据权利要求8或者9所述的方法,还包括基于用于多视图编码的全局视差确定所述固定运动矢量。
11.根据权利要求10所述的方法,还包括使用针对旨在于在屏幕水平上被感知的那些像素的视差作为所述全局视差。
12.根据权利要求1至11中任一项所述的方法,还包括:
确定第一熵编码情境和第二熵编码情境;
在所述参考块选自所述视图合成的画面、所述视图间画面或者所述层间画面时,在对运动矢量进行编码时使用所述第二熵编码情境;以及
在所述参考块不是选自所述视图合成的画面、所述视图间画面或者所述层间画面时,在对运动矢量进行编码时使用所述第一熵编码情境。
13.一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起,使所述装置:
选择画面的当前块以供编码;
选择用于所述当前块的参考块;
基于所选择的参考块确定参考类型或者确定标识所述参考块属于的所述画面的参考画面索引;
基于所述参考类型和所述参考块或者基于所述参考画面索引,确定用于所述当前块的运动矢量;以及
基于所确定的运动矢量对运动矢量信息进行编码。
14.根据权利要求13所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置提供一个或者多个参考画面以供所述参考块的所述选择,其中所述一个或者多个参考画面包括以下各项中的至少一项:
-视图合成的画面;
-视图间画面;
-层间画面;或者
-帧间预测的画面。
15.根据权利要求13或者14所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置确定用于所述运动矢量的水平运动矢量分量和竖直运动矢量分量。
16.根据权利要求15所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置:
在所选择的参考块来自所述视图合成的画面、所述视图间画面或者所述层间画面时,限制所述竖直运动矢量分量在第一范围[a1,b1]内;以及
在所选择的参考块来自所述视图合成的画面或者所述层间画面时,限制所述水平运动矢量分量在第二范围[a2,b2]内。
17.根据权利要求16所述的装置,其中a1等于b1并且a2等于b2;或者a1等于0并且a2等于0。
18.根据权利要求13至17中任一项所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置至少提供指示画面的第一参考画面列表,所述画面用作能够从其选择所述参考块的参考画面。
19.根据权利要求13至18中任一项所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置在所述第一参考画面列表中提供与已经从其选择所述参考块的所述参考画面关联的参考类型。
20.根据权利要求13至19中任一项所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置定义用于从所述视图合成的画面、所述视图间画面或者所述层间画面选择的参考块的固定运动矢量。
21.根据权利要求20所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置:提供用于所述固定运动矢量的运动矢量语法元素;以及以画面级或者以分片级提供所述运动矢量语法元素;以及在画面参数集中、在适配参数集中、在画面首部中或者在分片首部中对所述运动矢量语法元素进行编码。
22.根据权利要求20或者21所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置基于用于多视图编码的全局视差确定所述固定运动矢量。
23.根据权利要求22所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置使用针对旨在于在屏幕水平上被感知的那些像素的视差作为所述全局视差。
24.根据权利要求13至23中任一项所述的装置,其中所述至少一个存储器在其上存储有代码,所述代码在由所述至少一个处理器执行时还使所述装置:
确定第一熵编码情境和第二熵编码情境;
在所述参考块选自所述视图合成的画面、所述视图间画面或者所述层间画面时,在对运动矢量进行编码时使用所述第二熵编码情境;以及
在所述参考块不是选自从所述视图合成的画面、所述视图间画面或者所述层间画面选择时,在对运动矢量进行编码时使用所述第一熵编码情境。
25.一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,所述一个或者多个指令的所述一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
选择画面的当前块以供编码;
选择用于所述当前块的参考块;
基于选择的参考块确定参考类型或者确定标识所述参考块属于的所述画面的参考画面索引;
基于所述参考类型和所述参考块或者基于所述参考画面索引,确定用于所述当前块的运动矢量;以及
基于所确定的运动矢量对运动矢量信息进行编码。
26.一种方法,包括:
接收比特流,所述比特流包括与画面的当前块相关的经编码的信息;
从所述经编码的信息解码用于所述当前块的参考类型;
使用所述参考类型来确定如何获得与所述当前块相关的运动矢量信息;以及
获得所述运动矢量信息。
27.根据权利要求26所述的方法,其中所述解码用于所述当前块的所述参考类型包括:
将在与所述当前块相关的所述经编码的信息中包括的参考索引或者另一种类的经编码的参考指示解码成经解码的参考指示,所经解码的参考指示指示与所述运动矢量信息关联的参考画面,以及
基于所述经解码的参考指示来确定所述参考类型。
28.根据权利要求26或者27所述的方法,其中所述参考类型是以下各项中的至少一项:
-视图合成预测;
-视图间预测;或者
-层间预测。
29.根据权利要求26、27或者28所述的方法,其中所述参考画面是以下类型中的至少一个:
-视图合成的画面;
-视图间画面;或者
-层间画面。
30.根据权利要求26至29中任一项所述的方法,还包括确定用于所述运动矢量的水平运动矢量分量和竖直运动矢量分量中的至少一个。
31.根据权利要求30所述的方法,还包括:
限制所述竖直运动矢量分量在第一范围[a1,b1]内;以及
限制所述水平运动矢量分量在第二范围[a2,b2]内。
32.根据权利要求26至31中任一项所述的方法,还包括至少提供指示画面的第一参考画面列表,所述画面用作已经从其选择所述参考画面的可用参考画面。
33.根据权利要求26至32中任一项所述的方法,还包括:
基于以下各项中的至少一项确定所述参考画面与固定运动矢量分量关联:
-从所述比特流解码所述参考画面与所述固定运动矢量分量关联的指示;
-基于以下各项中的一项或者多项推断所述参考画面与所述固定运动矢量分量关联:
-所述参考画面的类型;
-所述当前画面的可扩展层和所述参考画面的可扩展层;
-所述当前画面的视图和所述参考画面的视图;
-所述当前画面的属性和/或所述参考画面的属性;以及
确定将用作与所述当前块相关的所述运动矢量信息的固定运动矢量分量值。
34.根据权利要求33所述的方法,其中所述确定用于所述当前块的所述固定运动矢量包括:
接收在所述比特流的画面级或者分片级中的一个或者多个运动矢量语法元素;以及
对所述一个或者多个运动矢量语法元素进行解码以获得所述固定运动矢量分量值。
35.根据权利要求33或者34所述的方法,其中所述确定用于所述当前块的所述固定运动矢量分量值包括基于所述参考类型推断所述固定运动矢量分量值。
36.根据权利要求35所述的方法,还包括:
推断所述固定竖直运动矢量分量值为0。
37.根据权利要求26至36中任一项所述的方法,还包括:
确定第一熵编码情境和第二熵编码情境;
在所述参考块选自视图合成的画面、视图间画面或者层间画面时,在对运动矢量进行解码时,使用所述第二熵编码情境;以及
在所述参考块不是选自所述视图合成的画面、所述视图间画面或者所述层间画面时,在对运动矢量进行解码时,使用所述第一熵编码情境。
38.一种装置,包括至少一个处理器和包括计算机程序代码的至少一个存储器,所述至少一个存储器和所述计算机程序代码被配置为与所述至少一个处理器一起,使所述装置:
接收比特流,所述比特流包括与帧的当前块相关的经编码的信息;
对所述经编码的信息进行解码;
检查所接收的信息,以确定所述经解码的信息是否包含用于所述当前块的参考类型的指示或者标识所述参考块属于的画面的参考画面索引的指示;
在所接收的信息包含用于所述当前块的参考类型的所述指示或者参考画面索引的所述指示时,使用所述参考类型或者所述参考画面索引来确定如何获得与所述当前块相关的运动矢量信息;以及
获得所述运动矢量信息。
39.根据权利要求38所述的装置,其中所述装置是移动站的部件。
40.一种包括一个或者多个指令的一个或者多个序列的计算机程序产品,所述一个或者多个指令的所述一个或者多个序列在由一个或者多个处理器执行时,使装置至少执行以下:
接收比特流,所述比特流包括与帧的当前块相关的经编码的信息;
对所述经编码的信息进行解码;
检查所接收的信息,以确定所述经解码的信息是否包含用于所述当前块的参考类型的指示或者标识所述参考块属于的画面的参考画面索引的指示;
在所接收的信息包含用于所述当前块的参考类型的所述指示或者参考画面索引的所述指示时,使用所述参考类型或者所述参考画面索引来确定如何获得与所述当前块相关的运动矢量信息;以及
获得所述运动矢量信息。
41.一种装置,包括:
用于接收包括与帧的当前块相关的经编码的信息的比特流的装置;
用于对所述经编码的信息进行解码的装置;
用于检查所接收的信息以确定所述经解码的信息是否包含用于所述当前块的参考类型的指示或者参考画面索引的指示的装置;
用于在所述经编码的信息包含用于所述当前块的参考类型的所述指示时、使用所述参考类型或者所述参考画面索引来确定如何获得与所述当前块相关的运动矢量信息的装置;以及
用于获得所述运动矢量信息的装置。
42.一种装置,包括:
用于选择帧的当前块以供编码的装置;
用于选择用于所述当前块的参考块的装置;
用于基于所选择的参考块确定参考类型或者确定标识所述参考块属于的画面的参考画面索引的装置;
用于基于所述参考类型和所述参考块或者基于所述参考画面索引确定用于所述当前块的运动矢量的装置;以及
用于基于所确定的运动矢量对运动矢量信息进行编码的装置。
43.一种视频编码器,所述视频编码器被配置用于:
选择帧的当前块以供编码;
选择用于所述当前块的参考块;
基于所选择的参考块确定参考类型或者确定标识所述参考块属于的画面的参考画面索引;
基于所述参考类型和所述参考块或者基于所述参考画面索引确定用于所述当前块的运动矢量;以及
基于所确定的运动矢量对运动矢量信息进行编码。
44.一种视频解码器,所述视频解码器被配置用于:
接收比特流,所述比特流包括与帧的当前块相关的经编码的信息;
对所述经编码的信息进行解码;
检查所接收的信息以确定所述经解码的信息是否包含用于所述当前块的参考类型的指示或者标识所述参考块属于的画面的参考画面索引的指示;
在所接收的信息包含用于所述当前块的参考类型的所述指示或者参考画面索引的所述指示时,使用所述参考类型或者所述参考画面索引来确定如何获得与所述当前块相关的运动矢量信息;以及
获得所述运动矢量信息。
CN201380031859.2A 2012-04-16 2013-04-16 用于视频编码和解码的装置、方法和计算机可读存储介质 Active CN104396244B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261624902P 2012-04-16 2012-04-16
US61/624,902 2012-04-16
PCT/FI2013/050418 WO2013156678A1 (en) 2012-04-16 2013-04-16 An apparatus, a method and a computer program for video coding and decoding

Publications (2)

Publication Number Publication Date
CN104396244A true CN104396244A (zh) 2015-03-04
CN104396244B CN104396244B (zh) 2019-08-09

Family

ID=49382981

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380031859.2A Active CN104396244B (zh) 2012-04-16 2013-04-16 用于视频编码和解码的装置、方法和计算机可读存储介质

Country Status (5)

Country Link
US (1) US10863170B2 (zh)
EP (1) EP2839660B1 (zh)
KR (1) KR101682999B1 (zh)
CN (1) CN104396244B (zh)
WO (1) WO2013156678A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108293131A (zh) * 2015-11-20 2018-07-17 联发科技股份有限公司 用于视频编解码的运动矢量预测或者运动补偿的方法和装置
CN108432252A (zh) * 2015-12-22 2018-08-21 真实网络公司 视频编码中的运动矢量选择及预测系统和方法
CN109565602A (zh) * 2016-08-15 2019-04-02 诺基亚技术有限公司 视频编码和解码
CN110692241A (zh) * 2017-11-16 2020-01-14 谷歌有限责任公司 使用多种全局运动模型的多样化运动
CN111034202A (zh) * 2017-07-05 2020-04-17 奥兰治 图像编码和解码方法、编码和解码设备及对应计算机程序
CN115086652A (zh) * 2015-06-05 2022-09-20 杜比实验室特许公司 图像编码和解码方法和图像解码设备
CN115134591A (zh) * 2015-06-05 2022-09-30 杜比实验室特许公司 图像编解码方法、比特流存储方法
CN116761000A (zh) * 2018-08-29 2023-09-15 北京达佳互联信息技术有限公司 视频解码的方法、计算设备和存储介质

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7983835B2 (en) 2004-11-03 2011-07-19 Lagassey Paul J Modular intelligent transportation system
US9253487B2 (en) * 2012-05-31 2016-02-02 Qualcomm Incorporated Reference index for enhancement layer in scalable video coding
EP2670146A1 (en) * 2012-06-01 2013-12-04 Alcatel Lucent Method and apparatus for encoding and decoding a multiview video stream
CN110035286B (zh) * 2012-07-09 2021-11-12 Vid拓展公司 用于多层视频编码的编解码器架构
CN104521236B (zh) * 2012-07-27 2017-10-20 寰发股份有限公司 三维视频编码或解码方法
EP3579562B1 (en) * 2012-09-28 2021-09-08 Sony Group Corporation Image processing device and method
CN102883163B (zh) * 2012-10-08 2014-05-28 华为技术有限公司 用于运动矢量预测的运动矢量列表建立的方法、装置
GB2499694B8 (en) * 2012-11-09 2017-06-07 Sony Computer Entertainment Europe Ltd System and method of image reconstruction
US10021388B2 (en) 2012-12-26 2018-07-10 Electronics And Telecommunications Research Institute Video encoding and decoding method and apparatus using the same
CN105409215B (zh) 2013-01-11 2018-10-09 华为技术有限公司 深度预测模式选择方法及装置
FR3002716A1 (fr) 2013-02-26 2014-08-29 France Telecom Derivation de vecteur de mouvement de disparite, codage et decodage video 3d utilisant une telle derivation
US11438609B2 (en) * 2013-04-08 2022-09-06 Qualcomm Incorporated Inter-layer picture signaling and related processes
US20140354771A1 (en) * 2013-05-29 2014-12-04 Ati Technologies Ulc Efficient motion estimation for 3d stereo video encoding
US9497439B2 (en) * 2013-07-15 2016-11-15 Ati Technologies Ulc Apparatus and method for fast multiview video coding
CN105519115A (zh) * 2013-09-10 2016-04-20 株式会社Kt 用于对可扩展视频信号进行编码/解码的方法及装置
WO2015054634A2 (en) * 2013-10-11 2015-04-16 Vid Scale, Inc. High level syntax for hevc extensions
WO2015060616A1 (ko) * 2013-10-22 2015-04-30 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
WO2015060614A1 (ko) * 2013-10-22 2015-04-30 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
KR20150050408A (ko) * 2013-10-29 2015-05-08 주식회사 케이티 멀티 레이어 비디오 신호 인코딩/디코딩 방법 및 장치
WO2015103747A1 (en) * 2014-01-08 2015-07-16 Mediatek Singapore Pte. Ltd. Motion parameter hole filling
US10645404B2 (en) * 2014-03-24 2020-05-05 Qualcomm Incorporated Generic use of HEVC SEI messages for multi-layer codecs
US9584817B2 (en) * 2014-03-31 2017-02-28 Sony Corporation Video transmission system with color prediction and method of operation thereof
JP6437096B2 (ja) * 2014-08-20 2018-12-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン ビデオ合成
WO2016119104A1 (en) * 2015-01-26 2016-08-04 Mediatek Inc. Motion vector regularization
US9359686B1 (en) 2015-01-09 2016-06-07 Apple Inc. Processes to reduce interfacial enrichment of alloying elements under anodic oxide films and improve anodized appearance of heat treatable alloys
CN106254878B (zh) * 2015-06-14 2020-06-12 同济大学 一种图像编码及解码方法、图像处理设备
US10812791B2 (en) * 2016-09-16 2020-10-20 Qualcomm Incorporated Offset vector identification of temporal motion vector predictor
WO2018093184A1 (ko) * 2016-11-18 2018-05-24 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2018169571A1 (en) * 2017-03-15 2018-09-20 Google Llc Segmentation-based parameterized motion models
CN118573893A (zh) 2017-09-19 2024-08-30 三星电子株式会社 对运动信息进行编码和解码的方法以及设备
CN107834560B (zh) * 2017-11-16 2020-09-29 河海大学常州校区 基于整数阶高阶滑模模糊控制的有源电力滤波器控制方法
KR102043186B1 (ko) 2019-05-15 2019-11-12 한국화학연구원 무기산 제거용 비드 및 이의 제조방법
US12062214B2 (en) * 2021-12-27 2024-08-13 Advanced Micro Devices, Inc. Systems and method for generating Morton code

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080225952A1 (en) * 2007-03-15 2008-09-18 Nokia Corporation System and method for providing improved residual prediction for spatial scalability in video coding
CN101754013A (zh) * 2008-11-28 2010-06-23 汤姆森许可贸易公司 由图形处理单元支持的视频解码方法
US20110293010A1 (en) * 2010-05-26 2011-12-01 Je Chang Jeong Method of Predicting Motion Vectors in Video Codec in Which Multiple References are Allowed, and Motion Vector Encoding/Decoding Apparatus Using the Same
WO2013129878A1 (ko) * 2012-02-29 2013-09-06 엘지전자 주식회사 인터 레이어 예측 방법 및 이를 이용하는 장치

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261653A (ja) * 1996-03-18 1997-10-03 Sharp Corp 多視点画像符号化装置
US20020118743A1 (en) * 2001-02-28 2002-08-29 Hong Jiang Method, apparatus and system for multiple-layer scalable video coding
JP2004007563A (ja) * 2002-04-19 2004-01-08 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
JP4120301B2 (ja) * 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
KR100491530B1 (ko) * 2002-05-03 2005-05-27 엘지전자 주식회사 모션 벡터 결정 방법
KR100693669B1 (ko) * 2003-03-03 2007-03-09 엘지전자 주식회사 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법
US8582659B2 (en) * 2003-09-07 2013-11-12 Microsoft Corporation Determining a decoding time stamp from buffer fullness
US7577200B2 (en) 2003-09-07 2009-08-18 Microsoft Corporation Extended range variable length coding/decoding of differential motion vector information
US8385427B2 (en) * 2005-04-15 2013-02-26 Apple Inc. Reduced resolution video decode
MX2008000906A (es) * 2005-07-21 2008-03-18 Thomson Licensing Metodo y aparato para la prediccion ponderada para la codificacion escalable de video.
MY159176A (en) * 2005-10-19 2016-12-30 Thomson Licensing Multi-view video coding using scalable video coding
CN101356820B (zh) * 2006-01-05 2011-01-26 汤姆森许可贸易公司 层间运动预测方法
JP2008011197A (ja) * 2006-06-29 2008-01-17 Toshiba Corp 動きベクトル検出装置、動きベクトル検出方法および補間フレーム作成装置
KR101336204B1 (ko) * 2006-08-18 2013-12-03 주식회사 케이티 다시점 비디오에서 전역변이를 이용하여 상이한 시점의 화면들을 압축 또는 복호하는 인코더와 인코딩하는 방법 및디코더와 디코딩하는 방법
US8532178B2 (en) * 2006-08-25 2013-09-10 Lg Electronics Inc. Method and apparatus for decoding/encoding a video signal with inter-view reference picture list construction
WO2008051041A1 (en) * 2006-10-25 2008-05-02 Electronics And Telecommunications Research Institute Multi-view video scalable coding and decoding
BRPI0809668B1 (pt) 2007-04-09 2020-07-28 Nokia Technologies Oy vetores de movimento de alta precisão para codificação de vídeos com baixa complexidade de codificação e decodificação
US8861598B2 (en) 2008-03-19 2014-10-14 Cisco Technology, Inc. Video compression using search techniques of long-term reference memory
JP5614900B2 (ja) * 2009-05-01 2014-10-29 トムソン ライセンシングThomson Licensing 3d映像符号化フォーマット
WO2010131903A2 (en) * 2009-05-12 2010-11-18 Lg Electronics Inc. Method and apparatus for processing a video signal
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
US9237355B2 (en) * 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
US20120075436A1 (en) * 2010-09-24 2012-03-29 Qualcomm Incorporated Coding stereo video data
EP2661881A4 (en) * 2010-12-29 2016-10-12 Nokia Technologies Oy CODING OF DISPARITY CARD
TW201246943A (en) * 2011-01-26 2012-11-16 Panasonic Corp Video image encoding method, video image encoding device, video image decoding method, video image decoding device, and video image encoding and decoding device
KR20120118781A (ko) * 2011-04-19 2012-10-29 삼성전자주식회사 다시점 비디오를 위한 단일화된 스케일러블 비디오 부호화 방법 및 그 장치, 다시점 비디오를 위한 단일화된 스케일러블 비디오 복호화 방법 및 그 장치
KR101626683B1 (ko) * 2011-08-30 2016-06-01 인텔 코포레이션 멀티뷰 비디오 코딩 방안
US20140286433A1 (en) * 2011-10-21 2014-09-25 Dolby Laboratories Licensing Corporation Hierarchical motion estimation for video compression and motion analysis
US9762904B2 (en) * 2011-12-22 2017-09-12 Qualcomm Incorporated Performing motion vector prediction for video coding
US9288506B2 (en) * 2012-01-05 2016-03-15 Qualcomm Incorporated Signaling view synthesis prediction support in 3D video coding
US9756353B2 (en) * 2012-01-09 2017-09-05 Dolby Laboratories Licensing Corporation Hybrid reference picture reconstruction method for single and multiple layered video coding systems
US9325990B2 (en) * 2012-07-09 2016-04-26 Qualcomm Incorporated Temporal motion vector prediction in video coding extensions
US9900609B2 (en) * 2013-01-04 2018-02-20 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
WO2015006281A2 (en) * 2013-07-09 2015-01-15 Sony Corporation High level syntax improvement on inter-layer prediction for shvc/mv-hevc

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080225952A1 (en) * 2007-03-15 2008-09-18 Nokia Corporation System and method for providing improved residual prediction for spatial scalability in video coding
CN101754013A (zh) * 2008-11-28 2010-06-23 汤姆森许可贸易公司 由图形处理单元支持的视频解码方法
US20110293010A1 (en) * 2010-05-26 2011-12-01 Je Chang Jeong Method of Predicting Motion Vectors in Video Codec in Which Multiple References are Allowed, and Motion Vector Encoding/Decoding Apparatus Using the Same
WO2013129878A1 (ko) * 2012-02-29 2013-09-06 엘지전자 주식회사 인터 레이어 예측 방법 및 이를 이용하는 장치

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115134591A (zh) * 2015-06-05 2022-09-30 杜比实验室特许公司 图像编解码方法、比特流存储方法
US12088788B2 (en) 2015-06-05 2024-09-10 Dolby Laboratories Licensing Corporation Method and device for encoding and decoding intra-frame prediction
CN115086652A (zh) * 2015-06-05 2022-09-20 杜比实验室特许公司 图像编码和解码方法和图像解码设备
CN115086653A (zh) * 2015-06-05 2022-09-20 杜比实验室特许公司 图像编码和解码方法和图像解码设备
CN108293131A (zh) * 2015-11-20 2018-07-17 联发科技股份有限公司 用于视频编解码的运动矢量预测或者运动补偿的方法和装置
US10999595B2 (en) 2015-11-20 2021-05-04 Mediatek Inc. Method and apparatus of motion vector prediction or merge candidate derivation for video coding
CN108293131B (zh) * 2015-11-20 2021-08-31 联发科技股份有限公司 基于优先级运动矢量预测子推导的方法及装置
CN108432252A (zh) * 2015-12-22 2018-08-21 真实网络公司 视频编码中的运动矢量选择及预测系统和方法
CN109565602A (zh) * 2016-08-15 2019-04-02 诺基亚技术有限公司 视频编码和解码
CN111034202A (zh) * 2017-07-05 2020-04-17 奥兰治 图像编码和解码方法、编码和解码设备及对应计算机程序
CN111034202B (zh) * 2017-07-05 2023-08-22 奥兰治 图像编码和解码方法、编码和解码设备及对应计算机程序
CN110692241B (zh) * 2017-11-16 2023-07-18 谷歌有限责任公司 使用多种全局运动模型的多样化运动
CN110692241A (zh) * 2017-11-16 2020-01-14 谷歌有限责任公司 使用多种全局运动模型的多样化运动
CN116761000A (zh) * 2018-08-29 2023-09-15 北京达佳互联信息技术有限公司 视频解码的方法、计算设备和存储介质
CN116761000B (zh) * 2018-08-29 2023-12-19 北京达佳互联信息技术有限公司 视频解码的方法、计算设备和存储介质
US11936901B2 (en) 2018-08-29 2024-03-19 Beijing Dajia Internet Information Technology Co., Ltd. Methods and apparatus of video coding using subblock-based temporal motion vector prediction

Also Published As

Publication number Publication date
WO2013156678A1 (en) 2013-10-24
KR20150010736A (ko) 2015-01-28
KR101682999B1 (ko) 2016-12-20
CN104396244B (zh) 2019-08-09
EP2839660A1 (en) 2015-02-25
EP2839660B1 (en) 2020-10-07
US10863170B2 (en) 2020-12-08
US20140133567A1 (en) 2014-05-15
EP2839660A4 (en) 2016-09-28

Similar Documents

Publication Publication Date Title
CN104396244A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN104521238B (zh) 用于3d视频编码的装置和方法
CN104813669B (zh) 用于视频编码的方法和装置
CN104584549B (zh) 用于视频编码的方法和装置
CN105556965B (zh) 用于视频编码和解码的方法、装置和计算机程序产品
CN104205819B (zh) 用于视频编码的方法和装置
CN106105220B (zh) 用于视频编码和解码的方法和装置
CN105531999B (zh) 涉及用于信号传输运动信息的语法的视频编码方法及装置
KR101726534B1 (ko) 3d 비디오 코딩을 위한 조화된 인터-뷰 및 뷰 합성 예측
CN105981387B (zh) 用于处理视频的方法、装置和计算机可读存储介质
CN105637870B (zh) 使用不对称运动分割的视频译码技术
CN105122812B (zh) 用于三维(3d)视频译码的高级合并模式
CN105580372B (zh) 用于3d视频译码的组合式双向预测合并候选者
CN104604236B (zh) 用于视频编码的方法和装置
TWI539796B (zh) 視差向量推導
CN104641642A (zh) 用于视频编码的方法和装置
US8532410B2 (en) Multi-view video coding with disparity estimation based on depth information
CN105144715B (zh) 后向视图合成预测
TWI539791B (zh) 三維視頻寫碼中導出之視差向量
CN104380749A (zh) 用于视频编码的方法和装置
CN105325003A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN103891291A (zh) 用于视频编码和解码的设备、方法和计算机程序
CN105874799A (zh) 用于3d视频译码的基于块的高级残差预测
CN105027567A (zh) 用于视频编码和解码的方法和装置
CN104604223A (zh) 用于视频编码和解码的装置、方法和计算机程序

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20160119

Address after: Espoo, Finland

Applicant after: Technology Co., Ltd. of Nokia

Address before: Espoo, Finland

Applicant before: Nokia Oyj

GR01 Patent grant
GR01 Patent grant