CN103891291A - 用于视频编码和解码的设备、方法和计算机程序 - Google Patents

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

Info

Publication number
CN103891291A
CN103891291A CN201280052480.5A CN201280052480A CN103891291A CN 103891291 A CN103891291 A CN 103891291A CN 201280052480 A CN201280052480 A CN 201280052480A CN 103891291 A CN103891291 A CN 103891291A
Authority
CN
China
Prior art keywords
piece
depth
texture
aberration
degree
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.)
Pending
Application number
CN201280052480.5A
Other languages
English (en)
Inventor
D·卢萨诺维斯基
M·汉努卡塞拉
苏文艺
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 CN103891291A publication Critical patent/CN103891291A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/161Encoding, multiplexing or demultiplexing different image signal components
    • 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/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/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/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/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
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Landscapes

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

Abstract

本发明公开了用于运动补偿视频编码和解码的一种方法、设备、服务器、客户端以及包括存储在其中的计算机程序非瞬时性计算机可读介质。纹理块运动信息被用来导出像差/深度运动信息。替换地,像差/深度运动信息被用来导出纹理块运动信息。

Description

用于视频编码和解码的设备、方法和计算机程序
技术领域
本发明涉及一种用于视频编码和解码的设备、方法和计算机程序。
背景技术
当前研究并开发了用于提供三维(3D)视频的多种技术。特别来说,大量研究集中于各种多视图应用,其中观看者能够看到来自一个特定视点的仅仅一对立体视频以及来自一个不同视点的另一对立体视频。已经发现针对这样的多视图应用的其中一种最为可行的方法是其中仅向解码器侧提供有限输入的输入视图,例如单视或立体视频加上某些补充数据,并且随后由解码器在本地渲染(即合成)所有所需视图以便在显示器上显示。
有几种技术可用于视图渲染,并且例如已经证明基于深度图像的渲染(DIBR)是一种具有竞争力的替换方案。DIBR的一种典型实现方式取得立体视觉视频和相应的深度信息连同立体视觉基线作为输入,并且在两个输入视图之间合成一定数目的虚拟视图。因此,DIBR算法还可以允许对处于两个输入视图外部而不是处于二者之间的视图进行外插。类似地,DIBR算法可以允许从单一纹理视图和对应的深度视图进行视图合成。
在3D视频内容的编码中可以使用视频压缩系统,比如高级视频编码标准H.264/AVC或者H.264/AVC的多视图视频编码MVC扩展。但是在H.264/AVC/MVC中规定的运动矢量预测对于利用视图间和/或连同帧间预测的视图合成预测(VSP)的视频编码系统可能不是最优的。
因此,需要改进用于多视图编码(MVC)、深度增强视频编码、多视图+深度(MVD)编码和/或带有循环内视图合成的多视图(MVC-VSP)的目的的运动矢量预测。
发明内容
本发明考虑到,对应于当前纹理数据块(cb)的深度或像差信息(Di)可以通过对已编码深度或像差信息进行解码而获得,或者可以在对当前纹理块cb进行解码之前在解码器侧估计得到,从而使得有可能在MVP处理中利用深度或像差信息。通过在MVP中利用深度或像差信息(Di)会改进多视图、多视图+深度以及MVP-VSP编码系统中的压缩。
在后面的描述中利用以下命名惯例。术语cb被用来指代当前纹理数据块,与cb相关联的深度或像差信息被命名为d(cb)。当前纹理数据块被定义为正由编码器或编码方法进行编码或者正由解码器或解码方法进行解码的纹理块。
在对应于cb的运动矢量预测(MVP)处理期间,编码器/解码器可以使用2D纹理数据块(A、B、C等等)。这些块被称作邻近块,并且其在空间上邻近cb图像区域(邻近或围绕cb的2D图像片段),并且假设其在cb的编码/解码之前就可用。参见图15,其中用灰色示出了邻近cb并且在MVP中所利用的2D图像片段。
参见图16,在某些情况下,对应于cb的MVP处理可以使用邻近的2D纹理数据块(A、B、C等等),其位于与cb块邻近的相同视频(视频片段)内的其他图像的2D片段中。假设该视频片段在cb的编码/解码之前就可用(已编码/已解码)。
参见图16,在某些情况下,对应于cb的MVP处理可以使用邻近的2D纹理数据块(A、B、C等等),其位于与cb块邻近的处在相同多视图视频数据(多视图视频片段)的不同视图中的其他图像的2D片段中。假设这样的多视图视频片段在cb的编码/解码之前就可用(已编码/已解码)。
换句话说,邻近块A、B、C等等可以在几幅2D图像中位于cb块的空间/时间/视图间附近,其在当前图像编码处理之前就可用(已编码/已解码)。
编码器/解码器可以采用与这些块相关联的运动信息MV(A)、MV(B)、MV(C)(比如水平运动矢量分量mv_x,垂直运动矢量分量mv_y,以及可以例如利用针对一个或更多参考画面列表的参考帧索引refIdx标识出的参考帧)以及与这些块相关联的深度/像差信息d(A)、d(B)、d(C),其中假设所述信息在编码/解码cb之前就可用。为了描述简单起见,下面的术语彼此等效并且指代相同的实体:cb和cb_t,Di(cb_t)和d(cb),Di(cb_t)和cb_d,mvX和MV(X),“相邻块”和“邻近块”。
图像的空间分辨率被定义为在水平和垂直方向上表示图像的像素(图像样本)的数目。在后面的文献中,“不同分辨率下的图像”这一表达法可以被解释成两幅图像在水平方向、垂直方向或全部两个方向上具有不同像素数目。
运动信息可以具有对应于特定分辨率的特定准确度或精确度MV(A)。举例来说,H.264/AVC编码标准使用1/4像素位置运动矢量精确度,这在许多实现方式中需要沿着全部两个坐标轴从原始图像分辨率对参考图像进行4x倍上采样。
在后面的公开内容中,术语“运动矢量分辨率”指的是在运动估计规程期间用以获得该运动矢量的参考图像分辨率。举例来说,当使用1/4像素运动矢量精确度时,运动矢量分辨率在全部两个坐标轴上相对于原始图像分辨率是4x。许多编码方案预先定义运动矢量精确度,但是此外也描述了其中由编码器来选择运动矢量精确度的自适应运动矢量精确度的编码方案。编码器可以把运动矢量准确度(即实际上施行运动估计的准确程度)选择成低于或等于所述精确度,而许多时候编码器使用等于所述精确度的运动矢量准确度。举例来说,在一种编码方案中,运动矢量以1/4像素精确度被表示在比特流中,但是编码器可以选择在1/2像素准确度下施行运动估计,也就是说仅搜索完整像素和1/2像素位置。许多时候并且同样在本文献中,术语“运动矢量精确度”和“准确度”可以作为同义词互换使用。
根据本发明的第一方面,提供一种方法,其包括:从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块cb,其中解码第一已编码纹理块包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从所述比较得到的相似度数值的基础上选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于解码第一已编码纹理块cb的一个或更多预测参数;以及利用所导出的一个或更多预测参数解码第一已编码纹理块cb。
在第一实施例的方法中,所述预测参数可以包括以下各项当中的一项或更多项:预测块的数目,比如单向或双向预测;所使用的一个或更多预测参考的类型,比如帧间、视图间和视图合成;所使用的一个或更多参考画面;将要应用的运动矢量预测值或运动矢量;将要应用的运动矢量预测方法;将要推断出的零值预测误差信号。
第一实施例的方法还可以包括:把从比特流获得一个或更多阈值数值作为基于从所述比较得到的相似度数值选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者的条件。
第一实施例的方法还可以包括:通过从比特流进行解码或者通过估计获得第一深度/像差块d(cb)。
在第一实施例的方法中,如果对于已编码纹理块cb没有运动矢量预测值可用并且对应于所述已编码纹理块的预测参考的类型是视图间预测参考,则所述方法还包括:把运动矢量预测值设定到从当前纹理数据块d(cb)的深度/像差信息导出的一个数值。
在第一实施例的方法中,解码第一已编码纹理块cb可以包括:处理多于两个邻近块。
在第一实施例的方法中,所述对于第一纹理块cb选择第一邻近纹理块A和第二邻近纹理块B包括以下步骤的其中之一:选择位于邻近或围绕cb的2D图像片段(属于相同图像的像素集合)中的第一邻近纹理块A和第二邻近纹理块B;选择位于邻近cb块的视频片段(属于相同视频数据的不同图像的像素集合)或多视图视频片段(属于相同多视图视频数据的不同图像的像素集合)中的第一邻近纹理块A和第二邻近纹理块B。
在第一实施例的方法中,所述获得与邻近纹理块相关联的深度/像差块包括以下步骤当中的一项或更多项:选择第一邻近纹理块Z和第二邻近纹理块Y;获得被利用来解码纹理块Z的运动信息MV(Z)和被利用来解码第二邻近纹理块Y的运动信息MV(Y);获得从运动信息MV(Z)和/或运动信息MV(Y)所获得的一个或更多运动信息候选MV(X);获得从与第一纹理块cb相关联的深度/像差信息d(cb)所获得的一个或更多运动信息候选MV(d(cb));通过从第一纹理块cb的位置计数应用运动信息MV(Z)获得纹理块A;通过从第一纹理块cb的位置计数应用运动信息MV(Y)获得纹理块B;通过从第一纹理块cb的位置计数应用运动信息MV(X)获得一个或更多纹理块;通过从第一纹理块cb的位置计数应用运动信息MV(d(cb))获得一个或更多纹理块;获得与所获得的纹理块A、B等等相关联的深度/像差块d(A)、d(B)等等。
在第一实施例的方法中,所述对于第一纹理块cb选择第一邻近纹理块A和第二邻近纹理块B可以包括以下各项的其中之一:选择第一参考画面中的位于同一处的一块作为第一邻近纹理块A,并且基于与第一邻近纹理块相关联的运动信息或深度信息MV(A)和/或d(A)选择第二邻近纹理块B;利用第一深度/像差块d(cb)选择第二参考画面中的一块作为第一邻近纹理块A,并且基于与第一邻近纹理块A相关联的数值选择第二邻近纹理块B;利用第一深度/像差块d(cb)选择第三参考画面中的一块作为第一邻近纹理块A,并且选择邻近第一邻近纹理块A的位于2D图像片段或者视频片段或多视图视频片段中的第二邻近纹理块B。
在第一实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,则所述方法可以包括:通过把其中任一个分量(纹理或深度)重采样到另一个分量(深度或纹理)的分辨率而将纹理和深度图像的空间分辨率归一化,或者将全部两个分量重采样到单一空间分辨率。
在第一实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且深度图像的分辨率不同于纹理图像的分辨率,则所述方法可以包括:取代对深度图像进行重采样,分别对邻近纹理块A和B的运动信息MV(A)和MV(B)进行重缩放以满足深度图像的空间分辨率。所述运动信息可以包括运动矢量分量运动矢量分量、运动分割尺寸等等。
在第一实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且深度图像的分辨率不同于纹理图像的分辨率,则所述方法可以包括:调节通过对深度图像应用邻近纹理块的运动信息MV(A)、MV(B)而产生相似度量度的所述比较,以便反映出纹理和深度图像之间的分辨率差异。所述调节可以包括对深度信息d(MV(A),d(cb))和d(MV(B),d(cb))进行抽取、子采样、内插或上采样,以便与从邻近纹理块A、B等等获得的运动信息的分辨率相匹配。
在第一实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且/或者深度数据是以非均匀采样的形式或者是利用与被利用来表示纹理数据的方法不同的采样方法给出,则所述方法可以包括:调节通过对非规则地采样的深度信息应用邻近纹理块的运动信息MV(A)、MV(B)而产生相似度量度的所述比较,以便反映出被利用于纹理和深度数据的表示或采样方法的差异。所述调节可以包括对于深度、纹理或运动信息的重采样(上采样、下采样、重缩放),以及合并或聚合利用非均匀采样方法表示的深度信息的线性和非线性操作。
在第一实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且/或者深度数据是以非均匀采样的形式或者是利用与被利用来表示纹理数据的方法不同的采样方法给出,则所述方法可以包括:通过比特流用信令向解码器传达对于解码操作所需的信息。所述信息可以包括被利用于纹理和/或深度图像的空间分辨率归一化的方法的信令,或者被利用于运动信息的重缩放(例如取整、下采样/上采样因数等等)的方法的信令,或者被利用于比较调节(重缩放、重采样或者合并或聚合的非线性操作)的方法的信令。
根据本发明的第二方面,提供一种包括视频解码器的设备,所述视频解码器被配置成从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块cb,其中解码第一已编码纹理块包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块(A或B)和第二邻近纹理块的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于解码第一已编码纹理块cb的一个或更多预测参数;以及利用所导出的一个或更多预测参数解码第一已编码纹理块cb。
在第二实施例的设备中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,则所述方法可以包括:通过把其中任一个分量(纹理或深度)循环内重采样到另一个分量(深度或纹理)的分辨率而将纹理和深度图像的空间分辨率归一化,或者将全部两个分量重采样到单一空间分辨率。
在第二实施例的设备中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且深度图像的分辨率不同于纹理图像的分辨率,则所述方法可以包括:取代对深度图像进行重采样,分别对邻近纹理块A和B的运动信息MV(A)和MV(B)进行重缩放以满足深度图像的空间分辨率。所述运动信息可以包括运动矢量分量运动矢量分量、运动分割尺寸等等。
在第二实施例的设备中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且深度图像的分辨率不同于纹理图像的分辨率,则所述方法可以包括:调节通过对深度图像应用邻近纹理块的运动信息MV(A)、MV(B)而产生相似度量度的所述比较,以便反映出纹理和深度图像之间的分辨率差异。所述调节可以包括对深度信息d(MV(A),d(cb))和d(MV(B),d(cb))进行抽取、子采样、内插或上采样,以便与从邻近纹理块A、B等等获得的运动信息的分辨率相匹配。
在第二实施例的设备中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且/或者深度数据是以非均匀采样的形式或者是利用与被利用来表示纹理数据的方法不同的采样方法给出,则所述方法可以包括:调节通过对非规则地采样的深度信息应用邻近纹理块的运动信息MV(A)、MV(B)而产生相似度量度的所述比较,以便反映出被利用于纹理和深度数据的表示或采样方法的差异。所述调节可以包括对于深度、纹理或运动信息的重采样(上采样、下采样、重缩放),以及合并或聚合利用非均匀采样方法表示的深度信息的线性和非线性操作。
在第二实施例的方法中,如果纹理图像和与所述纹理图像相关联的深度图像是在不同的空间分辨率下给出,并且/或者深度数据是以非均匀采样的形式或者是利用与被利用来表示纹理数据的方法不同的采样方法给出,则所述方法可以包括:从比特流解码对于解码操作所需的信息。所述信息可以包括对应于被利用于纹理和/或深度图像的空间分辨率归一化的方法的解码索引,或者对应于被利用于运动信息的重缩放(例如取整、下采样/上采样因数等等)的方法的解码索引,或者对应于被利用于比较调节(重缩放、重采样或者合并或聚合的非线性操作)的方法的解码索引。
根据本发明的第三方面,提供一种其中存储有供设备使用的代码的计算机可读存储介质,当由处理器执行时,所述代码使得所述设备施行以下步骤:从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块cb,其中解码第一已编码纹理块包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块(A或B)和第二邻近纹理块的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于解码第一已编码纹理块cb的一个或更多预测参数;以及利用所导出的一个或更多预测参数解码第一已编码纹理块cb。
根据本发明的第四方面,提供一种包括至少一个处理器和至少一个存储器的设备,所述至少一个存储器中存储有代码,当由所述至少一个处理器执行时,所述代码使得设备施行以下步骤:从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块cb,其中解码第一已编码纹理块包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块(A或B)和第二邻近纹理块的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于解码第一已编码纹理块cb的一个或更多预测参数;以及利用所导出的一个或更多预测参数解码第一已编码纹理块cb。
根据本发明的第五方面,提供一种视频解码器,其被配置成从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块cb,其中解码第一已编码纹理块包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于解码第一已编码纹理块cb的一个或更多预测参数;以及利用所导出的一个或更多预测参数编码/解码第一已编码纹理块cb。
根据本发明的第六方面,提供一种方法,其包括:把第一未压缩纹理画面的第一未压缩纹理块cb编码成比特流的第一已编码纹理画面的第一已编码纹理块,其中编码第一未压缩纹理块cb包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块(A或B)和第二邻近纹理块的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于第一已编码纹理块cb的编码的一个或更多预测参数;以及利用所导出的一个或更多预测参数把第一未压缩纹理块cb编码成第一已编码纹理块。
根据本发明的第七方面,提供一种包括视频编码器的设备,所述视频编码器被配置成把第一未压缩纹理画面的第一未压缩纹理块cb编码成比特流的第一已编码纹理画面的第一已编码纹理块,其中编码第一未压缩纹理块cb包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于第一已编码纹理块cb的编码的一个或更多预测参数;以及利用所导出的一个或更多预测参数把第一未压缩纹理块cb编码成第一已编码纹理块。
根据本发明的第八方面,提供一种其中存储有供设备使用的代码的计算机可读存储介质,当由处理器执行时,所述代码使得所述设备施行以下步骤:把第一未压缩纹理画面的第一未压缩纹理块cb编码成比特流的第一已编码纹理画面的第一已编码纹理块,其中编码第一未压缩纹理块cb包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于第一已编码纹理块cb的编码的一个或更多预测参数;以及利用所导出的一个或更多预测参数把第一未压缩纹理块cb编码成第一已编码纹理块。
根据本发明的第九方面,提供至少一个处理器和至少一个存储器,所述至少一个存储器中存储有代码,当由所述至少一个处理器执行时,所述代码使得设备施行以下步骤:把第一未压缩纹理画面的第一未压缩纹理块cb编码成比特流的第一已编码纹理画面的第一已编码纹理块,其中编码第一未压缩纹理块cb包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于第一已编码纹理块cb的编码的一个或更多预测参数;以及利用所导出的一个或更多预测参数把第一未压缩纹理块cb编码成第一已编码纹理块。
根据本发明的第十方面,提供一种视频编码器,其被配置成把第一未压缩纹理画面的第一未压缩纹理块cb编码成比特流的第一已编码纹理画面的第一已编码纹理块,其中编码第一未压缩纹理块cb包括:选择第一邻近纹理块A和第二邻近纹理块B;获得第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B);获得在空间上与第一纹理块cb位于同一处的第一深度/像差块d(cb);把第一深度/像差块d(cb)与第一邻近深度/像差块d(A)和第二邻近深度/像差块d(B)进行比较;在从第一深度/像差块d(cb)与第一邻近深度/像差块d(A)、第二邻近深度/像差块d(B)之间的所述比较得到的相似度数值的基础上,选择第一邻近纹理块A和第二邻近纹理块B的其中之一或全部二者;从与第一邻近纹理块A和第二邻近纹理块B当中所选择的其中之一或全部二者相关联的数值导出用于第一已编码纹理块cb的编码的一个或更多预测参数;以及利用所导出的一个或更多预测参数把第一未压缩纹理块cb编码成第一已编码纹理块。
根据本发明的第十一方面,所述方法包括:利用作为第一实施例的方法的第一方法编码第一数据元素;计算对应于已编码的第一数据元素的第一成本量度Cost1;利用作为针对第一方法的替换的运动矢量预测方法的第二方法编码第二数据元素;计算对应于已编码的第二数据元素的第二成本量度Cost2;在第一和第二方法之间选择关于第一和第二成本量度Cost1和Cost2被确定为是最优的一种方法;利用所选方法编码第一和第二数据元素;通过比特流用信令传达表明所选方法的索引。
在第十一实施例的方法中,第一数据元素可以包括单一纹理块Cb或者一个已编码块集合(切片、图像、图像组)。
在第十一实施例的方法中,第二数据元素可以包括一个纹理块集合(A、B)。
在第十一实施例的方法中,所述成本度量可以是速率-失真度量或其他成本度量的复合,比如速率-失真-复杂度度量。
在第十一实施例的方法中,所述信令是在已编码数据表示的各个层级施行的。
在第十一实施例的方法中,在以下各项的至少其中之一中用信令传达所述索引:在序列参数集合处,在画面参数集合处,在切片报头处,或者与对应于特定块分割的运动信息一起。
根据本发明的第十二方面,所述方法包括:从比特流解码表明被利用于数据集合的解码的方法的索引;从比特流解码其中由索引表明的所述方法适用的已解码数据集合规范;如果比特流的解码如此规定的话,则应用作为权利要求1的方法的第一方法;如果比特流的解码如此规定的话,则应用作为针对第一方法的替换方案的运动矢量预测方法的第二方法。
附图说明
为了更好地理解本发明,下面将通过举例的方式参照附图,其中:
图1示出了立体视觉摄影机设置的简化2D模型;
图2示出了多视图摄影机设置的简化模型;
图3示出了多视图自动立体视觉显示器(ASD)的简化模型;
图4示出了基于DIBR的3DV系统的简化模型;
图5和6示出了基于TOF的深度估计系统的一个实例;
图7a和7b示出了充当对应于H.264/AVC中的MVP的候选的当前已编码块的空间和时间邻域;
图8示出了根据本发明的一个实施例的基于深度/像差信息的MVP的流程图;
图9示出了根据本发明的另一个实施例的基于深度/像差信息的MVP的流程图;
图10示意性地示出了适于采用本发明的一些实施例的电子装置;
图11示意性地示出了适于采用本发明的一些实施例的用户装备;
图12还示意性地示出了利用无线和有线网络连接而连接的采用本发明的实施例的电子装置。
13示出了块布局cb、A、B、C、D的一个实例;
图14示出了纹理数据块(cb,S,T,U)以及分别与这些块相关联的深度/像差数据d(cb)、d(S)、d(T)和d(U);
图15示出了空间上邻近的纹理数据块的概念;
图16示出了2D纹理或多视图纹理数据中的邻近块的概念;
图17示出了对应于P切片的跳过(Skip)模式下的基于深度的运动矢量竞争的一种示例性实现方式的流程图;
图18示出了对应于B切片的直接(Direct)模式下的基于深度的运动矢量竞争的一种示例性实现方式的流程图;
图19示出了可能的运动矢量预测(MVP)处理的流程图;
图20示出了非均匀采样的参考深度图像以及均匀采样的参考纹理图像;
图21示出了深度图像到另一视图中的映射的一个实例;
图22示出了在编码随机访问单元的第一从属视图之后生成初始深度图估计的一个实例;
图23示出了利用相同访问单元的已编码视图的运动参数导出针对当前画面的深度图估计的一个实例;以及
图24示出了基于已编码运动和像差矢量更新针对从属视图的深度图估计的一个实例;
具体实施方式
为了理解本发明的各个方面以及与之有关的实施例,后面将简要描述视频编码的一些紧密相关的方面。
作为可以在其中实施所述实施例的视频编码器、解码器、编码方法、解码方法和比特流结构的一个实例,在本节中将描述H.264/AVC的一些关键定义、比特流和编码结构。本发明的各个方面不限于H.264/AVC,相反,这里的描述是针对可以作为部分地或完全地实现本发明的一种可能基础而给出的。
H.264/AVC标准由国际电信联盟的电信标准化部门(ITU-T)的视频编码专家组(VCEG)的联合视频小组(JVT)以及国际标准化组织(ISO)/国际电工委员会(IEC)的移动画面专家组(MPEG)开发。H.264/AVC标准由全部两个母体标准化组织公布,并且被称作ITU-T推荐H.264和ISO/IEC国际标准14496-10,其也被称作MPEG-4第10部分高级视频编码(AVC)。H.264/AVC标准已有多个版本,每一个版本都在所述规范中集成了新的扩展或特征。这些扩展包括可扩展视频编码(SVC)和多视图视频编码(MVC)。
高效率视频编码(HEVC)是由VCEG和MPEG的联合协作组-视频编码(JCT-VC)带来的视频编码技术的另一项更加近来的发展。
在本节中描述了H.264/AVC和HEVC的一些关键定义、比特流和编码结构以及概念,以作为可以在其中实施所述实施例的视频编码器、解码器、编码方法、解码方法和比特流结构的一个实例。H.264/AVC的其中一些关键定义、比特流和编码结构以及概念与HEVC的当前开发中的草案相同,因此将在后面联合起来描述。本发明的各个方面不限于H.264/AVC或HEVC,相反,这里的描述是针对可以作为部分地或完全地实现本发明的一种可能基础而给出的。
与许多早前的视频编码标准类似,在H.264/AVC和HEVC中规定了比特流语法和语义以及针对无错比特流的解码处理。没有规定编码处理,但是编码器必须生成相符的比特流。可以利用在H.264/AVC的附录C中规定的假设参考解码器(HRD)来验证比特流与解码器一致性。所述标准包含有助于应对传输错误和损失的编码工具,但是在编码中对于所述工具的使用是可选的,并且没有对于有错比特流规定解码处理。
对应于针对H.264/AVC或HEVC编码器的输入以及H.264/AVC或HEVC解码器的输出的基本单元是画面。一个画面可以是一帧或一场(field)。一帧包括亮度样本和相应的色度样本的矩阵。当源信号被交织时,一场是一帧的交替样本行的集合,并且可以被用作编码器输入。与亮度画面相比,色度画面可以被子采样。举例来说,在4:2:0采样模式中,沿着全部两个坐标轴的色度画面的空间分辨率是亮度画面的一半,因此一个宏块对于每个色度分量包括一个8x8色度样本块。一个画面被分割成一个或更多切片组,并且一个切片组包含一个或更多切片。一个切片由特定切片组内的光栅扫描中的整数个接连排序的宏块构成。
在H.264/AVC中,一个宏块是一个16x16亮度样本块和相应的色度样本块。举例来说,在4:2:0采样模式中,一个宏块对于每个色度分量包括一个8x8色度样本块。在H.264/AVC中,一个画面被分割成一个或更多切片组,并且一个切片组包含一个或更多切片。在H.264/AVC中,一个切片由特定切片组内的光栅扫描中的整数个接连排序的宏块构成。
在一项草案HEVC标准中,视频画面被划分成覆盖该画面的区域的各个编码单元(CU)。一个CU由定义对应于该CU的样本的预测处理的一个或更多预测单元(PU)以及定义对应于所述CU中的样本的预测误差编码处理的一个或更多变换单元(TU)构成。通常来说,一个CU由一个正方形样本块构成,其尺寸可以从一个预定义的可能CU尺寸集合当中选择。具有最大允许尺寸的CU通常被称作LCU(最大编码单元),并且视频画面被划分成各个无重叠的LCU。一个LCU可以进一步被分解成更小CU的组合,这例如是通过递归地分解LCU和所得到的CU而实现的。每一个所得到的CU通常具有至少一个PU以及与之相关联的至少一个TU。每一个PU和TU可以进一步被分解成更小的PU和TU,以便分别提高预测处理和预测误差编码处理的粒度。PU分解可以通过将CU分解成四个等尺寸正方形PU来实现,或者通过按照对称或非对称的方式将CU垂直或水平分解成两个矩形PU来实现。通常在比特流中用信令传达图像到CU的划分以及CU到PU和TU的划分,从而允许解码器再现这些单元的预期结构。
在一项草案HEVC标准中,一个画面可以被分割成各个贴片(tiles),所述贴片是矩形的并且包含整数个LCU。在HEVC的当前开发中的草案中,通过分割成贴片而形成一个矩形栅格,其中各个贴片彼此之间的高度和宽度差异最多是一个LCU。在一项草案HEVC中,一个切片由整数个CU构成。在贴片内或者在画面内(如果未使用贴片的话)按照LCU的光栅扫描顺序来扫描各个CU。在一个LCU内,各个CU具有特定的扫描顺序。
在HEVC的开发中草案(WD)5中,如下定义了对应于画面分割的一些关键定义和概念。一项分割被定义为一个集合到各个子集的划分,其中所述集合的每一个元素确切地处于其中一个子集中。
HEVC WD5中的基本编码单元是树块(treeblock)。一个树块是一个具有三个样本阵列的画面的一个NxN亮度样本块和两个相应的色度样本块,或者是单色画面或利用三个单独的颜色平面编码的画面的一个NxN样本块。可以针对不同的编码和解码处理来对树块进行分割。一项树块分割是从对应于具有三个样本阵列的画面的树块的分割而得到的一个亮度样本块和两个相应的色度样本块,或者是从对应于单色画面或者利用三个单独的颜色平面编码的画面的树块的分割而得到的一个亮度样本块。每一个树块被指派用以标识出块尺寸的分割信令,以用于帧内或帧间预测以及用于变换编码。所述分割是递归四叉树分割。所述四叉树的根部与树块相关联。所述四叉树被分解直到叶片,其被称作编码节点。编码节点是两棵树的根节点,即预测树和变换树。预测树指定预测块的位置和尺寸。预测树和相关联的预测数据被称作预测单元。变换树指定变换块的位置和尺寸。变换树和相关联的变换数据被称作变换单元。对应于亮度和色度的分解信息对于预测树是完全相同的,并且对于变换树可以是或者可以不是完全相同的。所述编码节点以及相关联的预测和变换单元共同形成一个编码单元。
在HEVC WD5中,画面被划分成切片和贴片。一个切片可以是一个树块序列,但是(在提到所谓的细粒度切片时)其边界也可以处于树块内的变换单元与预测单元重合的位置处。一个切片内的各个树块按照光栅扫描顺序被编码和解码。对于主要已编码画面,每一个画面到各个切片的划分是一项分割。
在HEVC WD5中,一个贴片被定义为一同出现在一列和一行中的整数个树块,所述树块在该贴片内按照光栅扫描被接连排序。对于主要已编码画面,每一个画面到各个贴片的划分是一项分割。各个贴片在该画面内按照光栅扫描被接连排序。虽然一个切片包含在一个贴片内的光栅扫描中是接连的各个树块,但是这些树块在画面内的光栅扫描中不一定是接连的。各个切片和贴片不需要包含相同的树块序列。一个贴片可以包括被包含在多于一个切片中的树块。类似地,一个切片可以包括被包含在几个贴片中的树块。
在H.264/AVC和HEVC中,可以禁用跨越切片边界的画面内预测。因此,切片可以被视为把一个已编码画面分解成各个独立可解码构成部分的一种方式,因此切片常常被视为用于传输的基本单元。在许多情况下,编码器可以在比特流中表明关闭跨越切片边界的哪些画面内预测类型,并且解码器操作例如在断定哪些预测来源可用时将这一信息纳入考虑。举例来说,如果一个相邻宏块或CU驻留在一个不同切片中,则来自该相邻宏块或CU的样本可以被认为对于帧内预测不可用。
对应于H.264/AVC或HEVC编码器的输出以及H.264/AVC或HEVC解码器的输入的基本单元是网络抽象层(NAL)单元。对于部分地丢失或破坏的NAL单元的解码通常很困难。为了通过面向分组的网络传送或者存储到结构化文件中,NAL单元通常被封装到分组或类似结构中。在H.264/AVC或HEVC中已经规定了字节流格式以用于不提供成帧结构的传输或存储环境。字节流格式通过在每一个NAL单元前方附着起始代码而将各个NAL单元彼此分开。为了避免对于NAL单元边界的错误检测,编码器运行面向字节的起始代码模仿防止算法,其在起始代码原本将受到破坏的情况下向NAL单元有效载荷添加一个模仿防止字节。为了实现面向分组与面向流的系统之间的直接网关操作,总是施行起始代码模仿防止操作,而不管是否使用了字节流格式。
H.264/AVC的一些简档允许对于每个已编码画面使用多达八个切片组。当使用多于一个切片组时,所述画面被分割成各个切片组映射图单元,其在使用宏块自适应帧-场(MBAFF)编码时等于两个垂直地接连的宏块,在其他情况下则等于一个宏块。画面参数集合包含作为将画面的每一个切片组映射图单元与特定切片组相关联的基础的数据。一个切片组可以包含任何切片组映射图单元,其中包括非邻近的映射图单元。当对于一个画面规定多于一个切片组时,使用所述标准的灵活宏块排序(FMO)特征。
在H.264/AVC中,一个切片由特定切片组内的按照光栅扫描顺序的一个或更多接连宏块(或者在使用MBAFF时是宏块对)构成。如果仅仅使用了一个切片组,则H.264/AVC切片包含按照光栅扫描顺序的接连宏块,因此类似于许多先前编码标准中的切片。在H.264/AVC的一些简档中,一个已编码画面的各个切片可以按照相对于彼此的任意顺序出现在比特流中,这杯称作任何切片排序(ASO)特征。否则,各个切片在比特流中必须依照光栅扫描顺序。
NAL单元由报头和有效载荷构成。NAL单元报头表明NAL单元的类型,以及包含在NAL单元中的已编码切片是参考换面还是非参考画面的一部分。在H.264/AVC和HEVC中,NAL单元报头表明NAL单元的类型,以及包含在NAL单元中的已编码切片是参考画面还是非参考画面的一部分。H.264/AVC包括一个2比特nal_ref_idc语法元素,其在等于0时表明包含在NAL单元中的已编码切片是非参考画面的一部分,并且在大于0时表明包含在NAL单元中的已编码切片是参考画面的一部分。一项草案HEVC包括一个1比特nal_ref_idc语法元素,其也被称作nal_ref_flag,其在等于0时表明包含在NAL单元中的已编码切片是非参考画面的一部分,并且在等于1时表明包含在NAL单元中的已编码切片是参考画面的一部分。此外,对应于SVC和MVC NAL单元的报头还包含与可扩展性和多视图分级结构有关的各种指示。
在H.264/AVC和HEVC中,NAL单元可以被归类到视频编码层(VCL)NAL单元和非VCL NAL单元中。
在H.264/AVC中,VCL NAL单元是已编码切片NAL单元、已编码切片数据分割NAL单元或者VCL前缀NAL单元。已编码切片NAL单元包含代表一个或更多已编码宏块的语法元素,其中每一个已编码宏块对应于未压缩画面中的一个样本块。存在四种类型的已编码切片NAL单元:即时解码刷新(IDR)画面中的已编码切片,非IDR画面中的已编码切片,辅助已编码画面(比如α平面)的已编码切片,以及已编码切片扩展(对应于不处在基础层中的SVC切片或者不处在基础视图中的MVC切片)。由三个已编码切片数据分割NAL单元构成的一个集合包含与一个已编码切片相同的语法元素。已编码切片数据分割A包括一个切片的宏块报头和运动矢量,而已编码切片数据分割B和C则分别包括对应于帧内宏块和帧间宏块的已编码残差数据。应当提到的是,对于切片数据分割的支持仅被包括在H.264/AVC的一些简档中。VCL前缀NAL单元在SVC和MVC比特流中处于基础层的已编码切片之前,并且包含关于相关联的已编码切片的可扩展性分级结构的指示。
在HEVC中,已编码切片NAL单元包含代表一个或更多CU的语法元素。在HEVC中,已编码切片NAL单元可以被表明是即时解码刷新(IDR)画面中的已编码切片或非IDR画面中的已编码切片。在HEVC中,已编码切片NAL单元可以被表明是纯净解码刷新(CDR)画面(其也可以被称作纯净随机访问画面)中的已编码切片。
非VCL NAL单元例如可以是以下类型的其中之一:序列参数集合,画面参数集合,补充增强信息(SEI)NAL单元,访问单元分界符,序列NAL单元的末尾,流NAL单元的末尾,或者填充数据NAL单元。各个参数集合对于已解码画面的重建至关重要,而其他非VCL NAL单元对于已解码样本数值的重建则不必要,而是用于后面给出的其他目的。
经过已编码视频序列而未发生改变的参数被包括在序列参数集合中。除了对于解码处理至关重要的参数之外,所述序列参数集合还可以可选地包含视频可用性信息(VUI),其包括对于缓冲、画面输出定时、渲染和资源保留非常重要的参数。一个画面参数集合包含在几个已编码画面中可能不会发生改变的参数。在H.264/AVC比特流中不存在画面报头,相反在每一个切片报头中重复频繁改变的画面层级数据,并且画面参数集合携带其余的画面层级参数。H.264/AVC语法允许序列和画面参数的许多实例,并且每一个实例由一个唯一标识符来标识。每一个切片报头包括对于包含该切片的画面的解码所活跃的画面参数集合的标识符,并且每一个画面参数集合包含活跃序列参数集合的标识符。因此,画面和序列参数集合的传输不必与切片的传输精确地同步。相反,活跃的序列和画面参数集合在其被参考之前的任意时刻被接收到,从而允许利用与被用于切片数据的协议相比更加可靠的传输机制来传输各个参数集合。举例来说,各个参数集合可以被包括作为对应于H.264/AVC实时传输协议(RTP)会话的会话描述中的参数。如果各个参数集合被带内发送,则可以重复所述参数集合以改进错误鲁棒性。
在一项草案HEVC中,还存在第三种类型的参数集合,其在这里被称作适配参数集合(APS),其包括在几个已编码切片中可能不会发生改变的参数。在一项草案HEVC中,APS语法结构包括与基于情境的自适应二进制算术编码(CABAC)、自适应样本偏移量、自适应循环过滤以及解块过滤有关的参数或语法元素。在一项草案HEVC中,APS是一个NAL单元,并且在没有来自任何其他NAL单元的参考或预测的情况下被编码。被称作aps_id语法元素的一个标识符被包括在APS NAL单元中,并且被包括和使用在切片报头中以指向特定APS。
SEI NAL单元包含一条或更多条SEI消息,其对于输出画面的解码并不需要,但是有助于相关的处理,比如画面输出定时、渲染、错误检测、错误隐藏以及资源保留。在H.264/AVC和HEVC中规定了几条SEI消息,并且用户数据SEI消息允许各个组织和公司规定供其自身使用的SEI消息。H.264/AVC和HEVC包含对应于所规定的SEI消息的语法和语义,但是没有定义用于在接收方处应对所述消息的处理。因此,编码器在创建SEI消息时需要遵循H.264/AVC或HEVC标准,并且不需要符合H.264/AVC或HEVC标准的解码器来处理SEI消息以获得输出顺序一致性。在H.264/AVC和HEVC中包括SEI消息的语法和语义的其中一个原因是允许不同的系统规范按照完全相同的方式来解释所述补充信息并且从而互操作。各种系统规范应当可以在编码端和解码端都使用特定SEI消息,此外还可以规定用于在接收方处应对特定SEI消息的处理。
H.264/AVC中的已编码画面由对于解码该画面所需要的VCL NAL单元构成。一个已编码画面可以是主要已编码画面或冗余已编码画面。主要已编码画面被用在有效比特流的解码处理中。在H.264/AVC中,冗余已编码画面是应当只有在无法成功解码主要已编码画面的情况下才被解码的冗余表示。
在H.264/AVC中,一个访问单元由主要已编码画面和与之相关联的那些NAL单元构成。各个NAL单元在访问单元内的出现顺序受到如下约束。可选的访问单元分界符NAL单元可以表明访问单元的起始。其后是零个或更多个SEI NAL单元。随后出现主要已编码画面的各个已编码切片或切片数据分割,随后是对应于两个或更多个冗余已编码画面的已编码切片。
MVC中的访问单元被定义成按照解码顺序的接连的各个NAL单元的集合,并且确切地包含由一个或更多视图组成部分构成的一个主要已编码画面。除了主要已编码画面之外,访问单元还可以包含一个或更多冗余已编码画面、一个辅助已编码画面或者不包含已编码画面的切片或切片数据分割的其他NAL单元。对于访问单元的解码总是得到由一个或更多已解码视图组成部分构成的一个已解码画面。换句话说,MVC中的访问单元包含对应于一个输出时间实例的各个视图的视图组成部分。
MVC中的视图组成部分被称作单一访问单元中的视图的已编码表示。锚画面是其中所有切片都只能参考相同访问单元内的切片的已编码画面,也就是说可以使用视图间预测,但是不使用帧间预测,并且输出顺序中的所有在后已编码画面不使用来自在输出顺序中处于该已编码画面之前的任何画面的帧间预测。视图间预测可以被用于作为非基础视图的一部分的IDR视图组成部分。MVC中的基础视图是在一个已编码视频序列中具有最小视图顺序索引数值的视图。基础视图可以独立于其他视图被解码,并且不使用视图间预测。基础视图可以由仅支持单视图简档的H.264/AVC解码器解码,比如H.264/AVC的基线简档(Baseline Profile)和高端简档(HighProfile)。
在MVC标准中,MVC解码处理的许多子处理使用H.264/AVC标准的对应的子处理,这是通过将H.264/AVC标准的子处理规范中的术语“画面”、“帧”和“场”分别替换成“视图组成部分”、“帧视图组成部分”和“场视图组成部分”。同样地,后面常常使用术语“画面”、“帧”和“场”来分别指代“视图组成部分”、“帧视图组成部分”和“场视图组成部分”。
一个已编码视频序列被定义成从一个IDR访问单元(包含)到下一个IDR访问单元(排除)或者比特流的末尾二者当中更早出现的一项的按照解码顺序的各个接连的访问单元的序列。
一个画面组(GOP)及其特性可以被如下定义。一个GOP可以被解码,而不管任何先前的画面是否被解码。一个开放GOP是这样一个画面组,其中当解码从该开放GOP的初始帧内画面开始时,在输出顺序中处在初始帧内画面之前的画面可能无法被正确解码。换句话说,一个开放GOP的画面可以(在帧间预测中)参考属于一个先前GOP的画面。H.264/AVC解码器可以从H.264/AVC比特流中的恢复点SEI消息识别出开始一个开放GOP的帧内画面。一个封闭GOP是这样一个画面组,其中当解码从该封闭GOP的初始帧内画面开始时,所有画面都可以被正确解码。换句话说,在封闭GOP中没有画面参考先前GOP中的任何画面。在H.264/AVC中,一个封闭GOP从一个DIR访问单元开始。其结果是,与开放GOP结构相比,封闭GOP结构具有更高错误弹性潜力,但是其代价是压缩效率的可能降低。开放GOP编码结构在压缩方面潜在地更加高效,这是由于在参考画面选择方面具有更大灵活性。
H.264/AVC的比特流语法表明特定画面是否对应于任何其他画面的帧间预测的参考画面。在H.264/AVC中,任何编码类型(I,P,B)的画面可以是参考画面或非参考画面。NAL单元报头表明该NAL单元的类型以及包含在该NAL单元中的已编码切片是参考画面还是非参考画面的一部分。
许多混合视频编解码器(包括H.264/AVC和HEVC)在两个阶段中编码视频信息。在第一阶段中,对特定画面区域或“块”中的像素或样本数值进行预测。例如可以通过运动补偿机制对这些像素或样本数值进行预测,所述运动补偿机制改进了在其中一个先前已编码的视频帧中找到和表明与正被编码的该块紧密对应的一个区域。此外,可以通过改进找到和表明空间区段关系的空间机制来预测像素或样本数值。
使用来自先前已编码的图像的图像信息的预测方法也可以被称作帧间预测方法,其还可以被称作时间预测和运动补偿。使用同一图像内的图像信息的预测方法也可以被称作帧内预测方法。
第二阶段是对所预测的像素或样本块与原始像素或样本块之间的误差的其中之一进行编码。这可以通过利用指定的变换对所述像素或样本数值的差异进行变换而实现的。这一变换可以是离散余弦变换(DCT)或者其某种变型。在对所述差异进行变换之后,对经过变换的差异进行量化和熵编码。
通过改变量化处理的保真度,编码器可以控制像素或样本表示的准确度(即画面的视觉质量)与所得到的已编码视频表示的尺寸(即文件尺寸或传输比特率)之间的平衡。
解码器重建输出视频,这是通过应用类似于由编码器使用来形成所述像素或样本块的预测表示的预测机制(利用由编码器创建并且存储在图像的已压缩表示中的运动或空间信息)以及预测误差解码(用以恢复空间域内的已量化预测误差信号的预测误差编码的逆操作)而实现的。
在应用像素或样本预测和误差解码处理之后,解码器组合所述预测和预测误差信号(像素或样本数值)从而形成输出视频帧。
解码器(和编码器)还可以应用附加的滤波处理,以便在传递输出视频以供显示和/或将其存储为视频序列中的即将到来的画面的预测参考之前改进输出视频的质量。
在包括H.264/AVC和HEVC在内的许多视频编解码器中,运动信息由与每一个经过运动补偿的图像块相关联的运动矢量表示。这些运动矢量当中的每一个表示待编码(在编码器中)或待解码(在解码器处)画面中的所述图像块与其中一个先前已编码或已解码的图像(或画面)中的预测来源块之间的位移。与许多其他视频压缩标准一样,H.264/AVC和HEVC把一个画面划分成由各个矩形构成的一个网格,对于帧间预测为其中每一个矩形表明其中一个参考画面中的类似块。预测块的位置被编码成表明该预测块与被编码块相比的位置的运动矢量。
可以利用以下因素当中的一项或更多项来表征帧间预测处理。
运动矢量表示的准确度。举例来说,运动矢量可以具有四分之一像素准确度,并且利用有限脉冲响应(FIR)滤波器获得分数像素位置处的样本数值。
对应于帧间预测的块分割。包括H.264/AVC和HEVC在内的许多编码标准允许选择在编码器中选择为之应用运动矢量以进行运动补偿的块的尺寸和形状,并且在比特流中表明所选尺寸和形状,从而使得解码器可以再现在编码器中进行的运动补偿预测。
在包括H.264/AVC的许多编码标准中,对应于帧间预测的基本单元是宏块,其对应于亮度样本和相应的色度样本的一个16x16块。在H.264/AVC中,一个宏块可以进一步被划分成16x8、8x16和8x8宏块分割,并且8x8分割可以进一步被划分成4x4、4x8或8x4子宏块分割,并且对于每一项分割编码一个运动矢量。后面使用一个块来指代对应于帧间预测的单元,其在分割结构中可以处于不同层级。例如在H.264/AVC的情况下,后面的一个块指代宏块、宏块分割或子宏块分割当中的被用作对应于帧间预测的单元的任一项。
用于帧间预测的参考画面的数目。帧间预测的来源是先前已解码的画面。包括H.264/AVC和HEVC在内的许多编码标准允许存储多个参考画面以用于帧间预测,以及在宏块或宏块分割的基础上选择所使用的参考画面。
运动矢量预测。为了在比特流中高效地表示运动矢量,可以关于特定于块的预测运动矢量对各个运动矢量进行差分编码。在许多视频编解码器中,按照预定义的方式创建预测运动矢量,例如通过计算邻近块的已编码或已解码运动矢量的中值。通常禁用跨越切片边界的运动矢量的差分编码。
多假设运动补偿预测。H.264/AVC和HEVC允许使用P和SP切片(其在这里被称作单向预测切片)中的单一预测块,或者对应于双向预测切片(其也被称作B切片)的两个运动补偿预测块的线性组合。B切片中的各个单独的块可以被双向预测、单向预测或者帧内预测,P或SP切片中的各个单独的块可以被单向预测或帧内预测。在H.264/AVC和HEVC中,对应于双向预测画面的参考画面不限于输出顺序中的后续画面和先前画面,而是可以使用任何参考画面。
在例如H.264/AVC和HEVC之类的许多编码标准中,对于P切片构造一个参考画面列表,其被称作参考画面列表0,并且对于B切片构造两个参考画面列表,即列表0和列表1。对于B切片,当在前向方向上进行预测时可以是指从参考画面列表0中的参考画面进行预测,并且后向方向上的预测可以是指从参考画面列表1中的参考画面进行预测,但是用于预测的参考画面关于彼此或者关于当前画面可以具有任何解码或输出顺序。
加权预测。许多编码标准对于帧间(P)画面的预测块使用预测权重1,并且对于B画面的每一个预测块使用0.5(从而导致求平均)。例如H.264/AVC和HEVC之类的许多编码标准对于P和B切片都允许加权预测。在显式加权预测中,权重与画面顺序计数成比例,而在隐式加权预测中,预测权重被隐含地表明。
在许多视频编解码器中,首先利用变换内核(比如DCT)对运动补偿之后的预测残差进行变换并且随后对其进行编码。这样做的原因在于,在所述残差当中常常仍然存在一定相关性,并且变换在许多情况下可以帮助降低这一相关性并且提供更加高效的编码。
在一项草案HEVC中,每一个PU具有与之相关联的预测信息,其定义对于该PU内的像素将应用何种类型的预测(例如对应于帧间预测的PU的运动矢量信息和对应于帧内预测的PU的帧内预测方向性信息)。类似地,每一个TU具有与之相关联的信息来描述对应于所述TU内的样本的预测误差编码处理(其中例如包括DCT系数信息)。通常在CU层级用信令传达对于每一个CU是否应用预测误差编码。在没有与CU相关联的预测误差残差的情况下,可以认为对于所述CU没有TU。
在一些编码格式和编解码器中,在所谓的短期与长期参考画面之间做出区分。这一区分可能会影响一些解码处理,比如时间直接模式下的运动矢量缩放或者隐式加权预测。如果对于时间直接模式所使用的参考画面都是短期参考画面,则可以根据当前画面与每一个参考画面之间的POC差异对用在预测中的运动矢量进行缩放。但是如果用于时间直接模式的至少一个参考画面是长期参考画面,则使用运动矢量的默认缩放,例如可以使用把运动缩放到一半。类似地,如果对于隐式加权预测使用了短期参考画面,则可以根据当前画面的POC与参考画面的POC之间的POC差异来对预测权重进行缩放。但是如果对于隐式加权预测使用了长期参考画面,则可以使用默认预测权重,比如在对应于双向预测块的隐式加权预测中是0.5。
H.264/AVC规定了用于已解码参考画面标记的处理,以便控制解码器中的存储器消耗。在序列参数集合中决定被用于帧间预测的参考画面的最大数目,其被称作M。当对参考画面进行解码时,其被标记为“被用于参考”。如果对于参考画面的解码导致多于M个画面被标记为“被用于参考”,则将至少一个画面标记为“未被用于参考”。对于已解码参考画面标记存在两种类型的操作:自适应存储器控制和滑动窗口。在画面的基础上选择对应于已解码参考画面标记的操作模式。自适应存储器控制允许通过隐含方式用信令传达将哪些画面标记为“未被用于参考”,并且还可以将长期索引指派给短期参考画面。自适应存储器控制要求在比特流中存在存储器管理控制操作(MMCO)参数。如果使用滑动窗口操作模式并且有M个画面被标记为“被用于参考”,则把作为被标记为“被用于参考”的那些短期参考画面当中的第一个已解码画面的短期参考画面标记为“未被用于参考”。换句话说,滑动窗口操作模式导致短期参考画面之间的先进先出缓冲操作。
H.264/AVC中的其中一项存储器管理控制操作使得将除了当前画面之外的所有参考画面标记为“未被用于参考”。即时解码刷新(IDR)画面仅包含帧内编码的切片,并且导致参考画面的类似“重置”。
在HEVC的开发中的草案5中,去除了参考画面标记语法结构和有关的解码处理,并且出于类似的目的替换地使用参考画面集合(PRS)语法结构和解码处理。对于一个画面有效或活跃的参考画面集合包括被用作该画面的参考的所有参考画面,以及对于解码顺序中的任何后续画面被保持标记为“被用于参考”的所有参考画面。参考画面集合存在六个子集,其被称作RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll。对于所述六个子集的注释如下。“Curr”指代被包括在当前画面的参考画面中的参考画面,因此其可以被用作当前画面的帧间预测参考。“Foll”指代未被包括在当前画面的参考画面列表中的参考画面,但是其可以被用在解码顺序中的后续画面中以作为参考画面。“St”指代短期参考画面,其POC数值的特定数目的最低有效位当中通常可以是完全相同的。“Lt”指代长期参考画面,其被特别标记出来并且相对于当前画面的POC数值差异通常大于由所提到的特定数目的最低有效位所能表示的差异。“0”指代其POC数值小于当前画面的那些参考画面。“1”指代其POC数值大于当前画面的那些参考画面。RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0和RefPicSetStFoll1被统称为所述参考画面集合的短期子集。RefPicSetLtCurr和RefPicSetLtFoll被统称为所述参考画面集合的长期子集。参考画面集合可以在画面参数集合中规定,并且通过针对该参考画面集合的索引被使用在切片报头中。参考画面集合也可以被规定在切片报头中。参考画面集合的长期子集通常只被规定在切片报头中,而相同参考画面集合的短期子集则可以被规定在画面参数集合或切片报头中。被包括在由当前切片所使用的参考画面集合中的画面被标记为“被用于参考”,并且不处在由当前切片所使用的参考画面集合中的画面则被标记为“未被用于参考”。如果当前画面是一个IDR画面,则RefPicSetStCurr0、RefPicSetStCurr1、RefPicSetStFoll0、RefPicSetStFoll1、RefPicSetLtCurr和RefPicSetLtFoll都被设定为空。
已解码画面缓冲器(DBP)可以被使用在编码器和/或解码器中。缓冲已解码画面有两个原因,即用于帧间预测中的参考以及用于把各个已解码画面重排序成输出顺序。由于H.264/AVC对于参考画面标记和输出重排序都提供了很高的灵活性,因此用于参考画面缓冲和输出画面缓冲的分开的缓冲器可能会浪费存储器资源。因此,DPB可以包括用于参考画面和输出重排序的统一已解码画面缓冲处理。当一个已解码画面不再被用作参考并且不再被需要输出时可以将其从DPB中移除。
在H.264/AVC和HEVC的许多编码模式中,利用针对参考画面的索引来表明用于帧间预测的参考画面。利用可变长度编码来对所述索引进行编码,也就是说索引越小,相应的语法元素就变得越短。
例如草案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)采用所述合并机制,在这种情况下,可以利用预测残差来改进预测质量。这种类型的预测模式通常被称作帧间合并模式。
在两个步骤中构造参考画面列表:首先生成初始参考画面列表。例如可以在frame_num、POC、temporal_id和/或参考画面集合的基础上生成初始参考画面列表。其次可以通过包含在切片报头中的参考画面列表重排序(RPLR)命令对初始参考画面列表进行重排序。RPLR命令表明被排序到对应的参考画面列表的开头的画面。如果使用了参考画面集合,则可以把参考画面列表0初始化成首先包含RefPicSetStCurr0,随后是RefPicSetStCurr1,随后是RefPicSetLtCurr。参考画面列表1可以被初始化成首先包含RefPicSetStCurr1,随后是RefPicSetStCurr0。可以通过参考画面列表修改语法结构来修改初始参考画面列表,其中可以通过针对所述列表的条目索引来标识出初始参考画面列表中的各个画面。
可以基于参考画面列表0和/或参考画面列表1来生成合并列表,这例如是利用包括在切片报头语法中的参考画面列表组合语法结构而实现的。可以存在由编码器创建到比特流中的参考画面列表组合语法结构,其由解码器从比特流中解码并且表明合并列表的内容。所述语法结构可以表明将参考画面列表0和参考画面列表1组合成附加的参考画面列表组合以用于被单向预测的预测单元。所述语法结构可以包括一个标志,其在等于特定数值时表明参考画面列表0与参考画面列表1完全相同,从而把参考画面列表0用作所述参考画面列表组合。所述语法结构可以包括一个条目列表,其中每一个条目指定一个参考画面列表(列表0或列表1)以及针对所指定的列表的参考索引,其中一个条目指定将被包括在合并列表中的参考画面。
在H.264/AVC中,frame_num语法元素被用于与多个参考画面相关联的各种解码处理。在H.264/AVC中,对应于IDR画面的frame_num的数值是0。对应于非IDR画面的frame_num的数值等于解码顺序中的前一个参考画面的frame_num递增1(以模运算进行,也就是说在frame_num的最大数值之后,frame_num的数值绕回到0)。
在H.264/AVC和HEVC中,对于每一个画面导出一个画面顺序计数(POC)数值,其对于输出顺序中相对于前一个IDR画面或者包含将所有画面标记为“未被用于参考”的存储器管理控制操作的画面的递增画面位置是非递减的。因此,POC表明画面的输出顺序。其也被用在解码处理中以用于双向预测切片的时间直接模式下的运动矢量的隐含缩放,用于加权预测中的隐含地导出的权重,以及用于B切片的参考画面列表初始化。此外,POC被用在输出顺序一致性的验证中。
在MVC中,在序列参数集合(SPS)MVC扩展中规定了视图从属性。对应于锚画面和非锚画面的从属性被独立地规定。因此,锚画面和非锚画面可以具有不同的视图从属性。但是对于参考相同SPS的画面集合来说,所有锚画面具有相同的视图从属性,并且所有非锚画面具有相同的视图从属性。此外,在SPS MVC扩展中,对于被用作参考画面列表0中的参考画面的视图以及对于被用作参考画面列表1中的参考画面的视图,分开用信令传达从属视图。
在MVC中,在网络抽象层(NAL)单元报头中存在一个“inter_view_flag”标志,其表明当前画面不被用于或者被允许用于其他视图中的画面的视图间预测。被用作视图间预测参考(即具有等于1的“inter_view_flag”)的非参考画面(其“nal_ref_idc”等于0)被称作仅视图间参考画面。其“nal_ref_idc”大于0并且被用于视图间预测参考(即具有等于1的“inter_view_flag”)的画面被称作视图间参考画面。
在MVC中,视图间预测由纹理预测支持(也就是说所重建的样本数值可以被用于视图间预测),并且只有与当前视图组成部分相同的输出时间实例(即相同的访问单元)的已解码视图组成部分被用于视图间预测。所重建的样本数值被用在视图间预测中这一事实也意味着MVC利用了多循环解码。换句话说,对于每一个视图施行运动补偿和已解码视图组成部分重建。
在MVC中,构造参考画面列表的处理可以概括如下。首先,在两个步骤中构造初始参考画面列表:i)正如在H.264/AVC所做的那样,构造包括被标记为“被用于参考”并且属于与当前切片相同的视图的所有短期和长期参考画面的初始参考画面列表。为了简单起见将这些短期和长期参考画面成为视图内参考。ii)随后,根据在活跃SPS中表明的视图从属性顺序和“inter_view_flag”,把视图间参考画面和仅视图间参考画面附加在视图内参考之后,从而形成一个初始参考画面列表。
在生成MVC中的初始参考画面列表之后,可以通过参考画面列表重排序(RPLR)命令将初始参考画面列表重排序,所述命令可以被包括在切片报头中。RPLR处理可以将视图内参考画面、视图间参考画面和仅视图间参考画面重排序成不同于初始列表中的顺序。初始列表和重排序之后的最终列表都必须仅包含特定数目的条目,所述特定数目由切片报头或者该切片所涉及的画面参数集合中的一个语法元素表明。
参考表示例如利用普通摄影机捕获的普通视频内容的视图的纹理视图通常适于在显示器上渲染。
深度增强视频指的是具有与深度视频相关联的一个或更多视图的纹理视频,其中所述深度视频具有一个或更多深度视图。有若干种方法可被用于表示深度增强视频,其中包括使用视频加深度(V+D)、多视图视频加深度(MVD)以及分层深度视频(LDV)。在视频加深度(V+D)表示中,单一纹理视图和对应的深度视图分别被表示为纹理画面和深度画面的序列。MVD表示包含一定数目的纹理视图和对应的深度视图。在LDV表示中,中心视图的纹理和深度被按照传统方式表示,而其他视图的纹理和深度则被部分地表示,并且仅仅覆盖对于中间视图的正确视图合成所需的去遮挡的区域。
深度增强视频的编码方式可以使得纹理和深度被彼此独立地编码。举例来说,纹理视图可以被编码为一个MVC比特流,深度视图可以被编码为另一个MVC比特流。或者深度增强视频的编码方式可以使得纹理和深度被联合编码。当对于深度增强视频应用纹理和深度视图的联合编码时,从在深度画面的解码处理中获得的深度画面或数据元素的一些已解码样本预测或导出用于解码纹理画面的纹理画面或数据元素的一些已解码样本。替换地或附加地,从在纹理画面的解码处理中获得的纹理画面或数据元素的一些已解码样本预测或导出用于解码深度画面的深度画面或数据元素的一些已解码样本。
在用于深度增强视频的纹理和深度联合编码的情况下,可以在编解码器的循环中利用视图合成,从而提供视图合成预测(VSP)。在VSP中,利用DIBR或视图合成算法并且利用纹理和深度信息形成例如VSP参考画面之类的预测信号。举例来说,可以在参考画面列表中引入合成画面(即VSP参考画面),其方式类似于视图间参考画面和仅视图间参考画面。替换地或附加地,对应于特定预测块的特定VSP预测模式可以由编码器决定,由编码器在比特流中表明,并且由解码器从比特流中推断使用。
在MVC中,帧间预测和视图间预测都使用基本上相同的运动补偿预测处理。视图间参考画面和仅视图间参考画面在不同的预测处理中基本上被作为长期参考画面对待。类似地,视图合成预测的实现方式可以使其使用与帧间预测和视图间预测基本上相同的运动补偿预测处理。为了与仅在单一视图内发生而没有任何VSP的运动补偿预测进行区分,包括混合帧间预测、帧间预测和/或视图合成并且能够从中灵活地进行选择的运动补偿预测在这里被称作混合方向运动补偿预测。由于MVC和MVD中的参考画面列表可以包含多于一种类型的参考画面,即帧间参考画面(其也被称作视图内参考画面)、视图间参考画面、仅视图间参考画面和VSP参考画面,因此定义术语“预测方向”来表明对于视图内参考画面(时间预测)、视图间预测或VSP的使用。举例来说,编码器可以为特定块选择指向一个视图间参考画面的参考索引,从而对于该块的预测方向是视图间预测。
在H.264/AVC/MVC规定的运动矢量(MV)预测利用存在于相同图像的相邻块中(空间相关性)或者存在于先前已编码的图像中(时间相关性)的相关性。通过运动估计和运动补偿处理来估计当前已编码块(cb)的运动矢量(MV),并且按照差分脉冲代码调制(DPCM)方式对其进行编码,并且按照运动矢量预测/预测值(MVp)与实际MV之间的残差或运动矢量差异(MVd)的形式来发送,即MVd(x,y)=MV(x,y)-MVp(x,y)。可以在与垂直残差分量MVd(y)=MV(y)-MVp(y)分开的代码字中编码并发送水平残差分量MVd(x)=MV(x)-MVp(x)。
在H.264/AVC中,利用中值或定向预测从空间相邻块差分编码对应于P宏块或宏块分割(块cb,参见图13)的运动矢量分量MVd(x)和MVd(y),其中一个相邻块可以是宏块、宏块分割或子宏块分割。图13示出了对应于当前块cb的空间相邻块的标记。在H.264/AVC中,块A到D可以被用作各种预测模式的运动矢量预测来源。在其他编码方法中,可以将其他相邻块(比如块E)用作运动矢量预测来源。
当cb的参考索引与由当前宏块分割的形状及其在当前宏块内的位置所决定的某些空间相邻块中相同时,定向运动矢量预测被用于特定形状的宏块分割,即8x16和16x8。在定向运动矢量预测中,特定块的运动矢量被取作对应于当前宏块分割的运动矢量预测值。
对于相邻块A到C相对于当前块cb的位置的说明请参照图13。在MVC中也得到继承的H.264/AVC的中值运动矢量预测中,首先把处于当前块cb的正上方(块B)、对角线右上方(块C)以及正左侧(块A)的相邻块的参考索引与cb的参考索引进行比较。如果块A、B和C的参考索引当中有且仅有一项等于cb的参考索引,则对应于cb的运动矢量预测值等于其参考索引与cb的参考索引相等的块A、B或C的运动矢量。否则,作为块A、B和C的运动矢量的中值数值导出对应于c变得运动矢量预测值,而不管其参考索引数值。图7a示出了块A、B和C在空间上与当前已编码块(cb)的关系。
换句话说,在H.264/AVC中如下规定了用于导出MVp的中值运动矢量预测处理:
1、当仅有其中一个空间相邻块(A,B,C)具有与当前块(cb)完全相同的参考索引时:
MVp=mvN,其中N是(A,B,C)的其中之一
2、当多于一个或者没有相邻块(A,B,C)具有与cb完全相同的参考索引时:
MVp=median{mvA,mvB,mvC}
其中,mvA、mvB、mvC是各个空间相邻块的运动矢量(没有参考索引)。在H.264/AVC中,基于其可用性如下确定对应于当前块cb的相邻块A、B、C的运动矢量和参考索引。如果右上方(C)块不可用,例如当其处于不同于cb的切片中或者处于画面边界以外时,用左上方块(D)替代右上方(C)的位置。如果块A、B或C不可用,例如其处于不同于cb的切片中或者处于画面边界以外或者在帧内模式下被编码,则运动矢量mvA、mvB或mvC分别等于0,并且对应于块A、B或C的参考索引对于运动矢量预测和混合方向运动补偿预测分别是-1。
除了为之编码差分运动矢量的运动补偿宏块模式之外,在H.264/AVC中的所谓的P_Skip类型中还可以对P宏块进行编码。对于这种编码类型,没有差分运动矢量、参考索引或量化预测误差信号被编码到比特流中。利用P_Skip类型编码的宏块的参考画面在参考画面列表0中具有索引0。被用于重建P_Skip宏块的运动矢量是利用针对宏块的中值运动矢量预测而获得的,而没有添加任何差分运动矢量。特别在运动场较为平滑的区域内,P_Skip可能有益于压缩效率。
在H.264/AVC的B切片中支持四种不同类型的帧间预测:从参考画面列表0的单向预测,从参考画面列表1的单向预测,双向预测,直接预测,以及B_skip。可以对于每一个宏块分割单独选择帧间预测的类型。B切片利用与P切片类似的宏块分割。对于双向预测宏块分割,预测信号由运动补偿列表0和列表1预测信号的加权平均值形成。可以对于单向预测和双向预测B宏块分割编码参考索引、运动矢量差异以及量化预测误差信号。
在H.264/AVC中包括两种直接模式,时间直接模式和空间直接模式,并且可以在切片报头中选择其中一种以用于一个切片。在时间直接模式中,对应于参考画面列表1的参考索引被设定到0,并且如果在参考画面列表1中具有索引0的参考画面的同位块(与cb相比)中所使用的参考画面可用,则对应于参考画面列表0的参考索引被设定为指向该参考画面,或者如果该参考画面不可用则被设定到0。实质上通过考虑在参考画面列表1中具有索引0的参考画面的同位块内的运动信息来导出对应于cb的运动矢量预测值。通过以下操作导出对应于时间直接块的运动矢量预测值:对来自所述同位块的运动矢量进行缩放,其中缩放权重与参考画面之间的画面顺序计数差异成比例,其中所述参考画面与列表0和列表1中的所推断出的参考索引相关联;以及根据正在使用哪一个参考画面列表来选择对应于运动矢量预测值的符号。图7b示出了对应于H.264/AVC的时间直接模式的MVP的当前已编码块(cb)的同位块的示例性图示。对于时间直接块的使用在对应于MVC的任何当前的编码简档中都不受支持,尽管所述标准的语法也支持时间直接模式。
在H.264/AVC的空间直接模式中,按照类似于P块的方式利用空间邻近块的运动信息。空间直接模式下的运动矢量预测可以被划分成三个步骤:参考索引确定,单向或双向预测确定,以及运动矢量预测。在第一步骤中,从相邻块A、B和C的参考画面列表0和参考画面列表1当中的每一项中选择具有最小非负参考索引(即非帧内块)的参考画面。如果在相邻块A、B和C的参考画面列表0中没有非负参考索引存在,同样地在相邻块A、B和C的参考画面列表1中没有非负参考索引存在,则对于全部两个参考画面列表都选择参考索引0。
如下确定对于H.264/AVC空间直接模式使用单向还是双向预测:如果在参考索引确定步骤中找到了对应于全部两个参考画面列表的最小非负参考索引,则使用双向预测。如果在参考索引确定步骤中找到了对应于参考画面列表0或参考画面列表1的其中之一而非全部二者的最小非负参考索引,则分别使用来自参考画面列表0或参考画面列表1的单向预测。
在对应于H.264/AVC空间直接模式的运动矢量预测中,检查例如在第一步骤中是否断定了负参考索引之类的某些条件,并且如果满足的话,则确定零运动矢量。否则,利用空间邻近块A、B和C的运动矢量按照类似于P块的运动矢量预测值的方式导出运动矢量预测值。
在对应于直接模式块的比特流中不存在运动矢量差异或参考索引,而量化预测误差信号则可以被编码并且从而存在于比特流中。
B_Skip宏块模式类似于直接模式,但是没有预测误差信号被编码及包括在比特流中。
许多视频编码器利用拉格朗日成本函数来找到速率-失真最优编码模式,例如所期望的宏块模式和相关联的运动矢量。这种类型的成本函数使用加权因数或λ把由于有损编码方法而导致的确切或估计图像失真与对于表示一个图像区域内的像素/样本数值所需的确切或估计信息数量联系在一起。所述拉格朗日成本函数可以由下面的等式表示:
C=D+λR
其中C是将要最小化的拉格朗日函数,D是对于当前所考虑的模式和运动矢量的图像失真(例如原始图像块与已编码图像块中的像素/样本数值之间的均方误差),λ□是拉格朗日系数,R是用以表示在解码器中重建所述图像块的所需数据所需要的比特数(其中包括用以表示候选运动矢量的数据量)。
前面提到的H.264的多视图视频编码(MVC)扩展允许在解码器处实施多视图功能,从而允许开发三维(3D)多视图应用。接下来,为了更好地理解本发明的实施例,将会简要描述3D多视图应用的一些方面以及与之紧密有关的深度和像差信息的概念。
立体视觉视频内容由分别向观看者的左眼和右眼示出的各对偏移图像构成。这些偏移图像是利用特定的立体视觉摄影机设置捕获的,并且其在摄影机之间采取特定的立体基线距离。
图1示出了这样的立体视觉摄影机设置的简化2D模型。在图1中,C1和C2指代所述立体视觉摄影机设置的摄影机,更具体来说是所述摄影机的中心位置,b是两台摄影机的中心之间的距离(即立体基线),f是摄影机的焦距,X是所捕获的真实3D场景中的对象。真实世界对象X被投影到由摄影机C1和C2捕获的图像中的不同位置,这些位置分别是x1和x2。在图像的绝对坐标中的x1与x2之间的水平距离被称作像差。由所述摄影机设置捕获的图像被称作立体视觉图像,存在于这些图像中的像差产生或增强深度的错觉。为了允许向观看者的左眼和右眼分别示出图像,通常需要由观看者使用特定的3D眼镜。像差的适配是用于调节立体视觉视频内容以便可以在各种显示器上舒适地观看的一项关键特征。
但是像差适配不是简单直接的处理。其需要具有基线距离不同(也就是说b是可变的)的附加摄影机视图,或者渲染在真实世界中不可用的虚拟摄影机视图。图2示出了适合于这种解决方案的此类多视图摄影机设置的简化模型。这种设置能够提供利用对应于立体视觉基线的几个距离数值捕获的立体视觉视频内容,从而允许立体视觉显示器选择适合于观看条件的一对摄影机。
针对3D视觉的一种更加先进的方法是具有不需要眼镜的多视图自动立体视觉显示器(ASD)。ASD每次发射多于一个视图,但是所述发射在空间中局部化,从而使得观看者仅看到来自特定视点的一个立体对,正如图3中所示出的那样,其中当在最右侧视点观看时会在视图的中部看到船。此外,观看者能够从不同的视点看到另一个立体对,例如在图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场景的深度。深度估计算法取得立体视觉视图作为输入,并且计算所述视图的两幅偏移图像之间的局部像差。每一幅图像在各个重叠块中被逐像素地处理,并且对于每一个像素块施行针对偏移图像中的匹配块的水平局部化搜索。一旦计算出像素方面的像差,就通过等式(1)计算相应的深度数值z:
z = f &CenterDot; b D + &Delta;d - - - ( 1 )
其中,f是摄影机的焦距,b是摄影机之间的基线距离,正如图1中所示出的那样。此外,D指代在两台摄影机之间观察到的像差,并且摄影机偏移量Δd反映出两台摄影机的光学中心的可能的水平错位。但是由于所述算法是基于块匹配,因此通过像差的深度估计的质量取决于内容,并且常常是不准确的。举例来说,对于具有非常平滑的区域而没有纹理或较大噪声水平的片段来说,不可能有针对深度估计的简单直接的解决方案。替换地或者除了前面描述的立体视图深度估计之外,可以利用行程时间(TOF)原理获得深度数值。图5和6示出了基于TOF的深度估计系统的一个实例。摄影机配备有光源,例如红外发射器,以用于照明场景。这样的照明器被设置成产生对于10-100MHz之间的频率产生经过强度调制的电磁发射,其通常需要使用LED或激光二极管。红外光通常被用来使得照明不显眼。从场景中的对象反射的光被图像传感器检测到,其在与照明器相同的频率下被同步调制。图像传感器配备有光学装置,即收集反射光的透镜以及用于仅仅通过与照明器具有相同波长的光的光学带通滤波器,从而帮助抑制背景光。图像传感器对于每一个像素测量光从照明器行进到对象再回来所花费的时间。去到对象的距离被表示为照明调制中的相移,其可以对于场景中的每一个像素从已采样数据同时确定。
与立体视图深度估计形成对照,基于TOF的深度估计的准确度在很大程度上与内容无关。举例来说,其不会受到内容中缺少纹理外观的影响。但是当前可用的TOF摄影机具有低像素分辨率传感器,并且深度估计会受到随机和系统性噪声的严重影响。
像差或视差图,比如在ISO/IEC国际标准23002-3中所规定的视差图可以按照类似于深度图的方式被处理。深度和像差具有简单直接的对应关系,并且可以通过数据等式从彼此计算。
前面描述的3DV系统,比如在基于DIBR的3DV系统中,通常使用包括视图间和/或视图合成预测的混合方向运动补偿预测。但是在H.264/AVC/MVC中规定的运动矢量预测对于利用视图间和/或视图合成预测(VSP)的视频编码系统可能不是最优的。
现在,为了改进用于多视图编码(MVC)目的的运动矢量预测(MVP),在这里提供了深度增强视频编码,多视图+深度(MVD)编码和具有循环内视图合成的多视图(MVC-VSP),基于利用与已编码纹理数据相关联的深度或像差信息(Di)的新的MVP机制的集合。
图14分别示出了深度/像差块d(cb)、d(S)、d(T)和d(U)与纹理块cb、S、T和U的关联。在各个实施例中,对应于纹理块或者与之相关联的深度/像差块与该纹理块位于同一处。换句话说,所述深度/像差块关于其所驻留的深度/像差帧的空间位置与对应的纹理块关于其所驻留的深度/像差帧的空间位置相同。在各个实施例中,空间范围(即样本数目)与亮度纹理帧相比在深度/像差帧中可能有所不同。为了导出深度/像差块与纹理块之间的关联,可以对各个块的位置进行归一化,就好像全部两帧都具有相同的空间范围,这是通过对所述块的坐标进行缩放以及/或者对其中一个或全部两个帧进行重采样而实现的。一般来说,还可以通过不同于空间同位的其他标准导出深度/像差块与对应的纹理块的关联。
假设对应于当前块(cb)或者对应于先前已编码/已解码的纹理数据的深度或像差信息(Di)可以通过对于已编码深度或像差信息的解码来获得,或者可以在解码当前纹理块之前在解码器侧进行估计,并且该信息可以被利用在MVP中。
图像片段或2D片段或2D图像片段被定义为图像的一个子集。一个图像片段的形状通常而不需要是矩形。视频片段被定义为视频的一个子集。视频片段可以是时间视频片段,其由单视图视频序列的帧或图像的一个子集构成。视频片段可以是空间-时间视频片段,其由单视图视频序列的帧或图像的一个子集中的图像片段构成。视频片段可以是多视图视频片段,其由来自多视图视频虚列的单一访问单元(即采样时刻)的不同视图的帧/画面或图像片段构成。用以形成视频片段的其他组合也是可能的,比如空间-空间多视图视频片段。
图15示出了当前已编码/已解码的纹理数据图像、当前已编码的纹理数据块cb以及所述纹理数据图像的一个片段(由灰色示出),所述片段在空间上邻近cb或者位于其附近,并且假设其在cb块的编码/解码之前可用(已解码)。被称作“邻近块”A、B、C、D和F的2D纹理数据块被显示为白色块,并且假设其在cb的编码/解码之前可用(已解码),其可以被MVP处理利用来编码/解码纹理块cb。应当提到的是,图15中的块A、B、C、D和F仅仅是选择邻近块的实例,并且可以附加地和/或替换地选择其他块。
在数学方面,一个欧式矢量可以由具有确定方向并且连接初始点与终点的一条线段表示。运动信息(例如水平和垂直运动矢量分量mv_x和mv_y以及参考索引)通常被应用于其运动信息被包括在比特流中的块位置。举例来说,比特流中的对应于块cb的运动信息MV(cb)通常被应用来获得预测块,这是通过把运动矢量的初始点设定到cb的空间位置而实现的。该预测块被标记为(cb,MV(cb))。如果对于块N的位置处的运动补偿预测应用对应于块M的运动信息,则所述预测块被标记为(N,MV(M))。
图16示出了被扩展到视频和多视图视频应用的纹理数据的邻近块的概念。当前已编码纹理数据图像cb由深灰色块示出,假设邻近的图像片段(用浅灰色示出了几幅纹理数据图像)在cb块的编码之前可用(已编码/已解码)。应当提到的是,邻近的图像片段可能属于相同视图的先前已编码/已解码的图像(2D视频编码),或者可能属于另一视图的先前已编码图像(多视图视频编码)。cb与邻近块之间的对应关系可以通过不同方式来建立,下面仅仅是这方面的几个实例。纹理块A和B是cb在当前已编码图像中的空间邻居,纹理块D位于先前已编码/已解码的图像中的与cb相同的空间坐标(x,y)处,而位于不同图像处的纹理块E、F和G则分别通过其运动信息MV(A)、MV(B)和MV(C)与块A、B、C相关联。换句话说,块E可以等于(cb,MV(C)),块F可以等于(cb,MV(B)),并且块G可以等于(cb,MV(A))。在其他实施例中,块E可以等于(C,MV(C)),块F可以等于mcp(B,MV(B)),并且块G可以等于(A,MV(A))。
在许多实施例中,对于一个访问单元的各个纹理和深度视图组成部分的编码顺序使得首先按照任意顺序对基础视图的各个纹理和深度视图组成部分进行编码。随后,在非基础视图的纹理视图组成部分之前对相同的非基础视图的深度视图组成部分进行编码。各个深度视图组成部分按照其视图间从属性顺序被编码,并且各个纹理视图组成部分按照其视图间从属性顺序被编码。举例来说,可能有三个纹理和深度视图(T0,T1,T2,D0,D1,D2),其中视图间从属性顺序是0、1、2(0是基础视图,1是可以从视图0视图间预测的非基础视图,并且2是可以从视图0和1视图间预测的非基础视图)。例如可以按照T0D0D1T1D2T2或者D0D1D2T0T1T2或者D0T0D1T1D2T2的顺序对这三个纹理和深度视图进行编码。各个已编码视图组成部分的比特流顺序可以与其编码顺序相同,同样地,各个已编码视图组成部分的解码顺序可以与其比特流顺序相同。深度的视图间从属性通常但是不需要与对应于纹理的视图间从属性顺序相同。深度视图的数目可以不同于纹理视图的数目。举例来说,对于不从中预测其他纹理视图的纹理视图可以不对深度视图进行编码。例如可以利用不同的NAL单元类型数值将深度视图组成部分的切片与纹理视图组成部分的切片进行区分。
在一些实施例中,可以利用小于视图组成部分的单元比如基于块或切片来交织纹理和深度的编码/解码顺序。比如块之类的已编码纹理和深度单元的对应的编码/解码顺序可以遵循在前面的段落中描述的排序规则。举例来说,可能有两个空间上邻近的纹理块ta和tb,其中tb在编码/解码顺序中跟在ta之后,并且有两个深度/像差块da和db,其分别在空间上与ta和tb位于同一处。当分别借助于da和db导出对应于ta和tb的预测参数时,各块的编码/解码顺序可以是(da,ta,db,tb)或者(da,db,ta,tb)。各块的比特流顺序可以与其编码顺序相同。
在一些实施例中,可以利用大于视图组成部分的单元(比如画面组或已编码视频序列)来交织纹理和深度的编码/解码顺序。
后面将描述与许多实施例有关的一些参数。
像差估计
在这里假设与当前已编码纹理数据块相关联的基础深度或像差信息被利用在MVP决定中,因此假设所述深度或像差信息在解码器侧事先可用。在一些MVD系统中,连同逐像素的深度图或像差信息来编码和发送纹理数据(2D视频)。因此,一个已编码纹理数据块(cb_t)可以逐像素地与一个深度/像差数据块(cb_d)相关联。后者可以在无需修改的情况下被利用在所提出的MVP链条中。
在一些实施例中,取代深度图数据,可能需要实际的像差信息或者至少其估计。因此可能需要从深度图数据到像差信息的转换。所述转换可以如下施行:
Z = 1 / ( d 255 ( 1 z near - 1 z far ) + 1 z far ) , D = f &CenterDot; b z - - - ( 2 )
其中,d是深度图数值,z是实际深度数值,并且D是所得到的像差。参数f、b、Znear和Zfar是从摄影机设置导出的,即分别是所使用的焦距(f)、摄影机分隔(b)和深度范围(Znear,Zfar)。
根据一个实施例,可以通过块匹配规程或任何其他方式从编码器/解码器侧的可用纹理估计像差信息。
块的深度和/或像差参数
一个已编码纹理块(cb_t)的各个像素可以对于每一个所述像素与一个深度信息块(cb_d)相关联。可以通过对应于cb_d的平均深度/像差数值和cb_d的偏差(例如方差)总体给出所述深度/像差信息。如下计算对应于一个深度信息块cb_d的平均Av(cb_d)深度/像差数值:
Av(cb_d)=sum(cb_d(x,y))/num_pixels  (3)
其中,x和y是cb_d中的像素的坐标,num_pixels是cb_d内的像素数目,并且函数sum把给定块中的所有样本/像素数值相加,也就是说函数sum(block(x,y))对于与给定块的水平和垂直范围相对应的所有x和y的数值计算该块内的各个样本数值的总和。
一个深度信息块cb_d内的深度/像差数值的偏差Dev(cb_d)可以被如下计算:
Dev(cb_d)=sum(abs(cb_d(x,y)-Av(cb_d)))/num_pixels  (4)
其中,函数abs返回作为输入给出的数值的绝对值。为了确定与同质深度信息相关联的那些已编码纹理块,可以定义一个特定于应用的预定义阈值T1,从而使得:
如果Dev(cb_d)<=T1,则cb_d=同质数据  (5)
换句话说,如果一个深度信息块cb_d内的各个深度/像差数值的偏差小于或等于阈值T1,则这样的块cb_d可以被视为是同质的。
可以通过其深度/像差信息将已编码纹理数据块cb与其各个相邻块nb进行比较。对于相邻块nb的选择例如可以基于cb的编码模式来确定。当前已编码深度/像差块(cb_d)与其每一个相邻深度/像差块(nb_d)之间的平均偏差(差异)可以被如下计算:
nsad(cb_d&nb_d)=sum(abs(cb_d(x,y)-nb_d(x,y)))/num_pixels  (6)
其中,x和y是cb_d中及其相邻深度/像差块(nb_d)中的像素的坐标,num_pixels是cb_d的像素数目,并且函数sum和abs与前面的定义相同。等式(6)还可以被视为通过块中的像素数目归一化的给定块之间的绝对差(SAD)的总和。
在各个实施例中,比较两个深度/像差块之间的相似度。例如可以利用等式(6)来比较所述相似度,但是也可以使用任何其他相似度或失真量度。举例来说,可以使用如在等式(7)中所计算的通过像素数目归一化的平方差和(SSD):
nsse(cb_d,nb_d)=sum((cb_d(x,y)-nb_d(x,y))^2)/num_pixels  (7)
其中,x和y是cb_d中及其相邻深度/像差块(nb_d)中的像素的坐标,num_pixels是cb_d的像素数目,标记^2表明2次方,并且函数sum与前面的定义相同。
在另一个实例中,可以使用变换差和(SATD)作为相似度或失真量度。当前深度/像差块cb_d和相邻深度/像差块nb_d都例如利用DCT或其某种变型而被变换,其在这里被标记为函数T()。设tcb_d等于T(cb_d),并且tnb_d等于T(nb_d)。随后计算所述绝对或平方差和,并且可以通过cb_d或nb_d中的像素/样本数目num_pixels归一化,其也等于tcb_d或tnb_d中的变换系数的数目。在等式(8)中给出了利用绝对差和的变换差和的版本:
nsatd(cb_d,nb_d)=sum(abs(tcb_d(x,y)-tnb_d(x,y)))/num_pixels  (8)
例如还可以使用结构化相似度索引(SSIM)之类的其他失真量度。
函数diff(cb_d,nb_d)可以被如下定义,以便允许使用任何相似度或失真量度:
diff(cb_d,nb_d)=
nsad(cb_d,nb_d),如果使用绝对差和的话
nsse(cb_d,nb_d),如果使用平方差和的话
nstad(cb_d,nb_d),如果使用变换差和的话  (9)
可以向等式(9)中的函数diff的定义添加任何相似度/失真量度。在一些实施例中,所使用的相似度/失真量度被预先定义,因此在编码器和解码器中都保持相同。在一些实施例中,所使用的相似度/失真量度由编码器例如利用速率-失真优化来决定,并且作为一项指示被编码在比特流中。关于所使用的相似度/失真量度的指示例如可以被包括在序列参数集合、画面参数集合、切片参数集合、画面报头、切片报头中、包括在宏块语法结构内等等。在一些实施例中,所指示的相似度/失真量度可以被使用在编码和解码循环中的预定操作中,比如基于深度/像差的运动矢量预测。在一些实施例中,为之指示所指示的相似度/失真量度的解码处理也被指示在比特流中,例如指示在序列参数集合、画面参数集合、切片参数集合、画面报头、切片报头中、在宏块语法结构内等等。在一些实施例中,有可能在对于解码处理具有相同持续性(即适用于解码相同的访问单元)的比特流中具有多于一对关于相似度/失真量度和为之应用该量度的解码处理的指示。编码器可以选择对于其中使用基于相似度/失真的选择或其他处理(比如基于深度/像差的运动矢量预测)的每一项特定解码处理使用哪一项相似度/失真量度,并且把关于所选像差/失真量度以及将其应用于哪些解码处理的对应指示编码到比特流中。
在比较像差块的相似度时,通常将各块的视点归一化,从而例如将像差数值缩放成从全部两个所比较块中的相同摄影机分隔得到。
提供可以被组合成单一解决方案的以下元素,正如后面将描述的那样,或者所述元素可以被分开利用。正如前面所解释的那样,视频编码器和视频解码器通常应用预测机制,因此以下元素可以类似地适用于视频编码器和视频解码器全部二者。
1、对于跳过和/或直接模式的MVP选择参考索引和候选运动矢量
对于H.264/AVC的P_Skip模式,利用P_Skip类型编码的宏块的参考画面在参考画面列表0中具有索引0。等于0的此类参考索引选择在这里被称作“零值”参考索引预测。
基于各个相邻块中的最小可用非负参考索引来选择对应于直接模式块和对应于H.264/AVC中的B_skip块的(多项)参考索引。
根据一个实施例,取代例如H.264/AVC中的参考索引选择,可以基于当前块的深度/像差与各个相邻块的深度/像差的相似度来选择对应于跳过和/或直接模式等等的(多项)参考索引。举例来说,与当前块相比具有最小深度/像差偏差的相邻块的参考索引可以被选择作为当前块的参考索引。
根据一个实施例,在跳过和/或直接模式等等中,只在与当前块具有相同参考索引或者附加地与当前块的深度/像差相比具有足够深度/像差相似度的那些相邻块的运动矢量之间应用定向和/或中值运动矢量预测等等。
2、像差补偿默认运动矢量预测值
对于利用视图间预测的每一个cb块,也就是使用指向(仅)视图间参考画面并且对于MVP无法为之获得对应于块A、B和C的运动矢量的cb块,根据当前纹理数据块的像差信息Di(cb)来设定运动矢量预测值。
每当没有运动矢量预测值可用并且参考索引指向视图间参考画面或者仅视图间参考画面时,运动矢量预测值被设定到从Di(cb)导出的一个数值,比如在Di(cb)的所有样本上导出的平均像差。在H.264/AVC中,没有对应于块A、B和C的运动矢量可用的情况导致使用等于0的运动矢量(以及在空间直接模式下具有参考索引0的参考画面),其在这里被称作使用“零值默认值”。可以进一步把利用如前所述的像差补偿默认值替换“零值默认值”运动矢量预测的条件设定为只有在Di(cb)中的样本数值的偏差或方差低于特定阈值时才使用所述替换。
3、针对时间直接模式等等的像差补偿同位块确定
在H.264/AVC中,参考画面列表1中的参考索引0中的同位块被选为利用时间直接模式的对应于当前块cb的运动矢量预测值的来源。根据一个实施例,当时间直接模式或任何其他预测模式下的预测方向使用来自较早前已编码/已解码的画面的运动矢量预测而不是空间同位块时,选择像差补偿同位块作为用于运动矢量预测的来源。举例来说,可以把当前纹理数据块的像差信息Di(cb)平均并量化到对应于运动补偿预测的块栅格,从而形成像差运动矢量。随后使用所述像差运动矢量来找到像差补偿同位块,其运动矢量被用作运动矢量预测的来源。
在一些实施例中,把像差补偿同位块的深度/像差信息与当前块的深度/像差信息进行比较。如果这两个块的深度/像差信息足够相似,例如如果其偏差低于特定阈值,则在当前块的运动矢量预测中使用像差补偿同位块的运动矢量。否则,在当前块的运动矢量预测中不使用像差补偿同位块的运动矢量。当由当前块覆盖的对象被像差补偿同位块中的另一对象遮挡时,这两个块的深度/像差信息例如可能会不同。
在一些实施例中,在当前块的深度/像差Di(cb)与参考画面的所选区域之间施行深度/像差信息的相似度搜索。所述像差运动矢量可以被用作所述相似度搜索的起始位置,并且只有与其中像差运动矢量可能处在所述区域内的块邻近的各块才被搜索。与Di(cb)相比得到失真或距离度量(比如偏差)的最小数值的块被选作像差补偿同位块,其运动矢量被用作当前块cb的运动矢量预测的来源。
在一些实施例中,在单向预测模式下可以使用时间运动矢量预测,并且像差补偿同位块被选作运动矢量预测的来源。
4、仅对与彼此和/或与当前块(cb)共享相同预测方向的相邻块应用定向和/或中值MVP等等
在一些实施例中,MVP关于其预测方向对当前块(cb)的各个相邻块进行分类(视图内、视图间、VSP),并且独立地处理每一个预测方向(相邻块组)。因此,MVP不涉及在单一决定中混合时间、视图间或VSP方向。随后,如果当前块(cb)的参考索引可用,则相应地从具有完全相同的预测方向的相邻块计算定向和/或中值运动矢量预测(同样地没有时间、视图间或VSP方向的混合)。换句话说,只有在相邻块A、B和C具有与当前块(cb)相同的预测方向的情况下,其才可用于运动矢量预测和/或混合方向运动补偿预测。
5、基于深度/像差相似度选择运动矢量预测候选
此外还可以基于当前已编码纹理数据块与相邻纹理数据块之间的深度/像差相似度(比如(每像素)平均深度/像差的最小(绝对)差)选择来自相邻块的运动矢量预测值。举例来说,与cb的深度/像差相比具有(每像素)深度/像差的最小(绝对)差的该相邻块的运动矢量可以被选作对应于当前已编码或已解码纹理块(cb)的运动矢量预测值。在另一个实例中,与cb的深度/像差块相比的nb的深度/像差块的相似度度量低于某一阈值数值的所有那些邻近块nb都可以被选择来用于所述定向和/或中值MVP等等。
6、选择单向预测/双向预测以及用于预测的(多个)参考画面列表
可以基于与各个相邻块相关联的数值来确定用于解码当前已编码或已解码块(cb)的若干预测参数。举例来说,可以基于在与当前深度块相比具有最大深度/像差相似度(比如(每像素)深度/像差的最小平均(绝对)差)的相邻块中所使用的预测块的数目来确定所使用的参考画面列表的数目,即被用于当前已编码块cb的预测块的数目。
替换地或附加地,在直接和/或跳过模式等等中,可以使用当前块cb与预测块的深度/像差相似度来确定使用单向预测还是双向预测,以及对于单向预测使用哪一个参考画面列表。在双向预测中存在两个预测块,其在这里被称作pb0和pb1,并且分别源自参考画面列表0和参考画面列表1的一个画面。设pb0和pb1的深度/像差信息分别是Di(pb0)和Di(pb1)。将Di(pb0)与当前块的深度/像差信息Di(cb)进行比较。如果Di(pb0)与Di(cb)相似,则pb0被用作预测块;否则,pb0不被用作对应于当前块的预测块。类似地,如果Di(pb1)与Di(cb)相似,则pb1被用作预测块;否则,pb1不被用作对应于当前块的预测块。如果pb0和pb1二者都保持为预测块,则使用双向预测。如果pb0是预测块而pb1不是,则使用来自pb0(即参考画面列表0)的单向预测。类似地,如果pb0不是预测块而pb1是,则使用来自pb1(参考画面列表1)的单向预测。如果pb0和pb1都不是预测块,则可以推断出另一种编码模式,比如具有运动矢量差异编码的双向预测模式,或者例如可以选择另一对参考画面。
在H.264/AVC中可以使用单向预测(一个参考画面列表)或双向预测(两个参考画面列表),但是通常可以有任意数目的预测块(所谓的多假设预测)。因此,前面提到的实施例可以被推广到多于两项预测假设。
7、编码模式和预测方向预测
此外,作为基于与各个相邻块相关联的数值来确定用于解码当前已编码或已解码块(cb)的预测参数的另一个实例,可以把编码模式(例如时间直接、空间直接、跳过)确定为等于与当前深度块相比具有最大深度/像差相似度(比如(每像素)深度/像差的最小平均(绝对)差)的相邻块的编码模式。
此外,可以基于当前已编码纹理块(cb)与相邻纹理块之间的最大深度/像差相似度(比如平均(每像素)深度/像差的最小差异)来选择预测方向(视图内、视图间、VSP)。类似地,可以基于当前已编码块与相邻纹理块之间的最大深度/像差相似度(比如平均(每像素)深度/像差的最小差异)来选择参考索引。
许多实施例可以被划分成以下排序的各个步骤:
1、编码器/解码器选择与当前块cb的一个或更多邻近块S、T、U...
2、编码器/解码器获得与所述一个或更多邻近块相关联的深度/像差块d(S)、d(T)、d(U)...
3、利用比如在等式(9)中给出的相似度/失真量度,编码器/解码器把当前深度/像差块d(cb)与所述一个或更多邻近块的相关联的深度/像差块d(S)、d(T)、d(U)...进行比较。
4、编码器/解码器基于所述比较选择与所述一个或更多邻近块相关联的其中一个或更多深度/像差块d(S)、d(T)、d(U)...(例如使得与d(cb)相比最小化失真或者最大化相似度)。
5、编码器/解码器从与所述一个或更多邻近块S、T、U...相关联的所选深度/像差块d(S)、d(T)、d(U)...导出对应于cb的运动信息MVP,或者从所选择的邻近块S、T、U...导出,或者从对于所选块d(S)、d(T)、d(U)...或所选块S、T、U...所编码的信息导出。
6、编码器/解码器利用运动信息MVP对块cb进行编码/解码。编码器/解码器例如可以把MVP用作参考索引和运动矢量预测值,并且编码/解码相对于MVP的运动矢量差异;或者编码器/解码器例如可以把MVP用作对应于cb的运动矢量。
在各个实施例中,可以应用选择将被用在对应于cb的MVP的邻近块的不同方法。用于选择将被用在MVP中的邻近块的方法可以包括而不限于以下各项或者以下各项的任意组合:
1、选择与cb共享边界并且已在cb之前被编码/解码的邻近块。可以由编码器和解码器使用预先定义的算法或规则来以完全相同的方式选择邻近块。举例来说,邻近块可以被选择为图13的块A、B、C、D和E,前提是其在cb之前被编码/解码。
2、从也包含cb并且在cb之前已被编码/解码的图像片段选择邻近块。在一些实施例中,编码器可以选择邻近块并且把信息编码到比特流中以便标识所述邻近块,这例如是作为邻近块关于cb的位置的相对坐标。编码器例如可以使用速率-失真优化来选择邻近块。在一些实施例中,编码器和解码器可以在包括d(cb)的深度/像差画面内对d(cb)施行运动估计或块匹配,并且在块匹配中所测试的每一个位置可以被视为与一个邻近块位于同一处。在一些实施例中,编码器和解码器可以在包含d(cb)的深度/像差画面内对d(cb)施行运动估计或块匹配,并且邻近块可以被选择成与其中的在块匹配中具有最小成本的一个或更多位置位于同一处。
3、例如如下从不同于包含cb的画面的其他画面选择邻近块。首先可以例如利用前面的步骤1或2来选择在cb之前被编码/解码的空间相邻块,比如图13的块A、B、C、D和E。随后可以在cb的位置处应用这些块的运动矢量以便获得邻近块,例如从空间相邻块A导出的邻近块将是(cb,MV(A))。替换地或附加地,可以从所选择的空间相邻块的多于一个运动矢量导出将被用于获得邻近块的运动矢量。举例来说,可以通过取得所选择的各个空间相邻块的运动矢量的水平分量的中值以及所选择的各个空间相邻块的运动矢量的垂直分量的中值来获得运动矢量MVcvm。随后可以通过在cb的位置处应用MVcvm来获得邻近块,也就是说邻近块将是(cb,MVcvm)。
4、例如如下从不同于包含cb的画面的其他画面选择邻近块。首先,例如可以基于所选择的空间相邻块的运动矢量的参考索引来选择用于运动估计的参考画面,例如正如在前面的步骤1到3当中的一个或更多步骤中所描述的那样。其次,例如可以基于在前面的步骤1到3当中的一个或更多步骤中导出的邻近块的位置来选择搜索窗口的位置。第三,编码器和解码器可以在所选择的深度/像差参考画面和搜索窗口内对d(cb)施行运动估计或块匹配。所述邻近块可以被选择成驻留在与所选择的深度/像差参考画面相关联的纹理画面中,并且与其中的在块匹配中具有最小成本的一个或更多位置位于同一处。
5、通过经由相关联的深度/像差块d(cb)导出运动信息来选择邻近块。如果需要的话,可以把d(cb)的深度/像差数值转换成相对于另一视图vref的像差块dref(cb)。dref(cb)的平均像差数值avg(dref(cb))可以被用作指向视图组成部分vref的运动矢量。所述平均还可以包括例如量化或取整到运动矢量的准确度,比如四分之一像素位置。可以通过在cb的位置处应用所获得的视图间运动矢量avg(dref(cb))来获得邻近块,也就是说所述邻近块将是avg(dref(cb))。
6、如下通过使用包含d(cb)的深度/像差画面中的运动矢量来选择邻近块。首先,例如可以使用前面的步骤1或2来选择相对于d(cb)的空间相邻深度/像差块,比如对应于图13的A、B、C、D和E的那些块。替换地或附加地,可以选择位于同一处的或者相关联的块d(cb)。对应的运动矢量可以被标记为MV(d(A))、MV(d(B))、MV(d(C))、MV(d(D))、MV(d(E))和MV(d(cb))。随后可以通过对cb的位置应用所选择的位于同一处的或者空间相邻的深度/像差块的运动矢量来获得邻近块,例如对应于相邻块A的邻近块将是(cb,MV(d(A)))。
在一些实施例中,可以如下对于当前深度/像差块d(cb)施行例如块匹配之类的运动估计处理。可以把搜索范围选择成处于当前深度/像差画面内,即处于d(cb)也驻留在其中的画面内。在一些实施例中,搜索范围可以附加地或替换地被选择成处于不同的深度/像差画面内,即不同于d(cb)驻留在其中的画面的其他画面。举例来说,搜索范围可以被选择成处于与通过cb的参考索引标识出的纹理画面相关联的深度/像差画面内。在另一个实施例中,搜索范围可以被选择成处于被推断为用于cb或d(cb)的直接模式或类似预测的参考画面的深度/像差画面内。
在一些实施例中,搜索范围可以在空间上被限制成排除与包含当前块cb的纹理画面中的不可用块(即尚未被编码/解码)相关联的片段。搜索范围还可以在空间上被限制成不超出围绕或者邻近d(cb)的特定尺寸和形状的特定图像片段。
可以利用特定算法在所述搜索范围内施行块匹配搜索。在一些实施例中,编码器通过把一项或更多项指示编码到比特流中来表明所使用的算法和/或对应于所使用的算法的参数数值,并且解码器对所述一项或更多项指示进行解码,并且根据关于所使用的算法和/或对应于所使用的算法的参数数值的已解码信息来施行块匹配搜索。例如可以通过使用完全搜索来进行块匹配搜索,其中对搜索范围内的每一个块位置进行检查。在块匹配中,在来源块d(cb)与通过块匹配算法所选择的搜索范围内的每一个块之间计算一项成本。举例来说,SAD、SSD或SATD可以被用作块匹配中的成本。在一些实施例中,所述块匹配算法可以被限制到仅仅搜索特定块位置,所述特定块位置可以与被用来分割画面的矩形栅格位于同一处。
随后可以如下处理最小化块匹配中的所述成本的一个或多个块位置,其被称作(xbb,ybb)。可以对于块位置(xbb,ybb)导出运动信息MV(xbb),这例如是通过具有d(cb)的尺寸和形状并且位于包含所述搜索范围的深度/像差画面内的(xbb,ybb)处的块d(xbb)而实现的,并且/或者是通过具有d(cb)的尺寸和形状并且位于与包含所述搜索范围的深度/像差画面相关联或者相对应的纹理画面内的(xbb,ybb)处的块xbb而实现的,其中例如使用以下方式的其中之一或其组合:
-如果块d(xbb)覆盖先前已为之导出并且编码/解码了运动信息MV(d(bb))的单一块d(bb),则MV(xbb)可以被选择成与MV(d(bb))完全相同。
-如果块d(xbb)覆盖多于一个块d(bbn),其中n可以从1改变到此类块的数目并且先前已为之导出并编码/解码了运动信息MV(d(bbn)),则MV(xbb)可以被选择成从MV(d(bbn))导出,这例如是通过首先选择被用于d(xbb)内的大多数样本的运动信息的参考索引,并且随后取得中值运动矢量、各个中值运动矢量分量、平均运动矢量、各个平均运动矢量分量、或者覆盖其中所述归一化成本在对应于所选参考索引的所有n值当中是最小的一个区域的MV(d(bbn))。
-如果块xbb覆盖先前已为之导出并且编码/解码了运动信息MV(bb)的单一块bb,则MV(xbb)可以被选择成与MV(bb)完全相同。
-如果块xbb覆盖多于一个块bbn,其中n可以从1改变到此类块的数目并且先前已为之导出并编码/解码了运动信息MV(bbn),则MV(xbb)可以被选择成从MV(bbn)导出,这例如是通过首先选择被用于xbb内的大多数样本的运动信息的参考索引,并且随后取得中值运动矢量、各个中值运动矢量分量、平均运动矢量、各个平均运动矢量分量、或者覆盖其中所述归一化成本在对应于所选参考索引的所有n值当中是最小的一个区域的MV(bbn)。
在一些实施例中,运动信息MV(xbb)可以被用于获得用于cb的MVP的邻近块。换句话说,可以通过在cb的位置处应用MV(xbb)来获得邻近块,也就是说所述邻近块可以是(cb,MV(xbb))。
在一些实施例中,运动信息MV(xbb)可以被用于cb的预测。举例来说,可以通过在cb的位置处应用MV(xbb)来获得对应于cb的预测块,也就是说所述预测块可以是(cb,MV(xbb))。
在一些实施例中,可以如下确定用于解码当前已编码或已解码块(cb)的运动信息。在图17和18中分别示出了用于跳过和直接模式下的基于深度的运动补偿(DMC)的处理的流程图。在跳过模式下,根据其预测方向将纹理数据块{A,B,C}的运动矢量{MVi}分组在一起,从而形成分别对应于时间和视图间的组1和组2。对于每一组独立地施行在图17的灰色方块中详细描述的DMC处理。
对于给定组内的每一个运动矢量MVi,导出一个运动补偿深度块d(cb,MVi),其中相对于cb的位置应用运动矢量MVi,以便从MVi所指向的参考画面获得深度块。随后如(10)中所示估计d(cb)与d(cb,MVi)的相似度:
SAD(MVi)=SAD(d(Cb,MVi),d(Cb))  (10)
在当前组内提供最小SAD数值的MVi被选择为对应于特定方向的最优预测值(mvpdir)
mvp dir = arg min mvp dir ( SAD ( MV i ) ) - - - ( 11 )
随后,将时间方向上的预测值(mvptemp)与视图间方向上的预测值(mvpinter)进行竞争。提供最小SAD的预测值被选择用在跳过模式中:
mvp opt = arg min mvp dir ( SAD ( mvp temp ) , SAD ( mvp inter ) ) - - - ( 12 )
图18中所示的对应于B切片的直接模式的MVP类似于跳过模式,但是在全部两个参考画面列表(列表0和列表1)上独立地施行DMC(由灰色方块标记)。因此,对于每一个预测方向(时间或视图间),DMC产生分别对应于列表0和列表1的两个预测值(mvp0dir和mvp1dir)。如(10)中所示计算mvp0dir和mvp1dir的SAD数值并且进行平均,从而对于每一个方向独立地形成双向预测的SAD:
SAD(mvpdir)=(SAD(mvp0dir)+SAD(mvp1dir))/2  (13)
最后,从可用的mvpinter和mvptemp中选择用于直接模式的MVP,正如(12)中所示的那样。
在另一个实施例中,可以如下实施运动矢量预测方案。根据其预测方向(时间或视图间)对邻近cb的所有可用块(A,...,E)进行分类。如果cb使用视图间参考画面,则不利用视图间预测的所有相邻块都被标记为不可用于MVP,并且在中值或定向MVP计算等等中不作考虑。反之亦然,如果cb使用时间预测,则使用了视图间参考帧的相邻块被标记为不可用于MVP。在图18中描绘出这一处理的流程图。此外,对应于使用视图间预测时的“零MV”MVP被如下修订:如果没有来自相邻块的运动矢量候选可用,则MVx被设定到平均像差
Figure BDA0000496327620000561
数值,其与当前纹理cb相关联并且被计算为:
D &OverBar; ( cb ) = ( 1 / N ) . &Sigma; i D ( cb ( i ) )
其中,D(cb(i))是在(2)中对于像素cb(i)计算的像差,i是块cb中的像素索引,并且N是块cb中的像素数目。
在一些实施例中,只有在深度/像差相似度数值满足与某一阈值有关的一定条件时(比如超出某一阈值),才可以从与当前深度块相比具有最大深度/像差相似度(比如(每像素)深度/像差的最小平均(绝对)差)的相邻块推断出对应于cb的所有或特定前面提到的预测参数。还可以使用对应于预测参数的不同阈值。
后文中将公开一些实施例,其中将把前面描述的各个总体方面组合成单一解决方案,但是仍要强调的是,每一个所述方面也可以被单独利用。
前面的参数和等式可以被使用在后面所描述的基于深度/像差信息的运动矢量预测(MVP)的各个实施例中。
根据一个实施例,取代在跳过和/或直接模式等等中(比如在H.264/AVC的P_SKIP模式中)把当前块的参考帧索引设定为总是等于零或者设定到从各个相邻纹理块的参考索引导出的一个数值,在这里公开了用于针对跳过和/或直接模式等等确定对应于运动矢量预测的参考索引和候选运动矢量的一项经过修改的规程,其被称作像差补偿零值预测模式。
为了进行分析,如果当前已编码块cb包括同质深度信息,则可以根据等式(3)和(4)计算对应于一个深度信息块的平均深度/像差数值Av(cb_d)和一个深度信息块内的深度/像差数值的偏差Dev(cb_d)。随后如果根据等式(5)一个深度信息块cb_d内的深度/像差数值的偏差小于或等于阈值T1,则当前已编码块cb可以被视为是同质的。
随后,根据对应于一个深度信息块的平均深度/像差Av(cb_d),可以根据等式(2)计算对于整个已编码块cb是共同的像差数值d(cb)。随后可以把所得到的像差数值d(cb)用作运动矢量预测值,并且可以将参考索引推断成等于为之应用所述像差的视图间参考画面或者仅视图间参考画面的参考索引。但是如果结合等式(5)注意到当前已编码块cb的深度信息并非同质,则可以使用如在当前的H.264/AVC MVP中所公开的零值预测;例如在H.264/AVC的P_Skip模式下应用中值运动矢量预测,并且将参考索引设定到0。
根据一个实施例,当前已编码块(cb)与其每一个相邻块(nb)的深度/像差信息中的相似度被用作确定对应于当前已编码块(cb)的运动矢量预测的一个或更多参数的基础。首先,根据等式(9)计算当前已编码块cb与其每一个相邻块nb(A,B,C,...)之间的平均偏差。从所得到的各个偏差数值当中搜索最小数值min(diff(cb,nb))。如果所述最小数值min(diff(cb,nb))小于或等于阈值T2(即如果min(diff(cb,nb))=<T2),则表明与当前已编码块具有最小差异的相邻块与当前已编码块足够相似。因此,与当前已编码块具有最小差异的相邻块被选作MVP参数的来源,并且从所述相邻块拷贝对应于所述运动矢量预测的一个或更多参数,以便用在当前块的运动矢量预测中。
根据一个实施例,如果没有找到足够相似的相邻块(即如果min(diff(cb,nb))>T2),则对于所述运动矢量预测可以使用基于深度/像差的邻居预先选择处理。作为第一步骤,根据其预测方向将各个相邻块分组在一起。相应地有三个可能的块组(Gx)可用:G1:时间预测块(视图内预测),G2:视图间预测块,以及G3:VSP预测块。
对于当前可用的所有各组,根据等式(9)计算当前已编码块(cb)与每一个块组(Gx)之间的平均偏差(差异)。
从所得到的各个偏差数值当中搜索提供最小数值min(diff(cb,Gx))的组(Gmin)。如果所述组Gmin的最小数值min(diff(cb,Gx))小于或等于阈值T3(即如果min(diff(cb,Gx))=<T3),则所述组内的各块被标记为可用于运动矢量预测和/或混合方向运动补偿预测,并且其余各块被标记为不可用于运动矢量预测和/或混合方向运动补偿预测。随后从属于所述组Gmin的相邻块施行对于当前已编码块的运动矢量预测,比如定向和/或中值运动矢量预测。但是如果所述组Gmin的最小数值min(diff(cb,Gx))超出阈值T3(即如果min(diff(cb,Gx))>T3),则可以使用像差补偿零值预测模式的前述实施例。
通过图8的流程图可以说明上一个实施例,其中空间相邻块A、B和C可用于当前块cb的运动矢量预测。如果没有找到对应于块A、B和C的完全相同的预测方向(800),则根据其预测方向将块A、B和C分组(802)到三个可能的组,并且对于当前可用的所有各组计算(804,806,808)当前已编码块与每一个块组之间的平均偏差。提供最小数值min(diff(cb,Gx))的预测方向组被选择成(810)预测方向。随后将所述组内的各个块标记为(812)可用于运动矢量预测和/或混合方向运动补偿预测,并且将其余各块标记为不可用于运动矢量预测和/或混合方向运动补偿预测。随后,从属于所述组的相邻块施行(814)对于当前已编码块的运动矢量预测(MVP0),比如H.264/AVC的定向和/或中值运动矢量预测。如果对于当前块使用跳过或直接模式等等并且断定(816)例如H.264/AVC MVP之类的传统运动矢量预测处理将使用“零值”参考索引和/或“零值默认值”运动矢量预测值,则在818中如下选择参考索引和运动矢量预测值。如果传统的运动矢量预测处理将使用“零值”参考索引,则替换地将参考索引选择成涉及具有最小参考索引并且具有与所选预测方向组相同的预测方向的参考画面。如果所选预测方向是视图间预测并且断定“零值默认值”运动矢量预测值,则在编码或解码处理(820)中使用根据等式(2)的像差数值d(cb)以替代“零值”运动矢量预测值。否则使用例如在当前H.264/AVC MVP中所公开的“零值默认值”运动矢量预测值。
图9的流程图示出了对应于时间直接模式等等的一个实施例。首先在900中,如下确定将对于当前cb使用的候选参考索引对。对应于列表1的参考索引变量cri首先被设定到0。同位块A驻留于在参考画面列表1中具有参考索引cri的参考画面中。如果块A的预测方向是视图间,则可以如前面所描述的那样对块A的选择进行像差补偿。同位块A使用来自存在于参考画面列表0中的参考画面的来自块B的混合方向运动补偿预测。如果块A的预测方向是视图内并且包含块A和块B的参考画面处在与包含cb的画面相同的视图中,则块A和B被视为可用,并且对应的参考索引被包括作为候选参考索引对。如果块A的预测方向是视图间并且包含块A和块B的参考画面处在与包含cb的画面不同的视图中(但是处在相同的访问单元中),则块A和B被视为可用,并且对应的参考索引被包括作为候选参考索引对。否则,块A和B被视为不可用。随后把cri递增1并且重复前面的各个步骤,除非cri涉及在参考画面列表1中不可用的参考索引。如果在900的处理结束时没有候选参考索引对,则例如可以应用对应于H.264/AVC的时间直接模式的参考索引选择。
在902中,可以根据等式(9)计算当前块cb与每一个候选参考索引对当中的块A和B之间的平均深度/像差偏差。
可以从所得到的各个偏差数值当中选择(906)具有最小数值min(diff(cb,nb))的候选参考索引对。如果所选参考索引对的最小数值min(diff(cb,nb))小于或等于阈值T(908),则对于cb应用时间直接预测等等(910)。在一些实施例中,可以省略步骤902、906和908,并且可以利用在900中找到的第一候选参考索引对施行时间直接模式预测等等。如果预测方向是视图间,则在使用来自同位块的运动矢量导出对应于当前块cb的运动矢量预测值时,可以在时间直接模式等等中使用摄影机索引差异、摄影机平移矢量、摄影机分隔等等对所述来自同位块的运动矢量进行缩放。
如果所选参考索引对的最小数值min(diff(cb,nb))大于阈值T4(908),则可以推断出例如传统双向预测的另一种预测模式(912)。
在前面给出的各个实施例中,选择与正被编码/解码的当前块cb相邻的各块。选择相邻块的实例包括空间邻居(如图7a中所示),或者例如通过时间直接模式等等的参考索引选择而确定的时间同位邻居(如图7b中所示)。其他实例包括邻近视图中的像差补偿邻居,其中可以应用像差补偿来确定相邻块与cb的对应性。本发明的各个方面不限于前面所提到的选择相邻块的方法,相反,这里的描述是针对可以作为部分地或完全地实现本发明的其他实施例的一种可能基础而给出的。
在一些实施例中,编码器可以例如基于以下方式来确定任何前面提到的阈值的数值:利用所述阈值的不同数值对各块进行编码,并且根据拉格朗日速率-失真优化等式选择最优的阈值数值。编码器可以在比特流内表明所确定的阈值数值,这例如是通过将其作为一个语法元素编码在序列参数集合、画面参数集合、切片参数集合、画面报头、切片报头中、编码在宏块语法结构内等等。在一些实施例中,解码器基于编码在比特流中的信息(比如表明阈值的数值的代码字)来确定所述阈值。
在一些实施例中,编码器在选择对应于当前纹理块cb和同位当前深度/像差块Di(cb)的各个语法元素的数值时施行联合优化,比如速率-失真优化。在联合速率-失真优化中,编码器例如可以在多种模式下对cb和Di(cb)进行编码,并且选择在所测试的各种模式当中得到最佳速率-失真性能的模式对。举例来说,可能发生的情况是,跳过模式在对应于Di(cb)的速率-失真性能中将是最优的,但是当联合优化cb和Di(cb)的速率-失真性能时,可能更加有益的是例如为Di(cb)选择直接模式,因此对应于Di(cb)的预测误差信号变为被编码,并且基于已解码Di(cb)的预测参数选择(比如运动矢量预测)可能变为使得cb编码的速率-失真性能得到改进。在联合优化对应于纹理和深度的速率和失真时,例如可以使用一个或更多合成视图来导出失真,这是因为纹理画面失真可能无法与深度画面失真直接相比较。编码器还可以选择对应于语法元素的数值从而使得基于深度/像差的预测参数变得有效。举例来说,当其中一些相邻块与当前纹理块cb的深度/像差相比具有相似的深度/像差时,编码器可以对于cb选择跳过或直接模式等等,因此对于(多个)运动矢量预测值的基于深度/像差的选择可能会非常成功。同样地,当没有相邻块与cb的深度/像差相比具有相似的深度/像差时,编码器可以避免对于cb选择跳过或直接模式等等。
在一些实施例中,编码器可以在没有基于深度/像差的预测参数导出的情况下对一些纹理视图进行编码,同时可以利用基于深度/像差的预测参数导出对其他纹理视图进行编码。举例来说,编码器可以在没有基于深度/像差的预测参数导出的情况下编码基础纹理视图,相反使用传统的预测机制。举例来说,编码器可以通过在没有基于深度/像差的预测参数导出的情况下编码基础视图来编码与H.264/AVC标准兼容的比特流,从而所述比特流可以由H.264/AVC解码器解码。同样地,编码器可以对其中一个视图集合与MVC兼容的比特流进行编码,这是通过在没有基于深度/像差的预测参数导出的情况下对基础视图和所述视图集合中的其他视图进行编码而实现的。从而所述视图集合可以由MVC解码器解码。
虽然许多实施例是针对亮度方面的混合方向运动补偿预测和运动矢量预测来描述的,但是应当理解的是,在许多编码安排中,可以利用预定关系从亮度运动信息导出色度运动信息。举例来说,可以假设相同的参考索引被用于色度分量和亮度,并且按照色度画面的空间分辨率与亮度画面的空间分辨率相比的相同比例从亮度运动矢量缩放色度的运动矢量。在一些实施例中,深度/像差画面的空间分辨率可以是不同的,或者可以作为一项预处理操作在编码器中被重采样从而变得不同于亮度纹理画面的空间分辨率。在一些实施例中,深度/像差画面在编码循环和/或解码循环中被重采样,从而变为与对应的亮度纹理画面完全相同的分辨率。在其他实施例中,通过与深度画面和亮度纹理画面的画面范围比例成比例地缩放块位置和尺寸而找到深度/像差画面的空间对应块。
对于一些实施例,纹理图像和与纹理图像相关联的深度图像是在不同空间分辨率下给出,因此已编码块Cb和相关联的d(Cb)在空间域内具有不同尺寸(在水平和垂直方向上或者在其中任一方向上具有不同像素数目)。
编码器可以使用几种方法来表明相对于深度图像的分辨率的纹理图像的不同分辨率。举例来说,可以由编码器在编码到比特流中的序列参数集合中分别指示纹理图像的分辨率和深度图像的分辨率。在另一个实施例中,编码器可以编码两个序列参数集合,其中一个将被用于解码纹理视图组成部分,另一个将被用于解码深度视图组成部分,其中每一个序列参数集合包括指示空间分辨率的语法元素。在该例中,编码器参照对应于纹理视图组成部分的序列参数集合编码对应于纹理的已编码切片,并且参照对应于深度视图组成部分的序列参数集合编码对应于深度的已编码切片。对于序列参数集合的参照可以是间接的,其例如可以是通过画面参数集合中的参照,并且所述画面参数集合可以被指示在已编码切片的切片报头中。解码器解析或解码语法结构之间的参照,并且使用通过信令传达的空间分辨率来解码纹理视图组成部分和深度视图组成部分。在一些编码方案中,纹理分辨率与深度分辨率之间的比例可以例如被预先定义成1:1或2:1(沿着全部两个坐标轴),并且不需要把关于纹理和深度分辨率的其中之一的信息编码到比特流中或者从比特流中解码。
为了施行所提出的运动矢量预测,可以将纹理和深度图像的空间分辨率归一化(调节到单一分辨率),这是通过将任一个组成部分(纹理或深度)重采样(内插)到另一个组成部分(分别是深度或纹理)的分辨率而实现的。可以通过多种方式实施去到更高分辨率的重采样,例如通过线性滤波器内插(例如在H.264/AVC或HEVC中所利用的双线性、三次、Lanczos或内插滤波器),或者通过非线性滤波器上采样,或者通过图像样本的简单复制。可以通过多种方式实施去到更低分辨率的重采样,例如通过抽取,或者带有低通滤波的抽取。
编码器可以基于一个或更多成本函数并且通过(近似)最小化/最大化所述一个或更多成本函数来确定将要使用的重采样处理、其各个部分或者阈值或其他参数数值。举例来说,重采样的深度画面相对于原始深度画面的峰值信噪比(PSNR)可以被用作成本函数的基础。编码器可以对于重采样处理、其各个部分或者阈值或其他参数数值当中的一项或更多项施行速率-失真优化选择,其中所述失真是基于所选择的成本函数。
由编码器使用的成本函数还可以是基于合成画面以及对所合成的画面应用例如PSNR之类的相似度度量,其中在所述合成处理中使用重采样的深度画面。
编码器可以编码指定所使用的重采样方法的至少一些部分的指示。这样的指示可以包括以下各项当中的一项或更多项:
-关于在编码中所使用的重采样处理和/或在解码中将要使用的重采样处理的标识
-对应于所述重采样处理的阈值和/或其他参数数值
编码器可以把这样的指示编码到已编码比特流中,比如序列参数集合、画面参数集合、适配参数集合、画面报头或者切片报头。
根据本发明的解码器可以从比特流中解码指定在编码中所使用和/或在解码中将要使用的重采样方法的至少一些部分。解码器随后可以根据已解码的指示来施行重采样处理。
在编码器和解码器中,重采样可以在编(解)码循环中发生,也就是说经过上采样的深度可以被使用在其他编(解)码处理中。上采样可以对于整个画面或者画面的一部分发生,比如覆盖由各个编码块构成的一条线的由各条邻接的样本线构成的一个集合。
在一些实施例中,分别以特定准确度(例如H.264/AVC标准中的运动矢量的1/4像素位置准确度,或者其他标准中的1/8像素位置准确度)来表示第一邻近纹理块A和第二邻近纹理块B的运动信息MV(A)和MV(B)。在这些实施例中,可以在编码器和解码器侧沿着水平和垂直轴对参考图像施行4x倍循环内上采样,以便施行运动或像差补偿预测。从这样的运动估计得到的MV(A)和MV(B)的各个运动矢量分量分别在4x倍的原始图像分辨率下被表示和处理。为了在这样的实施例中施行所提出的MVP,可以把纹理和深度数据都上采样到该特定分辨率,其可以被称作共同上采样循环内分辨率。可以对于整个帧实施所述上采样(通常在编码器中进行),或者可以在块层级局部施行内插(通常在解码器中进行)。
在一些实施例中,邻近纹理块A和B的MV(A)和MV(B)的各个运动矢量分量分别可以被重缩放以满足深度图像的空间分辨率,而不是对深度图像进行重采样。举例来说,如果纹理数据的MV(A)和MV(B)被表示在原始纹理分辨率下并且深度的分辨率小于纹理的分辨率,则把MV(A)和MV(B)的各个运动矢量分量(mv_x和mv_y)缩小纹理与深度数据相差的比例。在缩小运动矢量分量之后可以把缩小后的运动矢量分量量化到特定准确度,其中所述量化操作可以包括例如取整到最接近的量化水平。所述量化可以被选择成使得不需要对深度画面进行重采样,或者使得所重采样到的分辨率小于在没有量化的情况下本来将需要的分辨率。为了施行所提出的MVP在编码或解码循环中将深度画面所重采样到的分辨率可以被称作循环内深度分辨率。举例来说,深度画面可以沿着全部两个坐标轴具有亮度纹理画面的一半分辨率(例如亮度纹理画面具有1024x768分辨率,并且深度画面具有512x384分辨率),并且亮度纹理组成部分的运动矢量分量具有1/4像素准确度(例如mv_x等于5.25,并且mv_y等于4.25)。随后以比例2缩放在所提出的MVP中将被利用于深度的运动矢量分量(例如参照与前面相同的实例,mv_x等于2.625并且mv_y等于2.125),因此在深度画面内将具有1/8像素准确度。为了避免对于深度的重采样,可以在深度画面内把经过缩放的运动矢量分量量化到整数像素准确度(例如参照与前面一样的样本实例,mv_x等于3并且mv_y等于2)。在另一个实例中,可以在深度画面内把经过缩放的运动矢量分量量化到半像素准确度(例如参照与前面一样的样本实例,mv_x等于2.5并且mv_y等于2),因此需要沿着全部两个坐标轴把深度画面上采样2倍(例如参照与前面相同的实例是1024x768),其中例如可以利用双线性上采样来施行上采样。所提出的MVP的这样的实现方式将允许避免把深度数据重采样到所需分辨率,并且可以具有较低的计算复杂度。
编码器可以对指定将在所提出的MVP中使用的运动矢量缩放的指示或语法元素进行编码。这样的指示可以包括以下各项当中的一项或更多项:
-循环内深度分辨率。
-运动矢量分量被缩放到的准确度,例如1/4、1/2或完整像素准确度。
-用于量化的方法,例如恰好处于两个量化水平中间的负运动矢量分量被朝向零还是远离零缩放。举例来说,如果使用完整像素准确度,则这样的指示将表明运动矢量分量数值-0.5被取整到0还是-1。
编码器可以把这样的指示编码到已编码比特流的各个部分中,比如序列参数集合、画面参数集合、适配参数集合、画面报头或者切片报头。
根据本发明的解码器可以从比特流中解码指定将要在所提出的MVP中使用的深度运动矢量缩放的指示。解码器随后可以相应地施行运动矢量缩放,并且随后在所提出的针对纹理的MVP中使用经过缩放的运动矢量。
在一些实施例中,可以对被利用在所提出的MVP中的相似度量度进行调节,以便对于相似度比较使用与cb的块尺寸和/或形状不同的块尺寸和/或形状。举例来说,如果循环内深度分辨率不同于循环内亮度纹理分辨率,则可以根据循环内深度分辨率与循环内亮度纹理分辨率的比例来改变相似度比较的块尺寸。举例来说,如果循环内亮度纹理分辨率是沿着全部两个坐标轴的循环内深度分辨率的两倍,则沿着全部两个坐标轴的cb的一半块尺寸可以被用于相似度比较。
在一些实施例中,可以对被利用在所提出的MVP中的相似度量度进行调节,以便反映出纹理或深度数据的空间分辨率的差异。举例来说,如果深度画面已经对于所提出的MVP被重采样到所述共同上采样循环内分辨率,则可以根据所施行的深度重采样的比例来调节在MVP中所利用的相似度量度。如果深度数据的分辨率高于运动矢量的分辨率,则所述调节可以通过抽取或子采样来实施,或者如果深度的分辨率小于纹理数据或运动矢量(MV(A),MV(B))的分辨率,则可以通过对于深度信息d(MV(A),d(cb))的内插或上采样来实施所述调节。举例来说,如果亮度纹理数据的空间分辨率是沿着全部两个坐标轴的深度数据的空间分辨率的两倍并且深度被重采样到所述共同上采样循环内分辨率,则所述共同上采样循环内分辨率下的深度画面中的沿着全部两个坐标轴的每隔一个深度像素可以被包括在所述相似度方法的计算中。
编码器可以对指定用于所提出的MVP的相似度量度的指示或语法元素进行编码。这样的指示可以包括以下各项当中的一项或更多项:
-共同上采样循环内分辨率
-在选择用于相似度量度计算的深度像素时将要使用的抽取方案和比例。举例来说,可以表明来自所述共同上采样循环内分辨率下的深度画面的每隔一个深度像素(沿着全部两个坐标轴)被使用在所述相似度量度计算中。
-表明将被使用在相似度量度计算中的纹理和深度图像之间的块尺寸关系的块尺寸或比例。举例来说,可以表明沿着全部两个坐标轴的当前纹理块cb的尺寸的一半块尺寸被用于所述相似度度量。
编码器可以把这样的指示编码到已编码比特流的各个部分中,比如序列参数集合、画面参数集合、适配参数集合、画面报头或者切片报头。
根据本发明的解码器可以从比特流中解码指定将要在所提出的MVP中使用的相似度量度计算的指示。解码器随后可以在所提出的针对纹理的MVP中施行所指示的相似度量度计算。
对于一些其他实施例,可以利用不同的采样方法来表示纹理和相关联的深度图像。举例来说,已编码纹理数据的每一项分割(PU、4x4、8x8、16x8、8x16块以及其他)可以与单一深度数值相关联,其将表示对应于当前纹理分割的平均深度数值。对应于深度图像的这种格式可以被视为非均匀深度数据表示,并且可以不同于对于纹理数据图像所利用的典型采样方案(均匀采样)。
图20示出了这样的表示的一个实例,其中右侧的灰色矩形示出了利用规则采样的纹理图像的边界,左侧的灰色矩形则示出了与该纹理数据相关联的深度图像边界。纹理图像块{Cb1-Cb3}由利用均匀采样方案表示的一组纹理图像像素构成。但是深度信息{d(Cb1)-d(Cb3)}则由对应于每个纹理块{Cb1-Cb3}的单一深度数值表示,并且这些数值由下方图像左侧的红色圆圈表示。利用这样的表示,所参考的深度块d(MV(A),d(Cb))和d(MV(B),d(Cb))可能无法被直接访问,并且可能必须施行一些用于深度数值提取的操作。
我们考虑图20,所参考的纹理块X由MV(A)从Cb位置寻址,并且块X的空间尺寸等于Cb块的空间尺寸。在参考纹理图像中,块X可以与纹理数据的几项分割(其可以被标记为Cb1、Cb2、Cb3)重叠,并且其利用均匀采样来表示。由于深度数据是在非均匀采样中表示,因此所参考的块d(X)等于d(MV(A),d(Cb)),其覆盖利用被表示为白色方块区域内的红色圆圈的几个深度图数值{d(Cb1),d(Cb2),d(Cb3)}所表示的深度区域。
为了在图20中所描述的这种情况下施行MVP,需要通过重采样方法从可用的非均匀采样深度数据{d(Cb1)、d(Cb2)和d(Cb3)}或者其邻居提取出对应于所参考的纹理块X的深度数值d(X)。这样的重采样的实例可以包括融合(合并)或平均恰好在这样的非均匀表示中表示所参考的块d(X)的可用深度样本的线性或非线性操作。在某些情况下,来自{d(Cb1),d(Cb2),d(Cb3)}的邻域内的附加深度样本的深度数据可以被用来改进深度估计处理。
对于一些实施例,可以在已编码纹理图像的语法元素内发送非均匀表示下的深度数据,例如在切片报头处或者在已编码纹理块语法结构内发送。在这样的实施例中,d(X)计算的操作将需要从Cb1-Cb3的语法元素中提取出深度信息,并且随后融合/合并或者聚合深度信息d(Cb1)-d(Cb3)等等以产生d(X)数据。
在一些其他实施例中,可以在解码器侧从可用的纹理数据的多视图表示提取/估计/产生相应的各块Cb1-Cb3的非均匀表示下的深度数据。在这样的实施例中,d(X)计算的操作将需要从可用的纹理数据的多视图表示估计对应于纹理块Cb1-Cb3的深度信息,以用于随后融合/合并或者聚合深度信息d(Cb1)-d(Cb3)等等以产生d(X)数据。
后面将描述可以基于已经发送的信息导出针对当前纹理视图组成部分的深度图的适当估计的两种示例性方法。
在第一种方法中,作为比特流的一部分发送深度数据,并且利用这种方法的解码器对先前已编码的视图的深度图进行解码,以用于解码从属的视图。换句话说,所述深度图估计可以是基于相同的访问单元或画面采样时刻的另一视图的已经编(解)码的深度图。如果对应于参考视图的深度图在当前画面之前被编码,则可以把所重建的深度图映射或卷绕或视图合成到当前画面的坐标系中,以用于获得针对当前画面的适当的深度图估计。在图21中针对简单的深度图示出了这样的映射,其由正方形前景对象和具有恒定深度的背景构成。对于给定深度图的每一个样本,其深度样本数值被转换成样本准确的像差矢量。随后将深度图的每一个样本移位所述像差矢量。如果两个或更多样本被移位到相同的样本位置,则选择表示与摄影机的最小距离的样本数值(在一些实施例中即具有更大数值的样本)。一般来说,所描述的映射导致目标视图中的没有被指派深度样本数值的样本位置。这些样本位置被描绘为图21的画面中部的黑色区域。这些区域代表由于摄影机的移动而被揭开并且可以利用周围的背景样本数值填充的背景部分。可以使用简单的孔洞填充算法,其逐条线地处理经过转换的深度图。利用表示与摄影机的更大距离的两个相邻样本的深度数值(在一些实施例中即更小的深度数值)来填充由尚未被指派数值的相继的样本位置构成的每一条线段。
图21的左侧部分示出了原始深度图;中间部分示出了在将原始样本移位之后的经过转换的深度图;右侧部分示出了在填充孔洞之后的经过最终转换的深度图。
在第二种示例性方法中,深度图估计是基于已编码的像差和运动矢量。在随机访问单元中,所有基础视图画面块都被帧内编码。在从属视图的画面中,大多数块通常是利用像差补偿预测(DCP,其也被称作视图间预测)编码,其余的块被帧内编码。在对随机访问单元中的第一从属视图进行编码时,没有深度或像差信息可用。因此,只能利用局部邻域(即通过传统的运动矢量预测)导出候选像差矢量。但是在对随机访问单元中的第一从属视图进行编码之后,所发送的像差矢量可以被用于导出深度图估计,正如在图22中所示出的那样。因此,被用于像差补偿预测的像差矢量被转换成深度数值,并且像差补偿块的所有深度样本都被设定成等于所导出的深度数值。帧内编码块的深度样本是基于相邻块的深度样本导出的;所使用的算法类似于空间帧内预测。如果多于两个视图被编码,则可以利用前面描述的方法把所获得的深度图映射到其他视图中,并且将其用作用于导出候选像差矢量的深度图估计。
对应于随机访问单元中的第一从属视图的画面的深度图估计被用于导出对应于第一从属视图的下一个画面的深度图。在图23中示出了所述算法的基本原理。在对随机访问单元中的第一从属视图的画面进行编码之后,所导出的深度图被映射到基础视图中,并且与所重建的画面存储在一起。基础视图的下一个画面通常可以被帧间编码。对于利用运动补偿预测(MCP)编码的每一个块,相关联的运动参数被应用于深度图估计。通过利用与对应于相关联的纹理块相同的运动参数进行运动补偿预测而获得相应的深度图样本块;取代所重建的视频画面,相关联的深度图估计被用作参考画面。为了简化运动补偿并且避免生成新的深度图数值,针对深度块的运动补偿预测可以不涉及任何内插。在使用运动矢量之前可以将其取整到样本精确度。帧内编码块的深度图样本同样是基于相邻深度图样本而确定的。最后,通过把对于基础视图获得深度图估计映射到第一从属视图中导出对应于第一从属视图的深度图估计,其被用于运动参数的视图间预测。
在对第一从属视图的第二画面进行编码之后,基于实际编码的运动和像差参数来更新深度图的估计,正如在图24中所示出的那样。对于利用像差补偿预测编码的块,通过把像差矢量转换成深度数值而获得深度图样本。类似于基础视图,可以通过对于先前估计的深度图的运动补偿预测获得对应于利用运动补偿预测编码的块的深度图样本。为了考虑到潜在的深度改变,可以使用一种通过添加深度校正来确定新的深度数值的机制。通过把对应于基础视图的当前块和相应的参考块的运动矢量之间的差异转换成深度差异来导出深度校正。同样通过空间预测确定对应于帧内编码块的深度数值。把更新后的深度图映射到基础视图,并且与所重建的画面存储在一起。其还可以被用于导出对应于相同访问单元中的其他视图的深度图估计。
对于后面的画面重复所描述的处理。在对基础视图画面进行编码之后,通过利用所发送的运动参数进行运动补偿预测来确定对应于基础视图画面的深度图估计。这一估计被映射到第二视图中,并且被用于运动参数的视图间预测。在对第二视图的画面进行编码之后,利用实际所使用的编码参数来更新深度图估计。在下一个随机访问单元处不使用视图间运动参数预测,并且在对该随机访问单元的第一从属视图进行解码之后,可以如前所述地重新初始化深度图。
对于一些其他实施例,可以把所提出的MVP方案与其他运动矢量预测方案相组合,比如H.264/AVC的MVP或者高效率视频编码(HEVC)发展的MVP。举例来说,对于其中可用的深度信息不准确或者存在噪声的MVD内容,可以利用替换的MVP方案自适应地补充所提出的MVP方案。
可以在编码器侧做出关于应用各种竞争MVP方案的决定,并且可以通过比特流用信令向解码器传达。MVP选择例如可以是基于帧层级的速率-失真优化。在该实施例中,利用不同的MVP方案对一帧进行编码,选择提供最小速率-失真成本的MVP,并且在画面参数集合(PPS)、适配参数集合(APS)、画面报头、切片报头等等处用信令传达。或者可以在切片、块或块分割层级实施MVP选择,并且在已解码块分割之前的切片报头或块语法结构中用信令传达表明所使用的MVP方案的MVP索引或类似指示。在这样的实施例中,解码器从比特流中提取出所述MVP索引或类似指示,并且相应地配置解码处理。
后面将更加详细地描述用于实施本发明的实施例的适当设备和可能机制。在这方面首先将参照图10,该图示出了可以合并有根据本发明的一个实施例的编解码器的示例性设备或电子装置50的示意性方块图。
电子装置50例如可以是无线通信系统的移动终端或用户装备。但是应当认识到,本发明的实施例可以被实施在可能需要编码和解码或者编码或解码视频图像的任何电子装置或设备内。
设备50可以包括用于合并和保护装置的外罩30。设备50还可以包括具有液晶显示器形式的显示器32。在本发明的其他实施例中,所述显示器可以是适合于显示图像或视频的任何适当的显示器技术。设备50还可以包括小键盘34。在本发明的其他实施例中,可以采用任何适当的数据或用户接口机制。举例来说,用户接口可以被实施为作为触敏显示器的一部分的虚拟键盘或数据输入系统。所述设备可以包括麦克风36或者可以是数字或模拟信号输入的任何适当的音频输入。设备50还可以包括音频输出装置,其在本发明的实施例中可以是以下各项当中的任一项:耳机38,扬声器,或者模拟音频或数字音频输出连接。设备50还可以包括电池40(或者在本发明的其他实施例中,所述装置可以由例如太阳能电池、燃料电池或发条发电机之类的任何适当的移动能量装置供电)。所述设备还可以包括用于与其他装置的短距离视线通信的红外端口42。在其他实施例中,设备50还可以包括任何适当的短距离通信解决方案,比如Bluetooth无线连接和/或USB/火线有线连接。
设备50可以包括用于控制该设备50的控制器56或处理器。控制器56可以连接到存储器58,其在本发明的实施例中可以存储采取图像形式的数据和音频数据,并且/或者还可以存储用于在控制器56上实施的指令。控制器56还可以连接到编解码器电路54,其适合于实施音频和/或视频数据的编码和解码,或者帮助由控制器56实施的编码和解码。
设备50还可以包括读卡器48和智能卡46,例如用于提供用户信息并且适合于提供认证信息以用于网络上的用户认证和授权的UICC和UICC读取器。
设备50可以包括无线电接口电路52,其连接到控制器并且适合于生成无线通信信号,以便例如与蜂窝通信网络、无线通信系统或无线局域网通信。设备50还可以包括连接到无线电接口电路52的天线44,以用于向(多个)其他设备发送在无线电接口电路52处生成的射频信号以及用于从(多个)其他设备接收射频信号。
在本发明的一些实施例中,设备50包括能够记录或检测单独各帧的摄影机,其随后被传递到编解码器54或控制器以进行处理。在本发明的其他实施例中,所述设备可以在发送和/或存储之前接收来自另一装置的视频图像数据以进行处理。在本发明的其他实施例中,设备50可以通过无线方式或者通过有线连接来接收图像以进行编码/解码。
关于图12,该图示出了可以在其中利用本发明的实施例的系统的一个实例。系统10包括可以通过一个或更多网络进行通信的多个通信装置。系统10可以包括有线或无线网络的任意组合,其中包括而不限于无线蜂窝电话网络(比如GSM、UMTS、CDMA网络等等)、比如由任一项IEEE802.x标准定义无线局域网(WLAN)、Bluetooth个人区域网、以太网局域网、令牌环局域网、广域网以及因特网。
系统10可以同时包括适合于实施本发明的实施例的有线和无线通信装置或设备50。
举例来说,图12中所示的系统示出了移动电话网络11和因特网28的表示。去到因特网28的连接性可以包括而不限于长距离无线连接、短距离无线连接以及各种有线连接,其中包括而不限于电话线、有线电视线、输电线以及类似的通信路径。
系统10中示出的示例性通信装置可以包括而不限于电子装置或设备50、个人数字助理(PDA)与移动电话的组合14、PDA16、集成消息传送装置(IMD)18、台式计算机20、笔记本计算机22。设备50可以是静止的,或者在由移动中的个人携带时是移动的。设备50还可以处于某种运输模式中,其中包括而不限于汽车、卡车、出租车、公共汽车、火车、船舶、飞机、自行车、摩托车或者任何类似的适当运输模式。某种或其他设备可以发送和接收呼叫和消息,并且通过去到基站24的无线连接25与服务提供商通信。基站24可以连接到网络服务器26,其允许移动电话网络11与因特网28之间的通信。所述系统可以包括附加的通信装置和各种类型的通信装置。
所述通信装置可以利用多种传输技术进行通信,其中包括而不限于码分多址(CDMA)、全球移动通信系统(GSM)、通用移动电信系统(UMTS)、时分多址(TDMA)、频分多址(FDMA)、传输控制协议-互联网协议(TCP-IP)、短消息服务(SMS)、多媒体消息服务(MMS)、电子邮件、即时消息服务(IMS)、Bluetooth、IEEE802.11以及任何类似的无线通信技术。在实施本发明的各个实施例方面所涉及的通信装置可以利用多种介质进行通信,其中包括而不限于无线电、红外、激光、线缆连接以及任何适当的连接。
虽然前面的实例描述了在电子装置内的编解码器中操作的本发明的实施例,但是应当认识到,后面所描述的本发明可以被实施为任何视频编解码器的一部分。因此,本发明的实施例例如可以被实施在可以通过固定或有线通信路径来实施视频编码的视频编解码器中。
因此,用户装备可以包括例如在前面的本发明的实施例中所描述的视频编解码器。应当认识到,术语“用户装备”意图涵盖任何适当类型的无线用户装备,比如移动电话、便携式数据处理装置或者便携式web浏览器。
此外,公共陆地移动网络(PLMN)的元件也可以包括如前所述的视频编解码器。
总体来说,本发明的各个实施例可以用硬件或专用电路、软件、逻辑或者其任意组合来实施。举例来说,一些方面可以用硬件实施,其他方面则可以用固件或软件实施,所述固件或软件可以由控制器、微处理器或其他计算装置执行,但是本发明不限于此。虽然本发明的各个方面可能被图示并描述为方块图、流程图或者利用某种其他图形表示来描述,但是很好理解的是,作为非限制性实例,这里所描述的这些方块、设备、系统、技术或方法可以用硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算装置或者其某种组合来实施。
本发明的实施例可以通过可由移动装置的数据处理器(比如在处理器实体中)执行的计算机软件来实施,或者通过硬件实施,或者通过软件与硬件的组合来实施。在这方面还应当提到的是,附图中的逻辑流程的任何方块可以代表程序步骤,或者互连的逻辑电路、方块和功能,或者程序步骤与逻辑电路、方块和功能的组合。所述软件可以被存储在物理介质上,比如存储器芯片或实施在处理器内的存储器块,例如硬盘或软盘之类的磁性介质,以及例如DVD及其各种数据变型、CD之类的光学介质。
所述存储器可以是适合于本地技术环境的任何类型,并且可以利用任何适当的数据存储技术来实施,比如基于半导体的存储器装置、磁性存储器装置和系统、光学存储器装置和系统、固定存储器以及可移除存储器。所述数据处理器可以是适合于本地技术环境的任何类型,并且作为非限制性实例可以包括以下各项当中的一项或更多项:通用计算机、专用计算机、微处理器、数字信号处理器(DSP)以及基于多核处理器架构的处理器。
本发明的实施例可以被实践在例如集成电路模块之类的多种组件中。集成电路的设计总体而言是高度自动化的处理。复杂且功能强大的软件工具可用于把逻辑层级设计转换成准备好被蚀刻并形成在半导体衬底上的半导体电路设计。
比如由Synopsys,Inc.(Mountain View,California)和CadenceDesign(San Jose,California)提供的程序利用明确建立的设计规则以及预先存储的设计模块库在半导体芯片上自动布置导线以及放置组件。一旦完成针对半导体电路的设计,就可以把具有标准化电子格式(例如Opus、GDSII等等)的最终设计发送到半导体制作设施或“fab(半导体制作系统)”以进行制作。
前面的描述通过示例性而非限制性的实例提供了关于本发明的示例性实施例的全面且富有信息量的描述。但是在结合附图及所附权利要求书阅读前面的描述时,本领域技术人员可以想到各种修改和适配。但是对于本发明的教导的所有这些和类似的修改仍将落在本发明的范围内。

Claims (12)

1.一种方法,其包括:
从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块,其中解码所述第一已编码纹理块包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测解码所述第一已编码纹理块。
2.根据权利要求1所述的方法,其还包括:
导出候选运动矢量的列表;以及
从所述比特流解码所述候选运动矢量列表中的所选运动预测候选的索引。
3.一种包括视频解码器的设备,所述视频解码器被配置成:
从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块,其中解码所述第一已编码纹理块包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测解码所述第一已编码纹理块。
4.根据权利要求3所述的设备,其中,所述视频解码器被配置成:
导出候选运动矢量的列表;以及
从所述比特流解码所述候选运动矢量列表中的所选运动预测候选的索引。
5.一种其中存储有供设备使用的代码的计算机可读存储介质,当由处理器执行时,所述代码使得所述设备施行以下步骤:
从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块,其中解码所述第一已编码纹理块包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测解码所述第一已编码纹理块。
6.一种包括至少一个处理器和至少一个存储器的设备,所述至少一个存储器中存储有代码,当由所述至少一个处理器执行时,所述代码使得设备施行以下步骤:
从比特流把第一已编码纹理画面的第一已编码纹理块解码成第一纹理块,其中解码所述第一已编码纹理块包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测解码所述第一已编码纹理块。
7.一种方法,其包括:
把第一已编码纹理画面的第一已编码纹理块编码成第一纹理块,其中对所述第一已编码纹理块进行编码包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测对所述第一已编码纹理块进行编码。
8.根据权利要求7所述的方法,其还包括:
导出候选运动矢量的列表;以及
把标识所述像差运动矢量的索引编码在所述候选运动矢量列表中。
9.一种包括视频编码器的设备,所述视频编码器被配置成:
把第一已编码纹理画面的第一已编码纹理块编码成第一纹理块,其中对所述第一已编码纹理块进行编码包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测对所述第一已编码纹理块进行编码。
10.根据权利要求9所述的设备,其中,所述视频解码器被配置成:
导出候选运动矢量的列表;以及
把标识所述像差运动矢量的索引编码在所述候选运动矢量列表中。
11.一种其中存储有供设备使用的代码的计算机可读存储介质,当由处理器执行时,所述代码使得所述设备施行以下步骤:
把第一已编码纹理画面的第一已编码纹理块编码成第一纹理块,其中对所述第一已编码纹理块进行编码包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测对所述第一已编码纹理块进行编码。
12.一种包括至少一个处理器和至少一个存储器的设备,所述至少一个存储器中存储有代码,当由所述至少一个处理器执行时,所述代码使得设备施行以下步骤:
把第一已编码纹理画面的第一已编码纹理块编码成第一纹理块,其中对所述第一已编码纹理块进行编码包括:
获得在空间上与所述第一纹理块位于同一处的第一深度/像差块;
从所述第一深度/像差块导出像差运动矢量;
在针对所述第一纹理块的运动矢量预测中使用所述像差运动矢量;以及
利用运动矢量预测对所述第一已编码纹理块进行编码。
CN201280052480.5A 2011-08-30 2012-08-30 用于视频编码和解码的设备、方法和计算机程序 Pending CN103891291A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161529037P 2011-08-30 2011-08-30
US61/529,037 2011-08-30
US201161561528P 2011-11-18 2011-11-18
US61/561,528 2011-11-18
PCT/FI2012/050838 WO2013030456A1 (en) 2011-08-30 2012-08-30 An apparatus, a method and a computer program for video coding and decoding

Publications (1)

Publication Number Publication Date
CN103891291A true CN103891291A (zh) 2014-06-25

Family

ID=47755385

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280052480.5A Pending CN103891291A (zh) 2011-08-30 2012-08-30 用于视频编码和解码的设备、方法和计算机程序

Country Status (8)

Country Link
US (1) US20130229485A1 (zh)
EP (1) EP2752001A4 (zh)
KR (2) KR20170005464A (zh)
CN (1) CN103891291A (zh)
CA (1) CA2846425A1 (zh)
IN (1) IN2014CN01784A (zh)
RU (1) RU2583040C2 (zh)
WO (1) WO2013030456A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107005711A (zh) * 2014-11-05 2017-08-01 三星电子株式会社 逐样本预测编码设备和方法
CN108965873A (zh) * 2018-07-24 2018-12-07 北京大学 一种脉冲阵列编码的自适应划分方法
CN110365980A (zh) * 2019-09-02 2019-10-22 移康智能科技(上海)股份有限公司 动态调整图像编码区域的方法
CN113545034A (zh) * 2019-03-08 2021-10-22 交互数字Vc控股公司 深度图处理

Families Citing this family (120)

* 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
WO2012007038A1 (en) 2010-07-15 2012-01-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Hybrid video coding supporting intermediate view synthesis
CN107105281B (zh) * 2010-12-14 2019-11-12 M&K控股株式会社 用于解码运动画面的设备
US9609353B2 (en) * 2010-12-14 2017-03-28 M&K Holdings Inc. Apparatus for encoding a moving picture
US9473789B2 (en) * 2010-12-14 2016-10-18 M&K Holdings Inc. Apparatus for decoding a moving picture
JP5747559B2 (ja) * 2011-03-01 2015-07-15 富士通株式会社 動画像復号方法、動画像符号化方法、動画像復号装置、及び動画像復号プログラム
HRP20230425T1 (hr) 2011-03-21 2023-07-07 Lg Electronics, Inc. Odabir prediktora vektora kretanja
US9485517B2 (en) 2011-04-20 2016-11-01 Qualcomm Incorporated Motion vector prediction with motion vectors from multiple views in multi-view video coding
JP6072678B2 (ja) * 2011-04-25 2017-02-01 シャープ株式会社 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
JP5768491B2 (ja) * 2011-05-17 2015-08-26 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
CN105187839A (zh) 2011-05-31 2015-12-23 Jvc建伍株式会社 动图像解码装置、动图像解码方法、接收装置及接收方法
JP6039178B2 (ja) * 2011-09-15 2016-12-07 シャープ株式会社 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム
EP3754982B1 (en) * 2011-09-29 2024-05-01 SHARP Kabushiki Kaisha Image decoding device, image decoding method, image encoding method and image encoding device for performing bi-prediction to uni-prediction conversion
US20140241434A1 (en) * 2011-10-11 2014-08-28 Mediatek Inc Method and apparatus of motion and disparity vector derivation for 3d video coding and hevc
CN107465922B (zh) 2011-11-08 2020-10-09 株式会社Kt 利用解码装置对视频信号进行解码的方法
EP3657796A1 (en) 2011-11-11 2020-05-27 GE Video Compression, LLC Efficient multi-view coding using depth-map estimate for a dependent view
KR101662918B1 (ko) 2011-11-11 2016-10-05 지이 비디오 컴프레션, 엘엘씨 깊이-맵 추정 및 업데이트를 사용한 효율적인 멀티-뷰 코딩
JP5779483B2 (ja) * 2011-11-15 2015-09-16 株式会社ソシオネクスト 画像処理装置、及び画像処理方法
EP2781091B1 (en) 2011-11-18 2020-04-08 GE Video Compression, LLC Multi-view coding with efficient residual handling
WO2013091513A1 (en) * 2011-12-22 2013-06-27 Mediatek Inc. Method and apparatus of texture image compression in 3d video coding
WO2013100635A1 (ko) * 2011-12-30 2013-07-04 (주)휴맥스 3차원 영상 부호화 방법 및 장치, 및 복호화 방법 및 장치
JP6078927B2 (ja) * 2012-01-10 2017-02-15 サン パテント トラスト 動画像符号化方法、動画像符号化装置、動画像復号方法、及び、動画像復号装置
WO2013133587A1 (ko) * 2012-03-07 2013-09-12 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US8953612B2 (en) * 2012-03-07 2015-02-10 Cmmb Vision Usa Inc Efficient broadcasting via random linear packet combining
US9503720B2 (en) 2012-03-16 2016-11-22 Qualcomm Incorporated Motion vector coding and bi-prediction in HEVC and its extensions
US10200709B2 (en) * 2012-03-16 2019-02-05 Qualcomm Incorporated High-level syntax extensions for high efficiency video coding
JP2013207755A (ja) * 2012-03-29 2013-10-07 Sony Corp 画像処理装置および方法
US9979959B2 (en) 2012-04-20 2018-05-22 Qualcomm Incorporated Video coding with enhanced support for stream adaptation and splicing
US9473769B2 (en) * 2012-06-08 2016-10-18 Texas Instruments Incorporated Method and system for reducing slice header parsing overhead in video coding
US9479776B2 (en) 2012-07-02 2016-10-25 Qualcomm Incorporated Signaling of long-term reference pictures for video coding
WO2014005280A1 (en) * 2012-07-03 2014-01-09 Mediatek Singapore Pte. Ltd. Method and apparatus to improve and simplify inter-view motion vector prediction and disparity vector prediction
US9769450B2 (en) * 2012-07-04 2017-09-19 Intel Corporation Inter-view filter parameters re-use for three dimensional video coding
CN107454426A (zh) * 2012-07-27 2017-12-08 寰发股份有限公司 三维视频编码或解码方法
WO2014047351A2 (en) 2012-09-19 2014-03-27 Qualcomm Incorporated Selection of pictures for disparity vector derivation
US9998727B2 (en) * 2012-09-19 2018-06-12 Qualcomm Incorporated Advanced inter-view residual prediction in multiview or 3-dimensional video coding
KR102379609B1 (ko) 2012-10-01 2022-03-28 지이 비디오 컴프레션, 엘엘씨 향상 레이어 모션 파라미터들에 대한 베이스-레이어 힌트들을 이용한 스케일러블 비디오 코딩
US9625994B2 (en) * 2012-10-01 2017-04-18 Microsoft Technology Licensing, Llc Multi-camera depth imaging
CA2887106A1 (en) 2012-10-03 2014-04-10 Mediatek Inc. Method and apparatus for inter-component motion prediction in three-dimensional video coding
US9699450B2 (en) * 2012-10-04 2017-07-04 Qualcomm Incorporated Inter-view predicted motion vector for 3D video
KR20150090057A (ko) * 2012-10-08 2015-08-05 엘지전자 주식회사 다시점 비디오 신호의 인코딩 방법, 디코딩 방법 및 이에 대한 장치
JP2014082541A (ja) * 2012-10-12 2014-05-08 National Institute Of Information & Communication Technology 互いに類似した情報を含む複数画像のデータサイズを低減する方法、プログラムおよび装置
JP2014093602A (ja) * 2012-11-01 2014-05-19 Toshiba Corp 画像処理装置、画像処理方法、画像処理プログラム、および立体画像表示装置
US10334259B2 (en) 2012-12-07 2019-06-25 Qualcomm Incorporated Advanced residual prediction in scalable and multi-view video coding
KR101407832B1 (ko) * 2012-12-12 2014-06-18 조선대학교산학협력단 다수 참조 프레임을 사용하는 영상 코덱의 에러 리질리언스를 위한 참조 프레임 선택 기법
US9544566B2 (en) 2012-12-14 2017-01-10 Qualcomm Incorporated Disparity vector derivation
US20150326880A1 (en) * 2012-12-14 2015-11-12 Liu He Inside view motion prediction among texture and depth view components with asymmetric spatial resolution
US9247256B2 (en) * 2012-12-19 2016-01-26 Intel Corporation Prediction method using skip check module
US9516332B2 (en) * 2012-12-21 2016-12-06 Qualcomm Incorporated Disparity vector derivation in three-dimensional video coding
CN104885450B (zh) * 2012-12-27 2017-09-08 日本电信电话株式会社 图像编码方法、图像解码方法、图像编码装置、图像解码装置、图像编码程序、以及图像解码程序
US9967586B2 (en) * 2013-01-07 2018-05-08 Mediatek Inc. Method and apparatus of spatial motion vector prediction derivation for direct and skip modes in three-dimensional video coding
US10136119B2 (en) 2013-01-10 2018-11-20 Qualcomm Incoporated View synthesis in 3D video
EP2944082B1 (en) 2013-01-11 2019-08-21 Huawei Technologies Co., Ltd. Method and apparatus of depth prediction mode selection
US9521389B2 (en) 2013-03-06 2016-12-13 Qualcomm Incorporated Derived disparity vector in 3D video coding
US9369708B2 (en) * 2013-03-27 2016-06-14 Qualcomm Incorporated Depth coding modes signaling of depth data for 3D-HEVC
US9516306B2 (en) 2013-03-27 2016-12-06 Qualcomm Incorporated Depth coding modes signaling of depth data for 3D-HEVC
CN117956143A (zh) * 2013-04-08 2024-04-30 Ge视频压缩有限责任公司 多视图解码器
WO2014166063A1 (en) * 2013-04-09 2014-10-16 Mediatek Inc. Default vector for disparity vector derivation for 3d video coding
WO2014166068A1 (en) * 2013-04-09 2014-10-16 Mediatek Inc. Refinement of view synthesis prediction for 3-d video coding
CN105144714B (zh) * 2013-04-09 2019-03-29 寰发股份有限公司 三维或多视图视频编码或解码的方法及装置
EP2932720A4 (en) * 2013-04-10 2016-07-27 Mediatek Inc METHOD AND APPARATUS FOR DIVIDING VECTOR DIVIDER FOR THREE-DIMENSIONAL AND MULTI-VIEW VIDEO CODING
JP6389833B2 (ja) * 2013-04-10 2018-09-12 寰發股▲ふん▼有限公司HFI Innovation Inc. 三次元ビデオ符号化の視点間候補導出の方法と装置
US9930363B2 (en) 2013-04-12 2018-03-27 Nokia Technologies Oy Harmonized inter-view and view synthesis prediction for 3D video coding
US9462283B2 (en) * 2013-04-18 2016-10-04 Spotlight Technologies Ltd. Efficient compression of Bayer images
US9667990B2 (en) * 2013-05-31 2017-05-30 Qualcomm Incorporated Parallel derived disparity vector for 3D video coding with neighbor-based disparity vector derivation
WO2015000108A1 (en) * 2013-07-01 2015-01-08 Mediatek Singapore Pte. Ltd. An improved texture merging candidate in 3dvc
WO2015003383A1 (en) 2013-07-12 2015-01-15 Mediatek Singapore Pte. Ltd. Methods for inter-view motion prediction
WO2015006899A1 (en) * 2013-07-15 2015-01-22 Mediatek Singapore Pte. Ltd. A simplified dv derivation method
WO2015006924A1 (en) * 2013-07-16 2015-01-22 Mediatek Singapore Pte. Ltd. An additional texture merging candidate
WO2015006883A1 (en) * 2013-07-18 2015-01-22 Qualcomm Incorporated Motion vector inheritance techniques for depth coding
WO2015006967A1 (en) * 2013-07-19 2015-01-22 Mediatek Singapore Pte. Ltd. Simplified view synthesis prediction for 3d video coding
WO2015006984A1 (en) 2013-07-19 2015-01-22 Mediatek Singapore Pte. Ltd. Reference view selection for 3d video coding
US10230937B2 (en) 2013-08-13 2019-03-12 Hfi Innovation Inc. Method of deriving default disparity vector in 3D and multiview video coding
US10491916B2 (en) * 2013-10-01 2019-11-26 Advanced Micro Devices, Inc. Exploiting camera depth information for video encoding
EP3059966B1 (en) * 2013-10-18 2021-01-13 LG Electronics Inc. Video decoding apparatus and method for decoding multi-view video
EP3059968A4 (en) * 2013-10-18 2017-05-31 LG Electronics Inc. Method and apparatus for decoding multi-view video
US9749642B2 (en) 2014-01-08 2017-08-29 Microsoft Technology Licensing, Llc Selection of motion vector precision
US9774881B2 (en) * 2014-01-08 2017-09-26 Microsoft Technology Licensing, Llc Representing motion vectors in an encoded bitstream
US9942560B2 (en) 2014-01-08 2018-04-10 Microsoft Technology Licensing, Llc Encoding screen capture data
US9716884B2 (en) * 2014-03-20 2017-07-25 Hfi Innovation Inc. Method of signaling for mode selection in 3D and multi-view video coding
US9591316B2 (en) * 2014-03-27 2017-03-07 Intel IP Corporation Scalable video encoding rate adaptation based on perceived quality
WO2015192371A1 (en) * 2014-06-20 2015-12-23 Mediatek Singapore Pte. Ltd. Texture based depth coding method
WO2016003209A1 (ko) * 2014-07-03 2016-01-07 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치
JP6446070B2 (ja) * 2014-07-07 2018-12-26 寰發股▲ふん▼有限公司HFI Innovation Inc. イントラブロックコピー検索と補償範囲の方法
AU2015327521B2 (en) * 2014-09-30 2018-07-26 Hfi Innovation Inc. Method of lookup table size reduction for depth modelling mode in depth coding
KR102281184B1 (ko) * 2014-11-20 2021-07-23 삼성전자주식회사 영상 보정 방법 및 장치
US10277888B2 (en) * 2015-01-16 2019-04-30 Qualcomm Incorporated Depth triggered event feature
US10773329B2 (en) 2015-01-20 2020-09-15 Illinois Tool Works Inc. Multiple input welding vision system
US9883187B2 (en) 2015-03-06 2018-01-30 Qualcomm Incorporated Fast video encoding method with block partitioning
CN107912061B (zh) 2015-03-06 2021-06-01 伊利诺斯工具制品有限公司 用于焊接的传感器辅助头戴式显示器
WO2016144744A1 (en) 2015-03-09 2016-09-15 Illinois Tool Works Inc. Methods and apparatus to provide visual information associated with welding operations
JP6052319B2 (ja) * 2015-03-25 2016-12-27 Nttエレクトロニクス株式会社 動画像符号化装置
US9977242B2 (en) 2015-03-26 2018-05-22 Illinois Tool Works Inc. Control of mediated reality welding system based on lighting conditions
GB2539241B (en) * 2015-06-11 2019-10-23 Advanced Risc Mach Ltd Video processing system
US10363632B2 (en) 2015-06-24 2019-07-30 Illinois Tool Works Inc. Time of flight camera for welding machine vision
CN107810521B (zh) * 2015-07-03 2020-10-16 华为技术有限公司 图像处理装置和方法
US10404992B2 (en) * 2015-07-27 2019-09-03 Qualcomm Incorporated Methods and systems of restricting bi-prediction in video coding
CN105184780B (zh) * 2015-08-26 2018-06-05 京东方科技集团股份有限公司 一种立体视觉深度的预测方法和系统
JP6921870B2 (ja) * 2016-05-24 2021-08-18 エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュートElectronics And Telecommunications Research Institute 画像復号方法、画像符号化方法及び記録媒体
WO2018006296A1 (en) * 2016-07-06 2018-01-11 SZ DJI Technology Co., Ltd. Systems and methods for stereoscopic imaging
GB2558277A (en) * 2016-12-23 2018-07-11 Sony Interactive Entertainment Inc Image data encoding and decoding
CN117354542A (zh) * 2017-07-06 2024-01-05 Lx 半导体科技有限公司 图像解码设备、图像编码设备和用于发送图像数据的设备
US10841794B2 (en) * 2017-09-18 2020-11-17 Futurewei Technologies, Inc. Adaptive motion vector resolution
EP3695597A4 (en) * 2017-10-11 2021-06-30 Nokia Technologies Oy APPARATUS, PROCESS AND COMPUTER PROGRAM FOR VOLUMETRIC VIDEO
WO2019152283A1 (en) 2018-02-02 2019-08-08 Apple Inc. Techniques of multi-hypothesis motion compensation
US11924440B2 (en) 2018-02-05 2024-03-05 Apple Inc. Techniques of multi-hypothesis motion compensation
US11087500B2 (en) * 2018-03-15 2021-08-10 University-Industry Cooperation Group Of Kyung Hee University Image encoding/decoding method and apparatus
WO2019234600A1 (en) 2018-06-05 2019-12-12 Beijing Bytedance Network Technology Co., Ltd. Interaction between pairwise average merging candidates and intra-block copy (ibc)
CN113115046A (zh) 2018-06-21 2021-07-13 北京字节跳动网络技术有限公司 分量相关的子块分割
WO2019244117A1 (en) 2018-06-21 2019-12-26 Beijing Bytedance Network Technology Co., Ltd. Unified constrains for the merge affine mode and the non-merge affine mode
BR112020026618A2 (pt) 2018-06-26 2021-03-30 Huawei Technologies Co., Ltd. Projetos de sintaxe de alto nível para codificação de nuvem de pontos
TWI818086B (zh) 2018-09-24 2023-10-11 大陸商北京字節跳動網絡技術有限公司 擴展Merge預測
CN112970262B (zh) 2018-11-10 2024-02-20 北京字节跳动网络技术有限公司 三角预测模式中的取整
US11197017B2 (en) 2018-12-06 2021-12-07 Tencent America LLC Methods and apparatuses for video coding
JP7260557B2 (ja) * 2018-12-06 2023-04-18 エルジー エレクトロニクス インコーポレイティド インター予測に基づいて、ビデオ信号を処理するための方法および装置
US11450233B2 (en) 2019-02-19 2022-09-20 Illinois Tool Works Inc. Systems for simulating joining operations using mobile devices
US11521512B2 (en) 2019-02-19 2022-12-06 Illinois Tool Works Inc. Systems for simulating joining operations using mobile devices
US11146808B2 (en) * 2019-06-27 2021-10-12 Tencent America LLC Method and apparatus for video coding
US11322037B2 (en) 2019-11-25 2022-05-03 Illinois Tool Works Inc. Weld training simulations using mobile devices, modular workpieces, and simulated welding equipment
US11721231B2 (en) 2019-11-25 2023-08-08 Illinois Tool Works Inc. Weld training simulations using mobile devices, modular workpieces, and simulated welding equipment
US11032530B1 (en) * 2020-05-15 2021-06-08 Microsoft Technology Licensing, Llc Gradual fallback from full parallax correction to planar reprojection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009131688A2 (en) * 2008-04-25 2009-10-29 Thomson Licensing Inter-view skip modes with depth
US20100111183A1 (en) * 2007-04-25 2010-05-06 Yong Joon Jeon Method and an apparatus for decording/encording a video signal
US20110069760A1 (en) * 2009-09-22 2011-03-24 Samsung Electronics Co., Ltd. Apparatus and method for motion estimation of three dimension video
EP2348732A2 (en) * 2008-11-10 2011-07-27 LG Electronics Inc. Method and device for processing a video signal using inter-view prediction

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ZA200805337B (en) * 2006-01-09 2009-11-25 Thomson Licensing Method and apparatus for providing reduced resolution update mode for multiview video coding
US20070177671A1 (en) * 2006-01-12 2007-08-02 Lg Electronics Inc. Processing multiview video
WO2010043773A1 (en) * 2008-10-17 2010-04-22 Nokia Corporation Sharing of motion vector in 3d video coding
JP5792632B2 (ja) * 2009-01-30 2015-10-14 トムソン ライセンシングThomson Licensing デプスマップの符号化
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100111183A1 (en) * 2007-04-25 2010-05-06 Yong Joon Jeon Method and an apparatus for decording/encording a video signal
WO2009131688A2 (en) * 2008-04-25 2009-10-29 Thomson Licensing Inter-view skip modes with depth
EP2348732A2 (en) * 2008-11-10 2011-07-27 LG Electronics Inc. Method and device for processing a video signal using inter-view prediction
US20110069760A1 (en) * 2009-09-22 2011-03-24 Samsung Electronics Co., Ltd. Apparatus and method for motion estimation of three dimension video

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SEUNGCHUL RYU等: "《ADAPTIVE COMPETITION FOR MOTION VECTOR PREDICTION IN MULTI-VIEW VIDEO CODING》", 《3DTV CONFERENCE:THE TRUE VISION - CAPTURE, TRANSMISSION AND DISPLAY OF 3D VIDEO (3DTV-CON)》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107005711A (zh) * 2014-11-05 2017-08-01 三星电子株式会社 逐样本预测编码设备和方法
US10404982B2 (en) 2014-11-05 2019-09-03 Samsung Electronics Co., Ltd. Per-sample prediction encoding apparatus and method
CN108965873A (zh) * 2018-07-24 2018-12-07 北京大学 一种脉冲阵列编码的自适应划分方法
CN108965873B (zh) * 2018-07-24 2020-02-14 北京大学 一种脉冲阵列编码的自适应划分方法
CN113545034A (zh) * 2019-03-08 2021-10-22 交互数字Vc控股公司 深度图处理
CN110365980A (zh) * 2019-09-02 2019-10-22 移康智能科技(上海)股份有限公司 动态调整图像编码区域的方法

Also Published As

Publication number Publication date
IN2014CN01784A (zh) 2015-05-29
US20130229485A1 (en) 2013-09-05
CA2846425A1 (en) 2013-03-07
KR20140057373A (ko) 2014-05-12
EP2752001A4 (en) 2015-04-15
EP2752001A1 (en) 2014-07-09
RU2014110635A (ru) 2015-10-10
RU2583040C2 (ru) 2016-05-10
KR20170005464A (ko) 2017-01-13
WO2013030456A1 (en) 2013-03-07

Similar Documents

Publication Publication Date Title
CN103891291A (zh) 用于视频编码和解码的设备、方法和计算机程序
JP7248741B2 (ja) デプスマップの推定および更新を用いる効率的なマルチビュー符号化
US20200275072A1 (en) Efficient multi-view coding using depth-map estimate for a dependent view
CN104521238B (zh) 用于3d视频编码的装置和方法
CN104396244B (zh) 用于视频编码和解码的装置、方法和计算机可读存储介质
CN105308965B (zh) 用于3d视频编码的协调视图间和视图合成预测
CN104350749B (zh) 深度图估计的推导
CN104584549B (zh) 用于视频编码的方法和装置
CN105379282B (zh) 用于纹理译码的先进残余预测(arp)的方法和设备
CN105556965A (zh) 用于视频编码和解码的方法、装置和计算机程序产品
CN104604223A (zh) 用于视频编码和解码的装置、方法和计算机程序
CN104303502A (zh) 用于3d-hevc的视差向量建构方法
CN105531999A (zh) 涉及用于信号传输运动信息的语法的视频编码方法及装置
WO2013107931A1 (en) An apparatus, a method and a computer program for video coding and decoding
CN104641642A (zh) 用于视频编码的方法和装置
CN104380749A (zh) 用于视频编码的方法和装置
WO2013113134A1 (en) An apparatus, a method and a computer program for video coding and decoding

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: 20160112

Address after: Espoo, Finland

Applicant after: Technology Co., Ltd. of Nokia

Address before: Espoo, Finland

Applicant before: Nokia Oyj

WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140625

WD01 Invention patent application deemed withdrawn after publication