视频全局视差向量编码方法、解码方法和装置与流程

文档序号:11292574阅读:149来源:国知局
视频全局视差向量编码方法、解码方法和装置与流程

本发明涉及视频编解码技术领域,特别是涉及一种对视频视差向量的编码方法、解码方法和装置。



背景技术:

在多视点视频编码中,至少包含一个基本视点和一个依赖视点。基本视点独立编码,依赖视点可以参考基本视点进行编码。不同的视点是用不同角度的摄像机拍摄得到的,因此视点之间会有视差的存在。在多视点加深度的视频编码中,每一个视点还会包括至少两个层:纹理层和深度层。

在avs2-3d视频编码标准中,使用了全局视差向量(globaldisparityvector,gdv)工具来表示依赖视点和基本视点之间的视差值。具体来说,对每一个依赖视点中的每一层(纹理层或深度层)中的每一帧图像,都在图像头传送一个二维全局视差向量用于标识当前图像相对于基本视点的对应层的对应图像(具有相同的显示顺序索引)的视差偏移。所述全局视差向量可用于当前图像中的编码块在对应图像中寻找对应编码块,消除视间冗余,提高压缩效率。在avs2-3d中,全局视差向量以图像为传送单位,每一帧图像都完整地传送一个二维视差向量。这种编码方法编码位数较多,编码效率较低。



技术实现要素:

本申请提供了一种对全局视差向量的编码方法、解码方法和装置,以提高视频压缩效率。

本申请提供的一种对全局视差向量的编码方法,包括:

确定当前编码区域的全局视差向量预测信息和全局视差向量;

在需要时,对关于当前编码区域全局视差向量的信息进行编码并写入码流,所述关于当前编码区域的全局视差向量的信息用于解码器确定当前编码区域的全局视差向量。

较佳的,所述编码区域包括以下的至少一种:图像、部分图像、条带、图像拼贴、 最大编码单元、编码单元、宏块。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:根据以下的至少一项确定当前图像的全局视差向量预测值:在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;确定当前编码区域的全局视差向量;

所述对所述关于当前编码区域全局视差向量的信息进行编码并写入码流包括:在码流中写入当前编码区域的全局视差向量与全局视差向量预测值的差值。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:根据以下的至少一项确定当前图像的全局视差向量预测值:在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;确定当前编码区域的全局视差向量;

所述对所述关于当前编码区域全局视差向量的信息进行编码并写入码流包括:如果当前编码区域的全局视差向量与全局视差向量预测值相同,则在码流中写入用于指示无差值信息的标志位;否则,在码流中写入用于指示有差值信息的标志位,并写入当前编码区域的全局视差向量与全局视差向量预测值的差值。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:根据以下的至少一项确定当前图像的全局视差向量预测值:在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;并将当前编码区域的全局视差向量置为所述全局视差向量预测值;

所述判断是否需要在码流中写入关于当前编码区域的全局视差向量的信息的结果为不需要写入。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:构造全局视差向量预测候选值列表,所述列表中包含以下的至少一项:在当前编码区 域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量;从所述列表中选择一个作为当前编码区域的全局视差向量预测值,记录该值对应的索引,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;确定当前编码区域的全局视差向量;

所述对所述关于当前编码区域全局视差向量的信息进行编码并写入码流包括:在码流中写入所述全局视差向量预测值的索引,并写入当前编码区域的全局视差向量与全局视差向量预测值的差值。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:构造全局视差向量预测候选值列表,所述列表中包含以下的至少一项:在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量;从所述列表中选择一个作为当前编码区域的全局视差向量预测值,记录该值对应的索引,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;确定当前编码区域的全局视差向量;

所述对所述关于当前编码区域全局视差向量的信息进行编码并写入码流包括:在码流中写入所述全局视差向量预测值的索引,如果当前编码区域的全局视差向量与全局视差向量预测值相同,则在码流中写入用于指示无差值信息的标志位;否则,在码流中写入用于指示有差值信息的标志位,并写入当前编码区域的全局视差向量与全局视差向量预测值的差值。

较佳的,所述确定当前编码区域的全局视差向量预测信息和全局视差向量包括:构造全局视差向量预测候选值列表,所述列表中包含以下的至少一项:在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量;从所述列表中选择一个作为当前编码区域的全局视差向量预测值,记录该值对应的索引,其中,所述n1、n2、n3为正整数,所述同一视点的n1个编码区域的全局视差向量为与当前编码区域属于相同层或不同层的编码区域的全局视差向量;并将当前编码区域的全局视差向量置为所述全局视差向量预测值;

所述对所述关于当前编码区域全局视差向量的信息进行编码并写入码流包括:在码流中写入所述全局视差向量预测值的索引。

本申请还提供了一种编码器,包括:信息确定单元和写入单元,其中:

所述信息确定单元,用于确定当前编码区域的全局视差向量预测信息和全局视差向量;

所述写入单元,用于判断是否需要在码流中写入关于当前编码区域的全局视差向量的信息,如果需要,对所述关于当前编码区域全局视差向量的信息进行编码并写入码流,所述关于当前编码区域的全局视差向量的信息用于解码器确定当前编码区域的全局视差向量。

本申请还提供了一种对全局视差向量的解码方法,包括:

按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息;

根据所述全局视差向量预测信息,确定当前解码区域的全局视差向量。

较佳的,该方法还包括:确定当前解码区域的全局视差向量后,将同一视点中与当前解码区域属于不同层的对应的解码区域的全局视差向量设置为所述全局视差向量。

较佳的,所述解码区域包括以下的至少一种:图像、部分图像、条带、图像拼贴、最大编码单元、编码单元、宏块。

较佳的,该方法还包括:从码流中解析出当前解码区域的全局视差向量与全局视差向量预测值的差值;

所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据以下的至少一项按照与编码侧相同的方式确定当前解码区域的全局视差向量预测值:在当前解码区域之前已经解码完成的同一视点的n1个解码区域的全局视差向量,预设的n2个向量,根据在当前解码区域之前已经解码完成的同一视点的n1个解码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数;

所述根据所述全局视差向量预测信息确定当前解码区域的全局视差向量包括:确定当前解码区域的全局视差向量为所述全局视差向量预测值与所述差值之和。

较佳的,该方法还包括:从码流中解析标志位,如果所述标志位的解析结果指示有差值信息,则从码流中解析当前解码区域的全局视差向量与全局视差向量预测值的差值;

所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据在当前解码区域之前已经解码完成的同一视点的n1个解码区域的全局视差向量,按照与编码侧相同的方式确定当前解码区域的全局视差向量预测值,其中,所述n1为正整数;

所述根据所述全局视差向量预测信息确定当前解码区域的全局视差向量包括:如 果所述标志位的解析结果指示无差值信息,则确定当前解码区域的全局视差向量为所述全局视差向量预测值;否则,确定当前解码区域的全局视差向量为所述全局视差向量预测值与所述差值之和。

较佳的,所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据以下的至少一项按照与编码侧相同的方式确定当前解码区域的全局视差向量预测值:在当前解码区域之前已经解码完成的同一视点的n1个解码区域的全局视差向量,预设的n2个向量,根据在当前解码区域之前已经解码完成的同一视点的n1个解码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数;

所述根据所述全局视差向量预测信息确定当前解码区域的全局视差向量包括:确定当前解码区域的全局视差向量为所述全局视差向量预测值。

较佳的,该方法还包括:从码流中解析全局视差向量预测值的索引以及当前解码区域的全局视差向量与全局视差向量预测值的差值;

所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据解析得到的索引以及与编码侧相同的全局视差向量预测候选值列表确定当前解码区域的全局视差向量预测值;

所述根据所述全局视差向量预测信息确定当前解码区域的全局视差向量包括:确定当前解码区域的全局视差向量为所述全局视差向量预测值与所述差值之和。

较佳的,该方法还包括:从码流中解析全局视差向量预测值的索引和标志位,如果所述标志位的解析结果指示有差值信息,则从码流中解析当前解码区域的全局视差向量与全局视差向量预测值的差值;

所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据解析得到的索引以及与编码侧相同的全局视差向量预测候选值列表确定当前解码区域的全局视差向量预测值;

所述根据所述全局视差向量预测信息按照与编码侧相同的方式确定当前解码区域的全局视差向量包括:如果所述标志位的解析结果指示无差值信息,确定当前解码区域的全局视差向量为所述全局视差向量预测值;如果所述标志位的解析结果指示有差值信息,确定当前解码区域的全局视差向量为所述全局视差向量预测值与所述差值之和。

较佳的,该方法还包括:从码流中解析全局视差向量预测值的索引;

所述按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息包括:根据解析得到的索引以及与编码侧相同的全局视差向量预测候选值列表确定当前解码 区域的全局视差向量预测值;

所述根据所述全局视差向量预测信息确定当前解码区域的全局视差向量包括:确定当前解码区域的全局视差向量为所述全局视差向量预测值。

本申请还提供了一种解码器,包括:预测信息确定单元和视差向量确定单元,其中:

所述预测信息确定单元,用于按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息;

所述视差向量确定单元,用于根据预测信息确定单元提供的信息,确定当前解码区域的全局视差向量。

应用本发明后,不需要再为每一个编码区域都完整地编码传送一个全局视差向量,而只需要参考已经编码的其他编码区域的全局视差向量确定一个全局视差向量的预测值,将当前编码区域的实际全局视差向量与全局视差向量预测值的差异值编码传送即可。由于视频中时域相邻图像和层间对应图像内容上有很强的相似性,所以全局视差向量比较接近,所传送的差异值接近于0,因此可以减少编码位数,提高压缩效率。

附图说明

图1为本发明对全局视差向量的编码方法流程图;

图2为本发明对全局视差向量的解码方法流程图;

图3为本发明实施例十三中编码器的结构图;

图4为本发明实施例十四中解码器的结构图。

具体实施方式

为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。

avs2-3d中对依赖视点每一层中的每一帧图像都完整地编码传送一个二维全局视差向量来标识当前图像相对于基本视点中对应图像的视差偏移,优点是直观简单。但是,此种编码方法并没有利用视频中存在的多种相关性,每一帧都要完整地编码一个二维向量,因此增加了编码位数,降低了编码效率。如果能利用视频中的相关性,就能进一步地减少全局视差向量的编码开销,提高编码效率。

本发明利用视频中的相关性,来减少全局视差向量的编码位数,进而提高视频压缩效率。具体来说,本发明利用视频中的时域相关性及层间相关性,参考已 经编解码完成的其他编解码区域的全局视差向量对当前编码区域的全局视差向量进行预测编解码。

图1为本申请对全局视差向量的编码方法流程示意图,该方法包括:

步骤101:确定当前编码区域的全局视差向量预测信息和全局视差向量。

步骤102:判断是否需要在码流中写入关于当前编码区域全局视差向量的信息,如果需要,执行步骤103,如果不需要,结束本方法。

步骤103:对所述关于当前编码区域全局视差向量的信息进行编码并写入码流,其中,所述关于当前编码区域全局视差向量的信息用于解码器确定当前编码区域的全局视差向量。

图2为本申请一种对全局视差向量的解码方法,该方法包括:

步骤201:判断是否需要从码流中解析关于当前解码区域的全局视差向量的信息,如果需要,执行步骤202,否则执行步骤203;

步骤202:从码流中解析关于当前解码区域全局视差向量的信息;

步骤203:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息;

步骤204:根据所述全局视差向量预测信息确定当前解码区域的全局视差向量。

在一些实施例中,步骤201和步骤203之间没有严格的先后顺序要求,对此将结合具体实施例中予以说明。并且,在一些实施例中,可以无需执行步骤201的判断以及步骤202的解析,而直接执行步骤203确定当前解码区域的全局视差向量预测信息,并将当前解码区域的全局视差向量预测信息作为当前解码区域的全局视差向量。

下面通过几个较佳实施例对本申请技术方案进行进一步详细说明。

实施例一:

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量,该图像可以是纹理层图像或深度层图像。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项通 过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:直接将所述n1幅图像中某一幅图像的全局视差向量作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。本申请中,编码器所参考的当前图像之前已经编码完成的同一视点中的n1幅图像的全局视差向量可以是与当前图像属于相同层的图像,也可以是与当前图像属于不同层的图像。例如:假设当前待编码的是纹理层图像,那么,可以参考当前图像之前已经编码完成的同一视点中的n1幅纹理层图像或深度层图像的全局视差向量,来确定当前待编码的纹理层图像的全局视差向量预测值;或者也可以是参考部分纹理层图像的全局视差向量,并参考另一部分深度层图像的全局视差向量,来确定当前待编码的纹理层图像的全局视差向量预测值。反之,对深度层图像亦然。此外,本申请也可以只对当前编码区域进行相关处理,而同一视点中域当前编码区域属于不同层的对应的编码区域直接使用经过本发明处理的当前编码区域的计算结果。上述说明同样适用于本申请其他实施例,不再赘述。

编码器确定当前图像的全局视差向量。这里,可以按照现有技术各种可能的方法确定当前图像的全局视差向量。

步骤2:在码流中编码写入关于当前编码区域全局视差向量的信息。

根据步骤1中确定的当前图像的全局视差向量预测信息和全局视差向量,在码流中写入关于当前图像全局视差向量的信息。

具体地,一种可能的实现方式为将当前图像的全局视差向量与全局视差向量预测值之间的差值写入码流。本步骤中,可以在码流中只写入当前图像的全局视差向量与全局视差向量预测值之间的差值,例如:假设当前图像是纹理层图像,只写入当前图像的全局视差向量与全局视差向量预测值之间的差值;在解码侧,得到当前图像的全局视差向量后,同一视点中与当前图像对应的深度层图像的全局视差向量直接使用纹理层图像的全局视差向量。本步骤也可以分别对同一视点的纹理层和深度层在码流中写入对应的全局视差向量与全局视差向量预测值之间的差值,即:对于同一视点的两个层次分别独立进行相应的处理,传输两个差值。上述说明同样适用于本申请其他实施例,在解码侧使用与编码侧相同的方式进行 解码,不再赘述。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴(tile),最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例二

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项通过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:将所述n1幅图像中某一幅图像的全局视差向量直接作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。

编码器通过某种方法确定当前图像的全局视差向量。例如,可以按照现有技术各种可能的方法确定当前图像的全局视差向量。

步骤2:在码流中编码写入关于当前编码区域全局视差向量的信息。

根据步骤1中确定的当前图像的全局视差向量预测值和全局视差向量,在码流中写入关于当前图像全局视差向量的信息。

具体地,一种可能的实现方式为:

如果当前图像的全局视差向量与全局视差向量预测值相同,则在码流中写入一个标志位指示无差值信息;如果当前图像的全局视差向量与全局视差向量预测值不相同则在码流中写入一个标志位指示有差值信息,并写入当前图像的全局视差向量与全局视差向量预测值之间的差值。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带, 图像拼贴,最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例三

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项通过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:直接将所述n1幅图像中某一幅图像的全局视差向量直接作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。

编码器将当前图像的全局视差向量设置为等于全局视差向量预测值。

在本实施例中,由于全局视差向量与全局视差向量预测值相同,因此,无需在码流中写入任何关于当前编码区域全局视差向量的信息。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例四

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编 码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项构造当前图像的全局视差向量预测候选值列表:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数。编码器从全局视差向量预测候选值列表中选择一个候选向量作为全局视差向量预测值并且记录此候选向量在列表中的位置索引index。编码器通过某种方法确定当前图像的全局视差向量。例如,可以按照现有技术各种可能的方法确定当前图像的全局视差向量。

步骤2:在码流中编码写入关于当前编码区域全局视差向量的信息。

根据步骤1中确定的当前图像的全局视差向量预测信息和全局视差向量,在码流中写入关于当前图像全局视差向量的信息。

具体地,一种可能的实现方式为:

在码流中写入步骤1中确定的位置索引index,并且将步骤101中确定的当前图像的全局视差向量与全局视差向量预测值之间的差值写入码流。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例五

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项构造当前图像的全局视差向量预测候选值列表:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数。编码器从全局视差向量预测候选值列表中选择一个候选向量作为全局视差向量预测值并且记录此候选向量在列表中的位置索引index。编码器通 过某种方法确定当前图像的全局视差向量。例如,可以按照现有技术各种可能的方法确定当前图像的全局视差向量。

步骤2:在码流中编码写入关于当前编码区域全局视差向量的信息。

根据步骤1中确定的当前图像的全局视差向量预测信息和全局视差向量,在码流中写入关于当前图像全局视差向量的信息。

具体地,一种可能的实现方式为:

在码流中写入步骤1中确定的位置索引index。如果步骤1确定的当前图像的全局视差向量与全局视差向量预测值相同,则在码流中写入一个标志位指示无差值信息;如果当前图像的全局视差向量与全局视差向量预测值不相同则在码流中写入一个标志位指示有差值信息,并写入当前图像的全局视差向量与全局视差向量预测值之间的差值。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例六

本实施例提供一种编码器对全局视差向量的编码方法,本方法包括:

步骤1:确定当前编码区域的全局视差向量预测信息和全局视差向量。

具体地,一种可能的实现方式为当前编码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息和全局视差向量。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。编码器参考以下的至少一项构造当前图像的全局视差向量预测候选值列表:在当前图像之前已经编码完成的同一视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数。编码器从全局视差向量预测候选值列表中选择一个候选向量作为全局视差向量预测值并且记录此候选向量在列表中的位置索引index。

编码器将当前图像的全局视差向量设置为等于全局视差向量预测值。

步骤2:在码流中编码写入关于当前编码区域全局视差向量的信息。

根据步骤1中确定的当前图像的全局视差向量预测信息和全局视差向量,在码流中写入关于当前图像全局视差向量的信息。

具体地,一种可能的实现方式为:

在码流中写入步骤1中确定的位置索引index。

此实施例中的编码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果编码区域为图像的一部分,所述参考编码区域应为与当前编码区域在空间上对应的图像区域。

实施例七

本实施例提供一种解码码器对全局视差向量的解码方法,本方法包括:

步骤1:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息。

具体地,一种可能的实现方式为当前解码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器参考以下的至少一项通过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经解码完成的同一个视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:直接将所述n1幅图像中某一幅特定图像的全局视差向量直接作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。如实施例一所述,解码器所参考的当前图像之前已经解码完成的同一视点中的n1幅图像的全局视差向量可以是与当前图像属于相同层的图像,也可以是与当前图像属于不同层的图像。例如:假设当前待解码的纹理层图像,那么,可以参考当前图像之前已经解码完成的同一视点中的n1幅纹理层图像或深度层图像的全局视差向量,来确定当前待解码的纹理层图像的全局视差向量预测值;或者也可以是参考部分纹理层图像的全局视差向量,并参考另一部分深度层图像的全局视差向量,来确定当前待解码的纹理图的全局视差向量预测值。反之,对深度图亦然。

步骤2:从码流中解析关于当前解码区域全局视差向量的信息。

具体地,一种可能的实现方式为从码流中解析出当前图像的全局视差向量与 全局视差向量预测值之间的差值。

步骤3:根据当前解码区域的全局视差向量预测信息和当前解码区域全局视差向量的信息,按照与编码侧相同的方式确定当前解码区域的全局视差向量。

具体地,一种可能的实现方式为将步骤1中确定的全局视差向量预测值和步骤2中解析出的差值相加得到当前图像的全局视差向量。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前解码区域在空间上对应的图像区域。

本实施例的步骤1和步骤2之间没有严格的先后顺序要求。

实施例八

本实施例提供一种解码器对全局视差向量的解码方法,本方法包括:

步骤1:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息。

具体地,一种可能的实现方式为当前解码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器参考以下的至少一项通过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经解码完成的同一个视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:直接将所述n1幅图像中某一幅特定图像的全局视差向量直接作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。

步骤2:从码流中解析关于当前解码区域全局视差向量的信息;

具体地,一种可能的实现方式为:

从码流中读取一个标志位,如果该标志位标识码流中没有写入当前图像全局视差向量与全局视差向量预测之间的差值信息,则此步骤结束;如果该标志位表明码流中写入了当前图像全局视差向量与全局视差向量预测之间的差值信息,则 解析出所述差值。

步骤3:根据当前解码区域的全局视差向量预测信息和当前解码区域全局视差向量的信息,按照与编码侧相同的方式确定当前解码单元的全局视差向量。

具体地,一种可能的实现方式为:

如果步骤2中的标志位表明码流中没有写入当前图像全局视差向量与全局视差向量预测之间的差值信息,则将当前图像的全局视差向量设置为步骤1确定的全局视差向量预测值,否则将当前图像的全局视差向量设置为步骤1确定的全局视差向量预测值与步骤2解析出的差值之和。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前解码区域在空间上对应的图像区域。

本实施例的步骤1和步骤2之间没有严格的先后顺序要求。

实施例九

本实施例提供一种解码器对全局视差向量的解码方法,本方法包括:

步骤1:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息。

具体地,一种可能的实现方式为当前解码区域为一幅图像,即在本步骤中确定当前图像的全局视差向量预测信息。该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器参考以下的至少一项通过某种方法确定当前图像的全局视差向量预测值:在当前图像之前已经解码完成的同一个视点中(可以属于不同层)的n1幅图像的全局视差向量,预设的n2个向量,根据在当前编码区域之前已经编码完成的同一视点的n1个编码区域的全局视差向量计算得到的n3个向量,其中,所述n1、n2、n3为正整数,所述方法包括但不限于直接将上述被参考的某个向量作为当前图像的全局视差向量预测值,例如:直接将所述n1幅图像中某一幅特定图像的全局视差向量直接作为当前图像的全局视差向量预测值,或者计算所述n1幅图像的全局视差向量的平均值、最大值、最小值、中值或其他特征值作为当前图像的全局视差向量预测值。

步骤2:根据当前解码区域的全局视差向量预测信息,按照与编码侧相同的方式确定当前解码单元的全局视差向量。

具体地,一种可能的实现方式为将当前图像的全局视差向量设置为步骤1中确定的全局视差向量预测值。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前解码区域在空间上对应的图像区域。

本实施例的步骤1和步骤2之间没有严格的先后顺序要求。

本实施例中,如果是先进行纹理层解码,再进行深度层解码,那么,在得到纹理层图像的全局视差向量后,可以直接将其作为同一视点的深度层图像的全局视差向量;反之,如果是先进行深度层解码,再进行纹理层解码,那么,在得到深度层图像的全局视差向量后,可以直接将其作为同一视点的纹理层图像的全局视差向量。

实施例十

本实施例提供一种解码码器对全局视差向量的解码方法,本方法包括:

步骤1:从码流中解析关于当前解码区域全局视差向量的信息。

具体地,一种可能的实现方式为:当前解码区域为一幅图像,该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器从码流中解析出一个位置索引index,以及当前图像的全局视差向量与全局视差向量预测值之间的差值。

步骤2:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息。

具体地,一种可能的实现方式:在本步骤中确定当前图像的全局视差向量预测信息。解码器根据与编码侧相同的全局视差向量预测候选值列表,将当前图像的全局视差向量预测值设置为所述全局视差向量预测值列表中位置索引为步骤1所述index的向量。上述构造全局视差向量预测候选值列表的操作也可以在步骤1之前进行。本申请中,解码器采用与编码器相同的方法构造全局视差向量预测候选值列表,在此不再赘述。

步骤3:根据当前解码区域的全局视差向量预测信息和当前解码区域全局视差向量的信息,按照与编码侧相同的方式确定当前解码单元的全局视差向量。

具体地,一种可能的实现方式为将步骤1中得到的差值和步骤2中得到的全局视差向量预测值相加得到当前图像的全局视差向量。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前解码区域在空间上对应的图像区域。

实施例十一

本实施例提供一种解码器对全局视差向量的解码方法,本方法包括:

步骤1:从码流中解析关于当前解码区域全局视差向量的信息。

具体地,一种可能的实现方式为:当前解码区域为一幅图像,该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器从码流中解析出一个位置索引index,并从码流中读取一个标志位,如果该标志位表明码流中没有写入当前图像全局视差向量与全局视差向量预测之间的差值信息,则此步骤结束;如果该标志位表明码流中写入了当前图像全局视差向量与全局视差向量预测之间的差值信息,则解析出所述差值。

步骤2:按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息。

具体地,一种可能的实现方式为:在本步骤中确定当前图像的全局视差向量预测信息。解码器根据与编码侧相同的全局视差向量预测候选值列表,将当前图像的全局视差向量预测设置为所述全局视差向量预测值列表中位置索引为步骤1所述index的向量。上述构造全局视差向量预测候选值列表的操作也可以在步骤1之前进行。

步骤3:根据当前解码区域的全局视差向量预测信息和当前解码区域全局视差向量的信息,按照与编码侧相同的方式确定当前解码区域的全局视差向量。

具体地,一种可能的实现方式为:

如果步骤1中的标志位表明码流中没有写入当前图像全局视差向量与全局视差向量预测之间的差值信息,则将当前图像的全局视差向量设置为等于步骤2确定的全局视差向量预测值,否则将当前图像的全局视差向量设置为步骤1解析出的差值与步骤2确定的全局视差向量预测值之和。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前编码区域在空间上对应的图像区域。

实施例十二

本实施例提供一种解码器对全局视差向量的解码方法,本方法包括:

步骤1:从码流中解析关于当前编码区域全局视差向量的信息。

一种可能的实现方式为:当前解码区域为一幅图像,该图像可能为帧间编码图像、单向帧间编码图像、双向帧间编码图像、双假设帧间编码图像、视间帧间编码图像、依赖视点图像、依赖视点帧间编码图像、纹理帧间编码图像或深度帧间图像等。解码器从码流中解析出一个位置索引index。

步骤2:按照与编码侧相同的方式确定当前编码区域的全局视差向量预测信息。

具体地,一种可能的实现方式为:在本步骤中确定当前图像的全局视差向量预测值信息。解码器根据与编码侧相同的全局视差向量预测候选值列表,将当前图像的全局视差向量预测值设置为确定的全局视差向量预测候选值列表中位置索引为步骤1所述index的向量。上述构造全局视差向量预测候选值列表的操作也可以在步骤1之前进行。

步骤3:根据当前解码区域的全局视差向量预测信息和当前解码区域全局视差向量的信息,按照与编码侧相同的方式确定当前解码单元的全局视差向量。

具体地,一种可能的实现方式为将当前图像的全局视差向量设置为等于步骤2中确定的全局视差向量预测值。

此实施例中的解码区域除了图像也可以为图像的一部分,如部分图像、条带,图像拼贴,最大编码单元、编码单元、宏块等。如果解码区域为图像的一部分,所述参考解码区域应为与当前编码区域在空间上对应的图像区域。

本实施例中,如果是先进行纹理层解码,再进行深度层解码,那么,在得到纹理层图像的全局视差向量后,可以直接将其作为同一视点的深度层图像的全局视差向量;反之,如果是先进行深度层解码,再进行纹理层解码,那么,在得到深度层图像的全局视差向量后,可以直接将其作为同一视点的纹理层图像的全局视差向量。

实施例十三

图3为本发明实施例十三的编码器的结构示意图,该编码器包括:信息确定单元和写入单元,其中:

信息确定单元,用于确定当前编码区域的全局视差向量预测信息和全局视差向量;具体执行方法包括但不限于本发明实施例一至六中的步骤1。

写入单元,用于根据写入单元所提供的当前编码区域的全局视差向量和全局视差向量预测信息,判断是否需要在码流中写入关于当前编码区域的全局视差向量的信息,如果需要,对所述关于当前编码区域全局视差向量的信息进行编码并写入码流,所述关于当前编码区域的全局视差向量的信息用于解码器确定当前编码区域的全局视差向量;具体可以执行但不限于本发明实例一到六的步骤2。

实施例十四

图4为本发明实施例十四的解码器的结构示意图,该解码器包括:预测信息确定单元和视差向量确定单元,其中:

所述预测信息确定单元,用于按照与编码侧相同的方式确定当前解码区域的全局视差向量预测信息;

所述视差向量确定单元,用于根据预测信息确定单元提供的信息,确定当前解码区域的全局视差向量。

应用本发明后,不需要再为每一个编码区域都完整地编码传送一个全局视差向量,而只需要参考已经编码的其他编码区域的全局视差向量确定一个全局视差向量的预测值,将当前编码区域的实际全局视差向量与全局视差向量预测值的差值信息编码传送即可。由于视频中时域相邻图像和层间对应图像内容上有很强的相似性,所以全局视差向量比较接近,所传送的差值接近于0,因此可以减少编码位数,提高压缩效率。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1