CN107211157B - 用于视频译码的重叠运动补偿 - Google Patents

用于视频译码的重叠运动补偿 Download PDF

Info

Publication number
CN107211157B
CN107211157B CN201680006775.7A CN201680006775A CN107211157B CN 107211157 B CN107211157 B CN 107211157B CN 201680006775 A CN201680006775 A CN 201680006775A CN 107211157 B CN107211157 B CN 107211157B
Authority
CN
China
Prior art keywords
block
sub
blocks
prediction
video
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680006775.7A
Other languages
English (en)
Other versions
CN107211157A (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 CN202010166704.1A priority Critical patent/CN111355963A/zh
Publication of CN107211157A publication Critical patent/CN107211157A/zh
Application granted granted Critical
Publication of CN107211157B publication Critical patent/CN107211157B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/583Motion compensation with overlapping blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Landscapes

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

Abstract

在实例中,一种解码视频数据的方法可包含接收视频数据的第一块。视频数据的所述第一块可为预测单元的子块。所述方法可包含接收邻近视频数据的所述第一块的视频数据的一或多个块。所述方法可包含确定邻近视频数据的所述第一块的视频数据的所述一或多个块中的至少一者的运动信息。所述方法可包含至少部分地基于邻近视频数据的所述第一块的所述一或多个块中的所述至少一者的所述运动信息,使用重叠块运动补偿解码视频数据的所述第一块。

Description

用于视频译码的重叠运动补偿
本申请案主张2015年1月26申请的美国临时专利申请案第62/107,964号和2015年2月16申请的美国临时专利申请案第62/116,631号的权利,以上申请案中的每一者特此以全文引用的方式并入本文中。
技术领域
本发明涉及视频译码;且更具体来说,涉及基于块的视频译码的运动补偿。
背景技术
数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、平板计算机、电子书阅读器、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话(所谓“智能电话”)、视频电话会议装置、视频流式传输装置和其类似者。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、高级视频译码(AVC)第10部分、ITU-T H.265、高效率视频译码(HEVC)所定义的标准和这些标准的扩展中所描述的那些技术。视频装置可通过实施此类视频压缩技术而更高效地发射、接收、编码、解码和/或存储数字视频信息。
视频压缩技术执行空间(帧内图片)预测和/或时间(帧间图片)预测来减少或移除视频序列中固有的冗余。对于基于块的视频译码,可将视频切片(即,视频帧或视频帧的一部分)分割成视频块。使用相对于同一图片中的相邻块中的参考样本的空间预测来编码图片的经帧内译码(I)切片中的视频块。图片的经帧间译码(P或B)切片中的视频块可使用相对于同一图片中的邻近块中的参考样本的空间预测或其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。
空间或时间预测产生用于待译码的块的预测性块。残余数据表示待译码的原始块与预测性块之间的像素差。经帧间译码块是根据指向形成预测性块的参考样本的块的运动向量来编码,且残余数据指示经译码块与预测性块之间的差。经帧内译码块是根据帧内译码模式与残余数据来编码。为进一步压缩,可将残余数据从像素域变换到变换域,从而产生可接着经量化的残余系数。可扫描最初按二维阵列布置的经量化的系数以便产生系数的一维向量,且可应用熵译码以实现甚至更多压缩。
发明内容
本发明的技术涉及基于块的视频译码。举例来说,本发明中所描述的技术可包含用于使用重叠块运动补偿(OBMC)编码或解码视频数据的块的一或多个技术。
在一个实例中,本发明描述一种解码视频数据的方法,所述方法包括:接收视频数据的第一块,其中视频数据的第一块是预测单元的子块;接收邻近视频数据的第一块的视频数据的一或多个块;确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息;和至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿解码视频数据的第一块。
在另一实例中,本发明描述一种用于译码视频数据的装置,所述装置包括:存储器,其经配置以存储视频数据;和视频译码器,其与存储器通信,其中视频译码器经配置以进行以下操作:存存储储器中的视频数据的第一块,其中视频数据的第一块是预测单元的子块;存储邻近存储器中的视频数据的第一块的视频数据的一或多个块;确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息;和至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿译码视频数据的第一块。
在另一实例中,本发明描述一种用于译码视频数据的设备,所述设备包括:用于接收视频数据的第一块的装置,其中视频数据的第一块是预测单元的子块;用于接收邻近视频数据的第一块的视频数据的一或多个块的装置;用于确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息的装置;和用于至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿译码视频数据的第一块的装置。
在另一实例中,本发明描述一种非暂时性计算机可读存储媒体,其具有存储于其上的指令,当执行所述指令时,使一或多个处理器存存储储器中的视频数据的第一块,其中视频数据的第一块是预测单元的子块;存储邻近存储器中的视频数据的第一块的视频数据的一或多个块;确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息;和至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿译码视频数据的第一块。
在附图和以下描述中阐明本发明的一或多个实例的细节。本发明的其它特征、目标和优势将从描述和图式以及权利要求书显而易见。
附图说明
图1是说明可利用本发明中所描述的技术的实例视频编码和解码系统的框图。
图2展示用于帧间预测模式视频译码的分割模式。
图3A和3B分别展示用于合并和高级运动向量预测(AMVP)视频译码模式的空间邻近运动向量(MV)候选者。
图4A展示时间运动向量预测(TMVP)候选者的实例。
图4B展示运动向量尺度的实例。
图5展示(如用于)TU-TH.263视频译码标准中的重叠块运动补偿(OBMC)的实例。
图6A和6B展示可用于HEVC或其它视频译码标准中的基于预测单元(PU)的OBMC的实例。
图7A到7C展示PU中的子PU和子块。
图8A到8B展示其中可应用OBMC的子块。
图9是说明可实施本发明中所描述的OBMC技术的实例视频编码器的框图。
图10是说明可实施本发明中所描述的OBMC技术的实例视频解码器的框图。
图11是说明符合用于本发明的OMBC视频译码的技术的用于解码视频数据的实例过程的流程图。
图12是说明符合用于本发明的OMBC视频译码的技术的用于编码视频数据的实例过程的流程图。
具体实施方式
本发明的技术大体上涉及基于块的视频译码的运动补偿。本发明的技术可应用于现有视频编解码器或视频译码标准(例如,ITU-TH.265、HEVC),或可应用于未来视频编解码器或视频译码标准中。
如本文所使用,术语“内容”的个例可改变为术语“视频”,且术语“视频”的个例可改变为术语“内容”。无论术语“内容”或“视频”是被用作形容词、名词或词类的其它部分,此为成立。举例来说,对“内容译码器”的参考也包含对“视频译码器”的参考,且对“视频译码器”的参考也包含对“内容译码器”的参考。类似地,对“内容”的参考也包含对“视频”的参考,且对“视频”的参考也包含对“内容”的参考。
如本文所使用,“内容”是指任何类型的内容。举例来说,“内容”可指视频、画面内容、图像、任何图形内容、任何可显示内容或与其对应的任何数据(例如,视频数据、画面内容数据、图像数据、图形内容数据、可显示内容数据和类似者)。
如本文中所使用,术语“视频”可指画面内容、可移动内容、可以序列呈现的多个图像或与其对应的任何数据(例如,画面内容数据、可移动内容数据、视频数据、图像数据和类似者)。
如本文中所使用,术语“图像”可指单一图像、一或多个图像、对应于视频的多个图像当中的一或多个图像、不对应于视频的多个图像当中的一或多个图像、对应于视频的多个图像(例如,对应于视频的图像中的全部或小于对应于视频的图像中的全部)、单一图像的子部分、单一图像的多个子部分、对应于多个图像的多个子部分、一或多个图形原语、图像数据、图形数据和类似者。
如本文所使用,“运动信息”可指或另外包含运动向量信息,或更简单地说,运动向量。在其它实例中,“运动信息”可指或另外包含不同于运动向量信息的运动信息。在又其它实例中,“运动信息”可指一或多个运动向量和任何其它运动相关信息,例如识别待使用的一或多个参考图片列表的预测方向和识别参考图片列表中的一或多个参考图片的一或多个参考索引。如本文所使用,“运动信息的集合”或类似者可指“运动信息”。类似地,“运动信息”可指“运动信息的集合”或类似者。
如本文所使用,“邻近者”、“邻近的块”、“邻近块”和类似者是指邻近至少一个边/边界上的视频数据的另一块的视频的块。举例来说,视频数据的当前块可具有四个边:左、右、顶和底。视频数据的当前块的视频数据的邻近的块可包含毗邻视频的当前块的左、右、顶或底边界的视频数据的任何块。作为另一实例,邻近第二块的第一块共享第二块的边界(例如,左边界、右边界、顶边界或底边界)。
图1为说明可利用本发明的技术的实例视频译码系统10的框图。如本文所使用,术语“视频译码器”大体上是指视频编码器和视频解码器两者。在本发明中,术语“视频译码”或“译码”可大体上是指视频编码或视频解码。视频译码系统10的视频编码器20和视频解码器30表示可经配置以执行根据本发明中所描述的各种实例的用于使用重叠块运动补偿编码或解码视频数据的块的技术的装置的实例。
视频编码器20和/或视频解码器30可经配置以根据本发明中描述的技术来操作。视频解码器30可经配置以执行与本文中所描述的视频编码器20的所述过程大体上互逆的过程。类似地,视频编码器20可经配置以执行与本文中描述的视频解码器30的所述过程大体上互逆的过程。
如图1中所展示,视频译码系统10包含源装置12和目的地装置14。源装置12产生经编码视频数据。因此,源装置12可被称作视频编码装置或视频编码设备。目的地装置14可解码由源装置12产生的经编码视频数据。因此,目的地装置14可被称作视频解码装置或视频解码设备。源装置12和目的地装置14可以是视频译码装置或视频译码设备的实例。
源装置12和目的地装置14可包含广泛范围的装置,包含台式计算机、移动计算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、电话手机(例如所谓的“智能”电话)、电视、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机或类似者。
目的地装置14可经由信道16从源装置12接收经编码视频数据。信道16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体和/或一或多个媒体或装置。在一个实例中,信道16可包括使得源装置12能够实时将经编码视频数据直接发射到目的地装置14的一或多个通信媒体。在此实例中,源装置12可根据例如无线通信协议的通信标准来调制经编码视频数据,且可将经调制视频数据发射到目的地装置14。一或多个通信媒体可包含无线和/或有线通信媒体,例如射频(RF)频谱或一或多个物理发射线。一或多个通信媒体可形成分组网络(例如局域网、广域网或全球网络(例如,因特网))的部分。一或多个通信媒体可包含路由器、交换器、基站,或促进从源装置12到目的地装置14的通信的其它设备。
在一些实例中,经编码数据可从输出接口22输出到存储装置26,所述存储装置可经配置以存储由源装置12产生的经编码视频数据。尽管描绘为与信道16分离,应理解,在其它实例中信道16可以通信方式耦合到存储装置26。在此实例中,目的地装置14可存取存储于存储装置26上的经编码视频数据。举例来说,经编码视频数据可通过输入接口28从存储装置26经存取。
存储装置26可包含各种分布式或本地存取的数据存储媒体中的任一者,例如,硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器,或用于存储经编码视频数据的任何其它适合的数字存储媒体。在一些实例中,存储装置26可对应于存储由源装置12产生的经编码视频数据的文件服务器或另一中间存储装置。在这些实例中,文件服务器可以是能够存储经编码视频数据和将经编码视频数据发射到目的地装置14的任何类型的服务器。实例文件服务器包含(例如)万维网服务器(例如,用于网站)、文件传送协议(FTP)服务器、网络连接存储(NAS)装置,和本地磁盘驱动器。
目的地装置14可经由任何数据连接(例如,任何标准数据连接或其它)存取经编码视频数据,所述数据连接包含(例如)因特网连接。实例类型的数据连接可包含适合于存取存储于存储装置26(例如,文件服务器)上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线信道(例如,DSL、线缆调制解调器等)或两者的任何组合。经编码视频数据从存储装置26的发射可为流式传输发射、下载发射或两者的组合。
本发明的技术并不限于无线应用或设定。本发明的技术可应用于支持多种多媒体应用中的任一者的视频译码,所述应用例如,空中电视广播、有线电视发射、卫星电视发射、(例如)经由因特网的流式传输视频发射、用于存储于数据存储媒体上的数字视频的编码、存储于数据存储媒体上的经编码视频数据的解码或其它应用。在一些实例中,视频译码系统10可经配置以支持单向或双向视频发射,从而支持例如视频流式传输、视频播放、视频广播和/或视频电话的应用。
图1中所说明的视频译码系统10仅为实例,且本发明的技术可适用于未必包含编码装置与解码装置之间的任何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,从经由网络或类似者而流式传输发射的本地存储器检索数据。视频编码装置可编码数据和将数据存储到存储器,和/或视频解码装置可从存储器检索数据和解码数据。在许多实例中,由并不彼此通信,而是简单地将数据编码到存储器和/或从存储器检索数据并解码数据的装置来执行编码和解码。
在图1的实例中,源装置12包含视频源18、视频编码器20和输出接口22。在一些实例中,输出接口22可包含调制器/解调器(调制解调器)和/或发射器。视频源18可包含例如视频相机的视频捕获装置、含有先前所捕获的视频数据的视频存档、从视频内容提供者处接收视频数据的视频馈入接口和/或用于产生视频数据的计算机图形系统或视频数据的这些源的组合。
视频编码器20可经配置以编码来自视频源18的视频数据。举例来说,视频编码器20可经配置以编码经捕获、经预先捕获或计算机产生的视频数据(或任何其它数据)。在一些实例中,源装置12经由输出接口22将经编码视频数据直接发射到目的地装置14。在其它实例中,经编码视频数据还可存储到存储媒体(例如,存储装置26)上以由目的地装置14稍后存取以进行解码和/或播放。
在图1的实例中,目的地装置14包含输入接口28、视频解码器30和显示装置32。在一些实例中,输入接口28包含接收器和/或调制解调器。输入接口28可经由信道16接收经编码视频数据。经由信道16传达或由存储装置26提供的经编码视频数据可包含由视频编码器20产生以供由视频解码器(例如视频解码器30)用于解码视频数据的多种语法元素。这些语法元素可与在通信媒体上发射、存储于存储媒体上或存储于文件服务器上的经编码视频数据包含在一起。
显示装置32可与目的地装置14集成或可在目的地装置14外部。在一些实例中,目的地装置14可包含集成显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。通常,显示装置32显示经解码视频数据。显示装置32可包括各种显示装置中的任一者,所述显示装置例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
本发明的技术可利用HEVC术语或其它视频标准术语以易于解释。然而,应理解,本发明的技术不受限于HEVC或其它视频标准。无论在过去、现在还是将来,除其它视频标准之外,本发明的技术也可实施于HEVC之后续标准和其扩展中。
尽管图1中未展示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当的MUX-DEMUX单元或其它硬件和软件,以处置共同数据流或单独数据流中的音频和视频两者的编码。如果适用,那么在一些实例中,MUX-DEMUX单元可遵守ITU H.223多路复用器协议或其它协议(例如,用户数据报协议(UDP))。
本发明通常可指代视频编码器20“用信号发送”或“发射”某些信息到另一装置,例如,视频解码器30。术语“用信号发送”或“发射”可大体上指代用于解码经压缩视频数据的语法元素和/或其它数据的通信。此通信可实时地或近实时地发生。替代地,可历时时间跨度发生此通信,例如可在当编码时在经编码位流中将语法元素存储到计算机可读存储媒体时发生,接着,在存储到此媒体之后可由解码装置在任何时间检索所述语法元素。因此,虽然视频解码器30可被称作“接收”某些信息,但信息的接收未必实时或近乎实时地发生且可在存储之后在某一时间处从媒体检索。
视频编码器20和视频解码器30各自可实施为多种合适电路中的任一者,例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、硬件或其任何组合。如果部分地以软件来实施技术,那么装置可将用于软件的指令存储于合适的非暂时性计算机可读存储媒体中,且可在硬件中使用一或多个处理器来执行所述指令以执行本发明的技术。可将前述各者(包含硬件、软件、硬件与软件的组合等)中的任一者视为一或多个处理器。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,编码器或解码器中的任一者可集成为相应装置中的组合式编码器/解码器(编解码器)的部分。
在HEVC和其它视频译码标准中,视频序列通常包含一系列图片。图片也可被称作“帧”。在一些实例中,视频编码器20可经配置以使用图片次序计数(POC)来识别一图片相对于多个图片(例如,一序列图片)的显示次序。在这些实例中,视频编码器20可经配置以将POC值指配到图片。在其中多个经译码视频序列存在于位流中的实例中,具有相同POC值的图片就解码次序来说可更接近于彼此。图片的POC值可用于参考图片列表构造、如同(例如)HEVC中的参考图片集的导出和运动向量调整。
在一些实例中,图片可包含三个样本阵列。在这些实例中,图片可包含表示为SL、SCb和SCr的三个样本阵列。在这些实例中,SL为亮度样本的二维阵列(例如,块),SCb为Cb色度样本的二维阵列(例如,块)且SCr为Cr色度样本的二维阵列(例如,块)。色度(Chrominance)样本也可在本文中被称作“色度(chroma)”样本。在其它情况下,图片可是单色的,且可仅包含亮度样本阵列。
为产生图片的经编码表示,视频编码器20可产生一组译码树型单元(CTU)。所述组CTU可包含亮度样本的译码树型块、色度样本的两个对应的译码树型块和用以对译码树型块的样本进行译码的语法结构。译码树型块可为样本的N×N块。CTU也可被称作“树型块”或“最大译码单元”(LCU)。HEVC的CTU可广泛地类似于,例如H.264/AVC的其它标准的宏块。然而,CTU未必限于特定大小且可包含一或多个译码单元(CU)。视频帧或图片可分割成一或多个切片。切片可包含在光栅扫描中连续定序的整数数目个CTU。经译码切片可包括切片标头和切片数据。切片的切片标头可以是包含提供关于切片的信息的语法元素的语法结构。切片数据可包含切片的经译码CTU。
在一些实例中,CU可包含译码节点和与译码节点相关联的一或多个预测单元(PU)和/或变换单元(TU)。CU的大小可对应于译码节点的大小且可为正方形形状。CU的大小可介于(例如)8×8像素达至具有最大64×64像素或更多像素的树型块的大小的范围内。每一CU可含有一或多个PU和一或多个TU。与CU相关联的语法信息可描述例如将CU分割成一或多个PU。分割模式可在CU经跳过或直接模式编码、帧内预测模式编码还是帧间预测模式编码之间有区别。PU的形状可分割成正方形或非正方形。与CU相关联的语法数据也可描述(例如)根据四叉树将CU分割成一或多个TU。TU的形状可为正方形或非正方形。
一般来说,PU可包含关于预测过程的数据。举例来说,当PU经帧内模式编码时,PU可包含描述用于PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含定义用于PU的运动向量的数据。定义用于PU的运动向量的数据可描述(例如)运动向量的水平分量、运动向量的竖直分量、用于运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量所指向的参考图片和/或用于运动向量的参考图片列表(例如,列表0、列表1或列表C)。
一般来说,TU可用于变换和量化过程。具有一或多个PU的给定CU也可包含一或多个变换单元(TU)。在预测之后,视频编码器20可计算对应于PU的残余值。残余值可包括可变换成变换系数、经量化且使用TU扫描的像素差值,以产生用于熵译码的系列化变换系数。
本发明可使用术语“视频单元”、“视频块”、“译码块”或“块”指代一或多个样本块和用于译码样本的一或多个块的样本的语法结构。实例类型的视频单元或块可包含译码树型单元(CTU)、译码单元(CU)、预测单元(PU)、子PU、变换单元(TU)、宏块(MB)、宏块分区、子块等。在一些实例中,子块可为CTU的子块、CU的子块、PU的子块、TU的子块、宏块的子块或子块的子块。举例来说,子块可含有一群子PU。在这些实例中,子块可小于CTU、CU、PU、TU或宏块。在一些实例中,子PU可指小于PU的块。在此实例中,如果PU为8×4,那么子PU可为4×4。
在一些实例中,一组运动信息可供用于视频数据的每一块。所述组运动信息可包含用于前向和后向预测的运动信息。前向和后向预测可为双向预测模式的两个预测方向。前向和后向预测方向可为单向预测模式的两个预测方向中的一者。术语“前向”和“后向”不必具有几何意义,而是其对应于(例如)当前图片的参考图片列表0(RefPicList0)和参考图片列表1(RefPicList1)。当仅仅一个参考图片列表可供用于图片或切片时,仅仅RefPicList0可为可用的,且所述图片或切片的每一块的运动信息可为前向的。
对于每一预测方向(例如,前向或后向),运动信息可含有预测方向、参考索引和运动向量。在一些实例中,为简单起见,可以假定运动向量自身具有相关联参考索引的方式参考所述运动向量。参考索引用以识别当前参考图片列表(例如,RefPicList0或RefPicList1)中的参考图片。运动向量可具有水平分量和竖直分量。
本文中所描述的视频块可具有固定或变化的大小,且根据所指定的译码标准可在大小上不同。作为一实例,特定CU的大小可为2N×2N。在此实例中,视频编码器20可经配置以执行具有大小2N×2N或N×N的PU的帧内预测,且可经配置以执行具有大小2N×2N、2N×N、N×2N或N×N的PU的帧间预测。在其它实例中,PU的可用大小可相同或不同。
在本发明中,“N×N”与“N乘N”可互换地使用以指代视频块在竖直尺寸与水平尺寸方面的像素尺寸,例如,16×16像素或16乘16像素。一般来说,16×16块在竖直方向上将具有16个像素(y=16)且在水平方向上将具有16个像素(x=16)。同样地,N×N块通常在竖直方向上具有N个像素且在水平方向上具有N个像素,其中N表示正整数值。可按行和列来布置块中的像素。此外,块未必需要在水平方向上与竖直方向上具有相同数目个像素。举例来说,块可包括N×M个像素,其中M等于N或不等于N,且其中M为正整数值。
在一些实例中,本文中所揭示的CU的结构可指如视频译码标准(例如H.265/HEVC)中所阐述的CU的结构。在HEVC中,切片中的最大译码单元称为译码树型块(CTB)。CTB含有四叉树,所述四叉树的节点为译码单元。CTB范围的大小在HEVC主简档中从16×16到64×64;以及,在一些实例中,也支持8×8CTB大小。CU可与CTB大小相同且可小至8×8。每一CU通过一个模式而译码。当CU经帧间预测模式译码时,CU可进一步分割成2或4个预测单元(PU)或在并未应用进一步分割时变为仅一个PU(例如,图2中所展示的PART_2Nx2N)。当两个PU存在于一个CU中时,它们可为二分之一大小的矩形(例如,图2中所展示的PART_2NxN或PART_Nx2N)或具有一个四分之一大小和其它四分之三大小的两个矩形(例如,图2中所展示的PART_2NxnU、PART_2NxnD、PART_nLx2N或PART_nRx2N)。存在用于通过帧间预测模式译码的八个分割模式,如图2中所展示:PART_2Nx2N、PART_2NxN、PART_Nx2N、PART_NxN、PART_2NxnU、PART_2NxnD、PART_nLx2N和PART_nRx2N。当CU经帧间译码时,针对每一PU提供一组运动信息。另外,每一PU通过独特帧间预测模式译码以导出所述组运动信息。
参考(例如)ITU-T H.264/AVC或其它标准中的宏块,每一帧间宏块(MB)可根据一个实例以四个不同方式分割:一个16×16MB分区、两个16×8MB分区、两个8×16MB分区或四个8×8MB分区。一个MB中的不同MB分区每一方向可具有不同参考索引值(RefPicList0或RefPicList1)。在其中MB未分割成四个8×8MB分区的实例中,MB可在每一方向上具有每一MB分区的仅一个运动向量。在其中MB分割成四个8×8MB分区的实例中,每一8×8MB分区可进一步分割成子块,所述子块中的每一者可在每一方向上具有不同运动向量。在此实例中,8×8MB分区可以四种不同方式分割成一或多个子块:一个8×8子块、两个8×4子块、两个4×8子块或四个4×4子块。每一子块可在每一方向上具有不同运动向量。在此实例中,每一运动向量可存在于等于高于子块的层级中。
在一些实例中,本文中所揭示的MB的结构可指如视频译码标准(例如ITU-TH.264/AVC)中所阐述的MB的结构。在这些实例中,视频编码器20和视频解码器30可经配置以在B切片中的用于跳过或直接模式的MB或MB分区层级处使用时间直接模式译码视频数据。对于每一MB分区,与当前块的RefPicList1[0]中的当前MB分区位于相同位置的块的运动向量可用于导出运动向量。相同位置块中的每一运动向量可基于POC距离按比例调整。H.264/AVC也包含空间直接模式,这可用于预测来自空间相邻者的运动信息。
参考图1,为产生经译码CTU,视频编码器20可对CTU的译码树型块递回地执行四叉树分割,以将译码树型块划分成译码块,因此命名“译码树型单元”。译码块可为样本的N×N(或N×M)块。CU可为图片的亮度样本的译码块和色度样本的两个对应译码块,所述图片具有亮度样本阵列、Cb样本阵列和Cr样本阵列,以及用以对译码块的样本进行译码的语法结构。视频编码器20可将CU的译码块分割成一或多个PU。PU可以是得以应用相同预测技术的正方形或非正方形样本块。CU的PU可为图片的亮度样本的预测块、图片的色度样本的两个对应预测块,和用以预测所述预测块样本的语法结构。视频编码器20可产生CU的每一PU的亮度、Cb和Cr预测块的预测性亮度、Cb和Cr块。
视频编码器20可使用帧内预测或帧间预测以产生PU的预测性块。如果视频编码器20使用帧内预测以产生PU的预测性块,那么视频编码器20可基于与PU相关联的图片的经解码样本而产生PU的预测性块。
如果视频编码器20使用帧间预测以产生PU的预测性块,那么视频编码器20可基于除与PU相关联的图片以外的一或多个图片的经解码样本而产生PU的预测性块。视频编码器20可使用单向预测或双向预测以产生PU的预测性块。当视频编码器20使用单向预测来产生PU的预测性块时,PU可具有单一运动向量(MV)。当视频编码器20使用双向预测来产生PU的预测性块时,PU可具有两个MV。
在视频编码器20产生CU的一或多个PU的预测性块(例如,预测性亮度、Cb和Cr块)之后,视频编码器20可产生CU的残余块。CU的残余块中的每一样本可指示CU的PU的预测性块中的样本与CU的译码块中的对应样本之间的差异。举例来说,视频编码器20可产生CU的亮度残余块。CU的亮度残余块中的每一样本指示CU的预测性亮度块中的一者中的亮度样本与CU的原始亮度译码块中的对应样本之间的差异。另外,视频编码器20可产生CU的Cb残余块。CU的Cb残余块中的每一样本可指示CU的预测性Cb块中的一者中的Cb样本与CU的原始Cb译码块中的对应样本之间的差异。视频编码器20也可产生CU的Cr残余块。CU的Cr残余块中的每一样本可指示CU的预测性Cr块中的一者中的Cr样本与CU的原始Cr译码块中的对应样本之间的差异。
视频编码器20可使用四叉树分割将CU的残余块(例如,亮度、Cb和Cr残余块)分解成一或多个变换块(例如,亮度、Cb和Cr变换块)。变换块可为对其应用相同变换的样本的块。CU的变换单元(TU)可为亮度样本的变换块、色度样本的两个对应变换块和用于对变换块样本进行变换的语法结构。因此,CU的每一TU可与亮度变换块、Cb变换块和Cr变换块相关。与TU相关联的亮度变换块可为CU的亮度残余块的子块。Cb变换块可为CU的Cb残余块的子块。Cr变换块可为CU的Cr残余块的子块。
视频编码器20可将一或多个变换应用于变换块以产生TU的系数块。系数块可为变换系数的二维阵列。变换系数可为纯量。举例来说,视频编码器20可将一或多个变换应用于TU的亮度变换块,以产生TU的亮度系数块。视频编码器20可将一或多个变换应用于TU的Cb变换块以产生TU的Cb系数块。视频编码器20可将一或多个变换应用于TU的Cr变换块以产生TU的Cr系数块。
在一些实例中,在使用CU的PU的帧内预测性或帧间预测性译码之后,视频编码器20可计算CU的TU的残余数据。PU可包括空间域(也被称作像素域)中的像素数据,且TU可包括在将变换(例如,离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换)应用于残余视频数据之后的变换域中的系数。残余数据可对应于未经编码的图片的像素与对应于PU的预测值之间的像素差。视频编码器20可形成包含CU的残余数据的TU,且随后变换所述TU以产生CU的变换系数。
在产生系数块(例如,亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可量化所述块中的系数。量化大体指变换系数经量化以可能减少用以表示变换系数的数据的量从而提供进一步压缩的过程。在视频编码器20量化系数块之后,视频编码器20可经配置以熵编码指示经量化变换系数的语法元素。举例来说,视频编码器20可对指示经量化变换系数的语法元素执行上下文自适应二进制算术译码(CABAC)。
在一些实例中,视频编码器20可利用预定义扫描次序(例如,水平、竖直或任何其它扫描次序)扫描经量化变换系数以产生可经熵编码的系列化向量。在其它实例中,视频编码器20可执行自适应性扫描。在扫描经量化变换系数以形成一维向量之后,视频编码器20可(例如)根据上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、机率区间分割熵(PIPE)译码或另一熵编码方法来对一维向量进行熵编码。视频编码器20也可熵编码与经编码的视频数据相关联的供由视频解码器30用于解码视频数据的语法元素。
为执行CABAC,视频编码器20可将上下文模型内的上下文指配到待发射的符号。所述上下文可涉及(例如)符号的邻近值是否为非零。为执行CAVLC,视频编码器20可选择用于待发射的符号的可变长度码。可将VLC中的代码字建构成使得相对较短代码对应于更有可能的符号,而较长代码对应于较不可能的符号。以此方式,相对于(例如)针对待发射的每一符号使用相等长度代码字,使用VLC可实现位节省。机率确定可基于经指配到符号的上下文而进行。
视频解码器30可接收由视频编码器20产生的位流。另外,视频解码器30可剖析位流以解码来自位流的语法元素。视频解码器30可至少部分基于从位流解码的语法元素重建视频数据的图片。重建视频数据的过程可大体上与由视频编码器20执行的过程互逆。举例来说,视频解码器30可使用PU的MV来确定当前CU的经帧间预测PU的预测性块。同样,视频解码器30可产生当前CU的PU的经帧内预测块。另外,视频解码器30可将与当前CU的TU相关联的变换系数块反量化。视频解码器30可对变换系数块执行反变换,以重建与当前CU的TU相关联的变换块。视频解码器30可通过将当前CU的PU的预测性块的样本添加到从当前CU的TU的变换块的反量化和反变换所获得的对应残余值,来重建当前CU的译码块。通过重建图片的每一CU的译码块,视频解码器30可重建图片。
视频编码器20和/或视频解码器30可经配置以根据本发明中描述的技术来操作。一般来说,视频编码器20和/或视频解码器30可经配置以执行本文中以任何组合描述的一或多种技术。
本文中介绍或另外描述关于块分区的某些设计方面和关于AVC和HEVC的运动预测,因为如本文所阐述,本发明的一或多个技术可与视频标准(例如,AVC和/或HEVC)一起使用或者增强视频标准、其扩展、处于开发中的视频标准或未来视频标准和类似者。
现将论述HEVC中的运动预测的方面。在HEVC标准中,存在可用于PU的两个帧间预测模式:合并模式(将跳过视为合并的特定情况)和高级运动向量预测(AMVP)。在AMVP合并模式中,为多个运动向量预测符维持运动向量(MV)候选者列表。当前PU的运动向量(以及合并模式中的参考索引)通过从MV候选者列表获取一个候选者而产生。MV候选者列表含有用于合并模式的至多5个候选者且仅两个候选者用于AMVP模式。合并候选者可含有一组运动信息,例如对应于两个参考图片列表(列表0和列表1)的运动向量和参考索引。如果由合并索引来识别合并候选者,那么参考图片用于当前块的预测,以及确定相关联的运动向量。然而,在针对来自列表0或列表1的每一潜在预测方向的AMVP模式下,需要明确地将参考索引连同MVP索引用信号发送到MV候选者列表,因为AMVP候选者仅含有运动向量。在AMVP模式中,可进一步改进经预测运动向量。如上文已描述,HEVC中的合并候选者对应于一完整组运动信息,而HEVC中的AMVP候选者仅含有一个特定预测方向的运动向量和参考索引。合并模式和AMVP模式两者的候选者类似地从相同空间和时间邻近块导出。
图3A和3B分别展示用于合并和AMVP模式的空间邻近MV候选者。空间MV候选者从图3A和3B中所展示的邻近块导出以用于特定PU(所展示实例中的PU0)。如下文将更详细地描述,候选者从邻近块之产生因合并模式和AMVP模式而不同。
在合并模式中,至多四个空间MV候选者可按图3A中所展示的次序导出:左侧(0)、上方(1)、右上方(2)、左下方(3)和左上方(4)。在AMVP模式中,邻近块划分成两个群:由块0和1组成的左侧群,和由块2、3和4组成的上方群,如图3B中所展示。对于每一群,参考与由用信号发送的参考索引指示的相同参考图片的邻近块中的潜在候选者具有待选择的最高优先权以形成所述群的最终候选者。有可能所有相邻块均不含指向相同参考图片的运动向量。因此,如果无法发现此类候选者,那么将按比例调整第一可用候选者以形成最终候选者,因此可补偿时间距离差异。
时间运动向量预测符(TMVP)候选者(如果启用且可用)在空间运动向量候选者之后添加到MV候选者列表中。用于TMVP候选者的运动向量导出的过程对于合并和AMVP模式两者相同,合并模式中的TMVP候选者的目标参考索引始终设定为0。用于TMVP候选者导出的主要块位置为相同位置PU底部右侧块外部(在图4A中展示为块“T”)以补偿用于产生空间邻近候选者的上方和左侧块的偏差。然而,如果块位于当前CTB行的外部或运动信息不可用,那么块被PU的中央块取代。
如图4B中所展示,TMVP候选者的运动向量从相同位置图片的相同位置PU导出,指示于切片层级中。类似于AVC中的时间直接模式,TMVP候选者的运动向量可具有经执行以补偿距离差异的运动向量调整。
现将描述HEVC中的运动预测的其它方面。一个此方面为运动向量调整。假定在呈现时间上运动向量的值与图片的距离成比例。运动向量相关联两个图片,参考图片和含有运动向量的图片(即含有图片)。当利用运动向量预测其它运动向量时,含有图片和参考图片的距离基于图片次数计数(POC)值而计算。
对于待预测的运动向量,其相关联的含有图片和参考图片可不同。因此,计算新距离(基于POC)。且运动向量基于这两个POC距离按比例调整。对于空间邻近候选者,用于两个运动向量的含有图片相同,而参考图片不同。在HEVC中,运动向量调整适用于空间和时间邻近候选者的TMVP和AMVP两者。
HEVC中的运动预测的另一方面为人造运动向量候选者产生。如果运动向量候选者列表不完整,那么人造运动向量候选者产生且插入在列表末端,直到其将具有全部候选者。在合并模式中,存在两个类型的人造MV候选者:仅针对B切片导出的合并候选者和仅针对AMVP使用的零候选者,如果第一类型并未提供足够人造候选者。对于已在候选者列表中且具有必需运动信息的每一对候选者,双向合并运动向量候选者通过参考列表0中的图片的第一候选者的运动向量与参考列表1中的图片的第二候选者的运动向量的组合导出。
HEVC中的运动预测的另一方面为用于候选者插入的精简过程。来自不同块的候选者可恰巧相同,此降低合并模式或AMVP模式候选者列表的效率。精简过程比较当前候选者列表中的一个候选者与其它,以避免插入相同候选者。
现将介绍重叠块运动补偿(OBMC)的通用概念。OBMC涵盖于较早视频标准中。重叠块运动补偿(OBMC)提出于H.263(用于低位速率通信的视频译码(Video Coding for LowBitrate Communication),文件推荐H.263,ITU-T,1995年四月)的开发中。可对当前16×16宏块的当前8×8块执行OBMC,且两个经连接邻近8×8块的运动向量可用于如图5中所展示的当前8×8块。举例来说,对于当前宏块中的第一8×8块(例如,通过图5中的编号“1”识别的块),除使用其自身运动向量产生的预测块之外,也应用上方和左侧邻近运动向量产生两个额外预测块。以此方式,当前8×8块中的每一像素具有三个预测值,且这三个预测值的加权平均值用作当前8×8块中的每一像素的最终预测值。作为另一实例,对于当前宏块中的第二8×8块(例如,通过图5中的编号“2”识别的块),除使用其自身运动向量产生的预测块之外,也可应用上方和右侧邻近运动向量产生两个额外预测块。以此方式,当前8×8块中的每一像素具有三个预测值,且这三个预测值的加权平均值用作当前8×8块中的每一像素的最终预测值。
图5展示OBMC如何实施于H.263中的实例。当邻近块未经译码或经译码为帧内(即,邻近块并不具有可用运动向量)时,当前8×8块的运动向量用作邻近运动向量。现参考当前宏块的第三和第四8×8块(例如,分别通过图5中的编号“3”和“4”识别的块),下方邻近块始终不使用(即,视为不可用)。换句话说,对于当前宏块,来自当前宏块下方的宏块的运动信息在OBMC期间不将用于重建当前宏块的像素。而是,对于块3,来自左侧相邻者的运动信息可用于OBMC,且对于块4,来自右侧相邻者的运动信息可用于OBMC,但块3和4下方的块假设未经译码且并不用于OBMC。
OBMC针对HEVC而提出。在HEVC中,OBMC也经提出以使PU边界平滑。图6A和6B中展示所提出的HEVC中的OBMC的方法的实例。在图6A和6B中,基于PU的OBMC使用白色区域说明以表示第一PU(例如,PU0),且阴影区域表示第二PU(例如,PU1)。如针对HEVC所提出,当CU含有两个或多于两个PU时,靠近PU边界的行或列通过OBMC而平滑。对于第一PU和第二PU中的通过“A”或“B”标记的像素,两个预测值通过分别应用第一PU(PU0)和第二PU(PU1)的运动向量而产生。如针对HEVC所提出,两个预测值的加权平均将用作最终预测。
在HEVC中,每一PU含有仅一组运动信息。然而,当基于子PU的运动预测/导出应用时,PU可划分成子PU,其中每一子PU含有一组运动信息。当PU拆分成多个子PU时,每一子PU可分别得到运动补偿。举例来说,子PU过程可适用于时间运动向量预测且其被称为高级时间运动向量预测(ATMVP)。
现将论述子块的方面。在后滤波过程(例如解块)中,解码过程可以并未完全遵循PU的结构但待处理的最小块的大小的方式应用。此类最小处理块被称为子块。子块可具有正方形或非正方形形状。子块通常属于PU且因此子块大小小于或等于最小PU的大小。
图7A到7C中说明实例以展示子PU与子块之间的关系。如可所见,子块大小可小于(图7A)、等于(图7B)或大于(图7C)子PU大小。
先前所提出的和当前技术可具有一些限制。作为一个实例,用于HEVC的现有OBMC方法主要对PU、宏块或子宏块边界执行。作为另一实例,不清楚如何使用其它CU的运动信息来预测OBMC中的当前PU。作为另一实例,在当前PU含有子PU时,基于PU的OBMC方法可能不有效起作用。为潜在地解决上文所识别的问题和限制,本发明引入若干技术。本发明的技术可单独地应用,或替代地,其任何组合可应用。如本文所使用,在本发明中参考信息可被视为运动信息的一部分。
下文所描述的技术用于重叠块运动补偿(OBMC)。在一些实例中,如本文所描述,OBMC可指涉及使用来自邻近当前块的一或多个块的运动信息和执行加权平均以产生当前块的预测块的任何过程。在这些实例中,可对边界、块的一部分、块的切片或整个块执行OBMC。在其它实例中,如本文所描述,OBMC可指涉及使用(i)基于来自邻近当前块的一或多个块的运动信息的一或多个预测块和(ii)基于当前块的运动信息的预测块的加权平均的任何过程。在这些实例中,可对边界、块的一部分、块的切片或整个块执行OBMC。在其它实例中,如本文所描述的,OBMC可指利用当前块和一或多个邻近块产生多个运动向量,且针对当前块将其合并(例如,求平均值)。
本发明的第一技术为基于子块的OBMC。在此第一技术之下,视频编码器20和/或视频解码器30可经配置以为PU或CU(例如,当前PU或CU)内的每一子块执行OBMC。举例来说,视频编码器20和/或视频解码器30可经配置以为PU或CU内的每一子块执行OBMC,而非经配置以仅执行OBMC,从而使PU边界平滑。如上文所描述,在一些实例中,子块可指PU的子块;且,在这些实例中,子块大小可小于或等于最小PU的大小。在其它实例中,子块可指不同于PU的子块的某物。举例来说,子块可指CU的子块。下文更详细地论述子块的大小。根据此第一技术且根据一些实例,视频编码器20和/或视频解码器30可经配置以通过使用邻近经编码和/或经解码的当前子块的子块的运动信息而执行OBMC。
根据此第一技术和其它实例,视频编码器20和/或视频解码器30可经配置以确定邻近当前子块的一或多个子块属于未经解码CU。在一些实例中,“未经解码”CU可指在当前子块正由视频编码器20和/或视频解码器30解码时,尚未由视频编码器20和/或视频解码器30解码的CU。在这些实例中,由视频解码器30接收的尚未由视频解码器30解码的CU可被称作“未经解码”CU。举例来说,视频解码器30可经配置以根据扫描次序解码多个块,且未经解码CU可以扫描次序定位使得未经解码CU将在当前子块之后的某时经解码。基于确定一或多个邻近子块属于未经解码CU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码CU的一或多个邻近子块对于基于子块的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近子块的运动信息而为当前子块执行OBMC。
在其它实例中,视频编码器20和/或视频解码器30可经配置以确定邻近当前子块的一或多个子块属于未经解码LCU。在一些实例中,“未经解码”LCU可指在当前子块正由视频编码器20和/或视频解码器30解码时,尚未由视频编码器20和/或视频解码器30解码的LCU。在这些实例中,由视频解码器30接收的尚未由视频解码器30解码的LCU可被称作“未经解码”LCU。举例来说,视频解码器30可经配置以根据扫描次序解码多个块,且未经解码LCU可以扫描次序定位使得未经解码LCU将在当前子块之后的某时经解码。基于确定一或多个邻近子块属于未经解码LCU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码LCU的一或多个邻近子块对于基于子块的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近子块的运动信息而为当前子块执行OBMC。
在其它实例中,视频编码器20和/或视频解码器30可经配置以确定邻近当前子块的一或多个子块属于未经解码PU。在一些实例中,“未经解码”PU可指在当前子块正由视频编码器20和/或视频解码器30解码时,尚未由视频编码器20和/或视频解码器30解码的PU。在这些实例中,由视频解码器30接收的尚未由视频解码器30解码的PU可被称作“未经解码”PU。举例来说,视频解码器30可经配置以根据扫描次序解码多个块,且未经解码PU可以扫描次序定位使得未经解码PU将在当前子块之后的某时经解码。基于确定一或多个邻近子块属于未经解码PU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码PU的一或多个邻近子块对于基于子块的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近子块的运动信息而为当前子块执行OBMC。
在其它实例中,视频编码器20和/或视频解码器30可经配置以确定邻近当前子块的一或多个子块属于未经解码子块。在一些实例中,“未经解码”子块可指在当前子块正由视频编码器20和/或视频解码器30解码时尚未由视频编码器20和/或视频解码器30解码的子块。在这些实例中,由视频解码器30接收的尚未由视频解码器30解码的子块可被称作“未经解码”子块。举例来说,视频解码器30可经配置以根据扫描次序解码多个块,且未经解码子块可以扫描次序定位使得未经解码子块将在当前子块之后的某时经解码。基于确定一或多个邻近子块属于未经解码子块,视频编码器20和/或视频解码器30可经配置以确定属于未经解码子块的一或多个邻近子块对于基于子块的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近子块的运动信息而为当前子块执行OBMC。
根据此第一技术,子块的大小可等于CU的最小PU大小。在其它实例中,子块可具有小于最小PU大小的大小。举例来说,N×N可表示最小运动块大小,且子块大小(例如,子PU大小)可等于N×N,其中N为正整数。在此实例中,如果最小PU大小为8×4或4×8,那么子块大小可等于4×4。在另一实例中,N×M可表示最小运动块大小,且子块大小(例如,子PU大小)可设定为N×M,其中M和N为正整数且可或可不等于彼此。在此实例中,如果最小PU大小为8×8,那么子块大小可等于4×4、8×4或4×8。
在另一实例中,子块的大小也可为任何预定义值。预定义子块大小可(例如)大于最小PU大小。在另一实例中,子块的大小可于参数集中用信号发送。在另一实例中,子块的大小可取决于当前PU或CU(即,当前子块属于的当前PU或CU)大小。在另一实例中,子块的大小可取决于视频编码器20和/或视频解码器30经配置以对其执行OBMC的块大小。在另一实例中,子块的大小可取决于当前PU或CU(即,当前子块属于的当前PU或CU)大小以及一或多个邻近PU或CU(即,邻近当前子块属于的PU或CU的一或多个PU或CU)的大小。
本发明的第二技术为基于子PU的OBMC。在此第二技术之下,视频编码器20和/或视频解码器30可经配置以为PU或CU内的通过子PU(例如,当前PU或CU)译码的每一子PU执行OBMC。每一子PU可含有其自身组运动信息,例如,包含运动向量和参考图片列表索引。在一些实例中,视频编码器20和/或视频解码器30可经配置以使用PU或CU内的一或多个邻近子PU的运动信息为当前PU或CU内的一或多个子PU执行OBMC。在其它实例中,视频编码器20和/或视频解码器30可经配置以使用当前PU或CU内的一或多个邻近子PU的运动信息连同当前PU或CU外部的一或多个邻近块的运动信息为当前PU或CU内的一或多个子PU执行OBMC。
根据此第二技术和一些实例,对于每一子PU,其邻近块可为同一PU或CU(例如,当前PU或CU)内的邻近子PU和当前PU或CU(即,当前PU或当前CU)外部的邻近块。在其它实例中,如果邻近块与当前子PU具有相同大小,那么视频编码器20和/或视频解码器30可经配置以使用当前PU或CU外部(即,当前PU外部或当前CU外部)的邻近块来对当前PU或CU的当前子PU执行OBMC。在这些实例中,即使当前PU或CU的邻近块含有超过一组运动信息,视频编码器20和/或视频解码器30也可经配置以利用邻近块的仅一组运动信息。同样在这些实例中,如果当前PU或CU外部的邻近块具有不同于当前子PU的大小的大小,那么视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定具有不同于当前子PU的大小的大小的一或多个邻近块的运动信息而为当前子PU执行OBMC。
在其它实例中,如果邻近块小于当前子PU的大小,那么视频编码器20和/或视频解码器30可经配置以使用当前PU或CU外部的邻近块来对当前PU或CU的当前子PU执行OBMC。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过使用当前子PU的一或多个子块为当前子PU执行OBMC。在一些实例中,视频编码器20和/或视频解码器30可经配置以将PU的任何边界子PU划分到子块中。在这些实例中,视频编码器20和/或视频解码器30可经配置以为每一子块执行OBMC。
在其它实例中,与当前PU或CU外部的任何像素不邻接的子PU可仅使用邻近子PU而预测。在这些实例中,视频编码器20和/或视频解码器30可经配置以确定当前子PU不与当前PU或CU外部的任何像素邻接,且可经配置以仅使用邻近子PU为当前子PU执行OBMC。
同样根据本发明的第二技术且在一些实例中,视频编码器20和/或视频解码器30可经配置以确定当前子PU的一或多个邻近块属于未经解码CU。基于确定一或多个邻近块属于未经解码CU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码CU的一或多个邻近块对于基于子PU的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近块的运动信息而为当前子PU执行OBMC。
同样根据本发明的第二技术且在一些实例中,视频编码器20和/或视频解码器30可经配置以确定当前子PU的一或多个邻近块属于未经解码LCU。基于确定一或多个邻近块属于未经解码LCU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码LCU的一或多个邻近块对于基于子PU的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近块的运动信息而为当前子PU执行OBMC。
同样根据本发明的第二技术且在一些实例中,视频编码器20和/或视频解码器30可经配置以确定当前子PU的一或多个邻近块属于未经解码PU(例如,经编码PU)。基于确定一或多个邻近块属于未经解码PU,视频编码器20和/或视频解码器30可经配置以确定属于未经解码PU的一或多个邻近块对于基于子PU的OBMC不可用。在这些实例中,视频编码器20和/或视频解码器30可经配置以通过不使用(例如,排除)确定为不可用的一或多个邻近块的运动信息而为当前子PU执行OBMC。
本发明的第三技术是基于CU边界的OBMC。在此第三技术下,视频编码器20和/或视频解码器30可经配置以为一或多个CU边界执行OBMC。在这些实例中,视频编码器20和/或视频解码器30可经配置以同样为一或多个PU边界执行OBMC。
参考当前CU的顶部和左侧边界,视频编码器20和/或视频解码器30可经配置以使用不属于当前CU但毗邻当前CU的顶部和/或左侧边界(例如,边)的一或多个邻近块的运动信息来以类似于本文中关于第一技术所描述的方式产生额外预测符。举例来说,视频编码器20和/或视频解码器30可经配置以通过使用来自当前CU的左侧的邻近块(例如,邻近CU)和/或当前CU的顶部的邻近块(例如,邻近CU)的CU边界(例如,当前CU的顶部和/或左侧边界)上的块的运动信息中的全部或一些为CU边界(例如,当前CU边界)执行OBMC。
在此实例中,视频编码器20和/或视频解码器30可经配置以按以下方式为CU边界执行OBMC:对于位于顶部CU边界上的当前CU的每一最小块,视频编码器20和/或视频解码器30可经配置以使用用于顶部CU边界的OBMC的每一最小块的顶部邻近块的运动信息,且额外预测符用于形成具有CU的当前块的最终预测信号。对于位于左侧CU边界上的当前CU的每一最小块,视频编码器20和/或视频解码器30可经配置以使用用于左侧CU边界的OBMC的每一最小块的左侧邻近块的运动信息,且额外预测符用于形成当前块的最终预测信号。
在一些实例中,视频编码器20和/或视频解码器30可经配置以仅对左侧CU和/或顶部CU边界执行OBMC。在其它实例中,视频编码器20和/或视频解码器30可经配置以对左侧CU、顶部CU、右侧CU和/或底部CU边界执行OBMC。在这些实例中,视频编码器20和/或视频解码器30可经配置以如上文关于左侧和顶部CU边界所描述的类似方式对右侧CU和/或底部CU边界执行OBMC。举例来说,对于位于右侧CU边界上的当前CU的每一最小块,视频编码器20和/或视频解码器30可经配置以使用用于右侧CU边界的OBMC的每一最小块的顶部邻近块的运动信息,且额外预测符用于形成具有CU的当前块的最终预测信号。对于位于底部CU边界上的当前CU的每一最小块,视频编码器20和/或视频解码器30可经配置以使用用于底部CU边界的OBMC的每一最小块的底部邻近块的运动信息,且额外预测器用于形成具有CU的当前块的最终预测信号。
在一些实例中,视频编码器20和/或视频解码器30可经配置以次取样或压缩来自邻近CU的运动信息。在这些实例中,视频编码器20和/或视频解码器30可经配置以使用邻近CU的经次取样或经压缩运动信息来产生当前CU的一或多个额外预测符。举例来说,视频编码器20和/或视频解码器30可经配置以基于子块而非最小块大小来次取样或压缩邻近CU的运动信息,意味着如果邻近CU具有具有个别MV'的多个子块(例如,PU'),那么视频编码器20和/或视频解码器30可经配置以将单一MV用于一群(例如,组)PU'且将另一单一MV用于另一群PU'。
在一些实例中,视频编码器20和/或视频解码器30可经配置以停用与本发明的第三技术和/或本发明的另一技术相关的OBMC。举例来说,如果(例如,当以下情况时)当前CU的大小小于子块大小,那么视频编码器20和/或视频解码器30可经配置以为当前CU内的PU停用OBMC。在此实例中,视频编码器20和/或视频解码器30可经配置以确定当前CU的大小且比较所确定的当前CU的大小与子块的大小,以确定当前CU的大小是否小于子块大小。基于确定当前CU的大小小于子块大小,视频编码器20和/或视频解码器30可经配置以为当前CU内的PU停用OBMC。
作为另一实例,如果(例如,当以下情况时)PU边界并非子块边界(例如,不含有任何子块的边界),那么视频编码器20和/或视频解码器30可经配置以为PU边界停用OBMC。在此实例中,子块大于PU,且PU边界可位于子块内部。PU边界可能是或可能不是子块边界。因此,视频编码器20和/或视频解码器30可经配置以沿着PU边界停用(例如,跳过)OBMC,从而降低编码和/或解码复杂度。作为另一实例,视频编码器20和/或视频解码器30可经配置以为右侧CU和/或底部CU边界停用OBMC。
本发明的第四技术包含以上三个所描述的第一、第二和第三OBMC技术的共同方面。在一些实例中,视频编码器20和/或视频解码器30可经配置以使用邻近子块、邻近子PU或邻近块的运动向量来分别产生当前子块、当前子PU或当前块的额外预测符。在这些实例中,视频编码器20和/或视频解码器30可经配置以使用额外预测符来分别形成当前子块、当前子PU或当前块的最终预测信号。
根据此第四技术和其它实例,视频编码器20和/或视频解码器30可经配置以使用当前子块、当前子PU或当前块的至多预定义数目相邻者以用于OBMC。在这些实例中,预定义数目可为八或不同于八的数目。根据一个实例,视频编码器20和/或视频解码器30可经配置以使用四个连接相邻者块(例如,上方、下方、左侧和右侧邻近子块)的运动信息(例如,运动向量)以用于OBMC。如本文所使用,参考“以用于OBMC”可指“以执行OBMC”。
在一些实例中,如果(例如,当以下情况时)邻近子块、邻近子PU或邻近块含有多组运动信息,那么视频编码器20和/或视频解码器30可经配置以选择仅一组运动信息。举例来说,如果子块大小为8×8且运动信息基于4×4存储,那么视频编码器20和/或视频解码器30可经配置以仅选择对应于此特定实例中的8×8子块的一组运动信息。
视频编码器20和/或视频解码器30可经配置以根据一或多个技术选择单一组运动信息。在一个实例中,视频编码器20和/或视频解码器30可经配置以基于子块、子PU或块的中央像素选择所述组运动信息。举例来说,视频编码器20和/或视频解码器30可经配置以选择包含子块、子PU或块的中央像素的子块、子PU或块的所述组运动信息。因此,如果存在PU的多组运动信息,那么含有中央像素的块的单一组运动信息可用于当前块的OBMC。在另一实例中,视频编码器20和/或视频解码器30可经配置以基于属于邻近于当前子块、子PU或块的最小运动块的一组运动信息选择所述组运动信息。举例来说,视频编码器20和/或视频解码器30可经配置以选择属于邻近于当前子块、子PU或块的最小运动块的所述组运动信息。如果存在多个此类运动块,那么视频编码器20和/或视频解码器30可经配置以按(例如)光栅扫描次序选择多者中的最早(或第一经解码)运动块。
在另一实例中,视频编码器20和/或视频解码器30可经配置以比较邻近子块的全部运动信息与当前PU、CU或块的运动信息。根据此比较,视频编码器20和/或视频解码器30可经配置以选择最类似于当前PU、CU或块的运动信息的运动信息。根据此比较,视频编码器20和/或视频解码器30可经配置以选择最不同于当前PU、CU或块的运动信息的运动信息。
在一些实例中,视频编码器20和/或视频解码器30可经配置以使用任何连接邻近子块、子PU或块的子组的运动信息以用于OBMC。在实例中,视频编码器20和/或视频解码器30可经配置以使用当前块的仅左侧和右侧相邻者以执行OBMC。在另一实例中,视频编码器20和/或视频解码器30可经配置以使用当前块的仅上方和下方相邻者以执行OBMC。在另一实例中,视频编码器20和/或视频解码器30可经配置以使用当前块的上方或下方相邻者中的仅一者和左侧或右侧相邻者中的一者以执行OBMC。在另一实例中,视频编码器20和/或视频解码器30可经配置以使用当前块的四个连接相邻者中的仅一者以执行OBMC。在又另一实例中,视频编码器20和/或视频解码器30可经配置以基于当前PU或CU内的子块的相对定位选择邻近块的子组。
视频编码器20和/或视频解码器30可经配置以根据本文中所描述的一或多个技术确定邻近子块、子PU或块不可用。举例来说,帧内块可视为不可用、当前切片或图像块外部(或部分外部)的块可视为不可用、在使用波前时视为不可用的块可视为不可用、尚未经解码(例如,至少其运动向量尚未经解码)的块可视为不可用,和/或在邻近块或子块不属于当前CTU时邻近块或子块可视为不可用。
根据本发明的第五技术,视频编码器20和/或视频解码器30可经配置以使用每一可用邻近子块的运动信息(例如,运动向量)为当前子块执行OBMC,从而产生预测块。在一些实例中,预测块可表示为PN,其中N指示邻近当前子块的邻近块的下标/标志(例如,等于上方、下方、左侧或右侧)。视频编码器20和/或视频解码器30可经配置以使用一或多个邻近块的一或多个预测块来更新当前子块的预测块,所述预测块可表示为PC。举例来说,视频编码器20和/或视频解码器30可经配置以产生当前块的最终预测块(即,当前子块的经更新预测块),所述最终预测块可为(i)基于来自邻近当前块的一或多个块的运动信息的一或多个预测块与(ii)基于当前子块的运动信息的预测块的加权平均。
在一些实例中,视频编码器20和/或视频解码器30可经配置以确定如果(例如,当以下情况时)当前块的一或多个邻近子块含有超过一个子PU,哪一者可指示多组运动信息。在这些实例中,基于确定当前子块的一或多个邻近子块含有超过一个子PU,视频编码器20和/或视频解码器30可经配置以使用邻近当前子块的这些子PU中的一或多者的运动信息来对当前子块执行OBMC。举例来说,视频编码器20和/或视频解码器30可经配置以不使用或另外排除来自不邻近当前子块的子PU的运动信息。在其它实例中,视频编码器20和/或视频解码器30可经配置以使用当前子块的邻近块的任何子PU的运动信息来对当前子块执行OBMC,无论邻近块的任何子PU是否邻近当前子块。
根据本发明的第六技术,视频编码器20和/或视频解码器30可经配置以对具有正方形或非正方形尺寸(例如,矩形)的任何块(例如,PU或CU)执行OBMC。在其它实例中,视频编码器20和/或视频解码器30可经配置以对具有特定类型或大小的块(例如,CU或PU)(例如,预定义类型或大小,通过合并模式以HEVC译码的PU、通过类似于合并模式的模式以不同于HEVC的译码标准译码的PU或大于32×32的PU)执行OBMC。
根据本发明的第七技术,视频编码器20和/或视频解码器30可经配置以使用每一可用邻近子块、子PU或块的运动信息(例如,运动向量)为当前子块、子PU或块执行OBMC,从而产生预测块。在一些实例中,预测块可表示为PN,其中N指示邻近当前子块、子PU或块的邻近块的下标/标志(例如,等于上方、下方、左侧或右侧)。视频编码器20和/或视频解码器30可经配置以使用一或多个邻近块的一或多个预测块来更新当前块(例如,子块、子PU或块)的预测块,所述预测块可表示为PC
在一些实例中,视频编码器20和/或视频解码器30可经配置以执行加权平均以更新PC。在这些实例中,视频编码器20和/或视频解码器30可经配置以执行(i)来自邻近块的运动信息(例如,一或多个运动向量)的预测块PN的一或多个K行或列与(ii)当前预测块PC的对应一或多个行或列的加权平均,以更新PC。在一些实例中,视频编码器20和/或视频解码器30可经配置以将不同权重指配到不同位置(例如,不同行或列)。在一些实例中,K可设定等于1、2、3或4的值。一或多个K行或列是最接近如由N所指示的邻近块的那些。举例来说,如果邻近块是当前块的左侧邻近块或右侧邻近块,那么视频编码器20和/或视频解码器30可经配置以执行(i)来自邻近块的运动信息(例如,一或多个运动向量)的预测块PN的一或多个K列与(ii)当前预测块PC的一或多个对应列的加权平均,以更新PC。作为另一实例,如果邻近块是当前块的顶部邻近块或底部邻近块,那么视频编码器20和/或视频解码器30可经配置以执行(i)来自邻近块的运动信息(例如,一或多个运动向量)的预测块PN的一或多个K行与(ii)当前预测块PC的一或多个对应行的加权平均,以更新PC
参考下方表1,x和y可表示相对于当前子块、子PU或块的左上方像素的竖直和水平座标。PC(x,y)和PN(x,y)的权重分别表示为w1(x,y)和w2(x,y)。在一些实例中,视频编码器20和/或视频解码器30可经配置以执行加权平均来更新PC,使得经更新PC(x,y)等于w1(x,y)×PC(x,y)+w2(x,y)×PN(x,y)。当前子块、子PU或块的宽度和高度可分别表示为W和H。举例来说,W-1可指当前子块、子PU或块的最后一列(例如,离右侧最远的列)。作为另一实例,H-1可指当前子块、子PU或块的最后一行(例如,最底部行)。作为另一实例,H-2可指当前子块、子PU或块的倒数第二行(例如,第二最底部行,其可描述为最后一行上方的第一行)。N的值可指本文中所描述的预测块PN的N。权重w1和w2的一个实例经指定于下方表1中。
表1(用于OBMC的实例权重):
Figure BDA0001356984580000241
Figure BDA0001356984580000251
在一些实例中,当N等于上方时,视频编码器20和/或视频解码器30可经配置以执行加权平均使得PC的顶部四行通过PN更新。类似地,当N等于下方时,视频编码器20和/或视频解码器30可经配置以执行加权平均使得PC的底部四行通过PN更新。作为另一实例,当N等于左侧时,视频编码器20和/或视频解码器30可经配置以执行加权平均使得PC的左侧四列通过PN更新。类似地,当N等于右侧时,视频编码器20和/或视频解码器30可经配置以执行加权平均使得PC的右侧四列通过PN更新。
在其它实例中,视频编码器20和/或视频解码器30可经配置以通过PN更新PC的一行或列。位置和权重根据这些实例在上方表1中[加括号]。
在其它实例中,视频编码器20和/或视频解码器30可经配置以通过PN更新PC的两行或列。根据这些实例的两行或列的位置和权重在上方表1中[加括号]且加单下划线(例如,每一N值的前/顶部两行)。
在其它实例中,视频编码器20和/或视频解码器30可经配置以通过PN更新PC的三行或列。根据这些实例的三行或列的权重和位置在上方表1中[加括号]、加单下划线
Figure BDA0001356984580000252
(例如,每一N值的前/顶部三行)。
在其它实例中,视频编码器20和/或视频解码器30可经配置以基于当前子块、子PU或块的大小选择行(例如,一或多个行)的数目或列(例如,一或多个列)的数目。举例来说,如果当前子块、子PU或块具有第一大小,那么视频编码器20和/或视频解码器30可经配置以选择更多行或列;且如果当前子块、子PU或块具有第二大小,那么选择较少行或列。举例来说,在当前PU大小等于8×4或4×8和/或当前PU通过子PU模式译码时(例如,意味着当前PU包含一或多个子PU),视频编码器20和/或视频解码器30可经配置以通过PN仅仅更新PC的两行或列。作为另一实例,在当前PU大小大于8×4或4×8时,视频编码器20和/或视频解码器30可经配置以通过PN更新PC的四行或列。
在又其它实例中,视频编码器20和/或视频解码器30可经配置以通过PN的对应像素更新PC的每个像素。
在一些实例中,视频编码器20和/或视频解码器30可经配置以通过使用一或多个新增和移位操作而实施用于任何加权平均的权重。在这些实例或其它实例中,视频编码器20和/或视频解码器30可经配置以实施权重(例如,表1中所展示的权重或不同于表1中所展示的权重的权重),使得w1(x,y)+w2(x,y)等于1。
在一些实例中,通过PN更新的PC的行或列数目可取决于(例如,基于)当前预测块的大小。在这些实例中,当前预测块的大小可对应于子块、子PU、PU或CU的大小。在一些实例中,通过PN更新的PC的行数目可取决于W。举例来说,当H较大(例如,具有第一值)时,视频编码器20和/或视频解码器30可经配置以更新更多行。作为另一实例,当H较小(例如,具有小于第一值的第二值)时,视频编码器20和/或视频解码器30可经配置以更新较少行。作为另一实例,当W较大(例如,具有第一值)时,视频编码器20和/或视频解码器30可经配置以更新列行。作为另一实例,当W较小(例如,具有小于第一值的第二值)时,视频编码器20和/或视频解码器30可经配置以更新较少列。
根据本发明的第八技术,当多个相邻者提供其中每一者表示为PN的多个预测符时,预测符PN与当前预测符PC的组成可以一次序逐个地完成。此处,预测符可意味着预测块,所述预测块可由使用由邻近块的运动信息的帧间预测确定的像素值的块构成。举例来说,在每一组成之后,当前预测符PC可更新且在组成之前与当前预测符保持同一位深度,所述位深度可以是每一色彩分量的内部处理位深度。在每一组成期间,用于每一像素的加权过程可包含舍入值r,使得加权过程经改变为(a1(x,y)×PC(x,y)+a2(x,y)×PN(x,y)+r)/S,其中a1/S和a2/S分别等于w1和w2。在一些实例中,r可设定为0或S/2。在此实例中,a1是w1的经量化值、a2是w2的经量化值且S是归一化因数。
在一些实例中,次序在四个预测符可用时可为上方、左侧、底部、右侧。在其它实例中,次序在四个预测符可用时可为左侧、上方、底部、右侧。在其它实例中,次序在四个预测符可用时可为不同于上方两个实例的任何次序。
在一些实例中,如果(例如,当以下情况时)邻近块并未含有运动信息(因为这可指示PN不可用),那么视频编码器20和/或视频解码器30可经配置以跳过组成过程。在其它实例中,视频编码器20和/或视频解码器30可经配置以收集全部预测符(例如,全部PN)且执行使用全部预测符的联合加权预测过程。在这些实例中,视频编码器20和/或视频解码器30可经配置以确定一或多个PN不可用,且可经配置以将确定为不可用的一或多个PN设定为等于PC
在一些实例中,在每一组成期间(例如,当为一或多个预测块PN的每一组成执行加权平均过程时),视频编码器20和/或视频解码器30可经配置以通过位深度增大更新当前预测符PC。举例来说,视频编码器20和/或视频解码器30可经配置以在处理下一组成之前在不执行去调整操作的情况下更新当前预测符PC。视频编码器20和/或视频解码器30可经配置以在已经处理全部组成之后执行去调整操作。去调整是关于通过上述标准化因数S划分,此可将加权组成值带到每一输入预测的同一层级。通过在已经处理全部组成之后去调整,视频解码器30可经配置以通过依次处理组成和使用联合加权预测过程获得相同最终预测结果。这些设计可在多个边界OBMC应用到同一预测块时提供实施的灵活性。
根据本发明的第九技术,视频编码器20和/或视频解码器30可经配置自适应性地启用或停用(例如,接通或断开)CU、PU或任何其它块层级处的OBMC。举例来说,当为特定块层级启用OBMC时,视频编码器20和/或视频解码器30可经配置以为所述特定块层级执行使用本文中所描述的一或多个技术的OBMC。作为另一实例,当为特定块层级停用OBMC时,视频编码器20和/或视频解码器30可经配置以不为所述特定块层级执行使用本文中所描述的一或多个技术的OBMC。
在一些实例中,视频编码器20可经配置以通过用信号发送OBMC旗标而自适应性地启用或停用(例如,接通或断开)CU、PU或任何其它块层级处的OBMC。在一些实例中,视频编码器20可经配置以用信号发送,且视频解码器30可经配置以接收OBMC语法元素,例如具有指示是否为特定块启用或停用OBMC的值的OBMC旗标。举例来说,视频编码器20可经配置以用信号发送用于每一经帧间译码CU、PU或块的OBMC旗标。在一些实例中,OBMC旗标可以是二进制且具有两个值中的一者。OBMC旗标的第一值可指示OBMC经启用,且OBMC旗标的第二值可指示OBMC经停用。举例来说,当OBMC旗标为真(例如,具有对应于第一值的值)时,OBMC为当前CU、PU或块应用(例如,经启用)。作为另一实例,当OBMC旗标为假(例如,具有对应于第二值的值)时,OBMC不为当前CU、PU或块应用(例如,经停用)。
类似地,视频解码器30可经配置以接收OBMC旗标且确定OBMC旗标的值。举例来说,视频解码器30可经配置以从视频编码器20接收由视频编码器20产生的位流中的OBMC旗标。在一些实例中,对应于OBMC旗标的值指示是否为正在经解码的视频数据的块(例如,CU、PU或其它块)启用或停用OBMC。在这些实例中,视频解码器30可经配置以接收OBMC旗标,所述OBMC旗标具有指示是否为特定块启用或停用OBMC的值。举例来说,视频解码器30可经配置以接收用于每一经帧间译码CU、PU或块的OBMC旗标。OBMC旗标的第一值可指示OBMC经启用,且OBMC旗标的第二值可指示OBMC经停用。举例来说,当OBMC旗标为真(例如,具有对应于第一值的值)时,视频解码器30可经配置以确定OBMC为当前CU、PU或块应用(例如,经启用)。作为另一实例,当OBMC旗标为假(例如,具有对应于第二值的值)时,视频解码器30可经配置以确定OBMC不为当前CU、PU或块应用(例如,经停用)。
在一些实例中,视频编码器20可经配置以基于用于CU、PU或块的一或多个分割类型,用于CU、PU或块的预测模式(例如,合并模式或AMVP模式)或CU、PU或块的大小而用信号发送仅用于CU、PU或块的OBMC旗标。在这些实例中,视频编码器20可经配置以确定对应于CU、PU或块的分割类型、预测模式和/或大小,且基于以下中的一或多者的确定用信号发送OBMC旗标:对应于CU、PU或块的分割类型、预测模式和/或大小。
在一个实例中,仅当CU、PU或块不通过2N×2N合并模式译码且CU、PU或块的大小小于或等于16×16时,视频编码器20才可经配置以用信号发送用于CU、PU或块的OBMC旗标。在此实例中,视频编码器20可经配置以确定CU、PU或块是否通过2N×2N合并模式译码和CU、PU或块的大小,且基于其确定而用信号发送OBMC旗标。
在一些实例中,视频编码器20可经配置以不用信号发送用于CU、PU或块的OBMC旗标。在这些实例中,视频解码器30可经配置以基于其它用信号发送的信息(例如,如随后四个段落中作为含有多个实例的本发明的仅一个实例所描述)隐式地导出对应于OBMC旗标的值。举例来说,视频解码器30可经配置以隐式地导出指示OBMC为CU、PU或块应用(例如,经启用)的OBMC旗标的值。作为另一实例,视频解码器30可经配置以隐式地导出指示OBMC不为CU、PU或块应用(例如,经停用)的OBMC旗标的值。
根据本发明的第十技术,视频编码器20和/或视频解码器30可经配置以自适应性地启用或停用(例如,接通或断开)CU、PU、子块或块边界处的OBMC。举例来说,视频编码器20和/或视频解码器30可经配置以隐式地基于一或多个(例如,两个)邻近块的运动信息(例如,运动向量)的特性和/或基于一或多个(例如,两个)邻近块的运动信息(例如,运动向量)的预测样本值的特性,自适应性地启用或停用(例如,接通或断开)CU、PU、子块或块边界处的OBMC。
在一些实例中,是否为块边界(例如,CU、PU、子块或块边界)应用(例如,启用)OBMC可基于与当前块共享边界的一或多个(例如,两个)邻近块的运动向量之间的运动向量差。在这些实例中,视频编码器20和/或视频解码器30可经配置以确定与当前块共享边界的一或多个(例如,两个)邻近块的运动向量之间的运动向量差。当运动向量差高于阈值(例如,16像素或任何其它阈值)时,OBMC可不为一或多个边界应用(例如,可停用);或者,OBMC可为一或多个边界应用(例如,启用)。在这些实例中,视频编码器20和/或视频解码器30可经配置以比较所确定的运动向量差与预定义阈值,且基于比较为一或多个边界启用或停用OBMC。在一些实例中,阈值可为预定义值,且可或可以不在经编码视频位流中用信号发送。
在其中视频编码器20和/或视频解码器30可经配置以确定两个邻近块的运动向量之间的运动向量差的实例中,如果(例如,当以下情况时)两个运动向量各自指向不同参考帧,或如果(例如,当以下情况时)至少一个运动向量不可用,那么视频编码器20和/或视频解码器30可经配置以不应用(例如,停用)OBMC。在其中视频编码器20和/或视频解码器30可经配置以确定两个或多于两个邻近块的运动向量之间的运动向量差的另一实例中,如果(例如,当以下情况时)两个或多于两个运动向量各自指向不同参考帧,或如果(例如,当以下情况时)至少一个运动向量不可用,那么视频编码器20和/或视频解码器30可经配置以不应用(例如,停用)OBMC。
在其它实例中,是否为块边界(例如,CU、PU、子块或块边界)应用(例如,启用)OBMC可基于与当前块共享边界的两个邻近块的两个运动向量(例如,两个邻近块中的每一者的一个运动向量)是否均指向整数像素位置。在这些实例中,视频编码器20和/或视频解码器30可经配置以确定与当前块共享边界的两个邻近块的两个运动向量(例如,两个邻近块中的每一者的一个运动向量)是否均指向整数像素位置。在一些实例中,如果两个运动向量指向整数像素位置,那么视频编码器20和/或视频解码器30可经配置以不为边界应用(例如,停用)OBMC。在其它实例中,如果两个运动向量不指向整数像素位置,那么视频编码器20和/或视频解码器30可经配置以为边界应用(例如,启用)OBMC。
在其它实例中,是否为块边界(例如,CU、PU、子块或块边界)应用(例如,启用)OBMC可基于从与当前块共享边界的两个邻近块的两个运动向量导出的两个预测块的样本值差。举例来说,当两个预测块的平均绝对差高于某一阈值(例如,80)时,视频编码器20和/或视频解码器30可经配置以不为边界应用(例如,停用)OBMC。作为另一实例,当两个预测块的样本之间的最大绝对差高于某一阈值(例如,80、88或96)时,视频编码器20和/或视频解码器30可经配置以不为边界应用(例如,停用)OBMC。作为另一实例,当两个预测块的样本之间的最大绝对差小于或等于某一阈值(例如,80、88或96)时,视频编码器20和/或视频解码器30可经配置以为边界应用(例如,启用)OBMC。在一些实例中,阈值可为预定义值,且可或可以不在经编码视频位流中用信号发送。在这些实例中,预测块的大小可(i)为与以上本发明的第四技术中所描述的子块大小相同大小、(ii)经预定义或(iii)在位流中用信号发送。
如本文所使用,为边界停用或不应用OBMC可指不针对边界执行OBMC,且反过来也一样。类似地,如本文所使用,为边界启用或应用OBMC可指针对边界执行OBMC,且反过来也一样。如本文所使用,关于“为X”的任何参考可指“针对X”或“对X”。举例来说,参考“为块”可指“针对块”或“对块”。应理解,关于“为X”、“针对X”或“对X”的任何参考可指“为X”、“针对X”及“对X”中的任一者。举例来说,参考“对子块”可同样指代“为子块”或“针对子块”。
根据本发明的第十一技术,视频编码器20和/或视频解码器30可经配置以自适应性地启用或停用(例如,接通或断开)CU、PU、子块、任何其它块层级处的OBMC。举例来说,视频编码器20和/或视频解码器30可经配置以为每一经帧间译码CU、PU、子块或块自适应性地启用或停用(例如,接通或断开)OBMC。在一些实例中,视频编码器20和/或视频解码器30可经配置以实施关于本发明的第九技术所描述的一或多个技术和关于本发明的第十技术所描述的一或多个技术而自适应性地启用或停用(例如,接通或断开)OBMC。举例来说,当针对CU或PU用信号发送OBMC旗标时,视频解码器30可经配置以基于OBMC旗标的值执行(例如,启用或应用)或不执行(例如,停用或不应用)OBMC。作为另一实例,当未针对CU或PU用信号发送OBMC旗标时,视频解码器30可经配置以使用上文关于本发明的第十技术所描述的一或多个方法执行(例如,启用或应用)或不执行(例如,停用或不应用)OBMC。
根据本发明的第十二技术,视频编码器20和/或视频解码器30可经配置以对全部经运动补偿(MC)块边界执行OBMC。在一些实例中,视频编码器20和/或视频解码器30可经配置以对除块(例如,CU)的右侧和底部边界之外的全部经运动补偿(MC)块边界执行OBMC。在一些实例中,视频编码器20和/或视频解码器30可经配置以对亮度和/或色度分量执行OBMC。
在HEVC中,MC块对应于PU。当在HEVC中PU通过ATMVP模式译码时,每一子PU(4×4)为一MC块。为以一致方式处理CU、PU或子PU边界,视频编码器20和/或视频解码器30可经配置以为当前块的全部MC块边界在子块层级处根据本文中所描述的一或多个技术执行OBMC。在一些实例中,视频编码器20和/或视频解码器30可经配置以将子块大小设定为等于4×4,如图8中所说明。
在一些实例中,视频编码器20和/或视频解码器30可经配置以对当前子块执行OBMC。在这些实例中,视频编码器20和/或视频解码器30可经配置以导出当前子块的一或多个预测块。举例来说,视频编码器20和/或视频解码器30可经配置以使用四个连接邻近子块(例如,与当前子块共享边界的四个子块)的运动向量(如果可用)导出当前子块的四个预测块。作为另一实例,视频编码器20和/或视频解码器30可经配置以使用四个连接邻近子块(例如,与当前子块共享边界的四个子块)的运动向量(如果它们可用且并不与当前块的当前运动向量相同)导出当前子块的四个预测块。视频编码器20和/或视频解码器30可经配置以基于多个运动向量(例如,与四个预测块中的每一者相关联的一个运动向量或与四个预测块中的每一者相关联的两个运动向量,如下文所描述)对这些多个预测块(例如,基于四个连接邻近子块的四个预测块)执行加权平均。在一些实例中,视频编码器20和/或视频解码器30可经配置以执行加权平均,从而产生当前子块的最终预测块。举例来说,视频编码器20和/或视频解码器30可经配置以使用多个运动向量从而获得多个预测样本,随后将加权平均应用于样本。最终预测块可指当前子块中的像素的经预测像素的块。应注意,此段落中的以上实例适用于单方向预测,但在涉及双向预测的实例中,以上实例中的预测块可通过使用来自四个邻近块中的每一者的两个运动向量而产生。
在一些实例中,基于邻近子块的一或多个运动向量的预测块可表示为PN,其中N为邻近子块的下标。除非另有说明,N识别预测块在邻近子块的上方、下方、左侧还是右侧。基于当前子块的一或多个运动向量的预测块可表示为PC。在一些实例中,PN的每个像素新增到PC中的同一像素(例如,PN的四行和/或列新增到PC)。在这些实例中,视频编码器20和/或视频解码器30可经配置以将{1/4,1/8,1/16,1/32}的加权因数用于PN,且将{3/4,7/8,15/16,31/32}的加权因素用于PC。为使较小MC块的计算成本较低(例如,其中PU大小等于8×4、4×8,或PU通过ATMVP模式译码),视频编码器20和/或视频解码器30可经配置以仅将PN的两行和/或列新增到PC。在这些实例中,视频编码器20和/或视频解码器30可经配置以为PN应用{1/4,1/8}的加权因数且为PC应用加权因数{3/4,7/8}。对于基于竖直邻近子块(例如,顶部或底部)的一或多个运动向量产生的每一PN,视频编码器20和/或视频解码器30可经配置以将PN的同一行中的像素新增到具有同一加权因数的PC。对于基于水平邻近子块(例如,左侧或右侧)的一或多个运动向量产生的每一PN,视频编码器20和/或视频解码器30可经配置以将PN的同一列中的像素新增到具有同一加权因数的PC
图9为说明可实施本发明中所描述的技术的实例视频编码器20的框图。视频编码器20可执行视频切片内的视频块的帧内和帧间译码。帧内译码依赖于空间预测以减少或移除给定视频帧或图片内的视频的空间冗余。帧间译码依赖于时间预测以减小或移除视频序列的相邻帧或图片内的视频的时间冗余。帧内模式(I模式)可指代若干基于空间的压缩模式中的任一者。帧间模式(例如,单向预测(P模式)或双向预测(B模式))可指若干基于时间的压缩模式中的任一者。
在图9的实例中,视频编码器20包含视频数据存储器33、分割单元35、预测处理单元41、求和器50、变换处理单元52、量化单元54、熵编码单元56。预测处理单元41包含运动估计单元(MEU)42、运动补偿单元(MCU)44和帧内预测单元46。对于视频块重建,视频编码器20也包含反量化单元58、反变换处理单元60、求和器62、滤波器单元64和经解码图片缓冲器(DPB)66。图9的一或多个组件可执行本发明中所描述的一或多个技术。
如图9中所展示,视频编码器20接收视频数据且将所接收的视频数据存储于视频数据存储器33中。视频数据存储器33可存储待通过视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储于视频数据存储器33中的视频数据。DPB 66可以是存储用于(例如)在帧内或帧间译码模式中供视频编码器20用于编码视频数据的参考视频数据的参考图片存储器。视频数据存储器33和DPB 66可由例如动态随机存取存储器(DRAM)的各种存储器装置中的任一者形成,包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM)或其它类型的存储器装置。视频数据存储器33和DPB 66可由同一存储器装置或单独存储器装置提供。在各种实例中,视频数据存储器33可与视频编码器20的其它组件在芯片上,或相对于那些组件在芯片外。
分割单元35从视频数据存储器33检索视频数据且将视频数据分割成视频块。此分割也可包含分割成切片、图像块或其它较大单元,以及(例如)根据LCU和CU的四叉树结构分割的视频块。视频编码器20大体上说明编码待编码的视频切片内的视频块的组件。切片可划分成多个视频块(且可能划分成被称作图像块的视频块集合)。预测处理单元41可基于误差结果(例如,译码速率和失真程度)而为当前视频块选择多个可能译码模式中的一者(例如多个帧内译码模式中的一者或多个帧间译码模式中的一者)。预测处理单元41可将所得的经帧内或经帧间译码块提供到求和器50以产生残余块数据且提供到求和器62以重建经编码块以用作参考图片。
预测处理单元41内的帧内预测单元46可执行当前视频块相对于与待译码的当前块在同一帧或切片中的一或多个邻近块的帧内预测性译码,以提供空间压缩。预测处理单元41内的运动估计单元42和运动补偿单元44执行当前视频块相对于一或多个参考图片中的一或多个预测性块的帧间预测性译码,以提供时间压缩。
运动估计单元42可经配置以根据视频序列的预定图案来确定用于视频切片的帧间预测模式。预定图案可将序列中的视频切片指定为P切片或B切片。运动估计单元42和运动补偿单元44可高度集成,但出于概念目的而单独说明。由运动估计单元42执行的运动估计是产生运动向量的过程,所述运动向量估计视频块的运动。举例来说,运动向量可指示当前视频帧或图片内的视频块的PU相对于参考图片内的预测性块的位移。
预测性块是依据像素差被发现紧密地匹配于待译码的视频块的PU的块,所述像素差可通过绝对差和(SAD)、平方差和(SSD)或其它差度量来确定。在一些实例中,视频编码器20可计算存储于DPB 66中的参考图片的子整数像素位置的值。举例来说,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行相对于全像素位置和分数像素位置的运动搜索并输出具有分数像素精度的运动向量。
运动估计单元42通过比较PU的位置与参考图片的预测性块的位置而计算经帧间译码切片中的视频块的PU的运动向量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),参考图片列表中的每一者识别存储于DPB 66中的一或多个参考图片。运动估计单元42将所计算的运动向量发送到熵编码单元56和运动补偿单元44。
由运动补偿单元44执行的运动补偿可涉及基于通过运动估计确定的运动向量提取或产生预测性块,可能执行内插达子像素精度。在接收到当前视频块的PU的运动向量之后,运动补偿单元44可在参考图片列表中的一者中找到运动向量所指向的预测性块的位置。视频编码器20通过从正经译码的当前视频块的像素值减去预测性块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于块的残余数据,且可包含亮度和色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动补偿单元44也可产生与视频块和视频切片相关联的语法元素以供视频解码器30在解码视频切片的视频块时使用。
在预测处理单元41经由帧内预测或帧间预测产生当前视频块的预测性块之后,视频编码器20通过从当前视频块减去预测性块而形成残余视频块。残余块中的残余视频数据可包含于一或多个TU中且应用于变换处理单元52。变换处理单元52使用例如离散余弦变换(DCT)或概念上类似的变换的变换将残余视频数据变换为残余变换系数。变换处理单元52可将残余视频数据从像素域转换到变换域(例如,频域)。
变换处理单元52可将所得变换系数发送到量化单元54。量化单元54量化变换系数以进一步减小位速率。量化过程可减少与系数中的一些或全部相关联的位深度。可通过调整量化参数来修改量化的程度。在一些实例中,量化单元54随后可执行对包含经量化的变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC)、基于语法的上下文自适应二进制算术译码(SBAC)、机率区间分割熵(PIPE)译码或另一熵编码方法或技术。在由熵编码单元56进行熵译码之后,可将经编码位流发射到视频解码器30,或加以存档以供稍后由视频解码器30发射或检索。熵编码单元56也可熵编码正经译码的当前视频切片的运动向量和其它语法元素。
反量化单元58和反变换处理单元60分别应用反量化和反变换以重建像素域中的残余块,以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加到参考图片列表中的一者内的参考图片中的一者的预测性块来计算参考块。运动补偿单元44也可对所述经重建的残余块应用一或多个内插滤波器以计算子整数像素值以用于运动估计。求和器62将重建残余块新增到通过运动补偿单元44产生的运动补偿预测块以产生经重建块。
滤波器单元64对经重建块(例如,求和器62的输出)进行滤波且将经滤波的经重建块存储于DPB 66中用作参考块。参考块可由运动估计单元42和运动补偿单元44用作为参考块以对后续视频帧或图片中的块进行帧间预测。滤波器单元64可应用解块滤波、样本自适应偏移(SAO)滤波、自适应环路滤波(ALF)或其它类型的环路滤波中的一或多者。滤波器单元64可应用解块滤波以对块边界进行滤波而从经重建视频移除块效应伪影,且可应用其它类型的滤波以改良整体译码质量。也可使用额外回路滤波器(中循环或后循环)。
视频编码器20表示经配置以执行基于子块的OBMC、基于子PU的OBMC、基于CU边界的OBMC或其任何组合的视频编码器的实例。
图10为说明可实施本发明中所描述的技术的实例视频解码器30的框图。在图10的实例中,视频解码器30包含视频数据存储器78、熵解码单元80、预测处理单元81、反量化单元86、反变换处理单元88、求和器90和DPB 94。预测处理单元81包含运动补偿单元82和帧内预测单元84。在一些实例中,视频解码器30可执行与关于来自图9的视频编码器20所描述的编码遍次大体上互逆的解码遍次。图10的一或多个组件可执行本发明中所描述的一或多个技术。
在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块和相关联的语法元素的经编码视频位流。视频解码器30将所接收的经编码视频位流存储于视频数据存储器78中。视频数据存储器78可存储待由视频解码器30的组件解码的视频数据(例如,经编码视频位流)。存储于视频数据存储器78中的视频数据可(例如)经由链路16从存储装置26或从本地视频源(例如相机)或通过存取物理数据存储媒体而获得。视频数据存储器78可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。DPB 94可为存储用于(例如)在帧内帧间译码模式中供视频解码器30用于解码视频数据的参考视频数据的参考图片存储器。视频数据存储器78和DPB 94可由各种存储器装置中的任一者形成,所述存储器装置例如DRAM、SDRAM、MRAM、RRAM或其它类型的存储器装置。视频数据存储器78和DPB 94可由同一存储器装置或单独存储器装置提供。在各种实例中,视频数据存储器78可与视频解码器30的其它组件在芯片上,或相对于那些组件在芯片外。
视频解码器30的熵解码单元80熵解码存储于视频数据存储器78中的视频数据以产生经量化系数、运动向量和其它语法元素。熵解码单元80将运动向量和其它语法元素转递到预测处理单元81。视频解码器30可接收视频切片层级和/或视频块层级处的语法元素。
当视频切片经译码为经帧内译码(I)切片时,预测处理单元81的帧内预测处理单元84可基于来自当前帧或图片的先前经解码块的用信号发送的帧内预测模式和数据来产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,B或P)切片时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动向量和其它语法元素产生当前视频切片的视频块的预测性块。预测性块可从参考图片列表中的一者内的参考图片中的一者产生。视频解码器30可基于存储于DPB 94中的参考图片使用默认建构技术来建构参考帧列表,列表0和列表1。
运动补偿单元82通过剖析运动向量和其它语法元素来确定当前视频切片的视频块的预测信息,且使用预测信息来产生正在经解码的当前视频块的预测性块。举例来说,运动补偿单元82使用所接收语法元素中的一些以确定用以译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,B切片或P切片)、用于所述切片的参考图片列表中的一或多者的建构信息、用于所述切片的每一经帧间编码视频块的运动向量、用于所述切片的每一经帧间译码视频块的帧间预测状态和用以解码当前视频切片中的视频块的其它信息。
运动补偿单元82也可执行基于内插滤波器的内插。运动补偿单元82可使用如由视频编码器20在视频块的编码期间所使用的内插滤波器,以计算参考块的次整数像素的内插值。在此状况下,运动补偿单元82可从所接收语法元素确定由视频编码器20所使用的内插滤波器,并使用所述内插滤波器以产生预测性块。
反量化单元86反量化(即,解量化)位流中所提供并由熵解码单元80解码的经量化变换系数。反量化过程可包含使用由视频编码器20所计算的视频切片中的每一视频块的量化参数,以确定量化程度和(同样地)应应用的反量化程度。反变换处理单元88对变换系数应用反变换(例如,反DCT、反整数变换或概念上类似的反变换过程),以便产生像素域中的残余块。
在预测处理单元使用(例如)帧内或帧间预测产生当前视频块的预测性块之后,视频解码器30通过对来自反变换处理单元88的残余块与由运动补偿单元82产生的对应预测性块进行求和而形成经重建视频块。求和器90表示执行此求和运算的一或多个组件。滤波器单元92使用(例如)解块滤波、SAO滤波、ALF滤波或其它类型的滤波中的一或多者对经重建视频块进行滤波。其它回路滤波器(在译码回路中或在译码回路之后)也可用于使像素转变平滑,或另外改良视频质量。给定帧或图片中的经解码视频块随后存储于DPB 94中,所述DPB 94存储用于后续运动补偿的参考图片。DPB 94可以是额外存储器的部分或与其分离,所述额外存储器存储用于稍后呈现于显示装置(例如图1的显示装置32)上的经解码视频。
视频解码器30表示经配置以执行基于子块的OBMC、基于子PU的OBMC、基于CU边界的OBMC或其任何组合的视频解码器的实例。举例来说,视频解码器30可经配置以接收视频数据的第一块,在此实例中,所述第一块是预测单元的子块。视频解码器30可经配置以接收邻近视频数据的第一块的视频数据的一或多个块;确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的至少一个运动向量;和至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的至少一个运动向量,使用重叠块运动补偿解码视频数据的第一块。
图11为说明符合本发明的技术的用于解码视频数据的实例过程的流程图。出于说明的目的,通常将图11的过程描述为由视频解码器30执行,但多种其它处理器也可执行图11中所展示的过程。在一些实例中,视频数据存储器78、熵解码单元80和/或预测处理单元81可执行图11中所展示的一或多个过程。
在图11的实例中,视频解码器30可经配置以接收视频数据的第一块(200)。在一些实例中,视频数据的第一块是预测单元的子块。在一些实例中,视频数据的第一块是预测单元的正方形子块或非正方形子块。
视频解码器30可经配置以接收邻近视频数据的第一块的视频数据的一或多个块(202)。在一些实例中,邻近视频的第一块的视频数据的一或多个块是正方形子块、非正方形子块或至少一个正方形子块与至少一个非正方形子块的组合。
视频解码器30可经配置以确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息(204)。在一些实例中,视频解码器30可经配置以通过解码邻近视频数据的第一块的视频数据的一或多个块中的至少一个块而确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的至少一个运动向量。视频解码器30可经配置以至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿解码视频数据的第一块(206)。
在一些实例中,视频解码器30可经配置以确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者是否未经解码。在这些实例中,视频解码器30可经配置以在不使用对应于经确定未经解码的一或多个块的至少一个块的运动信息的情况下解码视频数据的第一块。
在一些实例中,视频解码器30可经配置以产生视频数据的第一块的第一预测块。第一预测块可包含视频数据的第一块的每一像素位置的值。视频解码器30可经配置以产生邻近视频的第一块的视频数据的一或多个块中的至少一者的邻近预测块。邻近预测块可包含邻近视频的第一块的视频数据的一或多个块中的至少一者的每一像素位置的值。视频解码器30可经配置以基于邻近预测块的一或多个值修改第一预测块的一或多个值,从而产生经修改的第一预测块。视频解码器30可经配置以使用经修改的第一预测块解码视频数据的第一块。
在一些实例中,视频解码器30可经配置以将第一加权值指配到第一预测块的一或多个值。视频解码器30可经配置以将第二加权值指配到邻近预测块的一或多个值。视频解码器30可经配置以基于第一加权值和第二加权值修改第一预测块的一或多个值,从而产生第一预测块。
在一些实例中,视频解码器30可经配置以产生视频数据的第一块的第一预测块。第一预测块可包含视频数据的第一块的每一像素位置的值。视频解码器30可经配置以基于视频数据的第一块的大小将一或多个加权值指配到第一预测块的一或多个值。视频解码器30可经配置以使用经指配到第一预测块的一或多个值的一或多个加权值解码视频数据的第一块。在这些实例中,视频解码器30可经配置以基于邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息产生第一邻近预测块。视频解码器30可经配置以基于第一邻近块的大小将一或多个加权值指配到第一邻近预测块的一或多个值。视频解码器30可经配置以使用经指配到第一邻近预测块的一或多个值的一或多个加权值解码视频数据的第一块。
在一些实例中,视频解码器30可经配置以基于经指配到第一邻近预测块的一或多个值的一或多个加权值修改第一预测块的一或多个值,以产生经修改的第一预测块,和使用经修改的第一预测块解码视频数据的第一块。在一些实例中,视频解码器30可经配置以基于邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息产生第二邻近预测块。在这些实例中,视频解码器30可经配置以基于第二邻近块的大小将一或多个加权值指配到第二邻近预测块的一或多个值。视频解码器30可经配置以基于经指配到第一和第二邻近预测块的一或多个值的一或多个加权值修改第一和预测块的一或多个值,以产生经修改的第一预测块。
在一些实例中,视频解码器30可经配置以接收具有表示视频数据的第一块是否根据重叠块运动补偿模式编码的值的语法元素。举例来说,可在由视频编码器(例如,视频编码器20)产生的位流中接收语法元素。视频解码器30可经配置以基于语法元素的值确定视频数据的第一块根据重叠块运动补偿模式来编码。
图12是说明符合本发明的技术的用于编码视频数据的实例过程的流程图。出于说明的目的,通常将图12的过程描述为由视频译码器执行,但多种其它处理器也可执行图12中所示的过程。如本文所使用,视频译码器可指视频编码器和/或视频解码器(例如,视频编码器20和/或视频解码器30)。在一些实例中,视频数据存储器33、分割单元35、预测处理单元41和/或熵编码单元56可执行图12中所展示的一或多个过程。在一些实例中,视频数据存储器78、熵解码单元80和/或预测处理单元81可执行图12中所展示的一或多个过程。
在图12的实例中,视频译码器可经配置以将视频数据的第一块存储于存储器中(220)。在一些实例中,邻近视频的第一块的视频数据的一或多个块为正方形子块、非正方形子块或至少一个正方形子块与至少一个非正方形子块的组合。
视频译码器可经配置以存储邻近存储器中的视频数据的第一块的视频数据的一或多个块(222)。在一些实例中,邻近视频的第一块的视频数据的一或多个块为正方形子块、非正方形子块或至少一个正方形子块与至少一个非正方形子块的组合。
视频译码器可经配置以确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息(224)。在一些实例中,视频译码器可经配置以通过译码邻近视频数据的第一块的视频数据的一或多个块的至少一个块而确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者的至少一个运动向量。在一些实例中,视频译码器可经配置以至少部分地基于邻近视频数据的第一块的一或多个块中的至少一者的运动信息,使用重叠块运动补偿译码视频数据的第一块(226)。
在一些实例中,视频译码器可经配置以确定邻近视频数据的第一块的视频数据的一或多个块中的至少一者是否未经译码。在这些实例中,视频译码器可经配置以在不使用对应于经确定未经译码的一或多个块的至少一个块的运动信息的情况下译码视频数据的第一块。
在一些实例中,视频译码器可经配置以产生视频数据的第一块的第一预测块。第一预测块可包含视频数据的第一块的每一像素位置的值。视频译码器可经配置以产生邻近视频的第一块的视频数据的一或多个块中的至少一者的邻近预测块。邻近预测块可包含邻近视频的第一块的视频数据的一或多个块中的至少一者的每一像素位置的值。视频译码器可经配置以基于邻近预测块的一或多个值修改第一预测块的一或多个值,从而产生经修改的第一预测块。视频译码器可经配置以使用经修改的第一预测块译码视频数据的第一块。
在一些实例中,视频译码器可经配置以将第一加权值指配到第一预测块的一或多个值。视频译码器可经配置以将第二加权值指配到邻近预测块的一或多个值。视频译码器可经配置以基于第一加权值和第二加权值修改第一预测块的一或多个值,从而产生第一预测块。
在一些实例中,视频译码器可经配置以产生视频数据的第一块的第一预测块。第一预测块可包含视频数据的第一块的每一像素位置的值。视频译码器可经配置以基于视频数据的第一块的大小将一或多个加权值指配到第一预测块的一或多个值。视频译码器可经配置以使用经指配到第一预测块的一或多个值的一或多个加权值译码视频数据的第一块。在这些实例中,视频译码器可经配置以基于邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息产生第一邻近预测块。视频译码器可经配置以基于第一邻近块的大小将一或多个加权值指配到第一邻近预测块的一或多个值。视频译码器可经配置以使用经指配到第一邻近预测块的一或多个值的一或多个加权值译码视频数据的第一块。
在一些实例中,视频译码器可经配置以基于经指配到第一邻近预测块的一或多个值的一或多个加权值修改第一预测块的一或多个值,以产生经修改的第一预测块,和使用经修改的第一预测块译码视频数据的第一块。在一些实例中,视频译码器可经配置以基于邻近视频数据的第一块的视频数据的一或多个块中的至少一者的运动信息产生第二邻近预测块。在这些实例中,视频译码器可经配置以基于第二邻近块的大小将一或多个加权值指配第二邻近预测块的一或多个值。视频译码器可经配置以基于经指配到第一和第二邻近预测块的一或多个值的一或多个加权值修改第一和预测块一或多个值,以产生经修改的第一预测块。
在一些实例中,视频译码器可经配置以接收具有表示视频数据的第一块是否根据重叠块运动补偿模式编码的值的语法元素。举例来说,可在由视频编码器(例如,视频编码器20)产生的位流中接收语法元素。视频译码器可经配置以基于语法元素的值确定视频数据的第一块根据重叠块运动补偿模式来编码。
在一些实例中,视频译码器可经配置以产生具有表示视频数据的第一块是否根据重叠块运动补偿模式编码的值的语法元素。在这些实例中,视频译码器可经配置以发射位流中的语法元素,所述语法元素可由视频解码器(例如,视频解码器30)接收。
应理解,本文所描述的所有技术可单独地或以组合方式使用。举例来说,视频编码器20和/或其一或多个组件和视频解码器30和/或其一或多个组件可以任何组合执行本发明中所描述的技术。作为另一实例,本文中所描述的技术可通过视频编码器20(图1和9)和/或视频解码器30(图1和10),所述两者可大体上被称作视频译码器。同样,视频译码在可适用时可指视频编码或视频解码。
应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可以不同序列执行,可新增、合并或完全省略所述动作或事件(例如,并非所有所描述动作或事件对于所述技术的实践皆是必要的)。此外,在某些实例中,动作或事件可(例如)经由多线程处理、中断处理或多个处理器同时而非依序地执行。另外,尽管出于清晰的目的,本发明的某些方面被描述为由单一模块或单元执行,但应理解,本发明的技术可通过与视频译码器相关联的单元或模块的组合来执行。
出于说明的目的,已关于一或多个视频译码标准(经发布、开发中或其类似者)描述本发明的某些方面。然而,本发明中所描述的技术可适用于其它视频译码过程,包含尚未开发的其它标准或专有视频译码过程。
根据本发明,术语“或”可解译为“和/或”,其中上下文并不以其它方式指示。另外,虽然例如“一或多个”或“至少一个”或其类似者的短语可被用于本文中(但并非为其它者)所公开的一些特征;并未使用此语言的特征可解释为具有暗示上下文并不以其它方式指示的此含义。
尽管在上文描述技术的各种方面的特定组合,但提供这些组合仅为了说明本发明中所描述的技术的实例。因此,本发明的技术不应限于这些实例组合且可涵盖本发明中描述的技术的各种方面的任何可设想组合。
在一或多个实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述功能可作为一或多个指令或代码而存储于计算机可读媒体上或经由计算机可读媒体发射,且由基于硬件的处理单元执行。计算机可读媒体可包含对应于有形媒体(例如数据存储媒体)的计算机可读存储媒体,或包含促进将计算机程序从一处传送到另一处(例如,根据一通信协议)的任何媒体的通信媒体。以此方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)例如信号或载波的通信媒体。数据存储媒体可以是可由一或多个计算机或一或多个处理器存取以检索指令、代码和/或数据结构以用于实施本发明中所描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。
借助于实例而非限制,这些计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器或可用以存储呈指令或数据结构的形式的所要代码且可由计算机存取的任何其它媒体。同样,将任何连接适当地称为计算机可读媒体。举例来说,如果使用同轴缆线、光缆、双绞线、数字用户线(DSL)或无线技术(例如红外线、无线电和微波)从网站、服务器或其它远程源发射指令,那么同轴缆线、光缆、双绞线、DSL或无线技术(例如红外线、无线电和微波)包含于媒体的定义中。然而,应理解,计算机可读存储媒体和数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而取而代之,是有关非暂时性的有形存储媒体。如本文所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘用激光以光学方式再生数据。以上各者的组合也应包含于计算机可读媒体的范围内。
指令可由一或多个处理器执行,所述一或多个处理器例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适用于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,可在经配置用于编码和解码的专用硬件和/或软件模块内提供本文中所描述的功能性,或将本文中所描述的功能性并入于组合式编解码器中。再者,所述技术可完全实施于一或多个电路或逻辑元件中。
本发明的技术可以多种装置或设备实施,所述装置或设备包含无线手机、集成电路(IC)或IC集合(例如,芯片集)。在本发明中描述各种组件、模块或单元以强调经配置以执行所公开技术的装置的功能性方面,但未必需要通过不同硬件单元来实现。实情为,如上所述,各种单元可组合于编解码器硬件单元中,或结合合适软件和/或固件通过互操作性硬件单元(包含如上所述的一或多个处理器)的集合来提供。
各种实例已于本文中予以描述。涵盖所描述的系统、操作、功能或实例的任何组合。这些和其它实例是在以下权利要求书的范围内。

Claims (34)

1.一种解码经编码视频数据的方法,所述方法包括:
在经编码视频位流中接收所述经编码视频数据的预测单元的第一子块,所述预测单元被分割成包含所述第一子块的多个子块和一或多个邻近子块;
在所述经编码视频位流中接收所述预测单元的所述一或多个邻近子块,所述一或多个邻近子块中的每一者邻近所述预测单元的所述多个子块中的所述第一子块;
从所述经编码视频位流中剖析语法元素;
确定所述语法元素被设定为指示所述预测单元的所述多个子块中的所述第一子块是根据重叠块运动补偿模式编码的值;
基于经剖析语法元素的所述值来确定所述预测单元的所述多个子块中的所述第一子块是根据所述重叠块运动补偿模式编码;
确定所述一或多个邻近子块中的至少一者的运动信息;以及
基于所述第一子块是根据所述重叠块运动补偿模式编码,使用所述重叠块运动补偿模式,使用所述一或多个邻近子块中的所述至少一者的经确定运动信息,解码所述预测单元的所述第一子块。
2.根据权利要求1所述的方法,其进一步包括:
确定所述一或多个邻近子块中的第一邻近子块未经解码;以及
在不使用与确定为未经解码的所述第一邻近子块相关联的任何运动信息的情况下解码所述预测单元的所述第一子块。
3.根据权利要求1所述的方法,其中:
确定所述一或多个邻近子块中的所述至少一者的所述运动信息包括解码所述一或多个邻近子块中的所述至少一者。
4.根据权利要求1所述的方法,其进一步包括:
产生用于所述预测单元的所述第一子块的第一预测块,其中所述第一预测块包含所述预测单元的所述第一子块的多个像素位置中的每一相应像素位置的相应值;
基于所述预测单元的所述第一子块的大小将一或多个加权值指配到所述第一预测块的一或多个值;以及
使用经指配到经产生用于所述预测单元的所述第一子块的所述第一预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块。
5.根据权利要求4所述的方法,其进一步包括:
基于所述一或多个邻近子块中的至少一个第一邻近子块的所述运动信息产生第一邻近预测块;
基于所述第一邻近子块的大小将一或多个加权值指配到所述第一邻近预测块的一或多个值;以及
使用经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块。
6.根据权利要求5所述的方法,其进一步包括:
基于经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值修改所述第一预测块的一或多个值,以形成第一经修改的预测块;以及
使用所述第一经修改的预测块解码所述预测单元的所述第一子块。
7.根据权利要求6所述的方法,其进一步包括:
基于所述一或多个邻近子块中的第二邻近子块的运动信息产生第二邻近预测块;
基于所述第二邻近子块的大小将一或多个加权值指配到所述第二邻近预测块的一或多个值;和
基于经指配到所述第一和第二预测块的所述一或多个值的所述一或多个加权值修改所述第一和第二邻近预测块的一或多个值,以产生所述第一经修改的预测块。
8.根据权利要求1所述的方法,其中所述语法元素的所述值是真值,其中所述真值指示所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码,且其中基于所述语法元素的所述值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码包括基于所述语法元素的所述值等于所述真值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码。
9.根据权利要求1所述的方法,所述方法可在无线通信装置上执行,其中所述无线通信装置包括:
接收器,其经配置以接收视频数据的所述第一子块和所述语法元素;
存储器,其经配置以存储视频数据的所述第一子块;以及
处理器,其经配置以执行指令以处理存储于所述存储器中的视频数据的所述第一子块。
10.根据权利要求9所述的方法,其中所述无线通信装置是电话,且视频数据的所述第一子块和所述语法元素通过所述接收器接收且根据通信标准解调。
11.一种用于解码视频数据的装置,所述装置包括:
通信接口,其经配置以接收经编码视频位流;
存储器,其耦合到所述通信接口且经配置以存储通过所述通信接口接收的所述经编码视频位流的经编码视频数据;以及
处理电路,其与所述存储器通信,其中所述处理电路经配置以:
从所述存储器中检索存储到所述存储器中的所述经编码视频数据的预测单元的第一子块,所述预测单元被分割成包含所述第一子块的多个子块和一或多个邻近子块;
从所述存储器中检索存储到所述存储器中的所述经编码视频数据的所述预测单元的一或多个邻近子块,所述一或多个邻近子块中的每一者邻近存储到所述存储器中的所述经编码视频数据的所述预测单元的所述多个子块中的所述第一子块;
从所述存储器中剖析语法元素;
确定所述语法元素被设定为指示所述预测单元的所述多个子块中的所述第一子块是根据重叠块运动补偿模式编码的值;
基于经剖析语法元素的所述值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码;
确定所述一或多个邻近子块中的至少一者的运动信息;以及
基于所述第一子块是根据所述重叠块运动补偿模式编码,使用所述重叠块运动补偿模式,使用所述一或多个邻近子块中的所述至少一者的经确定运动信息,解码所述预测单元的所述第一子块。
12.根据权利要求11所述的装置,其中所述处理电路经进一步配置以进行以下操作:
确定所述一或多个邻近子块中的第一邻近子块未经解码;以及
在不使用与确定为未经解码的所述第一邻近子块相关联的任何运动信息的情况下解码所述预测单元的所述第一子块。
13.根据权利要求11所述的装置,其中所述处理电路经配置以解码所述一或多个邻近子块中的所述至少一者以确定所述一或多个邻近子块中的所述至少一者的所述运动信息。
14.根据权利要求11所述的装置,其中所述处理电路经进一步配置以进行以下操作:
产生用于所述预测单元的所述第一子块的第一预测块,其中所述第一预测块包含所述预测单元的所述第一子块的多个像素位置中的每一相应像素位置的相应值;
基于所述预测单元的所述第一子块的大小将一或多个加权值指配到所述第一预测块的一或多个值;以及
使用经指配到经产生用于所述预测单元的所述第一子块的所述第一预测块的所述一或多个值的所述一或多个加权值译码所述预测单元的所述第一子块。
15.根据权利要求14所述的装置,其中所述处理电路经进一步配置以进行以下操作:
基于所述一或多个邻近子块中的至少一个第一邻近子块的所述运动信息产生第一邻近预测块;
基于所述第一邻近子块的大小将一或多个加权值指配到所述第一邻近预测块的一或多个值;以及
使用经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块。
16.根据权利要求15所述的装置,其中所述视频译码器经进一步配置以进行以下操作:
基于经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值修改所述第一预测块的一或多个值,以形成第一经修改的预测块;以及
使用所述第一经修改的预测块解码所述预测单元的所述第一子块。
17.根据权利要求16所述的装置,其中所述处理电路经进一步配置以进行以下操作:基于所述一或多个邻近子块中的第二邻近子块的运动信息产生第二邻近预测块;基于所述第二邻近子块的大小将一或多个加权值指配到所述第二邻近预测块的一或多个值;和
基于经指配到所述第一和第二邻近预测块的所述一或多个值的所述一或多个加权值修改所述第一和第二邻近预测块的一或多个值,以产生所述第一经修改的预测块。
18.根据权利要求11所述的装置,其中所述语法元素的所述值是真值,其中所述真值指示所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码,且其中所述处理电路经配置以基于所述语法元素的所述值等于所述真值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码而基于所述语法元素的所述值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码。
19.根据权利要求11所述的装置,其中所述装置是无线通信装置,所述装置进一步包括:
接收器,其经配置以接收视频数据的所述第一子块和所述语法元素。
20.根据权利要求19所述的装置,其中所述无线通信装置是电话,且视频数据的所述第一子块和所述语法元素通过所述接收器接收且根据通信标准解调。
21.一种用于解码经编码视频数据的设备,所述设备包括:
用于在经编码视频位流中接收所述经编码视频数据的预测单元的第一子块的装置,所述预测单元被分割成包含所述第一子块的多个子块和一或多个邻近子块;
用于在所述经编码视频位流中接收所述预测单元的所述一或多个邻近子块的装置,所述一或多个邻近子块中的每一者邻近所述预测单元的所述多个子块中的所述第一子块;
用于从所述经编码视频位流中剖析语法元素的装置;
用于确定所述语法元素被设定为指示所述预测单元的所述多个子块中的所述第一子块是根据重叠块运动补偿模式编码的值的装置;
用于基于经剖析语法元素的所述值来确定所述预测单元的所述多个子块中的所述第一子块是根据所述重叠块运动补偿模式编码的装置;
用于确定所述一或多个邻近子块中的至少一者的运动信息的装置;以及
用于基于所述第一子块是根据所述重叠块运动补偿模式编码,使用所述重叠块运动补偿模式,使用所述一或多个邻近子块中的所述至少一者的经确定运动信息,解码所述预测单元的所述第一子块的装置。
22.根据权利要求21所述的设备,其进一步包括:
用于确定所述一或多个邻近子块中的第一邻近子块未经解码的装置;以及
用于在不使用与确定为未经解码的所述第一邻近子块相关联的任何运动信息的情况下译码所述预测单元的所述第一子块的装置。
23.根据权利要求21所述的设备,其中
用于确定所述一或多个邻近子块中的所述至少一者的所述运动信息的装置包括用于解码所述一或多个邻近子块中的所述至少一者的装置。
24.根据权利要求21所述的设备,其进一步包括:
用于产生用于所述预测单元的所述第一子块的第一预测块的装置,其中所述第一预测块包含所述预测单元的所述第一子块的多个像素位置中的每一相应像素位置的相应值;
用于基于所述预测单元的所述第一子块的大小将一或多个加权值指配到所述第一预测块的一或多个值的装置;以及
用于使用经指配到经产生用于所述预测单元的所述第一子块的所述第一预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块的装置。
25.根据权利要求24所述的设备,其进一步包括:
用于基于所述一或多个邻近子块中的第一邻近子块的所述运动信息产生第一邻近预测块的装置;
用于基于所述第一邻近子块的大小将一或多个加权值指配到所述第一邻近预测块的一或多个值的装置;以及
用于使用经指配到所述第一预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块的装置。
26.根据权利要求25所述的设备,其进一步包括:
用于基于经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值修改所述第一预测块的一或多个值,以形成第一经修改的预测块的装置;以及
用于使用所述第一经修改的预测块解码所述预测单元的所述第一子块的装置。
27.根据权利要求21所述的设备,其中所述语法元素的所述值是真值,其中所述真值指示所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码,且其中基于所述语法元素的所述值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码包括基于所述语法元素的所述值等于所述真值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码。
28.一种存储有指令的非暂时性计算机可读存储媒体,所述指令在被执行时使得视频解码装置的一或多个处理器进行如下操作:
将经编码视频数据的预测单元的第一子块存储到所述非暂时性计算机可读存储媒体中,所述预测单元被分割成包含所述第一子块的多个子块和一或多个邻近子块;
将所述预测单元的一或多个邻近子块存储到所述非暂时性计算机可读存储媒体中,所述一或多个邻近子块中的每一者邻近所述预测单元的所述多个子块中的所述第一子块;
剖析语法元素;
确定所述语法元素被设定为指示所述预测单元的所述多个子块中的所述第一子块是根据重叠块运动补偿模式编码的值;
基于经剖析语法元素的所述值来确定所述预测单元的所述多个子块中的所述第一子块是根据所述重叠块运动补偿模式编码;
确定所述一或多个邻近子块中的至少一者的运动信息;以及
基于所述第一子块是根据所述重叠块运动补偿模式编码,使用所述重叠块运动补偿模式,使用所述一或多个邻近子块中的所述至少一者的经确定运动信息,解码所述预测单元的所述第一子块。
29.根据权利要求28所述的非暂时性计算机可读存储媒体,具有存储于其上的进一步指令,所述进一步指令在被执行时使得所述一或多个处理器进行如下操作:
确定所述一或多个邻近子块中的第一邻近子块未经解码;以及
在不使用与确定为未经解码的所述第一邻近子块相关联的任何运动信息的情况下解码所述预测单元的所述第一子块。
30.根据权利要求28所述的非暂时性计算机可读存储媒体,其中在被执行时使得所述一或多个处理器确定所述一或多个邻近子块中的所述至少一者的所述运动信息的所述指令包括在被执行时使得所述一或多个处理器解码所述一或多个邻近子块中的所述至少一者的指令。
31.根据权利要求28所述的非暂时性计算机可读存储媒体,具有存储于其上的进一步指令,所述进一步指令在被执行时使得所述一或多个处理器进行如下操作:
产生用于所述预测单元的所述第一子块的第一预测块,其中所述第一预测块包含所述预测单元的所述第一子块的多个像素位置中的每一相应像素位置的相应值;
基于所述预测单元的所述第一子块的大小将一或多个加权值指配到所述第一预测块的一或多个值;以及
使用经指配到经产生用于所述预测单元的所述第一子块的所述第一预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块。
32.根据权利要求31所述的非暂时性计算机可读存储媒体,具有存储于其上的进一步指令,所述进一步指令在被执行时使得所述一或多个处理器进行如下操作:
基于所述一或多个邻近子块中的第一邻近子块的所述运动信息产生第一邻近预测块;
基于所述第一邻近子块的大小将一或多个加权值指配到所述第一邻近预测块的一或多个值;以及
使用经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值解码所述预测单元的所述第一子块。
33.根据权利要求32所述的非暂时性计算机可读存储媒体,具有存储于其上的进一步指令,所述进一步指令在被执行时使得所述一或多个处理器进行如下操作:
基于经指配到所述第一邻近预测块的所述一或多个值的所述一或多个加权值修改所述第一预测块的一或多个值,以形成第一经修改的预测块;以及
使用所述第一经修改的预测块解码所述预测单元的所述第一子块。
34.根据权利要求28所述的非暂时性计算机可读存储媒体,其中所述语法元素的所述值是真值,其中所述真值指示所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码,且其中在被执行时使得所述一或多个处理器基于所述语法元素的所述值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码的所述指令包括在被执行时使得所述一或多个处理器基于所述语法元素的所述值等于所述真值来确定所述预测单元的所述第一子块是根据所述重叠块运动补偿模式编码的指令。
CN201680006775.7A 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿 Active CN107211157B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010166704.1A CN111355963A (zh) 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201562107964P 2015-01-26 2015-01-26
US62/107,964 2015-01-26
US201562116631P 2015-02-16 2015-02-16
US62/116,631 2015-02-16
US15/005,934 US10230980B2 (en) 2015-01-26 2016-01-25 Overlapped motion compensation for video coding
US15/005,934 2016-01-25
PCT/US2016/014857 WO2016123068A1 (en) 2015-01-26 2016-01-26 Overlapped motion compensation for video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010166704.1A Division CN111355963A (zh) 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿

Publications (2)

Publication Number Publication Date
CN107211157A CN107211157A (zh) 2017-09-26
CN107211157B true CN107211157B (zh) 2020-08-11

Family

ID=56433570

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010166704.1A Pending CN111355963A (zh) 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿
CN201680006775.7A Active CN107211157B (zh) 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010166704.1A Pending CN111355963A (zh) 2015-01-26 2016-01-26 用于视频译码的重叠运动补偿

Country Status (8)

Country Link
US (2) US10230980B2 (zh)
EP (2) EP4072143A3 (zh)
JP (2) JP6720191B2 (zh)
KR (2) KR20230022282A (zh)
CN (2) CN111355963A (zh)
CA (1) CA2971633C (zh)
TW (1) TWI688262B (zh)
WO (1) WO2016123068A1 (zh)

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105794210B (zh) * 2013-12-06 2019-05-10 联发科技股份有限公司 视频编码系统中用于边界像素的运动补偿预测方法及装置
FR3029055B1 (fr) * 2014-11-24 2017-01-13 Ateme Procede d'encodage d'image et equipement pour la mise en oeuvre du procede
US10230980B2 (en) 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
WO2016204479A1 (ko) * 2015-06-16 2016-12-22 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10939099B2 (en) * 2016-04-22 2021-03-02 Lg Electronics Inc. Inter prediction mode-based image processing method and device therefor
EP3469794B1 (en) 2016-06-09 2022-04-27 INTEL Corporation Method and system of motion estimation with neighbor block pattern for video coding
CN116708782A (zh) * 2016-07-12 2023-09-05 韩国电子通信研究院 图像编码/解码方法以及用于该方法的记录介质
CN109983773A (zh) * 2016-11-29 2019-07-05 联发科技股份有限公司 用于合并模式推导的视频编解码方法和装置
TW201902223A (zh) * 2017-03-24 2019-01-01 聯發科技股份有限公司 視頻編碼中重疊分塊運動補償的雙向光流的方法和裝置
WO2018199468A1 (ko) 2017-04-24 2018-11-01 에스케이텔레콤 주식회사 움직임 보상을 위한 옵티컬 플로우 추정 방법 및 장치
US11184636B2 (en) * 2017-06-28 2021-11-23 Sharp Kabushiki Kaisha Video encoding device and video decoding device
JP6854716B2 (ja) 2017-07-05 2021-04-07 キヤノン株式会社 画像処理装置、画像処理方法
JP6936641B2 (ja) * 2017-07-05 2021-09-22 キヤノン株式会社 画像処理装置、画像処理方法
KR20200037130A (ko) * 2017-08-28 2020-04-08 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
CN117221524A (zh) * 2017-08-29 2023-12-12 株式会社Kt 视频解码方法、视频编码方法及装置
WO2019065329A1 (ja) * 2017-09-27 2019-04-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、及び復号方法
US11570470B2 (en) 2017-09-28 2023-01-31 Vid Scale, Inc. Complexity reduction of overlapped block motion compensation
WO2019074273A1 (ko) * 2017-10-10 2019-04-18 한국전자통신연구원 인터 예측 정보를 사용하는 방법 및 장치
KR102427789B1 (ko) 2017-10-10 2022-08-02 한국전자통신연구원 인터 예측 정보를 사용하는 방법 및 장치
WO2019089864A1 (en) * 2017-11-01 2019-05-09 Vid Scale, Inc. Overlapped block motion compensation
WO2019093523A1 (ja) * 2017-11-13 2019-05-16 シャープ株式会社 動画像符号化装置および動画像復号装置
WO2019124191A1 (ja) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019124193A1 (ja) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019137735A1 (en) * 2018-01-15 2019-07-18 Telefonaktiebolaget Lm Ericsson (Publ) Restricted overlapped block motion compensation
EP4221201A1 (en) 2018-01-29 2023-08-02 InterDigital VC Holdings, Inc. Encoding and decoding with refinement of the reconstructed picture
US11563970B2 (en) 2018-02-26 2023-01-24 Interdigital Vc Holdings, Inc. Method and apparatus for generalized OBMC
WO2019194458A1 (ko) * 2018-04-01 2019-10-10 엘지전자 주식회사 Obmc를 이용한 영상 코딩 방법 및 그 장치
WO2019204234A1 (en) * 2018-04-15 2019-10-24 Arris Enterprises Llc Unequal weight planar motion vector derivation
WO2019201203A1 (en) * 2018-04-16 2019-10-24 Mediatek Inc. Methods and apparatuses of video processing with overlapped block motion compensation in video coding systems
WO2019221512A1 (ko) * 2018-05-16 2019-11-21 엘지전자 주식회사 Obmc에 기반한 영상 코딩 방법 및 그 장치
WO2019227297A1 (zh) * 2018-05-28 2019-12-05 华为技术有限公司 一种视频图像的帧间预测方法、装置及编解码器
JP7460617B2 (ja) 2018-06-29 2024-04-02 北京字節跳動網絡技術有限公司 Lut更新条件
EP3797516A1 (en) 2018-06-29 2021-03-31 Beijing Bytedance Network Technology Co. Ltd. Interaction between lut and amvp
CN110662056B (zh) 2018-06-29 2022-06-07 北京字节跳动网络技术有限公司 哪个查找表需要更新或不更新
KR20210024502A (ko) 2018-06-29 2021-03-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Hmvp 후보를 병합/amvp에 추가할 때의 부분/풀 프루닝
WO2020003278A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: fifo, constrained fifo
TWI723444B (zh) 2018-06-29 2021-04-01 大陸商北京字節跳動網絡技術有限公司 使用一個或多個查找表來按順序存儲先前編碼的運動信息並使用它們來編碼後面的塊的概念
CN110662057B (zh) 2018-06-29 2022-06-21 北京字节跳动网络技术有限公司 视频处理方法、装置、设备以及存储比特流的方法
EP3791588A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Checking order of motion candidates in lut
WO2020008325A1 (en) * 2018-07-01 2020-01-09 Beijing Bytedance Network Technology Co., Ltd. Improvement of interweaved prediction
EP4307679A3 (en) 2018-07-02 2024-06-19 Beijing Bytedance Network Technology Co., Ltd. Luts with intra prediction modes and intra mode prediction from non-adjacent blocks
US11051036B2 (en) * 2018-07-14 2021-06-29 Mediatek Inc. Method and apparatus of constrained overlapped block motion compensation in video coding
CN110740321B (zh) * 2018-07-20 2022-03-25 北京字节跳动网络技术有限公司 基于更新的运动矢量的运动预测
US11336914B2 (en) * 2018-08-16 2022-05-17 Qualcomm Incorporated History-based candidate list with classification
CN112585972B (zh) * 2018-08-17 2024-02-09 寰发股份有限公司 视频编解码的帧间预测方法及装置
WO2020039408A1 (en) 2018-08-24 2020-02-27 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation using temporal neighbors
CN110876057B (zh) * 2018-08-29 2023-04-18 华为技术有限公司 一种帧间预测的方法及装置
TW202025760A (zh) 2018-09-12 2020-07-01 大陸商北京字節跳動網絡技術有限公司 要檢查多少個hmvp候選
US11277628B2 (en) * 2018-09-24 2022-03-15 Qualcomm Incorporated Restrictions for the worst-case bandwidth reduction in video coding
WO2020084476A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Sub-block based prediction
JP7281890B2 (ja) 2018-10-24 2023-05-26 シャープ株式会社 動画像符号化装置および動画像復号装置
WO2020084552A1 (en) 2018-10-24 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Motion candidate derivation based on spatial neighboring block in sub-block motion vector prediction
WO2020089823A1 (en) 2018-10-31 2020-05-07 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation with adaptive sub-block size
WO2020098644A1 (en) 2018-11-12 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. Bandwidth control methods for inter prediction
CN111200735B (zh) * 2018-11-19 2023-03-17 华为技术有限公司 一种帧间预测的方法及装置
CN117319644A (zh) 2018-11-20 2023-12-29 北京字节跳动网络技术有限公司 基于部分位置的差计算
CN113170171B (zh) * 2018-11-20 2024-04-12 北京字节跳动网络技术有限公司 组合帧间帧内预测模式的预测细化
KR102660160B1 (ko) 2018-11-22 2024-04-24 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 서브 블록 기반 인터 예측을 위한 조정 방법
CN113170167A (zh) 2018-11-29 2021-07-23 北京字节跳动网络技术有限公司 块内拷贝模式中的标志指示方法
US11012697B2 (en) * 2018-12-07 2021-05-18 Qualcomm Incorporated Shared candidate list and parallel candidate list derivation for video coding
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
JP7011571B2 (ja) * 2018-12-28 2022-01-26 Kddi株式会社 画像復号装置、画像符号化装置、画像復号方法及びプログラム
JP7299362B2 (ja) * 2018-12-28 2023-06-27 Kddi株式会社 画像復号装置、画像符号化装置、画像復号方法及びプログラム
CN113196755A (zh) 2018-12-30 2021-07-30 北京达佳互联信息技术有限公司 用于三角形预测的视频编解码的方法和装置
CN113273186A (zh) 2019-01-10 2021-08-17 北京字节跳动网络技术有限公司 Lut更新的调用
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
CN113302937B (zh) 2019-01-16 2024-08-02 北京字节跳动网络技术有限公司 运动候选推导
WO2020177755A1 (en) 2019-03-06 2020-09-10 Beijing Bytedance Network Technology Co., Ltd. Usage of converted uni-prediction candidate
CN111726614A (zh) * 2019-03-18 2020-09-29 四川大学 一种基于空域下采样与深度学习重建的hevc编码优化方法
CN113615193B (zh) 2019-03-22 2024-06-25 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
KR102610709B1 (ko) 2019-04-02 2023-12-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 디코더 측 움직임 벡터 유도
EP3997877A4 (en) 2019-08-13 2023-05-24 Beijing Bytedance Network Technology Co., Ltd. MOTION ACCURACY IN SUBBLOCK-BASED INTERPREDICTION
CN114762330A (zh) 2019-09-22 2022-07-15 北京字节跳动网络技术有限公司 视频的子图片编码和解码
EP4082202A4 (en) * 2019-12-24 2023-05-10 Beijing Dajia Internet Information Technology Co., Ltd. MOTION ESTIMATION AREA FOR MERGER CANDIDATES
EP4315860A1 (en) * 2021-03-29 2024-02-07 Beijing Dajia Internet Information Technology Co., Ltd. Overlapped block motion compensation for inter prediction
JP2022162484A (ja) * 2021-04-12 2022-10-24 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
CN113596474A (zh) * 2021-06-23 2021-11-02 浙江大华技术股份有限公司 图像/视频编码方法、装置、系统及计算机可读存储介质
JP7549088B2 (ja) 2022-01-14 2024-09-10 Kddi株式会社 画像復号装置、画像符号化装置、画像復号方法及びプログラム
WO2024140958A1 (en) * 2022-12-29 2024-07-04 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing
WO2024146374A1 (en) * 2023-01-03 2024-07-11 Mediatek Inc. Method and apparatus of parameters inheritance for overlapped blocks motion compensation in video coding system
WO2024179479A1 (en) * 2023-02-28 2024-09-06 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing
WO2024188285A1 (en) * 2023-03-14 2024-09-19 Douyin Vision Co., Ltd. Method, apparatus, and medium for video processing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259734B1 (en) 1998-04-03 2001-07-10 Matsushita Electric Industrial Co., Ltd. Image processing method, image processing apparatus, and data storage media
JP3440830B2 (ja) * 1998-06-26 2003-08-25 ソニー株式会社 画像符号化装置及び方法、並びに記録媒体
US6647061B1 (en) * 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US7653133B2 (en) 2003-06-10 2010-01-26 Rensselaer Polytechnic Institute (Rpi) Overlapped block motion compression for variable size blocks in the context of MCTF scalable video coders
KR100605746B1 (ko) * 2003-06-16 2006-07-31 삼성전자주식회사 블럭 기반의 움직임 보상 장치 및 방법
US20100215101A1 (en) * 2007-04-09 2010-08-26 Yong Joon Jeon Method and an apparatus for processing a video signal
CN101653008A (zh) * 2007-04-09 2010-02-17 Lg电子株式会社 用于处理视频信号的方法和装置
WO2010017166A2 (en) * 2008-08-04 2010-02-11 Dolby Laboratories Licensing Corporation Overlapped block disparity estimation and compensation architecture
JP2012070278A (ja) * 2010-09-24 2012-04-05 Jvc Kenwood Corp 動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2012070277A (ja) * 2010-09-24 2012-04-05 Jvc Kenwood Corp 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
US9807424B2 (en) 2011-01-10 2017-10-31 Qualcomm Incorporated Adaptive selection of region size for identification of samples in a transition zone for overlapped block motion compensation
US9883203B2 (en) * 2011-11-18 2018-01-30 Qualcomm Incorporated Adaptive overlapped block motion compensation
US9813730B2 (en) 2013-12-06 2017-11-07 Mediatek Inc. Method and apparatus for fine-grained motion boundary processing
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
US10230980B2 (en) 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《Coding mode adapted overlapped block motion compensation in H.264》;Z.Wang et al.;《The Proceedings of the Multiconference on "Computational Engineering in Systems Applications"》;20061006;全文 *

Also Published As

Publication number Publication date
BR112017015533A2 (pt) 2018-03-13
US20190158876A1 (en) 2019-05-23
US10230980B2 (en) 2019-03-12
EP3251363A1 (en) 2017-12-06
EP4072143A3 (en) 2022-11-16
CN111355963A (zh) 2020-06-30
JP2018509032A (ja) 2018-03-29
WO2016123068A1 (en) 2016-08-04
CN107211157A (zh) 2017-09-26
JP6720191B2 (ja) 2020-07-08
US20160219302A1 (en) 2016-07-28
EP4072143A2 (en) 2022-10-12
JP7186745B2 (ja) 2022-12-09
JP2020150561A (ja) 2020-09-17
US10771811B2 (en) 2020-09-08
CA2971633C (en) 2024-02-27
TWI688262B (zh) 2020-03-11
TW201640894A (zh) 2016-11-16
KR20170108012A (ko) 2017-09-26
KR20230022282A (ko) 2023-02-14
CA2971633A1 (en) 2016-08-04

Similar Documents

Publication Publication Date Title
CN107211157B (zh) 用于视频译码的重叠运动补偿
CN111567043B (zh) 对视频数据进行译码的方法、装置和计算机可读存储介质
JP7211816B2 (ja) イントラブロックコピーマージモードおよび利用できないibc参照領域のパディング
CN111164973B (zh) 译码用于视频译码的仿射预测运动信息
CN111869217B (zh) 简化的局部照度补偿
AU2012335887B2 (en) Generating additional merge candidates
EP2756674B1 (en) Motion vector determination for video coding
EP3849182B1 (en) Restriction of prediction units in b slices to uni-directional inter prediction
WO2019147826A1 (en) Advanced motion vector prediction speedups for video coding
KR20200108432A (ko) 개선된 디코더측 모션 벡터 도출
CN111213376A (zh) 使用基于编码结构的候选列表构建对视频数据的运动信息进行编码
CN114128261A (zh) 用于视频译码的组合的帧间和帧内预测模式
KR102449889B1 (ko) 비디오 코딩을 위한 서브-블록 시간적 움직임 벡터 예측

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