CN112534811A - 视频编码中的帧内图片预测***和方法 - Google Patents

视频编码中的帧内图片预测***和方法 Download PDF

Info

Publication number
CN112534811A
CN112534811A CN201880096380.XA CN201880096380A CN112534811A CN 112534811 A CN112534811 A CN 112534811A CN 201880096380 A CN201880096380 A CN 201880096380A CN 112534811 A CN112534811 A CN 112534811A
Authority
CN
China
Prior art keywords
intra
candidate
current block
mode
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201880096380.XA
Other languages
English (en)
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.)
RealNetworks LLC
Original Assignee
RealNetworks 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 RealNetworks Inc filed Critical RealNetworks Inc
Publication of CN112534811A publication Critical patent/CN112534811A/zh
Pending legal-status Critical Current

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/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/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Landscapes

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

Abstract

用于为视频编码器和解码器提供帧内预测的***和方法,其中,视频编码器和解码器根据编码块的尺寸利用适当数量的预测模式。小于N×N像素(例如,16×16像素)的编码块可具有第一数量(例如,35个)的可能帧内预测模式,以及大于或等于N×N像素的编码块具有较大的第二数量(例如,67个)的可能模式。还提供了用于对适当数量的帧内预测模式编码和解码使得需要存储和/或传输已编码信息的数据最少化的***和方法。可针对忽略相邻块的、不是正在处理的当前块的可能模式的候选帧内预测模式的每个块生成候选模式列表,使得视频编码器和解码器可在各种尺寸的块之间处理适当数量的模式。

Description

视频编码中的帧内图片预测***和方法
技术领域
本公开大体涉及视频处理,并且更具体地,涉及帧内预测***和方法。
背景技术
诸如数字化图像、语音/音频、图形和视频的数字多媒体的出现显著地改善了各种应用并且开辟了全新的应用,因为通过其相对容易实现可靠的存储、通信、传输和搜索以及实现对内容的访问。总体上,数字多媒体的应用众多、涵盖范围广,包括娱乐、信息、医药和安全,并且已经以诸多方式使社会受益。通过传感器(诸如,相机和麦克风)所捕获的多媒体通常是模拟形式,并且通过脉冲编码调制(PCM)形式的数字化过程对其进行数字化。然而,紧接于数字化之后,所得到的数据的量可能非常大,因为需要重新创建扬声器和/或TV显示器所需的模拟表现形式。因此,大容量的数字多媒体内容的高效的通信、存储或传输要求其从原始PCM形式被压缩成经压缩的表现形式。因此,发明了用于压缩多媒体的诸多技术。多年来,视频压缩技术的发展得已非常成熟,这些技术通常可在保留高的心理视觉质量的同时实现处于10和100之间的高压缩系数,通常类似于未压缩的数字视频。
虽然在视频压缩的技术和科学领域中,迄今已取得了巨大的进步(如通过大量标准机构驱动的视频编码标准(诸如,MPEG-1、MPEG-2、H.263、MPEG-4第二部分、MPEG-4AVC/H.264、HEVC、AV1、MPEG-4SVC和MVC)以及工业驱动的专有标准(诸如Windows Media Video、Real Video、On2 VP等)所展现的那样),但是,消费者对于随时随地可访问的甚至更高质量、更高清晰度以及目前的3D(立体声)视频的日益增长的兴趣,已经使得通过诸如DVD/BD、无线广播、电缆/卫星、有线和移动网络的各种方式传递至一系列客户端设备(诸如,PC/膝上型电脑、电视、机顶盒、游戏机、便携式媒体播放器/设备、智能电话以及可穿戴计算设备)成为必然,从而刺激了对于更高水平的视频压缩的期望。在标准机构驱动的标准中,ISOMPEG最近在高效视频编码方面开始的尝试证实了这一现象,其期望将新的技术贡献和来自对ITU-T标准化部门的H.265视频压缩的数年的探索性研究的技术相结合。
全部上述标准采用常规的帧内/帧间预测编码框架,以减少已编码的比特流中的空间和时间冗余。帧间预测的基本构思是:通过使用块匹配方法消除相邻图片之间的时间关联性。在编码过程开始时,未编码视频序列的每个帧组合成I型帧、P型帧和B型帧这三个类别之一。I型帧是帧内编码的。换言之,仅使用来自帧本身的信息对图片进行编码,并且没有使用帧间运动补偿技术(尽管可应用帧内运动补偿技术)。
其他两种帧类型,P型和B型,使用帧间运动补偿技术来编码。P图片和B图片之间的差异在于用于运动补偿的参照图片的时间方向。P型图片按照显示顺序使用来自先前图片的信息,然而,B型图片可按照显示顺序使用来自先前和未来图片二者的信息。
对于P型帧和B型帧,之后将每个帧划分成通过每个像素的亮度和色度分量的系数表示的像素块,并且针对每个块获得一个或多个运动矢量(因为B型图片可使用来自未来和过去显示的帧二者的信息,所以对于每个块,可对两个运动矢量进行编码)。运动矢量(MV)表示从当前块的位置到另一个先前已编码帧(可以是按照显示顺序的过去帧或未来帧)中的相似块的位置的空间位移,上述块和帧分别被称为参考块和参考帧。计算参考块和当前块之间的差异以生成残差(也称为“残差信号”)。因此,对于帧间编码帧的每个块,仅需要对残差和运动矢量编码,而不是对块的全部内容编码。通过消除视频序列的帧之间的这种时间冗余,可对视频序列进行压缩。
为了进一步压缩视频数据,在应用帧间或帧内帧预测技术之后,通常将残差信号的系数从空间域变换到频率域(例如,利用离散余弦变换(DCT)或离散正弦变换(DST))。对于自然生成的图像,诸如通常组成人类可察觉的视频序列的那种图像,低频率能量总是强于高频率能量。因此,相比于空间域,残差信号在频率域中获得更好的能量压缩。在正向变换之后,可对系数和运动矢量进行量化和熵编码。
在视频解码器侧,应用逆量化和逆变换以恢复空间残差信号。这些是所有视频压缩标准中的典型变换/量化过程。然后,可执行反向预测过程,以生成原始未编码视频序列的重新创建的版本。
在过去的标准中,在编码中使用的块通常为十六乘十六像素(在诸多视频编码标准中被称为微块)。然而,随着这些标准的发展,帧尺寸已经发展成更大,并且诸多设备已经获得显示诸如1920×1080像素的高于“高清”(或HD)帧尺寸的能力。因此,对于这些帧尺寸(例如,64×64)的像素,可能期望具有更大的块来高效地对运动矢量进行编码。然而,因为分辨率相应地增加,所以也可能期望能够对相对小规模(例如,4×4)的像素执行运动预测和变换。
发明内容
视频解码方法可概述为包括:通过视频解码器接收指示待用作当前块的帧内预测模式的帧内预测模式的索引信息;通过视频解码器导出候选模式列表的至少一部分,该部分包括用于当前块的一个或多个候选帧内预测模式,其中,导出候选模式列表包括:确定多个相邻块的每个帧内预测模式是否为当前块的多个可能候选帧内预测模式之一,多个可能候选帧内预测模式取决于当前块的尺寸;忽略多个相邻块的、不是当前块的可能候选模式之一的任何帧内预测模式;如果存在确定为当前块的可能候选模式的帧内预测模式,则对帧内预测模式中的每一个,根据通过多个相邻块中的每一个相对于当前块的各位置确定的顺序,将帧内预测模式分配到候选模式列表中的索引位置;以及根据预定顺序,将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置中的相应索引位置;基于所接收的索引信息,通过视频解码器确定在所导出的候选模式列表中的候选模式中的哪个候选模式将用作当前块的帧内预测模式;以及基于所确定的当前块的帧内预测模式,通过视频解码器对当前块执行帧内预测,以生成与当前块对应的预测块。接收索引信息可包括:接收MPM索引信息和剩余模式信息中的至少一个以及MPM标志信息。接收索引信息可包括:接收包括一比特或两比特的MPM索引信息和包括五比特或六比特的剩余模式信息中的至少一个以及一比特的MPM标志。
候选模式列表可包括最可能模式子列表和非-MPM子列表,MPM子列表包括定位在候选模式列表的索引位置0至2处的候选帧内预测模式,以及非-MPM子列表包括定位在候选模式列表的索引位置3至N-1处的候选帧内预测模式,其中,N可以是当前块的可能候选模式的数量,以及其中,接收索引信息可包括:接收指示候选帧内预测模式是否位于MPM子列表中的MPM标志。接收索引信息可包括:接收指定MPM子列表中的索引位置的截断的一元编码。确定多个相邻块的每个帧内预测模式是否为当前块的可能候选模式之一可包括:确定三个相邻块的每个帧内预测模式是否为当前块的可能候选模式之一。三个相邻块可包括分别为邻近当前块的左上侧像素的相邻块。
当前块可包括第一数量的可能帧内预测模式,以及至少一个相邻块可包括第二数量的可能帧内预测模式,第二数量大于第一数量。如果当前块具有小于N×N像素的尺寸,则当前块可具有第一数量的可能帧内预测模式,其中,具有大于或等于N×N像素的尺寸的块具有第二数量的可能帧内预测模式,第一数量小于第二数量。N可等于16。根据预定顺序将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置可包括:按照升序顺序,将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置。处于第一尺寸范围中的块的可能帧内预测模式可包括35个帧内预测模式,以及处于第二尺寸范围中的块的可能帧内预测模式可包括67个帧内预测模式。35个帧内预测模式可包括DC模式、平面模式和33个方向性模式,以及67个帧内预测模式可包括DC模式、平面模式和67个方向性模式。
视频解码器可概括为包括:至少一个非暂时性处理器可读存储介质,存储处理器可执行指令或数据中的至少一个;以及控制电路,通信地联接至至少一个非暂时性处理器可读存储介质,在操作中,控制电路:接收指示待用作当前块的帧内预测模式的帧内预测模式的索引信息;导出候选模式列表的至少一部分,该部分包括用于当前块的一个或多个候选帧内预测模式,其中,导出候选模式列表包括:确定多个相邻块的每个帧内预测模式是否为当前块的多个可能候选帧内预测模式之一,多个可能候选帧内预测模式取决于当前块的尺寸;如果存在确定为当前块的可能候选模式的帧内预测模式,则对帧内预测模式中的每一个,根据通过多个相邻块中的每一个相对于当前块的各位置确定的顺序,将帧内预测模式分配到候选模式列表中的索引位置;以及根据预定顺序,将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置中的相应索引位置;基于所接收的索引信息,确定所导出的候选模式列表中的候选模式中的哪个候选模式将用作当前块的帧内预测模式;以及基于所确定的当前块的帧内预测模式,对当前块执行帧内预测,以生成与当前块对应的预测块。
候选模式列表可包括最可能模式子列表和非-MPM子列表,MPM子列表包括定位在候选模式列表的索引位置0至2处的候选帧内预测模式,以及非-MPM子列表可包括定位在候选模式列表的索引位置3至N-1处的候选帧内预测模式,其中,N可以是当前块的可能候选模式的数量,以及其中,控制电路可接收指示候选帧内预测模式是否位于MPM子列表中的MPM标志。索引信息可包括指定MPM子列表中的索引位置的截断的一元编码。多个相邻块可包括三个相邻块。三个相邻块可包括分别为邻近当前块的左上侧像素的相邻块。当前块可包括第一数量的可能帧内预测模式,以及至少一个相邻块可包括第二数量的可能帧内预测模式,第二数量大于第一数量。
视频编码方法可概括为包括:通过编码器接收待用作当前块的帧内预测模式的帧内预测模式;通过视频编码器确定指示帧内预测模式的索引信息,其中确定索引信息包括:通过视频编码器导出候选模式列表的至少一部分,该部分包括用于当前块的一个或多个候选帧内预测模式,其中,导出候选模式列表包括:确定多个相邻块的每个帧内预测模式是否为用于当前块的多个可能候选帧内预测模式之一,多个可能候选帧内预测模式取决于当前块的尺寸;忽略多个相邻块的、不是当前块的可能候选模式之一的任何帧内预测模式;如果存在确定为当前块的可能候选模式的帧内预测模式,则对帧内预测模式中的每一个,根据通过多个相邻块中的每一个相对于当前块的各位置确定的顺序,将帧内预测模式分配到候选模式列表中的索引位置;根据预定顺序,将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置中的相应索引位置;以及通过视频编码器确定所导出的候选模式列表中的候选模式之中、与所接收的当前块的帧内预测模式相同的一个候选模式的索引位置。
附图说明
在附图中,相同的参考标号指示相同的元件或动作。附图中元件的尺寸和相对位置不一定按比例绘制。例如,各种元件的形状和角度不一定按比例绘制,并且这些元件中的一些可随意地被放大和定位,以提高附图的易读性。此外,元件的如图所示的特定形状不一定旨在传达与特定元件的实际形状有关的任何信息,并且可仅为了易于在附图中识别而选择。
图1示出根据至少一个实施方式的示例性视频编码/解码***。
图2示出根据至少一个实施方式的示例性编码设备的若干组件。
图3示出根据至少一个实施方式的示例性解码设备的若干组件。
图4示出根据至少一个实施方式的示例性视频编码器的框图。
图5示出根据至少一个实施方式的示例性视频解码器的框图。
图6示出根据至少一个实施方式的处理单元的四象限树状结构的示例的框图。
图7示出根据至少一个实施方式的用于帧内预测的帧内预测模式的角度预测方向的图表。
图8示出根据至少一个实施方式的当前块以及具有不同尺寸的多个相邻块的第一示例。
图9示出根据至少一个实施方式的当前块以及不同尺寸的多个相邻块的第二示例。
图10示出根据至少一个实施方式的操作视频编码器以确定用于当前块的帧内预测模式的索引信息的方法的概要流程图。
图11示出根据至少一个实施方式的操作视频编码器以导出用于当前块的候选帧内预测模式列表的至少一部分的方法的流程图。
图12示出根据至少一个实施方式的操作视频解码器以对当前块的帧内预测模式进行解码的方法的概要流程图。
图13示出根据至少一个实施方式的操作视频解码器以导出用于当前块的候选帧内预测模式列表的至少一部分的方法的流程图。
具体实施方式
在以下描述中,阐述了某些特定细节以供更透彻地理解各种公开的实施例。然而,相关领域的技术人员将意识到,实施例可在没有这些特定细节中的一个或多个的情况下实施,或者利用其他方法、组件、材料来实施。在其他示例中,没有示出或详细描述与计算机***、服务器计算机和/或通信网络相关的公知结构,以避免不必要地使实施例的描述不清楚。
除非上下文另行要求,否则贯穿说明书和所附权利要求书,词语“包括(comprising)”与“包括(including)”同义,并且是包含性的或者开放式的(即,不排除另外的、未叙述的元件或方法动作)。
在本说明书通篇,对“一实施例”或“实施例”的引用表示结合实施例描述的特定特征、结构或特性包括在至少一个实施例中。因此,在本说明书通篇各处,短语“在一实施例中”或“在实施例中”的出现并非一定要全部引用同一个实施例。此外,特定结构、特征或特性能够以任何合适的方式结合到一个或多个实施例中。
除非上下文清楚地另行指出,否则如本说明书和所附权利要求书中所使用的,单数形式“一”、“一个”和“所述”包括多个参照对象。还应注意,除非上下文清楚地另行指出,否则术语“或”通常以包括“和/或”的含义来使用。
本文提供的本公开的标题和摘要仅是为了方便,而不是用于解释实施例的范围或含义。
本公开的一个或多个实施例涉及这样一种***和方法,其为根据编码块(或“块”)的尺寸使用适当数量的预测模式的视频编码器和解码器提供帧内预测。作为非限制性示例,在至少一些实施例中,小于N×N像素(例如,16×16像素)的编码块可具有第一数量(例如,35个)的可能帧内预测模式,并且大于或等于N×N像素的编码块具有较大的第二数量的(例如,67个)可能帧内预测模式。本文还提供了这样的***和方法,其用于对适当数量的帧内预测模式进行编码和解码,其中上述适当数量使得存储和/或传输已编码信息所需要的数据少量化。在至少一些实施例中,针对每个块生成候选模式列表(或“模式表”),该候选模式列表忽略或丢弃相邻块的、不是正在被处理的当前块的可能帧内预测模式的候选帧内预测模式。以这种方式,视频编码器和解码器可处理各种尺寸的编码块之间的适当数量的帧内预测模式。下面参照图1至图13讨论本公开的实施例的各特征。
图1示出根据至少一个实施方式的示例性视频编码/解码***100。编码设备200(图2中所示的和下面描述的)以及解码设备300(图3中所示的和下面描述的)与网络104数据通信。编码设备200可任一地通过诸如存储区域网络(SAN)、高速串行总线的直接数据连接和/或经由其他合适的通信技术或者经由网络104(如在图1中通过虚线所指)与未编码视频源108数据通信。类似地,解码设备300可任一地通过诸如存储区域网络(SAN)、高速串行总线的直接数据、和/或经由其他合适的通信技术、或者经由网络104(如图1中的虚线所指)连接与可选的已编码视频源112数据通信。在某些实施方式中,编码设备200、解码设备300、已编码视频源112和/或未编码视频源108可包括一个或多个复制式和/或分布式物理或逻辑设备。在诸多实施方式中,可存在比图示的更多的编码设备200、解码设备300、未编码视频源108和/或已编码视频源112。
在各实施方式中,编码设备200可以是通常能够通过网络104例如从解码设备300接收请求以及相应地提供应答的联网计算设备。在各实施方式中,解码设备300可以是具有外形因素的联网计算设备,诸如,移动电话;手表、眼镜或其他可穿戴计算设备;专用媒体播放器;计算式平板电脑;机动车车头单元;音频视频点播(AVOD)***;专用媒体控制台;游戏设备、“机顶盒”、数字视频记录仪、电视或通用计算机。在各实施方式中,网络104可包括互联网、一个或多个局域网络(LAN)、一个或多个广域网络(WAN)、蜂窝数据网络和/或其他数据网络。在各个方面,网络104可以是有线网络和/或无线网络。
参照图2,示出了示例性编码设备200的多个组件。在某些实施方式中,编码设备可包括比图2中所示的更少或更多的组件。然而,为了公开示例性实施方式,不必示出这些一般常规组件中的全部。如图2所示,示例性编码设备200包括用于连接至网络(诸如,网络104)的网络接口204。示例性编码设备200还包括处理单元208、存储器212、可选的用户输入部214(例如,字母数字键盘、小键盘、鼠标或其他指示设备、触摸屏和/或麦克风)以及可选的显示器216,其全部经由总线220与网络接口204互连。存储器212通常包括RAM、ROM和/或永久性大容量存储设备,诸如磁盘驱动器、闪速存储器等。
示例性编码设备200的存储器212存储操作***224,以及存储用于诸如视频编码器238(下面参照图4的视频编码器400所描述)的诸多软件服务的程序代码。存储器212还可存储可表示音频/视频媒体作品的未编码复本的视频数据文件(未示出),诸如,以示例的方式为电影和/或电视片断。这些和其他软件组件可利用与非暂时性计算机可读介质232关联的驱动机构(未示出)加载到编码设备200的存储器212中,其中驱动机构(未示出)为诸如软盘、磁带、DVD/CD-ROM驱动器、存储卡等。虽然已经描述了示例性编码设备200,但是编码设备可以是能够与网络104通信以及运行用于执行视频编码软件的指令的大量联网计算设备中的任意设备,诸如示例性视频编码器238或图4的视频编码器400。
在操作中,操作***224管理编码设备200的硬件和其他软件资源,并且为诸如视频编码器238的软件应用提供公共服务。对于硬件功能,诸如经由网络接口204进行网络通信、经由输入部214接收数据、经由显示器216输出数据以及为诸如视频编码器238的各种软件应用分配存储器212,操作***224充当硬件与在编码设备上运行的软件之间的媒介。
在某些实施方式中,编码设备200还可包括用于与未编码视频源108(图1)通信的专用未编码视频接口236,诸如高速串行总线等。在某些实施方式中,编码设备200可经由网络接口204与未编码视频源108通信。在其他实施方式中,未编码视频源108可置于存储器212或计算机可读介质232中。
虽然已经描述了通常与常规通用计算设备相适应的示例性编码设备200,但是编码设备200可以是能够对视频编码的诸多设备中的任意设备,其中,这些设备例如为视频记录设备、视频协同处理器和/或加速器、个人计算机、游戏控制台、机顶盒、手持式或可穿戴式计算设备、智能电话或任何其他合适的设备。
例如,编码设备200可操作以促进点播媒体服务(未示出)。在至少一个示例性实施方式中,编码设备200可操作点播媒体服务,以促进以作品为单位和/或根据订阅向用户提供媒体作品的数字化复本(如视频内容)的线上点播媒体商店。点播媒体服务可从未编码视频源108获得这种媒体作品的数字化复本。
参照图3,示出示例性解码设备300的多个组件。在某些实施方式中,解码设备可包括比图3中所示更少或更多的组件。然而,为了公开示例性实施方式,不必示出这些一般常规组件中的全部。如图3所示,示例性解码设备300包括用于连接至网络(诸如,网络104)的网络接口304。示例性解码设备300还包括处理单元308、存储器312、可选的用户输入部314(例如,字母数字键盘、小键盘、鼠标或其他指示设备、触摸屏和/或麦克风)、可选的显示器316以及可选的扬声器318,其全部经由总线320与网络接口304互连。存储器312通常包括RAM、ROM和永久性大容量存储设备,诸如,磁盘驱动器、闪速存储器等。
示例性解码设备300的存储器312可存储操作***324,以及存储用于诸如视频解码器338(下面参照图5的视频解码器500所描述)的诸多软件服务的程序代码。存储器312还可存储可表示音频/视频媒体作品的已编码复本的视频数据文件(未示出),诸如,以电影和/或电视片断为例。这些以及其他软件组件可利用与非暂时性计算机可读介质332关联的驱动机构(未示出)加载到解码设备300的存储器312中,这些驱动机构(未示出)诸如为软盘、磁带、DVD/CD-ROM驱动、存储卡等。虽然已经描述了示例性解码设备300,但是解码设备可以是能够与网络(诸如,网络120)通信以及运行用于执行视频解码软件(诸如,视频解码器338)的指令的大量联网计算设备中的任意计算设备。
在操作中,操作***324管理解码设备300的硬件和其他软件资源并且为诸如视频解码器338的软件应用提供公共服务。对于硬件功能,诸如经由网络接口304进行网络通信、经由输入部314接收数据、经由显示器316和/或可选的扬声器318输出数据以及分配存储器312,操作***324充当硬件与在编码设备上运行的软件之间的媒介。
在某些实施方式中,解码设备300还可包括例如用于与已编码视频源112通信的可选的已编码视频接口336,诸如,高速串行总线等。在某些实施方式中,解码设备300可经由网络接口304与已编码视频源(诸如,已编码视频源112)通信。在其他实施方式中,已编码视频源112可置于存储器312或计算机可读介质332中。
虽然已经描述通常与常规通用计算设备相适应的示例性解码设备300,但是解码设备300可以是能够对视频解码的诸多设备中的任意设备,其中,这些设备例如为视频记录设备、视频协同处理器和/或加速器、个人计算机、游戏控制台、机顶盒、手持式或可穿戴式计算设备、智能电话或任何其他合适的设备。
例如,解码设备300可***作以促进点播媒体服务。在至少一个示例性实施方式中,点播媒体服务可以以作品为单位和/或根据订阅向操作解码设备300的用户提供媒体作品的数字化复本,如视频内容。解码设备可经由网络104通过例如编码设备200从未编码视频源108获得这种媒体作品的数字化复本。
图4示出根据至少一个实施方式的采用残差变换(residual transformation)方法的以软件实现的视频编码器400(在后文中,为“编码器400”)的概略功能框图。视频编码器400可类似于或等同于图2中所示的编码设备200的视频编码器238。视频序列中的、按照显示顺序的一个或多个未编码视频帧(vidfrms)可被提供至定序器404。
定序器404可向每个未编码视频帧分配预测编码图片类型(例如,I、P或B),并且出于运动预测目的将帧序列、或来自帧序列的帧群组按照编码顺序重新排序(例如,I型帧后面接P型帧,后面接B型帧)。之后,可按照编码顺序将已定序的未编码视频帧(seqfrms)输入至块索引器408。
对于已定序的未编码视频帧(seqfrms)中的每一个,块索引器408可确定当前帧的最大编码块(LCB)尺寸(例如,64×64像素),并且将未编码帧划分成一排编码块(blcks)。给定帧中的各个编码块可具有不同尺寸,例如,从4×4像素至当前帧的LCB尺寸。
之后,可一次一个地将每个编码块输入至求差器412,并且可与来自先前已编码的编码块的、在预测模块415中生成的相应预测信号块(pred)求差。为了生成预测块(pred),还将编码块(blcks)提供到预测模块415的帧内预测器444和运动估计器416。当在求差器412处进行求差之后,可通过转换器420将所得的残差块(res)正向转换成频率域表现形式,从而得到转换系数块(tcof)。之后,可将转换系数块(tcof)发送至量化器424从而得到已量化系数块(qcf),其中,该已量化系数块(qcf)之后可被发送至熵编码器428和局部解码器回路430。
对于帧内编码的编码块,帧内预测器444提供表示与当前编码块相同的帧的先前编码区域的预测信号。对于帧间编码的编码块,运动补偿预测器442提供表示来自当前编码块不同的帧的先前编码区域的预测信号。
在局部解码回路430开始时,反向量化器432可对转换系数块进行反量化(cf'),并且将它们传递至反向转换器436以生成经反量化的残差块(res')。在加法器440处,可将来自运动补偿预测器442或帧内预测器444的预测块(pred)加到经反量化的残差块(res')以生成局部已解码块(rec)。之后可将局部已解码块(rec)发送至帧汇编器和去块滤波处理器488,其减小块效应并且汇编成可被用作运动估计器416和运动补偿预测器442的参考帧的已恢复帧(recd)。
熵编码器428对经量化的转换系数(qcf)、微分运动矢量(dmv)和其他数据进行编码,从而生成已编码视频比特流448。对于未编码视频序列的每个帧,已编码视频比特流448可包括已编码图片数据(例如,已编码的经量化的转换系数(qcf)和微分运动矢量(dmv))和已编码帧头部(例如,语法信息,诸如用于当前帧的LCB尺寸)。
图5示出根据至少一个实施方式执行反向残差变换方法并且适合与解码设备(诸如,解码设备300)一起使用的相应视频解码器500(在下文中,为“解码器500”)的概略功能框图。解码器500可与上面讨论的编码器400的局部解码回路430类似地进行工作。
具体地,待解码的已编码视频比特流504可提供至熵解码器508,其中,该熵解码器508可解码出已量化系数块(qcf)、微分运动矢量(dmv)、伴随消息数据包(msg-data)以及包括预测模式(帧内或帧间)的其他数据。已量化系数块(qcf)之后可被反向量化器512识别,从而得到恢复转换系数帧(cf')。恢复转换系数帧(cf')之后可通过反向转换器516在频率域之外进行反向变换,从而得到已解码残差块(res')。
当当前块的预测模式是帧间预测模式时,加法器520可从运动补偿预测器530添加通过使用相应运动矢量(dmv)获得的经运动补偿的预测块(psb)。
当用于当前块的预测模式是帧内预测模式时,预测块可基于当前图片的像素信息来构造。此时,帧内预测器534可确定当前块的帧内预测模式并且可基于所确定的帧内预测模式执行预测。这里,当确认从视频编码器接收到与帧内预测模式相关的信息时,帧内预测模式可被感应成与帧内预测模式相关信息对应。
所得的已解码视频(dv)可在帧汇编器和去块滤波处理器524中被去块滤波。在帧汇编器和去块滤波处理器524的输出处的块(recd)形成视频序列的重新构造的帧,其可从视频解码器500输出并且也可用作运动补偿预测器530的参考帧以对随后的编码块解码。
图6示出根据一个非限制性示出实施例的编码单元或块的四象限树状结构的示例的框图。基于四象限树状结构分割的编码块可称为编码树块。一个编码树块可不另行分割。在这种情况中,编码树块本身可为一个编码块或单元,其中,视频编码器可基于其执行编码操作。编码块可具有各种尺寸,诸如64×64像素、32×32像素、16×16像素、8×8像素、4×4像素等。具有最大可能尺寸的编码块可称为最大编码块(LCB),以及具有最小可能尺寸的编码块可称为最小编码块(SCB)。
在图6中,编码树块600示为具有包括通过分割编码树块获得的更小编码块610的阶层式结构。编码树块的尺寸信息、分割深度信息和分割标志信息例如可以在它们被包括在比特流中的序列参数集合中的状态下从视频编码器传输至视频解码器。
编码块610可用作一个预测块或者可被分割成多个预测块。对于帧内预测,如620所示,编码块和/或预测块的分割模式可为尺寸2N×2N或N×N,例如,其中N是整数(例如,4、8、16、32)。对于以620示出的帧内预测,编码块和/或预测块的分割模式可为尺寸N×M,例如,其中N是整数(例如,4、8、16、32),以及M是相同的或不同的整数(例如,4、8、16、32)。对于帧内预测模式,预测模块可在当前图片的重新构造的区域中基于像素信息执行预测,并且可构建当前块的预测块。例如,预测模块可利用定位在当前块的上侧、左侧、左上侧和/或右上侧的重新构建的块中的像素预测当前块中的像素值。
图7是示意性示出用于帧内预测的帧内预测模式的预测方向的示例的图表700。可基于正在考虑的当前块的帧内预测模式执行帧内预测过程。用于帧内预测过程的相应帧内预测模式可具有预定角度和/或预测方向,并且每个帧内预测模式可分配有预定的预测模式数量。帧内预测模式的示例可包括角度预测模式(图7中所示)、DC模式和平面模式。
在DC模式中,可使用固定值作为当前块中的像素的预测值。例如,可通过对当前块的相邻像素值求平均值来导出固定值。在平面模式中,可通过基于当前块的多个相邻像素的像素值进行的预定计算,导出定位在当前块中的预测目标像素的预测值。可根据预测目标像素的位置不同地确定用于预测预测目标像素的多个像素。在角度模式中,可根据针对每个模式预先确定的角度和/或方向执行预测。
如上文简要讨论的,本文的***和方法可根据当前块的尺寸利用适当数量的角度模式,因为较小的块可能不会从较多数量的角度预测模式获益。在图7中所示的示例中,较小的块(例如,尺寸小于16×16像素的块)可利用以实线示出的33种角度模式702,而较大的块(例如,尺寸大于或等于16×16像素的块)可利用以实线示出的33个角度模式702以及以虚线示出的、与角度模式702交错的32个角度模式704。因此,在示例中,所提供的较小的块具有33种可能的角度帧内预测模式,并且较大的块具有65种可能的角度帧内预测模式。
在图7的示例中,分配到平面模式的预测模式数量可以是0,并且分配到DC模式的预测模式数量可以是1。分配到角度模式702和704的预测模式数量可为2至66,其中,33个角度模式702编号为预测模式数量2,4,6,8,...,66,以及32个角度模式704编号为预测模式数量3,5,7,9,...,65。因此,在该示例中,较小的块可具有35个可能预测模式(即,模式0,1,2,4,6,8,...,66),以及较大的块可具有67个可能预测模式(即,模式0至66)。
通常,在确定帧内预测模式(例如,经由绝对差之和、均方差)之后,视频编码器可对所确定的帧内预测模式的信息编码,并且可向视频解码器传输已编码的信息。可传输指示预测模式的值本身(例如,2、32、65)作为与用于特定块的帧内预测模式有关的信息,或者可使用基于针对帧内预测模式预测的模式数量传输帧内预测模式信息的方法以显著地提高传输效率。在以下描述中,用作针对当前块的帧内预测模式的预测值的预测模式可称为最可能模式(MPM)。
在操作中,视频编码器可导出或构建候选帧内预测模式列表的、可包括MPM子列表和剩余或非-MPM子列表的至少一部分。MPM子列表可包括多个MPM候选项。换言之,视频编码器可基于邻近当前块的多个相邻块的帧内预测模式导出多个MPM候选项,并且可将MPM候选项分配到MPM子列表。虽然MPM子列表和非MPM子列表在本文中被称为“子列表”,但是应意识到,它们分别可以是各自由当前块的可能帧内预测模式中的一些构成的单独的列表。
图8示出具有指定为块A、块B和块C的三个相邻块的当前块的示例图800。相邻块A、B和C中的每一个为邻近当前块的左上侧像素。在该示例中,相邻块A和B与当前块的尺寸相同(例如,8×8像素),并且相邻块C是较大的块(例如,16×16像素)。在上面讨论的示例中,当前块、块A和块B可具有35个可能帧内预测模式,而相邻块C可具有67个可能帧内预测模式。换言之,当前块、块A(模式A)和块B(模式B)的可能帧内预测模式为模式0,1,2,4,6,8,...,66,块C(模式C)的可能帧内预测模式为模式0至66。
图9示出具有指定为块A、块B和块C的三个较小相邻块的较大当前块的另一示例图900。相邻块A、B和C中的每一个是邻近当前块的左上侧像素。在该示例中,相邻块A、B和C在尺寸上全部小于当前块。继续上面讨论的示例,块A、块B和块C可具有35个可能帧内预测模式,而当前块C可具有67个可能帧内预测模式。换言之,块A、块B和块C的可能帧内预测模式是模式0,1,2,4,6,8,...,66,以及当前块的可能帧内预测模式是模式0至66。
索引值可被分配到构成MPM子列表的多个MPM候选项。例如,索引值0可分配到第一MPM候选项,索引值1可分配到第二MPM候选项,以及索引值n-1可分配到候选列表中的第n个MPM候选项。因此,相对小的索引值可分配到相对早地位于候选列表中的MPM候选项。
在至少某些实施例中,MPM子列表中的MPM候选项的数量是固定的。例如,构成MPM子列表的MPM候选项的数量可固定为两个或三个候选项。
当MPM子列表中所包括的MPM候选项的数量被固定时,所导出的与相邻块对应的MPM候选项的数量可小于该固定的数量。例如,MPM子列表中所包括的MPM候选项的数量可固定为三个,并且三个相邻块可用于感应MPM候选项。如果相邻块中的两个(或全部三个)帧内预测模式彼此等同,则感应成与相邻块对应的MPM候选项的数量可为1或2。在这种情况中,视频编码器可确定一个或两个附加MPM候选项并且可将所确定的附加MPM候选项分配到MPM子列表。感应的附加MPM候选项可从除了感应成与相邻块对应的MPM候选项之外的帧内预测模式选择。
如另一示例,当前块可以是具有尺寸较大的一个或多个相邻块的较小块,并且因此具有不可能用于当前(较小)块的可能帧内预测模式。例如,当前块可具有可能帧内预测模式0,1,2,4,6,8,...,66,并且一个或多个相邻块可具有可能帧内预测模式0至66。在这种情况中,视频编码器可丢弃或忽略相邻块的不是当前块的可能帧内预测模式的帧内预测模式。如上,在这种情况中,视频编码器可确定附加MPM候选项并且可将所确定的附加MPM候选项分配到MPM子列表。感应的附加MPM候选项可从除了感应成与相邻块对应的MPM候选项之外的帧内预测模式中选择。
视频编码器可基于MPM子列表生成与帧内预测模式有关的信息,并且可对信息编码并且将信息传输至视频解码器。具体地,视频编码器可通过确定待用作当前块的帧内预测模式的MPM候选模式是否存在于构成MPM子列表的多个MPM候选项中,生成MPM标志信息。
当待用作当前块的帧内预测模式的MPM候选项存在于MPM子列表中时,视频编码器可生成指示处于构成MPM候选列表的多个MPM候选项之外的、待用作当前块的帧内预测模式的MPM候选项的索引信息。例如,索引信息可指分配到待用作当前块的帧内预测模式的MPM候选项的索引值。在一些实施例中,可使用截断的一元编码,其中,二进制值0、10和11可用于分别代表MPM子列表的三个索引位置0、1和2。
当待用作当前块的帧内预测模式的MPM候选项不存在于MPM子列表中时,视频编码器可生成指示候选模式列表的剩余或非-MPM子列表中与当前块的帧内预测模式对应的位置的索引信息。在以上示例中,较小块可具有包括32个可能帧内预测模式(即,总共35个模式,扣除MPM子列表中的3个模式)的非-MPM子列表。因此,对于较小块,5比特可用于表示:当帧内预测模式没有位于MPM子列表中时当前块的索引信息。类似地,较大块可具有包括64个可能帧内预测模式(即,总共67个模式,扣除MPM子列表中的3个模式)的非-MPM子列表。因此,对于较大块,6比特可用于表示当帧内预测模式没有位于MPM子列表中时当前块的索引信息。
提供以下示例来进一步说明对候选模式列表的MPM子列表和非-MPM子列表的确定。返回参照图8,假设当前块是具有确定的帧内预测模式M的较小块(例如,小于16×16像素)。回顾当前块的可能帧内预测模式,相邻块A(模式A)和相邻块B(模式B)是模式0,1,2,4,6,8,...,66(即,35个模式),以及相邻块C(模式C)的可能帧内预测模式是模式0至66(即,67个模式)。
如第一示例,三个相邻块A、B和C可分别具有帧内预测模式0、4和5。因为块C具有不是当前块的可能模式的模式5,所以丢弃模式5,并且MPM子列表由相邻块A和B的帧内预测值以及剩余可能模式之一构成。换言之,MPM子列表将为[0,4,1],其中1是来自可能模式0,1,2,4,6,8,...,66的剩余模式中的第一模式。在该示例中,非MPM列表将是[2,6,8,10,...,66]。值得注意的是,因为模式4已经出现于MPM子列表中,所以移除模式4。
在该示例中,如果所确定的用于当前块的帧内预测模式是0、4或1,则MPM标志将被设定,并且视频编码器将生成索引信息以识别帧内预测代码的索引位置。如利用截断的一元编码的示例,如果所确定的帧内预测模式是0,则视频编码器将生成二进制索引值0(即,索引位置0);如果所确定的帧内预测模式是4,则视频编码器将生成二进制索引值10(即,索引位置1);以及,如果所确定的帧内预测模式是1,则视频编码器将生成二进制索引值11(即,索引位置2)。
如果所确定的用于当前块的帧内预测模式不是0、4或1,则MPM标志将不会被设定并且帧内预测模式将通过非MPM列表中的与所确定的帧内预测模式对应的索引位置指示。例如,如果非-MPM子列表是[2,6,8,10,...,66]以及所确定的帧内预测模式是10,则索引信息将指示所确定的用于当前块的帧内预测模式是非-MPM子列表的索引位置3(例如,二进制00011),其为非-MPM子列表中的模式10的索引位置。
如另一示例,三个相邻块A、B和C可分别具有帧内预测模式2、2和7。因为相邻块C具有不是当前块的可能模式的模式7,所以丢弃模式7。此外,因为块A和B具有相同的模式(即,模式2),所以MPM子列表仅由相邻块的一个帧内预测值(即,模式2)以及两个剩余可能模式构成。换言之,MPM子列表将是[2,0,1],其中,0和1是剩余模式中的前两个。在该示例中,非MPM列表将是[4,6,8,10,...,66],其是当前块的经排序的剩余可能模式。
在该示例中,如果所确定的用于当前块的帧内预测模式是2、0或1,则MPM标志将被设定,并且视频编码器将生成索引信息以识别帧内预测代码的索引位置。如利用截断的一元编码的示例,如果所确定的帧内预测模式是2,则视频编码器将生成二进制索引值0(即,索引位置0);如果所确定的帧内预测模式是0,则视频编码器将生成二进制索引值10(即,索引位置1);以及,如果所确定的帧内预测模式是1,则视频编码器将生成二进制索引值11(即,索引位置2)。
如果所确定的当前块的帧内预测模式不是2、0、或1,则MPM标志将不会被设定并且帧内预测模式将通过非MPM列表中的与所确定的帧内预测模式对应的索引位置指示。例如,如果非-MPM子列表是[4,6,8,10,...,66]以及所确定的帧内预测模式是6,则索引信息将指示所确定的用于当前块的帧内预测模式是非-MPM子列表的索引位置2(例如,二进制00010),其为非-MPM子列表中的模式6的索引位置。
视频解码器可从视频编码器接收帧内预测模式信息并且可对信息解码。从视频编码器接收的帧内预测模式信息可包括MPM标志信息(例如,一比特)、MPM索引信息(例如,一比特或两比特)和/或剩余模式信息(例如,五比特或六比特)。视频解码器可根据是否设定MPM标志,仅接收MPM索引信息和剩余模式信息之一。视频解码器可利用与视频编码器相同的方法导出MPM候选项,并且可类似地构建MPM候选列表。
视频解码器可通过审阅以上描述的从视频编码器接收的MPM标志信息,确定待用作当前块的帧内预测模式的MPM候选项是否存在于MPM子列表中。
当待用作当前块的帧内预测模式的MPM候选项存在于MPM子列表中时,视频解码器可确定由MPM索引信息指示的MPM候选项为当前块的帧内预测模式。当待用作当前块的帧内预测模式的MPM候选项没有存在于MPM子列表中时,视频解码器可根据从视频编码器接收的剩余模式信息,导出当前块的帧内预测模式。视频解码器可利用来自视频编码器的已解码帧内预测模式信息,通过基于所确定的当前块的帧内预测模式对当前块执行帧内预测,构建与当前块对应的预测块。
图10示出操作视频编码器以确定用于视频帧的当前块的帧内预测模式索引信息的方法1000的概要流程图。例如,可通过上面讨论的视频编码器设备200和400执行方法1000。
方法1000在开始框之后开始,在1002处,视频编码器接收待用作当前块的帧内预测模式的帧内预测模式。作为示例,可通过视频编码器、基于目标质量指标(诸如,均方差(MSE)或绝对差之和(SAD)),利用一个或多个距离确定帧内预测模式。如上,在至少某些实施例中,较小块可具有比较大块更少的可能帧内预测模式。
在1004处,视频编码器确定指示当前块的帧内预测模式的索引信息。例如,视频编码器可确定是否设定MPM标志,以及可根据当前块的帧内预测模式是否位于MPM子列表中来确定MPM子列表或剩余非-MPM子列表中的索引位置。下面讨论的图11中提供了用于确定指示当前块的帧内预测模式的索引信息的示例性方法1100。
图11示出操作视频编码器以确定指示当前块的帧内预测模式的索引信息的方法1100的流程图。例如,可通过上面讨论的视频编码器设备200和400执行方法1100。所确定的索引信息随后可被视频解码器使用,以识别当前块的帧内预测模式。
在1102处,视频编码器导出候选模式列表的至少一部分,该部分包括当前块的一个或多个候选帧内预测模式。例如,视频编码器可导出候选模式列表的MPM子列表或剩余或非-MPM子列表。下面参考方法1100的动作1104至1112来讨论导出候选模式列表。
在1104处,视频编码器确定相邻块中的多个(例如,两个、三个、四个)的每个帧内预测模式是否为当前块的多个可能候选帧内预测模式之一。多个可能候选帧内预测模式可取决于当前块的尺寸。如上,在至少某些实施例中,较小块(例如,小于16×16像素)可具有比较大块数量更少的(例如,35个)可能帧内预测模式,其中,较大块可具有较大数量(例如,67个)的帧内预测模式。
在1106处,视频编码器忽略多个相邻块的、不是当前块的可能候选模式之一的任何帧内预测模式。例如,如果较大相邻块具有不是较小当前块的可能帧内预测模式的帧内预测模式,则视频编码器忽略或丢弃该帧内预测模式。
在1108处,如果存在确定为当前块的可能候选模式的帧内预测模式,则对于这些帧内预测模式中的每一个,视频编码器根据通过多个相邻块中的每一个相对于当前块的各位置确定的顺序,将帧内预测模式分配到候选模式列表中的索引位置。例如,视频编码器可利用三个相邻块,即,邻近当前块的左上侧像素的三个相邻块。视频编码器可根据也由视频解码器知晓的预定顺序对MPM子列表中的三个相邻块排序。作为非限制性示例,视频编码器可将邻近当前块的左边的相邻块排序为第一,将定位在当前块上方的相邻块排序为第二,以及将定位在当前块的对角线上的相邻块排序为第三。
在1110处,视频编码器根据预定顺序将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置中的相应索引位置。例如,如果三个相邻块的帧内预测模式填充MPM子列表,则视频编码器可按照升序的顺序将剩余候选模式分配到非MPM列表中的未分配的索引位置,从而省略已经位于MPM子列表中的任何帧内预测模式。
在1112处,视频编码器确定所导出的候选模式列表中的候选模式中的、与所接收的当前块的帧内预测模式相同的一个候选模式的索引位置。如上所讨论,索引位置可位于MPM子列表或非-MPM子列表中。
图12示出操作视频解码器以对当前块的帧内预测模式解码的方法1200的概要流程图。例如,可通过上面讨论的视频解码器设备300和500执行方法1200。
在1202处,视频解码器接收指示待用作当前块的帧内预测模式的帧内预测模式的索引信息。所接收的索引信息可包括MPM索引信息和剩余模式(非MPM)信息中的至少一个以及MPM标志信息。在至少某些实施例中,所接收的索引信息可包括一比特或两比特的MPM索引信息(例如,截断的一元编码)和五比特或六比特的剩余模式信息(例如,代表32或64个帧内预测模式)中的至少一个以及一比特MPM标志。
在1204处,视频解码器导出候选模式列表的至少一部分,该部分包括当前块的一个或多个候选帧内预测模式。下面参考图13的方法1300进一步讨论导出候选模式列表。
在1206处,视频解码器基于所接收的索引信息确定所导出的候选模式列表中待用作当前块的帧内预测模式的候选模式之一。例如,视频解码器可接收设定MPM标志以及指示MPM子列表的索引位置1的截断的一元编码10,并且确定出当前块的帧内预测模式是定位在所导出的MPM子列表的索引位置1处的帧内预测模式。
在1208处,视频解码器基于所确定的当前块的帧内预测模式,对当前块执行帧内预测以生成与当前块对应的预测块。
图13示出操作视频解码器以导出用于当前块的候选帧内预测模式列表的至少一部分的方法1300的流程图。例如,可通过上面讨论的视频解码器设备300和500执行方法1300。
在1302处,视频解码器确定多个相邻块的每个帧内预测模式是否为当前块的多个可能候选帧内预测模式之一。多个可能候选帧内预测模式可取决于当前块的尺寸。如上,视频解码器可确定较大块的帧内预测模式是否为较小当前块的可能帧内预测模式。
在1304处,视频解码器忽略多个相邻块的、不是当前块的可能候选模式之一的任何帧内预测模式。
在1306处,如果存在确定为当前块的可能候选模式的帧内预测模式,则对于这些帧内预测模式中的每一个,视频解码器根据通过多个相邻块中的每一个相对于当前块的各位置确定的顺序,将帧内预测模式分配到候选模式列表中的索引位置。
在1308处,视频编码器根据预定顺序(例如,升序的顺序,从而省略先前使用的不是当前块的可能帧内预测代码的帧内预测代码或帧内预测代码),将一个或多个剩余候选模式分配到候选模式列表的未分配的索引位置中的相应索引位置。
前述详细描述已经通过使用框图、示意图和示例阐述了设备和/或过程的各种实施例。在这些框图、示意图和示例包括一个或多个功能和/或操作的范围内,本领域技术人员将理解,处于这样的框图、流程图或示例内的每个功能和/或操作可通过硬件、软件、固件或实际上其任何组合的宽范围,单独地和/或集合地被执行。在一个实施例中,所提出的主题可通过专用集成电路(ASIC)来执行。然而,本领域技术人员将意识到:本文全部或部分公开的实施例可作为在一个或多个计算机上运行的一个或多个计算机程序(例如,作为在一个或多个计算机***上运行的一个或多个程序)、作为在一个或多个控制器(例如,微控制器)上运行的一个或多个程序、作为在一个或多个处理器(例如,微处理器)上运行的一个或多个程序、作为固件、作为实际上其任何组合在标准集成电路中等同地被执行,以及,在本领域普通技术人员根据本公开所得的技能内,可以设计电路和/或编写用于软件和/固件的代码。
本领域技术人员将意识到,本文阐述的诸多方法或算法可应用附加的动作,或省略一些动作,和/或能以与指定的顺序不同的顺序来执行动作。
此外,本领域技术人员将意识到,本文教导的机构能够作为程序产品以各种各样的形式分布,并且说明性实施例同等地适用,而与实际上用于执行分布的特定类型的承载信号的媒体无关。承载信号的媒体的示例包括但不限于以下:可记录类型介质,诸如软盘、硬盘驱动器、CDROM、数字磁带和计算机存储器。
以上描述的各种实施例可结合以提供进一步的实施例。可根据以上详细描述对实施例做出这些和其他改变。通常,在所附权利要求书中,所使用的术语不应解释为将权利要求限制于说明书和权利要求中公开的特定实施例,而是应解释为包括全部可能的实施例以及这样的权利要求享有权利的等同的完整范围。因此,权利要求不受本公开限制。

Claims (20)

1.视频解码方法,包括:
通过视频解码器接收指示待用作当前块的帧内预测模式的帧内预测模式的索引信息;
通过所述视频解码器导出候选模式列表的至少一部分,所述至少一部分包括所述当前块的一个或多个候选帧内预测模式,其中,导出所述候选模式列表包括:
确定多个相邻块的每个帧内预测模式是否为所述当前块的多个可能候选帧内预测模式之一,所述多个可能候选帧内预测模式取决于所述当前块的尺寸;
忽略所述多个相邻块的、不是所述当前块的可能候选模式之一的任何帧内预测模式;
如果存在确定为所述当前块的可能候选模式的帧内预测模式,则对所述帧内预测模式中的每一个,根据通过所述多个相邻块中的每一个相对于所述当前块的各位置确定的顺序,将所述帧内预测模式分配到所述候选模式列表中的索引位置;以及
根据预定顺序,将一个或多个剩余候选模式分配到所述候选模式列表的未分配的索引位置中的相应索引位置;
基于所接收的索引信息,通过所述视频解码器确定在所导出的候选模式列表中的候选模式中的哪个候选模式将用作所述当前块的帧内预测模式;以及
基于所确定的所述当前块的帧内预测模式,通过所述视频解码器对所述当前块执行帧内预测,以生成与所述当前块对应的预测块。
2.如权利要求1所述的视频解码方法,其中,接收所述索引信息包括:接收MPM标志信息和剩余模式信息中的至少一个以及MPM标志信息。
3.如权利要求2所述的视频解码方法,其中,接收所述索引信息包括:接收包括一比特或两比特的MPM索引信息和包括五比特或六比特的剩余模式信息中的至少一个以及一比特MPM标志。
4.如权利要求1所述的视频解码方法,其中,所述候选模式列表包括最可能模式(MPM)子列表和非-MPM子列表,所述MPM子列表包括定位在所述候选模式列表的索引位置0至2处的候选帧内预测模式,以及所述非-MPM子列表包括定位在所述候选模式列表的索引位置3至N-1处的候选帧内预测模式,其中,N是所述当前块的可能候选模式的数量,以及
其中,接收所述索引信息包括:接收指示所述候选帧内预测模式是否位于所述MPM子列表中的MPM标志。
5.如权利要求4所述的视频解码方法,其中,接收所述索引信息包括:接收指定所述MPM子列表中的索引位置的截断的一元编码。
6.如权利要求1所述的视频解码方法,其中,确定用于所述多个相邻块的每个帧内预测模式是否为所述当前块的可能候选模式之一包括:确定三个相邻块的每个帧内预测模式是否为所述当前块的可能候选模式之一。
7.如权利要求6所述的视频解码方法,其中,所述三个相邻块包括分别为邻近所述当前块的左上侧像素的相邻块。
8.如权利要求1所述的视频解码方法,其中,所述当前块包括第一数量的可能帧内预测模式,并且至少一个相邻块包括第二数量的可能帧内预测模式,所述第二数量大于所述第一数量。
9.如权利要求1所述的视频解码方法,其中,如果所述当前块的尺寸小于N×N像素,则所述当前块具有第一数量的可能帧内预测模式,其中,尺寸大于或等于N×N像素的块具有第二数量的可能帧内预测模式,所述第一数量小于所述第二数量。
10.如权利要求9所述的视频解码方法,其中,N等于16。
11.如权利要求1所述的视频解码方法,其中,根据预定顺序将所述一个或多个剩余候选模式分配到所述候选模式列表的未分配的索引位置包括:按照升序顺序,将所述一个或多个剩余候选模式分配到所述候选模式列表的未分配的索引位置。
12.如权利要求1所述的视频解码方法,其中,第一尺寸范围中的块的所述可能帧内预测模式包括35个帧内预测模式,以及第二尺寸范围中的块的可能帧内预测模式包括67个帧内预测模式。
13.如权利要求12所述的视频解码方法,其中,所述35个帧内预测模式包括DC模式、平面模式和33个方向性模式,以及所述67个帧内预测模式包括DC模式、平面模式和67个方向性模式。
14.视频解码器,包括:
至少一个非暂时性处理器可读存储介质,存储处理器可执行指令或数据中的至少一个;以及
控制电路,通信地联接至所述至少一个非暂时性处理器可读存储介质,在操作中,所述控制电路:
接收指示待用作当前块的帧内预测模式的帧内预测模式的索引信息;
导出候选模式列表的至少一部分,所述至少一部分包括所述当前块的一个或多个候选帧内预测模式,其中,导出所述候选模式列表包括:
确定多个相邻块的每个帧内预测模式是否为所述当前块的多个可能候选帧内预测模式之一,所述多个可能候选帧内预测模式取决于所述当前块的尺寸;
如果存在确定为所述当前块的可能候选模式的帧内预测模式,则对所述帧内预测模式中的每一个,根据通过所述多个相邻块中的每一个相对于所述当前块的各位置确定的顺序,将所述帧内预测模式分配到所述候选模式列表中的索引位置;以及
根据预定顺序,将一个或多个剩余候选模式分配到所述候选模式列表的未分配的索引位置中的相应索引位置;
基于所接收的索引信息,确定所导出的候选模式列表中的候选模式中的哪个候选模式将用作所述当前块的帧内预测模式;以及
基于所确定的所述当前块的帧内预测模式,对所述当前块执行帧内预测,以生成与当前块对应的预测块。
15.如权利要求14所述的视频解码器,其中,所述候选模式列表包括最可能模式子列表和非-MPM子列表,所述MPM子列表包括定位在所述候选模式列表的索引位置0至2处的候选帧内预测模式,以及所述非-MPM子列表包括定位在所述候选模式列表的索引位置3至N-1处的候选帧内预测模式,其中,N是所述当前块的可能候选模式的数量,以及
其中,所述控制电路接收指示所述候选帧内预测模式是否位于所述MPM子列表中的MPM标志。
16.如权利要求15所述的视频解码器,其中,所述索引信息包括指定所述MPM子列表中的索引位置的截断的一元编码。
17.如权利要求14所述的视频解码器,其中,所述多个相邻块包括三个相邻块。
18.如权利要求17所述的视频解码器,其中,所述三个相邻块包括分别为邻近所述当前块的左上侧像素的相邻块。
19.如权利要求14所述的视频解码器,其中,所述当前块包括第一数量的可能帧内预测模式,并且至少一个相邻块包括第二数量的可能帧内预测模式,所述第二数量大于所述第一数量。
20.视频编码方法,包括:
通过编码器接收待用作当前块的帧内预测模式的帧内预测模式;
通过所述视频编码器确定指示所述帧内预测模式的索引信息,其中,确定索引信息包括:
通过所述视频编码器导出候选模式列表的至少一部分,所述至少一部分包括所述当前块的一个或多个候选帧内预测模式,其中,导出所述候选模式列表包括:
确定多个相邻块的每个帧内预测模式是否为所述当前块的多个可能候选帧内预测模式之一,所述多个可能候选帧内预测模式取决于所述当前块的尺寸;
忽略所述多个相邻块的、不是所述当前块的可能候选模式之一的任何帧内预测模式;
如果存在确定为所述当前块的可能候选模式的帧内预测模式,则对所述帧内预测模式中的每一个,根据通过所述多个相邻块中的每一个相对于所述当前块的各位置确定的顺序,将所述帧内预测模式分配到所述候选模式列表中的索引位置;
根据预定顺序,将一个或多个剩余候选模式分配到所述候选模式列表的未分配的索引位置中的相应索引位置;以及
通过所述视频编码器确定所导出的候选模式列表中的候选模式之中、与所接收的当前块的帧内预测模式相同的一个候选模式的索引位置。
CN201880096380.XA 2018-06-20 2018-06-20 视频编码中的帧内图片预测***和方法 Pending CN112534811A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/038557 WO2019245551A1 (en) 2018-06-20 2018-06-20 Intra-picture prediction in video coding systems and methods

Publications (1)

Publication Number Publication Date
CN112534811A true CN112534811A (zh) 2021-03-19

Family

ID=68983436

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880096380.XA Pending CN112534811A (zh) 2018-06-20 2018-06-20 视频编码中的帧内图片预测***和方法

Country Status (3)

Country Link
US (1) US20210250579A1 (zh)
CN (1) CN112534811A (zh)
WO (1) WO2019245551A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230069984A1 (en) * 2021-08-24 2023-03-09 Tencent America LLC Hardware friendly design for intra mode coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017196957A1 (en) * 2016-05-13 2017-11-16 Qualcomm Incorporated Neighbor based signaling of intra prediction modes
WO2018002474A1 (fr) * 2016-06-29 2018-01-04 B<>Com Procédé de codage intra d'une image numérique et procédé de décodage correspondant
US20180131945A1 (en) * 2011-12-05 2018-05-10 Lg Electronics Inc. Method and device for intra prediction

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090074164A (ko) * 2006-09-29 2009-07-06 톰슨 라이센싱 기하학적 인트라 예측
AU2011354441B2 (en) * 2011-01-07 2014-07-17 Hfi Innovation Inc. Method and apparatus of improved intra luma prediction mode coding
KR20180008797A (ko) * 2015-06-15 2018-01-24 엘지전자 주식회사 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
EP3414906A4 (en) * 2016-02-08 2019-10-02 Sharp Kabushiki Kaisha SYSTEMS AND METHOD FOR INTRAPRADICATION CODING
CN116708776A (zh) * 2016-07-18 2023-09-05 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
US11234003B2 (en) * 2016-07-26 2022-01-25 Lg Electronics Inc. Method and apparatus for intra-prediction in image coding system
CN116915984A (zh) * 2016-10-04 2023-10-20 Lx 半导体科技有限公司 图像编码/解码方法和发送方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180131945A1 (en) * 2011-12-05 2018-05-10 Lg Electronics Inc. Method and device for intra prediction
WO2017196957A1 (en) * 2016-05-13 2017-11-16 Qualcomm Incorporated Neighbor based signaling of intra prediction modes
WO2018002474A1 (fr) * 2016-06-29 2018-01-04 B<>Com Procédé de codage intra d'une image numérique et procédé de décodage correspondant

Also Published As

Publication number Publication date
US20210250579A1 (en) 2021-08-12
WO2019245551A1 (en) 2019-12-26

Similar Documents

Publication Publication Date Title
US10531086B2 (en) Residual transformation and inverse transformation in video coding systems and methods
CN114391252A (zh) 基于自适应环路滤波器的视频或图像编码
US10735729B2 (en) Residual transformation and inverse transformation in video coding systems and methods
CN114424531A (zh) 基于环路内滤波的视频或图像编码
US20190268619A1 (en) Motion vector selection and prediction in video coding systems and methods
WO2018152749A1 (en) Coding block bitstream structure and syntax in video coding systems and methods
US10652569B2 (en) Motion vector selection and prediction in video coding systems and methods
CN112534811A (zh) 视频编码中的帧内图片预测***和方法
WO2018152750A1 (en) Residual transformation and inverse transformation in video coding systems and methods
KR20230017819A (ko) 영상 코딩 방법 및 그 장치
WO2018152760A1 (en) Motion vector selection and prediction in video coding systems and methods
WO2018165917A1 (en) Condensed coding block headers in video coding systems and methods
KR20240090220A (ko) 영상 디코딩 방법 및 그 장치
KR20220100063A (ko) Ph nal 유닛 코딩 관련 영상 디코딩 방법 및 그 장치
CN115349258A (zh) 图像编码***中用于残差编码的图像解码方法及其设备
KR20210084631A (ko) 머지 데이터에 대한 정보를 코딩하는 방법 및 장치
CN115336274A (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