CN113347423B - 帧内预测方法和装置 - Google Patents

帧内预测方法和装置 Download PDF

Info

Publication number
CN113347423B
CN113347423B CN202110406581.9A CN202110406581A CN113347423B CN 113347423 B CN113347423 B CN 113347423B CN 202110406581 A CN202110406581 A CN 202110406581A CN 113347423 B CN113347423 B CN 113347423B
Authority
CN
China
Prior art keywords
block
intra prediction
pixel
mode
current block
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
CN202110406581.9A
Other languages
English (en)
Other versions
CN113347423A (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202110406581.9A priority Critical patent/CN113347423B/zh
Publication of CN113347423A publication Critical patent/CN113347423A/zh
Application granted granted Critical
Publication of CN113347423B publication Critical patent/CN113347423B/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/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/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • 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
    • 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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/124Quantisation
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • 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/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/182Methods 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 a pixel
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Abstract

根据本发明的帧内预测方法和装置,能够导出当前块的帧内预测模式,并且确定多个像素线中的用于所述当前块的帧内预测的像素线,基于帧内预测模式与像素线,执行当前块的帧内预测。另外,可以选择性地对已确定的像素线的第一参考像素执行滤波,并且选择性地修改当前块的预测像素,以提高帧内预测的准确性。

Description

帧内预测方法和装置
本申请是基于申请日为2019年06月25日的PCT国际专利申请PCT/KR2019/007651进入中国国家阶段的中国专利申请号201980042368.5、发明名称为“帧内预测方法和装置”的分案申请。
相关申请的交叉引用
本申请基于申请号为10-2018-0072558、申请日为2018年06月25日的韩国专利申请提出,并要求该韩国专利申请的优先权,该韩国专利申请的全部内容在此引入本申请作为参考。
本申请基于申请号为10-2018-0076783、申请日为2018年07月02日的韩国专利申请提出,并要求该韩国专利申请的优先权,该韩国专利申请的全部内容在此引入本申请作为参考。
技术领域
本发明涉及一种图像编码和解码技术,更具体地,涉及一种用于帧内预测的编码/解码的方法和设备。
背景技术
近来,在各种应用领域中,对高分辨率、高质量的图像的需求越来越增加,如高分辨率(High Definition,HD)图像和超高清(Ultra High Definition,UHD)图像,由此,正在研发高效率的图像压缩技术。
作为图像压缩技术可以有,从当前图片的之前或之后的图片中预测当前图片中包括的像素值的帧间预测技术;使用当前图片中的像素信息来预测当前图片中包括的像素值的帧内预测技术;将短代码分配给出现频率高的信息而将长代码分配给出现频率低的信息的熵编码技术等多种技术,并且可利用这些图像压缩技术来有效地压缩图像数据并进行传输或存储。
发明内容
技术问题
本发明涉及一种图像编码和解码技术,更具体地,涉及一种用于帧内预测的编码/解码的方法和设备。
技术方案
根据本发明的帧内预测方法和装置,能够到导出当前块的帧内预测模式,并且确定多个像素线中用于所述当前块的帧内预测的像素线,基于所述帧内预测模式与所述已确定的像素线,执行所述当前块的帧内预测。
根据本发明的帧内预测方法和装置,可以对所述已确定的像素线的第一参考像素执行滤波。
根据本发明的帧内预测方法和装置,可以基于指示是否针对用于帧内预测的第一参考像素执行滤波的第一标志来选择性地所述执行滤波。
根据本发明的帧内预测方法和装置,可以基于所述当前块的编码参数从解码装置导出所述第一标志,所述编码参数可以包括块大小、分量类型、帧内预测模式、或者是否应用子块为单位的帧内预测中的至少一项。
根据本发明的帧内预测方法和装置,可以校正根据所述帧内预测的所述当前块的预测像素。
根据本发明的帧内预测方法和装置,所述校正还可以包括:基于所述当前块的预测像素的位置,确定用于所述校正的第二参考像素或加权值中的至少一个。
根据本发明的帧内预测方法和装置,可以考虑所述当前块的像素线的位置、所述当前块的帧内预测模式、或者是否执行所述当前块的子块为单位的帧内预测中的至少一项来选择性地执行所述校正步骤。
根据本发明的帧内预测方法和装置,能够以当前块的子块为单位执行所述帧内预测,基于关于是否执行分割的第二标志、分割方向信息、或者分割数量信息中的至少一个来确定所述子块。
根据本发明的帧内预测方法和装置,可以基于预定默认模式或多个MPM候选来导出所述帧内预测模式。
技术效果
根据本发明,可以通过子块单位的预测来提高编码/解码效率。
根据本发明,可以通过基于多个像素线的帧内预测来提高帧内预测的编码/解码效率。
根据本发明,可以通过对参考像素执行滤波来提高帧内预测的编码/解码效率。
根据本发明,可以通过校正帧内预测像素来提高帧内预测的编码/解码效率。
根据本发明,可以通过基于默认模式或MPM候选导出帧内预测模式来提高帧内预测模式的编码/解码效率。
附图说明
图1是根据本发明实施例的图像编码设备的框图。
图2是根据本发明实施例的图像解码设备的框图。
图3是示出基于树的块形状的示意图。
图4是示出基于类型的块形状的示意图。
图5是示出可以通过本发明的分割块部获得的各种块形状的示意图。
图6是用于说明根据本发明实施例的基于树的分割的示意图。
图7是用于说明根据本发明实施例的基于树的分割的示意图。
图8示出了根据本发明实施例的分割块过程。
图9是示出在图像编码/解码装置中预定义的帧内预测模式的示意图。
图10示出了为了获得相关性信息比较颜色空间之间的像素的示例。
图11是用于说明用于帧内预测的参考像素配置的示意图。
图12是用于说明用于帧内预测的参考像素范围的示意图。
图13是示出关于生成预测块的、与当前块相邻的块的图。
图14和图15是用于确认每个块的分割信息的部分示例。
图16是示出了分割块的各种情况的示意图。
图17示出了根据本发明实施例的分割块的示例。
图18示出了关于设置生成预测信息的块(在此示例中,预测块为2N×N)的帧内预测模式候选组的各种示例。
图19示出了关于设置生成预测信息的块(在此示例中,预测块N×2N)的帧内预测模式候选组的各种示例。
图20示出了根据本发明实施例的分割块的示例。
图21和图22示出了关于设置生成预测信息的块的帧内预测模式候选组的各种示例。
图23至图25示出了根据相邻块的预测模式生成预测块的示例。
图26是当前块和相邻块之间的关系的示意图。
图27和28示出了考虑预测模式的方向性的帧内预测。
图29是用于说明用于帧内预测的参考像素配置的示意图。
图30至图35是关于参考像素配置的示意图。
具体实施方式
根据本发明的帧内预测方法和装置,能够导出当前块的帧内预测模式,并且确定多个像素线中用于所述当前块的帧内预测的像素线,基于所述帧内预测模式与所述已确定的像素线,执行所述当前块的帧内预测。
根据本发明的帧内预测方法和装置,可以对所述已确定的像素线的第一参考像素执行滤波。
根据本发明的帧内预测方法和装置,可以基于指示是否针对用于帧内预测的第一参考像素执行滤波的第一标志来选择性地执行所述滤波。
根据本发明的帧内预测方法和装置,基于当前块的编码参数从解码装置导出所述第一标志,所述编码参数可以包括块大小、分量类型、帧内预测模式、或者是否应用子块为单位的帧内预测中的至少一项。
根据本发明的帧内预测方法和装置,可以校正根据所述帧内预测的所述当前块的预测像素。
根据本发明的帧内预测方法和装置,所述校正还可以包括:基于所述当前块的预测像素的位置,确定用于所述校正的第二参考像素或加权值中的至少一个。
根据本发明的帧内预测方法和装置,可以考虑所述当前块的像素线的位置、所述当前块的帧内预测模式、或者是否执行所述当前块的子块为单位的帧内预测中的至少一项来选择性地执行所述校正步骤。
根据本发明的帧内预测方法和装置,可以以当前块的子块为单位执行所述帧内预测,基于关于是否执行分割的第二标志、分割方向信息、或者分割数量信息中的至少一个来确定所述子块。
根据本发明的帧内预测方法和装置,可以基于预定默认模式或多个MPM候选来导出所述帧内预测模式。
本发明可以执行多种变更且具有多种实施例,而在此参照附图详细说明特定实施例。但是,这并不是为了将本发明限定在特定的实施方式,而是要理解为在本发明的思想和技术范围内的所有变更、同等物或代替物均包括在本发明。
诸如第一、第二、A、B之类的术语可以用于描述各种元件,但是这些元件不应受到这些术语的限制。这些术语的目的仅在于将一个元件与另一个元件区分开。例如,在不脱离本发明的范围的情况下,第一元件可以被称为第二元件,并且类似地,第二元件也可以被称为第一元件。术语“和/或”可以包括多个相关项目的组合或多个相关项目中的任何项目。
应理解,当一个元件被称为“连接”或“结合”到另一个元件时,它可以直接连接或结合到另一个元件,但是在它们之间可以存在其他元件。另一方面,应理解,当一个元件被称为“直接连接”或“直接结合”到另一个元件时,在它们之间没有其他元件。
本申请所使用的术语仅用于描述特定实施例,并且不旨在限制本发明。除非上下文另外明确指出,否则单数表达包括复数表达。在本申请中要理解,“包括”或“具有”等用语是为了指定说明书中记载的特征、数字、步骤、动作、结构要素、部件或这些的组合的存在,而并不预先排除一个或一个以上的其他特征、数字、步骤、动作、结构要素、部件或这些的组合的存在或附加可能性。
除非另有定义,否则本文所使用的所有术语,包括技术或科学术语,均与本领域普通技术人员通常理解的含义相同。诸如在常用词典中定义的术语应根据其在相关技术的上下文中的含义来解释,并且除非在本申请中明确定义,否则不应以想象的或过于形式化的意义来解释。
视频编码装置和解码装置可以是用户终端,如个人计算机(PC,PersonalComputer)、笔记本电脑,个人数字助理(PDA,Personal Digital Assistant),便携式多媒体播放器(PMP,Portable Multimedia Player)、掌上游戏机(PSP,Play StationPortable)、无线通信终端(Wireless Communication Terminal)、智能手机(SmartPhone)、电视机、虚拟现实设备(VR,Virtual Reality)、增强现实设备(AR,AugmentedReality)、混合现实设备(MR,Mixed Reality)、头戴式显示器(HMD,Head MountedDisplay)、智能眼镜(Smart Glasses)等,或者可以是服务器终端,如应用服务器和服务服务器等,可以包括各种装置,如通信装置,其包括用于与各种设备或有线和无线网络执行通信的通信调制解调器等、存储器(Memory),其为了编码或解码图像或者为了进行编码或解码,存储用于帧内预测或帧间预测的各种程序和数据、处理器(Processor),其通过执行程序来执行计算以及控制。而且,由图像编码装置编码为比特流的图像可以实时或非实时地通过诸如互联网、局域网、无线LAN网络、WiBro网络、移动通信网络等的有线以及无线通信网络(Network)或者通过各种通信接口,如电缆、通用串行总线(USB,Universal SerialBus)等,传输到图像解码装置,然后由图像解码装置解码,还原为图像并实现再生。
另外,由图像编码装置编码为比特流的图像可以通过计算机可读存储介质从编码装置传送到解码装置。
前述图像编码装置和图像解码装置分别可以是单独的装置,但是根据情况可以组成为一个图像编码/解码装置。在这种情况下,图像编码装置的一些配置作为与图像解码装置的一些配置实质相同的技术要素,能够以至少包括相同的结构或至少执行相同的功能的方式实现。
因此,在以下对技术要素及其操作原理等详细描述中,将省略对相应技术要素的重复描述。
并且,由于图像解码装置对应于将在图像编码装置执行的图像编码方法应用于解码的计算装置,因此以下将重点描述图像编码装置。
计算装置可以包括:存储器,其存储用于实现图像编码方法和/或图像解码方法的程序或软件模块;以及处理器,其连接至所述存储器以执行程序。图像编码装置可以被称为编码器,并且图像解码装置可以被称为解码器。
通常,图像可以被配置为一系列静止图像(Still Image),并且这些静止图像可以被分类为图片组(Group of Pictures,GOP),并且每个静止图像可以被称为图片。在这种情况下,图片可以表示逐行信号(Progressive)、隔行信号(Interlace)中的帧(Frame)和场(Field)中的任意一个,并且当以帧为单位执行编码/解码时,图像可以用‘帧’表示,当以场为单位执行编码/解码时,图像可以用‘场’表示。尽管本发明假设并描述了逐行信号,但是也可以适用于隔行信号。作为上位概念,可以存在诸如GOP或序列(Sequence)等单位,并且每个图片可以被分割为诸如切片、tile、块等的预定区域。另外,一个GOP可以包括诸如I图片、P图片和B图片的单位。I图片可以指在不使用参考图片的情况下由其自身进行编码/解码的图片,并且P图片和B图片可以指通过使用参考图片,执行诸如运动估计(MotionEstimation)和运动补偿(Motion Compensation)来进行编码/解码的图片。通常,在P图片的情况下,I图片和P图片可以用作参考图片,在B图片的情况下,I图片和P图片可以用作参考图片,但是上述定义也可以因编码/解码的设置而改变。
这里,将编码/解码的图片称为参考图片(Reference Picture),并且将被参考的块或像素称为参考块(Reference Block)和参考像素(Reference Pixel)。并且,参考数据(Reference Data)不仅可以是空间域(Spatial Domain)的像素值,而且可以是频域(Frequency Domain)的系数值以及在编码/解码过程中生成和确定的各种编码/解码信息。例如,可以是预测部中的帧内预测相关信息或运动相关信息、变换部/逆变换部中的变换相关信息、量化部/逆量化部中的量化信息以及编码部/解码部中的编码/解码相关信息(上下文信息),环路滤波部中的滤波相关信息等。
构成图像的最小单位可以是像素(Pixel),并且用于表示一个像素的位数称为位深度(Bit Depth)。通常,位深度可以是8位,并且根据编码设置可以支持更多位深度。根据颜色空间(Color Space),位深度可以支持至少一个位深度。另外,可以根据图像的颜色格式(Color Format)来配置至少一个颜色空间。根据颜色格式,可以由一张以上的具有特定尺寸的图片或一张以上的具有其他尺寸的图片组成。例如,在YCbCr为4:2:0的情况下,可以由一个亮度分量(在此示例中为Y)和两个色差分量(在此示例中为Cb/Cr)组成,此时,色差分量与亮度分量的组成比可以为水平和垂直1:2。作为另一个示例,4:4:4时,可以具有水平和垂直相同的组成比。如上所述示例,当图片由一个以上的颜色空间组成时,可以将图片分割为每个颜色空间。
在本发明中,将基于一些颜色格式(在此示例中为YCbCr)的一些颜色空间(在此示例中为Y)进行描述,可以对于根据颜色格式的其他颜色空间执行类似的适用(依赖于特定颜色空间的设置)。但是,也有可能在每个颜色空间产生部分差异(独立于特定颜色空间的设置)。即,依赖于每个颜色空间的设置可以意味着与每个成分的组成比成比例,或者具有依赖于其组成比的设置(例如,4:2:0、4:2:2、4:4:4等),独立于每个颜色空间的设置可以意味着与每个成分的组成比无关,或者具有仅针对相应的颜色空间的设置。在本发明中,根据编码/解码器,针对一些组成可以具有独立设置或从属设置。
图像编码过程中所需的设置信息或语法元素(Syntax Element)可以以视频、序列、图片、切片、tile,块等的单位级别进行确定,这可以是以视频参数集(Video ParameterSet,VPS)、序列参数集(Sequence Parameter Set,SPS)、图像参数集(Picture ParameterSet,PPS)、切片标头、tile标头、块头等单位收录在比特流中,并传输到编码器,解码器可以以相同级别的单位执行解析(Parsing)以复原从编码器传输的设置信息,使用在图像解码过程中。此外,相关信息可以以补充增强信息(Supplement Enhancement Information,SEI)或元数据(Meta data)等形式,传输至比特流进行解析以供使用。每个参数集具有唯一的ID值,并且下位参数集可以具有要参考的上位参数集的ID值。例如,下位参数集可以参考一个以上的上位参数集之中具有相同ID值的上位参数集的信息。对应于前述的各种单位的示例中的某一个单位包括一个以上的其他单位的情况,可以将该单位称为上位单位,并且被包括的单位可以被称为下位单位。
在所述单位中生成的设置信息,可以包括每个相应单位独立设置的内容或包括取决于之前、之后或上位单位的从属设置的内容。在此,从属设置可以理解为用标志信息表示相应单位的设置信息(例如,如果该1比特标志是1就执行,是0则不执行),该标志信息指示之前、之后、上位单位的设置。在本发明中,将基于独立设置的示例来描述设置信息,但是还可以包括,取决于当前单位的之前、之后的单位或上位单位的设置信息的内容中被添加或替换的例。
图1是根据本发明实施例的图像编码设备的框图。图2是根据本发明实施例的图像解码设备的框图。
参照图1,图像编码装置可以包括预测部、减法部、变换部、量化部、逆量化部、逆变换部、加法部、环路滤波部、存储器和/或编码部,并且上述结构中的一些可以不一定被包括,根据需要可以选择性地包括一些或全部,并且可以包括未示出的一些其他配置。
参照图2,图像解码装置可以包括解码部、预测部、逆量化部、逆变换部、加法部、环路滤波部和/或存储器,并且上述结构中的一些可以不一定被包括,根据需要可以选择性地包括一些或全部,并且可以包括未示出的一些其他配置。
图像编码装置与图像解码装置可以分别是单独的装置,但是根据需要可以构成为一个图像编码/解码设备。在这种情况下,图像编码装置的一些配置作为与图像解码装置的一些配置实质相同的技术要素,能够以至少包括相同的结构或至少执行相同的功能的方式实现。因此,在以下对技术要素及其操作原理等详细描述中,将省略对相应技术要素的重复描述。由于图像解码装置对应于将在图像编码装置执行的图像编码方法应用于解码的计算装置,因此以下将重点描述图像编码装置。图像编码装置可以被称为编码器,并且图像解码装置可以被称为解码器。
预测部可以包括执行帧内预测的帧内预测部和执行帧间预测的帧间预测部。帧内预测可以通过将当前块的相邻块的像素配置为参考像素来确定帧内预测模式,并且可以使用帧内预测模式来生成预测块,帧之间预测可以通过使用一个以上的参考图像确定当前块的运动信息,并且通过使用所述运动信息执行运动补偿,从而生成预测块。确定对于当前块(编码单元或者预测单元)使用帧内预测还是帧间预测,并且可以确定根据每个预测方法的具体信息(例如,帧内预测模式、运动矢量、参考图像等)。此时,可以根据编码/解码设置来确定执行预测的处理单元和确定预测方法和具体内容的处理单元。例如,由预测单元(或编码部)确定预测方法、预测模式等,并且由预测块单元(或编码单元、变换单元)执行预测。
减法部从当前块减去预测块以生成残差块(Residual Block)。即,减法部计算要被编码的当前块的每个像素的像素值与由预测器生成的预测块的每个像素的预测像素值之间的差,以生成残留块,该残留块是图像中的残留信号(Residual Signal)。
变换部可以将属于空间域的信号变换为属于频域的信号,并且通过变换处理获得的信号被称为变换系数(Transformed Coefficient)。例如,可以通过对具有从减法部接收的残差信号的残差块执行变换来获得具有变换系数的变换块,但是根据编码设置来确定输入信号,其不限于残差信号。
变换部可以使用诸如哈达马变换(Hadamard Transform),离散正弦变换(基于DST的变换,DST Based-Transform:Discrete Sine Transform)或离散余弦变换(基于DCT的变换,DCT Based-Transform:Discrete Cosine Transform)等变换技术来变换残差块,本发明不限于此,并且可以使用对其执行改进和修改的各种变换技术。
例如,可以支持所述变换中的至少一种变换技术,并且可以在每个变换技术中支持至少一种细部变换技术。此时,至少一种细部变换技术可以是,在每种变换方法中不同地配置基矢量(basis vector)的一部分的变化技术。例如,可以支持基于DST和基于DCT的变换作为变换技术,对于DST而言,可以支持DST-I、DST-II、DST-III、DST-V、DST-VI、DST-VII、DST-VIII等的细部变换技术,对于DCT而言,可以支持DCT-I、DCT-II、DCT-III、DCT-V、DCT-VI、DCT-VII、DCT-VIII等细部变换技术。
可以将所述变换之一(例如,一种变换技术和一种细部变换技术)设置为基本变换技术,因此,可以支持附加变换技术(例如,多种变换技术、多种细部变换技术)。可以以序列、图片、切片、tile等为单位来确定是否支持附加变换技术,从而可以以该单位生成相关信息,并且当支持附加变换技术时,可以以块等单位确定变换技术选择信息,生成相关信息。
可以在水平/垂直方向上执行变换。例如,可以通过使用在变换中的基矢量在水平方向上执行一维变换以及在垂直方向上执行一维变换,来执行共二维变换,从而将空间域的像素值变换至频域。
另外,可以适应性地执行水平/垂直方向上的变换。详细地,可以根据至少一个编码设置来确定是否执行自适应变换。例如,在帧内预测的情况下,当预测模式为水平模式时,可以在水平方向上应用DCT-I、在垂直方向上应用DST-I,而当预测模式为垂直模式时,可以在水平方向上应用DST-VI、在垂直方向上应用DCT-VI,而当Diagonal down left时,可以在水平方向上应用DCT-II、在垂直方向上应用DCT-V,而当Diagonal down right时,可以在水平方向上应用DST-I、在垂直方向上应用DST-VI。
可以根据变换块的尺寸和形状的每个候选的编码成本,确定每个变换块的尺寸和形状,可以对所确定的每个变换块的图像数据和所确定的每个变换块的尺寸和形状等信息执行编码。
可以将变换形式中的正方形变换设置为基本变换形式,并且可以支持附加的变换形式(例如,矩形形状)。可以以序列、图片、切片、tile等为单位来确定是否支持附加变换形式,并且可以以该单位生成相关信息,可以以块等单位确定变换形式选择信息,生成相关信息。
另外,可以根据编码信息来确定变换块形式的支持。此时,编码信息可以对应于切片类型、编码模式、块的大小和形状、分割块方式等。即,可以根据至少一种编码信息来支持一种变换形式,并且可以根据至少一种编码信息来支持多种变换形式。前者可能是隐式(Implicit)情况,而后者可能是显式(Explicit)情况。在显式情况下,可以生成指示多个候选组中的最佳候选组的自适应选择信息,将其收录在比特流中。可以理解,在包括本示例的本发明中,当显式地生成编码信息时,对应信息以各种单位被收录在比特流中,并且解码器以各种单位来解析相关信息,以复原解码的信息。另外,可以理解,当隐式地处理编码/解码信息时,编码器和解码器通过相同的过程和规则来处理。
作为一个示例,可以根据切片类型来确定矩形形状的变换支持。在I切片的情况下,支持的变换可以是正方形变换,在P/B切片的情况下,变换可以是正方形或矩形形状的变换。
作为一个示例,可以根据编码模式来确定矩形形状的变换支持。在Intra的情况下,支持的变换形式可以是正方形形状的变换,而在Inter的情况下,支持的变换形式可以是正方形或长方形形状的变换。
作为一个示例,可以根据块的尺寸和形状来确定矩形形状的变换支持。在预定大小或更大的块中所支持的变换形式可以是正方形形状变换,并且在小于预定大小的块中所支持的变换形式可以是正方形或矩形形状的变换。
作为一个示例,可以根据分割块方式来确定矩形形状的变换支持。当对其执行变换的块是通过四叉树(Quard Tree)分割方式获得的块时,支持的变换形式可以是正方形形状的变换,并且当通过二叉树(Binary Tree)分割方法获得的块时,支持的变换形式可以是正方形或矩形形状的变换。
上面的示例是对根据一个编码信息的变换形式支持的示例,并且可以组合多个信息以参与设置支持附加的变换形式。上面的示例不限于上述示例,而是针对根据各种编码设置支持附加变换形式的示例,并且可以实现各种修改示例。
根据编码设置或图像的特性,可以省略变换过程。例如,根据编码设置(在此示例中假设无损压缩环境),可以省略变换过程(包括逆处理过程)。作为另一示例,当没有根据图像的特性发挥通过转换的压缩性能时,可以省略转换过程。此时,省略的变换可以是整个单位,或者可以省略水平和垂直单位中的一个,并且可以根据块的大小和形状确定是否支持这种省略。
例如,在水平和垂直转换的省略被捆绑的设置中,当变换省略标志为1时,不在水平和垂直方向上执行变换,而当为0时,可以在水平和垂直方向上执行变换。在独立地操作水平和垂直变换的设置中,当第一变换省略标志为1时,不在水平方向上执行变换,若0,在则水平方向上执行变换,当第二变换省略标志为1时,不在垂直方向上执行变换,若为0,则在垂直方向上执行变换。
在块大小对应于范围A的情况下,可以支持变换省略,在范围B的情况下,不能支持变换省略。例如,如果块的水平长度大于M或块的垂直长度大于N,则不能支持变换省略标志,并且如果块的水平长度小于m或块的垂直长度小于n,则可以支持变换省略标志。M(m)和N(n)可以相同或不同。可以以序列、图片、切片等为单位来确定与变换相关的设置。
如果支持附加变换技术,则可以根据至少一个编码信息来确定变换技术设置。在这种情况下,编码信息可以对应于切片类型、编码模式、块的大小和形状、预测模式等。
作为一个示例,可以根据编码模式来确定对变换技术的支持。如果是Intra,则支持的变换技术可以是DCT-I、DCT-III、DCT-VI、DST-II、DST-III,如果是Inter,则支持的转换技术是DCT-II、DCT-III、DST-III。
作为一个示例,可以根据切片类型来确定对变换方案的支持。在I切片的情况下,支持的变换技术可以是DCT-I、DCT-II、DCT-III,在P切片的情况下,支持的变换技术可以是DCT-V、DST-V、DST-VI,在B切片的情况下,支持的变换技术可以是DCT-I、DCT-II、DST-III。
作为一个示例,可以根据预测模式来确定对变换技术的支持。预测模式A中所支持的变换技术可以是DCT-1、DCT-II,预测模式B中所支持的变换技术可以是DCT-1、DST-1,并且预测模式C中所支持的变换技术可以是DCT-I。在这种情况下,预测模式A和B可以是定向模式(Directional Mode),并且预测模式C可以是非定向模式(Non-Directional Mode)。
作为一个示例,变换技术的支持可以根据块的大小和形状来确定。在特定大小以上的块上所支持的变换技术可以是DCT-II,在小于特定大小的块上支持的变换方案可以是DCT-II、DST-V,并且在特定大小以上和小于特定大小的块上所支持的变换技术可以是DCT-I、DCT-II、DST-I。另外,以正方形形状支持的变换技术可以是DCT-1,DCT-II,并且以矩形形状支持的变换技术可以是DCT-1、DST-1。
上述的示例是对于根据一个编码信息的变换技术支持的示例,并且可以组合多个信息以参与设置支持附加的变换技术。不仅仅限于以上示例,还可以变换为其他示例。另外,变换部可以将生成变换块所需的信息发送到编码部以对该信息执行编码,并将该信息收录在比特流中,然后将该信息发送到解码器,并且解码器的解码部解析该信息并将其用于逆变换过程。
量化部可以量化输入信号,并且通过量化过程获得的信号被称为量化系数(Quantized Coefficient)。例如,可以通过对具有从变换部接收的具有残差变换系数的残差块执行量化来获得具有量化系数的量化块,此时根据编码设置来确定输入信号,该编码设置不限于残差变换系数。
量化部可以通过使用诸如死区均匀阈值量化(Dead Zone Uniform ThresholdQuantization)、量化加权矩阵(Quantization Weighted Matrix)等的量化技术来对变换后的残差块执行量化,但是不限于此,可以使用对其执行改进和修改的各种量化技术。
另外,量化部可以将生成量化块所需的信息发送到编码部以对该信息执行编码,并将该信息收录在比特流中,然后将该信息发送到解码器,并且解码器的解码部解析该信息并将其用于逆量化过程。
尽管已经在通过变换部和量化部对残差块执行变换和量化的假设下描述了以上示例,但是可以变换残差快的残差信号以生成具有变换系数的残差块,并可以不执行量化过程,不仅可以在不将残差快的残差信号变换为变换系数的情况下仅执行量化过程,而且还可以不执行变换和量化过程。这可以根据编码器设置来确定。
编码部根据至少一个扫描顺序(例如,之字形扫描、垂直扫描、水平扫描等)扫描所生成的残差块的量化系数、变换系数、或者残差信号等,生成对量化系数序列、变换系数序列、或者信号序列,并且可以通过使用至少一种熵编码(Entropy Coding)技术来执行编码。此时,可以根据编码设置(例如,编码模式,预测模式等)来确定关于扫描顺序的信息,并且可以隐式或显式地生成相关信息。例如,可以根据帧内预测模式选择多个扫描顺序中的一个。此时,可以将扫描图案设置为诸如之字形(Zig-Zag)、对角线形、栅格形(Raster)等各种图案之一。
而且,可以生成包括从每个组成部发送的编码信息的编码数据并输出至比特流,其可以由复用器(MUX,Multiplexer)实现。此时,编码技术可以利用诸如指数哥伦布(Exponential Golomb)、上下文自适应可变长度编码(CAVLC,Context Adaptive VariableLength Coding)、上下文自适应二进制算术编码(CABAC,Context Adaptive BinaryArithmetic Coding)等方法来执行编码,并且本发明不限于此,可以使用改进和修改的各种编码技术。
当对所述残差块数据和在编码/解码过程中生成的信息等语法元素(Syntax)执行熵编码(在此示例中,假设语法为CABAC)时,熵编码设备可以包括二进制化部(Binarizer)、上下文建模部(Context Modeler)、二进制算术编码部(Binary Arithmetic Coder)。此时,二进制算术编码部可以包括常规编码部(Regular Coding Engine)和旁路编码部(BypassCoding Engine)。此时,常规编码部可以是关于上下文建模器而执行的部件,并且旁路编码部可以是与上下文建模器无关而执行的部件。
由于输入到所述熵编码装置的语法元素可以不是二进制值,因此当语法元素不是二进制值时,二值化部可以通过对语法元素执行二值化来输出由0或1组成的bin串(BinString)。此时,bin表示由0或1组成的位,并且可以通过二进制算术编码器执行编码。此时,可以基于0和1的产生概率来选择常规编码部或旁路编码部中一个,这可以根据编码/解码设置来确定。如果语法元素是0和1的频率为相同的数据,则可以使用旁路编码部,若是不同的数据,可以使用常规编码部,并且可以通过上下文建模(或更新上下文信息),在执行下一个常规编码部时作为参考。
此时,上下文是关于bin的产生概率的信息,并且上下文建模是通过输入作为二值化的结果的bin来估计二进制算术编码所需的bin的概率的过程。为了执行概率估计,可以使用bin的语法元素、bin串中bin的位置索引、以及bin包括在周围的块中的概率等,并且为此可以使用至少一个上下文表。例如,根据周围块是否使用标志的组合,可以将多个上下文表作为一些用于标志的信息。
当对语法元素执行二值化时,可以使用各种方法。例如,可以分为固定长度二值化(Fixed Length Binarization)和可变长度二值化(Variable Length Binarization),在可变长度二值化的情况下,可以使用一元二值化(Unary Binarization、Truncated UnaryBinarization)、截断莱斯二值化(Truncated Rice Binarization)、第K次指数哥伦布二值化(K-thExp-Golomb Binarization)和截断二进制二值化(Truncated binary)。另外,可以根据语法元素的值的范围来执行有符号或无符号二值化。本发明中对语法元素的二值化过程,不仅包括以上示例中提到的二值化,而且还包括其他附加的二值化方法。
逆量化部和逆变换部可以通过逆执行变换部和量化部的过程来实现。例如,逆量化部可以对由量化部生成的量化变换系数执行逆量化,并且逆变换部可以对逆量化的变换系数执行逆变换以生成复原的残差块。
加法器通过将预测块和复原的残差块相加来复原当前块。复原的块可以存储在存储器中,并用作参考数据(预测部、滤波器部等)。
环路内滤波部可以包括至少一个后处理滤波部件,诸如去块滤波器、像素自适应偏移(Sample Adaptive Offset,SAO)、自适应环路滤波器(Adaptive Loop Filter,ALF)等。去块滤波器可以去除在复原图像中的块之间的边界处产生的块失真。ALF可以基于通过将复原的图像与输入图像执行比较而获得的值来执行滤波。详细地,可以基于对在通过去块滤波器对块执行滤波之后复原的图像与输入图像执行比较而获得的值来执行滤波。并且,可以基于对通过SAO将块滤波之后复原的图像与输入图像执行比较而获得的值来执行滤波。
存储器可以存储复原的块或图片。可以将存储在存储器中的复原块或图片提供给执行帧内预测或帧间预测的预测部。详细地,编码器可以将压缩比特流的队列(Queue)形式的存储空间处理为编码图片缓冲器(Coded Picture Buffer,CPB),并且将以图片单位存储解码图像的空间处理为解码图片缓冲区(Decoded Picture Buffer,DPB)。在CPB的情况下,按照解码顺序存储解码单位,并且可以在解码器中模拟(Emulation)解码操作,并且可以在模拟过程中存储压缩的比特流,并且通过解码过程,复原从CPB输出的比特流,复原的图像存储在DPB中,后续图像编码和解码过程中可以参考DPB中存储的图片。
解码部可以通过反向执行所述编码部中的过程来实现。例如,可以从比特流接收量化系数序列、变换系数序列或信号序列并对其执行解码,可以解析包括解码信息的解码数据并将其发送到每个组成部。
另一方面,尽管在图1和图2的图像编码装置和图像解码装置中未示出,但是还可以包括分割块部。可以从图片分割部获得关于基本编码单元的信息,并且基本编码单元可以表示在图像编码/解码过程中用于预测、变换、量化等的基本(或开始)单元。此时,编码单元可以根据颜色格式(在此示例中为YCbCr)组成为一个亮度编码块和两个色差编码块,并且可以根据颜色格式确定每个块的大小。在后述示例中,将基于块(该示例中的亮度分量)进行描述。此时,以该块是在确定每个单元之后可以获取的单元为前提,并且假设将在类似的设置适用于其他类型的块的前提下进行描述。
可以关于图像编码装置和解码装置的每个元件来设置分割块部,并且可以通过该过程来确定块的大小和形状。此时,可以根据配置部不同地定义设置块,可以对应为预测部时的预测块,变换部时的变换块和量化部时的量化块。本发明不限于此,可以进一步定义根据其他组成部的块单位。块的大小和形状可以由块的水平和垂直长度限定。
在分割块部中,可以将块表示为M×N,并且可以在每个块的最大值和最小值范围内获得。例如,块的形状支持正方形,如果块的最大值为256×256、最小值为8×8,则可以获得大小为2m×2m的块(在此示例中,m为3到8的整数,例如,8×8、16×16、32×32、64×64、128×128、256×256)、或者2m×2m大小的块(在此示例中,m为4到128的整数)或者m×m大小的块(在此示例中,m是8到256的整数)。或者,块的形状支持正方形和矩形,并且如果该块与上述示例具有相同的范围,则可以获得2m×2n大小的块(在此示例中,m和n为3到8的整数,以假设水平与垂直之间的比率最大为2:1的情况来举个例子,8×8、8×16、16×8、16×16、16×32、32×16、32×32、32×64、64×32、64×64、64×128、128×64、128×128、128×256、256×128、256×256,根据编码/解码设置,对水平与垂直之间的比率没有限制,或者可能会存在比率的最大值)。或者,可以获得2m×2n大小的块(在此实例中,m和n是4到128的整数)。或者,可以获得m×n大小的块(在m与n是8到256的整数)。
可以根据编码/解码设置(例如,块的类型、分割方式、分割设置等)来确定可获得的块。例如,编码块(Coding Block)是2m×2n大小的块,预测块(Prediction Block)是2m×2n或m×n大小的块,而变换块(Transform Block)是2m×2n大小的块。基于所述设置,可以生成诸如块大小和范围的信息(例如,索引和倍数相关的信息)。
根据块的类型,可以确定上述范围(在此示例中,最大值和最小值)。另外,在一些块中,可以显式地生成块的范围信息,并且在一些块中,可以隐式地确定块的范围信息。例如,可以在编码块和变换块中显式生成相关信息,并且可以在预测块中隐式处理相关信息。
在显式的情况下,可以生成至少一个范围信息。例如,在编码块的情况下,关于范围的信息可以生成关于最大值和最小值的信息。或者,可以基于最大值和预设最小值(例如,8)之间的差异(例如,基于设置生成最大值和最小值的索引之间的差异的信息等)来生成。另外,可以生成关于矩形块的水平和垂直长度的多个范围的信息。
在隐式的情况下,可以基于编码/解码设置(例如,块的类型、分割方法、分割设置等)来获得范围信息。例如,在预测块的情况下,在作为上位单位的编码块(在此示例中,编码块的最大大小为M×N,最小大小为m×n)中,由预测块的分割设置(在此示例中,四叉树分割+分割深度为0)可获得的候选组(在此示例中,M×N和m/2×n/2)获得最大值和最小值信息。
分割块部的初始(或起始)块的大小和形状可以由上位单位确定。在编码块的情况下,从图片分割部获得的基本编码块可以是初始块,在预测块的情况下,编码块可以是初始块,而在变换块的情况下,编码块或预测块可以是初始块,这可以根据编码/解码设置来确定。例如,当编码模式为Intra时,预测块可以是变换块的上位单位,而当Inter时,预测块可以是独立于变换块的单位。初始块可以被分割成小的块作为分割的开始单位。当确定了根据每个块的分割的最佳大小和形状时,该块可以被确定为下位单位的初始块。例如,前一种情况可以是编码块,而后一种情况(下位单位)可以是预测块或变换块。如以上示例中,当确定下位单位的初始块时,可以执行用于搜索具有最佳大小和形状的块(例如,上位单位)的分割过程。
总之,分割块单元可以将基本编码单元(或最大编码单元)分割为至少一个编码单元(或下位编码单元)。另外,编码单元可以分割为至少一个预测单元,并且可以分割为至少一个变换单元。编码单元可以分割为至少一个编码块,编码块可以分割为至少一个预测块,并且可以分割为至少一个变换块。预测单元可以分割为至少一个预测块,并且变换单元可以分割为至少一个变换块。
如以上示例中所示,当通过模式确定过程找到具有最佳大小和形状的块时,可以生成用于该模式的模式信息(例如,分割信息)。模式信息可以与在该块所属的组成部中生成的信息(例如,预测相关信息、变换相关信息等)一起收录在比特流中传输至解码器,并在解码器中以相同级别的单位执行解析,而用于图像解码过程。
以下将会描述关于分割方式的示例,并且将假设初始块具有正方形形状来进行描述,但是在矩形的情况下,可以适用相同或相似的示例。
分割块部可以支持各种分割方式。例如,可以支持基于树的分割或基于类型的分割,并且可以应用其他方法。在基于树的分割的情况下,可以使用分割标志来生成分割信息,而在基于类型的分割的情况下,可以使用针对预设候选组中包括的块形状的索引信息来生成分割信息。
图3是示出基于树的块形状的示意图。
参考图3,a表示获得没有进行分割的一个2N×2N的示例,b表示通过一部分分割标志(在此示例中为二叉树的水平分割)获得2N×N的示例,c表示通过分割标志(在此示例中为二叉树的垂直分割)获得两个N×2N的示例,d表示通过一部分分割标志(在此示例中为四叉树的四分割或二叉树的水平和垂直分割)获得四个N×N的示例。可以根据用于分割的树类型来确定要获得的块的形状。例如,当执行四叉树分割时,可获得的候选块可以是a和d。执行二叉树分割时可获得的候选块可以是a、b、c和d。在四叉树的情况下,支持一个分割标志,如果对应的标志是‘0’,则可以得到a,如果对应的标志是‘1’,则可以得到d。在二叉树的情况下,支持多个分割标志,其中之一可以是指示是否分割的标志、其中之一可以是指示是否为水平/垂直分割的标志、其中之一可以是指示是否允许重叠水平/垂直分割的标志。当允许重叠时可获得的候选块可以是a、b、c和d,当不允许重叠时可获得的候选块可以是a、b和c。四叉树可以是基于树的基本分割方式,另外,树分割方式(在此示例中为二叉树)可以包括在基于树的分割方式中。当允许附加的树分割的标志被隐式或显式地激活时,可以执行多个树分割。基于树的分割可以是能执行递归分割(Recursive Partition)的方式。即,可以将分割的块重新设置为初始块,执行基于树的分割,这可以根据诸如分割范围和分割允许深度等分割设置来确定。这可以是分层分割方式的示例。
图4是示出基于类型的块形状的示意图。
如图4所示,根据类型,分割后的块可以具有1个分割形状(在此示例中为a),2个分割形状(在此示例中为b、c、d、e、f和g)和4个分割形状(在此示例中为h)。可以通过各种配置来配置候选组。例如,候选组可以由图5的a、b、c、n或a、b至g、n或a、n、q等配置,但不限于此,还包括后述的示例,从而可以执行各种变形例。当允许对称分割(Symmetric Partition)的标志被激活时,所支持的块可以是图4中的a、b、c、h,并且当允许非对称分割(AsymmetricPartition)的标志被激活时所支持的块可以是图4中的a至h中的全部。在前一种情况下,可以隐式激活相关信息(在此示例中,允许对称分割的标志),在后一种情况下,可以显式生成相关信息(在此示例中,允许非对称分割的标志)。基于类型的分割可以是支持一次分割的方式。与基于树的分割相比,通过基于类型的分割获得的块可能无法执行进一步分割。这可以是分割允许深度为零(例如,单层分割)的示例。
图5是示出可以通过本发明的分割块部获得的各种块形状的示意图。
参考图5,可以根据分割设置和分割方式获得块a至s,并且还能具有未示出的附加块形状。
作为一个示例,对于基于树的分割,可以允许非对称分割。例如,在二叉树的情况下,如图5中的b、c的块(在此示例中,分割为多个块的情况)可以允许非对称分割,或者如图5中的b至g的块(在此示例中,分割为多个块的情况)可以允许非对称分割。如果根据编码/解码设置显式或隐式地去激活允许非对称分割的标志,则可获得的候选块可能是b或c(此示例假定不允许水平和垂直重叠分割),并且当允许非对称分割的标志被激活时,可获得的候选块可以是b、d、e(在此示例中为水平分割)或c、f、g(在此示例中为垂直分割)。该示例可以对应于以下情况:通过水平或垂直分割标志来确定分割方向,并且根据允许非对称的标志来确定块形状,然而,本发明不限于此,并且可以变换为其他示例。
作为一个示例,可以将附加的树分割用于基于树的分割。例如,可以执行三叉树、四叉树、八叉树等分割,从而获得n个分割块(在此示例中,n为3、4、8,n是整数)。在三叉树的情况下,支持的块(此示例中为分割为多个块的情况)可以为h至m,在四叉树的情况下,支持的块可以为n至p,而对于八叉树,支持的块可以是q。根据编码/解码设置,可以隐式确定是否支持基于所述树的分割,或者可以显式生成相关信息。另外,根据编码/解码设置,可以单独使用二叉树或四叉树分割,或者也可以混合使用二叉树和四叉树分割。例如,在二叉树的情况下,可以获得如图5中的b、c中的块,并且当二叉树和三叉树混合使用时(该示例假设部分重叠二叉树的使用范围和三叉树的使用范围的情况),可获得如b、c、i、l的块。如果根据编码/解码设置显式或隐式去激活除现有树之外的允许进一步分割的标志,则可获得的候选块可以为b或c,并且在激活时,可获得的候选块为b、i或b、h、i、j(在此示例中为水平分割)或c、l或c、k、l、m(在此示例中为垂直分割)。该示例可以对应于以下情况:通过水平或垂直分割标志来确定分割方向,并且根据允许附加分割的标志来确定块形状,然而,本发明不限于此,并且变换为其他示例。
作为一个示例,基于类型的块可以允许非矩形分区(Non-RectangularPartition)。例如,以r、s的形状分割是可能的。当与上述基于类型的块候选组组合时,a、b、c、h、r、s或a至h、r、s的块是可受支持的块。另外,在候选组中可以包括支持诸如h至m之类的n个分割的块(例如,n是整数,在此示例中,除了1、2和4之外的3)。
可以根据编码/解码设置来确定分割方式。
作为一个示例,可以根据块的类型来确定分割方式。例如,编码块和变换块可以使用基于树的分割,并且预测块可以使用基于类型的分割。并且,可以使用两种类型的分割方式的组合形式。例如,预测块可以使用将基于树的分割和基于类型的分割混合的分割方式,并且分割方式根据应用于块的至少一个范围而不同。
例如,可以根据块的大小来确定分割方式。例如,块的最大值和最小值之间的某些范围(例如,a×b至c×d,后者较大的情况)可以基于树执行分割,并且某些范围(例如e×f到g×h)可以基于类型执行分割。在这种情况下,可以显式地生成或者可以隐式地确定根据分割方式的范围信息。
作为一个示例,可以根据块的形状(或分割之前的块)来确定分割方式。例如,如果块形状是正方形,则可以执行基于树的分割和基于类型的分割。或者,当块为矩形时,可以执行基于树的分割。
可以根据编码/解码设置来确定分割设置。
作为一个示例,可以根据块的类型来确定分割设置。例如,在基于树的分割中,编码块和预测块可以使用四叉树,而变换块可以使用二叉树。或者,在编码块中,分割允许深度可以是m,在预测块中,分割允许深度是n,并且在变换块中,分割允许深度可以被设置为o,并且m、n和o可能相同或不同。
例如,可以根据块的大小来确定分割设置。例如,在某些范围(例如,a×b至c×d)可以执行四叉树分割,而某些范围(例如,e×f至g×h,在此示例中,假设c×d大于g×h)可以执行二叉树分割。在这种情况下,所述范围可以包括块的最大值和最小值之间的所有范围,并且该范围可以具有彼此不重叠的设置或可以具有重叠的设置。例如,某些范围的最小值可以等于某些范围的最大值,或者某些范围的最小值可以小于某些范围的最大值。如果存在重叠范围,则具有更高最大值的分割方式可以具有优先级。即,可以在具有优先级的分割方式中的根据分割结果来确定是否执行具有较低优先级的分割方式。在这种情况下,可以显式地生成或者可以隐式地确定根据树类型的范围信息。
作为另一个示例,在块的某些范围(与所述示例相同)可以执行具有一些候选组的基于类型的分割,在某些范围(与上述示例相同)可以执行具有一些候选组(本示例中至少一个配置与前一个候选组不同)的基于类型的分割。此时,所述范围可以包括块的最大值和最小值之间的所有范围,并且该范围可以具有彼此不重叠的设置。
作为一个示例,可以根据块的形状来确定分割设置。例如,当块具有正方形形状时,可以执行四叉树分割。并且,当块是矩形时,可以执行二叉树分裂。
例如,可以根据编码/解码信息(例如,slice类型、颜色分量、编码模式等)来确定分割设置。例如,如果slice类型为I,则在某些范围(例如,a×b至c×d)、如果为P,则在某些范围(例如,e×f至g×h),如果为B,则在某些范围(例如,i×j至k×l)可以执行四叉树(或二叉树)分割。另外,当slice类型为I时,可以将四叉树(或二叉树)分割的分割允许深度设置为m,当slice类型为P时,分割允许深度设置为n,当slice类型为B时,分割允许深度设置为o,m与o可以相同或不同。一些slice类型可能具有与其他slice(例如,P和Bslice)相同的设置。
作为另一示例,当颜色分量是亮度分量时,可以将四叉树(或二叉树)分割允许深度设置为m,并且在色差分量的情况下可以设置为n,m与n可以相同或不同。此外,如果颜色分量是亮度分量,则四叉树(或二叉树)的分割范围(例如,从a×b至c×d),以及如果是色差分量,则四叉树(或二叉树)的分割范围(例如,e×f至g×h)可以相同或不相同。
作为另一示例,如果编码模式是Intra,则四叉树(或二叉树)的分割深度可以是m,如果是Inter,则可以是n(在此示例中,假设n大于m),并且m和n可以相同或不同。此外,当编码模式为Intra时,四叉树(或二叉树)分割的范围和当Inter时,四叉树(或二叉树)分割的范围可以相同或不同。
在以上示例中,可以显式地生成或隐式地确定关于基于编码/解码信息是否支持适应性分割候选组配置的信息。
通过以上示例,已经描述了根据编码/解码设置来确定分割方式和分割设置的情况。以上示例示出了根据每个元件的一些情况,也可以变换为其他形式。另外,可以根据多个元件的组合来确定分割方式和分割设置。例如,可以基于块的类型、大小、形状、编码/解码信息等来确定分割方式和分割设置。
另外,在以上示例中,可以隐式地确定与分割方式、设置等有关的元件或显式地生成信息,以确定是否允许如以上示例中的适应情况。
在所述分割设置中,分割深度是指基于初始块的空间分割的次数(在此示例中,初始块的分割深度为0),并且越增加分割深度,可以分割为更小的块。这可以根据分割方式改变与深度有关的设置。例如,在基于树的分割方式中,四叉树分割深度和二叉树分割深度可以使用一个共同深度,也可以使用根据树类型的单独的深度。
在以上示例中,当根据树的类型使用单独的分割深度时,可以在树的分割起始位置(在此示例中为分割之前的块)处将分割深度设置为0。可以以分割起始位置为中心计算分割深度,而不必基于每个树的分割范围(此示例中的最大值)。
图6是用于说明根据本发明实施例的基于树的分割的示意图。
a表示四叉树和二叉树分割的示例。具体地,a的左上块示出了四叉树分割、右上块和左下块示出了四叉树和二叉树的分割、右下块示出了二叉树的分割。在图中,实线(在此示例中为Quad1)表示被分割为四叉树的边界线,虚线(在此示例中为Binary1)表示被分割为二叉树的边界线,而粗实线(在此示例中为Binin2)表示被分割为二叉树的边界线。虚线和粗实线之间的差异是分割方法的差异。
作为一个示例,(左上块的四叉树分割允许深度为3,若当前块为N×N,则执行分割直到水平或垂直中一个达到(N>>3),分割信息生成直到(N>>2)的分割信息。这与后述的示例共同适用。假设四叉树的最大值和最小值为N×N,(N>>3)×(N>>3))当执行树分割时,可以被分割为具有水平、垂直长度的1/2的四个块。当分割激活时,分割标志的值可以为‘1’,而在分割去激活时,分割标志的值可以为‘0’。根据该设置,左上块的分割标志可能与b的左上块一起产生。
作为一个示例,(对于右上块,假设四叉树分割允许深度为0,二叉树分割允许深度为4,四叉树分割的最大值和最小值为N×N,(N>>2)×(N>>2),二叉树的最大值和最小值是(N>>1)×(N>>1)、(N>>3)×(N>>3)),右上块在初始块执行四叉树分割的情况下,可以被分割为具有水平、垂直长度的1/2的长度的四个块。被分割的块的大小为(N>>1)×(N>>),这意味着可以执行二叉树分割(在此示例中,大于四叉树分割的最小值,但分割深度有限的情况)。即,该示例可以是,不能重叠使用四叉树分割和二叉树分割的示例。该示例的二叉树的分割信息可以由多个分割标志配置。一些标志可以是水平分割标志(在此示例中对应于x/y的x),而某些标志可以是垂直分割标志(在此示例中对应于x/y中的y),分割标志的配置可以具有类似于四叉树分割的设置(例如,是否执行激活)。在此示例中,两个标志可以被重复激活。当在图中用‘-’生成标志信息时,‘-’可能对应于标志的隐式处理,其中,当根据树分割的最大值、最小值和分割深度等条件而无法执行附加分割时,可能会产生标志的隐式处理。根据该设置,右上块的分割标志可能与b的左上块一起产生。
作为一个示例,(对于左下块,假设四叉树分割允许深度为3,二叉树分割允许深度为2,四叉树分割的最大值和最小值为N×N,(N>>3)×(N>>3),二叉树分割的最大值和最小值为(N>>2)×(N>>2),(N>>4)×(N>>4),在重叠范围中,分割优先级赋予四叉树分割),左下块在初始块中执行四叉树分割时,可以被分割为具有水平、垂直长度的1/2的长度的四个块。被分割的块的大小为(N>>1)×(N>>),这意味着根据此示例的设置,可以执行二叉树分割和四叉树分割。即,该示例可以是,可以重叠使用四叉树分割和二叉树分割的示例。在这种情况下,可以根据给定优先级的四叉树分割结果来确定是否执行二叉树分割。当执行四叉树分割时,不会执行二叉树分割,如果未执行四叉树分割,则可以执行二叉树分割。如果不执行四叉树分割,即使是根据上述设置而满足可执行分割的条件,四叉树分割也可能无法执行。该示例的二叉树的分割信息可以由多个分割标志配置。一些标志可以是分割标志(在此示例中,对应于x/y中的x),而一些标志可以是分割方向标志(在此示例中,对应于x/y中的y,根据x可以确定是否生成y信息),分割标志可以具有类似于四叉树分割的设置。在此示例中,水平分割和垂直分割不能彼此重叠激活。当在图中将标志信息生成为‘-’时,‘-’可以具有与以上示例相似的设置。根据该设置,左下块的分割标志可能与b的左下块一起产生。
作为一个示例,(对于右下块,假设二叉树分割允许深度为5,二叉树分割的最大值和最小值为N×N,(N>>2)×(N>>3)),右下块在初始块执行二叉树分割的情况下,可以被分割为具有水平、垂直长度的1/2长度的两个块。该示例的分割标志设置可以与左下块相同。当在图中将标志信息生成为‘-’时,‘-’可以具有与以上示例相似的设置。本示例显示了不同地设置二叉树的水平和垂直的最小值的情况。根据该设置,右下块的分割标志可能与b的右下块一起产生。
如以上示例所示,在确认块信息(例如,类型、大小、形状、位置、slice类型、颜色成分等)之后,可以确定根据其的分割方式和分割设置,并且可以相应地执行分割过程。
图7是用于说明根据本发明实施例的基于树的分割的示意图。
参照块a和块b,粗实线L0表示最大的编码块,并且由粗实线和其他线L1至L5分割的块表示分割的编码块,并且块内的编号表示分割的子块的位置(在此示例中,按照栅格扫描(RasterScan)顺序),‘-’的数量表示相应块具有的分割深度,块之间的边界线的数字表示分割次数。例如,如果将其分割为四个(在此示例中为四叉树),则具有UL(0)-UR(1)-DL(2)-DR(3)的顺序、如果分割为两个(在此示例中为二叉树)具有L或U(0)-R或D(1)的顺序,这可以在每个分割深度定义。后述示例示出了可获得的编码块为有限的情况。
作为一个示例,假设a的最大编码块是64×64,最小编码块是16×16,并且使用四叉树分割。在这种情况下,因为2-0、2-1、2-2块(在此示例中为16×16大小)等于最小编码块的大小,因此可能不分割为更小块,如2-3-0、2-3-1、2-3-2,2-3-3块(在此示例中为8×8大小)。在这种情况下,因为在块2-0、2-1、2-2和2-3中可获得的块具有16×16块,即一个候选组,因此不产生块分割信息。
作为一个示例,假设b的最大编码块是64×64,最小编码块在水平或垂直方向上的长度是8,并且允许的分割深度是3。在这种情况下,由于1-0-1-1(在此示例中为16×16大小,分割深度为3)块满足最小编码块条件,因此可以将其分割为更小的块。但是,由于等于可允许的分割深度,因此可能不分割为具有更深的分割深度的块(在此示例中为1-0-1-0-0、1-0-1-0-1块)。在这种情况下,在1-0-1-0和1-0-1-1块中,由于可获得的块具有16×8块,即一个候选组,所以不生成块分割信息。
如以上示例中所示,可以根据编码/解码来支持四叉树分割或二叉树分割。或者,可以混合支持四叉树分割和二叉树分割。例如,根据块大小、分割深度等,可以支持上述方式中一个或二个。如果块属于第一块范围,则可以支持四叉树,并且如果该块属于第二块范围,则可以支持二叉树分割。当支持多个分割方式时,可以具有根据每个方式的最大编码块大小、最小编码块大小、可允许分割深度等中的至少一个设置。所述范围可以通过彼此重叠地设置,也可以不重叠。或者,某一个范围包括另一范围的设置也是可能的。上述设置可以根据诸如slice类型、编码模式、颜色分量等单个或混合因素来确定。
作为一个示例,可以根据slice类型来确定分割设置。在I slice的情况下,可支持的分割设置为,四叉树的情况下可支持的分割范围为128×128至32×32,二叉树的情况下可支持的分割范围为32×32至8×8。在P/Bslice的情况下,可支持的分割设置为,四叉树的情况下可支持的分割范围为128×128至32×32,二叉树的情况下可支持的分割范围为64×64至8×8。
作为一个示例,可以根据编码模式来确定分割设置。当编码模式为Intra时,对于支持的分割设置而言,在二叉树时可以支持64×64至8×8分割范围以及允许的分割深度2。当编码模式为Inter时,对于支持的分割设置而言,在二叉树时可以支持32×32至8×8分割范围以及中允许的分割深度3。
作为一个示例,可以根据颜色分量来确定分割设置。在亮度分量的情况下,四叉树的情况下可支持的分割范围为256×256至64×64,二叉树的情况下可支持的分割范围为64×64至16×16。在色差分量的情况下,在四叉树的情况下支持与亮度分量相同的设置(在此示例中,根据色差格式设置每个块的长度比例)、在二叉树的情况下,支持的分割范围为64×64至4×4(在此示例中,假设与此相同的亮度分量中的范围是128×128至8×8,4:2:0)。
所述示例描述了根据块的类型分割设置不同的情况。另外,一些块可以与其他块组合以执行一个分割过程。例如,当将编码块和变换块组合为一个单元时,执行分割过程以获得最佳块大小和形状,这不仅可以是编码块的最佳大小和形状,还可以是变换块的最佳大小和形状。或者,编码块和变换块可以组合成一个单元,预测块和变换块可以组合成一个单元,编码块、预测块和变换块可以组合成一个单元,并且可以对其他块执行组合。
在本发明中,描述了在每个块中提供单独的分割设置的情况,但是也可以将多个单元组合成一个单元以具有一个分割设置。
在上述过程中,所生成的信息将以编码器中的序列、图片、slice、tile等中的至少一个单元收录在比特流中,并且解码器将从比特流中解析相关信息。
在图像编码/解码过程中,可能会产生输入像素值与输出像素值不同的情况,并且可以执行像素值的调整过程(Adjustment)以防止由于操作错误而引起的失真。像素值调整方法是将超过像素值的范围的像素值调整至像素值的范围内过程,并且可以称为截取(Clipping)。
pixel_val'=Clip_x(pixel_val,minI,maxI)
Clip_x(A,B,C)
{
if(A<B)output=B;
elseif(A>C)output=C;
elseoutput=A;
}
表1
表1是对于用于执行像素值调整的截取函数(Clip_x)的示例代码。参照表1,可以输入输入像素值(pixel_val)和允许的像素值范围的最小值(minI)和最大值(maxI)作为截取函数(Clip_x)的参数。此时,若基于位深度(bit_depth)进行描述,则最小值(minI)可以是0,最大值(maxI)可以是(2bit_depth-1)。当执行截取函数(Clip_x)时,小于最小值(minI)的输入像素值(pixel_val,参数A)更改为最小值(minI),并且可以将大于最大值maxI(参数C为)的输入像素值更改为最大值(maxI)。因此,可以将输出值(output)作为完成像素值调整的输出像素值(pixel_val’)返回。
此时,像素值的范围是根据位深度来确定,但是根据图像的种类和特性,构成图像的像素值(例如,图片、slice、tile、块等)是不同的,因此不一定产生在所有像素值范围内。根据本发明的实施例,可以参考构成实际图像的像素值的范围,从而将其用于图像编码/解码过程。
例如,在根据表1的像素值调整方法中,可以将截取函数的最小值(minI)用作构成实际图像的像素值之中的最小值,截取函数的最大值(maxI)可以用作构成实际图像的像素值中的最大值。
总之,图像编码/解码装置可以包括基于位深度的像素值调整方法和/或基于构成图像的像素值范围的像素值调整方法。在编码器/解码器中,可以支持用于确定是否支持自适应像素值调整方法的标志信息,当标志信息为‘1’时,可以生成像素值调整方法选择信息,并且当标志信息为‘0’时,可以将预设像素值调整方法(在此示例中,基于位深度的方法)作为基本像素值调整方法。当像素值调整方法选择信息指示基于构成图像的像素值范围的像素值调整方法时,可以包括图像的像素值相关信息。例如,可以包括根据颜色分量的关于每个图像的最小值和最大值以及后述的中值的信息。当调整时所产生的信息可以以编码器的视频、序列、图片、slice、tile、块等为单位收录后进行传输,并且可以解析记录于解码器的信息,以在相同单位中复原相关信息。
另一方面,通过所述过程,并通过基于位深度的像素值调整或基于构成图像的像素值的范围的像素值调整,可以改变(确定或定义)包括像素值的最小值和最大值的像素值的范围,也可以改变(确定或定义)附加像素值范围信息。例如,可以更改用于构成实际图像的像素值的最大值与最小值,还可以更改用于配置像素值的中值。
即,在根据位深度的像素值调整过程中,minI可以表示图像的最小像素值,maxI可以表示图像的最大像素值,I可以表示颜色分量,medianI可以表示图像的中心像素值。minI可以为0,maxI可以为(1<<bit_depth-1)-1,midI可以为1<<(bit_depth-1),并且可以根据否编码/解码设置,包括上述示例在内的其他形式获得medianI。中值仅是本发明中用于描述的一个术语,并且可以是指在图像编码/解码过程中,可以根据像素值调整过程而改变(确定或定义)的像素值范围信息的一个信息。
例如,在根据构成图像的像素值的范围的像素值调整过程中,minI可以是图像的最小像素值,maxI可以是图像的最大像素值,并且medianI可以图像的中心像素值。medianI可以是图像中的像素值的平均值,可以是当对准图像的像素时位于中心的值,可以是根据图像的像素值范围信息获得的值。在至少一个minI、maxI中,可以导出medianI。即,medianI可以是在图像的像素值范围内存在的一个像素值。
具体而言,medianI可以是根据图像的像素值范围信息(在此示例中为minI、maxI),例如(minI+maxI)/2或(minI+maxI)>>1,(minI+maxI+1)/2,(minI+maxI+1)>>1获得的值,并且可以根据否定/解码设置以包括上述示例在内的其他形式获得medianI。
接下来,将描述根据像素值调整处理的实施例(在此示例中为中值)。
作为一个示例,基本位深度是8位(0至255),并且选择基于构成图像的像素值的范围的像素值调整过程(在此示例中,最小值10,最大值190;从最小值和最大值导出(平均)的中间值100),并且如果当前块位置是图像(在此示例中为图片)中的第一个块,则用于编码/解码的相邻块(在此示例中为左、左下、左上、上、右上)不存在,因此参考像素可以用中值100填充。可以使用所述参考像素根据预测模式执行帧内预测过程。
作为一个示例,基本位深度是10位(0至1023),并且选择基于构成图像的像素值的范围的像素值调整过程(在此示例中,中间值为600,存在相关语法元素),当前块的位置为图像(在此示例中为slice、tile)内的第一个块,则用于编码/解码的相邻块(在此示例中为左、左下、左上、上、右上)不存在,因此参考像素可以用中值600填充。可以使用所述参考像素根据预测模式执行帧内预测过程。
作为一个示例,基本位深度是10位,并且选择基于构成图像的像素值的范围的像素值调整过程(在此示例中,中间值为112,存在相关语法元素),根据相邻块的编码模式(帧内预测/帧间预测)等,激活确定是否可以在当前块的预测中使用相应块的像素的设置(在此示例中,当相应快的编码模式为帧内预测时,可用于当前块的参考像素,帧内预测时不可用;当去激活此设置时,可用作当前块的像素,而与相应块的编码模式无关;相关语法元素为constrained_intra_pred_flag,可能出现在P或B图像类型中),如果当前块位于图像的左侧,则不存在用于编码/解码的相邻块(在此示例中为左,左下,左上),如果有相邻的块(在此示例中为右和右上)用于编码/解码,但是由于该块的编码模式是帧间预测而被上述设置禁用,因此不存在可使用的参考像素,则参考像素可以用中值(在此示例中为112)填充。即,由于没有可使用的参考像素,因此可以用图像像素值范围的中值填充。可以使用所述参考像素根据预测模式执行帧内预测过程。
在以上实施例中,预测部已经示出了与所述中值有关的各种情况,但是这可以被包括在视频编码/解码的另一配置中。另外,本发明不仅限于上述实施例,并且可以在各种情况下执行修改和扩展。
在本发明中,像素值调整过程可以应用于预测部、变换部、量化部、逆量化部、逆变换部、滤波部,存储器等的编码/解码过程。例如,像素值调整方法中的输入像素可以是预测过程中的参考像素(Reference Sample)或预测像素(Prediction Sample),并且可以是变换、量化、逆变换和逆量化过程中的复原像素(Reconstructed Sample)。并且,该像素可以是环路滤波过程中的复原像素,或者可以是存储器中的存储像素。在这种情况下,变换、量化以及逆变换、逆量化过程中,复原像素可以指的是应用环路滤波器之前的复原像素。环路滤波器中的复原像素可以是指在应用环路滤波器之后的复原像素。去块滤波器过程中的复原像素可以是指应用解码滤波器之后的复原像素。SAO过程中的复原像素可以是指应用SAO之后的复原像素。在ALF过程中的复原像素可以指的是在应用ALF之后的复原像素。已经描述了如上所述的各种情况的示例,但是本发明不限于此,并且可以应用于调用像素值调整过程的所有编码/解码过程的输入、中间、输出步骤。
在后述的示例中,在支持亮度分量Y的截取函数Clip_Y与色差分量Cb、Cr的截取函数Clip_Cb、Clip_Cr的假设下描述。
在本发明中,可以将预测部类为帧内预测和帧间预测,并且可以如下定义帧内预测和帧间预测。
帧内预测可以是从完成当前图像的编码/解码(例如,图片、slice、tile等)的区域生成预测值的技术,并且帧间预测可以是从在当前图像之前完成一个编码/解码的图像(例如,图片、slice、tile等)生成预测值的技术。
并且,帧内预测可以是从完成当前图像的编码/解码的区域生成预测值的技术,但是有一些预测方法可以是排除例如,从参考图像生成预测值的方法,块匹配(BlockMatching)、模板匹配(Template Matching)等的预测,并且帧间预测可以是从完成至少一个编码/解码的图像生成预测值的技术,所述完成编码/解码的图像可以被配置为包括当前图像。
可以根据编码/解码设置遵循以上定义中的一个,并且将在假定遵循第一个定义的情况下描述以下示例。另外,虽然在预测值是通过在空间域中通过预测获得的值的假设下进行描述,但是本发明不限于此。
图8示出了根据本发明实施例的分割块过程。详细地,示出了可以根据一种以上的分割方法从基本编码块开始获得的块的大小和形状的示例。
在图中,粗实线表示基本编码块、粗虚线表示四叉树分割边界、双实线表示对称二叉树分割边界、实线表示三叉树分割边界、细虚线表示非对称二叉树分割边界。除了粗实线以外的线,均指按照每种分割方法分割的边界。以下描述的分割设置(例如,分割种类、分割信息、分割信息配置顺序等)不仅限于对应示例,并且可以具有多种变换示例。
为了便于说明,假设基于基本编码块(2N×2N。128×128),在左上、右上、左下和右下块(NxN,64×64)具有单独的分割块设置后,进行描述。首先,在初始块中,由于一个分割操作(分割深度0->1。即,分割深度增加1)而获得了四个子块的状态,并且假设关于四叉树的分割设置的情况,最大编码块为128×128,最小编码块为8×8,最大分割深度为4,这是通常应用于每个块的设置。
(1次,左上块,A1-A6)
在此示例中,当支持单树分割(在此示例中为四叉树)时,可以通过一个分割块设置(例如,最大编码块、最小编码块、分割深度块等)确定可获得的块的大小和形状。在此示例中,当根据分割(分别分割水平和垂直2个分割)可获取一个块时,一个分割操作所需的分割信息(基于分割之前的4Mx4N,分割深度会增加1)为表示是否执行分割的标志(在此示例中,如果为0则分割x,如果为1则分割o),可获得的候选可以是4M×4N和2M×2N。
(2次,右上块,A7至A11)
在此示例中,当支持多树分割(在此示例中为四叉树、二叉树)时,可以通过多个分割块设置确定可获得的块的大小和形状。在此示例中,假设在二叉树的情况下最大编码块是64×64,并且最小编码块的长度是4,最大分割深度是4。
在此示例中,当根据分割可获得的块为两个以上(在此示例中为2或4)时,一次分割操作(四叉树分割深度增加1)所需的分割信息为表示是否分割的标志、表示分割种类的标志、表示分割形状的标志、表示分割方向的标志,可获得的候选是4M×4N、4M×2N、2M×4N、4M×N/4M×3N、4M×3N/4M×N、M×4N/3M×4N、3M×4N/M×4N。
如果四叉树和二叉树分割范围重叠(即,在当前步骤,四叉树分割和二叉树分割都可用的范围),并且当前块(分割之前的状态)由四叉树分割获得的块(父块<在分割深度比当前小于1的情况>为通过四叉树分割获得的块)的情况下,则分割信息可以分割为以下情况。即,当可以通过多种分割方法获得根据每个分割设置支持的块时,可以通过如下分类来生成分割信息。
(1)四叉树分割和二叉树分割重叠的情况
a b c d e
QT 1
No Split 0 0
SBT hor 0 1 0 0
ABT hor 1/4 0 1 0 1 0
ABT hor 3/4 0 1 0 1 1
SBT ver 0 1 1 0
ABT ver 1/4 0 1 1 1 0
ABT ver 3/4 0 1 1 1 1
在上表中,a是表示执行四叉树分割与否的标志,如果是1,则执行四叉树分割(QT)。如果该标志是0,则确认b,b是表示是否执行二叉树分割的标志。如果b为0,则在该块中不再执行分割(不分割),如果b为1,则执行二叉树分割。
c是表示分割方向的标志,如果是0,则表示水平分割(hor),如果是1,则表示垂直分割(ver),d表示分割形式标志,如果是0,则表示对称分割(SBT。Symmetric BinaryTree),如果是1,则表示非对称分割(ABT,Asymmetric Binary Tree)。仅当d为1时,才确认针对非对称分割中细分比例(1/4或3/4)的信息,当0时,在左/右块或上/下块中,左块与上块具有1/4比率,上块与下块具有3/4比率,而当1时,具有相反比率。
(2)只能执行二叉树分割的情况
在上表中,可以使用除a之外的标志b至e来表示分割信息。
在图8,在A7块的情况下,由于是可以在预分割块(A7至A11)中执行四叉树分割(即,当可以执行四叉树分割但是已成为二叉树分割而不是四叉树分割时)的情况,对应于生成(1)中的分割信息的情况。
另一方面,在A8至A11的情况下,如果尚未在预分割块(A8至A11)中执行四叉树分割,并且已经执行了二叉树分割(即,在相应的块<A8至A11>中已经不能够执行四叉树分割的情况),对应于生成(2)中的分割信息的情况。
(3次。左下块,A12至A15)
在此示例中,当支持多树分割(在此示例中为四叉树、二叉树、三叉树)时,并且可以通过多个分割块设置确定可获得的块的大小和形状。在此示例中,假设在二叉树/三叉树的情况下,最大编码块是64×64,并且最小编码块的一边的长度是4,最大分割深度是4。
在此示例中,当根据分割可获得的块为两个以上(在此示例中为2、3、4)时,一次分割操作所需的分割信息为表示是否分割的标志、表示分割种类的标志、表示分割形状的标志、表示分割方向的标志,可获得的候选可以是4M x 4N、4M x 2N、2M x 4N、4M x N/4M x2N/4M x N、M x 4N/2M x 4N/M x 4N。
如果四叉树和二叉树/三叉树的分割范围重叠并且当前块是通过四叉树分割而获得的块,则分割信息可以分为以下情况。
(1)四叉树分割和二叉树/三叉树分割重叠的情况
a b c d
QT 1
No Split 0 0
BT hor 0 1 0 0
TT hor 0 1 0 1
Bt ver 0 1 1 0
TT ver 0 1 1 1
在上表中,a是表示是否执行四叉树分割的标志,如果为1,则执行四叉树分割。如果该标志为0,则确定表示是否执行二叉树分割还是三叉树分割的标志的b。如果b为0,则不对该块执行进一步的分割。如果为1,则执行二叉树分割或三叉树分割。
c是表示分割方向的标志,如果为0,则表示水平分割,如果为1,则表示垂直分割,d是表示分割种类的标志,如果为0,则表示二进制分割(BT),如果为1,则表示三叉树分割(TT)。
(2)仅可以执行二叉树/三叉树分割的情况
在上表中,可以使用除a之外的标志b至d来表示分割信息。
在图8中,A12、A15块对应于在预分割块A12至A15中能够执行四叉树分割的情况,从而对应于生成(1)中的分割信息的情况。
另一方面,A13和A14对应于以下情况:由于在预分割块A13、A14中分割为三叉树而不是四叉树,因此对应于生成了(2)中的分割信息的情况。
(4次。左下块。A16-A20)
在此示例中,支持多树分割(在此示例中为四叉树、二叉树、三叉树),并且可以通过多个分割块设置确定可获得的块的大小和形状。在此示例中,假设在二叉树/三叉树的情况下,最大编码块为64×64,并且最小编码块的一边长度为4,最大分割深度为4。
在此示例中,当根据分割(在此示例中为2、3、4)可以获得两个以上的块时,一次分割操作所需的分割信息为是否执行分割的标志,表示分割种类的标志,表示分割形式的标志、表示分割方向的标志,可能获得的候选值为4M×4N、4M×2N、2M×4N、4M×N/4M×3N、4M×3N/4M×N、M×4N/3M×4N、3M×4N/M×4N、4M×N/4M×2N/4M×N、M×4N/2M×4N/M×4N。
如果四叉树和二叉树/三叉树的分割范围重叠并且当前块是通过四叉树分割而获得的块,则分割信息可以分为以下情况。
(1)四叉树分割和二叉树/三叉分割重叠的情况
a b c d e f
QT 1
No Split 0 0
TT hor 0 1 0 0
SBT hor 0 1 0 1 0
ABT hor 1/4 0 1 0 1 1 0
ABT hor 3/4 0 1 0 1 1 1
TT ver 0 1 1 0
SBT ver 0 1 1 1 0
ABT ver 1/4 0 1 1 1 1 0
ABT ver 3/4 0 1 1 1 1 1
在上表中,a为表示是否执行四叉树分割的标志,如果为1,则执行四叉树分割。如果该标志是0,则确认表示是否执行二叉树分割的标志b。如果b为0,则不对该块执行进一步的分割。如果为1,则执行二叉树分割或三叉树分割。
c为表示分割方向的标志,如果为0,则表示水平分割、如果为1,则表示垂直分割、d为表示分割种类的标志、如果为0,则表示三叉分割,如果为1,则表示二叉树分割。当d为1时,则确认对应分割形式的标志e,当e为0时,执行对称分割,当e为1时,执行非对称个分割。当e为1时,确认对非对称分割中的细部分割比率的信息,并且这与前面的示例相同。
(2)仅可以执行二叉树/三叉树分割的情况
在上表中,可以使用除a之外的标志b至f来表示分割信息。
在图8中,A20块对应于由于在预分割块A16至A19中可以执行四叉树分割的情况,从而对应于生成(1)中的分割信息的情况。
另一方面,在A16至A19的情况下,由于在预分割块A16至A19中不执行四叉树分割而执行了二叉树分割的情况,对应于生成(2)中的分割信息的情况。
接下来,将要描述对本发明中预测部的帧内预测。
图9是示出在图像编码/解码设备中预定义的帧内预测模式的示例图。
参考图9,67个预测模式配置为用于帧内预测的预测模式候选组,其中,65个是定向模式(2至66)、两个是非定向模式(DC、平面)。在这种情况下,定向模式可以分为斜率(例如,dy/dx)或角度信息(度)。在以上示例中描述的全部或部分预测模式可以被包括在亮度分量或色差分量的预测模式候选组中,并且其他附加模式可以被包括在预测模式候选组中。
另外,其中通过使用色彩空间之间的相关性,可以将完成了编码/解码的另一色彩空间的复原块用于当前块的预测,并且可以包括支持其的预测模式。例如,在色差分量的情况下,可以使用与当前块相对应的亮度分量的复原块来生成当前块的预测块。即,可以考虑色彩空间之间的相关性基于复原块来生成预测块。
可以根据编码/解码设置来自适应地确定预测模式候选组。为了增加预测的准确性,可以增加候选组的数量,并且为了减少根据预测模式的比特量,可以减少候选组的数量。
例如,可以选择A候选组(67个,65个定向模式和2个非定向模式),B候选组(35个,33个定向模式和2个非定向模式),C候选组(18个,17个定向模式和1个非定向模式)中的一个,并且可以根据块的大小和形状来能够自适应地选择或确定候选组。
另外,预测模式候选组可以根据编码/解码设置而具有各种配置。例如,如图2所示,在图9中,以模式之间均等的方式配置预测模式候选组,或者在图9中,能够以18和34之间的模式数量大于2和18之间的模式数量的方式配置候选组。或者,还可以是相反的情况,并且可以根据块的形状(即,正方形、矩形_水平长的情况、矩形_垂直长的情况)自适应地配置候选组。例如,如果当前块的宽度大于高度,则不使用属于2至15的帧内预测模式,并且可以用属于67至80的帧内预测模式进行替换。另一方面,如果当前块的宽度小于高度,则不使用属于53至66的帧内预测模式,并且可以用属于-14至-1的帧内预测模式进行替换。
在本发明中,除非另有说明,否则假定使用具有相等模式间隔的一个预设预测模式候选组(候选组A)执行帧内预测,但是本发明的主要元件也可以在变更后用于设置上述的自适应帧内预测。
图9可以是当块的形状是正方形或矩形时支持的预测模式。另外,当块的形状为矩形时支持的预测模式可以是与以上示例不同的预测模式。例如,预测模式候选组的数量不同或预测模式候选组的数量相同但块长度更长的预测模式密集,相反地,也可以是将预测模式分散或与其相反的情况。在本发明中,如图9,预测模式在无论块的形状如何都在支持预测模式设置(定向模式之间的相等间隔)的前提下进行描述,但也可以应用在其他情况。
可以使用各种方法来设置分配给预测模式的索引。在定向模式的情况下,可以根据预测模式的角度或倾斜度信息,基于预先设置的优先级信息来确定分配给每个模式的索引。例如,对应于x轴或y轴的模式(图9中的模式18、50)可以具有靠前优先级,并且基于所述水平或垂直模式具有45度或-45度的角度差的对角线模式(模式2、34、66)可能具有下一个优先级,基于所述对角线模式具有22.5度或-22.5度的角度差的对角线模式可能具有下一个优先级,可以以这种方式(下一个是11.25度或-11.25度等)或其他各种方法来设置优先级信息。
或者,可以基于预设的预测模式以特定的方向顺序来分配索引。例如,如图9所示,可以从某个对角线模式(模式2)沿顺时针方向分配索引,。后述的示例中,将在基于预设的预测模式沿顺时针方向分配索引的假设下进行描述。
此外,非定向预测模式可以优先于定向模式而分配索引信息,或者可以在定向模式之间分配索引信息,或者可以在末端分配索引信息,这可以根据编码/解码设置来确定。在此示例中,假设非定向模式在预测模式中最优先分配索引的示例(用低索引分配,模式0为平面,模式1为DC)来进行描述。
尽管已经通过以上示例描述了分配给预测模式的索引的各种示例,但是可以在其他设置下分配索引,而不限于上述示例,或者可以具有多种变换示例。
在以上示例中,已经在用于预测模式分配索引的示例中描述了优先级信息,但是优先级信息不仅在预测模式分配索引中使用,而且还可以在预测模式的编码/解码过程中使用。例如,优先级信息可以用于MPM配置等,并且可以在预测模式的编码/解码过程中支持多个优先级信息集。
以下将说明导出当前块的帧内预测模式(特别是亮度分量)的方法。
当前块可以使用在图像编码/解码装置中预定义的默认模式。所述默认模式可以是定向模式或非定向模式。例如,定向模式可以包括垂直模式、水平模式或对角线模式中的至少一种。非定向模式可以包括平面模式或DC模式中的至少一种。如果确定当前块使用默认模式,则可以将当前块的帧内预测模式设置为默认模式。
或者,可以基于多个MPM候选来导出当前块的帧内预测模式。首先,可以在前述预测模式候选组中选择预定的MPM候选。MPM候选的数量可以是三个、四个、五个或更多。可以基于与当前块相邻的相邻块的帧内预测模式来导出MPM候选。相邻块可以是与当前块的左侧、上端、左上端、左下端或右上端中的至少一个相邻的块。
具体地,可以通过考虑左侧块的帧内预测模式(candIntraPredModeA)和上端块的帧内预测模式(candIntraPredModeB)是否相同以及candIntraPredModeA和candIntraPredModeB是否为非定向模式来确定MPM候选。
例如,如果candIntraPredModeA和candIntraPredModeB相同且candIntraPredModeA不是非定向模式,则当前块的MPM候选可以包括candIntraPredModeA,(candIntraPredModeA-n),(candIntraPredModeA+n)或非定向模式中至少一个。在此,n可以是1、2或更大的整数。所述非定向模式可以包括平面模式或DC模式中的至少一个。例如,可以如下表2所示,确定当前块的MPM候选。表2的索引指定了MPM候选的位置或优先级,但不限于此。例如,可以给DC模式分配index1,或者可以分配index4。
Index MPM候选
0 candIntraPredModeA
1 2+((candIntraPredModeA+61)%64)
2 2+((candIntraPredModeA-1)%64)
3 INTRA_DC
4 2+((candIntraPredModeA+60)%64)
表2
或者,如果candIntraPredModeA和candIntraPredModeB不同,并且candIntraPredModeA和candIntraPredModeB都不是非定向模式,则当前块的MPM候选可以包括candIntraPredModeA、candIntraPredModeB、(maxAB-n)、(maxAB+n)或非定向模式中的至少一个。在此,maxAB表示candIntraPredModeA和candIntraPredModeB中的最大值,并且n可以是1、2或更大的整数。所述非定向模式可以包括平面模式和DC模式中的至少一个。例如,可以如下表3中所示确定当前块的MPM候选。表3的索引指定了MPM候选的位置或优先级,但不限于此。例如,可以给DC模式分配最大index。当candIntraPredModeA和candIntraPredModeB之间的差值在预定阈值范围内时,将应用表3中的MPM候选1,否则可以应用MPM候选2。这里,阈值范围可以是大于或等于2且小于或等于62的范围。
Index MPM候选1 MPM候选2
0 candIntraPredModeA candIntraPredModeA
1 candIntraPredModeB candIntraPredModeB
2 INTRA_DC INTRA_DC
3 2+((maxAB+61)%64) 2+((maxAB+60)%64)
4 2+((maxAB-1)%64) 2+((maxAB)%64)
表3
或者,如果candIntraPredModeA和candIntraPredModeB不相同,并且candIntraPredModeA和candIntraPredModeB中只有一个处于非定向模式,则当前块的MPM候选可以包括maxAB、(maxAB-n)、(maxAB+n)或非定向模式中的至少一个。在此,maxAB表示candIntraPredModeA和candIntraPredModeB的最大值,并且n可以是1、2或更大的整数。所述非定向模式可以包括平面模式和DC模式中的至少一个。例如,可以如下表4所示,确定当前块的MPM候选。表4的index指定了MPM候选的位置或优先级,但不限于此。例如,可以给DC模式分配索引0,或者可以分配最大index。
Index MPM候选
0 maxAB
1 INTRA_DC
2 2+((maxAB+61)%64)
3 2+((maxAB-1)%64)
4 2+((maxAB+60)%64)
表4
或者,如果candIntraPredModeA和candIntraPredModeB不相同,并且candIntraPredModeA和candIntraPredModeB均为非定向模式,则当前块的MPM候选可以包括非定向模式、垂直模式、水平模式、(垂直模式-m)、(垂直模式+m)、(水平模式-m)或(水平模式+m)中的至少一种。在此,m可以是1、2、3、4或更大的整数。所述非定向模式可以包括平面模式和DC模式中的至少一个。例如,可以如下表5所示,确定当前块的MPM候选。表5的index指定了MPM候选的位置或优先级,但不限于此。例如,可以给水平模式分配index1,或者可以分配最大index。
Index MPM候选
0 INTRA_DC
1 垂直模式
2 水平模式
3 (垂直模式-4)
4 (垂直模式+4)
表5
在前述多个MPM候选中,由MPM索引指定的MPM候选可以被设置为当前块的帧内预测模式。MPM索引可以由图像编码装置编码并发出信号。
如上所述,可以通过选择性地使用默认模式或MPM候选中任意一个来导出帧内预测模式。可以基于由编码装置发出信号的标志来执行选择。在这种情况下,标志可以表示是否将当前块的帧内预测模式设置为默认模式。如果所述标志是第一值,则将当前块的帧内预测模式设置为默认模式,如果不是,则可以发出关于当前块的帧内预测模式是否从MPM候选导出,MPM索引等的信息。
色差分量可以具有与亮度分量的预测模式候选组相同的候选组,或者可以包括由亮度分量的预测模式候选组中部分模式配置的候选组。此时,色差分量的预测模式候选组可以具有固定配置或可变(或自适应)配置。
(固定候选组配置vs可变候选组配置)
作为固定配置的示例,将亮度分量的预测模式候选组中部分模式(例如,假设是DC模式、平面模式、垂直模式、水平模式、对角线模式<假设是DL、UL、UR中至少一个模式,DL是从右下方到右上方方向进行预测,UL是从左上方到右下方进行预测,UR是从右上方到左下方进行预测,假设分别是在图9中的模式2、34和66,另外也可以是其他的对角线模式>)配置为色差分量的预测模式候选组,以执行帧内预测。
作为可变配置的一个示例,将亮度分量的预测模式候选组中的部分模式(例如,假设是DC模式、平面模式、垂直模式、水平模式、对角UR模式,假设通常将选择较多的模式配置为基本预测模式候选组)配置为色差分量的基本预测模式候选组,但是可以发生包括在所述候选量组中的模式可能无法正确反映色差分量的特性情况。为了改善这一点,可以改变色差分量的预测模式候选组配置。
例如,可以将与色差分量的块相同或相对应的位置的亮度分量的块或子块的至少一个预测模式包括(后述的示例1)在基本预测模式候选组中,或者替换某些模式来配置新的预测模式候选组(后述的示例2)。例如,在亮度分量中与色差分量<根据颜色格式>相对应的对应位置不能由一个块配置,而是通过分割块等配置为多个子块的情况下,则表示预设位置的块。此时,在与色差分量的块相对应的亮度分量块中的左上、右上、左下、右下、中间、上中、下中、左中,右中等位置确定预设块的位置;如果区分为图像内坐标,则可以是左上为包括(0,0)坐标的位置、右上为包括(blk_width-1,0)坐标的位置、左下为包括(0,blk_height-1)坐标的位置、右下为包括(blk_width-1,blk_height-1)坐标的位置,中心为包括(blk_width/2-1,blk_height/2-1)、(blk_width/2,blk_height/2-1)、(blk_width/2-1,blk_height/2)、(blk_width/2,blk_height/2中的一个坐标的位置,上中为包括(blk_width/2-1,0)、(blk_width/2,0)中的一个坐标的位置,下中为包括(blk_width/2-1,blk_height-1)、(blk_width/2,blk_height-1)中的一个坐标的位置,左中为包括(0,blk_height/2-1)、(0,blk_height/2)中的一个坐标的位置,右中为包括(blk_width-1,blk_height/2-1),(blk_width-1,blk_height/2)中一个坐标的位置。即,意味着包括所述坐标位置的块。上述的blk_width与blk_height是指亮度块的水平和垂直的长度,并且坐标不限于以上情况,并且可以包括其他情况。接下来的描述中,添加到色差分量的预测模式候选组的亮度分量的预测模式<或颜色模式>根据预设优先级<例如,假设为左上-右上-左下-右下-中间>,添加至少一个预测模式。如果添加两个预测模式,则根据上述设置添加左上块的模式和右上块的模式。此时,当左上和右上位置的块由一个块配置时,添加下一个优先级的左下块模式。
或者,可以将当前块为中心,位于左、上、左上、右上、左下等的相邻块,或者相应块的子块(当相邻块以多个块配置时)的至少一个预测模式(可以指定与预设位置的块相邻的块,当多个模式包括在色差分量的预测模式候选组中时,可以根据优先级作为候选集包括位于预设优先级的块,以及位于子块内的预设优先级的子块的预测模式)包括在基本预测模式候选组中,或者可以通过替换部分模式来配置新的预测模式候选组。
如果在上述描述中添加附加内容,不仅可以包括亮度分量的块或相邻块(亮度块的)的预测模式,还可以包括从该预测模式导出的至少一个模式作为色差分量的预测模式。在后述示例中,将会举出包括亮度分量的预测模式作为色差分量的预测模式的示例,将省略关于包括从亮度分量的预测模式导出的预测模式(例如,如果以该模式的相邻模式、定向模式为例,当水平模式18是亮度分量的预测模式时,模式17、19、16等的模式相当于导出的预测模式,并且如果从色差分量配置多个预测模式作为色差分量的预测模式候选组,则候选组配置的优先级可以按照从亮度分量的预测模式到从亮度分量的预测模式导出的模式的顺序来设置)或从相邻块的预测模式导出的预测模式作为色差分量的预测模式候选组的示例的详细描述,但是可以应用以下描述中的相同或改变的设置。
作为一个示例(1),当亮度分量的预测模式与色差分量的预测模式候选组中一个匹配时,候选组的配置相同(候选组的数量不变),并且没有一个匹配时候选组的配置不相同(候选组的数量增加)。
当以上示例中的候选组的配置相同时,预测模式的索引可以相同或可以分配其他索引,这可以根据编码/解码设置来确定。例如,当色差分量的预测模式候选组的索引是平面0、DC1、垂直2、水平3、对角线UR4时,在亮度分量是水平的情况下,预测模式候选组的配置保持不变,并且每个预测模式的索引保持不变,或者可以分配其他索引(在此示例中,水平0、平面1、DC2、垂直3、对角线UR4)。上面的索引重置可能是为了在预测模式编码/解码过程中,生成较少的模式位(假设:将较少的位分配给小的索引)而执行的过程的示例。
当以上示例中的候选组的配置不相同时,在预测模式的索引可以保持相同的情况下添加,或者可以分配不同的索引。例如,当预测模式候选组索引设置与先前示例相同时,在亮度分量的预测模式为对角线DL时,将预测模式候选组的配置增加1,并且现有的候选组的预测模式索引保持不变,并且可以将新添加的模式的索引作为最后一个(在此示例中为对角线DL5)或分配其他索引(在此示例中,对角线DL0、平面1、DC2、垂直3、水平4、对角线UL5)。
作为示例(2),当亮度分量的预测模式与色差分量的预测模式候选组中的一个匹配时,候选组的配置相同(候选组的模式不变),并且一个都不匹配时,候选组的配置不相同(替换候选组的模式中至少一个)。
当以上示例中的候选组的配置相同时,预测模式的索引可以相同或可以分配其他索引。例如,当色差分量的预测模式候选组的索引是平面0、DC1、垂直2、水平3、对角线UR4时,在亮度分量的预测模式是垂直的情况下,预测模式候选组的配置保持不变,并且每个预测模式的索引保持不变,或者可以分配其他索引(在此示例中,垂直0、水平1、对角线UL2、平面3、DC4;当亮度分量的模式为定向的情况下的定向模式在前的例子,亮度分量为非定向的情况下的非定向模式在前的例子,但不限于此)。
当上述示例中的候选组的配置不相同时,对于预测模式的索引保持不变的模式保持不变,并且可以将替换模式的索引分配给更改模式,或者可以将与现有不同的索引分配给多个预测模式。例如,当预测模式候选组索引设置与前一示例相同时,当亮度分量的预测模式为对角线DL时,将替换预测模式候选组中一个模式(本例中为对角线UL),并现有的候选组的预测模式索引保持不变,分配要替换的模式的索引,作为新添加的模式的索引(例如,对角线DL4)或可以分配其他索引(在此示例中,对角线DL0、平面1、DC2、垂直(3),水平4)。
在前面的描述中,出于分配更少的模式位的目的而举出了执行索引的重置的示例,但是这只是根据编码/解码设置的示例,并且还可以有其他情况。如果预测模式的索引没有变化,则可以执行将少量比特分配给小的索引的二值化,或者可以执行与索引的大小无关地分配比特的二值化。例如,当重置的预测模式候选组为平面0、DC1、垂直2、水平3、对角线DL4时,即使将大的索引分配给对角线DL,由于是从亮度分量获得的模式,因此可以设置成比其他预测模式分配更少的模式位。
所述预测模式可以是以与图像类型无关的方式被支持的模式,也可以是根据一些图像(例如,图像I类型支持而图像类型P或B不支持的模式)类型确定是否支持的模式。
通过以上示例描述的内容仅限于本示例,并且还可以有附加或其他改变的示例。另外,通过以上示例描述的编码/解码设置可以隐式确定,或者可以以视频、序列、图片、slice、tile等为单位显式包括相关信息。
(获得相同颜色空间中的预测值vs获得其他颜色空间中的预测值)
在通过以上示例描述的帧内预测模式的情况下,描述了关于从相同时间相同空间内的相邻区域,获得用于生成预测块的数据的方法(例如外插、内插、平均等)的预测模式。
另外,可以支持关于从位于相同时间不同空间内的区域中获得用于生成预测块的数据的方法的预测模式。
例如,对上述内容的示例可以是关于使用颜色空间之间的相关性在其他颜色空间中获得用于生成预测块的数据的方法的预测模式。此时,当以YCbCr为例时,颜色空间之间的相关性可以表示Y与Cb、Y与Cr、Cb与Cr之间的相关性。即,在色差分量Cb或Cr的情况下,可以生成与当前块相对应的亮度分量的复原块作为当前块的预测块(色差vs亮度为后述的示例的基本设置)。或者,可以生成与一些色差分量(Cr或Cb)的当前块相对应的一些色差分量(Cb或Cr)的复原块,作为色差分量(Cr或Cb)的预测块。此时,可以直接生成其他颜色空间的复原块作为预测块(即,不执行校正)或可以生成考虑颜色之间的相关性而获得的块(例如,对现有的复原块执行校正,在P=a*R+b中,a和b代表用于校正的值,R和P分别代表在不同颜色空间中获得的值和当前颜色空间的预测值)作为预测块。
在此示例中,通过假设使用颜色空间的相关性而获得的数据用作当前块的预测值的情况来进行描述,但是当使用该数据作为对已有的当前块的预测值进行校正的校正值(例如,使用其他颜色空间的残差值作为校正值;也就是,存在其他预测值,并校正该预测值;尽管将这些预测值相加,也是预测值,但是为了详细区分而进行了描述)的情况下也是可能的。在本发明中,假设前一种情况进行了描述,但是本发明不限于此,并且可以相同或变换地使用校正值。
所述预测模式可以是以与图像类型无关的方式被支持的模式,也可以是根据一些图像(例如,图像类型I支持而图像类型P或B不支持的模式)类型确定是否支持的模式。
(为了获得相关性信息而比较的部分)
在以上示例中,颜色空间之间的相关性信息(a、b等)可以显式包括相关信息,也可以隐式获得。此时,为了获得相关信息而比较的区域可以是1)色差分量的当前块与亮度分量的对应块,或者2)色差分量的当前块的相邻区域(例如,左块、上块、左上块、右上块、左下块等)与亮度分量的对应块相邻区域。前者可能是显式而后者是隐式处理的情况下的示例。
例如,通过对每个颜色空间的至少一个像素值的比较等获得相关信息(此时,要比较的像素值(Pixel Value)可以是从每个颜色空间中的一个像素(Pixel)获得的像素值,并且可以是从多个像素获得的像素值。通过加权平均等的滤波过程导出的像素值,即,用于比较每个颜色空间的一个像素值所参考或使用的像素的数量可是一个像素vs一个像素,一个像素vs多个像素等。此时,前者可能是用于生成预测值的颜色空间,后者可能是用于参考的颜色空间。以上示例可能是根据颜色格式而可能出现的情况,或者能够以与颜色格式无关的方式将色差分量的一个像素的像素值与亮度分量的对应的一个像素的像素值进行比较,并且可以将色差分量的一个像素的像素值与通过对亮度分量的多个像素执行滤波<a-tapseparate 1D filter、b x c mask non-separable 2D filter、d-tap directionalfilter等>而获得的像素值进行比较,并且根据编码/解码设置,可以使用两者中的一个方法;以上描述了色差和亮度的示例,但是还可以有如色差<Cb>和色差<Cr>的变换例)。
在以上示例中,在隐式获得相关信息时比较的区域,可以是当前颜色分量的当前块的最邻近像素线(例如,包括在p[-1,-1]至p[blk_width-1,-1]、p[-1,0]至p[-1,blk_height-1]的像素)以及与其相对应的其他颜色空间的像素线或当前颜色分量的当前块的多个像素线(例如,在上述情况下,包括p[-2,-2]至p[blk_width-1,-2]、p[-2,-1]至p[-2,blk_height-1]的多个像素线包括的像素)和与其相对应的其他颜色空间的像素线。
具体来说,假设颜色格式为4:2:0,则为了比较当前颜色空间(在此示例中为色差)中一个像素的像素值,可以使用在其他颜色空间(在此实例中位亮度)中的对应的4各像素(色差分量的一个像素对应于亮度分量的2×2内的4个像素)中的预设位置(在此示例中,在2×2内的左上、右上、左下、右下中选择)的一个像素中像素值。或者,为了比较色度空间中的一个像素的像素值,可以使用通过对亮度空间中的多个像素(例如,对应的2×2像素中的至少两个像素等)执行滤波而获得的像素值。
总之,可以从当前块的相邻区域的复原的像素和与其对应的其他颜色空间的复原的像素中导出所述参数信息。也就是说,可以基于相关信息来生成至少一个参数(例如,a或b、a1、b1或a2、b2等),并且可以作为与其他颜色空间中复原块的像素相乘或相加的值(例如,a、a1、a2/b、b1、b2)。
在这种情况下,可以在确认以上示例中比较的像素的可用性之后执行比较处理。例如,当相邻区域可用时,可以将其用作用于比较的像素,而当相邻区域不可用时,可以根据编码/解码设置来确定。例如,当相邻区域中的像素不可用时,可以将其从用于获得颜色空间的相关信息的过程中排除,或者可以在填充不可用区域之后将其包括在比较过程中,这可以根据编码/解码设置来确定。
例如,当从用于获取颜色空间之间的相关性信息的过程中排除时,这可以是对应于包括至少一个颜色空间的像素的区域不可用的情况的示例。详细地,可以是对应于两个颜色空间之一的像素不可用或者两个颜色空间的像素不可用的情况的示例,其可以根据编码/解码设置来确定。
或者,当在不可用区域中填充用于比较的数据之后(或类似于参考像素填充过程的操作)执行用于获得颜色空间之间的相关性信息的过程时,可以使用各种填充方法。例如,可以用预设像素值(例如,位深度的中间值1<<(bit_depth-1)、图像的实际像素的最小值和最大值之间的值、图像的实际像素的平均、中间值等)填充,或者可以用相邻像素或通过对相邻像素执行滤波(类似于参考像素滤波过程的操作)获得的值填充,或者可以采用其他方法。
图10示出了为了获得相关性信息比较颜色空间之间的像素的示例。为了便于说明,假设采用4:4:4的颜色格式。此时,考虑根据颜色格式的分量比来描述后述的过程(即包括根据分量比的转换过程)。
R0表示可以使用两侧颜色空间区域的示例。由于两侧颜色空间区域都是可用区域,因此可以在比较过程中使用对应区域的像素以获得相关信息。
R1表示两侧颜色空间区域中的一个不可用的示例(在此示例中,当前颜色空间的相邻区域可用,而其他颜色空间的对应区域不可用)。在使用各种方法填充区域不可用区域后,可以将不可用区域用于比较过程。
R2表示两侧颜色空间区域中的一个不可用的示例(在此示例中,当前颜色空间的相邻区域不可用,而其他颜色空间的对应区域可用)。由于一侧上存在不可用的区域,因此无法在比较过程中使用两个颜色空间的相应区域。
R3表示两侧颜色空间区域都不可用的示例。通过使用多种方法填充不可用区域,可以将其用于比较过程。
R4表示两侧颜色空间区域都不可用的示例。由于两侧都存在不可用的区域,因此无法在比较过程中使用两侧颜色空间的相应区域。
另外,与图10不同,在当前块的相邻区域或其他颜色空间的对应区域均不可用时,可以进行各种设置。
作为一个示例,可以将预设值(在此示例中,a为1、b为0)分配给a和b。这种情况可能意味着保持一种模式,该模式用当前块的预测块填充另一种颜色空间的数据。并且,这种情况可以允许,当执行预测模式编码/解码时,对该模式的发生(或选择)概率的设置或优先级具有与现有的情况不同的设置(例如,将选择的概率视为较低或者将优先级设置为靠后等;换句话说,因为是准确度低的相关性信息,所以通过该预测模式获得的预测块的准确度可能会很低,从而估计最终无法被选为最佳的预测模式)。
例如,由于不存在要比较的数据,因此可能不支持用当前块的预测块填充另一颜色空间的数据的模式。即,该模式可以是当存在至少一个可用区域时支持的模式。此时,当执行预测模式编码/解码时,可以设置为允许或不允许用其他模式来代替该模式。前一种情况可以是维持预测模式候选组的数量的设置,后一种情况是预测模式候选组的数量减少的设置。
不仅限于以上示例,而且可以有各种变换例。
在以上示例中,不可使用的情况是当该区域未完成编码/解码时,位于图像(例如,图片,slice,tile等)的边界之外(即,当前块和该区域不包括在同一个图像内)的情况。另外,可以根据编码/解码设置(例如,constrained_intra_pred_flag等,例如,当P或Bslice/类型,上述标志为1,相应区域的编码模式为Inter时)添加不可用的情况。
在后述的示例中,当在通过颜色空间的比较获得相关信息之后通过使用其他颜色空间的复原数据来生成当前块的预测块时,可能发生上述限制。即,如上所述,当判断与当前块相对应的其他颜色空间的相应区域不可用时,该模式的使用可能受到限制或不可用。
可以使用表示通过上述过程获得的颜色空间之间的相关性信息的参数和对应于当前块的其他颜色空间的复原数据来生成当前块的预测值。此时,用于当前块的预测的其他颜色空间的复原数据可以是预设位置处的像素的像素值或痛过滤波过程获得的像素值。
例如,在4:4:4的情况下,为了生成色度空间的一个像素的预测值,可以在亮度空间使用一个对应像素的像素值。或者,为了生成色度空间的一个像素的预测值,可以使用在亮度空间对多个像素(例如,以对应的像素为中心位于左、右、上、下、左上、右上、左下、右下等的方向上的像素。当以应用5-tap和7-tap滤镜时为例,可以理解为以对应的像素为中心的,在左、右、上、下分别有两个、三个的情况)执行滤波而获得的像素值。
例如,在4:2:0的情况下,为了生成色度空间的一个像素的预测值,可以使用在亮度空间中对应的四个像素(色差分量的一个像素对应于亮度分量的2×2个像素)中预设位置(左上、右上、左下、右下中选择)的一个像素的像素值。或者,为了生成色度空间的一个像素的预测值,可以使用在亮度空间对多个像素(例如,对应的2×2像素中至少两个像素,或者以2×2像素为中心,位于左、右、上、下、左上、右上、左下、右下等方向的像素)执行滤波而获得的像素值。
总之,可以将表示通过上述过程获得的相关性信息的参数应用(相乘或相加等)于在其他颜色空间中获得的像素值,来获得的像素值,并将其作为当前颜色空间内像素的预测值。
在以上示例中,已经描述了一些颜色格式、一些像素值获取过程等,然而,不限于此,并且在其他情况下可以使用相同或修改的示例。
在(相同颜色空间中获得预测值vs不同颜色空间中获得预测值)中描述的内容可以应用于固定候选组配置vs可变候选组配置。例如,当在其他颜色空间中不能获得预测值时,可以在候选组中包括预测值的替换模式。
通过上述示例,在上述预测模式的情况下,可以以图像、序列、图片、slice、tile为单位包括相关信息(例如,关于支持与否的信息、参数信息等)。
综上所述,使用与方法(上述方法为根据编码/解码设置,从相同时间、相同空间内的相邻区域获取用于生成预测块的数据的方法)相关的预测模式(模式A)配置预测模式候选组,或者所述预测模式以外,预测模式候选组可以包括与方法(上述方法为从位于相同时间、不同空间内的区域中获取用于生成预测块生成的数据的方法)相关的预测模式(B_mode)。
在以上示例中,可以仅使用模式A或仅使用模式B来配置预测模式候选组,并且可以通过混合使用模式A和模式B来配置预测模式候选组。与此相关,可以显式地生成关于预测模式候选组配置的设置信息,或者可以预先隐式地确定关于预测模式候选组配置的信息。
例如,可以具有相同的配置,而与一些编码/解码设置(在此示例中为图像类型)无关,或者根据一些编码/解码设置具有单个配置(例如,I图像类型中使用模式A、模式B_1<颜色模式>、模式B_2<彩色复印模式>配置预测模式候选组,在P图像类型中使用模式A、模式B_1配置预测模式候选组,而在B图像类型中使用模式A和模式B_2配置预测模式候选组等)。
在本发明中,用于亮度分量的预测模式候选组如图9所示,色差分量的预测模式候选组在图9中配置为水平、垂直、对角线模式(图9中的平面、DC、彩色模式1、彩色模式2、彩色模式3、彩色复印模式1、彩色复印模式2、相邻块模式1(左块)、相邻模式2(上块))的假设下进行了描述,但是也可以有其余的各种预测模式候选组的设置。
在根据本发明实施例的图像编码方法中,帧内预测可以配置为如下。预测部的帧内预测可以包括参考像素配置步骤、预测块生成步骤、预测模式确定步骤和预测模式编码步骤。另外,图像编码装置可以被配置为包括用于实现参考像素配置步骤、预测块生成步骤、预测模式确定步骤、预测模式编码步骤的参考像素配置部、预测块生成部、预测模式编码部。可以省略上述过程中的一些步骤,或者可以添加其他步骤,并且可以变换为除上述顺序之外的其他顺序。
另外,在根据本发明实施例的图像解码方法中,帧内预测可以配置为如下。预测部的帧内预测可以包括预测模式解码步骤、参考像素配置步骤、预测块生成步骤。此外,图像解码装置可以被配置为包括用于实现预测模式解码步骤、参考像素配置步骤、预测块生成步骤的预测模式解码部、参考像素配置部、预测块生成部。可以省略上述步骤中的一些,或者可以添加其他步骤,并且可以变换为除上述顺序之外的其他顺序。
在所述预测块生成步骤中,可以执行当前块(例如,编码块,预测块,变换块等)单位的帧内预测,或者可以执行预定子块为单位的帧内预测。为此,可以使用指示当前块是否被分割为子块以执行帧内预测的标志。标志可以由编码装置编码并用信号发送。如果该标志是第一值,则当前块被分割为多个子块,否则,当前块不被分割为多个子块。这里的分割可以是在基于上述树结构的分割之后执行的附加分割。属于当前块的子块共享一个帧内预测模式,但是可以为每个子块配置不同的参考像素。或者,所述子块可以使用相同的帧内预测模式和参考像素。或者,子块可以使用相同的参考像素,但是可以针对每个子块使用不同的帧内预测模式。
可以在垂直或水平方向上执行所述分割。可以基于由编码装置发出信号的标志来确定分割方向。例如,当所述标志是第一值时,可以在水平方向上进行分割,否则,可以在垂直方向上进行分割。或者,可以基于当前块的大小来确定分割方向。例如,在当前块的高度大于预定阈值大小时,可以在水平方向上进行分割,并且在当前块的宽度大于预定阈值大小时,可以在垂直方向上进行分割。这里,阈值大小可以是在编码/解码装置中预先定义的固定值,或者可以基于关于块大小的信息(例如,最大变换块的大小、最大编码块的大小,等)来确定阈值大小。关于块大小的信息可以在序列、图片、slice、tile、brick或者CTU row中至少一个级别中发出信号。
可以基于当前块的大小,形状,分割深度,帧内预测模式等来可变地确定子块的数量。例如,在当前块是4×8或8×4时,当前块可以被分割为两个子块。或者,如果当前块大于或等于8×8,则可以将当前块分为四个子块。
在本发明中,将主要对编码器进行描述,在解码器的情况下,由于可以从编码器的内容反过来推导,因此省略了详细描述。
图11是用于说明用于帧内预测的参考像素配置的示意图。可以从分割块部获得用于预测的当前块的大小和形状(M×N),并将在4×4至128×128的范围内支持帧内预测的假设下进行描述。通常可以使用预测块单元执行帧内预测,但是根据分割块部的设置,可以执行编码块、变换块单位的帧内预测。在确认块信息之后,参考像素配置部可以配置用于当前块的预测的参考像素。此时,可以通过临时存储器(例如,阵列<Array>,主阵列或辅助阵列等)管理参考像素,在该块的每个帧内预测过程中生成和删除该参考像素,并且临时存储器的大小可以根据参考像素的配置来确定。
在本示例中,以当前块为中心,假设左块、上块、左上块、右上块、左下块被用于当前块的预测来进行描述,然而,不限于此,并且可以将具有其他配置的块候选组用于当前块的预测。例如,针对所述参考像素的相邻块的候选组可以是根据光栅或Z扫描时的一个示例,并且可以根据扫描顺序去除所述候选组中的一部分或者可以配置为包括其他块候选组(例如,附加配置上块、下块、右下块等)。
或者,其他颜色空间(例如,如果当前块属于Cr,则其他颜色空间对应于到Y或Cb)中与当前块相对应的块(例如,根据在每个颜色空间中的相同坐标或颜色分量组成比,具有相应坐标的情况)可以用于预测当前块。另外,为了便于描述,通过假设以所述预设位置(左、上、左上、右上、左下)配置为一个块为例来进行描述,但是在相应位置可以存在至少一个块。即,所述于预设位置可以存在根据对应块的分割块的多个子块。
总之,当前块的相邻区域可以是用于当前块的帧内预测的参考像素的位置,并且根据预测模式,可以考虑将与另一颜色空间的当前块相对应的区域进一步作为参考像素的位置。除了以上示例,可以确定根据预测模式、方法等定义的参考像素的位置。例如,当通过诸如块匹配等的方法生成预测块时,可以将参考像素位置考虑为当前图像的当前块之前的完成编码/解码的区域或者在完成编码/解码的区域中包括在搜索范围内的区域(例如,包括在当前块的左侧或者上侧或者左上侧、右上侧等)。
如图11所示,用于当前块的预测的参考像素可以由左块、上块、左上块、右上块、左下块的相邻像素(图11中的Ref_L、Ref_T、Ref_TL、Ref_TR、Ref_BL)配置。此时,参考像素通常由最临近于当前块的相邻块的像素(图11中的a)组成,但是也可以包括其他像素(图11中的b与其他外线的像素)。即,可以使用与当前块相邻的第一像素线a、与第一像素线相邻的第二像素线b、与第二像素线相邻的第三像素线或与第三像素线相邻的第四像素线中的少一个。例如,根据编码/解码设置,多个像素线可以包括所有第一至第四像素线,或者可以仅包括除第三像素线以外的其余像素线。或者,多条像素线可以仅包括第一像素线和第四像素线。
当前块可以通过选择性地参考多条像素线中的任何一条来执行帧内预测。此时,可以基于由编码装置发出信号的索引(refIdx)来执行所述选择。或者,可以基于当前块的大小、形状、分割种类、帧内预测模式是否为非定向模式、帧内预测模式的角度等,来选择性地使用多条像素线中的任何一条。例如,当帧内预测模式是平面模式或DC模式时,可以仅限使用第一像素线。或者,在当前块的尺寸(宽度或高度)小于或等于预定阈值时,可以仅限使用第一像素线。或者,当帧内预测模式大于预定阈值角度(或小于预定阈值角度)时,可以仅限使用第一像素线。所述阈值角度可以是与前述预测模式候选组的模式2、模式66相对应的帧内预测模式的角度。
另一方面,与当前块相邻的像素可以被分类为至少一个参考像素层,可以分类为最临近当前块的像素是ref_0(与当前块的边界像素的像素值差为1的像素;p(-1,-1)至p(2m-1,-1)、p(-1,0)至p(-1,2n-1)),下一个相邻像素(当前块的边界像素与像素值差为2;p(-2,-2)至p(2m,-2)、p(-2,-1)至p(-2,2n))为ref_1,下一个相邻像素(边界当前块的像素和像素值3之间的差异;p(-3,-3)至p(2m+1,-3)、p(-3,-2)至p(-3,2n+1))为ref_2等。即,参考像素可以根据与当前块的边界像素相邻的像素距离而被分类为多个参考像素层。
另外,在此,可以针对每个相邻的相邻块不同地设置参考像素层。例如,当与当前块和与上端相邻的块作为参考块时,可以使用根据层ref_0的参考像素,并且当使用与上端相邻的块作为参考块时,可以使用根据层ref_1的参考像素。
此时,通常在执行帧内预测时参考的参考像素集属于与当前块相邻的相邻块,该相邻块位于左下、左、左上、上端、右上端,并且是属于层ref_0(最临近边界像素的像素)的像素,除非另外说明,否则彼此属于的像素被认为是这些像素。然而,可以仅将属于以上涉及的相邻块中的一部分像素用作参考像素集,或者可以将属于两个以上层的像素用作参考像素集。这里,参考像素集或层可以被隐式地确定(在编码/解码装置中预设),或者可以被显式地确定(可以从编码装置接收用于确定的信息)。
在此,基于所支持的参考像素层的最大数量为3的前提下进行描述,但是也可以具有大于该数量的值,参考像素层的数量与根据可以参考的相邻块的位置的参考像素集的数量(或者,可以称为参考像素候选组)可以根据块的大小、形状、预测模式、图像类型(I/P/B,此时,图像为图片、slice、tile等)、颜色分量等来不同地设置,并且可以以序列、图片、slice、tile为单位包括相关信息中。
本发明在从最临近当前块的参考像素层分配低索引(从0开始递增1)的前提下描述本发明,但是本发明不限于此。另外,可以在如上的索引设置(在选择多个参考像素集中一个的情况下,对低索引分配短位的二值化等)下生成后述的参考像素配置的相关信息。
另外,当存在两个以上的参考像素层被支持时,可以将包括在两个以上的参考像素层中的每个参考像素用于加权平均。
例如,可以使用参考像素来生成预测块,该参考像素是由位于图11的层ref_0(最临近的像素层)和层ref_1(下一个像素层)中的像素的加权和获得的。此时,根据预测模式(例如,预测模式定向),在每个参考像素层中应用加权和的像素不仅可以是整数单位像素,而且是小数单位像素。此外,将加权值(例如,7:1、3:1、2:1、1:1)分别应用于通过使用根据第一参考像素层参考像素而获得的预测块和通过使用根据第二参考像素层参考像素而获得的预测块,以获得一个预测块。此时,若加权值为根据与当前块相邻的参考像素层的预测块,可以具有更高的加权值。
通常,对于上述示例可以有,将相邻块的最临近的像素作为参考像素,但是不限于此,例如,可以有各种情况的数量(例如,将ref_0和ref_1选择为参考像素层,并通过ref_0和ref_1执行加权和等方法生成预测像素值的情况等,即,隐式的情况)。
此外,参考像素配置相关信息(例如,针对参考像素层或集合的选择信息等),可以不包括预设信息(例如,当参考像素层被预设为ref_0时),例如可以配置为,ref_1、ref_2、ref_3等,但也不限于此。
已经通过以上示例描述了参考像素配置的一些情况,其可以与各种编码/解码信息等结合以确定帧内预测设置。此时,编码/解码信息包括图像类型、颜色分量、当前块的大小、形状、预测模式(预测模式的种类(定向、非定向)、预测模式的方向(垂直、水平、对角线1、对角线2等)等,并且可以根据相邻块的编码/解码信息和当前块与相邻块的编码/解码信息的组合来确定帧内预测设置(在此示例中为参考像素配置设置)。
图12是用于说明用于帧内预测的参考像素范围的示意图。详细地,参考像素范围根据块的大小、形状、预测模式的配置(在此示例中为预测模式的角度信息)等来确定。图12中箭头所指的位置为用于预测的像素。
参考图12,A、A'、B、B'、C像素是指在8×2、2×8、8×4、4×8、8×8块的右侧下端的像素,为了执行该像素的预测,可以通过在上侧和左侧块中使用的像素AT、AL、BT、BL、CT、CL来确认每个块的参考像素范围。
例如,参考像素为A和A'像素(矩形块)时,位于p(0,-1)至p(9,-1)、p(-1,0)至p(-1,9)、p(-1,-1)的范围内,参考像素为B和B'像素(矩形块)时,位于p(0,-1)至p(11,-1)、p(-1,0)至p(-1,11)、p(-1,-1)的范围内,参考像素为C像素(正方形块)时,位于p(0,-1)至p(15,-1)、p(-1,0)至p(-1,15)、p(-1,-1)的范围内。
可以将通过上述过程获得的参考像素的范围信息(例如,P(-1,-1)、P(M+N-1,-1)、P(-1,N+M-1)等,用于帧内预测过程(例如,参考像素滤波、预测像素生成过程等)。此外,支持参考像素情况不会仅限于上述情况,并且还可以有其他各种情况。
帧内预测的参考像素配置部可以包括参考像素生成部、参考像素插值部、参考像素滤波部等,并且可以包括上述配置的全部或一部分。
参考像素配置部可以确认参考像素的可用性(Availability)以对可用参考像素和不可用参考像素进行分类。例如,如果可以使用预设位置处的块(或参考像素候选块),则相应的块可以用作参考像素,并且如果不可用,则该块不能用作参考像素。
当满足以下条件中的至少一个时,判断参考像素可用性为不可用。例如,位于图片边界之外的情况、不属于与当前块相同的分割单位(例如,slice、tile等)的情况、编码/解码未完成的情况、根据编码/解码设置限制使用的情况中如果满足任何一种情况,则可以判断不可用。即,当以上条件都不满足时,可以判断为可用。
另外,参考像素的使用可以受到编码/解码设置的限制。例如,可以根据是否执行受限的帧内预测(例如,constrained_intra_pred_flag)来限制参考像素的使用。当要对诸如通信环境等的外部因素执行错误鲁棒性编码/解码时,当试图禁止使用从其他图像被参考而被复原的块作为参考像素时,可以执行受限的帧内预测。
当去激活所述受限的帧内预测时(例如,在I图片类型或P或B图片类型中,constrained_intra_pred_flag=0),所有参考像素候选块是可用的,并且在被激活时(例如,P或B图像类型中constrained_intra_pred_flag=1),根据参考像素候选块的编码模式(帧内或帧间),可以确定是否使用相应块的参考像素。即,如果块的编码模式是Intra,则不管是否激活受限的帧内预测,都可以使用该块。在Inter的情况下,根据是否激活了受限的帧内预测,判断为可以使用(去激活)或不可用(激活)。
另外,可以根据与另一颜色空间中的当前块相对应的复原块的编码模式来应用受限的帧内预测。例如,当前块属于一些色差分量Cb、Cr,并且可以根据完成了与当前块对应的亮度分量Y的编码/解码的块的编码模式,来确定是否可用。以上示例可以是将其他颜色空间的复原块用作参考像素的情况的示例。另外,可以是根据颜色空间独立确定编码模式的情况的示例。
此时,当参考像素候选块通过一些预测方法(例如,当前图像中,通过块匹配或模板匹配等来预测)完成编码/解码时,可以根据编码/解码设置确定是否使用参考像素。
作为一个示例,当使用所述预测方法执行编码/解码时,当将编码模式设置为Intra时,可以将对应的块确定为可用。或者,即使是Intra,也可以允许使其不可用的特殊情况。
例如,当使用所述预测方法执行编码/解码时,当将编码模式设置为Inter时,可以将相应的块确定为不可用。或者,即使是Inter,也可以允许使其可用的特殊情况。
即,可以根据编码/解码设置来确定,是否对于根据编码模式确定使用与否的情况,做出例外情况。
受限帧内预测可以是应用于一些图像类型(例如,P或B slice/tile类型等)的设置。
通过参考像素可用性,可以将参考像素候选块分类为,所有参考像素候选块都可以使用的情况、可以使用一些参考像素的情况、所有参考像素都不可用的情况。除了所有参考像素候选块都可以使用的情况,在其他所有情况下,可以填充或生成候选块位置处不可用的参考像素。
当参考像素候选块可用时,可以将该块的预设位置处的像素(在此示例中假设该像素与当前块相邻)存储在当前块的参考像素存储器中。此时,相应块位置的像素数据可以通过直接复制或参考像素滤波等过程,存储在参考像素存储器中。
当参考像素候选块不可用时,可以将通过参考像素生成过程,将获得的像素存储在当前块的参考像素存储器中。
总之,当参考像素候选块处于可用状态时,可以配置参考像素,并且当参考像素候选块处于不可用状态时,可以生成参考像素。
下面示出了使用各种方法填充不可用块位置处的参考像素的示例。
例如,可以使用任意像素值来生成参考像素,并且可以是一个属于像素值范围的像素值(例如,从基于位深度的像素值调整过程或基于图像的像素值范围信息的像素值调整过程等的最小值、最大值、中值等导出的值)。详细地,这可以是当所有参考像素候选块都不可用时应用的示例。
或者,可以从完成图像的编码/解码生成参考像素。详细地,可以从与不可用块相邻的至少一个可用块生成参考像素。此时,可以使用外插、插值、复制等方法中的至少一种,并且参考像素生成(或复制、外插)方向可以是顺时针方向或逆时针方向,并且可以根据编码/解码设置确定。例如,块内的参考像素生成方向可以沿着一个预设方向或者沿着根据不可用块的位置自适应确定的方向。或者,在其他颜色空间中与当前块相对应的区域的情况下,可以使用与以上示例相同的方法。不同之处在于,如果在当前颜色空间中是填充当前块的相邻参考像素的过程,则在其他颜色空间的情况下,是填充与当前块m×n相对应的块M×N的过程,因此,可以通过使用包括所述方法在内的其他各种方法(例如,在周围像素的垂直、水平、对角线等方向上的外插、如Planar的插值、平均等,此时,填充方向是指从与当前块对应的块的周围像素指向块的内部的方向)来生成相应的区域。该示例可以是用于从其他颜色空间生成预测块的预测模式包括在候选组,而不将其从候选组中排除的情况。
另外,在通过参考像素的可用性的确认过程,完成参考像素的配置之后,可以通过参考像素的线性插值来生成小数单位的参考像素。或者,可以在执行参考像素滤波过程之后执行参考像素插值过程。或者,可以仅执行针对所配置的参考像素的滤波过程。总之,可以在预测块生成过程之前执行。
此时,在水平、垂直、一些对角线模式(例如,对角线右下、对角线左下、对角线右上)与非定向模式、颜色模式、颜色复制模式等情况下,不执行插值过程,在其他模式(其他对角线模式)的情况下,可以执行插值。
可以根据所支持的预测模式候选组(或预测模式的总数)、预测模式配置(例如,预测模式方向角度、预测模式间隔)等来确定插值精度。
为了小数单位的参考像素插值,可以使用一个预设滤波器(例如,2抽头线性插值滤波器),可以使用多个滤波器候选组中的一个(例如,4抽头三次滤波器、4抽头高斯滤波器、6抽头维纳滤波器、8抽头卡尔曼滤波器)。
当使用多个滤波器候选组中一个时,可以显式地生成或隐式地确定滤波器选择信息,并且可以根据编码/解码设置(例如,插值精度、块大小、形状、预测模式等)确定。
例如,可以根据块大小的范围来确定要使用的插值滤波器、根据插值精度来确定要使用的插值滤波器、以及根据预测模式的特性(例如,定向信息等。)确定插值滤滤器。
详细地,根据块大小范围,可以在一些范围A中使用预设的插值滤波器a,可以在一些范围B中使用预设的插值滤波器b,并且在一些范围C中可以使用多个插值滤波器C中的一个插值滤波器c,并且在一些范围D中,可以使用多个插值滤波器D中的一个插值滤波器d,并且在一些范围中可以使用预设的插值滤波器,并且在一些范围中可以使用多个插值滤波器中的一个。此时,当使用一个插值滤波器属于隐式的情况,使用多个插值滤波器中的一个插值滤波器属于显式的情况,并且对块大小范围执行分割的块的大小可以是M×N(在此示例中,M和N为4、8、16、32、64、128等;也就是说,M和N可以是每个块大小范围的最小值或最大值)。
可以以视频、序列、图片、slice、tile、块等为单位包括所述插值相关信息。插值过程可以在参考像素配置部执行的过程,或者可以是在预测块生成部执行的过程。
另外,在配置参考像素之后,可以对参考像素执行滤波,以减少通过编码/解码过程后剩余的劣化来提高预测精度,此时,使用的滤波器可以是低通滤波器。可以根据编码/解码设置来确定是否应用滤波,并且如果应用滤波,则可以应用固定滤波或自适应滤波,并且可以根据块的大小、形状、预测模式等来定义解码/解码设置。
固定滤波是指将一个预设滤波器应用于参考像素滤波部的情况,自适应滤波是将多个滤波器中的一个滤波器应用于参考像素滤波部的情况。此时,在自适应滤波的情况下,可以根据编码/解码设置隐式确定多个滤波器中的一个,或者可以显式生成选择信息,并且作为滤波器候选组可以包括3抽头(例如,[1,2,1]/4)或者5抽头(例如[2,3,6,3,2])等滤波器。
作为一个示例,可以在一些设置(块范围A)下,不应用滤波。
作为一个示例,可以在一些设置(块范围B、一些模式C)下不应用滤波,并且可以在一些设置(块范围B、一些模式D)下,通过预设滤波器(3抽头滤波器)应用滤波。
例如,可以在一些设置(块范围E、一些模式F)下不应用滤波,并且可以在一些设置(块范围E、一些模式G)下通过预设滤波器(3抽头滤波器)应用滤波,可以在一些设置(块范围E,一些模式H)下,通过预设滤波器(5抽头滤波器)应用滤波,可以在一些设置(块范围E、一些模式I)下,选择多个滤波器中的一个并执行滤波。
作为一个示例,可以在一些设置(块范围J、一些模式K)下,通过预定滤波器(5抽头滤波器)应用滤波,并且可以通过预设滤波器(3抽头滤波器)进一步应用滤波。即,可以执行多个滤波过程。详细地,可以基于先前滤波的结果来进一步应用滤波。
在以上示例中,对块大小范围执行分割的块的大小可以是MxN(在此示例中,M和N是4、8、16、32、64、128等,即,M和N可以是每个块大小范围的最小值或最大值)。另外,可以将预测模式大致分类为定向模式、非定向模式、彩色模式、彩色复印模式等,并且详细地,与水平或垂直模式/对角线模式(45度间隔)/与水平或垂直模式相邻的模式1、与水平或垂直模式相邻的模式2(模式间隔比上一个略微长)等。即,如上所述情况,可以根据分类模式来确定是否应用滤波、滤波的类型。
另外,在以上示例中,示出了根据诸如块范围、预测模式等的多个因素来应用自适应滤波的情况,然而,并非总是需要所述多个因素,并且还可以有根据至少一个因素来执行自适应滤波的示例。另外,可以具有多种变换示例而不限于上述示例,并且可以以视频、序列、图片、slice、tile、块为单位包括参考像素滤波器相关信息。
可以基于预定标志来选择性地执行上述滤波。在此,标志可以指示是否对参考像素执行滤波以执行帧内预测。标志可以由编码装置编码并用信号发出。或者,可以基于当前块的编码参数在解码装置中导出标志。所述编码参数可以包括参考像素的位置/区域、块大小、分量类型、是否应用子块为单位的帧内预测以及帧内预测模式中的至少一个。
例如,在当前块的参考像素是与当前块相邻的第一像素线时,可以对参考像素执行滤波,否则,可以不对参考像素执行滤波。或者,如果属于当前块的像素的数量大于预定阈值的数量,则可以对参考像素执行滤波,否则,可能不对参考像素执行滤波。阈值是对编码/解码装置预先约定的值,并且可以是16、32、64或更大的整数。或者,如果当前块大于预定阈值大小,则可以对参考像素执行滤波,否则,可以不对参考像素执行滤波。阈值大小可以表示为M×N,并且是在编码/解码装置预先约定的值,M和N可以是8、16、32或更大的整数。所述阈值数量或阈值大小可以被设置为单独通过所述阈值数量或阈值大小中的一个或将其混合来确定是否对参考像素执行滤波。或者,如果当前块是亮度分量,则可以对参考像素执行滤波,否则,可以不对参考像素执行滤波。或者,如果当前块没有执行子块单位的上述帧内预测(即,当前块未被分割为多个子块),则对参考像素执行滤波,否则,可以不对参考像素执行滤波。或者,在当前块的帧内预测模式是非定向模式或预定定向模式时,可以对参考像素执行滤波,否则,可以不对参考像素执行滤波。在此,非定向模式可以是平面模式或DC模式。然而,在非定向模式中的DC模式下,可以限制为不执行参考像素的滤波。所述定向模式可以表示参考整数像素的帧内预测模式。例如,所述定向模式可以包括与图9所示的模式-14、-12、-10、-6、2、18、34、50、66、72、78、80相对应的帧内预测模式中至少一个。然而,可以限制定向模式,使其不包括分别与模式18和50相对应的水平模式和垂直模式。
当根据所述标志对参考像素执行滤波时,可以基于在编码/解码装置中预定义的滤波器来执行滤波。所述滤波器的抽头数可以是1、2、3、4、5或更大。可以根据参考像素的位置来可变地确定滤波器抽头的数量。例如,可以将1-抽头滤波器应用于与像素线的最下端、最上端、最左侧、最右侧的至少一侧相对应的参考像素,并且可以将3-抽头滤波器应用于其余的参考像素。另外,可以根据参考像素的位置来可变地确定滤波器强度。例如,可以将滤波强度s1应用于与像素线的最下端、最上端、最左侧、最右的至少一侧相对应的参考像素,并且可以将滤波强度s2应用于其余的参考像素(s1<s2)。所述滤波器强度可以在编码装置中用信号发出,或者可以基于上述编码参数来确定。当将n抽头滤波器应用于参考像素时,可以将滤波器应用于当前参考像素和(n-1)个周围参考像素。所述周围参考像素可以表示位于当前参考像素的上端、下端、左侧或者右侧中至少一个方向上的像素。周围参考像素可以属于与当前参考像素相同的像素线,并且周围参考像素的一部分可以属于与当前参考像素不同的像素线。
例如,在当前参考像素位于当前块的左侧时,周围参考像素可以是在当前参考像素的上端或下端的至少一个方向上相邻的像素。或者,在当前参考像素位于当前块的上端时,周围参考像素可以是在当前参考像素的左侧和右侧中的至少一个方向上相邻的像素。或者,在当前参考像素位于当前块的左上端时,周围参考像素可以是在当前参考像素的下端或右侧中的至少一个方向上相邻的像素。所述滤波器的系数之间的比率可以是[1:2:1]、[1:3:1]或[1:4:1]。
预测块生成部可根据至少一个预测模式生成预测块,并基于帧内预测模式使用参考像素。此时,参考像素可以根据预测模式用于外插(Extrapolation)等方法(定向模式)中,并且可以用于诸如内插(Interpolation)或平均值(DC)或复制(Copy)等方法(非定向模式)中。同时,如上所述,当前块可以使用滤波后的参考像素或者可以使用未滤波后的参考像素。
图13是示出关于生成预测块的、与当前块相邻的块的图。
例如,在定向模式下,水平模式和一些对角线模式(对角线右上,包括除水平以外的对角线)之间的模式可以使用左下块+左块(图13中的Ref_BL、Ref_L),水平模式可以使用左块,水平和垂直之间的模式可以使用左块+左上块+上块(图13中的Ref_L、Ref_TL,Ref_T),垂直模式可以使用上块(图13中的Ref_L),垂直和一些对角线模式(对角线左下,包括除垂直以外的对角线)之间的模式可以使用上块+右上块(图13中的Ref_T、Ref_TR)的参考像素。或者,在非定向模式中,可以使用左块和上块(图13中Ref_L、Ref_T)或者左下块、左块、左上块、上块、右上块的参考像素(图13中的Ref_BL、Ref_L、Ref_TL、Ref_T、Ref_TR)。或者,在使用颜色空间相关性的模式(彩色复制模式)的情况下,可以使用其他颜色空间的复原块(图12中未显示,但在本发明中称为Ref_Col;表示在相同时间,不同空间的块的并列参考(Collocated reference))作为参考像素。
用于帧内预测的参考像素可以被区分为多个概念。例如,用于帧内预测的参考像素可以被区分为第一参考像素和第二参考像素,并且第一参考像素可以是直接用于生成当前块的预测值的像素,第二参考像素可以是间接用于生成当前块的预测值的像素。或者,第一参考像素可以是用于生成当前块的所有像素的预测值的像素,第二参考像素可以是用于生成当前块的一些像素的预测值的像素。或者,第一参考像素可以是用于生成当前块的主要预测值的像素,第二参考像素可以是用于生成当前块的辅助预测值的像素,或者第一参考像素(无条件)可以是位于当前块的预测方向的起点处的区域中的像素,第二参考像素可以是不在当前块(必须)预测方向的起点处的像素。
如上述示例,尽管可以通过各种定义来区分参考像素,但是也可以存在根据预测模式不区分为一些定义的情况。即,应当注意,用于区分参考像素而使用的定义可以根据预测模式而不同。
通过以上示例描述的参考像素可以是第一参考像素,并且第二参考像素可以进一步参与预测块的生成。在一些对角线模式(对角线右上。包括除水平以外的对角线)之间的模式可以使用左上块+上块+右上块(图13中的Ref_TL、Ref_T,Ref_TR)的参考像素,水平模式可以使用左上块+上块+右上块(在图13中的Ref_TL,Ref_T,Ref_TR),垂直模式是左上+左+左下块(图13中的Ref_TL、Ref_T、Ref_TR)的参考像素,垂直模式可以使用左上块+左块+左下块(图13中的Ref_TL、Ref_L、Ref_BL)的参考像素,垂直与一些对角线模块(对角线左下、包括除垂直以外的对角线)之间的模式可以使用左上块+左块+左下块(图13中的Ref_TL、Ref_L、Ref_BL)的参考像素。详细地,可以使用所述参考像素作为第二参考像素。并且,可以在非定向模式和彩色复制模式下使用第一参考像素或使用第一、第二参考像素来生成预测块。
另外,可以考虑第二参考像素不仅包括已经完成编码/解码的像素,而且还包括当前块中的像素(在此示例中为预测像素)。即,主要预测值可以是用于生成辅助预测值的像素。在本发明中,将主要描述考虑已经完成编码/解码的像素作为第二参考像素的示例,但是不限于此,还可有使用未完成编码/解码的像素(此示例中为预测像素)的变换示例。
可以出于补偿现有预测模式的缺点的目的,而执行使用多个参考像素生成或校正预测块。
例如,定向模式是出于通过使用一些参考像素(第一参考像素)来预测相应块的方向性的目的而使用的模式,但是可能无法准确反映块中的变化,这可能导致发生预测准确度降低的情况。此时,当通过使用附加参考像素(第二参考像素)来生成或校正预测块时,可以提高预测的准确度。
为此,将在下面的示例中描述使用如上述示例的各种参考像素生成预测块的情况的示例,但是本发明不限于以上示例的情况,并且即使不使用诸如第一、第二参考像素的术语,可以从上述定义中导出和理解。
可以显式确定或隐式设置针对使用附加参考像素生成预测块的设置。在显式情况下的单位可以包括视频、序列、图片、切片,tile等。在下面的示例中,将描述隐式处理的情况,但是本发明不限于此,并且可以有其他修改(显式的情况或混合使用的情况)的示例。
根据预测模式,可以以各种方式生成预测块。详细地,可以根据在预测模式下使用的参考像素的位置来确定预测方法。另外,可以根据块中的像素位置来确定预测方法。
下面,说明水平模式的情况。
例如,当将左块用作参考像素(图13中的Ref_L)时,通过使用(例如,外插等)最邻近的像素(图13中的1300)在水平方向上生成预测块。
另外,可以通过使用与对应于水平方向的当前块相邻的参考像素来生成(或校正;生成可以涉及最终的预测值;校正可以不涉及全部像素)预测块。详细地,可以使用对应块的最邻近像素(图13中的1310;也可以考虑另外的1320和1330)来校正预测值,并且将所述像素的变化程度或梯度信息等(例如,反映在如R0-T0、T0-TL、T2-TL、T2-T0、T2-T1等的像素值变化程度或者梯度信息)可以反馈给校正过程。
此时,执行校正的像素可以是当前块中的所有像素,也可以限于部分像素(例如,可以以没有特定形状或存在于不规则位置的单个像素为单位确定,如后述示例,以例如线的具有一定形状的像素为单位确定;为了便于描述,在后述的示例中,通过假设以线为单位的像素单位来进行描述)。如果是所述校正像素被限制性地应用于部分像素的情况,可以将单位确定为相应于预测模式方向的至少一个线。例如,与a至d相对应的像素可以被包括在校正目标中,进一步地,并且与e至h相对应的像素也可以被包括在校正目标中。另外,可以与所述线的位置无关地、相同地应用从块的相邻像素获得的校正信息,或者可以以线为单位不同地应用上述校正信息,并且越是与所述相邻像素的距离远,校正信息的应用可能会越少(例如,可以根据距离设置较大的分割值,如L1-TL,L0-TL等)。
此时,校正的对象中包括的像素可以在一个图像中仅具有一个设置,或者可以根据各种编码/解码元件来自适应地确定。
以对于自适应确定的情况为例,可以根据块的大小来确定要校正的像素。在小于8×8的块中,不校正任何线,可以对大于8×8且小于32×32的块只校正一条像素线,可以对大于32×32的块校正两条像素线。块大小范围的定义可以从本发明的先前描述中得出。
或者,可以根据块的形状(例如,正方形、矩形;具体地,水平方向较长的矩形或垂直方向较长的矩形)来确定要校正的像素。例如,在8×4块的情况下,可以对两条像素线(图13中,a至h)执行校正,并且在4×8块的情况下,可以对一条像素线(图13中,a至d)执行校正。因为如果是在8×4的情况下水平拉伸的块的形状确定为水平模式的情况,则当前块的方向性可能更多地取决于上部块,而如果是在4×8的情况下垂直拉伸的块的形状确定为水平模式的情况,则当前块的方向性可能并不是那么依赖于上部块。并且,上述的相反设置也是可能的。
或者,可以根据预测模式确定要校正的像素。在水平或垂直模式下,a个像素线可以是校正目标,而在其他模式下,b个像素线可以是校正目标。如上所述,在某些模式(例如,非定向模式DC、彩色复制模式等)的情况下,要校正的像素不是矩形形状,而是以像素为单位(例如,a至d、e、i、m)指定了范围。在后述的示例中进行详细描述。
除了以上描述之外,根据附加的编码/解码元件,可以应用自适应设置,在以上描述中,重点描述对水平模式的限制情况,然而,不仅适用于以上示例中,还可以将相同或类似的设置适用于其他模式。并且,根据多个元件的组合,而不是一个编码/解码元件,实现如上述示例的情况。
在垂直模式的情况下,由于可以通过将不同的方向应用于水平模式的预测方法来得出,因此省略了对其的详细描述。另外,在下面的示例中,省略了与水平模式的描述重复的内容。
下面,说明对角线模式(Diagonalupright)的情况。
例如,当将左块和左下块用作参考像素(第一参考像素或主参考像素。图13中的Ref_L和Ref_BL)时,通过使用对应块的(例如,外插等)最邻近的像素(图13中的1300和1340)在对角线方向上生成预测块。
另外,可以通过使用与存在于对角线相对的位置处的当前块相邻的参考像素(第二参考像素或辅助参考像素;图13中的Ref_T、Ref_TR)来生(或校正)成预测块。详细地,可以通过使用对应块的最邻近像素(图13中的1310和1330,并且可以另外考虑1320)校正预测值,并且可以通过所述辅助参考像素和主参考像素的加权平均(例如,可以基于预测像素和主参考像素、预测像素和辅助参考像素的x轴或y轴的距离差中至少一个,获得加权值;应用于主参考像素和辅助参考像素的加权值的示例可以包括15:1至8:8;如果有两个以上的辅助参考像素,则加权值示例为如14:1:1、12:2:2、10:3:3、8:4:4等在辅助参考像素中具有相同的加权值,或如12:3:1、10:4:2、8:6:2等辅助参考像素之间可以具有不同加权值。此时,以相应预测像素为中心,在目前预测模式方向上根据倾斜信息等的接近程度来确定不同的加权值,即,确认相应预测像素与每个辅助参考像素的梯度,与哪个当前预测模式梯度更接近)反馈给校正过程。
此时,所述滤波具有一个图像中的一个设置或者根据各种编码/解码元件自适应地确定所述滤波。
以自适应确定的情况为例,可以根据要校正的像素的位置来确定应用滤波的像素(例如,像素的数量等)。如果预测模式是对角线模式(在此示例中为模式2)并且要校正的像素为c,则使用L3(在此示例中为第一参考像素)执行预测,并且使用T3(在此示例中为第二参考像素)执行校正。即,可以是将一个第一参考像素和一个第二参考像素用于一个像素预测的情况。
或者,当预测模式是对角线模式(在此示例中为模式3)并且要校正的像素是b时,使用通过对L1和L2之间的小数单位像素执行插值而获得的L1*(或L2*,在此示例中为第一参考像素)执行预测,并且可以使用T2(在此实例中为第二参考像素)执行校正,或者可以使用T3执行校正。或者,可以使用T2和T3来执行校正,或者可以使用对基于预测模式的方向性而获得的T2和T3之间的小数单位的像素执行插值而获得的T2*(或T3*)来校正。即,为了预测一个像素,可以是使用一个第一参考像素(在此示例中,假设为L1*时,当将直接使用的像素视为L1和L2时,可以视为两个像素;或者根据为了对L1*执行插值而使用的滤波器,可以将其视为两个或更多像素)和两个第二参考像素(在此示例中,假设为T2与T3的情况,L1*可以视为一个像素)。
总之,可以将至少一个第一参考像素和至少一个第二参考像素用于一个像素预测,这可以根据预测模式和预测像素的位置来确定。
如果是所述校正像素限制性地应用于一些像素的情况,则可以根据帧内预测模式方向,以至少一条水平线或垂直线为单位来确定校正后的像素。例如,与a、e、i、m相对应的像素或与a至d相对应的像素可以包括在校正目标中,进一步地,与b、f、j、n相对应的像素或与e至h相对应的像素也可以包括在校正目标中。在一些对角线右上(Diagonal up right)的情况下,可以校正水平线单位的像素,而在一些对角线左下(Diagonal down left)的情况下,可以校正垂直线单位的像素,但不限于此。
除了以上描述之外,根据附加的编码/解码元件,可以应用自适应设置,在以上描述中,重点描述对角线右上(Diagonal up right)的限制性情况,然而,不仅是在以上实例中限制性地应用,相同或类似的设置可以应用于其他模式。并且,可以根据多个元件而不是一个编码/解码元件的组合,实现上述示例。
在对角线向左下(Diagonal down left)的情况下,由于针对对角线右上的预测方法,仅应用不同的方向就可以得出,因此省略详细描述。
下面,说明对角线左上(Diagonal up left)的情况。
例如,当将左块、左上块和上块用作参考像素(第一参考像素或主参考像素。图13中的Ref_L、Ref_TL、Ref_T)时,通过使用对应块的(例如,外插等)最邻近的像素(图13中的1300、1310、1320)在对角线方向上生成预测块。
另外,可以使用与存在于与对角线相匹配的位置处的当前块相邻的参考像素(第二参考像素或辅助参考像素,图13中的Ref_L、Ref_TL、Ref_T,位置与主参考像素相同)生成(或者校正)预测块。详细地,可以使用除了相应块的最邻近像素以外的像素(图13中位于1300的左侧的像素、位于1320的左侧、上侧、左上侧的像素、位于1310的上侧的像素等)校正预测值,并且可以通过所述辅助参考像素和主参考像素的加权平均(例如,应用于主参考像素和辅助参考像素的加权值的比率的示例可以具有7:1到4:4等。如果辅助参考像素为2个以上时,加权值值的示例可以具有如14:1:1、12:2:2、10:3:3、8:4:4等在辅助参考像素中具有相同的加权值,或如12:3:1、10:4:2、8:6:2等辅助参考像素之间可以具有不同加权值;此时,不同地应用的加权值可以根据是否与主参考像素邻近来确定)或者线性外插等来反馈给所述校正过程。
如果是所述校正的像素限制性地应用于一些像素的情况,则能够以与在预测模式下使用的参考像素相邻的水平线或垂直线为单位来确定校正的像素。此时,可以同时考虑水平线和垂直线,并且可以允许重叠。例如,与a至d相对应的像素和与a、e、i、m相对应的像素(a重叠)可以被包括在校正目标中。进一步地,可以将与e至h相对应的像素和与b,f,j、n相对应的像素(a、b、e、f重叠)包括在校正目标中。
下面,说明非定向模式(DC)的情况。
例如,当将左块、上块、左上块、右上块、左下块中的至少一个用作参考像素时,可以使用(例如,平均等)该块的最邻近像素(在此示例中假设图13中的1300、1310的像素)生成预测块。
或者,可以使用所述参考像素的相邻像素(参考像素的第二参考像素或辅助参考像素;图13中的Ref_L和Ref_T在此示例中的位置与主参考像素相同或主参考像素外,还包括位于下一个邻近的位置处的像素;类似于对角线右上(Diagonal up left)的情况)生成(或校正)预测块。详细地,可以通过使用与对应块的主参考像素相同或相似的位置像素来校正预测值,并且通过所述辅助参考像素和主参考像素的加权平均(例如,应用于主参考像素和辅助参考像素的加权值的比率的示例可以具有15:1至8:8等;如果辅助参考像素为2个以上时,加权值的示例可以具有如14:1:1、12:2:2、10:3:3、8:4:4等在辅助参考像素中具有相同的加权值,或如12:3:1、10:4:2、8:6:2等辅助参考像素之间可以具有不同加权值)反馈给所述校正过程。
此时,所述滤波对于一个图像具有一个设置或者根据各种编码/解码元件自适应地确定所述滤波。
以对于自适应确定的情况为例,可以根据块的大小来确定滤波器。对于位于当前块左上端、上端、左端的像素(在此示例中,假设位于左上端的像素是对该像素的左侧和上方的像素进行滤波、位于上端的像素是对该像素的上侧的像素进行滤波、位于左端的像素是对该像素的左侧的像素进行滤波),在小于16×16的块中,可以采用一些滤波设置(在此示例中,按照8:4:4、12:4加权比率应用滤波),在大于16×16的块中可以采用一些滤波设置(在此示例中,按照10:3:3、14:2加权比率应用滤波)。
或者,可以根据块的形状来确定滤波器。例如,对于16x8的块,位于当前块上端的像素可以采用一些滤波设置(在此示例中,假设对该像素的左上侧、上侧、右上侧的像素进行滤波,即可以视为连应用滤波的像素也发生改变的示例;进行滤波的加权比为10::2:2:2),并且位于当前块的左端的像素可以采用一些滤波设置(在此示例中,假设对该像素的左侧像素进行滤波,进行滤波的加权比为12:4)。这是假设可以适用于沿水平方向较长的块形状中的块上侧的多个像素的示例。并且,还可以实现与此相反的设置。
如果所述校正的像素限于一些像素,则能够以与在预测模式下使用的参考像素相邻的水平线或垂直线为单位来确定校正后的像素。此时,可以同时考虑水平线和垂直线,并且可以允许重叠。例如,与a至d相对应的像素和与a、e、i、m相对应的像素(a重叠)可以被包括在校正目标中。进一步地,可以将与e至h相对应的像素和与b,f,j、n相对应的像素(a、b、e、f重叠)包括在校正目标中。
除了以上描述之外,根据附加的编码/解码元件,实现自适应设置,在以上描述中,重点描述对非定向模式的限制情况,然而,不仅是在以上实例中限制性地应用,相同或类似的设置可以应用于其他模式。并且,根据多个元件的组合而不是一个编码/解码元件,实现如上所述的示例。
下面描述彩色复印模式的情况。
对于彩色复制模式,通过与现有预测模式的预测方法不同的方法来生成预测块,但是可以相同或相似地使用参考像素来生成(或校正)预测块。由于可以通过上述示例和后述的示例来导出获得预测块的内容,因此省略了获得预测块的内容。
例如,可以通过使用(例如,复制)在不同的颜色空间与当前块相对应的块作为参考像素(第一参考像素或主参考像素)来生成预测块。
或者,可以通过使用与当前块相邻的块的参考像素(第二参考像素或辅助参考像素;图13中的Ref_L、Ref_T、Ref_TL、Ref_TR、Ref_BL)来生成(或校正)预测块。详细地,可以使用对应块的最邻近像素(假设是本示例的图13中的1300、1310)校正预测值,并且通过所述辅助参考像素和主参考像素的加权平均(例如,应用于主参考像素和辅助参考像素的加权值的比率的示例可以具有15:1至8:8等;如果辅助参考像素为2个以上时,加权值的示例可以具有如14:1:1、12:2:2、10:3:3、8:4:4等在辅助参考像素中具有相同的加权值,或如12:3:1、10:4:2、8:6:2等辅助参考像素之间可以具有不同加权值)反馈给所述校正过程。
或者,可以使用与在其他颜色空间中获取的块相邻的块的像素(第二参考像素或辅助参考像素;当假设图13的图片为在其他颜色空间中的对应于当前块的块时,像素为Ref_L、Ref_T、Ref_TL、Ref_TB,Ref_BL以及在图13中未示出的Ref_R,Ref_BR、Ref_B)生成(或校正)预测块。可以对要校正的像素和与其周围像素(例如,不同颜色空间中的第一参考像素或第一参考像素与第二参考像素;即,在块内,当应用加权平均等时,需要要校正的第一参考像素和应用了滤波的第一参考像素,在块边界,需要要校正的第一参考像素和应用了滤波的第一参考像素)执行滤波,反馈给所述校正过程。
在所述两种情况混合发生的情况下,不仅可以使用当前块的相邻块的像素,还可以使用在其他颜色空间中获得的预测块中的像素来进行校正,并且对要校正的像素与其周围像素(例如,校正目标像素的相邻块的像素与校正目标像素的相邻当前块内像素)执行滤波(例如,在校正目标位置,使用MxN掩模,以应用滤波的示例;此时,所述掩模对所述像素与上、下、左、右、左上、右上、左下、右下等的全部或一部像素执行滤波)的滤波并反馈给校正过程。
该示例是说明获得其他颜色空间中的当前块的预测值后应用滤波的情况,但也可以是在获得预测值之前在相应颜色空间中已经执行滤波后的值作为当前块的预测值。此时,应该注意的是,这种情况与上述示例在顺序上仅存在差异,并且滤波的对象是相同。
此时,所述滤波在一个图像中只具有一个设置或者根据各种编码/解码元件自适应地确定所述滤波。
例如,针对自适应确定的情况,可以根据预测模式来确定用于滤波的设置。详细地,其可以根据彩色复印模式中的细部彩色复印模式设置自适应滤波。例如,在某些彩色复印模式(在此示例中,当在与当前块的相邻区域和与不同颜色空间相对应的块的相邻区域中获得一个相关信息集<a和b>时)下,可以采用一些滤波设置<1>,并且在一些彩色复印模式(在此示例中,与上述模式相比,获得多个相关性信息集时。即,a1和b1、a2和b2)下,可以采用一些滤波设置<2>。
在所述滤波设置中,可以确定是否应用滤波。例如,根据滤波设置,可以应用滤波<1>或不应用滤波<2>。或者,可以使用A滤波器<1>或可以使用B滤波器<2>。或者,可以将滤波应用于当前块的左侧和上侧的所有像素,或者可以将滤波应用于左侧和上侧的一些像素。
如果要校正的像素限于一些像素,则能够以水平线或垂直线为单位确定要校正的像素,所述水平线或垂直线与用于预测模式的参考像素相邻(在此示例中为辅助参考像素。与前述示例不同部)。此时,可以同时考虑水平线和垂直线,并且可以允许重叠。
例如,与a至d相对应的像素以及与a、e、i、m相对应的像素(a重叠)可以包括在校正目标中。进一步地,可以将与e至h相对应的像素和与b、f、j、n相对应的像素(a、b、e、f重叠)包括在校正目标中。
总之,可以从其他颜色空间获得用于生成预测块的主参考像素,并且可以从与当前颜色空间的当前块相邻的块获得用于校正预测块的辅助参考像素。并且,可以从与其他颜色空间的相应块相邻的块获得。并且,可以从当前块的预测块的一些像素获得。即,预测块中的一些像素可以用于校正预测块中的一些像素。
除了以上描述之外,根据附加的编码/解码元件,可以应用自适应设置,在以上描述中,重点描述对非定向模式的限制性情况,然而,不仅是在以上实例中限制性地应用,相同或类似的设置可以应用于其他模式。并且,根据多个元件的组合,而不是一个编码/解码元件,实现上述示例。
该示例是使用颜色空间之间的相关性来获得当前块的预测块的示例,但是用于获得其相关性的块是从当前块的相邻区域和不同的颜色空间的对应块的相邻区域中获得的,因此,可以对块边界应用滤波。
根据编码/解码设置可以有使用多个参考像素生成预测块的多种情况。详细地,可以根据编码/解码设置来确定是否支持使用第二参考像素生成或校正预测块。
作为一个示例,可以隐式或显式确定在预测过程中是否使用附加像素。如果是显式的情况,可以以视频、序列、图片、切片、tile、块为单位包括上述信息。
作为一个示例,在预测过程中是否使用附加像素可以应用于所有预测模式,或者可以应用于某些预测模式。此时,一些预测模式可以是水平、垂直、一些对角线模式、非定向模式、彩色复制模式等中的至少一种。
作为一例,在预测过程中是否使用附加像素可以被应用于所有块或可以被应用于一些块。此时,可以根据块的大小、形状等来定义一些块,相应的块为MxN(例如,M和N的长度为8、16、32、64等;如果是正方形,则长度为8×8、16×16、32×32、64×64等;如果是矩形,则可以具有2:1矩形,4:1矩形等的形状)。
另外,可以根据一些编码/解码设置来确定在预测过程中是否使用附加像素。此时,编码/解码设置可以是constrained_intra_pred_flag,并且根据该标志可以在预测过程中有限地使用附加参考像素。
例如,当包括第二参考像素的区域的使用由所述标志受到限制时(即,假设为根据上述标志通过参考像素填充等的过程所填充的区域),可以限制将第二参考像素使用于预测过程。或者,第二参考像素可以与所述标志无关地用于预测过程中。
除了通过以上示例描述的情况之外,还可以有诸如一个或多个元件的组合的各种应用和修改。另外,尽管上述示例只描述了与彩色复印模式有关的一些情况,但是除了彩色复印之外,该示例还可以相同或变换地用于,使用多个参考像素生成或校正预测块的预测模式。
通过以上示例,已经描述了在每个预测模式下具有,通过使用多个参考像素生成或校正预测块的一个设置的情况,但是,可以对每个预测模式采用多个设置。即,滤波设置的候选组可以配置为多个,以生成选择信息。
总之,可以显式地或隐式地处理关于是否执行滤波的信息,并且当执行滤波时,可以显式地或隐式地处理关于滤波选择信息的信息。当显式地处理信息时,可以以视频、序列、图片、切片,tile和块为单位包括所述信息。
可以校正所述生成的预测块,在下文中,将描述校正预测块的过程。
可以基于预定参考像素和加权执行所述校正过程。此时,可以根据要校正的当前块中的像素(以下称为当前像素)的位置来确定参考像素和加权值。可以根据当前块的帧内预测模式来确定所述参考像素和加权值。
在当前块的帧内预测模式是非定向模式时,当前像素的参考像素refL、refT可以属于与当前块相邻的第一像素线,并且可以位于与当前像素相同的水平线/垂直线。加权值可以包括在x轴方向上的第一加权值wL、在y轴方向上的第二加权值wT或在对角线方向上的第三加权值wTL中的至少一个。第一加权值可以指应用于左侧参考像素的加权值,第二加权值可以指应用于上端参考像素的加权值,第三加权值可以指应用于左上端参考像素的加权值。这里,可以基于当前像素的位置信息和预定缩放因子(nScale)来确定第一加权值和第二加权值。缩放因子可以基于当前块的宽度W和高度H来确定。例如,当前像素predPixel[x][y]的第一加权值wL[x]确定为(32>>((x<<1)>>nScale)),并且第二加权值(wT[x])可确定为(32>>((y<<1)>>nScale))。第三加权值wTL[x][y]可以确定为((wL[x]>>4)+(wT[y]>>4))。然而,当帧内预测模式是平面模式时,第三加权值可以被确定为0。缩放因子可以设置为((Log2(nTbW)+Log2(nTbH)-2)>>2)。
在当前块的帧内预测模式是垂直/水平模式时,当前像素的参考像素refL和refT属于与当前块相邻的第一像素线,并且可以位于与当前像素相同的水平/垂直线上。在垂直模式下,当前像素predPixel[x][y]的第一加权值wL[x]被确定为(32>>((x<<1)>>nScale)),第二加权值(wT[y]])可被确定为0,并且第三加权值wTL[x][y]可被确定为等于第一加权值。另一方面,在水平模式下,当前像素predPixel[x][y]的第一加权值wL[x]被确定为0,第二加权值wT[y]被确定为(32>>((y<<1)>>nScale)),并且第三加权值wTL[x][y]可以被确定为等于第二加权值。
在当前块的帧内预测模式是对角模式时,当前像素的参考像素refL和refT属于与当前块相邻的第一像素线,并且可以位于与当前像素相同的对角线上。在此,对角线具有与当前块的帧内预测模式相同的角度。所述对角线可以表示从左下端到右上端方向的对角线,或者可以表示从左上端到右下端方向的对角线。此时,当前像素predPixel[x][y]的第一加权值wL[x]被确定为(32>>((x<<1)>>nScale)),第二加权值wT[y])被确定为(32>>((y<<1)>>nScale)),而第三加权值wTL[x][y]可以被确定为0。
在当前块的帧内预测模式小于或等于模式10时,当前像素的参考像素refL和refT属于与当前块相邻的第一像素线,并且可以位于与当前像素相同的对角线上。在此,对角线具有与当前块的帧内预测模式相同的角度。此时,可以限制参考像素,使得仅使用当前块的左侧参考像素或上端参考像素中的一个。当前像素predPixel[x][y]的第一加权值wL[x]被确定为0,第二加权值wT[y]被确定为(32>>((y<<1)>>nScale)),第三加权值wTL[x][y]可被确定为0。
在当前块的帧内预测模式大于或等于模式58时,当前像素的参考像素refL和refT属于与当前块相邻的第一像素线,并且可以位于与当前像素相同的对角线上。在此,对角线具有与当前块的帧内预测模式相同的角度。此时,可以限制参考像素,使得仅使用当前块的左侧参考像素或上端参考像素中的一个。当前像素predPixel[x][y]的第一加权值wL[x]被确定为(32>>((x<<1)>>nScale))、第二加权值wT[y]被确定为0、第三加权值wTL[x][y]可以被确定为0。
基于已确定的参考像素refL[x][y]、refT[x][y]和加权值wL[x]、wT[y]、wTL[x][y],可以对当前像素predPixels[x][y])执行如下面的公式1的校正。
[公式1]
predPixels[x][y]=clip1Cmp((refL[x][y]*wL[x]+refT[x][y]*wT[y]-p[-1][-1]*wTL[x][y]+(64-wL[x]-wT[y]+wTL[x][y])*predPixels[x][y]+32)>>6)
然而,仅在当前块不执行子块为单位的帧内预测时,才可以执行上述校正处理。仅在当前块的参考像素是第一像素线时才可以执行所述校正处理。仅在当前块的帧内预测模式对应于特定模式时,才可以执行所述校正处理。这里,特定模式可以包括非定向模式、垂直模式、水平模式、小于预定第一阈值模式的模式、大于预定第二阈值模式中的至少一个。所述第一阈值模式可以是8、9、10、11或12,所述第二阈值模式可以是56、57、58、59或60。
预测模式确定部执行用于在多个预测模式候选组中选择最佳模式的过程。通常,可以使用考虑块失真(例如,当前块和复原块的失真;绝对差值和(Sum of AbsoluteDifference,SAD)、平方差之和(Sum of Square Difference,SSD)等)和相应模式的生成比特量的速率失真(Rate-Distortion)技术,来确定编码成本最佳的模式。可以将基于通过以上过程确定的预测模式而生成的预测块发送到减法部和加法部。
预测模式编码部可以对通过预测模式确定部选择的预测模式执行编码。在预测模式候选组中,可以对与预测模式相对应的索引信息执行编码,或者可以对预测模式执行预测,以对与其相关的信息执行编码。即,在前一种情况下,表示不执行预测而直接对预测模式执行编码的方法,在后一种情况下,表示对预测模式执行预测,从而对模式预测信息和基于预测信息获得的信息执行编码的方法。另外,前者是可以应用于色差分量的示例,后者是可以应用于亮度分量的示例,不限于此,还也可以有其他情况。
在对预测模式执行预测而进行编码的情况下,预测模式的预测值(或预测信息)可以被称为最可能模式(Most Probable Mode,MPM)。此时,将预设预测模式(例如,DC模式、平面(Planar)模式、垂模式直、水平模式、对角线模式等)或空间相邻的块(例如,左块、上块、左上块、右上块、左下块等)的预测模式等配置为MPM。在本示例中,对角线模式可以表示右上对角线(Diagonal up right),右下对角线(Diagonal down right),左下对角线(Diagonal down left),并且可以对应于图9的模式9、模式2和模式66。
另外,可以将从已包括在MPM候选组中的模式导出的模式配置为MPM候选组。例如,已包括在MPM候选组中的定向模式的情况下,将模式间隔差距为a的模式(例如,a是非零整数,例如,1、-1、2、-2等;在图9中已包括模式10的情况下,导出的模式为模式9、模式11、模式8、模式12等)重新(或额外地)包括在MPM候选组中。
上面的示例可以对应于以多个模式配置MPM候选组的情况,并且可以根据编码/解码设置(例如,预测模式候选组、图像类型、块大小、块形状等)确定MPM候选组(或MPM候选组的数量),并且可以包括至少一种模式。
用于配置MPM候选组的预测模式可能具有优先级。可以根据所述优先级确定包括在MPM候选组中的预测模式的顺序,并且当根据所述优先级填充完MPM候选组的数量时,可以完成MPM候选组的配置。此时,优先级可以依次为空间相邻块的预测模式、预设预测模式、从首先包括在MPM候选组中的预测模式导出的模式,但是也可以有其他修改。
当使用MPM执行当前块的预测模式编码时,可以生成关于预测模式是否与MPM匹配的信息(例如,most_probable_mode_flag)。
如果与MPM匹配(例如,most_probable_mode_flag=1),则可以根据MPM的配置额外生成MPM索引信息(例如,mpm_idx)。例如,如果MPM配置为一种预测模式,则不会生成额外的MPM索引信息,如果MPM配置为多种预测模式,则可以在MPM候选组生成与当前块的预测模式相对应的索引信息。
如果与MPM不匹配(例如,most_probable_mode_flag=0),则可以在预测模式候选组中除MPM候选组外的剩余预测模式候选组(或非MPM候选组),生成与当前模式的预测模式所对应的非MPM索引信息(例如,non_mpm_idx),这可以是将非MPM配置为一个组的情况的示例。
当非MPM候选组由多个组组成时,可以生成关于当前块的预测模式属于哪个组的信息。例如,非MPM由A和B组(假设A由m个预测模式配置、B由n个预测模式配置、非MPM由m+n个预测模式配置,并且n大于m;假设A的模式为定向模式且具有均等间隔,B的模式为定向模式且不具有均等间隔)配置,并且如果当前块的预测模式与A组的预测模式匹配(例如,non_mpm_A_flag=1),则在A组候选组中,可以生成与当前块的预测模式向对应的索引信息,如果不匹配(例如,non_mpm_A_flag=0),则在其余预测模式候选组(或B组候选组)中,可以生成与当前块的预测模式相对应的索引信息。如以上示例,非MPM可以被配置为至少一个预测模式候选者组(或群),并且非MPM配置可以根据预测模式候选者组来确定。例如,当预测模式候选组为35个以下时,非MPM可以是一个,在其他情况下非MPM可以是两个以上。
如以上示例,支持非MPM的目的在于,在非MPM由多个组组成时,预测模式的数量大且预测模式不由MPM预测时减少模式比特量。
当使用MPM执行当前块的预测模式编码(或预测模式解码)时,可以单独地生成应用于每个预测模式候选组(例如,MPM候选组、非MPM候选组等)的二值化表,还可以单独地应用适用于每个候选组的二值化方法。
可以将由预测模式编码部生成的与预测相关的信息传输到编码部,并收录在比特流中。
图14是根据本发明的一个实施例的基于树的分割块的示例。
在图14中,i表示四叉树分割,ii表示二叉树分割中的水平分割,iii表示二叉树分割中的垂直分割。在图中,A至C表示初始块(分割前的块,例如,假设是编码树单元),并且在上述文字之后的数字表示执行分割时的每个分区的编号。在四叉树的情况下,左上块、右上块、左下块、右下块分别分配有数字0到3,在二叉树的情况下,左/上块、右/下块分别配有数字0和1。
参考图14,可以通过分割过程获得的文字和编号来确认为获取对应块而执行的分割状态或信息。
例如,在图14的i中,块A00是,对初始块A执行四叉树分割后,对所获得的四个块中的左上块(将0添加到A)A0执行四叉树分割而获得的4个块中的左上块(将0添加到A0)。
或者,在图14的ii中,块B10是,对初始块B执行二叉树分割中的水平分割后,对所获得的两个块中的下块(将1添加到B)B1执行二叉树分割中的水平分割而获得的两个块中上块(将0添加到B1)。
通过如上所述分割,可以知道每个块的分割状态、信息(例如,支持的分割设置<树方式的种类等>)、块的支持范围,例如最小大小和最大大小<详细为根据分割方法支持范围>、分割允许深度<详细为根据分割方法的支持范围>、分割标志<详细为根据分割方法的分割标志>、图像类型<I/P/B>、编码模式<Intra/Inter>等块的分割状态、确认信息所需的编码/解码设置、以及信息等),并且可以确认在用于获得当前块(子块)的分割步骤之前当前块属于哪个块(父块)。例如,在图14的i中,块A31的情况下,相邻块可以包括A30、A12、A13,并且可以确认A30在前一步骤的分割步骤中与A31属于同一块A3。A12和A13的情况,在前一步骤,即A3的分割步骤中,A12和A13属于另一个块A1,并且在前一步骤的上一步骤中才能够确认A12和A13属于同一个块A。
由于以上示例是针对一个分割操作(四叉树的四分割或二叉树的水平/垂直分割)的情况,因此在后述的实例中继续说明执行基于多个树的分割情况。
15是根据本发明的一个实施例的基于多个树的分割块的示例。
参考图15,可以通过分割过程获得的文字和编号来确认为获取对应块而执行的分割状态或信息。在此示例中,每个文字并不意味着一个初始块,而是以编号表示有关分割的信息。
例如,在块A1A1B0的情况下,当在初始块中执行四叉树分割时获得右上块A1,并且当在块A1中执行四叉树分割时获得右上块(A1添加于A1),而当在块A1A1中执行二叉树分割中水平分割时表示上块(B0添加于A1A1)。
可选地,在块A3B1C1的情况下,当在初始块中执行四叉树分割时,获得右下块A3,并且当在块A3中执行二叉树分割中水平分割时,获得下块(B1添加于A3),而在A3B1中执行二叉树分割过程中的垂直分割时,表示右块(C1添加于A3B1)。
在此示例中,通过所述分割信息,按照每个块的分割步骤,可以确认当前块与相邻块之间的关系信息,如当前块与相邻块在哪个分割步骤中相同。
图14和图15是用于确认每个块的分割信息的一些示例,可以利用用于确认分割信息的各种信息和信息的组合(例如,分割标志、深度信息、深度信息最大值、块的范围等)来确认每个块的分割信息,由此可以确认块之间的关系。
图16是示出了分割块的各种情况的示意图。
通常,由于图像中存在各种纹理信息,因此难以使用一种编码/解码方法执行编码/解码。例如,一些区域可以具有在特定方向上存在较强的边缘分量的区域,并且一些区域可以具有不存在边缘分量的复杂区域。为了有效地对此执行编码,块分割起着重要的作用。
执行块分割的目的在于根据图像的特征有效地分割区域。然而,当仅使用一种分割方式(例如,四叉树分割)时,可能难以适当地反映图像的特性来执行分割。
参考图16,可以确认,根据四叉树分割和二叉树分割来分割包括各种纹理的图像。a至e可能是仅支持四叉树分割的情况,而f至j可能是仅支持二叉树分割的情况。
在本示例中,将根据四叉树分割的分区称为UL、UR、DL、DR,并基于此连带描述二叉树分割。
图16的a可能是四叉树分割发挥最佳性能的纹理形式,可以通过四叉树的一次分割(Div_HV)而分割为4个,并以每个块为单位执行编码/解码。同时,当如图16的f所示,当应用二叉树分割时,与四叉树相比,可能需要三次分割(两次Div_V、一次Div_H)。
图16的b是,纹理被分割为块的上部和下部区域,在图16的b中,当应用四叉树分割时,需要一次分割(Div_HV),并且在图16的g中,也可以用二叉树分割执行一次分割Div_H。假设四叉树分割标志需要1位,而二叉树分割标志需要2位以上,则就标志位而言,可以认为四叉树是高效的,但是以每个块单位生成编码/解码信息(例如,用于表达纹理信息的信息(用于表达纹理的信息(残留信号、编码系数、表示编码系数的存在与否的信息等))、预测信息<例如,帧内预测相关信息、帧间预测相关信息>、变换信息<例如,变换种类信息、变换分割信息等>),在这种情况下,由于纹理信息是分割相似的区域而重发生成相应信息的示例,因此与二叉树分割相比,四叉树分割的效率并不高。
在图16的其他情况下也可以根据纹理的种类确定哪种树更有效。通过以上示例,可以确认支持可变块的大小和各种分割方式极为重要,以便可以通过上述示例划分根据图像特性的有效区域。
以下对四叉树分割和二叉树分割执行详细分析。
参照图16中的b,说明与右下块(当前块)相邻的块(在此示例中为左块和上块)。可以看出,左块是具有与当前块相似的特性的块,而上块是具有与当前块不同特性的块。尽管具有与一些块(在此示例中为左块)相似的特性,但从四叉树分割的特性来看,可能是已被分割的情况。
此时,当前块由于具有与左块相似的特性,可能产生相似的编码/解码信息。当发生用于有效减少这种情况的帧内预测模式(例如,最可能的模式,即,以减少当前块的预测模式的比特量为目的而从相邻块预测当前块的模式的信息)、运动信息预测模式(例如,省略(skip)模式、合并模式、用于减少模式位的信息(例如竞争模式))时,左块的信息对于参考是有效的。即,当从左块或上块中的一个块中参考当前块的编码信息(例如,帧内预测信息、帧间预测信息、滤波器信息、系数信息等)时,可以参考较准确的信息(在此示例中为左块)。
参考图16中的e,假设最右下角的一个小块(将当前块分割2次的块)。类似地,当前块也在左块或上块中的上块具有相似的特性,从而可以通过参考来自对应块(在此示例中为上块)的编码信息来提高编码性能。
相反地,参考图16中的j,参考与最右侧块(将当前块分割2次的块)相邻的左块。在此示例中,由于不存在上块,所以仅参考左块时,可以确认当前块是具有与左块不同的特性的块。可以确认,四叉树分割可能与相邻块中一部分相似,而二叉树分割具有与相邻块不同的特性的概率高。
详细地,当某些块(x)和其相邻块(y)在分别被分割之前是相同块时,对于四叉树分割,某些块(x),与分割之前块相同的相邻块(y)可以具有相似的特性,也可以具有不同的特性,相反,对于二叉树,在大多数情况下,在某些块(x)与分割之前的块相同的相邻块(y)具有不同的特征。换句话说,如果是相似特性的情况,则没必要执行块的分割,而是会在分割之前块被最终确定,但是大多数的情况是由于不同的特性而被分割。
除了以上示例之外,图16的i中,右下块x和左下块y可能具有以下关系。即,由于上块的图像特性相似,因此未执行分割的情况下被划定,并且由于下块的图像特性不同,因此被分割为左下块和右下块后被划定。
总之,在四叉树分割的情况下,如果与当前块相邻的相邻块中,具有父块与当前块相同的相邻块,由于无条件地在水平和垂直方向上将其分割为1/2的四叉树特性,因此可能是与当前块具有相似的特性或具有不同的特性。在二叉树分割的情况下,如果在与当前块相邻的相邻块中,具有父块与当前块相同相邻块,则可以根据图像特性对其执行水平或垂直分割,因此已被分割可以意味着由于是不同特性而被分割。
(四叉树分裂)
与当前块相比分割前块相同的相邻块(在此示例中假设为左块、上块,但不限于此)可以具有与当前块相似或不同的特性。
另外,当前块和分割前块不同的相邻块可以具有与当前块相似或不同的特性。
(二叉树分割)
与当前块相比分割前块相同的相邻块(在此示例中假设为左块或上块,由于是二叉树,因此最大候选数为一个)可以具有不同的特性。
另外,与当前块相比分割前块不同的相邻块可以具有与当前块相似或不同的特性。
下面将在上面的假设为本发明的主要假设的前提下进行描述。根据以上内容,可以区分为相邻块的特性与当前块相似或不同的情况(1)以及相邻块的特性与当前块特性的不同的情况(2)。
再次参考图15。
作为一个示例(当前块是A1A2),因为A1A2块的分割前块A1与A0块的分割前块(初始块)不同,因此可以将相邻块中的A0块(左块)分类(即,在不知道特性是否与当前块相似或不同的情况下)为普通情况。
对相邻的A1A0块(上块),由于A1A2块的分割前块A1和A1A0块的分割前块A1相同,因此可以确认分割方式。此时,由于是四叉树分割(A),因此被分类为普通情况。
作为一个示例(当前块是A2B0B1),对于相邻块中的A2B0B0块(上块),A2B0B1块的分割前块A2B0和A2B0B1块的分割前块A2B0B1相同,因此确认分割方式。此时,由于是二叉树分割(B),因此被分类为例外情况。
作为一个示例(当前块是A3B1C0),在相邻块中,由于A3B1C0块的分割前块A3B1与A3B0块的分割前块A3不同,将A3B0块(在此示例中为右上块)可以分类为普通情况。
如以上示例所述,可以将相邻块分类为普通情况和例外情况。对于普通情况而言,不知道将对应相邻块的编码信息是否可以用作当前块的编码信息的状态,对于例外情况而言,强硬判断相应相邻块的编码信息不能用作当前块的编码信息的状态。
基于以上分类,可以使用从相邻块获得当前块的预测信息的方法。
综上所述,确认当前块和相邻块的分割之前的块是否相同(A)。
如果A具有相同的结果,则确认当前块(如果相同,则不仅当前块,而且相邻块也是使用相同的分割方式来划定的块,因此仅确认当前块)的分割方式(B)。
如果A的结果为不同,则退出(结束)。
如果B的结果为四叉树分割,则将相邻块标记为普通状态并退出(结束)。
如果B的结果为二叉树分割,则将相邻块标记为例外状态并退出(结束)。
上面的示例可以应用于本发明的帧内预测模式预测候选组(与最可能的模式有关)的设置。可以支持普通预测候选组设置(例如,候选组配置优先级等)和例外预测候选组设置,并且可以基于以上相邻块的状态,将优先级推后或排除从该块导出的候选组。
此时,应用所述设置的相邻块可以限于空间情况(相同空间),或者可以适用于从同一图像的其他颜色空间导出的情况,例如彩色复印模式。即,可以考虑通过彩色复印模式导出的块的分割状态等来执行上述设置。
除了以上示例之外,后述的示例为根据块之间的关系(在以上事例中,利用分割块信息等来识别当前块与其他块之间的相对关系)自适应确定编码/解码设置(例如,预测候选组设置、参考像素设置等)的一个示例。
该示例(亮度分量)在编码/解码装置中预定义的帧内预测模式具有35个时,从相邻块(在此示例中为左、上)选择共3个候选配置为MPM候选组的假设下进行描述。
可以通过将一个候选分别添加到左块L0和上块T0来配置一共两个候选。如果不能在每个块中配置候选组,则可以用DC模式、平面模式、垂直模式、水平模式、对角线模式等候选代替并填补。如果通过上述过程填补了两个候选,则可以考虑用各种情况下的数量来填补剩下的一个候选。
例如,如果在每个块中填补的候选相同,则以不与候选组中包括的模式重叠的方式,代替为上述模式的相邻模式(例如,当相同模式为k_mode时,k_mode-2、k_mode-2、k_mode+1、k_mode+2等)。或者,当在每个块中填补的候选相同或不同时,可以通过添加平面模式、DC模式、垂直模式、水平模式、对角线模式来配置候选组。
通过以上过程,可以配置帧内预测模式候选组(普通情况)。这样建立的候选组属于普通情况,并且可以根据相邻块来配置自适应帧内预测模式候选组(例外情况)。
例如,如果相邻块被标记有例外状态,则可以排除从该块导出的候选组。如果左块被标记为例外状态,则候选组可以配置有上块和预设的预测模式(例如,从DC块、平面块、垂直块、水平块、对角线块、上块导出的模式等)。即使当MPM候选组由三个以上的MPM候选配置时,也可以相同/相似地应用上述示例。
将基于以下假设来进行描述:该示例(色差分量)具有五个帧内预测模式(在此示例中为DC模式、平面模式、垂直模式、水平模式、彩色模式),并且通过将自适应地确定优先级后排序的预测模式配置为候选组,来执行编码/解码(即,不使用MPM直接执行编码/解码)。
首先,赋予彩色模式最高优先级(在此示例中为0号索引;‘对于0’,分配1比特),而对其他模式(在此示例中为平面、垂直、水平、DC)赋予低优先级(在此示例中,分别为1号至4号索引,以‘100’、‘101’、‘110’、‘111’,分配3位)。
如果颜色模式与候选组的其他预测模式中的一个(DC、平面、垂直、水平)匹配,则可以对为匹配的预测模式赋予的优先级(在本示例中为索引1号至4号)分配预设预测模式(例如,对角线模式等),如果不匹配,则结束候选组配置。
通过以上过程,可以配置用于帧内预测模式的候选组。如此做出的示例对应于普通情况,并且可以根据已获取颜色模式的块来配置自适应候选组。
在此示例中,如果已获取颜色模式的其他颜色空间中与当前块相对应的块被配置为一个块(即,未分割状态),则可以将其称为普通情况,如果被配置为多个块(即,分割成两个以上的状态)则认为是例外情况。如上所述,可能是在以下假设下所举的示例:该示例不同于根据当前块与相邻块的父块是否相同,分割方式等执行分类的示例,当不同颜色空间的对应块配置为多个时,不同于当前块的特性的可能性更高。即可以理解为,是根据块之间的关系来自适应地确定编码/解码设置的示例。
若根据上述假设举例,如果将相应块标记为例外状态,则从该块导出的预测模式可以将优先级推后。在这种情况下,可以将其他预测模式中的一个(平面、DC、垂直、水平)分配给高优先级,并且可以将较低优先级分配给所述优先级中不包括的其他预测模式和颜色模式。
为了便于描述,在一些假设下描述了上述示例,但是不限于此,并且相同或相似的应用可以用于本发明的上述各种实施例。
总之,当在相邻块中存在被标记为例外状态的块时,可以使用候选组A,并且当存在被标记为例外状态的块时,可以使用候选组B。可以理解的是,上述分类被分为两种情况,但是可以根据例外状态和块位置自适应地实现块单位的帧内预测候选组配置。
另外,上述示例假设了分割方式中基于树的分割,但是不限于此。详细地,在上述示例可能是,将使用至少一种基于树的分割方式而获得的块设置为编码块,并且在不将该块分割为预测块、变换块等的情况下,直接执行预测、变换等。
作为分割设置的另一示例是,使用基于树的分割获得编码块并且基于所获得的编码块获得至少一个预测块。
例如,假设可以使用基于树的分割(在此示例中为四叉树)来获得编码块(2N×2N),并且预测块是基于类型的分割(在此示例中可支持的候选类型为2N×2N、2N×N、N×2N、N×N)获得。此时,当将一个编码块(在此示例中假设该块是父块)分割为多个预测块(在此示例中假设这些块是子块)时,上述例外状态等的设置也可以适用于预测块之间。
图16的g,如果在编码块(粗实线)中存在两个预测块(由细实线分开),则下块具有与上块不同的特性,并且不参考上块的编码信息或将优先级推后。
图17示出了根据本发明实施例的分割块的示例。详细地示出了,基本编码块(最大编码块,8N×8N)使用基于四叉树的分割来获得编码块(斜线块,2N×2N)的示例,并且所获得的编码块通过基于类型的分割被分割为至少一个预测块(2N×2N、2N×N、N×2N、N×N)。
以下将描述针对获得矩形形状的块的情况(2N×N和N×2N)的帧内预测模式候选组设置。
图18示出了关于设置生成预测信息的块(在此示例中,预测块为2N×N)的帧内预测模式候选组的各种示例。
该示例假设,(亮度分量)具有67个帧内预测模式时,从相邻块(在此示例中为左、上、左上、右上、左下)选择共6个候选,并将其配置在MPM候选组中。
参考照图13,可以按照L3-T3-B0-R0-TL的顺序配置四个候选,并且能够以预设模式(例如,平面、DC)配置两个候选。如果在以上配置中未填补最大数量(在此示例中为6),则可以包括从已包括在候选组的预测模式导出的预测模式(例如,k_mode时,可以有k_mode-2、k_mode-2、k_mode+1、k_mode+2等)、预设模式(例如,垂直、水平、对角线等)等。
在此示例中,假设空间上相邻块的情况下,候选组优先级是当前块的左块-上块-左下块-右上块-左上块的顺序(详细地,在左块的下侧、上块的右侧子块),对于预设模式,假设顺序依次为平面-DC-垂直-水平-对角线模式。
参考图18的a,与以上示例的候选组设置相同,当前块(2N×N,PU0)可以按照l1-t3-l2-tr-tl的顺序配置候选组(因为其他内容是重复的,因此省略)。在此示例中,当前块的相邻块可以是已完成编码/解码的块(编码块,即,其他编码块中的预测块)。
与以上不同,在当前块的位置对应于PUl时,可以设置至少一个帧内预测模式候选组。通常,越是与当前块相邻的块,与当前块的特性相似的可能性越高,因此从对应块配置候选组最为有利(1)。另一方面,为了进行解码/解码的并行处理,可能需要配置候选组(2)。
如果当前块是PU1,则在如(1)中的候选组配置设置中,如图18的b,可以按照l3-c7-bl-k-l1的顺序配置候选组(可以从c7或tr等导出k),并且在如(2)中的候选组配置设置中,如图18的c,可以按照l3-bl-k-l1的顺序,配置候选组(可以从tr等导出k)。所述两个示例之间的区别在于是否包括上块的帧内预测模式的候选组。即,在前一种情况下,为了提高帧内预测模式编码/解码的效率,将上块的帧内预测模式包括在候选组中,在后一种情况下,由于处于尚未确定是否完成编码/解码的状态,因此为了并行处理等,从候选组中排除了无法参考的上块的帧内预测模式。
图19示出了关于设置生成预测信息的块(在此示例中,预测块为N×2N)的帧内预测模式候选组设置的各种示例。
该示例假设,(亮度分量)具有67个帧内预测模式时,从相邻块(在此示例中为左、上、左上、右上、左下)选择共6个候选,并将其配置在MPM候选组中。
参考图13,可以按照L3-L2-L1-L0的顺序(上块)配置一个候选,可以按照T3-T2-T1-T0的顺序(上块)构成一个候选,可以按照B0-R0-TL的顺序(左上块、右上块、左下块)可以配置两个候选,可以按照预设模式(例如,Planar、DC)配置两个候选。如果在以上配置中也未填补最大数量,则可以包括从已包括在候选组中的预测模式导出的预测模式、预设模式等。此时,候选组配置的优先级可以是左块-上块-平面块-DC块-左下块-右上块-左上块的顺序。
参考图19的a,以与上述示例中的候选组设置相同的方式,当前块(N×2N。PU0)可以按照l3-l2-l1-l0的顺序配置一个候选、按照t1-t0的顺序配置一个候选、按照bl-t2-tl的顺序配置两个候选。在此示例中,当前块的相邻块可以是已完成编码/解码的块(编码块;即,其他编码块中的预测块)。
与以上不同,在当前块的位置对应于PUl时,可以设置至少一个帧内预测模式候选组。在上述示例中,可以配置(1)和(2)。
如果当前块是PU1,则也可在如(1)的候选组配置设置中,如图19的b,按照c13-c9-c5-c1的顺序配置一个候选,按照t3-t2的顺序配置一个候选,按照k-tr-t1的顺序配置两个候选(可以从bl或c13等导出k),并且也可以在如(2)的候选组配置设置中,如图19的c,按照t3-t2的顺序配置一个候选,按照k-tr-t1的顺序配置两个候选组(可以从bl等导出k)。所述两个示例之间的区别在于是否包括上块的帧内预测模式的候选组。即,在前一种情况下,为了提高帧内预测模式编码/解码的效率,将左块的帧内预测模式包括在候选组中,在后一种情况下,由于处于尚未确定是否完成编码/解码的状态,因此为了并行处理等,从候选组中排除了无法参考的左块的帧内预测模式。
这样,可以根据对候选组配置的设置来确定候选组配置。在此示例中,可以隐式地确定候选组配置设置(在此示例中,用于并行处理的候选组配置设置),或者可以将相关的信息显式收录在视频、序列、图片、切片、tile等单位。
以上内容的总结如下。假设隐式确定或显式生成相关信息的情况。
在编码/解码的初期阶段确认帧内预测模式候选组配置设置(A)。
如果针对A的确认结果是能够参考同一编码块中的先前预测块的设置,则将该块的帧内预测模式包括在候选组中(结束)。
如果针对A的确认结果是禁止参考同一编码块中的先前预测块的设置,则将该块的帧内预测模式从候选组排除(结束)。
为了便于描述,在一些假设下描述了上述示例,但是不限于此,并且相同或相似的应用可以应用于本发明的上述各种实施例。
图20示出了根据本发明实施例的块分割的示例。详细地,基本编码块(最大编码块)表示通过基于二叉树的分割(或多个基于树的分割)获得编码块(斜线块AxB)的示例,所获得的编码块设置为预测块的示例。
此时,以下将描述对于获得矩形块的情况(AxB,A≠B)的运动信息预测候选组设置。
图21示出了设置生成预测信息的块(在此示例中,编码块。2N×N)的帧内预测模式候选组的各种示例。
在以下假设下进行描述:该示例(亮度分量)具有67个帧内预测模式时,从相邻块(在此示例中为左、上、左上、右上、左下)选择共6个候选,并将其配置在MPM候选组中,非MPM候选组配置为多个组(在此示例中,A和B。A在非MPM候选中预测当前块的预测模式的可能性更高的模式属于A)时,在A组中总共配置有16个候选,在B组中总共配置有45个候选。
此时,组A包括根据不包括在MPM候选组的模式中一定规则(例如,由定向模式中的等距模式构成)分类的候选,或者按照MPM候选组优先级,可以包括未包括在最终MPM候选组的候选等。B组可以由MPM候选组和非MPM候选组中未包括在A组的候选构成。
参考图21的a,当前块(CU0或PU0,假设大小为2NxN,水平/垂直为2:1)可以按照l1-t3-planar-DC-l2-tr-tl-l1*-t3*-l2*-tr*-tl*-垂直-水平-对角线模式的顺序,将六个候选配置为候选组。在以上示例中,*表示从每个块的预测模式导出的模式(例如,+1、-1等的相加模式)。
另一方面,参考图21的b,当前块(CU1或PU1,大小为2N×N)可以按照l3-c7-planar-DC-bl-k-l1-l3*-c7*-bl*-k*-l1*-垂直-水平-对角线模式的顺序,将六个候选配置为候选组。
在此示例中,在应用图18的(2)的设置的情况下,如图21的b,按照l3-planar-DC-bl-k-l1-c7-l3*-bl*-k*-l1*-垂直-水平-对角线-c7*,从上块的预测模式候选组中排除,或优先级被推后,因此可能会包括在A组。
然而,与图18的情况的区别在于:即使是矩形形状的块,该块也被分割为编码单元,并且被立即设置为预测单元而没有额外分割。因此,如图18所示的,候选组配置设置可能不适用于此示例(如(2)的设置)。
然而,在图21中的k的情况下,由于是未完成编码/解码的位置,因此可以从完成编码/解码的相邻块中导出。
图22示出了设置针对生成预测信息的块(在此示例中,编码块N×2N)的帧内预测模式候选组的各种示例。
将基于以下假设来进行描述:当该示例(色差分量)具有五个帧内预测模式(在此示例中为DC模式、平面模式、垂直模式、水平模式、彩色复印模式)时,将自适应地确定优先级后排序的预测模式配置为候选组,并执行编码/解码。
此时,将基于从相邻块(在此示例中为左、上、左上、右上、左下)确定优先级的假设下描述优先级。
参考图13,可以在左块L3、上块T3、左上块TL、右上块R0、左下块B0中确定第一等级候选。此时,可以将具有所述块的预测模式中具有最频繁值的模式确定为第一等级候选。如果多个模式具有最频繁值,则赋予预设优先级(例如,彩色复印模式-平面-垂直-水平-DC)。
该示例在从相邻块获得模式(所述模式是估算为当前块的预测模式的模式)并由此确定优先级(即,确定分配的比特量;例如,第一等级时,为‘0’;第2至第4等级时,为‘100’、‘101’、‘110’、‘111’)的方面以及执行预测模式的预测的方面上,可以认为与MPM候选设置(在此示例中,将第一位确定为0或1;如果为1,则需要附加2位;根据编码/解码设置,第一位可以执行旁路编码或常规编码,其余位可以执行旁路编码)相似。
参考图22的a,当前块(CU0或PU0,假设大小为N×2N,且水平/垂直为1:2)可以在l3、t1、t1、t2、b1块中确定第一等级候选。
另一方面,参考图22的b,当前块(CU1或PU1,大小为N×2N)可以在c13、t3、t1、tr、k块中确定第一等级候选。
在本示例中,当适用如图19的(2)的设置时,当前块CU1可以在t3、t1、tr、k块中确定第一等级候选。另外,如果获取了彩色复印模式的其他颜色空间中与当前块相对应的块未配置为一个块,则在预设的优先级中推后彩色复印模式的优先级,使优先级变更为Planar-垂直-水平-DC-彩色复印模式等。如上所述,可以是在以下假设下所举的示例:该示例与根据当前块与相邻块的父块是否相同,分割方式等执行分类的示例不同,但是当不同颜色空间的对应块配置为多个时,不同于当前块的特性的可能性更高。即,可以理解为,是根据块之间的关系来自适应地确定编码/解码设置的示例。
然而,与图19的情况的区别在于:即使是矩形形状的块,该块也被分割为编码单元,并且对应于被立即设置为预测单元而没有额外分割的情况。因此,如图19所示的候选组配置设置可能不适用于此示例。
然而,在图22中的k的情况下,由于是未完成编码/解码的位置,因此可以从完成编码/解码的相邻块中导出。
为了便于描述,在一些假设下描述了上述示例,但是不限于此,并且在本发明的上述各种实施例中可以有相同或相似的应用。
在图21和图22的实施例中,假设了可以通过二叉树分割来分割的M×N(M≠N)块连续发生的情况。
上述情况中,可能会发生如图14至图16中描述的情况(通过确认当前块与相邻块之间的关系等来设置候选组的示例)。即,在图21和图21中,CU0和CU1的分割之前的相邻块彼此相同,并且可以通过二叉树分割的水平分割或垂直分割来获得CU0和CU1。
另外,在图18和图19的实施例中,假设在编码块分割之后发生编码块中多个矩形形状的预测块的情况。
上述情况中,也可能会发生如图14至图16中描述的情况。那么就会发生与图18和图19的示例冲突的情况。例如,在图18中,在PU1的情况下,可以确定是否使用PU0的信息,在图14至图16中,因为PU1的特性不同于PU0的特性,因此不使用PU0的信息的情况。
关于以上内容,可以根据编码/解码的初始阶段的设置,在没有冲突的情况下配置候选组。根据各种其他编码/解码设置,可以设置运动信息预测的候选组。
通过上述示例描述了设置预测模式候选组的情况。另外,可以设置限制从标记有例外状态的相邻块中用于预测当前块的参考像素的使用。
例如,当通过区分根据本发明的实施例的第一参考像素和第二参考像素来生成预测块时,在第二参考像素被包括在标记为例外状态的块中的情况下,可以限制通过使用第二参考像素来生成预测块。即,可以仅使用第一参考像素来生成预测块。
总之,以上示例可以被考虑为与第二参考像素的使用有关的编码/解码设置中的一个元件。
将说明关于本发明的帧内预测模式候选组设置的各种情况。
在此示例中,假设存在67个帧内预测模式的情况,并且由65个定向模式和2个平面和DC的非定向模式配置,然而,不限于此,并且可以设置其他帧内预测模式。在此示例中,假设在MPM候选组中包括六个候选。然而,不限于此,并且MPM候选组也可以由四个、五个或七个候选配置。另外,具有在候选组中没有重叠模式的设置。另外,优先级是指确定是否包括在MPM候选组中的顺序,但是可以被考虑为用于确定关于属于MPM候选组的每个候选的二值化、熵编码/解码设置等的元件。以亮度分量为中心将描述后面的示例,但是对于色差分量也可以执行相同或相似或更改的应用。
本发明的帧内预测模式候选组(例如,MPM候选组等)中包括的模式可以配置为空间相邻块的预测模式、预设预测模式以及从候选中包括的预测模式导出的预测模式等。此时,可以根据编码/解码设置来确定用于配置候选组的规则(例如,优先级等)。
后述的示例描述了关于固定的候选组配置的情况。
作为一个示例(1),可以支持用于配置帧内预测模式候选组(在此示例中,MPM候选组)的一个固定优先级。例如,可以支持一个预设的优先级,例如,当将空间上相邻块的预测模式添加到候选组时,左块(图13中的L3)-上块(图13中的T3)-左下块(图13中的B0)-右上块(图13中的R0)-左上块(图13中的TL)的顺序,当将预设的预测模式添加到候选组时、平面-DC-垂直-水平-对角线模式的顺序。另外,可以有上述示例的混合配置,例如左块-上块-平面块-DC块-左下块-右上块-左上块的顺序。如果当即使按照优先级执行了候选,也无法填补候选的数量时,则已被包括的预测模式的导出模式(例如,左块模式的+1、-1、上块模式的+1、-1等)、垂直模式、水平模式、对角线模式等可以具有下一个优先级。
在以上示例中,当将空间上相邻的块的预测模式添加到候选组时,候选模式具有左块-上块-左下块-右上块-左上块的优先级,并且按照顺序将左块(图12的L3)的预测模式包括在候选组中,而当相应模块不存在时,将作为下一个优先级的上块(图13中的T3)的预测模式包括在候选组中。以此方式,按照顺序包括在候选组中,而当对应块的预测模式不可用或与所包括的模式重叠时,该顺序就跳到下一个块。
作为另一示例,当将空间上相邻的块的预测模式添加到候选组时,可以按照左块-上块-左下块-右上块-左上块的顺序配置候选组。此时,左块的预测模式首先考虑位于L3中的块的预测模式,但是如果存在不可用或重叠模式,则按照左块的下一个子块L2、L1、L0的顺序填补左块的预测模式候选。同样,将相同或相似的设置应用于上块(T3-T2-T1-T0)、左下块(B0-B1-B2-B3)、右上块(R0-R1-R2-R3)、左上块(TL)。例如,若是即使按照L3-L2-L1-L0的顺序执行,也不能添加到候选组的情况,则可以执行下一个顺序块。
后述的示例描述了自适应候选组配置的情况。自适应候选组配置可以根据当前块的状态(例如,块的大小和形状)、相邻块的状态(例如,块的大小和形状、预测模式等)或当前块与相邻块之间的关系来确定。
作为一个示例(3),可以支持用于配置帧内预测模式候选组(在此示例中,MPM候选组)的自适应优先级。可以根据频率设置优先级。即,频繁发生的预测模式可以具有高优先级,而较少发生的预测模式可以具有低优先级。
例如,可以根据空间上相邻的块的预测模式的频率来设置优先级。
可以支持用于频率相同的情况的预设优先级。例如,假设左块、上块、左下块、右上块、左上块中分别发生两次的模式(假设为每个块获取一个预测模式)是模式6和模式31、发生1次的模式是模式14时,该示例(假设在左块-上块-左下块-右上块-左上块的顺序中出现在前一个顺序的块中发生的模式为模式6)中,包括模式6和模式31作为第一候选和第二候选。
包括平面和DC作为第三和第四候选,并且包括具有一次频率的预测模式的模式14作为第五候选。然后可以将从第一候选和第二候选导出的模式5和模式7以及模式30和32置于下一个优先级。另外,将作为从第五候选导出的模式的模式13和模式15置于下一个优先级,然后垂直模式、水平模式、对角线模式可以具有下一个优先级。
即,频率为2以上的预测模式分配在平面模式和DC模式之前的优先级,频率为1的预测模式可以分配在平面和DC模式之后的优先级,如上示例的导出模式、预设模式等排在后面。
总之,预设优先级(例如,左块-上块-平面块-DC块-左下块-右上块-左上块顺序)可以是考虑到一般图像的统计特性而设置的优先级,并且自适应优先级(在此示例中,根据频率包括在候选组中的情况)可以是考虑图像的部分特征,执行预设优先级的部分修改(在此示例中,固定平面和DC为,并且在前面布置发生两次以上频率的模式,在后面布置发生一次频率的模式)的示例。
另外,不仅可以根据频率来确定关于候选组配置的优先级,而且可以基于该频率来确定针对属于MPM候选组的每个候选的二值化和熵编码/解码设置。作为一个示例,可以基于该频率来确定具有m个频率的MPM候选的二值化。或者,可以根据频率来自适应地确定关于候选的上下文信息。即,在此示例中,可以使用将所述模式的选择概率设为高的上下文信息。即,当m为1至4时(在此示例中,总共6个候选中的2个中包括有非定向模式,因此频率的最大值为4),可以不同地设置上下文信息。
如果某个bin索引(Bin index;当根据二值化配置一比特以上时,每个比特的顺序;例如,当某个MPM候选配置为‘010’时,第一bin至第三bin可以为0、1、0)的0与1中的0是表示该候选被选择为MPM(使用一个bin确定是否是最终的MPM的情况,或者为了认识最终的MPM,需要确认附加bin的情况;即,上面的‘010’中,如果第一bin为0,则需要再确认第二bin和第三bin,才能确认该模式是否是最终的MPM;如果是一个bin,则可以根据该bin的0和1,立即确认是否是最终的MPM)的bin,1是表示所述候选没有被选择为MPM的bin,则适用0的发生概率高的上下文信息(即,执行二进制算术时,可以设置0的发生概率为90%、1的发生概率为10%。假设基本情况为,0和1的发生概率为60%、40%),从而可以应用上下文自适应二进制算术编码(CABAC)。
作为一个示例(4),可以支持用于配置帧内预测模式候选组(在此示例中,MPM候选组)的自适应优先级。例如,可以根据空间上相邻的块的预测模式的定向来设置优先级。
此时,对于方向性的类别是朝向右上方的模式组(图9中的2至17)、水平模式组(图9中的18)、朝向右下方的模式组(图9中的19至49)、垂直模式组(图9中的50)、朝向左下方的模式组(图9中的51至66)、非方向性模式组(平面、直流模式)。或者,可以分为水平定向模式组(图9中的模式2至34)、垂直定向模式组(图9中的35至66)、非方向模式组(平面、DC模式),并且均可以有各种配置示例。
例如,如果基本候选组优先级是左上块-平面块-DC块-左下块-右上块-左上块的顺序,则可以按上述顺序配置候选组。但是,在配置候选组之后,可以基于类别来确定用于对每个候选的二值化、熵编码/解码设置的优先级。作为一例,可以对MPM候选组中的包括大量候选的类别执行分配较少的比特的二值化。或者,可以根据类别来自适应地确定上下文信息。即,可以根据每个类别中包括的模式的数量(例如,当第一类别为m个、第二类别为n个时,根据m和n的组合来确定上下文信息)来确定上下文信息。
作为一个示例(5),可以根据当前块的大小和形状来支持自适应优先级。例如,可以根据块的大小来确定优先级,并且可以根据块的形状来确定优先级。
如果块大小是32×32以上,则可以按照左块-上块-平面块-DC块-左下块-右上块-左上块的顺序被包括在候选组中,如果小于32×32,则可以按照左块-上块-左下块-右上块-左上块-平面块-DC块的顺序被包括在候选组中。
或者,如果块的形状为正方形,则可以按照左块-上块-平面块-DC块-左下块-右上块-左上块的顺序被包括在候选组中,如果块的形状为矩形(水平为长形),则可以按照上块-右上块-左上块-平面块-DC块-左块-左下块的顺序被包括在候选组中,如果块的形状为矩形(垂直为长形),则可以按照左块-左下块-左上块-平面块-DC块-上块-右上块的顺序被包括在候选组中。该示例可以被理解为,与较长块相邻的块具有领先顺序的情况。
作为一个示例(6),可以根据当前块与相邻块之间的关系来支持自适应优先级。
参照图23的a,示出了根据相邻块(在此示例中为左块的子块)的预测模式生成预测块的示例。
当左块(在此示例中,左块的上子块)的预测模式(为了便于描述而使用。仅参考关于定向内容即可)是在图9中的51到66中存在的具有定向的模式(在垂直模式下,向右倾斜模式)时,生成左块的预测块时作为参考的像素对应于图中的斜线部分(TL、T的一部分)。对于左块的右区域,实际上可以是与左块的左区域相关性高的区域,但是由于目前尚未执行编码/解码,因此可以通过已完成编码/解码的T的下部区域的参考像素,来生成预测块。
即使如上所述从T块的一部分的下部区域执行预测,最终预测模式还被确定为51至66中存在的模式,这可以表示,当前块的某些区域2400也具有与上述预测模式相同或相似的定向(或边缘等)。
也就是说,这可能意味着左块的预测模式被选择为当前块的预测模式的概率较高。或者,这可能意味着51至66被选择为概率较高。
参考图23中的b,当从以上示例得出相关描述时,当在图9中的2至17(在水平模式下向下倾斜的模式)中存在上块的预测模式时,可能意味着当前块的一些区域也存在与相应的预测模式相同的定向。
也就是说,这可能意味着上块的预测模式被选择为当前块的预测模式的概率较高。或者,这可能意味着2至17被选择的概率较高。
如上所述,当通过相邻块的预测模式确定当前块的预测模式发生的可能性时,可以自适应地确定优先级。
例如,当基本候选组配置优先级为左块-上块-平面块-DC块-左下块-右上块-左上块的顺序时,在与图23中的a相同的情况下,优先级没有变化,在如图23中的b的情况下,可能会按照上块-左块-平面块-DC块-左下块-右上块-左上块的顺序发生变化。
或者,在图23中的a的情况下,可以是左块-(左+1)块-(左-1)块-上块-Planar块-DC块-左下块-右上块-左下块的顺序,并且在图23中的b的情况下,可以按照上块-(上-1)块-(上+1)块-左块-Planar块-DC块-左下块-右上-左下块的顺序发生变化。
参考图24中的a,示出了一种示例,其根据相邻块(在此示例中为左块)的预测模式生成预测块。
在左块的预测模式是图9中的51至66中存在的具有方向性向的模式的情况下,被参考用于生成左块的预测块的像素对应于图中的斜线部分TL、T。左块的右区域可以是与左块的左区域相关性高的区域,但是由于目前尚未执行编码/解码,因此可以通过已完成编码/解码的T的下部区域的参考像素,来生成预测块。
即使如前述从T块的下部区域执行预测,还将最终预测模式确定为51至66中存在的模式,这意味着当前块的某些区域也具有与上述预测模式相同或相似的方向性(或边缘等)。
也就是说,这可能意味着左块的预测模式被选择的概率高。或者,这可能意味着51至66被选择的概率高。
参考图24中的b,当从以上示例得出相关描述时,当在图9中的模式2至17中存在上块的预测模式时,可能意味着当前块的一些区域也存在与相应的预测模式相同的方向性。
也就是说,这可能意味着上块的预测模式被选择为当前块的预测模式的概率高。或者,这可能意味着模式2至17被选择的概率高。
如上所述,当通过相邻块的预测模式确定当前块的预测模式发生的可能性时,可以自适应地确定优先级。
例如,当基本候选组配置优先级为左块-上块-平面块-DC块-左下块-右上块-左上块的顺序时,在如图24中的a的情况下,优先级没有变化,在如图23中的b的情况下,可能会按照上块-左块-平面块-DC块-左下块-右上块-左上块的顺序发生变化。此时,如图24中的a的情况下,优先级与之前相同,相反,可以自适应地确定对MPM候选组中的左块的预测模式候选的二值化和熵编码/解码设置。作为一个示例,可以确定针对左块的预测模式候选的二值化(分配更短的比特)。或者,可以自适应地确定上下文信息。即,在此示例中,可以使用将所述候选的选择概率设置为高的上下文信息。
如果某个bin索引的0和1中的0是表示该候选被选择为MPM(用一个bin确定是否是最终的MPM的情况,或者为了认识最终的MPM而确认附件bin的情况)的bin,1是表示所述候选没有被选择为MPM的bin,则可以通过应用发生0的概率高的上下文信息,来应用CABAC。
或者,在图24中的a的情况下,可以是左块-(左+1)块-(左-1)块-(左+2)块-(左-2)块-上块-Planar块-DC块-左下块-右上块-左下块的顺序,并且在图24中的b的情况下,可以按照上块-(上-1)块-(上+1)块-(上-2)块-(上+2)块-左块-Planar块-DC块-左下块-右上-左下块的顺序发生变化。
参考图25中的a,示出了一种示例,其根据相邻块(在此示例中为左块)的预测模式生成预测块。
考虑左块和左下块的预测模式具有在图9的51至66中存在的方向性的情况。左块和左下块可以属于或可以不属于同一块。在此示例中,为了便于描述,假设左块和左下块属于已完成分割的相同块(即,相同模式)。
在(左+左下)块的预测块生成中参考的像素对应于图中的斜线部分TL、T、TR。即使如前述示例从T块和TR块的下部区域执行预测,最终预测模式被确定为51至66中存在的模式,这意味着当前块的整个区域也具有与上述预测模式相同或相似的方向性。
也就是说,这可能意味着左块或左下块的预测模式(在此示例中,当两个块的预测模式相同的情况)被选择为当前块的预测模式的概率(很)高。或者,这可能意味着模式51至66被选择的概率(在此示例中,两个块的预测模式不同的情况)高。
图25中的b,当在图9中的模式2至17中存在(上+右上)块的预测模式时,可能意味着当前块的整个区域也存在与相应的预测模式相同的方向性。
也就是说,这可能意味着上块或右上块的预测模式(在此示例中,当两个块的预测模式相同时)被选择为当前块的预测模式的概率(很)高。或者,这可能意味着模式2至17被选择的概率(在此示例中,两个块的预测模式不同的情况)高。
如上所述,当通过相邻块的预测模式确定发生当前块的预测模式的可能性时,可以自适应地确定优先级。
例如,当基本候选组配置优先级为左块-上块-平面块-DC块-左下块-右上块-左上块的顺序时,在如图25中的a的情况下,可能会按照左块-左下块-平面块-DC块-上块-右上块-左上块的顺序发生变化。在如图25中的b的情况下,可以按照上块-右上块-平面块-DC块-左块-左下块-左上块的顺序发生变化。即,可以将相关块的优先级置于前面。
或者,在如图25中的a的情况下,可以按照左块-左下块-(左+1)块-(左-1)块-(左下+1)块-(左下-1)块-平面块-DC块-上块-右上块-左上块的顺序发生变化,并且在如图25中的b的情况下,可以按照上块-右上块-(上-1)块-(上+1)块-(右上-1)块-(右上+1)块-平面块-DC块-左块-左下块-左上块的顺序发生变化。
另外,在如图25的情况下,可以基于在第四示例中描述的类别来确定对属于MPM候选组的每个候选的二值化、熵编码/解码设置。作为一个示例,可以确定针对MPM候选(图24中的a和b的模式)的二值化(即,分配更短的比特)。或者,可以自适应地确定根据类别的上下文信息。即,在此示例中,可以使用发生所述模式(图25中的a和b的模式)所属类别的概率设置为高的上下文信息。
如果某个bin索引的0和1中的0是表示属于与上述类别不同的类别的模式被选择为MPM的bin,而1是表示属于该类别的模式被选择为MPM的bin,则可以通过应用发生1的概率高的上下文信息,来应用CABAC。
为了确认上述内容,需要确认位于预定方向(左、上、左上、右上、左下)上的块是否被配置为单个块(即,未分割)的过程。因此,如果配置为单个块,则用该块的预测模式执行所述情况,如果配置为分割块,则确认一部分或全部的每个块的预测模式,以执行所述情况。但是,这种情况的复杂性有可能大大增加。
为此,可以简单地配置该过程。假设当前块的范围是(a,b)至(a+M-1,b+N-1)。左块包括以当前块为中心的,属于(a-1,b)至(a-1,b+N-1)的范围的像素。可以通过确认一些像素而不是所有像素的预测模式来确定左块的预测模式的方向性。
例如,使用(a-1,b)的左块的右上侧(当前块为基准,左上端)坐标的预测模式,(a-1,b+N-1)的左块的右下侧(当前块为基准,左下端)坐标的预测模式来判断预测块的方向性。在这种情况下,左块可以配置为单个块,并且可以配置为分割块,即使是单个块或分割块,包括所述坐标的预测模式可以相同。然而,即使不相同,如通过图24中的a来描述,如果是属于图9的51至66的类别的预测模式,则关于对该预测模式的预测模式编码,可以分配高的优先级。
上面的示例假设了左侧块的情况,但是也可以类似地适用其他方向。除了左块之外,为了确认左下块的预测模式,可能需要确认属于左下块的坐标的预测模式的过程,例如(a-1,b+N)。
总之,可以通过确认关于位于预定方向上的块的一些坐标的预测模式,以及确认该方向的预测模式或预测模式方向性,来用于在帧内预测模式候选组配置中参考。此时,坐标数量可以是1以上的整数,例如1、2、3。
总之,当确认判断为与当前块具有高相关性的模式时,可以将该模式的候选组内的优先级分配为高。或者,基于该模式导出的预测模式(例如,相邻预测模式,例如,+1或-1)可以在候选组内优先级被分配为高。也就是说,可以优先于其他空间上相邻块的预测模式或预设预测模式(DC模式、平面模式、水平模式、垂直模式、对角线模式等)中的全部或一部分。
与以上示例中描述的情况不同,如果不能判断与当前块具有高相关性,则可以配置由基本设置的候选组。即,进一步考虑,考虑了高相关性的过程的候选组配置方法,基于相邻块的状态信息(块大小、形状、位置、预测模式等),可以选择多个预测模式候选组配置方法或者已配置的候选组中一个。
图26是当前块和相邻块之间的关系的示意图。
图26的a示出了根据分割块的编码顺序。
当执行四叉树分割时,按照左上块(0)-右上块(1)-左下块(2)-右下块(3)的顺序执行编码。当在所述子块(深度1)中进一步执行四叉树分割时,在每个子块(深度2)中,按照上述顺序执行编码,并且优先于深度信息执行编码。对于在深度1处分割的左上块,在深度2处,具有左上块(0-0)-右上块(0-1)-左下块(0-2)-右下块(0-3)的顺序,并且对于在深度1处分割的右下块,在深度2处,具有左上块(3-0)、右上块(3-1)、左下块(3-2)、右下块(3-3)的顺序。即,按照由深度信息表示的x-y-z的顺序执行编码。
当执行二叉树分割时,在水平分割的情况下,按照左块(0)-右块(1)或上块(0)-下块(1)的顺序执行编码。当在所述子块(深度1)中进一步执行二叉树分割时,在每个子块(深度2)中,按照上述顺序执行编码,并且优先于深度信息执行编码。
在图26中的a中,在块3与图25中的a相同、块16与图23中的a相同的情况下,块20对应于与图24中的a相同的情况。
例如,块3是,左块没有与左下块分割,而配置为一个块,并且具有特定方向上的预测模式(一个模式),或者即使左块与左下块分离,也具有特定方向上的预测模式(一个以上的模式)的情况。
块16是,左块被分割后配置为多个子块,并且其中的至少一个部分子块具有在特定方向上的预测模式(一个模式)的情况。
块20是,左块配置为一个块,并且具有在特定方向上的预测模式(一各模式),或者左块被分割后配置为多个子块,且所有子块具有特定方向上的预测模式(一个以上模式)的情况。
通过图26中的b示出当前块与相邻块之间的关系的一个示例。如果判断为如图26中的b估计,可以考虑此,将其考虑在预测模式候选组的配置中。
通过以上示例,查看了当前块与相邻块之间的关系的一些示例,然而,也可以有各种其他情况,并且可以考虑该情况来设置帧内预测模式候选组配置。
并且,在以上示例中,查看了关于帧内预测模式候选组的配置的各种情况。可以有应用在每个实施例中描述的一个设置的候选组配置,在每个实施例中描述的设置在其他实施例中可以相同或相似地应用,并且可以应用多个设置,以配置候选组。另外,可以通过将上述示例与附加设置组合,来构成候选组配置。
在此示例中,假设一种示例,其非MPM候选组配置为多个候选组(A组和B组),不选择MPM候选组的预测模式,而使用非MPM候选组的预测模式中下一个被估计为当前块的预测模式的模式候选组(A组),执行解码/解码。
在此示例中,假设在候选组A中包括16个候选,在候选组B中包括45个候选。
关于候选组A配置的设置可以使用各种方法,可以将没有根据MPM候选组的优先级来被包括的预测模式包括在候选组A中。
或者,可以与以上示例无关地根据预设分类来配置A候选组。例如,在图9中,可以在候选组中配置具有一定间隔的预测模式。即,在图8中的2、6、10、14、18等可以被包括在A组中。在这种情况下,对于组B,3、4、5、7、8、9、11等可以被包括在B组中。当然,是排除包括在MPM候选组中的模式的设置。
不限于以上示例,可以有各种变更和其他情况的设置。
总之,首先,配置MPM候选组,然后配置候选组A。并且,剩余预测模式可以被配置为B候选组。
MPM候选组模式可以使用Truncated Unary二值化、A候选组模式可以使用固定长度二值化、B候选组模式可以使用Truncated Binary二值化,但也可以使用各种其他二值化方法。
MPM候选组模式可以通过常规编码部对全部或一部分bin执行编码/解码,并且非MPM候选模式可以通过旁路编码部对所有bin执行编码/解码。或者,非MPM候选组中的候选组A模式可以通过常规编码部对一部分bin执行编码/解码,但是不限于此,可以使用各种情况。
以上是对基本设置的描述,并且还可有本发明的多个变换实施例。
接下来,将描述使用多个参考像素生成预测块的情况。
图27示出了使用多个参考像素层来生成预测块的示例。
可以将加权平均应用于ref_1的a和ref_2的b而生成的像素值,作为当前块的x像素的预测值。
使用多个参考像素层生成预测块有时会产生更好的预测效果。即,这意味着在生成当前块的像素的预测值时,多个像素可以产生更精准的预测结果。
然而,可以将re1_1和ref_2应用于当前块与边缘方向等具有高相关性的情况,在某些情况下,使用多个参考像素层可能会导致较差的预测结果。例如,如果当前块在垂直方向上相关性高,而如果上块在对角线方向上相关性高,则使用多个参考像素层并不能实现好的效果。
在这种情况下,最好是显式地确定使用一个现有的参考像素层或使用多个参考像素层。
或者,可以通过确认参考像素层之间是否具有高的相关性,来隐式地确定是否使用多个参考像素层来生成预测块。
通过上述示例说明了,在帧内预测时,以预定子块为单位进行分割,执行基于子块的预测和变换等的情况。此时,属于当前块的子块可以共享一个帧内预测模式。此时,将多个参考像素层应用于所述块中的子块可能会实现较好的效果。
图28示出了通过使用多个参考像素层生成当前块中的子块的示例。当前块是4M×4N、子块是4M×N,并且进行正向预测(上->下或左->右,作为参考,逆向是下->上、右->下),而使用预测方向为左上块、上块、右上块的参考像素的预测模式是k(图9中的66号)。
参考图28,包括x的子块4M×N可以使用已完成编码的第一个先前子块作为参考像素层来执行帧内预测。或者,包括x的子块可以使用已完成编码的第二个先前子块作为参考像素层来执行帧内预测。或者,包括x的子块可以使用第一个和第二个先前子块作为参考像素层来执行帧内预测(对每个参考像素层的应用加权值时,应用于包括x的子块中加权值等于或大于其他子块的加权值)。
通常,当以编码块为基准,使用多个参考像素层时,无条件使用并不总是产生正确的结果,然而,在以上示例中,用于编码的目标子块的先前子块具有与目标子块相同的方向,因此会产生更好的结果。因此,可以显式地将多个参考像素层设置应用于当前块中的子块中,从而显式地确定是否执行或选择哪个参考像素层。或者,可以隐式地将多个参考像素层应用于目标子块的前k个子块,以生成目标子块的预测值。
如果在子块单位上将多个子块分别设置为使用不同的参考像素层,并且想要使用上述设置生成预测块时,可以根据子块的当前块中的位置执行不同的设置。
例如,假设在当前块中支持四个水平分割的子块。那么,第一个子块可以使用当前块的最邻近参考像素执行预测和编码,第二个子块可以使用当前块的最邻近的参考像素和第一个子块的数据来执行预测和编码。
另外,第三个子块可以使用第一个和第二个子块的数据来执行预测和编码,并且第四个子块可以使用第二个和第三个子块的数据来执行预测和编码。
以上,对每个参考像素层(或者子块)适用的参考像素滤波和参考像素插值可以使用相同的滤波器,也可以使用不同的滤波器。此时,用滤波器抽头数和滤波器系数来区分滤波器。另外,还可以相同或不同地适用滤波。或者,不分别执行参考像素滤波和参考像素插值,而是可以通过一个滤波器来实现。例如,通过执行一个6抽头插值滤波器,而不是执行使用3抽头低频滤波器的参考像素滤波,也不使用4抽头插值滤波器,从而可能不会执行两次滤波。
如上所述,可以设置各种参考像素配置,然后可以使用多个参考像素层执行预测。可以通过本发明的之前各种其他实施例来描述以上的各种组合。
下面,将说明生成预测块的示例。
先前已经描述了,可以将用于帧内预测的参考像素区分为多个概念。不同于使用多个参考像素层,可以根据预测模式使用第一参考像素和第二参考像素来生成或校正预测块。
虽然说明了根据预测模式适用方式不同的示例。然而,该示例可以应用于将以上当前块分割为多个子块的情况。即,相比于,将参考像素作为第一参考像素而用于当前块的相邻块,作为第二参考像素使用了位于与预测模式的方向相反的位置或与预测模式的方向相对应的位置的像素,当前块被分割为多个子块时,第一参考像素可以是正上块。即,本发明可以在使用多个参考像素生成预测块的示例中,改变第一参考像素的位置。
或者,当前块被分割为多个子块而执行转换时,可以不使用上述方法。原因在于,在排列有先前已完成编码的最邻近的像素时,使用第二参考像素可能会导致效率不高。
即,确认是否将当前块(变换块)分割为子块来执行编码。因此,如果在不进行分割的前提下,以原有的块大小,通过预测、变换等来执行编码,则本发明可以根据预测模式使用第一参考像素和第二参考像素来生成预测块或校正预测块。如果分割后执行编码,则禁止使用第二参考像素来生成预测块或校正预测块。
如果在根据子/解码设置分割后执行编码时,使用第二参考像素,则可以通过调整第一参考像素的位置来执行相应的过程。
图29是用于说明用于帧内预测的参考像素配置的示意图。可以从分割块部中获得执行预测的当前块的大小和形状(M×N),并且在以下假设下进行了描述:为了执行帧内预测,支持4×4至256×256范围。通常可以执行预测块为单位的帧内预测,但是可以根据块分割部的设置,执行编码块为单位、变换块为单位的帧内预测。在确认块信息之后,参考像素配置部可以配置用于当前块的预测的参考像素。此时,可以通过临时存储器(例如,阵列<Array>,主阵列或辅助阵列等)管理参考像素,在该块的每个帧内预测过程中生成和删除该参考像素,并且临时存储器的大小可以根据参考像素的配置来确定。
在本示例中,假设以当前块为中心,左块、上块、左上块、右上块、左下块被用于当前块的预测,然而,不限于此,并且可以将具有其
他配置的块候选组用于当前块的预测。例如,针对所述参考像素的相邻块的候选组可以是跟随光栅或Z扫描的一个示例,并且可以根据扫描顺序去除所述候选组中的一部分或者可以配置为包括其他块候选组(例如,进一步配置上块、下块、右下块等)。即,可以根据扫描顺序等来改变可参考的相邻块的位置。
或者,其他颜色空间(例如,如果当前块属于Cr,则其他颜色空间对应于到Y或Cb)中与当前块相对应的块(例如,在每个颜色空间中根据相同坐标或颜色分量组成比,具有对应坐标的情况)可以用于当前块的预测。另外,为了便于描述,假设在所述预设位置(左、上、左上、右上、左下)配置有一个块为例来进行描述,但是在相应位置可以存在至少一个块。即,所述于预设位置可以存在对相应块进行分割的多个子块。
总之,当前块的相邻区域可以是用于当前块的帧内预测的参考像素的位置,并且根据预测模式,与另一颜色空间的当前块相对应的区域可以进一步被考虑为是参考像素的位置。除了以上示例,可以确定根据预测模式、方法等定义的参考像素的位置。例如,当通过诸如块匹配等方法生成预测块时,可以将参考像素位置考虑为当前图像的当前块之前的完成编码/解码的区域或者在完成编码/解码的区域中包括在搜索范围内的区域(例如,包括当前块的左侧或者上侧或者左上侧、右上侧等)。
如图29所示,用于当前块(MxN)的预测的参考像素可以由左块、上块、左上块、右上块、左下块的相邻像素(图7中的Ref_L、Ref_T、Ref_TL、Ref_TR、Ref_BL)配置。
此时,可以通过至少一个参考像素层分类相邻像素,并且最邻近的像素可以为ref_0(像素值差1,p(-1,-1)至p(2M-1,-1)),p(-1,0)至p(-1,2N-1)),以及下一个相邻像素(像素值差2,p(-2,-2)至p(2M,-2),p(-2,-1)至p(-2,2N))可以为ref_1,再下一个相邻像素(像素值差3,p(-3,-3)至p(2M+1,-3),p(-3,-2)至p(-3,2N+1))可以为ref_2等。详细地,ref_k表示集合相邻块(在此示例中为Ref_TL、Ref_T、Ref_TR、Ref_L、Ref_BL)中的像素值差为k+1的参考像素集,并且在本发明中,对于使用参考像素集ref_k,在以下假设下进行了描述(或主要描述),将在Ref_TL、Ref_T、Ref_TR、Ref_L、Ref_BL中具有像素值差k+1的像素作为参考像素并将其用于预测块,但不限于此。这意味着用于当前块的预测的参考像素集中,每个相邻块可以相同或不同。
例如,还可以有以下情况,在Ref_TL、Ref_T和Ref_TR中使用ref_0(p(-1,-1)至p(2M-1,-1)),而在Ref_L中,使用ref_1(p(-2,0)至p(-2,N-1)),并且在Ref_BL中使用ref_2(p(-3,N)至p(-3,2N+1))。
另外,一个参考像素集是指集合了Ref_TL、Ref_T、Ref_TB、Ref_L、Ref_BL(即从用于当前块的帧内预测的相邻块中获取)的参考像素,但是在后述的示例中,参考像素集可以由所述参考像素的部分组合配置(例如,Ref_T+Ref_TR、Ref_L+Ref_BL、Ref_T+Ref_TL+Ref_L等或者可以有每个位置的块由子块配置时的情况,即,Ref_T0+Ref_T1、Ref_L0+Ref_TL+Ref_T等)。
在本发明中,通过假设最多存在三个参考像素集来描述,然而,不限于此,并且可以使用更多参考像素集(k为3以上)。此时,支持的参考像素集(或集的最大数量,在后述的示例中指参考像素候选组)可以根据编码/解码设置(例如,块大小、形状、预测模式、图像类型、颜色成分等)来确定。
在本发明中,假设从最邻近的参考像素集分配低索引(从0按照1递增)的情况,但不限于此。另外,可以在如上的索引设置(在选择多个参考像素集中一个的情况下,对小索引分配短位的二值化等)下生成后述的参考像素配置相关信息,但不限于此。
通常,可以将相邻块的最邻近像素配置为参考像素(在此示例中为参考像素层ref_0),但是根据编码/解码设置,可以将其他像素配置为参考像素。如果使用其他参考像素层或至少一个参考像素层,则可以提高预测准确度,从而提高编码性能。此时,可以具有与参考像素层设置有关的各种设置。
例如,可以隐式确定用于帧内预测的参考像素集,或者可以显式生成与所使用的参考像素集有关的信息。详细地,可以将至少一个预设参考像素集配置为参考像素,或者将由参考像素集选择信息确定的至少一个参考像素集配置为参考像素。通过以上过程,参考像素集(例如,ref_0、ref_1、ref_2、ref_0+ref_1、ref_0+ref_2、ref_1+ref_2、ref_0+ref_1+ref_2)可以被配置为当前块的参考像素。
另外,可以根据配置为参考像素的参考像素集的数量为1个的情况和两个以上的情况进行区分。在前一种情况下,表示使用位于一个参考像素集中的像素生成预测块,而在后一种情况下,表示使用位于每个参考像素集中的至少一个像素(例如,当两个以上的参考像素集被配置为参考像素时,通过位于每个参考像素集中的像素值(这个值还可以是从每个参考像素集中的一个像素或者多个像素导出的值)的中值、加权平均等导出的值,可以是从一个像素或多个像素而导出的值)来生成预测块。
例如,可以使用参考像素生成预测块,该参考像素是通过位于第一参考像素集中的像素(此示例中的ref_0)和位于第二参考像素集中的像素(此示例中的ref_1)的加权值和而获得的。此时,根据预测模式(例如,预测模式定向),当在每个参考像素集中应用加权值和的像素时,不仅可以是整数单位像素,而且是小数单位像素。或者,可以通过将加权值(例如7:1、3:1、2:1、1:1等)分别应用于通过使用位于第一参考像素集中的像素作为参考像素而获得的预测块,和使用位于第二参考像素集中的像素而获得的预测块,以获得一个预测块。
假设关于参考像素配置的显式生成信息的情况时,允许自适应参考像素配置的指示信息(在此示例中为adaptive_intra_ref_pixel_enabled_flag)可以以视频、序列、图片、切片、tile等为单位发生。
如果指示信息意味着允许自适应参考像素配置(在此示例中为adaptive_intra_ref_sample_enabled_flag=1),则自适应参考像素配置信息(在此示例中为adaptive_intra_ref_sample_flag)可以以图片、切片、tile、块等为单位发生。
如果所述配置信息表示允许自适应参考像素配置(在此示例中为adaptive_intra_ref_sample_flag=1),则参考像素配置相关信息(例如,参考像素集选择信息等,在此示例中为intra_ref_idx)可以以图片、切片、tile、块等单位发生。
在这种情况下,当不允许自适应参考像素配置或不是自适应参考像素配置时,可以根据预定设置来配置参考像素。通常,其示例可以为,将相邻块的最临近的像素配置为参考像素,但是不限于此,可以具有各种情况的数(例如,将ref_0和ref_1配置为参考像素,并通过ref_0和ref_1执行加权值和等方法生成预测像素值的情况等;即,隐式的情况)。
此外,除了上述预设情况(例如,ref_0的情况),参考像素配置相关信息(例如,参考像素集选择信息等)可以由候选组(例如,ref_1、ref_2、ref_3等)配置,但也不限于此。
通过以上示例从上层单元,在分层结构下进行了描述,但是不限于此。另外,在某些情况下,可以隐式确定相关信息。例如,如上所述,在某些情况下,可能根据编码/解码设置出现相关信息,在某些情况下,隐式确定了相关信息,并且在某些情况下,可能是混合情况。
通过以上示例描述了参考像素配置的一些情况,其可以与各种编码/解码信息等结合以确定帧内预测设置。此时,编码/解码信息包括图像类型(I/P/B)、颜色分量、当前块的大小、形状、预测模式(预测模式的种类(定向、非定向)、预测模式的方向(垂直、水平、对角线1、对角线2等)等,并且可以根据相邻块的编码/解码信息和当前块与相邻块的编码/解码信息的组合来确定帧内预测设置(在此示例中为参考像素配置设置)。
图30是关于参考像素配置的示意图。
图30中的a是一个参考像素集被配置为参考像素的情况,可以在将ref_0配置为参考像素之后,执行后续帧内预测过程(参考像素生成、参考像素滤波、参考像素插值、预测块生成、后处理滤波等;根据参考像素集配置,可以自适应地配置一些帧内预测过程)。例如,不会用一个参考像素集生成参考像素集信息,并且可以执行根据非定向模式的帧内预测过程。
图30中的b是最多两个参考像素集被配置为参考像素的情况,并且在将ref_0+ref_1(图中为and)配置为参考像素之后,可以执行后续的帧内预测过程。例如,虽然是多个参考像素集但没有生成参考像素集信息,但是可以根据一些预测模式(在此示例中为从左上到左下或从左下到右上方向)执行帧内预测过程。
图30中的c是最多1个参考像素集被配置为参考像素的情况,并且在将ref_0或ref_1或ref_2中的一个(图中为or)配置为参考像素之后,可以执行后续的帧内预测过程。例如,由于是多个参考像素集而生成了参考像素集信息,并且可以执行根据一些预测模式(在此示例中,从左上到右下方向)的帧内预测处理。
总之,图30的b和c是,支持分别两个、三个参考像素集(换句话说,分别是两个和三个参考像素候选组)的情况,并且b表示由参考像素配置的参考像素集最多为两个(例如,通过每个参考像素集的像素值的加权值平均等导出),并且c表示由参考像素配置的参考像素集最多为一个(例如,通过三个候选组中选择的一个参考像素集的像素值导出)。
图31是参考像素配置的示意图。
图31中的a示出,当块大小为64×64以上时,表示一个参考像素集是参考像素候选组的情况,图31中的b表示,块大小为16×16以上且小于64×64时的两个参考像素集为参考像素候选组(意味着用于参考像素的参考像素集最多是2个;即,可以理解为图30的b和c都可以;以下相同)的情况,图31中的c表示块的大小小于16×16时,3个参考像素集为参考像素候选组(意味着用于参考像素的参考像素集最多是3个)的情况。在本示例中,当前块的大小越大,相邻块的大小越小的可能性越大,这可能是由于其他图像特性导致的分割结果,因此为了防止从距当前块的像素值距离大的像素执行预测,假设了块的大小越大参考像素集的候选数量减少的情况,但是也可以假设其相反的情况,并且不限于此,可以做各种变更的示例。
图32是关于参考像素配置的示意图。
图32示出了当块的形状为矩形(在本示例中为水平上长的形状)时,表示在长度较长的一侧的多个参考像素集为参考像素候选组的情况,而在长度较短的一侧的一个参考像素集为参考像素候选组的情况。在此示例中,假定长度较短的一侧由一个参考像素集配置的情况,但是可以理解为与长度较长的一侧相比,配置少的数量,并且,在相反情况下也可以有对数量的配置。该示例的目的在于防止,块的形状为矩形时,长度较短的参考像素与当前块频繁发生距离远的情况而导致预测的准确度下降,但是不限于此。
例如,在使用块的上侧、右上侧的参考像素来预测的定向模式的情况下,可以通过使用多个参考像素集(图30的b和c的情况都是可能的)来执行预测,并且在使用块的左侧、左下侧的参考像素而预测的定向模式的情况下,可以使用单个的参考像素集执行预测。即,可以是根据一个块中的相邻块来自适应地确定参考像素集的情况。
作为一个将多个参考像素集中的一个参考像素集配置为参考像素的情况的示例,当每个参考像素集相同或相似时,生成参考像素配置信息(例如,参考像素选择信息、自适应参考像素允许信息等)可能是重复发生信息的情况。例如,在判断每个参考像素集的参考像素分布特性(例如,由每个参考像素集的平均值、方差等判断;作为一例,可以通过比较上述过程中获得的值与阈值<Threshold>来判断;即,如果判断不管使用哪个参考像素集也生成相同或几乎相似的预测块,则可以省略相关信息;在此示例中,可以仅限于针对最后选择的预测模式执行比较)相同或相似的情况下,可以省略参考像素配置信息。在此情况下,可以通过预设方法(例如,最邻近的参考像素集)来配置参考像素。确定是否通过接收帧内预测信息(例如,帧内预测模式信息)来接收参考像素配置信息的方面上,解码器可以与编码器判断相同,并且基于此判断,可以确定是否接收参考像素配置信息。
尽管通过所述各种示例表示了将多个参考像素集配置为参考像素的情况,但是不限于此,可以具有多种变换示例,并且可以与其他附加配置组合。
帧内预测的参考像素配置部可以包括参考像素生成部、参考像素插值部、参考像素滤波部等,并且可以包括上述配置的全部或一部分。
可以在参考像素配置部确认参考像素的可用性(Availability)以对可用参考像素和不可用参考像素执行分类。例如,如果预设位置处的块(或参考像素候选块)是可用的,则相应的块可以用作参考像素,并且如果是不可用的,则该块不能用作参考像素。
当满足以下条件中的至少一个时,判断参考像素可用性为不可用。例如,如果满足位于图片边界之外的情况、不属于与当前块相同的分割单位(例如,slice、tile等)的情况、未完成编码/解码的情况、根据编码/解码限制使用的情况中的任何一种情况,则可以判断不可用。即,当不满足以上所有条件时,可以判断为可用。
另外,参考像素的使用可以受到编码/解码设置的限制。例如,可以根据是否执行受限的帧内预测(例如,constrained_intra_pred_flag)来限制参考像素的使用。当要对诸如通信环境等的外部因素执行错误鲁棒性编码/解码时,当试图禁止使用从其他图像被参考而被复原的块作为参考像素时,可以执行受限的帧内预测。
通过参考像素可用性,可以将参考像素候选块分类为:可以使用所有参考像素候选块的情况、可以使用一些参考像素的情况、不可使用所有参考像素的情况。在除了可以使用所有参考像素候选块的情况以外的其他情况下,可以填充或生成在候选块位置处不可使用的参考像素。
当可以使用参考像素候选块时,可以将该块的预设位置处的像素(在此示例中假设该像素与当前块相邻)包括在当前块的参考像素存储器中。
当不可使用参考像素候选块时,可以将通过参考像素生成过程而获得的像素包括在当前块的参考像素存储器中。
总之,当参考像素候选块处于可用状态时可以配置参考像素,当参考像素候选块处于不可用状态时可以生成参考像素。
参考像素滤波部通常使用低通滤波器(Low-pass Filter,例如,使用3抽头、5抽头滤波器等,诸如,[1,2,1]/4、[2,3,6,3,2]/16)执行平滑处理(Smoothing)作为其主要目的,但根据滤波器的应用目的(例如,锐化(Sharpening)等),可以使用其他种类的滤波器(例如,高通滤波器等)。在本发明中重点描述以平滑化为目的执行滤波,以减少在编码/解码过程中出现的劣化。
可以根据编码/解码设置来确定是否执行参考像素滤波。即,针对参考像素可以应用滤波或不应用滤波。但是,这种统一的滤波操作会发生不能反映图像的部分特性的缺点,并且通过基于反映图像的部分特征的编码/解码信息等执行滤波,可有益于提高编码性能。
所述图像的特性不仅可以根据图像类型(I/P/B)、颜色分量(Y/Cb/Cr)、量化参数、当前块的编码/解码信息(例如,大小、形状、分割信息、预测模式等),还可以根据相邻块的编码/解码信息、当前块与相邻块的编码/解码信息的组合等来判断。并且,可以根据参考像素分布特性(例如,参考像素区域的分散、标准偏差等)判断(例如,参考像素区域是平坦区域还是不连续区域等)。如此,当可以确认图像的特性信息时,可以预先设置是否应用参考像素滤波。
或者,可以显式地设置参考像素滤波。例如,可能会产生关于是否应用滤波的信息。此时,当存在一个滤波器时不会产生滤波器选择信息,当存在多个滤波器候选组时可能会产生滤波器选择信息。
尽管通过以上示例描述了关于参考像素滤波的隐式和显式设置,但也可以存在混合情况,例如,在一些情况下确定为使用显式设置,在另一些情况下确定为使用隐式设置。这里的隐式是意味着解码器可以导出关于参考像素滤波器的信息(例如,是否应用滤波的信息、滤波器种类信息)。
参考像素插值部可以通过参考像素的线性插值来生成小数单位的参考像素。虽然在本发明中,假设作为参考像素配置部的部分过程进行了描述,但它可以理解为一个部件,配置为包括在预测块生成部中,并且在生成预测块之前执行。
另外,虽然假设作为与前述参考像素滤波部所区分的一个单独的部件,但其可以配置为被集成为一个部件。这也可以是一种应对于当通过参考像素插值部和参考像素滤波部应用多个滤波时,在参考像素中产生失真的情况的配置。
在一些预测模式(例如,水平、垂直、一些对角线模式<形成45度角的模式,例如右下对角线,左下对角线,右上对角线>、非定向模式、彩色模式、彩色复制模等;即在生成预测块时不需要小数插值的模式)下不执行参考像素插值过程,其可以在其他预测模式执行(在生成预测块时需要小数插值的模式)。
可以根据预测模式(或预测模式方向性)确定插值精度(如像素单位,诸如1、1/2、1/4、1/8、1PMP候选组/16、1/32、1/64等)。例如,在形成45度角的预测模式下,不需要插值过程,在形成22.5度或67.5度角的预测模式下需要以1/2像素为单位的插值。如上所述,可以根据预测模式确定至少一个插值精度和最大插值精度。
为了参考像素插值,可以使用一个预设的插值滤波器(例如,2抽头(2-tap)线性插值滤波器,即在任何情况下也只使用该插值滤波器),以及可以使用多个插值滤波器候选组(例如,4抽头三次滤波器、4抽头高斯滤波器、6抽头维纳滤波器、8抽头卡尔曼滤波器等;即确定使用根据编码/解码设置而应用的插值滤波器)中的一个。此时,插值滤波器可以通过抽头数(即,应用滤波的像素的数量)、滤波系数等的差异来进行区分。
插值可包括分阶段执行的示例,例如从低精度到高精度的顺序(例如1/2->1/4-1/8)执行,也可包括统一执行的示例。在前一种情况下,插值是指基于整数单位的像素和小数单位的像素(在此示例中,是指在之前基于比当前要插值的像素低的精度执行插值的像素)执行插值(即,意味着不仅使用整数单位,还使用小数单位用于插值),在后一种情况下,意味着基于整数单位的像素执行插值(即,意味着仅使用整数单位的像素用于插值)。
当使用多个滤波部候选组中的一个时,可以显式地生成或者隐式地确定滤波器选择信息,并且可以根据编码/解码设置(例如,插值精度、块大小、形状、预测模式等)确定。在这种情况下,显式生成的单位对应于视频,序列,图片,slice,tile,块等。
预测块生成部可以根据至少一个预测模式来生成预测块,并且可以基于该预测模式来使用参考像素。此时,参考像素可以根据预测模式用于外插(Extrapolation)等方法(定向模式)中,并且可以用于诸如内插(Interpolation)或平均值(DC)或复制(Copy)等方法(非定向模式)中。
另外,可以通过参考像素的复制方式来生成预测块。在复制参考像素时,可以通过复制一个参考像素来生成一个以上的预测像素,也可以通过复制一个以上的参考像素来生成一个以上的预测像素,并且复制的参考像素的数量等于或小于被复制的预测像素的数量。
另外,虽然预测块通常由通过预测块生成过程获得的一个预测块构成,但也可以包括一种示例:通过获得多个预测块,并对其应用加权和等来获得一个最终预测块。这里,多个预测块可以指根据参考像素集获得的预测块,并且在其他情况下也可以指同样的预测块。
预测模式确定部执行用于在多个预测模式候选组中选择最佳模式的过程。通常,可以通过利用考虑到根据块失真(例如,当前块和复原块的失真,绝对差值和(Sum ofAbsolute Difference,SAD)、平方差之和(Sum of Square Difference,SSD)等)和相应模式的生成比特量的速率失真(Rate-Distortion)技术,来确定在编码成本方面上最佳的模式。可以将基于通过以上过程确定的预测模式而生成的预测块发送到减法部和加法部。
预测模式编码部可以对通过预测模式确定部选择的预测模式执行编码。在预测模式候选组中,可以对与所述预测模式相对应的索引信息执行编码,或者可以通过预测所述预测模式,以对与其相关的信息执行编码。即,前一种情况表示一种不执行预测而直接对预测模式执行编码的方法,后一种情况表示一种对预测模式执行预测,对模式预测信息和基于此获得的信息执行编码的方法。另外,前者为一种可以应用于色差分量的示例,后者为一种可以应用于亮度分量的示例,且并不限于此,在其他情况下也可以同样应用。
在对预测模式执行预测和编码的情况下,预测模式的预测值(或预测信息)可以被称为最可能模式(Most Probable Mode,MPM)。此时,可以将预设的预测模式(例如,DC模式、平面(Planar)模式、垂直模式、水平模式、对角线模式等)或空间上相邻的块(例如,左块、上部块、左上块、右上块、左下块等)的预测模式等配置为MPM。在本示例中,对角线模式可以表示右上对角线(Diagonal up right),右下对角线(Diagonal down right),左下对角线(Diagonal down left),可以为对应于图9中的模式2、模式34和模式66。
另外,可以将从MPM候选组中已包括的模式导出的模式配置为MPM候选组。例如,在MPM候选组中包括的模式中的定向模式的情况下,将模式间隔的差为a的模式(例如,a是非零整数,诸如,1、-1、2、-2等;在图9中已包括模式10的模式下,对应于导出模式9、模式11、模式8、模式12等的模式)重新(或额外地)包括在MPM候选组中。
上面的示例可以对应于以多个模式配置MPM候选组的情况,并且MPM候选组配置(例如,MPM候选组的数量、配置优先级)根据编码/解码设置(例如,预测模式候选组、图像类型、块大小、块形状等)来确定,并且可以配置为包括至少一种模式。
用于配置MPM候选组的预测模式可能存在优先级。可以根据所述优先级确定MPM候选组中包括的预测模式的顺序,并且当根据所述优先级填充了MPM候选组的数量时,可以完成MPM候选组的配置。此时,可以以空间上相邻的块的预测模式、预设预测模式、从首先包括在MPM候选组中的预测模式导出的模式的顺序来确定优先级,但是也可以存在其他修改。
例如,在空间上相邻的块中,可以以左-上-左下-右上-左上的块等顺序包括在候选组中,并且在预设的预测模式中,可以以DC、平面、垂直-水平模式等顺序包括在候选组中,可以将通过在已包括的模式中相加+1、-1等而获得的预测模式包括在候选组中。或者,预测模式可以以一个左-上-DC-平面-左下-右上-左上-左+1-左-1-上+1等的优先级包括在候选组中。
当使用MPM执行当前块的预测模式编码时,可以生成与预测模式是否与MPM匹配有关的信息(例如,most_probable_mode_flag)。
如果与MPM相匹配(例如,most_probable_mode_flag=1),则可以根据MPM的配置额外生成MPM索引信息(例如,mpm_idx)。例如,如果MPM配置为一种预测模式,则不会生成额外的MPM索引信息,如果MPM配置为多种预测模式,则MPM候选组可以生成与当前块的预测模式相对应的索引信息。
如果不与MPM相匹配(例如,most_probable_mode_flag=0),则在预测模式候选组中除MPM候选组以外的其余预测模式候选组(或非MPM候选组)中,可以生成与当前块的预测模式相对应的非MPM索引信息(例如,non_mpm_idx),这可以是一种对应于非MPM配置为一个组的情况的示例。
当非MPM候选组由多个组构成时,可以生成关于当前块的预测模式所属的组的信息。例如,非MPM由A组和B组构成,并且如果当前块的预测模式与A组的预测模式相匹配(例如,non_mpm_A_flag=1),则在A组候选组中可以生成与当前块的预测模式相对应的索引信息,如果不匹配(例如,non_mpm_A_flag=0),则在剩余的预测模式候选组(或B组候选组)中可以生成与当前块的预测模式相对应的索引信息。如以上示例,非MPM可以配置为至少一个预测模式候选组(或集),并且非MPM配置可以根据预测模式候选组确定。例如,当预测模式候选组为35个以下时,其可以为一个,在其他情况下可以为两个以上。
在这种情况下,A组可以将判断为MPM候选组以外具有最高概率与当前块的预测模式相匹配的模式配置为候选组。例如,可以将未包括在MPM候选组中的下一顺序预测模式包括在A组中,或者可以将具有预定间隔的方向性的预测模式包括在A组中。
当如上示例非MPM由多个组构成时,在预测模式的数量大且预测模式不会由MPM预测时,可以以减少模式比特量为目的支持非MPM。
当使用MPM执行当前块的预测模式编码(或预测模式解码)时,可以单独生成应用于每个预测模式候选组(例如,MPM候选组、非MPM候选组等)的二值化表,还可以单独应用应用于每个候选组的二值化方法。
在以上示例中,诸如MPM候选组、非MPM候选组等的术语仅是用于本发明中的一些术语,并不限于此。具体地,其表示关于将当前帧内的预测模式分为多个类别后所属类别的信息,以及该类别内的模式信息,作为其他表达方式,也可以用于诸如主MPM候选组、辅助MPM候选组等的术语。
通过预测模式编码部生成的关于预测的信息可以传输到编码部并收录在比特流中。
以下可以分为,当一个以上的参考像素集配置为参考像素候选组时,使用一个参考像素集的情况和使用两个以上的参考像素集的情况。
(1)使用一个参考像素集的情况
在此示例中,假设一种当多个参考像素集配置为候选组时,选择一个参考像素集(图29中的ref_0、ref_1、ref_2中的一个)用于帧内预测的情况。
当使用一个参考像素集执行帧内预测时,可能会发生以下情况。
可以采用使用参考像素集ref并通过参考像素生成,参考像素滤波、参考像素插值等预测前处理过程而获得的ref*来生成预测块P。
例如,通过参考像素滤波部对位于ref中的像素适用5抽头低通滤波,并且通过参考像素插值部对位于ref'(即,参考像素滤波之后的像素)中的像素适用6抽头线性插值滤波。并且,可以使用通过上述过程获得的ref*来生成预测块。
通过以下说明当使用单个参考像素集时的预测前处理过程。
例如,当使用图29中的参考像素集ref_2时,如果Ref_TL和Ref_TR的位置可用作参考像素且Ref_T的位置不可作为参考像素时,则可以通过可用的参考像素中相邻的P(-1,-3)与P(n,-3),生成Ref_T位置的P(0,-3)至P(n-1,-3)位置的像素,以配置为参考像素。
在通过以上过程配置参考像素之后,可以在生成预测块之前执行诸如参考像素滤波部和参考像素插值部等的部件。
在参考像素滤波部的情况下,可以在以目标像素为中心的相邻像素中应用滤波,通常,当应用于滤波器的像素数量增加时,可能会产生更精准的滤波效果(例如,平滑、锐化等)。
在参考像素插值部的情况下,可以在以要插值的像素为中心的相邻像素中应用滤波,并且当应用于滤波器的像素数量增加时,同样也可能会产生更精准的滤波效果。
所述两个步骤均作为执行滤波的过程,根据情况可能会产生不必要的滤波效果。即,当在每个步骤中应用滤波时所期望的效果,还可以在另一步骤中应用滤波时产生不利影响的情况下产生。
例如,在参考像素插值过程中,插值目标小数像素可以在相邻的整数像素中应用滤波,若假设在本示例中的先前步骤中应用参考像素滤波(即,应用于整数单位像素),则可以产生通过参考像素滤波减少每个整数像素的量化误差的效果,也可以产生通过在参考像素插值过程中使用所述像素,反而使量化误差进一步包括在插值的像素中的情况。
(S1.Ref平滑处理)
m*=v0xl'+v1xm'+v2xn'
m*=m+k1
(m是原始像素、m*是滤波后的像素、m'是滤波前的像素、l'和n'是相邻的执行滤波前的像素、v是滤波系数、k1是量化误差)
(S2.插值过程)
z*=(w0xa'+w1xb'+w2xc'+w3xd'+w4xe'+w5xf')
z*=z+k2
(z是推定为该位置的原始像素、z*是插值像素;a'至f'是相邻像素<未执行滤波>、w是滤波器系数、k2是量化误差)
(S3.Ref平滑过程+插值过程)
z**=(w0xa*+w1xb*+w2xc*+w3xd*+w4xe*+w5xf*)
z**=z+k3
(z是推定为该位置的原始像素、z**是插值像素;a*至f*是相邻的执行滤波后的像素、w是滤波器系数、k3是量化误差)
在以上等式中,参考像素滤波过程S1中的输入像素值为完成了编码/解码的相邻块的相邻像素,并且通过以上过程获得的输出值为具有较高可能性接近于在编码/解码时所包括的用于减少量化误差的原始像素的像素。
另外,参考像素插值过程S2中的输入像素值为完成了编码/解码的相邻块的相邻像素,并且通过以上过程获得的输出值为具有较高可能性接近于该像素位置的原始像素值的像素。通过该过程,对包括量化误差的相邻块的相邻像素应用加权和来获得插值像素(即,假设虽不是以减少量化误差为目的应用滤波,但通过所述过程也可减少量化误差),因此可能会获得减少了量化误差并接近于原始像素的像素。即,不仅可以生成小数单位像素,还可以存在低通滤波部的效果。
另一方面,在依次执行各过程的情况S3下,需要考虑关于是否可以保持各过程中所期望获得的效果的部分。也就是说,这是因为执行滤波与否(仅执行一个或执行两个等)、滤波器的类型(使用效果更好的滤波器或效果稍微好的滤波器;即,即使在该过程中产生良好的效果,却在其他过程中失去该效果、或反而导出不好的结果)、滤波器抽头的增加等不一定能保证良好的滤波效果。
(2)当使用多个以上的参考像素集的情况
在此示例中,假设一种多个参考像素集配置为候选组,选择两个以上的参考像素集(图29中的ref_1、ref_2、ref3中的两个以上)并用于帧内预测的情况。
当使用多个参考像素集执行帧内预测时,可能会发生以下情况。
<1>如图33中的a所示,可以通过参考像素集ref_A来生成第一预测块。即,可以采用使用ref_A并通过参考像素生成、参考像素滤波、参考像素插值等预测前处理过程获得的ref_A*来生成预测块PA。并且,可以使用通过ref_B的所述预测前处理过程获得的ref_B*来生成预测块PB。
可以通过所述获得的多个预测块来生成最终预测块P。
例如,通过参考像素滤波部对位于ref_A的像素应用3抽头低通滤波,并且可以通过参考像素对位于ref_A'(即,参考像素滤波之后的像素)的像素应用4抽头Cubic滤波。另外,对位于ref_B的像素应用5抽头低通滤波,并且可以对位于ref_B'(即,参考像素滤波之后的像素)的像素应用6抽头线性插值滤波。
并且,使用通过上述过程获得的ref_A*和ref_B*生成每个预测块,然后通过应用加权平均(例如,将高加权值,诸如3:1等应用于与当前块相邻的预测块)等来生成预测块。
<2>如图33中的b所示,可以通过参考像素集ref_A和ref_B来生成预测块。此时,可以采用使用ref_A和ref_B并通过参考像素生成、参考像素滤波、参考像素插值等预测前处理过程获得的ref*来生成预测块P。
例如,可以通过参考像素滤波部对位于ref_A的像素应用3抽头的低通滤波,并且可以通过参考像素插值部对位于ref_A'的像素应用4抽头立方滤波。另外,可以对位于ref_B的像素应用5抽头低通滤波,并且可以对位于ref_B'的像素应用2抽头线性插值滤波。
并且,可以使用通过上述过程获得的ref_A*和ref_B*,获取ref*之后生成预测块。即,可以在根据预测模式获得与每个参考像素集中帧内预测模式的方向性相对应的像素值(例如,ref_A*中的pa和ref_B*中的pb)之后,应用加权平均(例如,pa×A+pb×B)来生成预测块。
可以通过以上的<1>和<2>等方法(<1>是在每个参考像素集中生成预测块之后,以后应用预测块之间的加权平均,而<2>是在生成一个预测块的过程中应用像素之间的加权平均;即获得相同或相似的结果,但在过程中会有所差异),使用两个以上的像素集以生成预测块。
通过以下说明当使用两个以上的参考像素集时的预测前处理过程。
例如,当使用图29中的参考像素集ref_1和ref_2时,如果Ref_TL和Ref_TR的位置可用作参考像素且Ref_T的位置不可作为参考像素,则通过在参考像素集ref_1中可用的参考像素中的相邻的P(-1,-1)和P(n,-1),在ref_1中生成Ref_T位置的P(0,-1)至P(n-1,-1)位置的像素,并在参考像素集ref_2中可以通过可用的参考像素中的相邻的P(-1,-2)和P(n,-2),在ref_2中生成Ref_T位置的P(0,-2)至P(n-1,-2)位置的像素。
或者,在ref_1中的不可用像素位置处,可以使用ref_1和ref_2的可用像素生成预测块,并且也可以在ref_2的不可用像素位置处,如上所述使用ref_2和ref_1的可用像素生成预测块。
在参考像素滤波部的情况下,可以对以目标像素为中心相邻的像素应用滤波,并且在参考像素插值部的情况下,可以对以要插值的像素为中心相邻的像素应用滤波。
在此示例中,也同样如在使用(1)中的一个参考像素集来生成预测块的情况中所提到的,在滤波应用中产生不利的影响。
接着(1)中的过程,再假设(2)中的<1>情况执行进一步的描述。
(S4帧内预测过程)
P=v0xP1+v1+P2
上式表示通过对使用每个参考像素集而获得的预测块执行加权和,来获得最终预测块的过程。即,需要考虑关于利用在每个参考像素集中通过S3过程获得的值来获得预测块并应用该预测块的加权和,从而是否可以提高预测块的精度的部分。
对于需要通过(1)和(2)考虑的问题,一种方法可作为一种解决方案,其显式地选择多个候选组(例如,选择<无滤波或3抽头滤波或5抽头滤波>中的一个作为与参考像素滤波器有关的候选组,选择<4抽头滤波或6抽头滤波>中的一个作为与参考像素插值有关的候选组)中的一个,并且通过以下说明关于隐式确定的最佳方法。
通过以下实施例,说明使用一个参考像素集或使用两个以上的参考像素集来生成预测块时的帧内预测过程。
(3)使用一个参考像素集时的预测前处理过程
如图34中的a所示,可能需要一种为了用于预测的参考像素的临时存储器,并且可以具有主阵列或辅阵列。在此示例中,假设通过如图所示的主阵列配置参考像素。
如图所示,可以使用位于用于预测的参考像素集中的像素填充到ref。此时,可以在如参考像素生成部等配置或生成参考像素以配置ref之后,经过参考像素滤波部。通过参考像素滤波部获得的参考像素表示为ref'。此后,将对ref'执行参考像素插值过程而获得的参考像素表示为ref*,使用ref*可以生成预测块。
*整数单位像素:由ref'构成,小数单位像素:由使用ref'执行插值的ref*构成(图12中的b)
如以上示例中所述,针对ref*(ref*的整数单位像素与ref'相同),依次执行参考像素滤波过程和参考像素插值过程,因此将通过该过程获得的整数单位像素应用在小数单位的像素插值时,可以获得由于重复滤波而导致的准确度较低的参考像素。因此,有必要分别执行参考像素滤波过程和参考像素插值过程。
例如,可以省略参考像素滤波,并且可以仅执行参考像素插值。在这种情况下,用于预测的整数单位的像素可以是未应用参考像素滤波的现有相邻像素,小数单位的像素可以是以现有的相邻整数单位像素应用插值的像素。
*整数单位像素:由ref构成,小数单位像素:由使用ref执行插值的ref*构成(图34中的c)
或者,当对小数单位像素执行插值时,可以使用ref作为参考像素而不是ref'。在这种情况下,用于预测的整数单位的像素可以是应用了参考像素滤波的像素,小数单位的像素可以是以现有相邻像素作为执行参考像素滤波之前的像素,应用插值的像素。
*整数单位像素:由ref'构成,小数单位像素:由使用ref执行插值的ref*构成(图34中的d)。
通过在图34中的b至d示出了在ref中,对每个位置处的像素应用滤波的次数。图34中的c和d,示出了通过应用至多一次滤波来配置参考像素的示例。
(4)使用两个以上参考像素集时的预测前处理过程
为了便于描述,假设前述示例的(2)中的<2>情况,使用两个参考像素集来生成预测块。
在配置ref_A之后,可以经过参考像素滤波部获得ref_A',并且对ref_A'执行参考像素插值过程之后获得ref_A*,同样在ref_B的情况下,可以通过ref_B’获得ref_B*,并使用ref_A*和ref_B*(即,图34的b中的ref*)生成预测块。此时,可以根据预测模式,使用存在于ref_A*和ref_B*中的整数单位像素或小数单位像素来生成预测块。
如上所述,针对ref_A*、ref_B*,依次执行参考像素滤波过程和参考像素插值过程,因此将通过该过程获得的整数单位像素应用在小数单位的像素插值时,可以获得由于重复滤波而导致的准确度较低的参考像素。另外,由于位于两个以上的参考像素集中的像素可以以加权和等方式进一步执行滤波,因此可以获得对用于最终预测的像素执行过于多的次数的滤波的结果。
下面示出了用于预测像素的参考像素的各种组合。例如,可以根据预测模式的方向性,在ref_A和ref_B中使用两个整数单位像素来生成预测像素(例如,垂直模式、水平模式等),可以使用一个整数单位像素和一个小数单位像素生成预测像素(例如,定向模式等),并且可以使用两个小数单位像素来生成预测像素(例如,定向模式等)。这可以通过图35中的b至d确认。
在上述情况下,如图34中的b所示,假设将对单个参考像素集应用滤波的情况视为应用与其他参考像素集的加权平均值等的情况,则在图35中的b的应用滤波次数可以是2次,图35中的c是3次,图35中的d是4次。
对于上述情况,可以应用以下示例。
例如,可以在每个参考像素集中省略参考像素滤波,并且可以仅执行参考像素插值过程。此时,用于预测的整数单位可以是未应用参考像素滤波的现有相邻像素,小数单位的像素可以是以现有相邻整数单位像素应用插值的像素。
具体地,在参考像素滤波的情况下,对类似于目标像素的像素应用滤波可以更有效地减少量化误差。在此示例中,使用两个以上的参考像素集执行预测,意味着当前块的方向性也存在于包含该参考像素的块的边界处(也就是说,与当前块相邻的两个以上的参考像素集),因此,与过去一样,无论当前块的预测模式的方向性如何,仅使用最相邻的像素来执行滤波,与基于目标像素和原始像素值对可能不同的像素执行滤波是相同的。
或者,可以对每个参考像素集执行参考像素滤波和参考像素插值过程。然而,如图35中的b所示,当仅使用整数单位的像素来应用加权平均值时,可以使用应用了参考像素滤波的像素,并且如图35中的c所示,使用整数单位和小数单位的像素来应用加权平均时所使用的整数单位像素可以使用未应用参考像素滤波的像素。
通过以上示例,说明了在使用一个参考像素集的情况,以及在使用两个以上的参考像素集的情况下的预测预处理过程。
在以上示例中,虽以假设由于重复使用滤波器而产生不利影响的情况描述了一些情况,然而,不能定义图像的特征仅为一个,并且可以存在其他变形示例。
例如,针对(3)和(4),可以固定地使用(例如,与当前块的大小、形状、预测模式等状态无关),也可自适应地使用(例如,根据当前块的状态确定)。
所述自适应使用(3)和(4)的情况下,可以全部或部分应用(3)和(4)中的设置,在某些情况下,也可以更改或应用相反的示例。
作为一个示例,可以在(3)中的一些模式(例如,垂直、水平、具有45度、135度的角的对角线模式等)中执行5抽头(tap)低通滤波。在此示例中,由于不需要以小数单位的插值过程,因此可以执行精致的滤波(假设在此示例中抽头数越长越精致)以减少量化误差。
或者,在(3)中的一些模式(例如,定向模式等)中,可以执行3抽头低通滤波,并且可以执行6抽头高斯插值滤波。在此示例中,需要小数单位插值过程,并可以对整数单位的像素应用滤波执行简单滤波(例如,假设以下情况的滤波较为简单,即滤波器类型不同、减少应用滤波器的像素的数量、tap数量少),以减少多个滤波(此示例中,对整数单位应用参考像素滤波,并且在使用这些像素对小数单位像素执行插值时应用滤波)的量化误差等。即,可以是如图34中的b情况(当描述图12中的b时虽描述为现有情况,但在本示例中描述可以应用b情况而不是图34中的c和d情况)。
作为一个示例,在(3)中,在预定大小以上的块(例如,32×32)的情况下,可以执行5抽头低通滤波,并且执行4抽头三次插值滤波,但是应用于插值的像素可以将低通滤波之前的像素(即,整数单位像素)作为输入像素。并且,在小于预定大小的块的情况下,执行与上述过程相同的参考像素滤波和参考像素插值过程,但是应用于插值的像素可以将低通滤波之后的像素作为输入像素。
作为一个示例,在(4)中的一些模式(例如,垂直、水平模式等)中,可以对每个参考像素集执行5抽头低通滤波(即,使用相对于在其他定向模式下使用3抽头滤波器更精致的滤波器,或者使用不同类型的滤波器,即使它们具有相同的抽头数)。在此示例中,由于不需要插值过程,因此可以执行滤波以减少量化误差。或者,可以对与当前块相邻的参考像素集执行5抽头低通滤波,并且可以对下一个相邻的参考像素集执行3抽头低通滤波。在此示例中,可以对参考像素集(在此示例中,假设将加权值添加到靠近当前块的像素)执行精致的滤波,所述参考像素集对两个以上的参考像素集分配更高加权值。或者,对与当前块相邻的参考像素集执行5抽头低通滤波,并且对下一个相邻的参考像素集不执行低通滤波。在此示例中,可以理解为一种示例,将加权值更高的参考像素集的像素为中心,对与该像素所属的参考像素集相邻的像素,以及对其他参考像素集中与该像素相邻的像素应用低通滤波(即,如果在现有情况下是一维滤波,则在此示例中可以理解为二维滤波概念)。
并且,在(4)中的一些模式(例如,定向模式等)中,对每个参考像素集执行3抽头低通滤波,并且对与当前块相邻的参考像素集执行8抽头三次插值滤波,并且可以对下一个相邻的参考像素集执行2抽头线性插值滤波。或者,不对每个参考像素集执行低通滤波,对与当前块相邻的参考像素集执行6抽头高斯插值滤波,可以对下一个相邻的参考像素集执行4抽头高斯插值滤波。或者,可以对与当前块相邻的参考像素集执行5抽头低通滤波,对下一个相邻的参考像素集执行3抽头低通滤波,并且对每个参考像素集执行4抽头三次插值滤波。或者,对与当前块相邻的参考像素集A执行3抽头低通滤波,对下一个相邻的参考像素集B不执行低通滤波,且对与当前块相邻的参考像素集A执行8抽头高斯插值滤波,并且对下一个相邻的参考像素集B执行4抽头三次插值滤波。
作为一个示例,在(4)中,在具有预定大小以上(例如,64×64)的块的情况下,可以执行4抽头三次插值滤波,而不对每个参考像素集执行低通滤波。并且,在小于预设大小且大于预设大小以上的块(例如,16×16至64×64)中,对每个参考像素集执行3抽头低通滤波,且执行4抽头高斯插值滤波,但当用于加权平均的像素仅由整数单位像素集构成时,使用低通滤波之后的像素,当由整数单位与小数单位混合构成时,整数单位像素可以使用低通滤波之前的像素。另外,在小于预设大小(16×16)的块中,对每个参考像素集执行5抽头低通滤波,并执行6抽头三次插值滤波,而用于加权平均的像素,无论是整数单位还是小数单位均可使用低通滤波之后的像素。
通过以上示例,说明了使用一个参考像素集和使用两个以上的参考像素集等情况下的各种情况。
可以执行关于预测前处理过程的显式处理。即,可以生成一种选择信息,其关于使用一个参考像素集或者使用多个参考像素,也可以生成另一种选择信息,其关于针对参考像素滤波的设置不执行滤波或者使用滤波器A执行或使用滤波器B执行,并可以生成又一种选择信息,其关于针对参考像素插值设置使用滤波器A执行或者使用滤波器B执行。
或者,可以执行关于预测前处理过程的隐式处理。即,可以根据诸如块大小、形状和预测模式等编码信息(状态),隐式地确定上述参考像素集的数量、参考像素滤波设置和参考像素插值设置。此时,当参考像素集的数量确定为两个以上时,可以隐式地确定对多个参考像素集执行相同的参考像素滤波或参考像素插值设置或其他设置。
或者,可以执行关于预测前处理过程的混合处理。也就是说,在一些情况下,可以执行隐式处理,在另一些情况下,可以执行显式处理。此时,可以根据编码信息来确定混合处理的基准。即,可以根据某个块大小或形状或预测模式中至少一个以上的组合来确定隐式处理或显式处理。
在本发明中,将描述关于隐式处理或混合处理的情况。针对所述两个处理,可以基于编码信息配置帧内预测设置(例如,预测前处理等,以上被描述为只在预测前处理中具有自适应配置,但在帧内预测的其他过程<后述内容中配置帧内预测模式候选组,也就是说,由帧内预测模式的数量、预测方向等编码信息确定的情况>中也可以具有自适应配置)。
整理如下:
(编码器)
<1>确认当前块的大小和形状
-帧内预测模式候选组设置(即,确定模式数量、角度等,若为一个候选组,则可以省略此过程)
<2>确认当前块的大小、形状和预测模式(此时,预测模式由在上述过程中确定的帧内预测模式候选组中所定义)。
-参考像素集设置(即使用一个或两个以上)
-参考像素滤波设置(如果有两个以上的参考像素集,则可以在每个集合中确定滤波设置)
-参考像素插值设置(同样,如果有两个以上的参考像素集,则可以在每个集合中确定插值设置)
<3>帧内预测相关信息的编码(如果由于在预测模式和上述过程的各设置中存在多个候选组而生成选择信息,则该信息也包括在帧内预测信息)。
(解码器)
<1>确认当前块的大小、形状(在之前步骤中,块信息通过分割块部分析并确认相关信息)
-帧内预测模式候选组设置(根据该候选组分析并复原预测模式信息)
<2>确认当前块的大小、形状和预测模式
-参考像素设置
-参考像素滤波设置
-参考像素插值设置
<3>帧内预测相关信息的解码(预测模式和其他可选信息;该信息可以认为是在该步骤执行了分析)
在编码器中,可以根据当前块的状态来确认帧内预测模式候选组。即,确认使用具有几个模式数量和具有哪些模式配置的候选组。如果所有条件都具有相同的帧内预测模式候选组,则无关紧要,但若是使用两个以上的帧内预测模式候选组,则需要确认。即,可以根据当前块的状态得知要使用哪个候选组,或者可以通过信息显式地知道使用哪个候选组。
根据该过程分配预测模式编号等,但如果预测模式候选组不同,则每个预测模式的方向或角度等会根据候选组而不同,因此可能需要统一该候选组的过程。即,当使用图9中的预测模式时的50号可能是垂直模式,但在另一个预测模式候选组中的50号不一定是垂直模式,因此需要确认。
因此,在本发明中描述了操作、设置等根据预测模式是哪种模式而改变。
例如,假设通过if(intramode==Vertical)条件语句,需要确定是否执行帧内预测处理(例如,参考像素插值、参考像素滤波等)时,若intramode为50号,且使用一个预测模式候选组时可以直接确认,但是由于在帧内预测模式候选组中需要得知该模式处于哪种模式(定向模式或非定向模式;若是定向模式是否属于垂直或水平,若不是定向模式是否为仅使用整数像素生成预测块的定向模式等),因此可以在确认该预测模式候选组中的上述模式具有哪个方向的模式之后,输入到上述条件语句中。也就是说,如if(intramode<x>==Vertical),应该改变为在x的帧内预测模式候选组中模式x是否是垂直的过程。
另外,需要确认当前块的状态以确认帧内预测设置。在这种情况下,可以根据当前块的大小、形状、预测模式等中至少一个或多个因素来定义当前块的状态。根据当前块的状态来设置参考像素集、参考像素滤波、参考像素插值等。也就是说,可以确认参考像素集的数量、要使用哪个参考像素集、是否应用参考像素滤波以及要使用哪个滤波器。如果是显式地确认相关信息,则可能会生成标记(flag),如果是隐式地确认相关信息,则可以根据编码信息(上述的当前块的状态等,或者当前图像类型<I/P/B>、当前图像<Y/Cb/Cr>等可能会影响帧内预测设置)确定。
本发明总尽管以参考像素集、参考像素滤波和参考像素插值为中心进行了描述,但也可以包括针对与帧内预测有关的进一步设置。例如,在预测过程中,像过去一样,也可以根据编码信息来确定根据预测模式使用(外插、平均、内插)参考像素生成预测块,或者使用除了根据现有方向性使用的参考像素以外的其他参考像素等(例如,为了根据预测像素位置校正相应的预测像素,通过额外使用其他参考像素等生成校正值之后添加到现有预测值等)生成预测块等。在此情况下,显式地确认相关信息时,则通过相关信息也可以得知使用哪种预测方法,否则,在隐式地确认相关信息的情况下,通过当前块的状态等也可以确定使用哪种预测方法。
在解码器中,可以通过编码器的内容来反向导出相关描述。对于显式部分,则为分析相关信息,隐式部分也是根据编码信息等确认相关信息。
以上,可以一并考虑本发明中使用的参考像素集的数量而改变的设置内容部分来确定参考像素滤波设置和参考像素插值设置。
工业可用性
本发明可以用于编码/解码图像信号。

Claims (38)

1.一种帧内预测方法,其特征在于,应用于解码装置,包括:
导出当前块的帧内预测模式;
确定多个像素线中的用于所述当前块的帧内预测的像素线;
基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波;以及
基于所述帧内预测模式与已确定的像素线,执行所述当前块的帧内预测;
其中,所述第一标志是基于所述当前块的编码参数从所述解码装置导出的,以及所述编码参数包括是否应用子块为单位的帧内预测;所述基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波,包括:
若所述当前块没有应用子块为单位的帧内预测,则对所述当前块的第一参考像素执行滤波,否则,不对所述第一参考像素执行滤波。
2.根据权利要求1所述的帧内预测方法,其特征在于,
所述编码参数还包括块大小、分量类型、或者帧内预测模式中的至少一项。
3.根据权利要求1所述的帧内预测方法,其特征在于,还包括:
校正根据所述帧内预测的所述当前块的预测像素。
4.根据权利要求3所述的帧内预测方法,其特征在于,所述校正还包括:
基于所述当前块的预测像素的位置,确定用于所述校正的第二参考像素或加权值中的至少一个。
5.根据权利要求4所述的帧内预测方法,其特征在于,
通过考虑所述当前块的像素线的位置、所述当前块的帧内预测模式、或者是否执行所述当前块的子块为单位的帧内预测中的至少一项来选择性地执行所述校正。
6.根据权利要求1所述的帧内预测方法,其特征在于,
以当前块的子块为单位执行所述帧内预测,
基于关于是否执行分割的第二标志、分割方向信息、或者分割数量信息中的至少一个来确定所述子块。
7.根据权利要求1所述的帧内预测方法,其特征在于,还包括:
确定用于帧内预测的参考像素集;
在所述参考像素集的数量为一个的情况下,使用位于一个参考像素集中的像素生成预测块;或者,
在所述参考像素集的数量为两个以上的情况下,使用位于每个参考像素集中的至少一个像素生成预测块。
8.根据权利要求7所述的帧内预测方法,其特征在于,
在所述参考像素集的数量为两个以上的情况下,使用位于每个参考像素集中的像素值通过加权平均而导出的值生成所述预测块;
其中,所述像素值是从每个参考像素集中的一个像素或多个像素导出的值。
9.根据权利要求8所述的帧内预测方法,其特征在于,还包括:
根据所述当前块的相邻参考像素,自适应地确定所述参考像素集。
10.根据权利要求9所述的帧内预测方法,其特征在于,
在使用所述当前块的上侧和右上侧相邻的参考像素执行帧内预测时,确定所述参考像素集的数量为多个;
在使用所述当前块的左侧和左下侧相邻的参考像素执行帧内预测时,确定所述参考像素集的数量为一个。
11.根据权利要求1所述的帧内预测方法,其特征在于,还包括:
使用插值滤波器进行参考像素插值;
其中,所述使用插值滤波器包括使用一个预设的插值滤波器或者使用多个插值滤波器候选组中的一个。
12.根据权利要求11所述的帧内预测方法,其特征在于,
当使用多个插值滤波器候选组中的一个时,确定滤波器选择信息;
其中,所述滤波器选择信息是基于预设参数确定的,所述预设参数至少包括:块大小和预测模式。
13.根据权利要求11所述的帧内预测方法,其特征在于,
当所述多个插值滤波器候选组包括4抽头三次滤波器和四抽头高斯滤波器时,确定使用根据编码设置而应用的插值滤波器。
14.根据权利要求1所述的帧内预测方法,其特征在于,
基于预定默认模式或MPM候选组来导出所述帧内预测模式。
15.根据权利要求14所述的帧内预测方法,其特征在于,还包括:
将从所述MPM候选组中的已包括模式导出的模式配置为所述MPM候选组;
其中,所述导出的模式表示为与所述已包括模式的模式间隔的差为a的模式,a是非零整数。
16.根据权利要求15所述的帧内预测方法,其特征在于,还包括:
基于优先级,确定所述MPM候选组中包括的预测模式的顺序;
其中,所述优先级是根据相邻块的预测模式、预设预测模式、从首先包括在所述MPM候选组中的预测模式导出的模式的顺序确定的。
17.根据权利要求16所述的帧内预测方法,其特征在于,
在预设预测模式中,按照DC模式、平面模式、垂直模式、水平模式的顺序包括在所述MPM候选组中。
18.一种帧内预测方法,其特征在于,应用于编码装置,包括:
导出当前块的帧内预测模式;
确定多个像素线中的用于所述当前块的帧内预测的像素线;
基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波;以及
基于所述帧内预测模式与已确定的像素线,执行所述当前块的帧内预测;
其中,所述第一标志是基于所述当前块的编码参数从比特流中导出的,以及所述编码参数包括是否应用子块为单位的帧内预测;所述基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波,包括:
如果所述当前块没有应用子块为单位的帧内预测,则对所述当前块的第一参考像素执行滤波,否则,不对所述第一参考像素执行滤波。
19.根据权利要求18所述的帧内预测方法,其特征在于,还包括:
所述编码参数还包括块大小、分量类型、或者帧内预测模式中的至少一项。
20.根据权利要求18所述的帧内预测方法,其特征在于,还包括:
校正根据所述帧内预测的所述当前块的预测像素。
21.根据权利要求20所述的帧内预测方法,其特征在于,所述校正还包括:
基于所述当前块的预测像素的位置,确定用于所述校正的第二参考像素或加权值中的至少一个。
22.根据权利要求21所述的帧内预测方法,其特征在于,
通过考虑所述当前块的像素线的位置、所述当前块的帧内预测模式、或者是否执行所述当前块的子块为单位的帧内预测中的至少一项来选择性地执行所述校正。
23.根据权利要求18所述的帧内预测方法,其特征在于,
以当前块的子块为单位执行所述帧内预测,
基于关于是否执行分割的第二标志、分割方向信息、或者分割数量信息中的至少一个来确定所述子块。
24.根据权利要求18所述的帧内预测方法,其特征在于,还包括:
确定用于帧内预测的参考像素集;
在所述参考像素集的数量为一个的情况下,使用位于一个参考像素集中的像素生成预测块;或者,
在所述参考像素集的数量为两个以上的情况下,使用位于每个参考像素集中的至少一个像素生成预测块。
25.根据权利要求24所述的帧内预测方法,其特征在于,
在所述参考像素集的数量为两个以上的情况下,使用位于每个参考像素集中的像素值通过加权平均而导出的值生成所述预测块;
其中,所述像素值是从每个参考像素集中的一个像素或多个像素导出的值。
26.根据权利要求24所述的帧内预测方法,其特征在于,还包括:
根据所述当前块的相邻参考像素,自适应地确定所述参考像素集。
27.根据权利要求26所述的帧内预测方法,其特征在于,
在使用所述当前块的上侧和右上侧相邻的参考像素执行帧内预测时,确定所述参考像素集的数量为多个;
在使用所述当前块的左侧和左下侧相邻的参考像素执行帧内预测时,确定所述参考像素集的数量为一个。
28.根据权利要求18所述的帧内预测方法,其特征在于,还包括:
使用插值滤波器进行参考像素插值;
其中,所述使用插值滤波器包括使用一个预设的插值滤波器或者使用多个插值滤波器候选组中的一个。
29.根据权利要求28所述的帧内预测方法,其特征在于,
当使用多个插值滤波器候选组中的一个时,确定滤波器选择信息;
其中,所述滤波器选择信息是基于预设参数确定的,所述预设参数至少包括:块大小和预测模式。
30.根据权利要求28所述的帧内预测方法,其特征在于,
当所述多个插值滤波器候选组包括4抽头三次滤波器和四抽头高斯滤波器时,确定使用根据编码设置而应用的插值滤波器。
31.根据权利要求18所述的帧内预测方法,其特征在于,
基于预定默认模式或MPM候选组来导出所述帧内预测模式。
32.根据权利要求31所述的帧内预测方法,其特征在于,还包括:
将从所述MPM候选组中的已包括模式导出的模式配置为所述MPM候选组;
其中,所述导出的模式表示为与所述已包括模式的模式间隔的差为a的模式,a是非零整数。
33.根据权利要求32所述的帧内预测方法,其特征在于,还包括:
基于优先级,确定所述MPM候选组中包括的预测模式的顺序;
其中,所述优先级是根据相邻块的预测模式、预设预测模式、从首先包括在所述MPM候选组中的预测模式导出的模式的顺序确定的。
34.根据权利要求33所述的帧内预测方法,其特征在于,
在预设预测模式中,按照DC模式、平面模式、垂直模式、水平模式的顺序包括在所述MPM候选组中。
35.一种解码装置,其特征在于,包括:
预测模式解码部,被配置为导出当前块的帧内预测模式;
参考像素配置部,被配置为确定多个像素线中的用于所述当前块的帧内预测的像素线;以及
参考像素滤波部,被配置为基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波;
预测块生成部,被配置为基于所述帧内预测模式与已确定的像素线,执行所述当前块的帧内预测;
其中,所述第一标志是基于所述当前块的编码参数从所述解码装置导出的,以及所述编码参数包括是否应用子块为单位的帧内预测;所述参考像素滤波部,具体被配置为如果所述当前块没有应用子块为单位的帧内预测,则对所述当前块的第一参考像素执行滤波,否则,不对所述第一参考像素执行滤波。
36.一种编码装置,其特征在于,包括:
预测模式确定部,被配置为导出当前块的帧内预测模式;
参考像素配置部,被配置为确定多个像素线中的用于所述当前块的帧内预测的像素线;以及
参考像素滤波部,被配置为基于指示用于帧内预测的第一参考像素是否被滤波的第一标志,选择性地对所确定的像素线的第一参考像素执行滤波;
预测块生成部,被配置为基于所述帧内预测模式与已确定的像素线,执行所述当前块的帧内预测;
其中,所述第一标志是基于所述当前块的编码参数从比特流中导出的,以及所述编码参数包括是否应用子块为单位的帧内预测;所述参考像素滤波部,具体被配置为如果所述当前块没有应用子块为单位的帧内预测,则对所述当前块的第一参考像素执行滤波,否则,不对所述第一参考像素执行滤波。
37.一种计算装置,其特征在于,包括:
存储器,用于存储能够在处理器上执行的程序;
处理器,用于在执行所述程序时,实现如权利要求1至17任一项所述的帧内预测方法、或者如权利要求18至34任一项所述的帧内预测方法。
38.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序,所述程序被执行时实现权利要求1至17任一项所述的帧内预测方法、或者如权利要求18至34任一项所述的帧内预测方法。
CN202110406581.9A 2018-06-25 2019-06-25 帧内预测方法和装置 Active CN113347423B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110406581.9A CN113347423B (zh) 2018-06-25 2019-06-25 帧内预测方法和装置

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
KR20180072558 2018-06-25
KR10-2018-0072558 2018-06-25
KR10-2018-0076783 2018-07-02
KR20180076783 2018-07-02
PCT/KR2019/007651 WO2020004900A1 (ko) 2018-06-25 2019-06-25 화면내 예측 방법 및 장치
CN202110406581.9A CN113347423B (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN201980042368.5A CN112740670A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201980042368.5A Division CN112740670A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置

Publications (2)

Publication Number Publication Date
CN113347423A CN113347423A (zh) 2021-09-03
CN113347423B true CN113347423B (zh) 2023-04-21

Family

ID=68987398

Family Applications (6)

Application Number Title Priority Date Filing Date
CN202110406581.9A Active CN113347423B (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310351940.4A Pending CN116456095A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN201980042368.5A Pending CN112740670A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310350961.4A Pending CN116437082A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310352558.5A Pending CN116456096A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310350781.6A Pending CN116471409A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置

Family Applications After (5)

Application Number Title Priority Date Filing Date
CN202310351940.4A Pending CN116456095A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN201980042368.5A Pending CN112740670A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310350961.4A Pending CN116437082A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310352558.5A Pending CN116456096A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置
CN202310350781.6A Pending CN116471409A (zh) 2018-06-25 2019-06-25 帧内预测方法和装置

Country Status (15)

Country Link
US (5) US11528505B2 (zh)
EP (1) EP3800883A4 (zh)
JP (5) JP7373509B2 (zh)
KR (1) KR20210016472A (zh)
CN (6) CN113347423B (zh)
AU (1) AU2019292266B2 (zh)
BR (1) BR112020026381A2 (zh)
CA (1) CA3105023C (zh)
CL (1) CL2020003298A1 (zh)
IL (1) IL279503A (zh)
MX (1) MX2020014112A (zh)
PH (1) PH12020552258A1 (zh)
SG (1) SG11202013040VA (zh)
WO (1) WO2020004900A1 (zh)
ZA (1) ZA202100055B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117834909A (zh) * 2018-07-02 2024-04-05 英迪股份有限公司 对视频进行解码的方法和对视频进行编码的方法
WO2020060233A1 (ko) * 2018-09-20 2020-03-26 엘지전자 주식회사 인트라 예측을 수행하는 영상 예측 방법 및 장치
CA3113370A1 (en) * 2018-09-21 2020-03-26 Huawei Technologies Co., Ltd. Intra prediction mode derivation based on neighboring blocks
WO2020071871A1 (ko) * 2018-10-05 2020-04-09 엘지전자 주식회사 영상 서비스 처리 방법 및 그 장치
CN117221531A (zh) 2018-10-09 2023-12-12 Lg 电子株式会社 使用mpm列表的基于帧内预测的图像编译方法及其设备
CN112219397A (zh) * 2018-11-27 2021-01-12 株式会社 Xris 用于对视频信号编码/解码的方法及其装置
US11445203B2 (en) * 2019-01-04 2022-09-13 Qualcomm Incorporated Sub-partition intra prediction in video coding
CN112514384A (zh) 2019-01-28 2021-03-16 株式会社 Xris 视频信号编码/解码方法及其装置
KR20200106589A (ko) * 2019-03-04 2020-09-15 삼성디스플레이 주식회사 표시 장치, 표시 장치의 제조장치 및 표시 장치의 제조방법
EP3959880A4 (en) * 2019-05-10 2023-04-26 HFI Innovation Inc. METHOD AND APPARATUS FOR DERIVING A LIST OF MOST LIKELY LUMINANCE MODES FOR VIDEO CODING
WO2020256466A1 (ko) * 2019-06-19 2020-12-24 한국전자통신연구원 화면 내 예측 모드 및 엔트로피 부호화/복호화 방법 및 장치
BR112021026544A2 (pt) * 2019-06-24 2022-02-15 Lg Electronics Inc Método de codificação/decodificação de imagem, aparelho e método para transmitir fluxo de bits usando ajuste de tamanho máximo de transformação do bloco de croma
CN117376556A (zh) * 2019-08-14 2024-01-09 北京字节跳动网络技术有限公司 位置相关帧内预测样点滤波
BR112022005406A2 (pt) * 2019-09-30 2022-11-29 Huawei Tech Co Ltd Restrições de modelo de movimento afim para redução de largura de banda de memória de filtro de interpolação aprimorado
US11557635B2 (en) 2019-12-10 2023-01-17 Samsung Display Co., Ltd. Display device, mask assembly, and apparatus for manufacturing the display device
US20220060734A1 (en) * 2020-08-21 2022-02-24 Alibaba Group Holding Limited Intra prediction methods in video coding
US20220201329A1 (en) * 2020-12-22 2022-06-23 Qualcomm Incorporated Intra prediction using enhanced interpolation filters
US20220400255A1 (en) * 2021-06-11 2022-12-15 Tencent America LLC Intra Mode Coding
CN113794882B (zh) * 2021-08-31 2023-12-29 绍兴市北大信息技术科创中心 一种帧内快速编码方法
CN114420066B (zh) * 2022-01-20 2023-04-25 海宁奕斯伟集成电路设计有限公司 图像处理方法、装置、电子设备及计算机可读存储介质
WO2023164245A1 (en) * 2022-02-28 2023-08-31 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices for decoder-side intra mode derivation
WO2024053987A1 (ko) * 2022-09-06 2024-03-14 주식회사 윌러스표준기술연구소 기하학적 분할을 이용하는 비디오 신호 처리 방법 및 이를 위한 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878719A (zh) * 2010-07-31 2017-06-20 M&K控股株式会社 图像编码装置

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008102805A1 (ja) 2007-02-23 2008-08-28 Nippon Telegraph And Telephone Corporation 映像符号化方法及び復号方法、それらの装置、それらのプログラム並びにプログラムを記録した記録媒体
KR101452860B1 (ko) 2009-08-17 2014-10-23 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
MX2012012443A (es) 2010-04-26 2012-11-21 Panasonic Corp Modo de filtrado para intra-prediccion deducida de estadisticas de bloques circundantes.
CN101854551B (zh) * 2010-06-08 2012-08-15 浙江大学 帧内预测模式编解码方法及装置
EP2747436A1 (en) * 2010-07-15 2014-06-25 Kabushiki Kaisha Toshiba Image decoding method using transform matrices
KR101756442B1 (ko) 2010-11-29 2017-07-11 에스케이텔레콤 주식회사 인트라예측모드의 중복성을 최소화하기 위한 영상 부호화/복호화 방법 및 장치
JP5478740B2 (ja) * 2011-01-12 2014-04-23 三菱電機株式会社 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
KR101444667B1 (ko) * 2011-01-15 2014-09-30 에스케이 텔레콤주식회사 양방향 인트라 예측을 이용한 영상 부호화/복호화 방법 및 장치
US9654785B2 (en) 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
KR20120140181A (ko) * 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
US9179148B2 (en) * 2011-06-30 2015-11-03 Futurewei Technologies, Inc. Simplified bilateral intra smoothing filter
KR20130049522A (ko) 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 방법
KR20130049526A (ko) 2011-11-04 2013-05-14 오수미 복원 블록 생성 방법
KR102289112B1 (ko) 2012-11-30 2021-08-13 소니그룹주식회사 화상 처리 장치 및 방법
US9451254B2 (en) 2013-07-19 2016-09-20 Qualcomm Incorporated Disabling intra prediction filtering
CN115134593A (zh) 2015-06-05 2022-09-30 杜比实验室特许公司 用于执行帧间预测的图像编解码方法、比特流存储方法
EP3453180A4 (en) 2016-05-04 2020-04-01 Microsoft Technology Licensing, LLC INTRA-IMAGE PREDICTION USING NON-ADJACENT REFERENCE LINES OF SAMPLE VALUES
CA3025520A1 (en) 2016-05-25 2017-11-30 Arris Enterprises Llc Improved weighted angular prediction coding for intra coding
US10230961B2 (en) * 2016-06-03 2019-03-12 Mediatek Inc. Method and apparatus for template-based intra prediction in image and video coding
US10397569B2 (en) * 2016-06-03 2019-08-27 Mediatek Inc. Method and apparatus for template-based intra prediction in image and video coding
CN113873240A (zh) * 2016-06-24 2021-12-31 株式会社Kt 用于处理视频信号的方法和设备
CN109479129B (zh) 2016-07-18 2023-07-11 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
CL2016002047A1 (es) 2016-08-12 2017-03-17 Oculus Machina S P A Un método para realizar la detección de elementos mediante una segmentación dentro de en una secuencia ordenada de datos digitales.
US10390015B2 (en) 2016-08-26 2019-08-20 Qualcomm Incorporated Unification of parameters derivation procedures for local illumination compensation and cross-component linear model prediction
CN109691099B (zh) * 2016-09-13 2023-10-27 韩国电子通信研究院 视频编码/解码方法和装置以及在其中存储比特流的记录介质
JP6669622B2 (ja) 2016-09-21 2020-03-18 Kddi株式会社 動画像復号装置、動画像復号方法、動画像符号化装置、動画像符号化方法及びコンピュータ可読記録媒体
US10382781B2 (en) 2016-09-28 2019-08-13 Qualcomm Incorporated Interpolation filters for intra prediction in video coding
WO2018066989A1 (ko) * 2016-10-04 2018-04-12 김기백 영상 데이터 부호화/복호화 방법 및 장치
CN117857784A (zh) * 2016-10-14 2024-04-09 世宗大学校产学协力团 影像编码/解码方法及比特流的传送方法
KR102357282B1 (ko) * 2016-10-14 2022-01-28 세종대학교산학협력단 영상의 부호화/복호화 방법 및 장치
WO2018212569A1 (ko) * 2017-05-16 2018-11-22 엘지전자(주) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
SG11202012036QA (en) * 2018-01-15 2021-01-28 Ki Baek Kim Intra prediction encoding/decoding method and device for chrominance components
CA3125318A1 (en) * 2018-12-28 2020-07-02 B1 Institute Of Image Technology, Inc. Intra prediction-based video encoding/decoding method and device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878719A (zh) * 2010-07-31 2017-06-20 M&K控股株式会社 图像编码装置

Also Published As

Publication number Publication date
CA3105023A1 (en) 2020-01-02
KR20210016472A (ko) 2021-02-15
US11930210B2 (en) 2024-03-12
BR112020026381A2 (pt) 2021-03-23
JP2021529461A (ja) 2021-10-28
EP3800883A1 (en) 2021-04-07
US20220385923A1 (en) 2022-12-01
AU2019292266B2 (en) 2023-02-09
JP2023179781A (ja) 2023-12-19
MX2020014112A (es) 2021-06-15
WO2020004900A1 (ko) 2020-01-02
CL2020003298A1 (es) 2021-06-04
JP2023179782A (ja) 2023-12-19
IL279503A (en) 2021-01-31
CN112740670A (zh) 2021-04-30
CN116471409A (zh) 2023-07-21
US20230047534A1 (en) 2023-02-16
US20220385919A1 (en) 2022-12-01
US20210176492A1 (en) 2021-06-10
CN113347423A (zh) 2021-09-03
CN116456096A (zh) 2023-07-18
JP2023179783A (ja) 2023-12-19
ZA202100055B (en) 2022-09-28
JP2023179784A (ja) 2023-12-19
US11936906B2 (en) 2024-03-19
AU2019292266A1 (en) 2021-01-28
US11528505B2 (en) 2022-12-13
JP7373509B2 (ja) 2023-11-02
PH12020552258A1 (en) 2021-06-07
US11936907B2 (en) 2024-03-19
SG11202013040VA (en) 2021-01-28
CA3105023C (en) 2023-03-14
CN116437082A (zh) 2023-07-14
EP3800883A4 (en) 2021-07-07
US11936908B2 (en) 2024-03-19
CN116456095A (zh) 2023-07-18
US20220394274A1 (en) 2022-12-08

Similar Documents

Publication Publication Date Title
CN113347423B (zh) 帧内预测方法和装置
US11368675B2 (en) Method and device for encoding and decoding intra-frame prediction
CN111937395A (zh) 用于编码/解码图像的方法和装置
EP3657789A1 (en) Method and apparatus for encoding/decoding image
CN112335249A (zh) 用于编码/解码图像的方法和装置
CN112740699A (zh) 图像编码/解码方法和装置
RU2795549C2 (ru) Способ и устройство для внутрифреймового предсказания
RU2816427C2 (ru) Способ и устройство для внутрифреймового предсказания
RU2815921C2 (ru) Способ и устройство для внутрифреймового предсказания
RU2817117C2 (ru) Способ и устройство для внутрифреймового предсказания
RU2816201C2 (ru) Способ и устройство для внутрифреймового предсказания
CN111602400A (zh) 用于色度分量的帧内预测编码/解码方法和装置

Legal Events

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