CN110351567A - 3d-hevc中的简化移位合并候选者及合并列表导出 - Google Patents

3d-hevc中的简化移位合并候选者及合并列表导出 Download PDF

Info

Publication number
CN110351567A
CN110351567A CN201910391591.2A CN201910391591A CN110351567A CN 110351567 A CN110351567 A CN 110351567A CN 201910391591 A CN201910391591 A CN 201910391591A CN 110351567 A CN110351567 A CN 110351567A
Authority
CN
China
Prior art keywords
candidate
motion vector
list
candidates
vector candidates
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910391591.2A
Other languages
English (en)
Other versions
CN110351567B (zh
Inventor
陈颖
刘鸿彬
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Priority to CN201910391591.2A priority Critical patent/CN110351567B/zh
Publication of CN110351567A publication Critical patent/CN110351567A/zh
Application granted granted Critical
Publication of CN110351567B publication Critical patent/CN110351567B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

本申请涉及3D‑HEVC中的简化移位合并候选者及合并列表导出。一种用于对三维进行译码的装置包含视频译码器,所述视频译码器经配置以:将一或多个运动向量候选者添加到运动向量候选者列表;从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于所述视差运动向量候选者确定视差经移位运动向量DSMV候选者;以及将所述DSMV候选者添加到所述运动向量候选者列表;以及使用对应于所述经识别候选者的运动向量对所述视频数据块进行译码。

Description

3D-HEVC中的简化移位合并候选者及合并列表导出
本申请为发明名称为“3D-HEVC中的简化移位合并候选者及合并列表导出”的原中国发明专利申请的分案申请。原申请的中国申请号为201480079590.X;原申请的申请日为2014年6月16日。
技术领域
本发明涉及视频编码和解码。
背景技术
数字视频能力可并入到广泛范围的装置中,包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置及其类似物。数字视频装置实施视频压缩技术,例如通过MPEG-2、MPEG-4、ITU-T H.263、ITU-TH.264/MPEG-4第10部分、高级视频译码(AVC)、目前正在开发的高效率视频译码(HEVC)标准及此类标准的扩展部分定义的标准中描述的技术,以便更有效地发射、接收及存储数字视频信息。
前述标准中的一些的扩展(包含H.264/AVC)可提供用于进行多视图视频译码以便产生立体或三维(“3D”)视频的技术。确切地说,已经提议用于多视图译码的技术以在AVC中使用,与可缩放视频译码(SVC)标准(为对H.264/AVC的可缩放扩展)一起使用,以及与多视图视频译码(MVC)标准(已变为对H.264/AVC的多视图扩展)一起使用。
通常,使用两个视图(例如,左视图和右视图)实现立体视频。左视图的图片实质上可与右视图的图片同时显示以实现三维视频效果。举例来说,用户可佩戴偏光被动式眼镜,其将左视图从右视图中过滤掉。或者,可快速连续展示两个视图的图片,且用户可佩戴主动式眼镜,其以相同频率快速遮光左眼及右眼,但其中相位移位90度。
发明内容
本发明涉及用于利用运动向量候选者列表的3D-HEVC译码过程(例如用于合并模式和/或高级运动向量预测(AMVP))的运动向量候选者导出的简化以及新候选者的添加。
在一个实例中,一种对三维(3D)视频数据进行解码的方法包含:将一或多个运动向量候选者添加到运动向量候选者列表;从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于所述视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;将所述DSMV候选者添加到所述运动向量候选者列表;针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及使用对应于所述经识别候选者的运动向量对所述视频数据块进行解码。
在另一实例中,一种对三维(3D)视频数据进行编码的方法包含:将一或多个运动向量候选者添加到运动向量候选者列表;从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于所述视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;将所述DSMV候选者添加到所述运动向量候选者列表;针对视频数据块确定用于对所述视频数据块进行编码的运动向量,其中所述运动向量对应于所述运动向量候选者列表中的候选者;产生识别所述运动向量候选者列表中的所述候选者的语法元素。
在另一实例中,一种对3D视频数据进行解码的方法包含:分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者;针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及使用对应于所述经识别候选者的运动向量对所述视频数据块进行解码。
在另一实例中,一种对3D视频数据进行编码的方法包含:分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者;针对视频数据块确定用于对所述视频数据块进行编码的运动向量,其中所述运动向量对应于所述运动向量候选者列表中的候选者;以及产生识别所述运动向量候选者列表中的所述候选者的语法元素。
在另一实例中,一种对3D视频数据进行解码的方法包含:将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较;针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及使用对应于所述经识别候选者的运动向量对所述视频数据块进行解码。
在另一实例中,一种对3D视频数据进行编码的方法包含:将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较;针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;针对视频数据块确定用于对所述视频数据块进行编码的运动向量,其中所述运动向量对应于所述运动向量候选者列表中的候选者;以及产生识别所述运动向量候选者列表中的所述候选者的语法元素。
在另一实例中,一种用于3D视频数据的装置包含视频译码器,所述视频译码器经配置以:将一或多个运动向量候选者添加到运动向量候选者列表;从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于所述视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;将所述DSMV候选者添加到所述运动向量候选者列表;以及使用对应于所述经识别候选者的运动向量对所述视频数据块进行译码。
在另一实例中,一种用于3D视频数据的装置包含视频译码器,所述视频译码器经配置以:分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;以及从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者。
在另一实例中,一种用于3D视频数据的装置包含视频译码器,所述视频译码器经配置以:将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较。
在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时致使所述一或多个处理器:将一或多个运动向量候选者添加到运动向量候选者列表;从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于所述视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;以及将所述DSMV候选者添加到所述运动向量候选者列表。
在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时致使所述一或多个处理器:分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;以及从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者。
在另一实例中,一种计算机可读存储媒体存储指令,所述指令在由一或多个处理器执行时致使所述一或多个处理器:将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;以及将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较。
在另一实例中,一种用于对3D视频数据进行译码的装置包含:用于将一或多个运动向量候选者添加到运动向量候选者列表的装置;用于从所述运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者的装置;用于基于视差运动向量候选者确定视差经移位运动向量(DSMV)候选者的装置;用于将所述DSMV候选者添加到所述运动向量候选者列表的装置;用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置;用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置。
在另一实例中,一种用于对3D视频数据进行译码的装置包含:用于分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中的装置;用于分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中的装置;用于基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中的装置,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;用于从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者的装置;以及用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置。
在另一实例中,一种用于对3D视频数据进行译码的装置包含:用于将一或多个空间相邻块候选者添加到运动向量候选者列表的装置;用于将一或多个时间相邻块候选者添加到运动向量候选者列表的装置;用于基于视差向量确定额外候选者的装置;用于将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较的装置;以及用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置。
附图和以下描述中阐明一或多个实例的细节。其它特征、目标和优点将从所述描述和图式以及权利要求书而显而易见。
附图说明
图1是说明可利用本发明中描述的技术的实例视频编码和解码系统的实例的框图。
图2是说明实例多视图解码次序的概念图。
图3是说明用于多视图译码的实例预测结构的概念图。
图4展示相对于译码单元的空间运动向量相邻者。
图5展示用于子PU层级视图间运动预测的实例预测结构。
图6是说明涉及使用相邻块的后向视图合成预测(BVSP)的技术的概念图。
图7展示一个8x8深度块的四个拐角像素。
图8展示经配置以实施本发明中描述的技术的视频编码器的实例。
图9展示经配置以实施本发明中描述的技术的视频解码器的实例。
图10展示了展示根据本发明的技术对视频数据进行解码的实例方法的流程图。
图11展示了展示根据本发明的技术对视频数据进行编码的实例方法的流程图。
图12展示了展示根据本发明的技术对视频数据进行解码的实例方法的流程图。
图13展示了展示根据本发明的技术对视频数据进行编码的实例方法的流程图。
图14展示了展示根据本发明的技术对视频数据进行解码的实例方法的流程图。
图15展示了展示根据本发明的技术对视频数据进行编码的实例方法的流程图。
具体实施方式
本发明涉及用于利用运动向量候选者列表的3D-HEVC译码过程(例如用于合并模式和/或高级运动向量预测(AMVP))的运动向量候选者导出的简化以及新候选者的添加。运动向量候选者列表在本文中也被称作候选者列表,且当参考合并模式时也可被称作合并候选者列表或合并列表。视频编码器可执行帧间预测以减少同一视图的不同时间实例的图片之间或不同视图的相同时间实例的图片之间的冗余。如下所述,译码单元(CU)可具有多个预测单元(PU)。换句话说,多个PU可属于所述CU。当视频编码器执行帧间预测时,视频编码器可用信号表示PU的运动信息。PU的运动信息可包含例如参考图片索引、运动向量和预测方向指示符。
时间运动向量可指示PU的视频块与在具有不同时间实例但来自同一视图的参考帧中的PU的参考块之间的位移。视差运动向量(DMV)可指示PU的视频块与在具有同一时间实例但来自不同视图的参考帧中的PU的参考块之间的位移。并且因此PU的参考块可为类似于PU的视频块的参考图片的一部分。所述参考块可位于由参考图片索引和预测方向指示符指示的参考图片。
为了减少表示PU的运动信息所需的位数目,视频编码器可根据合并模式或高级运动向量预测(AMVP)过程产生PU中的每一者的候选者列表。用于PU的候选者列表中的每一候选者可指示运动信息。由候选者列表中的一些候选者指示的运动信息可基于其它PU的运动信息。举例来说,对于HEVC合并模式,可存在五个空间候选者位置和一个时间候选者位置。如稍后将解释,视频解码器还可基于PU的视差向量确定一或多个运动向量候选者(3D-HEVC候选者)。在一些实例中,视频编码器可通过组合来自已经确定的候选者的部分运动向量、修改候选者而产生额外候选者,或者简单地插入零运动向量作为候选者。这些额外候选者不被认为是原始候选者,且在本发明中可称为虚拟候选者。
本发明的技术大体上涉及用于在视频编码器处产生候选者列表的技术以及用于在视频解码器处产生相同候选者列表的技术。视频编码器和视频解码器可通过实施用于构造候选者列表的相同技术而产生相同候选者列表。举例来说,视频编码器和视频解码器可构造具有相同数目的候选者(例如,用于合并模式的五个或六个候选者以及用于AMVP模式的两个或三个候选者)的列表。
在产生CU的PU的候选者列表之后,视频编码器可从所述候选者列表选择候选者且在位流中输出候选者索引。选定的候选者可为具有指向最紧密匹配于正译码的目标PU的预测性块的运动向量的候选者。候选者索引可指示所述候选者列表中的选定候选者的位置。视频编码器还可基于由PU的运动信息指示的参考块产生PU的预测性视频块。PU的运动信息可以基于由选定的候选者指示的运动信息而确定。举例来说,在合并模式中,PU的运动信息可与由选定的候选者指示的运动信息相同。在AMVP模式中,PU的运动信息可以基于PU的运动向量差和由选定的候选者指示的运动信息而确定。视频编码器可基于CU的PU的预测性视频块和CU的原始视频块而产生CU的一或多个残余视频块。视频编码器接着可在位流中编码且输出所述一或多个残余视频块。
位流可包含识别PU的候选者列表中的选定候选者的数据。视频解码器可基于由PU的候选者列表中的选定候选者指示的运动信息而确定PU的运动信息。视频解码器可基于PU的运动信息识别用于PU的一或多个参考块。在识别PU的一或多个参考块之后,视频解码器可基于PU的所述一或多个参考块而产生PU的预测性视频块。视频解码器可基于CU的PU的预测性视频块和CU的一或多个残余视频块而重构CU的视频块。
为便于说明,本发明可将位置或视频块描述为与CU或PU具有各种空间关系。此描述可解释为意味着位置或视频块对与CU或PU相关联的视频块具有各种空间关系。此外,本发明可将视频译码器当前在译码的PU称为当前PU。本发明可将视频译码器当前在译码的CU称为当前CU。本发明可将视频译码器当前在译码的图片称为当前图片。
本发明将一般使用术语HEVC合并模式或HEVC AMVP模式来指代在基础HEVC规范中描述的合并模式和AMVP模式。本发明将一般使用术语3D-HEVC合并模式和3DAMVP模式来指代在新兴的3D-HEVC标准中描述的合并模式和AMVP模式。3D-HEVC合并模式可使用HEVC合并模式作为产生候选者列表的部分,但3D-HEVC合并模式可修改HEVC合并模式候选者列表以产生3D-HEVC合并模式候选者列表。当实施3D-HEVC合并模式时,举例来说,视频译码器可重新布置HEVC候选者,将候选者添加到HEVC候选者,或从HEVC候选者移除候选者。另外,3D-HEVC合并列表可包含HEVC候选者和3D-HEVC候选者两者,而HEVC候选者列表仅包含HEVC候选者。术语HEVC候选者和3D-HEVC候选者一般涉及如何识别候选者,且不一定暗示候选者包含何种类型的运动信息(例如,时间或视图间)。
附图说明若干实例。由附图中的参考标号指示的元件对应于在以下描述中由相同参考标号指示的元件。在本发明中,名称以序数词(例如,“第一”、“第二”、“第三”等)开始的元件未必暗示所述元件具有特定次序。而是,此些序数词仅用于指代相同或类似类型的不同元件。
图1是说明可经配置以执行本发明中描述的运动向量候选者列表产生技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,其产生稍后将由目的地装置14解码的经编码视频数据。源装置12和目的地装置14可包括广泛范围的装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板计算机、电视机、相机、显示装置、数字媒体播放器、视频游戏机、视频流式传输装置或类似者。在一些情况下,可装备源装置12和目的地装置14以用于无线通信。
系统10可根据不同视频译码标准、专属标准或多视图译码的任何其它方式操作。以下描述视频译码标准的几个实例,且不应被视为具限制性。视频译码标准包含ITU-T
H.261、ISO/IEC MPEG-1视觉、ITU-T H.262或ISO/IEC MPEG-2视觉、ITU-T H.263、ISO/IEC MPEG-4视觉和ITU-T H.264(也被称为ISO/IEC MPEG-4AVC),包含其可缩放视频译码(SVC)和多视图视频译码(MVC)扩展。MVC的最新联合草案在“用于通用视听服务的高级视频译码”(2010年3月的ITU-T建议H.264)中描述,其整个内容以引入的方式并入本文中。MVC的另一联合草案在“用于通用视听服务的高级视频译码”(2011年6月的ITU-T推荐H.264)中描述,其全部内容以引用的方式并入本文中。一些额外视频译码标准包含基于AVC的MVC+D和3D-AVC。另外,已由ITU-T视频译码专家组(VCEG)和ISO/IEC动画专家组(MPEG)的视频译码联合合作小组(JCT-VC)开发新视频译码标准,即,高效率视频译码(HEVC)。
仅出于说明的目的,以根据3D-HEVC视频译码标准的实例描述本发明中描述的一些技术。然而,本发明中描述的技术不应被视为限于这些实例性标准,且可扩展到用于多视图译码或3D视频译码(例如,3D-AVC)的其它视频译码标准,或可扩展到与不一定基于特定视频译码标准的多视图译码或3D视频译码相关的技术。举例来说,本发明中描述的技术由用于多视图译码的视频编码器/解码器(编解码器)实施,其中多视图译码包含两个或两个以上视图的译码。
目的地装置14可通过链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,链路16可包括使得源装置12能够实时将经编码视频数据直接发射至目的地装置14的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码的视频数据,并将其发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成基于包的网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或任何其它可用于促进从源装置12到目的地装置14的通信的设备。
替代地,可将经编码数据从输出接口22输出到存储装置34。类似地,可由输入接口从存储装置34存取经编码数据。存储装置34可以包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置34可对应于文件服务器或可保持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流式传输或下载从存储装置34存取所存储的视频数据。文件服务器可为能够存储经编码视频数据且将所述经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、FTP服务器、网络附接存储(NAS)装置或本地磁盘驱动器。目的地装置14可以通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。此可包含无线通道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等),或适合于存取存储在文件服务器上的经编码视频数据的两者的组合。经编码视频数据从存储装置34的传输可为流式传输、下载传输或两者的组合。
本发明的技术未必限于无线应用或设定。所述技术可应用于视频译码以支持多种多媒体应用中的任一者,例如空中电视广播、有线电视发射、卫星电视发射、流式视频传输(例如,经由因特网)、编码数字视频以用于存储于数据存储媒体上、解码存储于数据存储媒体上的数字视频,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输,以支持例如视频流式传输、视频重放、视频广播和/或视频电话等应用。
在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。如下文将更详细地阐释,视频编码器20可经配置以执行本发明中描述的技术。在一些状况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。在源装置12中,视频源18可包含例如视频俘获装置(例如,摄像机)、含有先前俘获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口及/或用于产生计算机图形数据作为源视频的计算机图形系统或此类源的组合等源。作为一个实例,如果视频源18为摄像机,那么源装置12及目的地装置14可形成所谓的相机电话或视频电话。然而,本发明中所描述的技术一般来说可适用于视频译码,且可应用于无线和/或有线应用。
可由视频编码器20编码所俘获视频、预俘获的视频或计算机产生的视频。经编码视频数据可经由源装置12的输出接口22直接传输到目的地装置14。经编码视频数据也可(或替代地)存储到存储装置34上以供稍后由目的地装置14或其它装置存取以用于解码和/或重放。
目的地装置14包含输入接口28、视频解码器30和显示装置32。如下文将更详细地阐释,视频解码器30可经配置以执行本发明中描述的技术。在一些情况下,输入接口28可包含接收器和/或调制解调器。目的地装置14的输入接口28经由链路16接收经编码视频数据。经由链路16传达或在存储装置34上提供的经编码视频数据可包含视频编码器20所产生的多种语法元素,以供视频解码器(例如视频解码器30)用于解码视频数据。此类语法元素可与在通信媒体上发射、存储于存储媒体上或存储文件服务器的经编码视频数据包含在一起。
显示装置32可与目的地装置14集成或在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
尽管图1中未展示,但在一些方面,视频解码器30可各自与音频编码器和解码器集成,且可包含适当多路复用器-多路分用器单元或其它硬件和软件以处置对共同数据流或单独数据流中的音频和视频两者的编码。在一些实例中,如果适用的话,那么多路复用器-多路分用器单元可以符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
视频解码器30各自可实施为多种合适的编码器电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。举例来说,可从设备或装置的角度描述本发明中描述的技术。作为一个实例,所述设备或装置可包含视频解码器30(例如,作为无线通信装置的部分的目的地装置14),且视频解码器30可包含经配置以实施本发明中描述的技术(例如,根据本发明中描述的技术解码视频数据)的一或多个处理器。作为另一实例,所述设备或装置可包含包括视频解码器30的微处理器或集成电路(IC),且所述微处理器或IC可为目的地装置14或另一种类型的装置的一部分。相同情况可应用于视频编码器20(即,如源装置12和/或微控制器或IC的设备或装置包含视频编码器20,其中视频编码器20经配置以根据本发明中描述的技术编码视频数据)。
当部分地用软件实施所述技术时,装置可将用于所述软件的指令存储于合适的非暂时计算机可读媒体中且使用一或多个处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可以包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可以集成为相应装置中的组合编码器/解码器(编解码器)的一部分。
视频序列通常包含来自视图的一系列视频图片。图片群组(GOP)通常包括一系列一或多个视频图片。GOP可包含GOP的标头、GOP的一或多个图片的标头或其它地方中的语法数据,其描述GOP中包含的图片的数目。每一图片可包含图片语法数据,其描述用于相应图片的编码模式。视频编码器20通常对个别视频图片内的视频块进行操作以便编码视频数据。如H.264标准中界定,视频块可对应于宏块、宏块的分区且可能对应于分区的子块。视频块可具有固定或变化的大小,并且根据指定译码标准可在大小上有所不同。每一视频图片可包含多个切片。每一切片可包含多个块。
作为实例,ITU-T H.264标准支持各种块大小的帧内预测(例如用于明度分量的16乘16、8乘8或4乘4及用于色度分量的8×8),以及各种块大小的帧间预测,例如针对明度分量的16×16、16×8、8×16、8×8、8×4、4×8及4×4及针对色度分量的对应的经按比例缩放的大小。在本发明中,“NxN”及“N乘N”可互换地使用以指代块在垂直及水平尺寸方面的像素尺寸(例如,16x16像素或16乘16像素)。一般来说,16x16块在垂直方向上具有16个像素(y=16),且在水平方向上具有16个像素(x=16)。同样,NxN块总体上在垂直方向上具有N个像素,并且在水平方向上具有N个像素,其中N表示非负整数值。块中的像素可布置成行和列。此外,块未必需要在水平方向上与在竖直方向上具有相同数目个像素。举例来说,块可包括NxM个像素,其中M未必等于N。
当块经帧内模式编码(例如,经帧内预测)时,所述块可包含描述块的帧内预测模式的数据。作为另一实例,当块经帧间模式编码(例如,经帧间预测)时,所述块可包含界定块的运动向量的信息。此运动向量是关于同一视图中的参考图片(例如,时间运动向量),或关于另一视图中的参考图片(例如,视差运动向量)。定义块的运动向量的数据描述例如运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)。另外,在进行帧间预测时,块可包含参考索引信息,例如运动向量所指向的参考图片及/或运动向量的参考图片列表(例如,RefPicList0或RefPicList1)。
在H.264标准中,在帧内预测性或帧间预测性译码后,视频编码器20计算宏块的残余数据。残余数据可对应于未经编码图片的像素与H.264中的宏块的预测值之间的像素差。
在一些实例中,在进行任何变换以产生变换系数之后,视频编码器20执行变换系数的量化。量化大体上指代对变换系数进行量化以可能减少用以表示系数的数据的量从而提供进一步压缩的过程。量化过程减少与系数中的一些或全部相关联的位深度。举例来说,n位值在量化期间被下舍入到m位值,其中n大于m。
在一些实例中,视频编码器20利用预定义扫描次序扫描经量化变换系数以产生可经熵编码的串行化向量。在其它实例中,视频编码器20执行自适应扫描。在扫描经量化变换系数以形成一维向量之后,在一些实例中,视频编码器20根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵编码方法(作为几个实例)对所述一维向量进行熵编码。视频编码器20还对与经编码视频数据相关联的语法元素进行熵编码以供视频解码器30在对视频数据解码时使用。
为了执行CABAC,视频编码器20可向待发射的符号指派上下文模型内的上下文。上下文可涉及(例如)符号的相邻值是否为非零。为了执行CAVLC,视频编码器20可选择用于待发射的符号的可变长度码。VLC中的码字可经构造使得相对较短码对应于更有可能符号,而较长码对应于不太可能符号。以此方式,使用VLC可例如实现优于针对待发射的每一符号使用等长度码字的位节省。概率确定可基于指派到符号的上下文。
视频解码器30实施视频编码器20的技术的逆技术。举例来说,视频解码器30对经编码视频位流进行解码且通过逆量化和逆变换确定残余块。视频解码器30将残余块与先前经解码图片的块进行求和以确定图片内的块的像素值。
本发明中描述的某些技术可由视频编码器20和视频解码器30两者执行。作为一个实例,视频编码器20可产生运动向量候选者列表作为确定如何对视频数据块进行编码的部分和/或可产生运动向量候选者列表作为视频编码器中的解码循环的部分。视频解码器30可执行与由视频编码器20执行的相同运动向量候选者列表产生技术作为解码视频块的部分。本发明可有时参考视频解码器30执行本发明中描述的某些运动向量候选者列表产生技术。然而,应理解,除非另外说明,否则这类技术也可由视频编码器20执行。
如上文所描述,本发明中描述的技术是针对3D视频译码。为了更好地理解所述技术,以下描述一些H.264/AVC译码技术、从H.264/MVC扩展和高效率视频译码(HEVC)标准的角度的多视图视频译码以及3D-AVC技术。
对于H.264/高级视频译码(AVC),对宏块实施视频编码或解码(例如,译码),其中宏块表示经帧间预测或经帧内预测(即,经帧间预测编码或解码,或者经帧内预测编码或解码)的帧的一部分。举例来说,在H.264/AVC中,每一帧间宏块(MB)(例如,经帧间预测宏块)可以四个不同方式分割:一个16x16MB分区,两个16x8MB分区,两个8x16MB分区,或四个8x8MB分区。一个MB中的不同MB分区可具有用于每一方向的不同参考索引值(即,RefPicList0或RefPicList1)。当MB未分割成多个(1个以上)MB分区时,其在每一方向中针对整个MB分区具有仅一个运动向量。
作为视频译码(编码或解码)的部分,视频编码器20和视频解码器30可经配置以构造一个或两个参考图片列表,称为RefPicList0和RefPicList1。参考图片列表识别可用以对帧或切片的宏块进行帧间预测的参考图片。举例来说,视频编码器20可用信号表示参考索引和参考图片列表识别符。视频解码器30可接收参考索引和参考图片列表识别符,且根据参考索引和参考图片列表识别符确定将用于对当前宏块进行帧间预测解码的参考图片。
当MB分割成四个8x8MB分区时,每一8x8MB分区可进一步分割成子块。存在四个不同方式来从8x8MB分区得到子块:一个8x8子块,两个8x4子块,两个4x8子块,或四个4x4子块。每一子块可具有在每一方向上的不同运动向量,但针对每一方向共享同一参考图片索引。8x8MB分区分割成子块的方式称为子块分区。
本发明将大体上使用术语块来指代任何视频数据块。举例来说,在H.264译码及其扩展的上下文中,块可指代宏块、宏块分区、子块或任何其它类型的块中的任一者。在HEVC及其扩展的上下文中,块可指代PU、TU、CU或任何其它类型的块中的任一者。如本发明中所使用的子块大体上指代较大块的任何部分。子块还可自身简称为块。
对于多视图视频译码,存在多个不同视频译码标准。为了避免混淆,当本发明一般地描述多视图视频译码时,本发明使用短语“多视图视频译码”。一般来说,在多视图视频译码中,存在基础视图和一或多个非基础或相依视图。基础视图可在不参考相依视图中的任一者的情况下完全解码(即,基础视图仅以时间运动向量进行帧间预测)。这允许未经配置以用于多视图视频译码的编解码器仍接收完全可解码的至少一个视图(即,可提取出基础视图且丢弃其它视图,从而允许未经配置以用于多视图视频译码的解码器仍对视频内容进行解码,但无3D体验)。所述一或多个相依视图可相对于基础视图或相对于另一相依视图(即,视差补偿预测)或相对于同一视图中的其它图片(即,运动补偿预测)而经帧间预测。
鉴于一般使用“多视图视频译码”,首字母缩写MVC与H.264/AVC的扩展相关联。因此,当本发明使用首字母缩写MVC时,本发明具体地参考对H.264/AVC视频译码标准的扩展。H.264/AVC的MVC扩展除时间运动向量之外还依赖于视差运动向量作为另一种类型的运动向量。JCT-3V和MPEG还已经开发称为MVC加深度(MVC+D)的另一视频译码标准。MVC+D应用与用于纹理和深度两者的MVC的那些工具相同的低层级译码工具,其中深度的解码独立于纹理的解码且反之亦然。举例来说,在MVC中,帧仅由一个视图分量表示,所述视图分量称为纹理视图分量或简称为纹理。在MVC+D中,存在两个视图分量:纹理视图分量和深度视图分量,或简称为纹理和深度。举例来说,在MVC+D中,每一视图包含纹理视图和深度视图,其中视图包含多个视图分量,纹理视图包含多个纹理视图分量,且深度视图包含多个深度视图分量。
每一纹理视图分量与深度视图分量相关联以形成视图的视图分量。深度视图分量表示纹理视图分量中的对象的相对深度。在MVC+D中,深度视图分量和纹理视图分量是单独可解码的。举例来说,视频解码器30可实施MVC编解码器的两个实例,其中第一编解码器解码纹理视图分量且第二编解码器解码深度视图分量。这两个编解码器可独立于彼此而执行,因为纹理视图分量和深度视图分量是单独地经编码。
在MVC+D中,深度视图分量始终紧接着跟随相关联(例如,对应)的纹理视图分量。以此方式,MVC+D支持纹理优先译码,其中纹理视图分量是在深度视图分量之前经解码。
纹理视图分量和其相关联(例如,对应)的深度视图分量可包含相同图片次序计数(POC)值和view_id(即,纹理视图分量和其相关联深度视图分量的POC值和view_id是相同的)。POC值指示纹理视图分量的显示次序且view_id指示纹理视图分量和深度视图分量属于的视图。
图2展示典型MVC解码次序(即,位流次序)。解码次序布置被称为时间优先译码。应注意,存取单元的解码顺序可并不相同于输出或显示顺序。在图2中,S0到S7各自是指多视图视频的不同视图。T0到T8各自表示一个输出时间实例。存取单元可包含针对一个输出时间实例的所有视图的经译码图片。举例来说,第一存取单元可包含针对时间实例T0的所有视图S0到S7,第二存取单元可包含针对时间实例T1的所有视图S0到S7,等。
出于简洁目的,本发明可使用以下定义:
视图分量:单个存取单元中的视图的经译码表示。当视图包含经译码纹理和深度表示两者时,视图分量可包含纹理视图分量和深度视图分量。
纹理视图分量:单个存取单元中的视图的纹理的经译码表示。
深度视图分量:单个存取单元中的视图的深度的经译码表示。
如上文所论述,在本发明的上下文中,视图分量、纹理视图分量和深度视频分量可总体上被称作层。在图2中,所述视图中的每一者包含图片集合。举例来说,视图S0包含图片集合0、8、16、24、32、40、48、56及64,视图S1包含图片集合1、9、17、25、33、41、49、57及65,等。每一集合包含两个图片:一个图片称为纹理视图分量,且另一图片称为深度视图分量。视图的一图片集合内的纹理视图分量及深度视图分量可被视为对应于彼此。举例来说,视图的图片集合内的纹理视图分量被视为对应于视图的图片集合内的深度视图分量,且反过来也一样(即,深度视图分量对应于其集合中的纹理视图分量,且反过来也一样)。如本发明中所使用,对应于深度视图分量的纹理视图分量可被视为纹理视图分量且深度视图分量为单一存取单元的同一视图的部分。
纹理视图分量包含所显示的实际图像内容。举例来说,所述纹理视图分量可包含明度(Y)及色度(Cb及Cr)分量。深度视图分量可指示其对应纹理视图分量中的像素的相对深度。作为一个实例类似,深度视图分量类似于仅包含明度值的灰阶图像。换句话说,深度视图分量可不传达任何图像内容,而是提供纹理视图分量中的像素的相对深度的量度。
举例来说,深度视图分量中的纯白色像素指示对应纹理视图分量中的其对应像素较接近于观察者的视角,且深度视图分量中的纯黑色像素指示对应纹理视图分量中的其对应像素距观察者的视角较远。黑色与白色之间的各种灰度渐变指示不同深度水平。举例来说,深度视图分量中的深灰色像素指示纹理视图分量中的其对应像素比深度视图分量中的浅灰色像素更远。因为仅需要灰阶来识别像素的深度,因此深度视图分量不需要包含色度分量,因为深度视图分量的色彩值可能不服务于任何目的。以上阐释既定为用于使深度图像相关到纹理图像的类似。深度图像中的深度值并不实际上表示灰度梯度,而是实际上表示8位或其它位大小的深度值。
深度视图分量仅使用明度值(例如,强度值)来识别深度是出于说明的目的而提供,且不应被视为限制性的。在其它实例中,可利用任何技术来指示纹理视图分量中的像素的相对深度。
图3展示用于多视图视频译码的典型MVC预测结构(包含每一视图内的图片间预测和视图之间的视图间预测两者)。预测方向由箭头指示,箭头指向的对象使用箭头出发的对象作为预测参考。在MVC中,由视差运动补偿支持视图间预测,所述视差运动补偿使用H.264/AVC运动补偿的语法但允许将不同视图中的图片用作参考图片。
在图3的实例中,说明八个视图(具有视图ID“S0”到“S7”),且对于每一视图说明十二个时间位置(“T0”到“T11”)。也就是说,图3中的每一行对应于视图,而每一列指示时间位置。
尽管MVC具有可由H.264/AVC解码器解码的所谓的基础视图,且MVC还可支持立体视图对,但MVC的优点在于其可支持使用两个以上视图作为3D视频输入且解码通过多个视图表示的此3D视频的实例。具有MVC解码器的客户端的显现器(renderer)可预期具有多个视图的3D视频内容。
在每一行及每一列的交叉点处指示图3中的图片。H.264/AVC标准可使用术语帧来表示视频的一部分。本发明可互换地使用术语图片与帧。
使用包含字母的块来说明图3中的图片,字母标示对应图片是经帧内译码(也就是说,I图片),还是在一个方向上经帧间译码(也就是说,作为P图片),或是在多个方向上经帧间译码(也就是说,作为B图片)。大体来说,预测由箭头指示,其中箭头指向的图片使用箭头出发的图片用于预测参考。举例来说,时间位置T0处的视图S2的P图片是从时间位置T0处的视图S0的I图片预测的。
如同单个视图视频编码,可相对于不同时间位置处的图片预测性地编码多视图视频译码视频序列的图片。举例来说,时间位置T1处的视图S0的b图片具有从时间位置T0处的视图S0的I图片指向其的箭头,从而指示所述b图片是从所述I图片预测的。然而,另外,在多视图视频编码的情况下,图片可经视图间预测。也就是说,视图分量可使用其它视图中的视图分量用于参考。举例来说,在MVC中,如同另一视图中的视图分量为帧间预测参考而实现视图间预测。潜在视图间参考在序列参数集(SPS)MVC扩展中用信号通知且可通过参考图片列表构造过程加以修改,所述参考图片列表构造过程实现帧间预测或视图间预测参考的灵活排序。视图间预测也是包含3D-HEVC(多视图加上深度)的HEVC的所提出多视图扩展的特征。
图3提供视图间预测的各种实例。在图3的实例中,视图S1的图片说明为是从视图S1的不同时间位置处的图片预测,且是从相同时间位置处的视图S0及S2的图片经视图间预测。举例来说,时间位置T1处的视图S1的b图片是从时间位置T0及T2处的视图S1的B图片中的每一者以及时间位置T1处的视图S0及S2的b图片预测。
在一些实例中,图3可被看作说明纹理视图分量。举例来说,图2中所说明的I、P、B及b图片可认为是视图中的每一者的纹理视图分量。根据本发明中描述的技术,对于图3中说明的纹理视图分量中的每一者,存在对应深度视图分量。在一些实例中,可以类似于图3中针对对应纹理视图分量所说明的方式的方式预测深度视图分量。
也可由MVC支持两个视图的译码。MVC的优势中的一者为MVC编码器可将两个以上视图当作3D视频输入且解码器可解码此多视图表示。因而,具有MVC解码器的任何显现器可解码具有两个以上视图的3D视频内容。
如上文所论述,在MVC中,允许在相同存取单元中(在一些情况下意味着具有相同时间实例)的图片当中进行视图间预测。当对非基础视图中的一者中的图片进行译码时,如果图片处于不同视图中但在相同时间实例内,那么可将所述图片添加到参考图片列表中。可将视图间预测参考图片放置在参考图片列表的任何位置中,正如任何帧间预测参考图片一般。如图3中所示,视图分量可使用其它视图中的视图分量用于参考。在MVC中,如同另一视图中的视图分量为帧间预测参考般实现视图间预测。
在MVC中,允许在相同存取单元(即,具有相同时间实例)中的图片当中进行视图间预测。当译码非基础视图中的一者中的图片时,如果图片处于不同视图中但具有相同时间实例,那么可将所述图片添加到参考图片列表中。可将视图间预测参考图片放置在参考图片列表的任何位置中,正如任何帧间预测参考图片一般。
如图3中所示,视图分量可使用其它视图中的视图分量用于参考。此情况被称为视图间预测。在MVC中,如同另一视图中的视图分量为帧间预测参考般实现视图间预测。
在多视图视频译码的上下文中,存在至少两个不同类型的运动向量。一种类型的运动向量是指向时间参考图片的正常运动向量(其可被称为时间运动向量)。对应的时间帧间预测是运动补偿预测(MCP)。另一类型的运动向量是指向不同视图中的图片(即,视图间参考图片)的视差运动向量。对应的帧间预测是视差补偿预测(DCP)。
视频解码器30可使用多个HEVC帧间译码模式解码视频。在HEVC标准中,存在两个帧间预测模式,即分别用于PU的合并模式(跳过模式一般视为合并的特殊情况)和AMVP)模式。在AMVP或合并模式中,视频解码器30维持用于多个运动向量预测符的运动向量候选者列表。可通过从所述候选者列表获取一个候选者来产生当前PU的运动向量以及合并模式中的参考索引。
举例来说,在HEVC中,候选者列表含有针对合并模式的多达五个候选者和针对AMVP模式的仅两个候选者。合并候选者可含有运动信息集合,例如对应于两个参考图片列表(列表0和列表1)的运动向量和参考索引。如果通过合并索引来识别合并候选者,那么确定用于当前块的预测的参考图片以及相关联的运动向量。然而,在AMVP模式下,对于自列表0或列表1起的每一潜在预测方向,需要将参考索引连同对候选者列表的MVP索引一起明确地用信号表示,这是因为AMVP候选者仅含有运动向量。在AMVP模式中,另外用信号表示所选运动向量与对应于MVP索引的运动向量预测符之间的运动向量差。如可从上文看出,合并候选者对应于整个运动信息集合,而AMVP候选者仅含有用于特定预测方向的一个运动向量和参考索引。
如上文所描述,视频解码器30可对根据基于HEVC的3D视频译码标准译码的视频进行解码。当前,VCEG和MPEG的3D视频译码联合合作小组(JCT-3C)正在开发基于HEVC的3DV标准,其标准化努力的部分包含基于HEVC的多视图视频编解码器(MV-HEVC)的标准化和基于HEVC的3D视频编解码器(3D-HEVC)的标准化。对于3D-HEVC,可包含且支持用于纹理和深度视图两者的新译码工具,包含用于CU/PU层级译码的工具。用于3D-HEVC的最新软件3D-HTM可在2014年6月13日从以下链接下载:
[3D-HTM版本9.0r1]:https://hevc.hhi.fraunhofer.de/svn/svn_3DVCSoftware/tags/HTM-9.0r1/。
可用的最新参考软件描述如下:
张丽(Li Zhang)、格哈德·泰什(Gerhard Tech)、科里茨多夫韦格纳(KrzysztofWegner)、叶世勋(Sehoon Yea)的“3D-HEVC和MV-HEVC的测试模型6(Test Model 6of 3D-HEVCand MV-HEVC)”,JCT3V-F1005,Joint Collaborative Team on 3D Video CodingExtension Development of ITU-T SG 16WP 3和ISO/IEC JTC 1/SC 29/WG 11的3D视频译码扩展开发联合合作小组,第六次会议:日内瓦,2013年11月。其可从2014年6月13日起从以下链接下载:
http://phenix.it-sudparis.eu/jct2/doc_end_user/current_document.php?id=1636。
可用的3D-HEVC最新工作草案如下:
格哈德泰什(Gerhard Tech)、科里茨多夫韦格纳(Krzysztof Wegner)、陈英(YingChen)、叶世勋(Sehoon Yea)的“3D-HEVC草案文本2(3D-HEVC Draft Text 2)”,JCT3V-F1001,ITU-T SG 16WP 3和ISO/IEC JTC 1/SC 29/WG 11的3D视频译码扩展开发联合合作小组,第六次会议:日内瓦,2013年11月。其可从以下链接下载:
http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/6_Geneva/wg11/JCT3V-F1001-v4.zip
视频解码器30可经配置以实施各种视差向量导出过程。一个此过程的实例称为基于相邻块的视差向量(NBDV),其用于当前3D-HTM。NBDV利用来自空间和时间相邻块的视差运动向量。在NBDV中,视频解码器30以固定检查次序检查空间或时间相邻块的运动向量。一旦视频解码器30识别出视差运动向量或隐式视差向量(IDV),视频解码器30便终止检查过程。当执行NBDV时,视频解码器30返回经识别视差运动向量且将其转换为视差向量。视频解码器30可使用此所确定的视差向量用于视图间运动预测和/或视图间残余预测。如果在检查所有预定义相邻块之后未找到此视差向量,那么视频解码器30可使用零视差向量用于视图间运动预测且停用用于对应PU的视图间残余预测。
3D-HEVC首先在JCT3V-A0097:3D-CE5.h:视差向量产生结果(L·张、Y·陈、M·卡塞维茨(高通))中采用一种形式的NBDV。在JCT3V-A0126:3D-CE5.h:基于HEVC的3D视频译码的视差向量导出的简化(J·宋、M·古、S·叶(LG))中关于简化NBDV包含IDV。基于此,通过移除存储在经解码图片缓冲器中的IDV而进一步简化NBDV,且在JCT3V-B0047:3D-CE5.h相关:用于视差向量导出的改进(J·康、Y·陈、L·张、M·卡塞维茨(高通))中改进与RAP图片选择相关联的译码增益。在JCT3V-D0181:CE2:在3D-HEVC中基于CU的视差向量导出(J·康、Y·陈、L·张、M·卡塞维茨(高通))中描述了对NBDV的进一步精炼。
图4是说明用于NBDV的时间相邻块的概念图。如上文所介绍,当实施NBDV时,视频解码器30可使用指定检查次序检查空间和时间相邻块。在NBDV的一些实施方案中,视频解码器30使用两个空间相邻块用于视差向量导出。那两个块是如图4再现的如HEVC规范的图8-3中界定的当前PU的左边和上方相邻块,由A1和B1表示。视频解码器30可检查来自当前视图的多达两个参考图片(例如,位于同一地点的图片和随机存取图片或具有最小POC差和最小时间ID的参考图片)用于时间块检查。在一个实例中,视频解码器30可首先检查随机存取图片,接着是位于同一地点的图片。对于每一候选图片,视频解码器30检查中心块,其对应于当前PU的位于同一地点的区的中心4x4块。
在NBDV的一些实施方案中,五个空间相邻块用于视差向量导出。五个空间相邻者为覆盖当前预测单元(PU)的译码单元(CU)的左下方、左侧、右上方、上方和左上方块,由A0、A1、B0、B1或B2表示,如图4中所展示。应注意,这些空间相邻者是HEVC中的合并/AMVP模式中使用的相同空间相邻者。因此,不需要额外存储器存取。
对于检查时间相邻块,视频解码器首先执行候选图片列表的构造过程。视频解码器30可处理来自当前视图的多达两个参考图片作为候选图片。首先将位于同一地点的参考图片插入至候选图片列表,接着按参考索引的升序插入其余候选图片。当两个参考图片列表中具有相同参考索引的参考图片可用时,位于同一地点的图片的同一参考图片列表中的参考图片在另一参考图片前面。对于候选图片列表中的每一候选图片,确定三个候选区以用于导出时间相邻块。
当块是以视图间运动预测译码时,需要导出视差向量用于选择不同视图中的对应块。隐式视差向量(IDV或也称为所导出的视差向量)称为视图间运动预测中导出的视差向量。即使块是以运动预测译码的,为了对随后的块进行译码的目的也不会丢弃所导出的视差向量。
在3D-HTM的3D-HTM 7.0和稍后版本的当前设计中,作为NBDV的部分,视频解码器30以预定义次序检查时间相邻块中的视差运动向量、空间相邻块中的视差运动向量,并且然后检查IDV。一旦找到视差运动向量或IDV,视频解码器30便终止NBDV过程。在NBDV的一些实施方案中,由视频解码器30检查的空间相邻块的数目可减少到两个。
在一些实例中,视频解码器30还可精炼所确定的视差向量。举例来说,视频解码器30可使用经译码深度图中的信息来精炼使用NBDV产生的视差向量。即,视频解码器30可通过使用基础视图深度图中经译码的信息来增强视差向量的准确性。作为精炼过程的部分,视频解码器30可首先通过经先前译码参考深度视图(例如基础视图)中的所导出视差向量来定位对应深度块。对应深度块的大小可与当前PU的大小相同。视频解码器30接着可从位于同一地点的深度块,例如从例如图7中所示的四个拐角深度值中的最大值计算视差向量。所述四个拐角样本对应于左上方(TL)样本、右上方(TR)样本、左下方(BL)样本以及右下方(BR)样本。视频解码器30可将视差向量的水平分量设定为此计算的值,同时将视差向量的垂直分量设定成0。
当一个视差向量是从NBDV过程导出时,视频解码器30可通过从参考视图的深度图检索深度数据而进一步精炼视差向量。此基于深度的精炼过程称为Do-NBDV。所述精炼过程可例如包含两个步骤。首先,视频解码器30可使用经先前译码参考深度视图(例如基础视图)中的所导出视差向量(即使用NBDV导出的视差向量)定位对应深度块。对应深度块的大小可与当前PU的大小相同。第二,视频解码器30可从对应深度块的四个拐角像素选择一个深度值且将选定深度值转换为经精炼视差向量的水平分量。视频解码器30可不改变视差向量的垂直分量。
在一些实例中,视频解码器30可使用经精炼视差向量用于视图间运动预测,同时使用未精炼的视差向量用于视图间残余预测。另外,视频解码器30可将经精炼视差向量存储为一个PU的运动向量(如果其是以后向视图合成预测模式译码)。在3D-HEVC的当前设计中,无论从NBDV过程导出的视图次序索引的值如何都始终存取基础视图的深度视图分量。
图5展示子PU层级视图间运动预测的实例。图5展示当前视图(称为V1)和参考视图(称为V0)。当前PU 190包含四个子PU A到D。视频解码器30可使用四个子PU A到D中的每一者的视差向量定位参考块191,所述参考块包含四个参考块AR到DR。子PU A到D的视差向量在图5中展示为DV[i],其中i对应于A到D。因为四个子PU中的每一者具有唯一视差向量,所以子PU A到D相对于彼此的位置可不同参考块AR到DR相对于彼此的位置。在子PU层级视图间运动预测中,视频解码器30可使用参考块的运动向量预测子PU。参考块AR到DR的运动向量在图5中展示为MV[i],其中i对应于A到D。因此,作为一个实例,对于子PU A,视频解码器30可使用DV[A]定位参考块AR,确定使用MV[A]译码参考块AR,且使用MV[A]定位用于子PU A的预测性块。
视频解码器30可经配置以执行如上文相对于图5所介绍的子PU层级视图间运动预测。上文描述了视图间运动预测的方面,其中仅参考块的运动信息用于相依视图中的当前PU。然而,当前PU可对应于参考视图中的参考区域(具有与视差向量所识别的当前PU相同的大小),且参考可具有丰富的运动信息。如图5中所示的子PU层级视图间运动预测(SPIVMP)可使用参考区域中的丰富运动信息。SPIVMP可仅应用于分割模式2Nx2N。
在JCT3V-F0110中,提议用以产生新合并候选者的子PU层级视图间运动预测方法。新候选者添加到运动向量候选者列表。称为子PU合并候选者的新候选者可通过以下方法导出。将当前PU的大小表示为nPSW x nPSH,由NxN表示用信号表示的子PU大小,且由subWxsubH表示最终子PU大小。
首先,取决于PU大小和用信号表示的子PU大小将当前PU划分为一个或多个子PU。
subW=max(N,nPSW)!=N?N:nPSW;
subH=max(N,nPSH)!=N?N:nPSH;
第二,针对每一参考图片列表(其中X为0和1)将默认运动向量tmvLX设定为(0,0)且将参考索引refLX设定为-1。对于光栅扫描次序中的每一子PU,以下适用:
●将来自Do-NBDV或NBDV过程的DV添加到当前子PU的中间位置,以
获得参考样本位置(xRefSub,yRefSub),其中:
xRefSub=Clip3(0,PicWidthInSamplesL-1,xPSub+nPSWsub/2+((mvDisp[0]+2)>>2))
yRefSub=Clip3(0,PicHeightInSamplesL-1,yPSub+nPSHSub/2+((mvDisp[1]+2)>>2))
参考视图中覆盖(xRefSub,yRefSub)的块用作当前子PU的参考块。
●对于所识别的参考块,
■如果其是使用时间运动向量经译码,那么以下适用:
●相关联运动参数可用作当前子PU的候选运动参数。
●将tmvLX和refLX更新为当前子PU的运动信息。
●如果当前子PU不是光栅扫描次序中的第一者,那么所有
先前子PU继承运动信息(tmvLX及refLX)。
■否则(参考块经帧内译码),将当前子PU的运动信息设定成
tmvLX和refLX。
可使用例如4x4、8x8和16x16等不同子PU块大小。子PU块的大小可存在于视图参数集中。
视频解码器30还可将3D-HEVC合并候选者添加到运动向量候选者列表。3D-HEVC合并候选者一般指代不在基础HEVC规范的合并模式中使用但在3D-HEVC规范中使用的候选者。作为添加3D-HEVC合并候选者的部分,视频解码器30可产生从经移位DV和/或DMV导出的额外候选者。视频解码器30可例如通过以下两个步骤产生额外候选者。首先,视频解码器30可使视差向量(DV)移位((PuWidth/2*4+4),(PuHeight/2*4+4))且使用经移位DV以导出参考视图中的IPMC候选者。此处,当前PU的大小是PuWidthx PuHeight。
第二,如果IPMC从步骤上方的步骤不可用,那么视频解码器30可导出候选者,表示为视差经移位运动向量(DSMV)且将DSMV设定为额外候选者。视频解码器30可如下导出DSMV:
○视频解码器30从空间相邻块A1、B1、B0、A0或B2识别对应于RefPicList0的第一可用视差运动向量(DMV)。
○如果DMV可用(即表示为‘mv’)
i.DSMV[0]=mv[0],DSMV[1]=mv[1]且DSMV[0][0]+=4,参考索引是从第一可用候选者(其含有DMV)继承。
ii.当BVSP经启用时,DSMV[0][1]设定成0。
mv表示上方步骤中的第一经识别DMV,其可包含预测方向0(由mv[0]表示)和预测方向1(由mv[1]表示)两者的运动向量。DSMV[i]和mv[i]分别指代预测方向的运动向量,其中i=0或1。mv[i][0]和mv[i][1]分别指代mv[i]的水平和垂直分量。DSMV[i][0]和DSMV[i][1]分别指代DSMV[i]的水平和垂直分量。
○否则,DSMV[0][0]=DV[0]+4,DSMV[1][0]=DV[0]+4;DSMV[0][1]=0and DSMV[1][1]=0。此处DV是视差向量。
现将论述可由视频解码器30执行的整个合并列表产生过程的描述。下文展示的步骤的次序表示一个潜在次序。预期视频解码器30还可通过以不同次序执行所述步骤、执行所述步骤的子集或包含新集合而产生合并候选者列表。
1.视频解码器30导出视差向量且基于视差向量识别当前PU对应块。IPMC如果经导出为可用的则被添加到运动向量候选者列表。从对应块导出的经视图间预测运动候选者(IPMC)如果可用则被添加。应注意IPMC通常是含有参考时间参考图片的运动向量的候选者。IPMC可延伸到如上方相对于图5所描述的“子PU层级视图间运动预测”候选者。
2.视频解码器30将空间合并候选者(SMC)A1、B1和B0添加到运动向量候选者列表。
a.另外,在SMC产生过程期间,如果从A1或B1导出的SMC与在步骤1中的IPMC相同,那么将它们从运动向量候选者列表排除。
3.视频解码器30将视差向量转换为视差运动向量且将视差运动向量添加到运动向量候选者列表(如果它们不同于A1和B1)。
4.如果BVSP针对当前切片经启用,那么视频解码器30将BVSP合并候选者插入到运动向量候选者列表中。
5.视频解码器30将SMC A0和B2添加到运动向量候选者列表。
6.如果IPMC导出为额外候选者,那么视频解码器30将其与步骤1中的IPMC进行比较。如果其不等于步骤1中的IPMC或如果额外候选者是DSMV候选者(当额外IPMC不可用时),那么视频解码器30将产生的额外候选者插入到运动向量候选者列表中。
7.作为当前设计,视频解码器30将时间合并候选者添加到运动向量候选者列表。
8.如果有效候选者的数目小于最大数目,那么视频解码器30可其它运动向量候选者到运动向量候选者列表。
应注意,候选者列表大小不改变(仍为六个),一旦所述候选者列表中存在足够候选者,便不再进一步添加候选者。
图6是说明涉及使用相邻块的后向视图合成预测(BVSP)的技术的概念图。已提出并采用BVSP作为用于3D-HEVC的技术。如JCT3V-C0152中提出的后向扭曲VSP方法在第3次JCT-3V会议中采用。此后向扭曲VSP的基本想法与3D-AVC中的基于块的VSP相同。这两个技术均使用后向扭曲和基于块的VSP以避免发射运动向量差且使用更精确的运动向量。实施方案细节由于不同平台而不同。本发明大体上使用首字母缩略词BVSP来指代3D-HEVC中的后向视图合成预测,但BVSP也可指代3D-AVC的基于块的视图合成预测。
在3D-HTM中,在共同测试条件中应用纹理优先译码。因此,当对一个非基础纹理视图进行解码时对应非基础深度视图不可用。因此,估计深度信息且其用以执行BVSP。为了估计块的深度信息,提出首先从相邻块导出视差向量,且随后使用所导出的视差向量从参考视图获得深度块。
如上文已经介绍,在HTM 5.1测试模型中,存在用以导出视差向量预测符的过程,被称为NBDV。令(dvx,dvy)表示从NBDV功能识别的视差向量,且当前块位置是(blockx,blocky)。提出获取参考视图的深度图像中的(块x+dvx,块y+dvy)处的深度块。所获取的深度块将具有当前预测单元(PU)的相同大小,且其随后将用以进行当前PU的后向扭曲。图6说明用于从参考视图定位深度块且随后使用所述深度块用于BVSP预测的步骤。
在图6的实例中,深度图片150和纹理图片154对应于同一视图,而纹理图片152对应于不同视图。确切地说,纹理图片152包含正相对于充当参考图片的纹理图片154译码的当前块160。视频译码器可参考与当前块160相邻的相邻块162。相邻块162包含先前所确定的视差向量166。视差向量166可如同当前块160的视差向量164那样导出。因此,视差向量164参考参考视图的深度图片150中的深度块156。
视频译码器可随后使用深度块156的像素(即,深度值)来确定当前块160的像素的视差值168(即,纹理值),用于执行后向扭曲。视频译码器接着可根据由视差值168所识别的像素来合成当前块160的经预测块(即,BVSP参考块)的值。视频译码器接着可使用此经预测块来预测当前块160。举例来说,在视频编码器20的视频编码期间,视频编码器20可计算经预测块与当前块160之间的逐像素差以产生残余值,视频编码器20可随后对所述残余值进行变换、量化和熵编码。另一方面,在视频解码器30的视频解码期间,视频解码器30可对残余数据进行熵解码、逆量化和逆变换,随后组合所述残余数据(基于逐像素)与经预测块以再生当前块160。
如JCT3V-C0152中提出的后向扭曲VSP方法在第3次JCT-3V会议中采用。此后向扭曲VSP的基本想法与3D-AVC中的基于块的VSP相同。这两个技术均使用后向扭曲和基于块的VSP以避免发射运动向量差且使用更精确的运动向量。实施方案细节由于不同平台而不同。
在以下段落中,本发明还可使用术语BVSP来指示3D-HEVC中的向后扭曲VSP方法。现将论述BVSP模式的信令。
在3D-HTM的一些版本中,BVSP模式仅支持跳过或合并模式中的代码间块。对于以AMVP模式译码的块不允许BVSP模式。并非发射旗标以指示BVSP模式的使用,而是引入一个额外合并候选者(即,BVSP合并候选者)且每一候选者与一个BVSP旗标相关联。当经解码合并索引对应于BVSP合并候选者时,其指示当前预测单元(PU)使用BVSP模式且对于当前PU内的每一子块,其自身的视差运动向量可通过转换深度参考视图中的深度值而导出。
如下界定BVSP旗标的设定:
●当用于导出空间合并候选者的空间相邻块是以BVSP模式译码时,相关联的运动信息由当前块继承作为常规的合并模式。另外,此空间合并候选者通过等于1的BVSP旗标来标记。
●对于新引入的BVSP合并候选者,BVSP旗标设定成1。
●对于所有其它合并候选者,相关联的BVSP旗标设定成0。
视频解码器30可经配置以产生BVSP合并候选者。在3D-HEVC中,称为BVSP合并候选者的新候选者被导出且插入到合并候选者列表。通过以下方法设定对应参考图片索引和运动向量:
-从NBDV获得由所导出的视差向量的refVIdxLX表示的视图索引;
-获得与具有等于refVIdxLX的视图次序索引的参考图片相关联的参考图片列表RefPicListX(RefPicList0或RefPicList1)。来自NBDV过程的对应参考图片索引和视差向量用作RefPicListX中的BVSP合并候选者的运动信息。
-如果当前切片是B切片,那么检查具有由除RefPicListX外的参考图片列表(即,RefPicListY,其中Y为1-X)中不等于refVIdxLX的refVIdxLY表示的视图次序索引的视图间参考图片的可用性。
○如果找到此不同视图间参考图片,那么应用双向预测VSP。同时,不同视图间参考图片的对应参考图片索引以及来自NBDV过程的经按比例缩放视差向量用作RefPicListY中的BVSP合并候选者的运动信息。来自具有等于refVIdxLX的视图次序索引的视图的深度块用作当前块的深度信息(在纹理优先译码次序的情况下),且两个不同视图间参考图片(各自来自一个参考图片列表)经由后向扭曲过程而存取并且进一步经加权以实现最终后向VSP预测符;
○否则,以RefPicListX作为用于预测的参考图片列表而应用单向预测性VSP。
如上文所介绍,视频解码器30可经配置以执行运动补偿。在3D-HTM中,在共同测试条件中应用纹理优先译码。因此,当对一个非基础纹理视图进行解码时对应非基础深度视图不可用。因此,估计深度信息且其用以执行BVSP。
为了估计块的深度信息,提议视频解码器30可首先从相邻块导出视差向量,并且然后使用所导出的视差向量从参考视图获得深度块。
在HTM 8.0测试模型中,存在导出视差向量预测符的过程,称为NBDV(上文所述)。假设(dvx,dvy)表示从NBDV函数识别的视差向量且(blockx,blocky)表示当前块位置。
视频解码器30可执行单向预测性BVSP。举例来说,根据一个建议,视频解码器30可获取参考视图的深度图像中的左上方位置(blockx+dvx,blocky+dvy)的深度块。首先将当前块分裂成具有等于W*H的相同大小的若干子块。对于具有等于W*H的大小的每一子块,利用所获取深度块内的对应深度子块,且将来自所述深度子块的四个拐角像素的最大深度值转换成视差运动向量。每一子块的所导出视差运动向量随后用于运动补偿。图6说明如何定位来自参考视图的深度块且随后用于BVSP预测的三个步骤。
视频解码器30还可执行双向预测BVSP。当存在来自RefPicList0和RefPicList1中的不同视图的多个视图间参考图片时,视频解码器30可应用双向预测VSP。即,如上文所描述,将从每一参考列表产生两个VSP预测符。视频解码器30接着可平均化所述两个VSP预测符以获得最终VSP预测符。
如上文所描述的运动补偿大小(即,W*H)可为8x4或4x8。为了确定运动补偿大小,视频解码器30可应用以下:
对于每一8x8块,检查对应深度8x8块的4个拐角且:
if(vdepth[TL]<vdepth[BR]?0:1)!=(vdepth[TR]<vdepth[BL]?0:1)
使用4x8分区(W=4,H=8)
else
使用8x4分区(W=8,H=4)
可存在与现有3D运动向量候选者列表构造技术相关联的若干潜在问题。作为一个实例,DSMV候选者的产生需要检查所有相邻块,其潜在地需要不合需要地大量的条件检查。HEVC合并候选者和3D-HEVC额外合并候选者需要如此多的交互。
在一些实例中,本发明引入用于3D-HEVC纹理译码的DSMV候选者导出过程以及用于3D-HEVC候选者的合并列表构造的简化。
根据本发明的一个技术,可通过仅搜索由HEVC合并列表构造过程导出的前N个候选者而简化DSMV候选者的产生。N可例如小于或等于2。在其它实例中,N可为4、1、3等。根据本发明的技术,可不需要HEVC合并列表中的候选者的空间位置的信息。举例来说,视频解码器30可仅检查HEVC合并列表中的前两个候选者,而无需检查那些候选者是否来自A1、B1、B0、A0或B2。相比之下,现有技术需要候选者的位置(即,如果候选者来自A1、B1、B0、A0或B2)且视频解码器按次序检查这些位置。
在这些实例中,HEVC合并列表可不包含虚拟候选者。替代地,HEVC合并列表可包含虚拟候选者。
根据本发明的技术,视频解码器30可通过下文描述的以下步骤产生额外候选者。
1.视频解码器30可使DV移位((PuWidth/2*4+4),(PuHeight/2*4+4))且使用经移位DV以导出参考视图中的IPMC候选者。此处,当前PU的大小是PuWidthx PuHeight。如果针对当前切片启用深度精炼,那么DV可对应于使用Do-NBDV导出的视差向量。否则,DV可对应于由NBDV导出的视差向量。
2.如果IPMC从以上步骤1不可用,那么视频解码器30导出DMSV候选者且将其设定为额外候选者。视频解码器30可如下导出DSMV候选者:
○视频解码器30从由基础HEVC规范的合并模式产生的合并列表中的前两个候选者识别对应于RefPicList0的第一可用视差运动向量(DMV)。
○如果DMV可用(即表示为‘mv’)
i.DSMV[0]=mv[0],DSMV[1]=mv[1]且DSMV[0][0]+=4,参考索引是从第一可用候选者(其含有DMV)继承。
ii.当BVSP经启用时,DSMV[0][1]设定成0。
○否则,DSMV[0][0]=DV[0]+4,DSMV[1][0]=DV[0]+4;DSMV[0][1]=0且DSMV[1][1]=0。此处DV是视差向量。
替代地,提议可通过使视频解码器30不搜索空间相邻候选者而简化DSMV候选者的产生,且实际上,视频解码器30可将DSMV候选者直接设定为经移位的视差向量。视频解码器30可通过下文描述的以下步骤产生额外候选者。
1.视频解码器30可使DV移位((PuWidth/2*4+4),(PuHeight/2*4+4))且使用其以导出参考视图中的IPMC候选者。此处,当前PU的大小是PuWidth xPuHeight。如果针对当前切片启用深度精炼,那么DV可对应于使用Do-NBDV导出的视差向量。否则,DV可对应于由NBDV导出的视差向量。
2.如果IPMC从以上步骤1不可用,那么视频解码器30可导出DSMV候选者且将DSMV设定为额外候选者。视频解码器30可如下导出DSMV候选者:DSMV[0][0]=DV[0]+4,DSMV[1][0]=DV[0]+4;DSMV[0][1]=0且DSMV[1][1]=0。此处DV是视差向量。
可为DSMV的额外候选者是在其它合并候选者之后但在虚拟候选者之前插入。
还提议可通过当插入额外3D-HEVC候选者时忽略HEVC合并候选者来自哪一空间/时间相邻者而简化合并候选者列表产生。
1.在一个实例中,如果3D-HEVC合并候选者与HEVC候选者之间需要修剪,那么其始终在当前(3D-HEVC)候选者与HEVC候选者列表的固定位置中的候选者之间。
2.在HEVC候选者将经修剪之后,其首先被标记为“不可用”或“待移除”,但仍保持在候选者列表中直到插入所有3D-HEVC候选者。在那时,移除那些“不可用”候选者且剩余候选者经移位以填入空的时隙中。
3.以指示空间相邻者是否为BVSP的变量不需要存在因此不被存储的方式插入BVSP候选者。
根据本发明的另一技术,视频解码器30可以不需要检查从HEVC合并过程产生的任何特定候选者(例如,空间和时间相邻者候选者)的可用性的方式产生运动向量候选者列表的额外合并候选者(例如,3D-HEVC合并候选者)。因此,并非针对例如图4中的空间合并候选者A1和/或B1等特定空间合并候选者修剪3D-HEVC合并候选者(例如,IPMC候选者、BVSP候选者和/或DMSV候选者),视频解码器30可通过确定3D-HEVC合并候选者是否与前N个HEVC合并候选者中的任一者相同来修剪3D-HEVC合并候选者,其中N表示整数,例如1、2或3。换句话说,并非将3D-HEVC候选者与基于空间相邻者A1和B1所确定的候选者进行比较,可将3D-HEVC候选者与运动向量候选者列表中的前N个候选者进行比较,所述前N个候选者可为HEVC空间候选者、HEVC时间候选者或HEVC虚拟候选者中的任一者。在一些实例中,视频解码器30可不将3D-HEVC候选者与前N个候选者进行比较但仍可对照运动向量候选者列表中的固定位置比较3D-HEVC候选者。视频解码器30可例如不对照候选者列表中的第一条目(例如,索引0)比较3D-HEVC候选者,但对照候选者列表中的第二和第三条目(例如,索引1和2)比较3D-HEVC候选者。
还提议可以其中视频解码器30不检查临时合并候选者列表中候选者的数目是否超过限制的方式完成用于额外合并候选者的合并候选者列表产生,其可避免由列表中HEVC候选者的数目超出候选者的最大数目所造成的额外检查。举例来说,并非在正构造列表的同时修剪列表且一旦列表完整则终止列表构造过程,视频解码器30可将重复候选者标记为待移除。在所有候选者插入到列表中之后,视频解码器30可移除被标记为重复的候选者且移除过量候选者。在一些实施方案中,视频解码器30可移除过量候选者而无需标记且移除重复。如果例如将包含在运动向量候选者列表中的候选者的最大数目是六个,其中索引值为零到五,那么视频解码器30可从临时候选者列表移除具有等于或大于六的索引的任何候选者。
现将描述第一实例的整个合并列表产生过程的描述。在此实例中,视频解码器30首先如基础HEVC规范的合并模式中识别空间候选者、时间合并候选者和虚拟候选者。视频解码器30可将BVSP候选者插入到合并候选者列表中处于DV候选者之前。
变量maxMrgNum表示3D-HEVC中的最大合并候选者数目。HEVC合并候选者指代在HEVC合并列表产生过程中导出的合并候选者。
1.视频解码器30可调用HEVC合并列表产生过程以产生maxMrgNum合并候选者:
a.视频解码器30可将SMC A1、B1和B0添加到合并候选者列表。
b.视频解码器30空间合并候选者(SMC)A0和B2添加到合并候选者列表。
c.如当前设计将时间合并候选者添加到合并候选者列表。(应注意TMVP候选者在3D-HEVC中已改变)。
d.如3D-HEVC中的当前设计将虚拟候选者添加到合并候选者列表。
2.视频解码器30可导出视差向量且基于所述视差向量识别当前PU的对应块。如果IPMC导出为可用的,那么视频解码器30可将所述IPMC添加到合并候选者列表的开始(例如,在第0位置)。
a.视频解码器30可修剪运动向量候选者列表,其中IPMC以及第一和第二合并候选者已经在列表中。如果第一和第二合并候选者中的一者等于IPMC,那么视频解码器30可将其标记为不可用。
i.如果第一和第二HEVC合并候选者两者等于IPMC,那么视频解码器30可仅将第一HEVC合并候选者标记为不可用。
ii.替代地,如果第一和第二HEVC合并候选者两者等于IPMC,那么视频解码器30可将这两者标记为不可用。
b.视频解码器30可使列表中的HEVC合并候选者移位以使得IPMC被放在第一位置,即,所有HEVC合并候选者被向后移位一个位置。
3.如果BVSP针对当前切片经启用,那么视频解码器30可将BVSP合并候选者插入到合并候选者列表中处于列表的第三位置(索引从0开始)。视频解码器30可转换视差向量以产生BVSP候选者。首先,使用视差向量识别参考深度视图中的当前PU的对应深度块。随后,对于深度块内的每一子块(4x8或8x4块),将四个拐角像素的最大值转换成视差运动向量且用于当前PU中的对应子块。
a.在列表中跟随BVSP合并候选者的其它候选者的移位适用,使得BVSP被放在第三位置,即,在第三位置之后的HEVC合并候选者(包含处于第三位置的HEVC合并候选者)被向后移位一个位置。
4.视频解码器30可将视差向量转换为视差运动向量且将视差运动向量添加到合并候选者列表处于列表的第四位置(索引从0开始)。这称为DV候选者。转换的视差向量可例如为如上文所描述使用NBDV或Do-NBDV确定的视差向量。
a.以列表中的第一和第二HEVC合并候选者(在第1和第2位置)修剪DV候选者。如果其中的一者可用且等于DV候选者,那么将DV候选者标记为不可用。
b.列表中的HEVC合并候选者的移位适用,使得DV候选者被放在第四位置,即,在第四位置之后的HEVC合并候选者(包含处于第四位置的HEVC合并候选者)被向后移位一个位置。
5.如果额外候选者是右下方IPMC,那么在步骤1中将其与IPMC进行比较。如果其不等于在步骤1中的IPMC或如果额外候选者是DSMV(当额外IPMC不可用时),将产生的额外候选者插入在列表的第六位置(索引从0开始)。
a.替代地,将额外候选者插入在列表的第五位置。
b.列表中的HEVC合并候选者的移位适用,使得额外候选者被放在给定位置(第五或第六位置),即,在给定位置之后的HEVC合并候选者(包含处于给定位置的HEVC合并候选者)被向后移位一个位置。
6.移除合并候选者列表中被标记为不可用的候选者,并且然后截断列表以使其仅包含maxMrgNum候选者。
下文提供对此实例的工作草案实施方案的实例,其中BVSP候选者插入在第三位置,DV候选者插入在第四位置,且额外候选者插入在第六位置。删除的部分以标记,且新添加的部分以标记。
I.8.5.3.2.1用于合并模式的明度运动向量的导出过程
此过程仅在MergeFlag[xPb][yPb]等于1时调用,其中(xPb,yPb)相对于当前图片的左上方明度样本规定当前明度预测块的左上方样本。
对此过程的输入是:
-相对于当前图片的左上方明度样本的当前明度译码块的左上方样本的明度位置(xCb,yCb),
-相对于当前图片的左上方明度样本的当前明度预测块的左上方样本的明度位置(xPb,yPb),
-指定当前明度译码块的大小的变量nCbS,
-指定明度预测块的宽度及高度的两个变量nPbW及nPbH,
-指定在当前译码单元内的当前预测单元的索引的变量partIdx。
此过程的输出是:
-明度运动向量mvL0及mvL1,
-参考索引refIdxL0及refIdxL1,
-预测列表利用旗标predFlagL0和predFlagL1,
-指定当前PU是否是使用视图间运动预测经译码的旗标ivpMvFlag,
-指定当前PU是否是使用视图合成预测译码的旗标vspModeFlag,
-指定当前PU的运动数据是否具有子预测块大小运动准确性的旗标subPbMotionFlag,
-指定当前PU是否使用视差导出深度的旗标dispDerivedDepthFlag,
-变量dispDerivedDepthVal(当dispDerivedDepthFlag等于1时)。
如下指定函数differentMotion(N,M):
-如果以下条件中的一者为真,那么differentMotion(N,M)等于1:
-predFlagLXN!=predFlagLXM(其中X被0和1代替),
-mvLXN!=mvLXM(其中X被0和1代替),
-refIdxLXN!=refIdxLXM(其中X被0和1代替),
-否则,differentMotion(N,M)等于0。
通过以下顺序的步骤导出运动向量mvL0及mvL1、参考索引refIdxL0及refIdxL1以及预测利用旗标predFlagL0及predFlagL1:
1.如子条款I.8.5.3.2.18中指定调用基础合并候选者列表的导出过程,其中明度位置(xCb,yCb)、明度位置(xPb,yPb)、变量nCbS、nPbW、nPbH和分区索引partIdx作为输入,且输出是经修改明度位置(xPb,yPb)、经修改变量nPbW和nPbH、经修改变量partIdx、明度位置(xOrigP,yOrigP)、变量nOrigPbW和nOrigPbH、合并候选者列表baseMergeCandList、明度运动向量mvL0N和mvL1N、参考索引refIdxL0N和refIdxL1N,以及预测列表利用旗标predFlagL0N和predFlagL1N,其中N被baseMergeCandList的所有元素代替。
2.对于N被以下适用:
-如果N是baseMergeCandList中的元素,那么将availableFlagbN设定为等于1。
-否则(N不是baseMergeCandList中的元素),将availableFlagbN设定为
等于0。
3.取决于iv_mv_pred_flag[nuh_layer_id]和DispAvailabilityIdc[xPb][yPb],以下适用:
-如果iv_mv_pred_flag[nuh_layer_id]等于0或者DispAvailabilityIdc[xPb][yPb]不等于DISP_NONE,那么将旗标availableFlagIvMC、availableIvMCShift和availableFlagIvDC设定为等于0。
-否则(iv_mv_pred_flag[nuh_layer_id]等于1),调用如子条款I.8.5.3.2.10中指定的用于视图间合并候选者的导出过程,其中明度位置(xPb,yPb)、变量nPbW和nPbH作为输入,且输出指派给可用性旗标availableFlagIvMC、availableIvMCShift和availableFlagIvDC、参考索引refIdxLXIvMC、refIdxLXIvMCShift和refIdxLXIvDC、预测列表利用旗标predFlagLXIvMC、predFlagLXIvMCShift和predFlagLXIvDC,以及运动向量mvLXIvMC、mvLXIvMCShift和mvLXIvDC(其中X分别为0或1)。
4.取决于view_synthesis_pred_flag[nuh_layer_id]、DispAvailabilityIdc[xPb][yPb]和dbbp_flag[xPb][yPb],以下适用:
-如果view_synthesis_pred_flag[nuh_layer_id]等于0,DispAvailabilityIdc[xPb][yPb]等于DISP_NONE,或dbbp_flag[xPb][yPb]等于1,那么将旗标availableFlagVSP设定为等于0。
-否则(view_synthesis_pred_flag[nuh_layer_id]等于1,DispAvailabilityIdc[xPb][yPb]不等于DISP_NONE,且dbbp_flag[xPb][yPb]等于0),调用如子条款I.8.5.3.2.13中指定的用于视图合成预测合并候选者的导出过程,其中明度位置(xPb,yPb)和变量nPbW和nPbH作为输入,且输出是可用性旗标availableFlagVSP、参考索引refIdxL0VSP和refIdxL1VSP、预测列表利用旗标predFlagL0VSP和predFlagL1VSP,以及运动向量mvL0VSP和mvL1VSP。
5.取决于mpi_flag[nuh_layer_id],以下适用:
-如果mpi_flag[nuh_layer_id]等于0,那么将变量availableFlagT和availableFlagD设定为等于0。
-否则(mpi_flag[nuh_layer_id]等于1),以下适用:
-调用如子条款I.8.5.3.2.16中指定的用于层间预测子预测块运动向量候选者的导出过程,其中明度位置(xPb,yPb)、变量nPbW和nPbH、等于-1的变量refViewIdx以及等于(0,0)的变量mvDisp作为输入,且输出是预测采用旗标predFlagLXT、运动向量mvLXT和参考索引refIdxLXT(其中X分别为0或1)。
-将旗标availableFlagT设定为等于(predFlagL0T||predFlagL1T)。
-调用如子条款I.8.5.3.2.19中指定的用于视差导出合并候选者的导出过程,其中明度位置(xPb,yPb)、变量nPbW和nPbH作为输入,且输出是旗标availableFlagD、预测利用旗标predFlagLXD、参考索引refIdxLXD、运动向量mvLXD(其中X分别为0或1)和变量dispDerivedDepthVal。
6.将变量availableFlagIvDCShift设定为等于0,且当availableFlagIvMCShift等于0,DepthFlag等于0,且i小于(5+NumExtraMergeCand)时,调用如子条款I.8.5.3.2.15中指定的用于移位视差合并候选者的导出过程,其中每个候选者的明度位置(xPb,yPb)、变量nPbW和nPbH、以及可用性旗标availableFlagN、参考索引refIdxL0N和refIdxL1N、预测列表利用旗标predFlagL0N和predFlagL1N、运动向量mvL0N和mvL1N、在中的N、以及i作为输入,且输出是旗标availableFlagIvDCShift、预测利用旗标predFlagL0IvDCShift和predFlagL1IvDCShift、参考索引refIdxL0IvDCShift和refIdxL1IvDCShift,以及运动向量mvL0IvDCShift和mvL1IvDCShift。
7.合并候选者列表extMergeCandList如下构造:
10.如以下指定导出变量N:
-如果(nOrigPbW+nOrigPbH)等于12,那么以下适用:
N=baseMergeCandList[MergeIdx[xOrigP][yOrigP]](I-105)
-否则,((nOrigPbW+nOrigPbH)不等于12),那么以下适用:
N=extMergeCandList[MergeIdx[xOrigP][yOrigP]](I-106)
12.如下文中指定导出变量vspModeFlag:
vspModeFlag=&&!ic_flag&&
(iv_res_pred_weight_idx==0)&&availableFlagVSP(I-107)
13.如下文中指定导出变量subPbMotionFlag:
subPbMotionFlag=(((N==IvMC)&&(PartMode==PART_2Nx2N))
||vspModeFlag)&&!dbbp_flag (I-108)
14.做出以下指派,其中X被0或1代替:
mvLX=subPbMotionFlag?0:mvLXN (I-109)
refIdxLX=subPbMotionFlag?-1:refIdxLXN (I-110)
predFlagLX=subPbMotionFlag?0:predFlagLXN (I-111)
15.当predFlagL0等于1且predFlagL1等于1,且(nOrigPbW+nOrigPbH)等于
12时,以下适用:
refIdxL1=-1 (I-112)
predFlagL1=0 (I-113)
16.如下导出视差可用性旗标ivpMvFlag:
ivpMvFlag=!DepthFlag&&((N==IvMC)||(N==IvMCShift))
(I-114)
17.如下导出变量dispDerivedDepthFlag:
dispDerivedDepthFlag=(N==D) (I-115)
I.8.5.3.2.15用于经移位视差合并候选者的导出过程
当DepthFlag等于1时不调用此过程。
对此过程的输入是:
-相对于当前图片的左上方明度样本的当前明度预测块的左上方样本的明度位置(xPb,yPb),
-指定当前明度预测块的宽度及高度的两个变量nPbW及nPbH,
-可用性旗标availableFlagN,
-参考索引refIdxL0N和refIdxL1N,
-预测列表利用旗标predFlagL0N和predFlagL1N,
-运动向量mvL0N和mvL1N,
-合并候选者列表mergeCandList,
-指定列表mergeCandList中的合并候选者数目的变量numMergeCand。
此过程的输出是:
-指定经移位视差合并候选者是否可用的旗标availableFlagIvDCShift,
-预测利用旗标predFlagL0IvDCShift和predFlagL1IvDCShift,
-参考索引refIdxL0IvDCShift和refIdxL1IvDCShift,
-运动向量mvL0IvDCShift和mvL1IvDCShift。
变量availableFlagIvDCShift设定成等于0,且对于在0到 (包含性)范围中的i,以下适用:
-变量N设定成等于mergeCandList[i]。
-当availableFlagIvDCShift等于0 predFlagL0N等于1且ViewIdx(RefPicList0[refIdxL0N])不等于ViewIdx时,以下适用:
-availableFlagIvDCShift设定成等于1
-predFlagLXIvDCShift设定成等于predFlagLXN,(其中X被0和1代替)
-refIdxLXIvDCShift设定成等于refIdxLXN,(其中X被0和1代替)
-mvL0IvDCShift[0]设定成等于mvL0N[0]+4
-mvL0IvDCShift[1]设定成等于(view_synthesis_pred_flag[nuh_layer_id]?0:mvL0N[1])
-mvL1IvDCShift=mvL1N
当availableFlagIvDCShift等于0且availableFlagIvDC等于1时,availableFlagIvDCShift设定成1且对于0到1(包含性)的X,以下适用:
-predFlagLXIvDCShift设定成等于predFlagLXIvDC,
-refIdxLXIvDCShift设定成等于refIdxLXIvDC,
-mvLXIvDCShift[0]设定成等于mvL0IvDC[0]+4
-mvLXIvDCShift[1]设定成等于mvL0IvDC[1]
I.8.5.3.2.18用于基础合并候选者列表的导出过程
子条款8.5.3.2.1中的规范适用,具有以下修改:
-移除步骤9和10。
-“当slice_type等于B时,用于组合双向预测合并候选者的导出过程”被“当slice_type等于B且numMergeCand小于5时,用于组合双向预测合并候选者的导出过程”代替
-“调用子条款8.5.3.2.7中的时间明度运动向量预测”被“调用子条款I.8.5.3.2.7中的时间明度运动向量预测”代替
-过程的输出被以下各项代替:
-相对于当前图片的左上方明度样本的当前明度预测块的左上方样本的经修改明度位置(xPb,yPb),
-指定明度预测块的经修改宽度及高度的两个变量nPbW及nPbH,
-指定当前译码单元内的当前预测单元的经修改索引的经修改变量partIdx。
-相对于当前图片的左上方明度样本的当前明度预测块的左上方样本的原始明度位置(xOrigP,yOrigP),
-指定明度预测块的原始宽度和高度的两个变量nOrigPbW和nOrigPbH,
-合并候选者列表mergeCandList,
-明度运动向量mvL0N和mvL1N,其中N被mergeCandList的所有条目代替
-参考索引refIdxL0N和refIdxL1N,其中N被mergeCandList的所有条目代替
预测列表利用旗标predFlagL0N和predFlagL1N,其中N被mergeCandList的所有元素代替
现将描述视频解码器30可如何产生第二实例的运动向量候选者列表的描述。此第二实例类似于上述第一实例。主要差异是在此实例中,视频解码器30将BVSP合并候选者插入到运动向量候选者列表中处于DV候选者之后。
1.视频解码器30调用HEVC合并列表产生过程:
a.将空间合并候选者(SMC)A1、B1和B0添加到合并候选者列表。
b.将空间合并候选者(SMC)A0和B2添加到合并候选者列表。
c.如当前设计将时间合并候选者添加到合并候选者列表。(应注意TMVP候选者在3D-HEVC中已改变)。
2.视频解码器30导出视差向量且基于视差向量识别当前PU的对应块。IPMC
如果导出为可用的则被添加到合并候选者列表的开始。
a.以已经在列表中的第一和第二合并候选者修剪IPMC。如果它们两者可用且一个等于IPMV,那么将其从列表移除。
b.现有候选者的移位适用,使得IPMC和其它剩余HEVC合并候选者被连续定位。
3.视频解码器30将视差向量转换为视差运动向量将视差运动向量添加到合并候选者列表处于列表的第三位置(索引从0开始,除非可用索引小于三,随后是第一可用的位置)。这称为DV候选者。可例如使用上述NBDV或Do-NBDV技术确定视差向量。
a.假定当前DV候选者在位置T中,其中T等于剩余HEVC候选者的数目的最小值加1或3(可为1、2或3)。以列表(CanList)中具有等于1到T-1的索引的合并候选者修剪DV候选者。
b.现有候选者的移位适用,使得IPMC、在DV候选者之前的HEVC合并候选者以及其它剩余合并候选者被连续定位。
4.如果BVSP针对当前切片经启用,那么视频解码器30将BVSP合并候选者插入到合并候选者列表中处于第一可用的位置中。
5.如果额外候选者是右下方IPMC被导出为可用的,那么视频解码器30将其与在步骤1中导出的IPMC进行比较。如果额外候选者不等于在步骤1中的IPMC或如果额外候选者是DSMV(当额外IPMC不可用时),那么视频解码30将额外候选者插入在合并列表的末尾(第一可用的位置中)。
6.如果有效的候选者的数目小于最大数目,那么视频解码器30可将其它运动向量合并候选者添加到合并候选者列表。
现将描述第三实例的整个合并列表产生过程的描述。在此实例中,当调用HEVC合并列表产生过程时,可产生部分HEVC合并列表,其包含从空间和时间相邻块产生的候选者。随后,产生3D-HEVC合并候选者且插入到列表。最后,如果合并候选者数目仍小于最大数目,那么产生额外虚拟候选者。在此实例中,当调用HEVC合并列表产生过程时产生全HEVC合并列表(具有最大数目的合并候选者)。随后产生额外3D-HEVC合并候选者且插入到列表。如果列表大小大于最大数目,那么将其截断。
将maxMrgNum表示为3D-HEVC中的最大合并候选者数目。HEVC合并候选者指代在HEVC合并列表产生过程中导出的合并候选者。
1.视频解码器30调用HEVC合并列表产生过程以产生maxMrgNum合并候
选者:
a.将空间合并候选者(SMC)A1、B1和B0添加到合并候选者列表。
b.将空间合并候选者(SMC)A0和B2添加到合并候选者列表。
c.如当前设计将时间合并候选者添加到合并候选者列表。(应注意TMVP候选者在3D-HEVC中已改变)。
d.如3D-HEVC中的当前设计将虚拟候选者添加到合并候选者列表。
2.视频解码器30导出视差向量且基于视差向量识别当前PU的对应块。视频解码器30将IPMC(如果导出为可用的)添加到合并候选者列表的开始。
a.以已经在列表中的第一和第二合并候选者修剪IPMC,如果其中的一者等于IPMC,那么将其标记为不可用。
i.如果第一和第二HEVC合并候选者两者等于IPMC,那么仅将第一HEVC合并候选者标记为不可用。
ii.替代地,如果第一和第二HEVC合并候选者两者等于IPMC,那么将这两者标记为不可用。
b.列表中的HEVC合并候选者的移位适用,使得IPMC被放在第一位置,即,所有HEVC合并候选者被向后移位一个位置。
3.视频解码器30可将视差向量转换为视差运动向量且将视差运动向量添加到合并候选者列表处于列表的第三位置(索引从0开始)。这称为DV候选者。转换的视差向量可例如为如上文所描述使用NBDV或Do-NBDV确定的视差向量。
a.替代地,将DV候选者添加到运动向量候选者列表处于列表的第二位置。
b.替代地,将DV候选者添加到运动向量候选者列表处于列表的第四位置。
c.当DV候选者添加在第三或第四位置时,以列表中的第一和第二HEVC合并候选者对其进行修剪。如果其中的一者可用且等于DV候选者,那么将DV候选者标记为不可用。
d.替代地,当DV候选者添加在第二位置时,以列表中的第一和第二HEVC合并候选者对其进行修剪。如果第一HEVC合并候选者可用且等于DV候选者,那么将DV候选者标记为不可用;否则,如果第二HEVC合并候选者可用且等于DV候选者,那么将第二HEVC候选者标记为不可用。
f.列表中的HEVC合并候选者的移位适用,使得DV候选者被放在给定位置(第二、第三或第四位置),即,在给定位置之后的HEVC合并候选者(包含处于给定位置的HEVC合并候选者)被向后移位一个位置。
4.如果视频解码器30将DV候选者插入在列表的第二位置,那么如果BVSP针对当前切片经启用,则视频解码器30可将BVSP合并候选者插入到运动向量候选者列表中处于列表的第三位置(索引从0开始)。
a.替代地,当DV候选者插入在列表的第二位置时,BVSP合并候选者插入在列表的第四位置。
b.替代地,当DV候选者插入在列表的第三位置时,BVSP合并候选者插入在列表的第四位置。
c.替代地,BVSP合并候选者插入在列表的第五位置。
d.列表中的HEVC合并候选者的移位适用,使得BVSP被放在给定位置(第三、第四或第五位置),即,在给定位置之后的HEVC合并候选者(包含处于给定位置的HEVC合并候选者)被向后移位一个位置。
5.如果额外候选者是右下方IPMC被导出为可用的,那么将其与在步骤1中的IPMC进行比较。如果其不等于在步骤1中的IPMC或如果额外候选者是DSMV(当额外IPMC不可用时),将产生的额外候选者插入在列表的第六位置(索引从0开始)。
a.替代地,将额外候选者插入在列表的第七位置。
b.列表中的HEVC合并候选者的移位适用,使得额外候选者被放在给定位置(第六或第七位置),即,在给定位置之后的HEVC合并候选者(包含处于给定位置的HEVC合并候选者)被向后移位一个位置。
6.视频解码器30可从候选者列表移除被标记为不可用的候选者,并且然后截断列表以使得其仅包含maxMrgNum候选者。
图8是说明可实施本发明中描述的运动向量候选者列表产生技术的视频编码器的实例的框图。举例来说,图8说明可表示3D-AVC顺应或3D-HEVC顺应视频编码器的视频编码器20。将使用例如PU、TU和CU等某些HEVC术语描述视频编码器20,但应理解,参考视频编码器20描述的技术也可以针对根据H.264标准译码的视频而执行。
视频编码器20可执行视频切片内的视频块的帧内和帧间译码。举例来说,视频编码器20可执行帧间预测编码或帧内预测编码。帧内译码依靠空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测或视图间预测来减少或移除视频序列的邻近帧或图片内的时间冗余或不同视图中的图片之间的冗余。帧内模式(I模式)可指若干基于空间压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)的帧间模式可指代若干基于时间的压缩模式中的任一者。
在图8的实例中,视频编码器20包含视频数据存储器40、预测处理单元42、参考图片存储器64、求和器50、变换处理单元52、量化处理单元54和熵编码单元56。预测处理单元42包含运动和视差估计单元44、运动和视差补偿单元46以及帧内预测单元48。为了视频块重构,视频编码器20还包含逆量化处理单元58、逆变换处理单元60以及求和器62。还可包含解块滤波器(图8中未图示)以便对块边界进行滤波,以从经重构视频移除成块效应假象。在需要时,解块滤波器将通常对求和器62的输出进行滤波。除了解块滤波器外,还可使用额外环路滤波器(环路中或环路后)。
视频数据存储器40可存储待由视频编码器20的组件编码的视频数据。可例如从视频源18获得存储在视频数据存储器40中的视频数据。参考图片存储器64是解码图片缓冲器(存储参考视频数据以供视频编码器20在(例如,以帧内或帧间译码模式,也称为帧内或帧间预测译码模式)编码视频数据时使用的DPB)的一个实例。视频数据存储器40和参考图片存储器64可由多种存储器装置中的任一者形成,例如包含同步DRAM(SDRAM)的动态随机存取存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器40和参考图片存储器64可由同一存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器40可与视频编码器20的其它组件一起在芯片上,或相对于那些组件在芯片外。
视频编码器20接收视频数据,且分割单元(未图示)将所述数据分割为视频块。此分割还可包含分割为切片、瓦片或其它较大单元,以及视频块分割(例如,宏块分区和分区的子块)。视频编码器20一般说明编码待编码的视频切片内的视频块的组件。所述切片可以分成多个视频块(并且可能分成被称作单元片的视频块集合)。预测处理单元42可基于错误结果(例如,译码速率和失真层级)为当前视频块选择多个可能的译码模式中的一者,例如多个帧内译码模式(帧内预测译码模式)中的一者或多个帧间译码模式(帧间预测译码模式)中的一者。预测处理单元42可将所得经帧内或帧间译码块提供到求和器50以产生残余块数据,并提供到求和器62以重构经编码块以用作参考图片。
预测处理单元42内的帧内预测单元48可相对于与待译码当前块在相同的帧或切片中的一或多个相邻块执行当前视频块的帧内预测性译码,以提供空间压缩。预测处理单元42内的运动和视差估计单元44以及运动和视差补偿单元46相对于一或多个参考图片中的一或多个预测性块执行对当前视频块的帧间预测译码以提供时间压缩。
运动和视差估计单元44可经配置以根据用于视频序列的预定模式为视频切片确定帧间预测模式。预定模式可将序列中的视频切片指明为P切片或B切片。运动和视差估计单元44及运动和视差补偿单元46可高度集成,但出于概念目的单独地说明。由运动和视差估计单元44所执行的运动估计是产生估计视频块的运动的运动向量的过程。举例来说,运动向量可指示当前视频帧或图片内的视频块相对于参考图片内的预测性块的位移。
预测性块是被发现在像素差方面与待译码视频块密切匹配的块,像素差可通过绝对差总和(SAD)、平方差总和(SSD)或其它差异度量来确定。在一些实例中,视频编码器20可计算存储于参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动和视差估计单元44可执行相对于全像素位置及分数像素位置的运动搜索,且输出具有分数像素精度的运动向量。
运动和视差估计单元44通过将视频块的位置与参考图片的预测性块的位置进行比较来计算经帧间译码(经帧间预测译码)切片中的视频块的运动向量。参考图片可以选自第一参考图片列表(RefPicList0)或第二参考图片列表(RefPicList1),所述参考图片列表中的每一者识别存储在参考图片存储器64中的一或多个参考图片。运动和视差估计单元44将计算的运动向量发送到熵编码单元56以及运动和视差补偿单元46。
通过运动和视差补偿单元46执行的运动补偿可以涉及基于通过运动估计(可能执行对子像素精度的内插)确定的运动向量提取或产生预测性块。在接收到当前视频块的PU的运动向量后,运动和视差补偿单元46即刻可以在参考图片列表中的一者中定位所述运动向量指向的预测性块。视频编码器20通过从正被译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于所述块的残余数据,且可包含明度及色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动和视差补偿单元46还可产生与视频块及视频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块时使用。
运动和视差补偿单元46可经配置以执行本发明中描述的运动向量候选者列表构造技术。作为一个实例,运动和视差补偿单元46可将一或多个运动向量候选者添加到运动向量候选者列表;从运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;以及将DSMV候选者添加到运动向量候选者列表。
作为另一实例,运动和视差补偿单元46可分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于当前块的视差向量确定一或多个额外候选者以用于包含在所述运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括与运动向量候选者列表中的候选者的最大数目相比更多的候选者;以及从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者。
作为另一实例,运动和视差补偿单元46可将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将额外候选者与来自运动向量候选者列表中的固定位置的候选者进行比较。
作为由运动和视差估计单元44及运动和视差补偿单元46执行的帧间预测(如上文所描述)的替代方案,帧内预测单元48可帧内预测当前块。确切地说,帧内预测单元48可以确定用来编码当前块的帧内预测模式。在一些实例中,帧内预测单元48可以例如在单独的编码编次期间使用各种帧内预测模式编码当前块,且帧内预测单元48(或在一些实例中为模式选择单元)可从经测试模式中选择将使用的适当帧内预测模式。举例来说,帧内预测单元48可使用速率-失真分析计算针对各种测试的帧内预测模式的速率-失真值,且从所述测试的模式当中选择具有最好速率失真特性的帧内预测模式。速率失真分析一般确定经编码块与经编码以产生所述经编码块的原始的未经编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(也就是说,位数目)。帧内预测单元48可根据用于各种经编码块的失真及速率计算比率,以确定哪个帧内预测模式对于所述块展现最佳速率失真值。
在任何情况下,在选择了用于一个块的帧内预测模式之后,帧内预测单元48可以将指示用于所述块的选定帧内预测模式的信息提供到熵编码单元56。熵编码单元56可根据本发明的技术对指示所选帧内预测模式的信息进行编码。视频编码器20在所发射的位流中可包含配置数据,其可包含多个帧内预测模式索引表和多个经修改的帧内预测模式索引表(也称为码字映射表),对用于各种块的上下文进行编码的定义,以及对最可能帧内预测模式、帧内预测模式索引表和经修改的帧内预测模式索引表的指示以用于所述上下文中的每一者。
在预测处理单元42经由帧间预测或帧内预测产生当前视频块的预测块之后,视频编码器20通过从当前视频块减去预测块而形成残余视频块。残余块中的残余视频数据可应用于变换处理单元52。变换处理单元52使用例如离散余弦变换(DCT)的变换或概念上类似的变换将残余视频数据变换成残余变换系数。变换处理单元52可将残余视频数据从像素域转换到变换域,例如频域。
变换处理单元52可将所得变换系数发送到量化处理单元54。量化处理单元54可量化所述变换系数以进一步减小位速率。量化过程可以减少与系数中的一些或全部相关联的位深度。可通过调节量化参数来修改量化的程度。在一些实例中,量化处理单元54可接着执行对包含经量化变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、概率区间分割熵(PIPE)译码或另一熵译码方法或技术。在由熵编码单元56熵编码之后,经编码位流可发射到视频解码器30,或经存档以供稍后发射或由视频解码器30检索。熵编码单元56还可对正译码的当前视频切片的运动向量和其它语法元素进行熵编码。
逆量化处理单元58和逆变换处理单元60分别应用逆量化和逆变换以在像素域中重构残余块,以供稍后用作参考图片的参考块。运动和视差补偿单元46可通过将残余块加到参考图片列表中的一者内的参考图片中的一者的预测性块来计算参考块。运动和视差补偿单元46还可将一或多个内插滤波器应用于经重构残余块以计算用于运动估计的子整数像素值。求和器62将经重构的残余块加到由运动和视差补偿单元46产生的经运动补偿的预测块以产生参考块以用于存储在参考图片存储器64中。运动和视差估计单元44与运动和视差补偿单元46可使用所述参考块作为用以帧间预测后续视频帧或图片中的块的参考块。
以此方式,视频编码器20是可经配置以实施本发明中描述的一或多个实例技术的视频编码器的实例。举例来说,视频数据存储器40存储视频数据。视频数据可包含相依视图的纹理视频分量和对应于纹理视图分量的深度视图分量,视频编码器20将在3D-AVC顺应或3D-HEVC顺应视频译码过程中对其中的每一者进行编码。
在本发明中描述的技术中,视频编码器20可包含经配置以在3D-AVC顺应或3D-HEVC顺应视频译码过程中对视频数据的相依视图的纹理视图分量进行编码的一或多个处理器。如上文所描述,3D-AVC中的每一视图包含纹理视图分量和深度视图分量。3D-AVC中存在一个基础视图以及一或多个增强或相依视图,其中一或多个增强或相依视图的纹理视图分量可进行视图间预测。
为了编码纹理视图分量,视频编码器20可经配置以评估纹理视图分量中的当前块的一或多个相邻块的运动信息,以确定是否以参考除相依视图以外的视图中的视图间参考图片的视差运动向量对至少一个相邻块进行视图间预测。视频编码器20可基于相邻块中的一者的视差运动向量导出当前块的视差向量。对于纹理优先译码,视频编码器20可在编码纹理视图分量之后编码对应于纹理视图分量的视频数据的深度视图分量。
在一些实例中,视频编码器20的预测处理单元42可为经配置以实施本发明中所描述的实例的处理器的一个实例。在一些实例中,除预测处理单元42以外的单元(例如,一或多个处理器)可实施上文所描述的实例。在一些实例中,预测处理单元42与视频编码器20的一或多个其它单元结合可实施上述实例。在一些实例中,视频编码器20的处理器(图8中未图示)可单独或与视频编码器20的其它处理器结合实施上述实例。
图9是说明可实施本发明中描述的运动向量候选者列表产生技术的视频解码器的实例的框图。图9是说明可实施本发明中描述的技术的视频解码器的实例的框图。举例来说,图9说明可表示3D-AVC顺应或3D-HEVC顺应视频解码器的视频解码器30。将使用例如PU、TU和CU等某些HEVC术语描述视频解码器30,但应理解,参考视频解码器30描述的技术也可以针对根据H.264标准译码的视频而执行。
视频解码器30可执行帧间预测解码或帧内预测解码。图9说明视频解码器30。在图9的实例中,视频解码器30包含视频数据存储器69、熵解码单元70、预测处理单元71、逆量化处理单元76、逆变换处理单元78、求和器80和参考图片存储器82。预测处理单元71包含运动和视差补偿单元72和帧内预测单元74。在一些实例中,视频解码器30可执行一般与关于图8的视频编码器20描述的编码遍次互逆的解码遍次。
视频数据存储器69可存储待由视频解码器30的组件解码的视频数据,例如经编码视频位流。存储在视频数据存储器69中的视频数据可(例如)从存储装置34、从例如相机等本地视频源、经由视频数据的有线或无线网络通信或者通过存取物理数据存储媒体而获得。视频数据存储器69可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。
参考图片存储器82是存储参考视频数据供视频解码器30解码视频数据(例如,在帧内或帧间译码模式中)的经解码图片缓冲器(DPB)的一个实例。视频数据存储器69及参考图片存储器82可由多种存储器装置中的任一者形成,例如包含同步DRAM(SDRAM)的动态随机存取存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器69和参考图片存储器82可由同一存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器69可与视频解码器30的其它组件一起在芯片上,或相对于那些组件在芯片外。
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。视频解码器30的熵解码单元70对位流进行熵解码以产生经量化系数、运动向量和其它语法元素。熵解码单元70将运动向量及其它语法元素转发到预测处理单元71。视频解码器30可在视频切片层级和/或视频块层级接收语法元素。
当视频切片经译码为经帧内译码(I)切片时,预测处理单元71的帧内预测单元74可以基于用信号表示的帧内预测模式和来自当前帧或图片的先前经解码块的数据产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,B或P)切片时,预测处理单元71的运动和视差补偿单元72基于从熵解码单元70接收的运动向量和其它语法元素产生用于当前视频切片的视频块的预测性块。预测块可从参考图片列表中的一者内的参考图片中的一者产生。视频解码器30可基于存储在参考图片存储器82中的参考图片使用默认构造技术构造参考图片列表(RefPicList0和RefPicList1)。
运动及视差补偿单元72通过剖析运动向量和其它语法元素而确定当前视频切片的视频块的预测信息,且使用所述预测信息来产生正被解码的当前视频块的预测性块。举例来说,运动和视差补偿单元72使用所接收语法元素中的一些语法元素确定用于译码视频切片的视频块的预测模式(例如,帧内预测或帧间预测)、帧间预测切片类型(例如,B切片或P切片)、切片的参考图片列表中的一或多者的构造信息、切片的每一经帧间编码的视频块的运动向量、切片的每一经帧间译码的视频块的帧间预测状态,及用以解码当前视频切片中的视频块的其它信息。
运动和视差补偿单元72可经配置以执行本发明中描述的运动向量候选者列表构造技术。作为一个实例,运动和视差补偿单元72可将一或多个运动向量候选者添加到运动向量候选者列表;从运动向量候选者列表中的所述一或多个运动向量候选者识别视差运动向量候选者;基于视差运动向量候选者确定视差经移位运动向量(DSMV)候选者;以及将DSMV候选者添加到运动向量候选者列表。
作为另一实例,运动和视差补偿单元72可分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于当前块的视差向量确定一或多个额外候选者以用于包含在所述运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括与运动向量候选者列表中的候选者的最大数目相比更多的候选者;以及从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者。
作为另一实例,运动和视差补偿单元72可将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将额外候选者与来自运动向量候选者列表中的固定位置的候选者进行比较。
运动和视差补偿单元72还可执行基于内插滤波器的内插。运动和视差补偿单元72可在编码视频块期间使用如由视频编码器20使用的内插滤波器来计算用于参考块的子整数像素的内插值。在此情况下,运动和视差补偿单元72可从所接收的语法元素确定由视频编码器20使用的内插滤波器且使用所述内插滤波器产生预测性块。
逆量化处理单元76逆量化(即,解量化)提供于位流中且由熵解码单元70解码的经量化变换系数。逆量化过程可包含使用由视频编码器20针对视频切片中的每一视频块所计算的量化参数以确定应应用的量化程度且同样确定应应用的逆量化程度。逆变换处理单元78对变换系数应用逆变换(例如,逆DCT、逆整数变换,或概念上类似的逆变换过程),以便产生像素域中的残余块。
在运动和视差补偿单元72基于运动向量及其它语法元素产生当前视频块的预测性块之后,视频解码器30通过将来自逆变换处理单元78的残余块与由运动和视差补偿单元72产生的对应预测性块求和而形成经解码视频块。求和器80表示执行此求和运算的一或多个组件。必要时,解块滤波器还可应用于对经解码块进行滤波以便移除成块假象。还可使用其它环路滤波器(在译码环路中或在译码环路之后)来使像素转变变平滑或者以其它方式改善视频质量。给定图片中的经解码视频块接着存储于参考图片存储器82中,所述参考图片存储器存储用于后续运动补偿的参考图片。参考图片存储器82还存储经解码视频以用于稍后呈现在显示装置(例如,图1的显示装置32)上。
以此方式,视频解码器30是可经配置以实施本发明中描述的一或多个实例技术的视频解码器的实例。举例来说,视频数据存储器69存储视频数据。视频数据可包含视频解码器30可从其解码相依视图的纹理视频分量和对应于纹理视图分量的深度视图分量的信息,视频编码器20在3D-AVC顺应或3D-HEVC顺应视频译码过程中对其中的每一者进行编码。
在本发明中描述的技术中,视频解码器30可包含经配置以在3D-AVC顺应或3D-HEVC顺应视频译码过程中解码视频数据的相依视图的纹理视图分量的一或多个处理器。为了对纹理视图分量进行解码,视频解码器30可经配置以评估纹理视图分量中的当前块的一或多个相邻块的运动信息以确定至少一个相邻块是否是以参考除相依视图外的视图中的视图间参考图片的视差运动向量进行视图间预测。视频解码器30可基于相邻块中的一者的视差运动向量导出当前块的视差向量。对于纹理优先译码,视频解码器30可在解码纹理视图分量之后解码对应于纹理视图分量的视频数据的深度视图分量。
在一些实例中,视频解码器30的预测处理单元71可为经配置以实施本发明中所描述的实例的处理器的一个实例。在一些实例中,除预测处理单元71以外的单元(例如,一或多个处理器)可实施上文所描述的实例。在一些实例中,预测处理单元71与视频解码器30的一或多个其它单元结合可实施上述实例。在又一些其它实例中,视频解码器30的处理器(图9中未图示)可单独或与视频解码器30的其它处理器结合实施上述实例。
图10是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于视频解码器描述图10的技术,所述视频解码器可例如对应于上述视频解码器30,但预期图10的技术也可以由其它类型的视频解码器实施。
视频解码器可将一或多个运动向量候选者添加到运动向量候选者列表(110)。运动向量候选者可例如为使用基础HEVC规范的合并模式导出的候选者,且可包含时间运动向量和视差运动向量中的一者或两者。视频解码器可从运动向量候选者列表中的一或多个运动向量候选者识别视差运动向量候选者(112)。因此,并非重新检查特定空间相邻块或时间相邻块的候选者以确定那些候选者是否包含视差运动向量,视频解码器可检查运动向量候选者列表中的一或多个特定条目以确定所述条目是否包含视差运动向量。举例来说,视频解码器可检查运动向量候选者列表中的第二条目以确定所述条目是否包含视差运动向量,无论所述第二条目可能与何种空间相邻者或时间相邻者相关联。在一些实施方案中,视频解码器可从运动向量候选者列表识别仅包含HEVC候选者(例如,不具有3D-HEVC候选者)的视差运动向量,或如果运动向量候选者列表确实包含3D-HEVC候选者,则可仅查看运动向量候选者列表中的HEVC候选者。
视频解码器可例如通过从运动向量候选者列表中的前N个候选者识别第一可用视差运动向量候选者而识别视差运动向量候选者,其中N是小于候选者的最大数目的整数。视频解码器可例如从运动向量候选者列表中的前N个候选者识别对应于参考图片列表的第一可用视差运动向量候选者,其中N是整数。在其它实例中,视频解码器可通过从运动向量候选者列表中的前N个候选者识别第一可用视差运动向量候选者,排除第一候选者(即忽略具有索引0的候选者)而识别视差运动向量候选者,其中N是小于候选者的最大数目的整数。在某一实例中,N可等于2,而在其它实例中N可为不同整数值。在一些实施方案中,前N个候选者可包含一或多个虚拟候选者,而在其它实施方案中,前N个候选者可不包含虚拟候选者。视频解码器可经配置以响应于IPMC候选者不可用而识别视差运动向量候选者。在以上实例中,前N个候选者也可以限于前N个HEVC候选者(例如,排除任何3D-HEVC候选者)。
基于视差运动向量候选者,视频解码器可确定DSMV候选者(114)。视频解码器可例如使用上述技术确定DSMV候选者。视频解码器可将DSMV候选者添加到运动向量候选者列表(116)。当将DSMV候选者添加到运动向量候选者列表时,视频解码器可为DMSV候选者指派比运动向量候选者列表中的虚拟候选者低的索引。对于视频数据块,视频解码器可接收从运动向量候选者列表识别候选者的索引值(118),且使用对应于经识别候选者的运动向量解码所述视频数据块(120)。
图11是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于通用视频编码器描述图11的技术,所述视频编码器可例如对应于上述视频编码器20,但预期图11的技术也可以由其它类型的视频编码器实施。
视频编码器可将一或多个运动向量候选者添加到运动向量候选者列表(122)。运动向量候选者可例如为使用基础HEVC规范的合并模式导出的候选者。视频编码器可从运动向量候选者列表中的一或多个运动向量候选者识别视差运动向量候选者(124)。视频编码器可例如通过从运动向量候选者列表中的前N个候选者识别第一可用视差运动向量候选者而识别视差运动向量候选者,其中N是小于候选者的最大数目的整数。视频编码器可例如从运动向量候选者列表中的前N个候选者识别对应于参考图片列表的第一可用视差运动向量候选者,其中N是整数。在某一实例中,N可等于2,而在其它实例中N可为不同整数值。在一些实施方案中,前N个候选者可包含一或多个虚拟候选者,而在其它实施方案中,前N个候选者可不包含虚拟候选者。视频编码器可经配置以响应于IPMC候选者不可用而识别视差运动向量候选者。
基于视差运动向量候选者,视频编码器可确定DSMV候选者(1126)。视频编码器可例如使用上述技术确定DSMV候选者。视频编码器可将DSMV候选者添加到运动向量候选者列表(1128)。当将DSMV候选者添加到运动向量候选者列表时,视频编码器可为DMSV候选者指派比运动向量候选者列表中的虚拟候选者低的索引。对于视频数据块,视频编码器确定用于编码所述视频数据块的运动向量(130)。运动向量对应于运动向量候选者列表中的候选者。视频编码器产生识别运动向量候选者列表中的候选者的语法元素(132)。
图12是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于视频解码器描述图12的技术,所述视频解码器可例如对应于上述视频解码器30,但预期图12的技术也可以由其它类型的视频解码器实施。
视频解码器可分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中(134)。第一运动向量候选者可包含时间运动向量和视差运动向量中的一者或两者。空间相邻块可例如对应于图4中所示的空间相邻者中的一些或全部。视频解码器可分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在临时运动向量候选者列表中(136)。第二运动向量候选者可包含时间运动向量和视差运动向量中的一者或两者。视频解码器可基于当前块的视差向量确定一或多个额外候选者以用于包含在临时运动向量候选者列表中(138)。视频解码器可例如使用如上文所描述的NBDV或Do-NBDV过程确定视差向量。所述一或多个额外候选者可例如包含BVSP候选者、视差经移位运动向量候选者、经视图间预测的运动候选者以及右下方经视图间预测的运动候选者的任何组合或排列。
所述一或多个第一运动向量候选者、一或多个第二运动向量候选者以及一或多个额外候选者可包含比运动向量候选者列表中的候选者的最大数目更多的候选者。所述最大数目可例如为五或六。视频解码器可从临时运动向量候选者列表移除具有大于或等于运动向量候选者列表的最大索引的索引的候选者(140)。因此,作为一个实例,如果临时运动向量候选者列表具有八个条目,且运动向量候选者列表中的候选者的最大数目是六个,那么视频解码器可从临时运动向量候选者列表移除具有索引6和7的条目(列表在索引0开始)以形成运动向量候选者列表。
对于视频数据块,视频解码器可接收从运动向量候选者列表识别候选者的索引值(142)。视频解码器使用对应于经识别候选者的运动向量对所述视频数据块进行解码(144)。
视频解码器还可产生一或多个虚拟候选者以用于包含在临时运动向量候选者列表中。在此实例中,所述一或多个第一运动向量候选者、一或多个第二运动向量候选者、一或多个虚拟候选者以及一或多个额外候选者中的候选者的数目可包含比运动向量候选者列表中的候选者的最大数目更多的候选者,在此情况下,视频解码器可从临时运动向量候选者列表移除候选者作为产生运动向量候选者列表的部分。
视频解码器还可替代地或另外标记第一运动向量候选者中的一或多个候选者和/或第二运动向量候选者中的一或多个候选者用于移除,并且随后移除标记的候选者。标记的候选者可在额外候选者添加到临时运动向量候选者列表之后移除。因此,并非在正构造列表的同时重新布置列表中的候选者,视频解码器可标记候选者用于移除但等待移除,以减少或避免此类重新布置。在移除标记为用于移除的候选者之后,视频解码器接着可视需要移除过量候选者以将列表减少到最大数目的候选者。
图13是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于通用视频编码器描述图13的技术,所述视频编码器可例如对应于上述视频编码器20,但预期图13的技术也可以由其它类型的视频编码器实施。
视频编码器可分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中(200)。空间相邻块可例如对应于图4中所示的空间相邻者中的一些或全部。视频编码器可分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在临时运动向量候选者列表中(202)。视频编码器可基于当前块的视差向量确定一或多个额外候选者以用于包含在临时运动向量候选者列表中(204)。所述一或多个额外候选者可例如包含BVSP候选者、视差经移位运动向量候选者、经视图间预测的运动候选者或右下方经视图间预测的运动向量候选者的任何组合或排列。对于视频数据块,视频编码器确定用于编码所述视频数据块的运动向量(208)。运动向量对应于运动向量候选者列表中的候选者。视频编码器产生识别运动向量候选者列表中的候选者的语法元素(210)。
所述一或多个第一运动向量候选者、一或多个第二运动向量候选者以及一或多个额外候选者可包含比运动向量候选者列表中的候选者的最大数目更多的候选者。所述最大数目可例如为五或六。视频编码器可从临时运动向量候选者列表移除具有大于或等于运动向量候选者列表的最大索引的索引的候选者(206)。
视频编码器还可产生一或多个虚拟候选者以用于包含在临时运动向量候选者列表中。在此实例中,所述一或多个第一运动向量候选者、一或多个第二运动向量候选者、一或多个虚拟候选者以及一或多个额外候选者中的候选者的数目可包含比运动向量候选者列表中的候选者的最大数目更多的候选者,在此情况下,视频编码器可从临时运动向量候选者列表移除候选者作为产生运动向量候选者列表的部分。视频编码器还可替代地或另外标记第一运动向量候选者中的一或多个候选者和/或第二运动向量候选者中的一或多个候选者用于移除,并且随后移除标记的候选者。标记的候选者可在额外候选者添加到临时运动向量候选者列表之后移除。因此,并非在正构造列表的同时重新布置列表中的候选者,视频编码器可标记候选者用于移除但等待移除,以减少或避免此类重新布置。
图14是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于视频解码器描述图14的技术,所述视频解码器可例如对应于上述视频解码器30,但预期图14的技术也可以由其它类型的视频解码器实施。
视频解码器将一或多个空间相邻块候选者添加到运动向量候选者列表(212)。空间相邻块候选者是从空间相邻块所确定的运动向量候选者,例如图4中所示的空间相邻块中的一些或全部。视频解码器将一或多个时间相邻块候选者添加到运动向量候选者列表(214)。视频解码器基于视差向量确定额外候选者(216)。额外候选者可例如为BVSP候选者、视差经移位运动向量候选者、经视图间预测的运动候选者或右下方经视图间预测的运动候选者中的任一者。视频解码器将额外候选者与来自运动向量候选者列表中的固定位置的候选者进行比较(218)。因此,并非将额外候选者与来自特定空间或时间相邻者的候选者进行比较,视频解码器可将额外候选者与运动向量候选者列表中的特定索引的候选者进行比较,无论所述候选者可能与何种空间或时间相邻者相关联。
对于视频数据块,视频解码器接收从运动向量候选者列表识别候选者的索引值(220)。视频使用对应于经识别候选者的运动向量对所述视频数据块进行解码(222)。
响应于额外候选者与一或多个空间相邻块候选者中的一者或一或多个时间相邻块候选者中的一者相同,视频解码器可移除额外候选者或将额外候选者标记为不可用且稍后移除额外候选者。替代地,响应于额外候选者与一或多个空间相邻块候选者中的一者或一或多个时间相邻块候选者中的一者相同,视频解码器可移除一或多个空间相邻块候选者中的所述一者或者一或多个时间相邻块候选者中的所述一者,或者将一或多个空间相邻块候选者中的所述一者或者一或多个时间相邻块候选者中的所述一者标记为不可用且稍后移除所述额外候选者。视频解码器还可将额外候选者与来自运动向量候选者列表中的第二固定位置的第二候选者进行比较或者将额外候选者与运动向量候选者列表中的前N个候选者进行比较,其中N是大于1但小于列表中准许的候选者的最大数目的整数。
在图14的技术的一个特定实施方案中,视频解码器可不修剪(即移除)BVSP候选者。视频解码器可将DSMV与第一和第二HEVC合并候选者进行比较。如果DSMV与第一和第二HEVC合并候选者中的一者相同,那么视频解码器可将DSMV标记为“不可用”或“待移除”。视频解码器可将IPMC与第一和第二HEVC合并候选者进行比较。如果IPMC与第一HEVC合并候选者相同,那么视频解码器可将第一HEVC合并候选者标记为“不可用”或“待移除”。否则,如果IPMC与第二HEVC合并候选者相同,那么视频解码器可将第二HEVC合并候选者标记为“不可用”或“待移除”。视频解码器可将右下方IPMC与IPMC进行比较。当右下方IPMC与IPMC相同时,视频解码器可将右下方IPMC标记为“不可用”或“待移除”。
图15是说明根据本发明的运动向量候选者列表构造技术的流程图。将相对于通用视频编码器描述图15的技术,所述视频编码器可例如对应于上述视频编码器20,但预期图15的技术也可以由其它类型的视频编码器实施。
视频编码器将一或多个空间相邻块候选者添加到运动向量候选者列表(224)。空间相邻块候选者是从空间相邻块所确定的运动向量候选者,例如图4中所示的空间相邻块中的一些或全部。视频编码器将一或多个时间相邻块候选者添加到运动向量候选者列表(226)。视频编码器基于视差向量确定额外候选者(228)。额外候选者可例如为BVSP候选者、视差经移位运动向量候选者、经视图间预测的运动候选者以及右下方经视图间预测的运动候选者中的任一者。视频编码器将额外候选者与来自运动向量候选者列表中的固定位置的候选者进行比较(230)。对于视频数据块,视频编码器确定用于编码所述视频数据块的运动向量(232)。运动向量对应于运动向量候选者列表中的候选者。视频编码器产生识别运动向量候选者列表中的候选者的语法元素(234)。
响应于额外候选者与一或多个空间相邻块候选者中的一者或一或多个时间相邻块候选者中的一者相同,视频编码器可将所述额外候选者标记为不可用且稍后移除所述额外候选者。视频编码器还可将额外候选者与来自运动向量候选者列表中的第二固定位置的第二候选者进行比较或者将额外候选者与运动向量候选者列表中的前N个候选者进行比较,其中N是大于1但小于列表中准许的候选者的最大数目的整数。在以上实例中,前N个候选者也可以限于前N个HEVC候选者(例如,排除任何3D-HEVC候选者)。
在上文针对图10到15的一些描述中,已经以与对应视频编码技术相比额外的细节或额外的实例来描述视频解码技术。然而应理解,除非另外说明,否则此些额外细节和额外实例也适用于编码器描述。
在一或多个实例中,所描述功能可用硬件、软件、固件或其任何组合实施。如果用软件实施,则所述功能可作为一或多个指令或代码在计算机可读媒体上存储或传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体(其对应于例如数据存储媒体的有形媒体),或包含促进将计算机程序从一处传送到另一处(例如,根据通信协议)的任何媒体的通信媒体。以此方式,计算机可读媒体通常可以对应于(1)有形计算机可读存储媒体,其是非暂时性的,或(2)通信媒体,例如信号或载波。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可以包含计算机可读媒体。
借助于实例而非限制,此类计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可以用来存储指令或数据结构的形式的期望程序代码并且可以由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴缆线、光纤缆线、双绞线、DSL或例如红外线、无线电和微波等无线技术包含在媒体的定义中。但是,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
可由例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路等一或多个处理器来执行指令。因此,如本文中所使用的术语“处理器”可指前述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可以在经配置用于编码和解码的专用硬件和/或软件模块内提供,或者并入在组合编解码器中。而且,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可在广泛多种装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元是为了强调经配置以执行所公开的技术的装置的功能方面,但未必需要由不同硬件单元实现。实际上,如上文所描述,各种单元可以结合合适的软件及/或固件组合在编解码器硬件单元中,或者通过互操作硬件单元的集合来提供,所述硬件单元包含如上文所描述的一或多个处理器。
描述了各种实例。这些及其它实例属于所附权利要求书的范围内。

Claims (34)

1.一种对三维3D视频数据进行解码的方法,所述方法包括:
分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;
分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;
基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;
从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者;
针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及
使用对应于所述经识别候选者的运动向量对所述视频数据块进行解码。
2.一种对三维3D视频数据进行编码的方法,所述方法包括:
分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;
分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;
基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;
从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者;
针对视频数据块确定用于对所述视频数据块进行编码的运动向量,其中所述运动向量对应于所述运动向量候选者列表中的候选者;
产生识别所述运动向量候选者列表中的所述候选者的语法元素。
3.根据权利要求1或2所述的方法,其进一步包括:
产生一或多个虚拟候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者、所述一或多个虚拟候选者以及所述一或多个额外候选者包括比所述运动向量候选者列表中的候选者的所述最大数目更多的候选者。
4.根据权利要求1或2所述的方法,其进一步包括:
标记所述第一运动向量候选者或第二运动向量候选者中的一或多者用于移除;
移除所述标记的候选者。
5.根据权利要求1或2所述的方法,其中所述一或多个额外候选者包括BVSP候选者。
6.根据权利要求1或2所述的方法,其中所述一或多个额外候选者包括视差经移位运动向量候选者。
7.根据权利要求1或2所述的方法,其中所述一或多个额外候选者包括经视图间预测的运动候选者和右下方经视图间预测的运动候选者中的一或多者。
8.一种对三维3D视频数据进行解码的方法,所述方法包括:
将一或多个空间相邻块候选者添加到运动向量候选者列表;
将一或多个时间相邻块候选者添加到运动向量候选者列表;
基于视差向量确定额外候选者;
将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较;
针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及
使用对应于所述经识别候选者的运动向量对所述视频数据块进行解码。
9.一种对三维3D视频数据进行编码的方法,所述方法包括:
将一或多个空间相邻块候选者添加到运动向量候选者列表;
将一或多个时间相邻块候选者添加到运动向量候选者列表;
基于视差向量确定额外候选者;
将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较;
针对视频数据块接收从所述运动向量候选者列表识别候选者的索引值;以及
针对视频数据块确定用于对所述视频数据块进行编码的运动向量,其中所述运动向量对应于所述运动向量候选者列表中的候选者;
产生识别所述运动向量候选者列表中的所述候选者的语法元素。
10.根据权利要求8或9所述的方法,其进一步包括:
响应于所述额外候选者与所述一或多个空间相邻块候选者中的一者或所述一或多个时间相邻块候选者中的一者相同,将所述额外候选者标记为不可用;
移除所述额外候选者。
11.根据权利要求8或9所述的方法,所述方法进一步包括:
将所述额外候选者与来自所述运动向量候选者列表中的第二固定位置的第二候选者进行比较。
12.根据权利要求8或9所述的方法,其中所述一或多个额外候选者包括BVSP候选者。
13.根据权利要求8或9所述的方法,其中所述一或多个额外候选者包括视差经移位运动向量候选者。
14.根据权利要求8或9所述的方法,其中所述一或多个额外候选者包括经视图间预测的运动向量候选者。
15.根据权利要求8或9所述的方法,其中所述一或多个额外候选者包括右下方经视图间预测的运动向量候选者。
16.一种用于对三维3D视频数据进行译码的装置,所述装置包括视频译码器,所述视频译码器经配置以:分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;以及从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者。
17.根据权利要求16所述的装置,其中所述视频译码器进一步经配置以产生一或多个虚拟候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者、所述一或多个虚拟候选者以及所述一或多个额外候选者包括比所述运动向量候选者列表中的候选者的所述最大数目更多的候选者。
18.根据权利要求16或17所述的装置,其中所述视频译码器进一步经配置以标记所述第一运动向量候选者或第二运动向量候选者中的一或多者用于移除;以及移除所述标记的候选者。
19.根据权利要求16或17所述的装置,其中所述一或多个额外候选者包括BVSP候选者。
20.根据权利要求16或17所述的装置,其中所述一或多个额外候选者包括视差经移位运动向量候选者。
21.根据权利要求16或17所述的装置,其中所述一或多个额外候选者包括经视图间预测的运动候选者和右下方经视图间预测的运动候选者中的一或多者。
22.一种用于对三维3D视频数据进行译码的装置,所述装置包括视频译码器,所述视频译码器经配置以:将一或多个空间相邻块候选者添加到运动向量候选者列表;将一或多个时间相邻块候选者添加到运动向量候选者列表;基于视差向量确定额外候选者;将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较。
23.根据权利要求22所述的装置,其中所述视频译码器进一步经配置以响应于所述额外候选者与所述一或多个空间相邻块候选者中的一者或所述一或多个时间相邻块候选者中的一者相同而将所述额外候选者标记为不可用且移除所述额外候选者。
24.根据权利要求22或23所述的装置,其中所述视频译码器进一步经配置以将所述额外候选者与来自所述运动向量候选者列表中的第二固定位置的第二候选者进行比较。
25.根据权利要求22或23所述的装置,其中所述一或多个额外候选者包括BVSP候选者。
26.根据权利要求22或23所述的装置,其中所述一或多个额外候选者包括视差经移位运动向量候选者。
27.根据权利要求22或23所述的装置,其中所述一或多个额外候选者包括经视图间预测的运动候选者。
28.根据权利要求22或23所述的装置,其中所述视频译码器包括视频编码器。
29.根据权利要求22或23所述的装置,其中所述视频译码器包括视频解码器。
30.根据权利要求22或23所述的装置,其中所述装置包括以下各项中的至少一者:
集成电路;
微处理器;以及
无线通信装置,其包含所述视频译码器。
31.一种存储指令的计算机可读存储媒体,所述指令在由一或多个处理器执行时致使所述一或多个处理器:
分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中;
分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中;
基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;以及
从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者;
使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码。
32.一种存储指令的计算机可读存储媒体,所述指令在由一或多个处理器执行时致使所述一或多个处理器:
将一或多个空间相邻块候选者添加到运动向量候选者列表;
将一或多个时间相邻块候选者添加到运动向量候选者列表;
基于视差向量确定额外候选者;以及
将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较。
33.一种用于对三维3D视频数据进行译码的装置,所述装置包括:
用于分析当前块的一或多个空间相邻块以确定一或多个第一运动向量候选者以用于包含在临时运动向量候选者列表中的装置;
用于分析一或多个时间相邻块以确定一或多个第二运动向量候选者以用于包含在所述临时运动向量候选者列表中的装置;
用于基于所述当前块的视差向量确定一或多个额外候选者以用于包含在所述临时运动向量候选者列表中的装置,其中所述一或多个第一运动向量候选者、所述一或多个第二运动向量候选者以及所述一或多个额外候选者包括比运动向量候选者列表中的候选者的最大数目更多的候选者;
用于从所述临时运动向量候选者列表移除具有大于所述运动向量候选者列表的最大索引的索引的候选者的装置;
用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置。
34.一种用于对三维3D视频数据进行译码的装置,所述装置包括:
用于将一或多个空间相邻块候选者添加到运动向量候选者列表的装置;
用于将一或多个时间相邻块候选者添加到运动向量候选者列表的装置;
用于基于视差向量确定额外候选者的装置;
用于将所述额外候选者与来自所述运动向量候选者列表中的固定位置的候选者进行比较的装置;
用于使用来自所述运动向量候选者列表的运动向量对所述视频数据块进行译码的装置。
CN201910391591.2A 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出 Active CN110351567B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910391591.2A CN110351567B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2014/079916 WO2015192286A1 (en) 2014-06-16 2014-06-16 Simplified shifting merge candidate and merge list derivation in 3d-hevc
CN201910391591.2A CN110351567B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出
CN201480079590.XA CN106471806B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201480079590.XA Division CN106471806B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出

Publications (2)

Publication Number Publication Date
CN110351567A true CN110351567A (zh) 2019-10-18
CN110351567B CN110351567B (zh) 2023-07-14

Family

ID=54934646

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201480079590.XA Active CN106471806B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出
CN201910391591.2A Active CN110351567B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201480079590.XA Active CN106471806B (zh) 2014-06-16 2014-06-16 3d-hevc中的简化移位合并候选者及合并列表导出

Country Status (6)

Country Link
US (1) US10567789B2 (zh)
EP (1) EP3155812B1 (zh)
JP (1) JP6430542B2 (zh)
KR (1) KR20170018838A (zh)
CN (2) CN106471806B (zh)
WO (1) WO2015192286A1 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102186605B1 (ko) * 2012-09-28 2020-12-03 삼성전자주식회사 다시점 영상 부호화/복호화 장치 및 방법
CN116708784A (zh) * 2016-07-12 2023-09-05 韩国电子通信研究院 图像编码/解码方法以及用于该方法的记录介质
KR102543752B1 (ko) * 2016-12-22 2023-06-14 주식회사 케이티 비디오 신호 처리 방법 및 장치
US10887600B2 (en) * 2017-03-17 2021-01-05 Samsung Electronics Co., Ltd. Method and apparatus for packaging and streaming of virtual reality (VR) media content
US10701393B2 (en) * 2017-05-10 2020-06-30 Mediatek Inc. Method and apparatus of reordering motion vector prediction candidate set for video coding
CN108989799B (zh) * 2017-06-02 2022-03-08 阿里巴巴集团控股有限公司 一种编码单元参考帧的选择方法、装置及电子设备
KR102441363B1 (ko) * 2017-07-13 2022-09-07 삼성전자주식회사 이미지 신호 프로세서, 이미지 처리 시스템 및 이미지 센서의 비닝 방법
US11463677B2 (en) 2017-07-13 2022-10-04 Samsung Electronics Co., Ltd. Image signal processor, image processing system and method of binning pixels in an image sensor
US10623746B2 (en) * 2017-12-07 2020-04-14 Tencent America LLC Method and apparatus for video coding
WO2019223746A1 (en) * 2018-05-23 2019-11-28 Mediatek Inc. Method and apparatus of video coding using bi-directional cu weight
CN110620933B (zh) * 2018-06-19 2022-05-31 北京字节跳动网络技术有限公司 不同参考列表的不同精度
TWI728390B (zh) 2018-06-29 2021-05-21 大陸商北京字節跳動網絡技術有限公司 查找表尺寸
KR102646649B1 (ko) 2018-06-29 2024-03-13 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut에서의 모션 후보들의 검사 순서
CN114845108A (zh) 2018-06-29 2022-08-02 抖音视界(北京)有限公司 查找表的更新:fifo、约束的fifo
SG11202013028PA (en) 2018-06-29 2021-01-28 Beijing Bytedance Network Technology Co Ltd Interaction between lut and amvp
JP7460617B2 (ja) 2018-06-29 2024-04-02 北京字節跳動網絡技術有限公司 Lut更新条件
TWI724442B (zh) 2018-06-29 2021-04-11 大陸商北京字節跳動網絡技術有限公司 用於查找表更新的編碼的運動信息的選擇
SG11202011714RA (en) 2018-06-29 2020-12-30 Beijing Bytedance Network Technology Co Ltd Partial/full pruning when adding a hmvp candidate to merge/amvp
EP3791586A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
TWI731364B (zh) 2018-07-02 2021-06-21 大陸商北京字節跳動網絡技術有限公司 Hmvp+非相鄰運動
CN111064959B (zh) 2018-09-12 2023-09-01 北京字节跳动网络技术有限公司 要检查多少个hmvp候选
TWI815967B (zh) 2018-09-19 2023-09-21 大陸商北京字節跳動網絡技術有限公司 仿射模式編解碼的模式相關自適應調整運動矢量分辨率
EP3788779A4 (en) * 2018-10-23 2022-03-02 Tencent America LLC VIDEO CODING METHOD AND APPARATUS
KR20230163002A (ko) 2018-12-28 2023-11-29 가부시키가이샤 제이브이씨 켄우드 동화상 복호 장치, 동화상 복호 방법, 동화상 복호 프로그램, 동화상 부호화 장치, 동화상 부호화 방법, 동화상 부호화 프로그램, 격납 방법 및 전송 방법
MX2021007755A (es) 2018-12-28 2021-08-05 Godo Kaisha Ip Bridge 1 Dispositivo de codificacion de imagenes en movimiento, metodo de codificacion de imagenes en movimiento, programa de codificacion de imagenes en movimiento, dispositivo de decodificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento y programa de decodificacion de imagenes en movimiento.
US11032574B2 (en) * 2018-12-31 2021-06-08 Tencent America LLC Method and apparatus for video coding
CN113273186A (zh) 2019-01-10 2021-08-17 北京字节跳动网络技术有限公司 Lut更新的调用
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
US11533506B2 (en) * 2019-02-08 2022-12-20 Tencent America LLC Method and apparatus for video coding
US11140406B2 (en) * 2019-02-20 2021-10-05 Qualcomm Incorporated Signalling for merge mode with motion vector differences in video coding
EP3703378A1 (en) * 2019-03-01 2020-09-02 Koninklijke Philips N.V. Apparatus and method of generating an image signal
CN111698507B (zh) * 2019-03-11 2022-08-26 杭州海康威视数字技术股份有限公司 运动信息候选者列表构建方法及列表中索引编码方法
CN113615193A (zh) 2019-03-22 2021-11-05 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
EP3963890A4 (en) 2019-06-04 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. BUILDING A LIST OF MOVEMENT CANDIDATES USING NEIGHBOR BLOCK INFORMATION
CN114097228B (zh) 2019-06-04 2023-12-15 北京字节跳动网络技术有限公司 具有几何分割模式编解码的运动候选列表
CN117354507A (zh) 2019-06-06 2024-01-05 北京字节跳动网络技术有限公司 视频编解码的运动候选列表构建
KR20220030995A (ko) 2019-07-14 2022-03-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 비디오 코딩에서 변환 블록 크기 제한
WO2021057996A1 (en) 2019-09-28 2021-04-01 Beijing Bytedance Network Technology Co., Ltd. Geometric partitioning mode in video coding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130176390A1 (en) * 2012-01-06 2013-07-11 Qualcomm Incorporated Multi-hypothesis disparity vector construction in 3d video coding with depth
US20130265388A1 (en) * 2012-03-14 2013-10-10 Qualcomm Incorporated Disparity vector construction method for 3d-hevc
US20140049605A1 (en) * 2012-08-16 2014-02-20 Qualcomm Incorporated Inter-view predicted motion vector for 3d video
US20140071235A1 (en) * 2012-09-13 2014-03-13 Qualcomm Incorporated Inter-view motion prediction for 3d video
US20140098882A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Inter-view predicted motion vector for 3d video

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101727311B1 (ko) * 2008-04-25 2017-04-14 톰슨 라이센싱 깊이 정보에 기초한 디스패리티 예측을 구비한 다중 시점 비디오 코딩
CN107071461B (zh) 2010-12-14 2019-11-12 M&K控股株式会社 用于解码运动画面的设备
US9866859B2 (en) * 2011-06-14 2018-01-09 Texas Instruments Incorporated Inter-prediction candidate index coding independent of inter-prediction candidate list construction in video coding
PL2773111T3 (pl) * 2011-10-28 2020-06-29 Sun Patent Trust Sposób kodowania obrazów, sposób dekodowania obrazów, urządzenie do kodowania obrazów i urządzenie do dekodowania obrazów
KR20130050405A (ko) 2011-11-07 2013-05-16 오수미 인터 모드에서의 시간 후보자 결정방법
WO2013109093A1 (ko) 2012-01-19 2013-07-25 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
US9549180B2 (en) 2012-04-20 2017-01-17 Qualcomm Incorporated Disparity vector generation for inter-view prediction for video coding
EP2842333A4 (en) 2012-07-02 2016-01-06 Mediatek Inc METHOD AND DEVICE FOR DERIVING INTERCONNECTION CANDIDATES IN 3D VIDEO CODING
US10075728B2 (en) * 2012-10-01 2018-09-11 Inria Institut National De Recherche En Informatique Et En Automatique Method and device for motion information prediction refinement
WO2014054684A1 (ja) 2012-10-02 2014-04-10 シャープ株式会社 画像復号装置および画像復号方法
CN102946536B (zh) 2012-10-09 2015-09-30 华为技术有限公司 候选矢量列表构建的方法及装置
US9357214B2 (en) 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
US9609347B2 (en) 2013-04-04 2017-03-28 Qualcomm Incorporated Advanced merge mode for three-dimensional (3D) video coding
US9800895B2 (en) 2013-06-27 2017-10-24 Qualcomm Incorporated Depth oriented inter-view motion vector prediction

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130176390A1 (en) * 2012-01-06 2013-07-11 Qualcomm Incorporated Multi-hypothesis disparity vector construction in 3d video coding with depth
US20130265388A1 (en) * 2012-03-14 2013-10-10 Qualcomm Incorporated Disparity vector construction method for 3d-hevc
US20140049605A1 (en) * 2012-08-16 2014-02-20 Qualcomm Incorporated Inter-view predicted motion vector for 3d video
US20140071235A1 (en) * 2012-09-13 2014-03-13 Qualcomm Incorporated Inter-view motion prediction for 3d video
US20140098882A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Inter-view predicted motion vector for 3d video

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CHRISTINE GUILLEMOT等: "3D-CE5.h: Additional merge candidates derived from shifted disparity candidate predictors", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 3RD MEETING: GENEVA, CH, 17–23 JAN. 2013》 *
VIJAYARAGHAVAN THIRUMALAI等: "CE3.h: Merge candidates derivation from vector shifting", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSIONS OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 5TH MEETING: VIENNA, AU, JULY 27– AUG. 2, 2013 DOCUMENT: JCT3V-E0126》 *
ZHANG LI等: "Test Model 7 of 3D-HEVC and MV-HEVC", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 7TH MEETING: SAN JOSÉ, US, 11–17 JAN. 2014 DOCUMENT: JCT3V-G1005》 *
田恬等: "新一代基于HEVC的3D视频编码技术", 《电视技术》 *

Also Published As

Publication number Publication date
JP2017522788A (ja) 2017-08-10
CN106471806A (zh) 2017-03-01
EP3155812B1 (en) 2023-04-05
JP6430542B2 (ja) 2018-11-28
EP3155812A4 (en) 2017-12-27
US20170127082A1 (en) 2017-05-04
US10567789B2 (en) 2020-02-18
WO2015192286A1 (en) 2015-12-23
KR20170018838A (ko) 2017-02-20
CN106471806B (zh) 2019-06-04
EP3155812A1 (en) 2017-04-19
CN110351567B (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
CN106471806B (zh) 3d-hevc中的简化移位合并候选者及合并列表导出
CN104904218B (zh) 视差矢量推导
CN105052146B (zh) 对3d视频译码中的视差向量导出和运动向量预测的简化
CN105637870B (zh) 使用不对称运动分割的视频译码技术
CN105874799B (zh) 用于3d视频译码的基于块的高级残差预测
CN105379282B (zh) 用于纹理译码的先进残余预测(arp)的方法和设备
CN105556969B (zh) 视频译码中使用视差向量的块识别
CN105144715B (zh) 后向视图合成预测
CN104769949B (zh) 用于视差向量导出的图片的选择的方法和装置
CN105359530B (zh) 面向深度的视图间运动向量预测
CN105580372B (zh) 用于3d视频译码的组合式双向预测合并候选者
CN104170380B (zh) 视频译码中的视差矢量预测
CN104904213B (zh) 可缩放及多视角视频译码中的高级残差预测
CN105122812B (zh) 用于三维(3d)视频译码的高级合并模式
CN105379288B (zh) 处理对视频译码的照明补偿
CN104303502B (zh) 对多视图视频数据进行编码、解码和译码的方法、装置及计算机可读存储介质
CN104350749B (zh) 深度图估计的推导
CN109691106A (zh) 时间运动向量预测符的偏移向量识别
CN105122811B (zh) 3d视频译码中的相邻块视差向量导出
CN105009586B (zh) 多视图或3维视频译码中的视图间残余预测
CN105075265B (zh) 3d视频译码中针对跳过和直接模式的视差向量导出
CN105027571B (zh) 三维视频译码中导出的视差向量
CN105009592B (zh) 用于3d-avc中的基于相邻块的视差向量导出的方法和装置
CN105850135B (zh) 用于视频译码的视差向量和/或高级残差预测
CN107534766A (zh) 于视频译码中针对子块推导运动信息

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant