CN112740691A - 用于编码和解码表示至少一个图像的数据流的方法和设备 - Google Patents
用于编码和解码表示至少一个图像的数据流的方法和设备 Download PDFInfo
- Publication number
- CN112740691A CN112740691A CN201980061935.1A CN201980061935A CN112740691A CN 112740691 A CN112740691 A CN 112740691A CN 201980061935 A CN201980061935 A CN 201980061935A CN 112740691 A CN112740691 A CN 112740691A
- Authority
- CN
- China
- Prior art keywords
- current block
- encoding
- block
- pixel
- prediction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 239000001797 sucrose acetate isobutyrate Substances 0.000 claims abstract description 6
- 239000001816 polyoxyethylene sorbitan tristearate Substances 0.000 claims abstract description 4
- 235000010988 polyoxyethylene sorbitan tristearate Nutrition 0.000 claims abstract description 4
- 238000004590 computer program Methods 0.000 claims description 14
- 239000004289 sodium hydrogen sulphite Substances 0.000 claims description 4
- 235000010267 sodium hydrogen sulphite Nutrition 0.000 claims description 4
- 239000004296 sodium metabisulphite Substances 0.000 claims description 3
- 235000010262 sodium metabisulphite Nutrition 0.000 claims description 3
- 238000013139 quantization Methods 0.000 description 30
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 230000006835 compression Effects 0.000 description 7
- 238000007906 compression Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 239000000661 sodium alginate Substances 0.000 description 3
- 239000004299 sodium benzoate Substances 0.000 description 3
- 235000010234 sodium benzoate Nutrition 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 239000005711 Benzoic acid Substances 0.000 description 2
- 239000004301 calcium benzoate Substances 0.000 description 2
- 235000010237 calcium benzoate Nutrition 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 239000004403 ethyl p-hydroxybenzoate Substances 0.000 description 2
- 235000010228 ethyl p-hydroxybenzoate Nutrition 0.000 description 2
- 239000000594 mannitol Substances 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 239000001814 pectin Substances 0.000 description 2
- 235000010987 pectin Nutrition 0.000 description 2
- 239000000256 polyoxyethylene sorbitan monolaurate Substances 0.000 description 2
- 235000010486 polyoxyethylene sorbitan monolaurate Nutrition 0.000 description 2
- 239000001818 polyoxyethylene sorbitan monostearate Substances 0.000 description 2
- 235000010989 polyoxyethylene sorbitan monostearate Nutrition 0.000 description 2
- 239000004300 potassium benzoate Substances 0.000 description 2
- 235000010235 potassium benzoate Nutrition 0.000 description 2
- 235000010413 sodium alginate Nutrition 0.000 description 2
- 239000004291 sulphur dioxide Substances 0.000 description 2
- 235000010269 sulphur dioxide Nutrition 0.000 description 2
- 239000001842 Brominated vegetable oil Substances 0.000 description 1
- 239000001828 Gelatine Substances 0.000 description 1
- 239000001825 Polyoxyethene (8) stearate Substances 0.000 description 1
- 239000004285 Potassium sulphite Substances 0.000 description 1
- 239000001852 Succistearin Substances 0.000 description 1
- 239000001809 ammonium phosphatide Substances 0.000 description 1
- 235000010986 ammonium phosphatide Nutrition 0.000 description 1
- 235000010233 benzoic acid Nutrition 0.000 description 1
- 239000004294 calcium hydrogen sulphite Substances 0.000 description 1
- 235000010260 calcium hydrogen sulphite Nutrition 0.000 description 1
- 239000004295 calcium sulphite Substances 0.000 description 1
- 235000010261 calcium sulphite Nutrition 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000001806 glycerol esters of wood rosin Substances 0.000 description 1
- 235000010985 glycerol esters of wood rosin Nutrition 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000002620 method output Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000001194 polyoxyethylene (40) stearate Substances 0.000 description 1
- 235000011185 polyoxyethylene (40) stearate Nutrition 0.000 description 1
- 239000000244 polyoxyethylene sorbitan monooleate Substances 0.000 description 1
- 235000010482 polyoxyethylene sorbitan monooleate Nutrition 0.000 description 1
- 239000000249 polyoxyethylene sorbitan monopalmitate Substances 0.000 description 1
- 235000010483 polyoxyethylene sorbitan monopalmitate Nutrition 0.000 description 1
- 239000004297 potassium metabisulphite Substances 0.000 description 1
- 235000010263 potassium metabisulphite Nutrition 0.000 description 1
- 239000004405 propyl p-hydroxybenzoate Substances 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004402 sodium ethyl p-hydroxybenzoate Substances 0.000 description 1
- 235000010226 sodium ethyl p-hydroxybenzoate Nutrition 0.000 description 1
- GEHJYWRUCIMESM-UHFFFAOYSA-L sodium sulphite Substances [Na+].[Na+].[O-]S([O-])=O GEHJYWRUCIMESM-UHFFFAOYSA-L 0.000 description 1
- 235000010265 sodium sulphite Nutrition 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/182—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明涉及一种用于对代表被分割成块的至少一个图像的编码的数据流进行解码的方法。对于被称为当前块的、图像的至少一个块,确定当前块的尺寸是否小于或等于预定阈值。如果当前块的尺寸小于或等于预定阈值,则该方法包括解码(E42)指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由所述信息项指示的编码模式重构当前块,否则根据第一编码模式重构当前块。第一编码模式对应于使用针对当前块解码的变换的预测残差的逆变换来重构(E436)当前块所依据的编码模式,并且第二编码模式对应于通过以下方式重构(E444)当前块所依据的编码模式:对于当前块的每个像素,从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,以及根据获得的所述像素的预测和与所述像素相关联的解码的预测残差来重构所述像素。
Description
技术领域
本发明的领域是编码和解码图像或图像的序列,特别是视频流。
更具体地,本发明涉及使用图像的块表示来压缩图像或图像的序列。
本发明可以显著地应用于在当前或未来编码器(JPEG、MPEG、H.264、HEVC等及其修改)中实现的图像或视频编码,以及应用于对应的解码。
背景技术
数字图像和图像的序列在内存器方面占用大量空间,这要求在传输这些图像时对其进行压缩,以避免在用于此传输的网络上出现拥塞问题。
已知许多用于压缩视频数据的技术。其中,HEVC压缩标准(“High EfficiencyVideo Coding,Coding Tools and Specification”,Matthias Wien,Signals andCommunication Technology,2015)提出要实现当前图像的像素相对于属于同一图像的其他像素的的预测(帧内预测)或相对于先前或后续图像的其他像素的预测(帧间预测)。
更具体地,帧内预测使用图像内的空间冗余。为此,图像被分割成像素的块。然后,根据图像中的块的扫描顺序,使用对应于当前图像中的先前编码/解码的块的已经重构的信息来预测像素的块。
此外,以标准方式,使用被称为预测子块(predictor block)的当前块的预测和对应于当前块和预测子块之间的差异的预测残差或“残差块”、来执行当前块的编码。然后,例如使用DCT(discrete cosine transform,离散余弦变换)类型的变换来变换所得到的残差块。然后,变换后的残差块的系数被量化,通过熵编码进行编码,并被传输到解码器,解码器可以通过将该残差块添加到预测子块来重构当前块。
解码是逐个图像(image by image)地完成的,并且对于每个图像,是逐个块(block by block)地完成。对于每个块,读取流的对应元素。执行残差块的系数的去量化和逆变换。然后,计算块预测以获得预测子块,并且通过将预测(即预测子块)添加到解码的残差块来重构当前块。
在US9253508中,用于以帧内模式编码块的DPCM(Differential Pulse CodeModulation,差分脉冲编码调制)编码技术被集成到HEVC编码器中。这种技术在于通过先前已经重构的相同块的另一像素集合来预测帧内块的像素集合。在US9253508中,要编码的帧内块的像素集合对应于块的行、或列、或行和列,并且用于预测该像素集合的帧内预测是HEVC标准中定义的方向帧内预测之一。
然而,这样的技术不是最佳的。事实上,帧内块的像素集合的重构对应于在无损编码的情况下添加预测残差、从而提供相当低的压缩比,或者对应于在用作预测的所述另一像素集合的逆变换和/或去量化之后添加预测残差。因此,这种技术不能使用局部预测函数来预测帧内块的每个像素,并且在预测后续像素之前重构预测像素。实际上,这种技术需要重构像素集合(例如块的行/列),以预测另一像素集合。换句话说,随着块的部分的每次预测和重构,块的几个像素被预测和重构。
此外,在US9253508中,没有描述如何使例如在HEVC标准中定义的传统帧内预测模式和DPCM预测模式共存。
因此,需要新的编码和解码方法来改善图像或视频数据的压缩。
发明内容
本发明改进了现有技术。为此,本发明涉及一种用于对代表被分割成块的至少一个图像的编码的数据流进行解码的方法。该解码方法包括,对于被称为当前块的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则该方法包括解码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由解码的编码模式信息项指示的编码模式重构当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式重构当前块。
第一编码模式对应于使用针对当前块解码的变换的预测残差的逆变换来重构当前块所依据的编码模式,并且第二编码模式对应于通过以下方式重构当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,
-根据获得的所述像素的预测和与所述像素相关联的解码的预测残差来重构所述像素。
因此,根据本发明,仅在当前块具有小于或等于预定阈值的尺寸的情况下,才在流中编码/解码指示传统帧内编码模式和使用基于当前块的先前重构像素的预测的编码模式当中的、当前块的编码模式的信息项。
在当前块具有大于预定阈值的尺寸的情况下,当前块可以例如默认地由传统帧内编码模式编码,例如,在对INTRA类型的图像进行编码的情况下,或通过任何其他编码模式进行编码。
仅对于具有小于或等于预定阈值的尺寸的块指示第一编码模式和第二编码模式之间的编码模式的优点是速率增加。实际上,第二编码模式要求每个像素的残差的传输,因此要求与以像素的数量表示的块的面积成比例的速率。当当前块具有小尺寸时,与第一编码模式相比,第二编码模式在压缩方面是有趣的。
此外,解码器的硬件实现成本降低,因为支持根据第二编码模式对块进行解码的电路可以被限制在块的小面积内。
有利地,本发明还允许编码器处的速度增益,因为编码器不必测试大块尺寸的两种编码模式,这也消耗了大部分计算时间。
本发明还涉及一种用于编码代表被分割成块的至少一个图像的数据流的方法。根据本发明,该编码方法包括,对于被称为当前块的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则该方法包括编码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由编码的编码模式信息项指示的编码模式编码当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式编码当前块。
第一编码模式对应于使用当前块的预测残差的变换来编码当前块所依据的编码模式,第二编码模式对应于通过以下方式来编码当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,
-编码与所述像素相关联并且从针对所述像素获得的预测中获得的预测残差。
根据本发明的特定实施例,当前块的尺寸对应于当前块的最大宽度。例如,预定阈值是16像素或32像素。其他阈值当然是可能的。
根据本发明的另一特定实施例,当前块的尺寸对应于当前块中的像素总数。例如,预定阈值是256像素或512像素。其他阈值当然是可能的。
根据上述特定实施例中的任何一个,可以根据图像的初始分割块的最大尺寸来调整阈值。
根据本发明的另一特定实施例,预定阈值在数据流中被解码或编码。
本发明还涉及一种解码设备,该解码设备被配置为实现根据以上定义的特定实施例中的任何一个的解码方法。当然,该解码设备可以包括与根据本发明的解码方法相关的不同特征。因此,该解码设备的特征和优点与解码方法的特征和优点相同,并且不再进一步详述。
该解码设备特别包括处理器,该处理器被配置为,对于被称为当前块的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则解码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由解码的编码模式信息项指示的编码模式重构当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式重构当前块,
第一编码模式对应于使用针对当前块解码的变换的预测残差的逆变换来重构当前块所依据的编码模式,并且第二编码模式对应于通过以下方式重构当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,
-根据获得的所述像素的预测和与所述像素相关联的解码的预测残差来重构所述像素。
根据本发明的特定实施例,这种解码设备被包含在终端中。
本发明还涉及一种编码设备,该编码设备被配置为实现根据上述特定实施例中的任何一个的编码方法。当然,该编码设备可以包括与根据本发明的编码方法相关的不同特征。因此,该编码装置的特征和优点与编码方法的特征和优点相同,并且不再进一步详述。
该编码设备特别包括处理器,该处理器被配置为,对于被称为当前块的、具有小于或等于预定阈值的尺寸的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则编码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由编码的编码模式信息项指示的编码模式编码当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式编码当前块,
第一编码模式对应于使用当前块的预测残差的变换来编码当前块所依据的编码模式,第二编码模式对应于通过以下方式来编码当前块的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,
-编码与所述像素相关联并且从针对所述像素获得的预测中获得的预测残差。
根据本发明的特定实施例,这种编码设备被包含在终端或服务器中。
本发明还涉及代表被分割成块的至少一个图像的编码的数据流。根据本发明,对于被称为当前块的、图像的至少一个块,如果当前块的尺寸小于或等于预定阈值,则编码的数据流包括指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项。
当当前块的编码模式对应于第一编码模式时,或者如果当前块具有大于预定阈值的尺寸,则编码的数据流包括编码的变换的预测残差。
当当前块的编码模式对应于第二编码模式并且当前块具有小于或等于预定阈值的尺寸时,编码的数据流包括通过以下方式获得的编码的预测残差:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于图像的先前解码的块,
-从为所述像素获得的预测中获得与所述像素相关联的预测残差。
根据本发明的特定实施例,编码的数据流还包括代表至少为所述图像编码的所述预定阈值的值。
根据上述任何一个特定实施例的数据流可以存储在任何存储介质上,例如存储器,或者以电信号或光信号的形式传输,该电信号或光信号可以经由电缆或光缆、无线电或其他方式来携带。
根据本发明的解码方法和编码方法分别可以以各种方式实现,特别是以有线形式或软件形式。根据本发明的特定实施例,解码方法、编码方法分别由计算机程序实现。本发明还涉及一种包括指令的计算机程序,当所述程序由处理器执行时,所述指令用于实现根据前述任一特定实施例的解码方法或编码方法。这样的程序可以使用任何编程语言。它可以从通信网络下载和/或记录在计算机可读介质上。
该程序可以使用任何编程语言,并且可以是源代码、目标代码或者源代码和目标代码之间的中间代码的形式,诸如部分编译的形式,或者任何其他期望的形式。
本发明还涉及包括如上所述的计算机程序指令的计算机可读存储介质或数据介质。上述记录介质可以是能够存储程序的任何实体或设备。例如,该介质可以包括存储装置,诸如存储器。另一方面,记录介质可以对应于可传输介质,诸如电信号或光信号,其可以经由电缆或光缆、无线电或其他方式来携带。根据本发明的程序尤其可以在互联网类型的网络上下载。
或者,记录介质可以对应于其中嵌入程序的集成电路,该电路适于执行或用于执行所讨论的方法。
附图说明
通过阅读作为简单的说明性非限制性示例提供的特定实施例的以下描述以及附图,本发明的其他特征和优点将变得更加清楚,其中:
图1示出了根据本发明特定实施例的编码方法的步骤,
图2示出了根据本发明特定实施例的确定帧内预测模式的当前块的临近(neighbouring)块的位置示例,
图3示出了根据本发明特定实施例的用于预测当前块的像素的参考像素的位置示例,
图4示出了根据本发明特定实施例的解码方法的步骤,
图5示出了根据本发明特定实施例的信号示例,该信号示例包括代表图像的至少一个块的编码数据,
图6示出了适于实现根据本发明任何特定实施例之一的编码方法的编码设备的简化结构,
图7示出了适于实现根据本发明任何特定实施例之一的解码方法的解码设备的简化结构。
具体实施方式
一般原理
本发明的一般原理是允许通过使用新的编码模式来改进图像的数据的块的编码,该新的编码模式基于使用相同块的其他先前重构的像素对该块的像素的预测,并且使得该新的编码模式与传统的编码模式共存,传统的编码模式例如是在当前的压缩标准中定义的编码模式。
因此,根据本发明,定义了一种称为ILR(In Loop Residual,环内残差)的新的编码模式,根据该模式,使用相同块的其它先前重构的像素来预测要编码的块的像素,并且将每个像素的预测残差传输到解码器。这种新的编码模式被引入使用传统编码模式的编码器/解码器中,根据该新的编码模式,要编码的块的像素相对于另一个先前重构的块的像素被预测,并根据该新的编码模式,要编码的块的预测残差在被编码和传输到解码器之前被变换。
根据本发明,如果块具有小于或等于预定阈值的尺寸,则对指示第一编码模式(传统模式)和第二编码模式(ILR模式)中的编码模式的信息项进行编码。然后,当块具有大于预定阈值的尺寸并且没有信息项被传输以指示在第一和第二编码模式当中选择该编码模式时,默认使用第一编码模式。
因此,根据本发明,ILR编码模式仅适用于尺寸小于或等于给定尺寸的块。事实上,ILR编码技术需要为每个像素传输残差,而传统的编码模式(INTRA或INTER)是基于对变换的残差进行编码,这种编码传输起来要便宜得多。
已经通过实验观察到,对于传统的编码模式,根据该模式,预测残差被变换,与方形块相关联的速率平均与块的边的长度成比例。
然而,本质上,对应于编码模式的ILR方法是一种需要与以像素的数量表示的块的面积成比例的速率的方法,根据该编码模式,在编码之前不变换预测残差。实际上,根据ILR方法,必须为每个像素传输残差,并且该残差不被变换,因为必须能够重构该像素以便随后预测相同块的其他像素。
因此,ILR方法的速率成本随着块的宽度的平方而增加,而传统方法的速率与所述宽度成比例地增加。结果是,尽管对于小块来说,ILR方法可能优于传统方法,但是对于大块来说,情况不再是这样了。
已经通过实验证实,即使当让编码器将两种编码模式用于所有块尺寸的竞争时,由于其高速率,对于16×16像素以上的块尺寸,几乎从不选择ILR编码模式。
因此,在超过某个块尺寸时,不使ILR编码模式保持活动状态有几个优点。它允许速率的增加,因为对于大的块尺寸,不再需要传输识别当前块是否必须根据传统编码模式或ILR编码模式解码的信息项。
禁用大块的ILR编码模式还可以提高编码器处的速度,因为编码器不再需要为消耗最多计算资源的大数据块测试两种编码模式。
此外,解码器的硬件实现成本降低,因为支持根据ILR编码模式对块进行解码的电路可以被限制在该块的小面积内。
因此,本发明的一般原理是,仅当块的尺寸小于或等于预定阈值时,才测试两种编码模式。例如,标准可以是下列之一:
-最大块宽度小于或等于16像素,
-最大块宽度小于或等于32像素,
-块中的像素总数小于或等于256像素,
-块中的像素总数小于或等于512像素。
其他标准也是可能的。如果满足该标准,编码器将实际测试上述两种编码模式,从率失真标准(rate-distortion criterion)的意义上选择最佳模式,并向解码器传输指示符以识别选择的编码模式。如果不满足该标准(因此,高于某个块尺寸),则使用传统编码模式,并且不传输指示符。
实施例
图1示出了根据本发明的特定实施例的编码方法的步骤。例如,根据本发明的特定实施例,图像的序列I1、I2、...、INb以编码的数据流STR的形式被编码。例如,这种编码方法由编码设备实现,如稍后参考图6所述。
图像的序列I1、I2、...、INb(Nb是要编码的序列的图像的数量)被提供作为编码方法的输入。编码方法输出代表作为输入提供的图像的序列的编码的数据流STR。
以已知的方式,图像的序列I1、I2、...、INb的编码是根据编码器预先建立和已知的编码顺序逐个图像地完成的。例如,可以按照时间顺序I1、I2、...、INb或其他顺序(例如I1、I3、I2、...、INb)对图像进行编码。
在步骤E0中,将图像的序列I1、I2、...、INb中要编码的图像Ij分割成块,例如,分割成尺寸为32×32或64×64像素或更大的块。这样的块可以细分为方形或矩形子块,例如16x16、8x8、4x4、16x8、8x16...
在步骤E0中,确定定义最大块尺寸的阈值,在该最大块尺寸下,ILR编码模式可用于编码当前块。例如,阈值可以在编码器中默认设置,或者根据用于分割图像的最大块尺寸来确定。例如,考虑到256×256像素的初始分割最大尺寸,阈值可以对应于等于64、32或16像素的更大块宽度。
考虑到初始分割最大尺寸为128×128像素,阈值可以对应于等于64、32、16或8像素的更大块宽度。阈值可以根据要编码的图像内容进行调整。作为变型,在下述速率/失真优化期间,可以测试几个阈值。
在可选的步骤E10中,根据本发明的特定实施例,在数据流STR中,在为图像Ij编码的数据处,或者在为图像序列编码的数据处,对预定阈值的值进行编码。
然后,在步骤E1中,根据图像Ij的预定扫描顺序选择图像Ij的要编码的第一块或子块Xb。例如,它可以是图像的字典式扫描顺序中的第一个块。
在步骤E2中,编码器将选择编码模式来编码当前块Xb。
根据这里描述的特定实施例,编码器从第一编码模式M1和第二编码模式M2中选择编码模式来编码当前块Xb。可以使用附加编码模式(此处未描述)。
根据这里描述的特定实施例,第一编码模式M1对应于通过传统帧内预测的当前块的编码,例如根据HEVC标准定义的,并且第二编码模式M2对应于环内残差(In-LoopResidual,ILR)预测编码。
本发明的原理可以扩展到其他类型的编码模式,无论是第一编码模式M1还是第二编码模式M2。例如,第一编码模式可以对应于在量化由变换操作(图像间预测编码、具有模板匹配编码的空间预测等)产生的系数之前使用预测残差的变换的任何类型的编码模式。第二编码模式对应于上述ILR编码模式。
在步骤E2中,编码器可以执行速率/失真优化,以确定编码当前块的最佳编码模式。在该速率/失真优化期间,可以测试不同于第一和第二编码模式的附加编码模式,例如帧间模式编码模式。在该速率/失真优化期间,编码器根据不同的可用编码模式模拟当前块Xb的编码,以便确定与每个编码模式相关联的速率和失真,并选择提供最佳速率/失真折衷的编码模式,例如根据D+λR函数,其中R是根据评估的编码模式编码当前块所需的速率,D是解码块和原始当前块之间测量的失真,λ是拉格朗日乘数,例如由用户输入或在编码器处定义。
根据本发明,如果当前块具有大于步骤E0中确定的阈值的尺寸,则不测试第二编码模式。
在步骤E19中,确定当前块是否具有小于或等于在步骤E0中确定的阈值的尺寸。如果当前块具有小于或等于阈值的尺寸,则过程进行到步骤E20。否则,当前块具有大于阈值的尺寸,则该方法前进到步骤E21,用于根据第一编码模式编码当前块。
根据本发明的特定实施例,当前块的尺寸可以对应于块的最大宽度。例如,如果当前块的尺寸是16×32像素,并且确定的阈值是32像素,在这种情况下,测试第二编码模式。然而,如果当前块的尺寸是64*32像素,在这种情况下,不测试第二编码模式。
根据本发明的另一特定实施例,当前块的尺寸可以对应于块中的像素数量。例如,对于512像素的阈值,以及因此包含512像素的16*32像素的当前块,测试第二编码模式,而对于包含2048像素的64*32像素的当前块,不测试第二编码模式。
在步骤E20中,指示为当前块选择的编码模式的信息项被编码在数据流STR中。
如果当前块Xb根据第一编码模式M1编码,则该方法进行到步骤E21,用于根据M1编码该块。如果当前块Xb根据第二编码模式M2编码,则该方法进行到步骤E22,用于根据M2编码该块。
根据本发明的特定实施例,下面描述根据第一编码模式M1对块进行编码的步骤E21。根据这里描述的特定模式,第一编码模式对应于传统帧内预测,诸如在HEVC标准中定义的帧内预测。
在步骤E210中,确定量化步长δ1。例如,量化步长δ1可以由用户设置,或者使用在压缩和质量之间设定折衷的量化参数来计算,以及由用户输入或者由编码器定义。因此,这样的量化参数可以是在率失真成本函数D+λ.R中使用的参数λ,其中D表示编码引入的失真,并且R表示编码使用的速率。此函数用于做出编码选择,通常会寻求最小化此函数的编码图像的方式。
作为变型,量化参数可以是QP,对应于在AVC或HEVC标准中常规使用的量化参数。因此,在HEVC标准中,量化步长δ1由等式δ1=levelScale[QP%6]<<(QP/6))确定,其中对于k=0..5,levelScale[k]={40,45,51,57,64,72}。
在步骤E211中,使用传统帧内预测模式来确定当前块的预测。根据这种传统帧内预测,每个预测像素仅根据源自位于当前块上方和当前块左侧的临近块(参考像素)的解码像素来计算。从参考像素预测像素的方式取决于传输到解码器的预测模式,并且该预测模式由编码器从编码器和解码器已知的预定的模式集合中选择。
因此,在HEVC有35种可能的预测模式:在33个不同角度方向内插参考像素的33种模式,以及2种其他模式:DC模式,其中预测块的每个像素由参考像素的平均值产生,以及平面模式(PLANAR mode),其执行平面和非方向内插。这种“传统帧内预测”是众所周知的,并且也用于ITU-T H.264标准(其中只有9种不同的模式)以及用于在因特网地址(https://jvet.hhi.fraunhofer.de/)可获得的实验性JEM软件中,其中有67种不同的预测模式。在所有情况下,传统帧内预测都考虑了上述两个方面(根据临近块的像素预测和最佳预测模式到解码器的传输)。
在步骤E211中,编码器因此从预测模式的预定列表中选择可用预测模式之一。一种选择方式包括,例如,评估所有预测模式,并保留使成本函数(例如典型的率失真成本)最小化的预测模式。
在步骤E212中,根据当前块的临近块对为当前块选择的预测模式进行编码。图2示出了当前块Xb的临近块Ab和Bb的位置示例,用于编码当前块Xb的预测模式。
在步骤E212中,使用与临近块相关联的帧内预测模式对为当前块选择的帧内预测模式进行编码。
例如,可以使用HEVC标准中描述的对当前块的预测模式进行编码的方法。在图2的示例中,这种方法包括识别与位于当前块上方的块Ab相关联的帧内预测模式mA,以及与位于当前块左侧的块Bb相关联的帧内预测模式mB。根据mA和mB的值,创建了包含3种帧内预测模式的称为MPM(对于最可能的模式)的列表和包含32种其他预测模式的称为非MPM的列表。
根据HEVC标准,为了对当前块的帧内预测模式进行编码,传输以下语法元素:
-二进制指示符,指示当前块的要编码的预测模式是否在MPM列表中,
-如果当前块的预测模式属于MPM列表,则传输对应于当前块的预测模式的MPM列表中的索引,
-如果当前块的预测模式不属于MPM列表,则传输对应于当前块的预测模式的非MPM列表中的索引。
在步骤E213中,构建当前块的预测残差R。
在步骤E213中,以标准方式,根据在步骤E211中选择的预测模式来构造预测块P。然后,通过计算预测块P和原始当前块之间的每个像素的差来获得预测残差R。
在步骤E214中,预测残差R被变换成RT。
在步骤E214中,对残差块R应用频率变换,以便产生包括变换系数的块RT。例如,该变换可以是DCT类型的变换。可以从预定的变换集合ET中选择要使用的变换,并将所使用的变换通知解码器。
在步骤E215中,使用例如量化步长δ1的标量量化来量化变换的残差块RT。这产生了经量化的变换的预测残差块RTQ。
在步骤E216中,经量化的块RTQ的系数由熵编码器编码。例如,可以使用HEVC标准中规定的熵编码。
以已知的方式,通过对经量化的块RTQ的系数进行去量化,然后对去量化的系数应用逆变换来获得解码的预测残差,从而解码当前块。然后,预测被加到解码的预测残差,以便重构当前块并获得其解码的版本。当前块的解码的版本随后可以用于对图像的其他临近块进行空间预测,或者通过图像间预测来预测其他图像的块。
根据本发明的特定实施例,下面描述根据第二编码模式M2对块进行编码的步骤E22。根据这里描述的特定实施例,第二编码模式对应于ILR预测编码。
在步骤E220中,确定当前块的局部预测子PL。根据这里描述的编码模式,当前块的像素由当前块的临近块或当前块本身的先前重构的像素来预测。
优选地,对于预测,选择尽可能接近要预测的像素的像素。这就是为什么它被称为局部预测子。局部预测子PL也可以被同化为与第二编码模式M2相关联的当前块的预测模式。根据这种解释,在这里描述的特定实施例中,第一编码模式使用第一组帧内预测模式,例如由HEVC标准定义的帧内预测模式,并且第二编码模式,这里是ILR模式,使用不同于第一组帧内预测模式的第二组预测模式。
局部预测子PL可以是唯一的,或者可以从预定的一组局部预测子(第二组预测模式)中选择。
根据实施例变型,定义了4个局部预测子。因此,如图3示出的当前块Xb,如果我们称X为要从当前块预测的当前像素,A为位于X左侧的像素,B为位于X左上方的像素,C为位于X上方的像素,则可以如下定义4个局部预测子PL1、PL2、PL3、PL4:
PL1(X)=min(A,B)if C≥max(A,B)
max(A,B)if C≤min(A,B)
A+B-C otherwise
PL2(X)=A
PL3(X)=B
PL4(X)=C
其中min(A,B)对应于返回A的值和B的值之间最小值的函数,并且max(A,B)对应于返回A的值和B的值之间最大值的函数。
在步骤E220中,确定用于当前块的局部预测子PL。换句话说,同一局部预测子将用于当前块的所有像素,即,同一预测函数。为此,几个实施例变型是可能的。
可以模拟当前块与每个预测子的编码(类似于为当前块选择编码模式的优化),以及选择优化成本函数的局部预测子(例如,使D+λ.R函数最小化,其中R是用于对块进行编码的速率,D是解码的块相对于原始块的失真,并且λ是用户设置的参数)。
或者,为了限制为当前块选择局部预测子的复杂性,分析先前编码的像素的纹理的方向。例如,使用索贝尔型算子(Sobel-type operator)分析块中位于当前块上方或左侧的先前编码的像素。如果确定:
-方向是水平的,选择局部预测子PL2,
-方向是垂直的,选择局部预测子PL3,
-方向是对角的,选择局部预测子PL4,
-如果没有出现方向,则选择局部预测子PL1。
在数据流STR中编码语法元素,以向解码器指示哪个局部预测子用于预测当前块。
在步骤E221中,确定量化步长δ2。例如,如果当前块是根据第一编码模式编码的,则量化步长δ2取决于与将在步骤E210中确定的量化步长δ1相同的量化参数。
在步骤E222中,为当前块计算预测残差R1。为此,一旦选择了局部预测子,对于当前块的每个当前像素:
-当前块的当前像素X由选择的局部预测子PL预测,使用块外的并且已经重构的像素(并且因此可用它们的解码的值),或者在当前块中先前重构的像素,或者两者,以便获得预测的值PRED。在所有情况下,预测子PL使用先前重构的像素。在图3中,可以看出,位于当前块的第一行和/或第一列上的当前块的像素将使用块外的并且已经重构的(图3中的灰色像素)以及可能已经重构的当前块的像素作为参考像素(以构建预测的值PRED)。对于当前块的其他像素,用于构造预测的值PRED的参考像素位于当前块内部;
-通过δ2量化步长的标量量化器,通过Q(X)=ScalarQuant(DIFF)=ScalarQuant(δ2,X-PRED),将PRED和X之间的差DIFF量化为值Q(X),标量量化器例如是最临近的标量量化器,诸如:
Q(X)是与X关联的经量化的残差。它是在空间域中计算的,即直接从像素X的预测的值PRED与X的原始值之间的差计算得出。用于像素X的这样的经量化的残差Q(X)被存储在经量化的预测残差块R1Q中,其将在稍后被编码;
-通过将经量化的残差Q(X)的去量化的值加到预测的值PRED上来计算X的解码的预测的值P1(X)。因此,通过P1(X)=PRED+ScalarDequant(δ2,Q(X))获得X的解码的预测的值P1(X)。例如,最接近的标量量化逆函数由下式给出:ScalarDequant(Δ,x)=Δ×x。
因此,解码的预测的值P1(X)使得预测当前块中仍待处理的可能像素成为可能。此外,包括当前块的像素的解码/重构的值的块P1是当前块的ILR预测子(与传统帧内预测子相对)。
以扫描顺序对当前块的所有像素执行上述子步骤,该扫描顺序确保从PL1、...、PL4中选择的用于预测的像素可用。
根据实施例变型,当前块的扫描顺序是字典顺序(lexicographical order),即从左到右和从上到下。
根据另一实施例变型,可以使用当前块的几个扫描顺序,例如:
-字典顺序,或
-从上到下扫描第一列,然后扫描在其右边的列,依此类推,或者,
-一个接一个地扫描对角线。
根据该另一变型,可以模拟与每个扫描顺序相关联的编码成本,并根据速率/失真为当前块选择最佳扫描顺序,然后为当前块编码代表选择的扫描顺序的信息项。
在步骤E222结束时,确定经量化的残差块R1Q。这个经量化的残差块R1Q必须被编码以传输到解码器。当前块的预测子P1也被确定。
在步骤E223中,经量化的残差块R1Q被编码以传输到解码器。任何已知的方法,诸如在HEVC描述的方法,都可以用于对传统预测残差的经量化的系数进行编码。
根据这里描述的本发明的特定实施例,使用数据流STR中的熵编码器对经量化的残差块R1Q的值进行编码。
根据本发明的特定实施例,可以根据为当前块获得的ILR预测子来确定和编码附加预测残差R2。然而,附加预测残差R2的编码是可选的。确实有可能通过当前块的预测的版本P1和经量化的残差R1Q对其进行简单编码。
为了对当前块的附加预测残差R2进行编码,执行以下步骤。
在步骤E224中,计算预测子P1和原始当前块Xb之间的差R2,以形成附加的残差R2:R2=Xb-P1。以下步骤对应于这个残差R2的常规编码步骤。
在步骤E225中,使用频率变换来变换残差R2,以便产生系数的块R2T。
例如,该变换可以是DCT类型的变换。可以从预定的变换集合ET2中选择要使用的变换,并通知解码器所使用的变换。在这种情况下,集合ET2可以不同于集合ET,以便适应残差R2的特定统计。
在步骤E226中,系数的块R2T被量化,例如使用量化步长δ的标量量化。这产生块R2TQ。
量化步长δ可以由用户设置。也可以使用另一参数λ来计算,该参数λ设置压缩和质量之间的折衷,并由用户或编码器输入。例如,量化步长δ可以对应于量化步长δ1,或者类似地确定。
在步骤E227中,经量化的块R2TQ的系数然后以编码的方式传输。例如,可以使用HEVC标准中指定的编码。
以已知的方式,通过对经量化的块R2TQ的系数进行去量化,然后对去量化的系数应用逆变换以获得解码的预测残差,来解码当前块。预测P1然后被加到解码的预测残差,以便重构当前块并获得其解码的版本Xrec。当前块的解码的版本Xrec随后可以用于对图像的其他临近块进行空间预测,或者通过图像间预测来预测其他图像的块。
在步骤E23中,考虑到先前定义的扫描顺序,检查当前块是否是要通过编码方法处理的图像的最后一个块。如果是,该方法进行到编码(步骤E25)视频的下一图像(如果有的话)。如果否,则在步骤E24中,根据图像的先前定义的扫描顺序选择要处理的图像的后续块,并且编码方法前进到步骤E2,在步骤E2中,选择的块成为要处理的当前块。
图4示出了根据本发明的特定实施例的用于对表示待解码的图像的序列I1、I2、...、INb的编码数据的流STR进行解码的方法的步骤。
例如,数据流STR是经由相对于图1所示的编码方法生成的。如结合图7所述,数据流STR作为输入被提供给解码设备DEC。
解码方法逐图像地解码流,并且逐块地解码每个图像。
在步骤E40中,要解码的图像Ij被细分成在编码器处确定的并且解码器已知的初始尺寸的块。每个块将经历包括一系列步骤的解码操作,这些步骤将在下文中详细描述。块的尺寸可以相同,也可以不同。
在可选的步骤E401中,根据本发明的特定实施例,从数据流STR中读取阈值。该阈值定义了ILR编码模式能够对当前块进行编码的最大块尺寸。
根据本发明的另一特定实施例,阈值可以在解码器处默认定义。
在步骤E41中,根据图像Ij的预定扫描顺序,选择图像Ij的待解码的第一块或子块Xb作为当前块。例如,它可以是图像的字典式扫描顺序中的第一个块。
在步骤E42中,确定当前块是否具有小于或等于阈值的尺寸。如果当前块具有小于或等于阈值的尺寸,则过程进行到步骤E421。否则,当前块具有大于阈值的尺寸,则该方法前进到步骤E43,用于根据第一编码模式解码当前块。
当前块的尺寸可以从数据流中读取,或者从当前块所属的初始尺寸的块的划分中推导出来。这种划分被编码在数据流中或者从为初始尺寸的块编码的信息中推导出来。
在步骤E421中,从数据流STR中读取指示当前块的编码模式的信息项。根据这里描述的特定实施例,该信息项指示当前块是根据第一编码模式M1编码还是根据第二编码模式M2编码。根据这里描述的特定实施例,第一编码模式M1对应于当前块的传统帧内预测编码,例如根据HEVC标准定义的,并且第二编码模式M2对应于环内残差(ILR)预测编码。
在其他特定实施例中,第一编码模式可以对应于不同于INTRA预测编码模式的编码模式(这里未描述)。
下面描述当根据第一编码模式M1编码当前块时解码当前块的步骤E43。
在步骤E430中,确定量化步长δ1。例如,量化步长δ1根据在步骤E401中读取的量化参数QP或类似于在编码器中所做的来确定。例如,可以使用在步骤E401中读取的量化参数QP来计算量化步长δ1。例如,量化参数QP可以是在AVC或HEVC标准中常规使用的量化参数。因此,在HEVC标准中,量化步长δ1由等式δ1=levelScale[QP%6]<<(QP/6))确定,其中对于k=0..5,levelScale[k]={40,45,51,57,64,72}。
在步骤E431中,从临近块中解码被选择来编码当前块的预测模式。为此,正如在编码器中所做的那样,使用与当前块的临近块相关联的帧内预测模式对为当前块选择的帧内预测模式进行编码。
MPM列表和非MPM列表的构建与编码过程期间的构建非常相似。根据HEVC标准,解码以下类型的语法元素:
-二进制指示符,指示要为当前块编码的预测模式是否在MPM列表中,
-如果当前块的预测模式属于MPM列表,则解码对应于编码的当前块的预测模式的MPM列表中的索引,
-如果当前块的预测模式不属于MPM列表,则解码对应于编码的当前块的预测模式的非MPM列表中的索引。
因此,从数据流STR中读取对于当前块的二进制指示符和预测模式索引,以解码当前块的帧内预测模式。
在步骤E432中,解码器根据解码的预测模式为当前块构建预测块P。
在步骤E433中,解码器例如使用HEVC标准中指定的解码来解码来自数据流STR的经量化的块RTQ的系数。
在步骤E434中,解码的块RTQ被去量化,例如使用δ1量化步长的标量去量化。这产生去量化的系数的块RTQD。
在步骤E435中,逆频率变换被应用于去量化的系数的块RTQD,以便产生解码的预测残差块RTQDI。例如,该变换可以是逆DCT类型的变换。通过解码来自数据流STR的指示符,可以从预定的变换集合ETI中选择要使用的变换。
在步骤E436中,根据在步骤E432中获得的预测块P和在步骤E435中获得的解码的残差块RTQDI来重构当前块,以便通过Xrec=P+RTQDI来产生解码的当前块Xrec。
下面描述当根据第二编码模式M2编码当前块时解码当前块的步骤E44。
在步骤E440中,确定用于预测当前块的像素的局部预测子PL。在只有一个预测子可用的情况下,局部预测子例如在解码器级被默认设置,并且不需要从流STR中读取语法元素来确定它。
在几个局部预测子可用的情况下,例如上述预测子PL1-PL4,从数据流STR中解码语法元素以识别哪个局部预测子用于预测当前块。因此,从该解码的语法元素中确定局部预测子。
在步骤E441中,类似于在编码器处所做的,确定量化步长δ2。
在步骤E442中,从数据流STR中解码经量化的残差R1Q。任何已知的方法,诸如HEVC描述的方法,都可以用于解码传统预测残差的经量化的系数。
在步骤E443中,使用量化步长δ2对经量化的残差块R1Q进行去量化,以便产生去量化的残差块R1QD。
在步骤E444中,当获得去量化的残差块R1QD时,使用在步骤E440中确定的局部预测子PL来构建预测块P1。
在步骤E444中,如下来预测和重构当前块的每个像素:
-当前块的当前像素X由选择的预测子PL预测,使用块外并且已经重构的像素,或者当前块的先前重构的像素,或者两者,以便获得预测的值PRED。在所有情况下,预测子PL使用先前解码的像素;
-通过将预测残差R1QD的去量化的值加到预测的值PRED来计算当前像素X的解码的预测的值P1(X),使得P1(X)=PRED+R1QD(X)。
以扫描顺序对当前块的所有像素实现这些步骤,该扫描顺序确保从PL1、...、PL4中选择的用于预测的像素可用。
例如,扫描顺序是字典顺序(从左到右,然后从上到下的行)。
根据本发明的特定实施例,包括当前块的每个像素的解码的预测的值P1(X)的预测的块P1在此形成解码的当前块Xrec。
根据本发明的另一特定实施例,这里考虑为当前块编码附加预测残差。因此,为了重构当前块的解码版本Xrec,有必要对该附加预测残差进行解码。
例如,该另一特定实施例可以在编码器和解码器级别处被默认激活或不被激活。或者,可以用块级信息在数据流中编码指示符,以指示对于根据ILR编码模式编码的每个块,是否编码了附加预测残差。或者进一步地,可以在数据流中用图像或图像序列级别信息来编码指示符,以指示对于根据ILR编码模式编码的图像或图像序列的所有块,是否编码了附加预测残差。
当针对当前块对附加预测残差进行编码时,在步骤E445中,使用适于在编码器处实现的手段,例如在HEVC解码器中实现的手段,从数据流STR中解码经量化的预测残差R2TQ的系数。
在步骤E446中,例如使用量化步长δ1的标量去量化来对经量化的系数的块R2TQ进行去量化。这产生了去量化的系数的块R2TQD。
在步骤E447中,逆频率变换被应用于块R2TQD,以便产生解码的预测残差块R2TQDI。
例如,逆变换可以是逆DCT类型的变换。
可以从预定的变换集合ET2中选择要使用的变换,并对通知解码器要使用的变换的信息项进行解码。在这种情况下,集合ET2不同于集合ET,以便适应残差R2的特定统计。
在步骤E448中,通过将在步骤E444中获得的预测的块P1加到解码的预测残差R2TQDI来重构当前块。
在步骤E45中,考虑到先前定义的扫描顺序,检查当前块是否是要由解码方法处理的图像的最后一个块。如果是,该方法继续解码(步骤E47)视频的下一图像(如果有的话)。如果不是,在步骤E46中,根据图像的先前定义的扫描顺序选择要处理的图像的后续块,并且解码方法前进到步骤E42,选择的块成为要处理的当前块。
图5示出了根据本发明特定实施例的信号示例STR,该信号示例STR包括代表图像的至少一个块的编码数据。例如,信号STR可以包括阈值S,该阈值S指示如上所述第二编码模式M2可以使用的最大块尺寸。当编码视频时,可以在图像或图像的序列级别处对该阈值S进行编码。
当没有在数据流STR中编码时,在编码器和解码器处以类似的方式确定阈值S。
当块具有小于或等于阈值S的尺寸时,信号STR包括编码的指示符TY,该指示符TY为块指示第一编码模式和第二编码模式当中的编码模式。当TY指示符指示根据第二编码模式(此处为ILR模式)对块进行编码时,信号则包括经量化的预测残差R1Q的编码的值和经量化的变换的预测残差R2TQ的可能编码的值。当几个局部预测子对于当前块是可能的时,信号还包括局部预测子PL编码的指示符。
当指示符TY指示根据第一编码模式(这里是传统帧内预测模式)对块进行编码时,信号则包括经量化的变换的预测残差RTQ的编码值、指示要对当前块进行编码的预测模式是否在MPM列表中的二进制指示符iMPM、以及指示对应列表中的、当前块预测模式的索引的索引idxMPM。
当块具有大于阈值S的尺寸时,信号则包括源自根据第一编码模式对块进行编码的、为块编码的数据。
图6示出了编码设备COD的简化结构,该编码设备COD适于实现根据本发明的任何特定实施例之一的编码方法。
根据本发明的特定实施例,编码方法的步骤由计算机程序指令实现。为此,编码设备COD具有计算机的标准结构,并且特别地包括存储器MEM、处理单元UT,例如配备有处理器PROC,并且由存储在存储器MEM中的计算机程序PG驱动。计算机程序PG包括当程序由处理器PROC执行时用于实现如上所述的编码方法的步骤的指令。
在初始化时,计算机程序PG的代码指令例如在被处理器PROC执行之前被加载到RAM存储器(未示出)中。特别地,处理单元UT的处理器PROC根据计算机程序PG的指令实现上述编码方法的步骤。
图7示出了解码设备DEC的简化结构,该解码设备DEC适于实现根据本发明的任何特定实施例之一的解码方法。
根据本发明的特定实施例,解码设备DEC具有计算机的标准架构,并且特别地包括存储器MEM0、处理单元UT0,例如配备有处理器PROC0,并且由存储在存储器MEM0中的计算机程序PG0驱动。计算机程序PG0包括用于当程序由处理器PROC0执行时实现如上所述的解码方法的步骤的指令。
在初始化时,计算机程序PG0的代码指令例如在被处理器PROC0执行之前被加载到RAM存储器(未示出)中。特别地,处理单元UT0的处理器PROC0根据计算机程序PG0的指令实现上述解码方法的步骤。
Claims (13)
1.一种用于对代表至少一个图像的编码的数据流进行解码的方法,所述图像被分割成多个块,所述解码方法包括,对于被称为当前块的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则所述方法包括解码(E42)指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由解码的编码模式信息项指示的编码模式重构当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式重构当前块,
第一编码模式对应于使用针对当前块解码的变换的预测残差的逆变换来重构(E436)当前块所依据的编码模式,并且第二编码模式对应于通过以下方式重构(E444)当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于所述图像的先前解码的块,
-根据获得的所述像素的预测和与所述像素相关联的解码的预测残差来重构所述像素。
2.一种用于对代表至少一个图像的数据流进行编码的方法,所述图像被分割成多个块,所述编码方法包括,对于被称为当前块的、图像的至少一个块,:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则该方法包括编码(E20)
指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,
并根据由编码的编码模式信息项指示的编码模式来编码当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式编码当前块,第一编码模式对应于使用当前块的预测残差的变换来编码(E21)当前块所依据的编码模式,第二编码模式对应于通过以下方式来编码(E22)当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得(E222)所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于所述图像的先前解码的块,
-编码(E223)与所述像素相关联并且从针对所述像素获得的预测中获得的预测残差。
3.根据权利要求1或2中任一项所述的方法,其中当前块的尺寸对应于当前块的最大宽度。
4.根据权利要求3的方法,其中预定阈值是16或32个像素。
5.根据权利要求1或2中任一项所述的方法,其中当前块的尺寸对应于当前块中的像素总数。
6.根据权利要求5的方法,其中预定阈值是256或512个像素。
7.根据权利要求1或2中任一项所述的方法,还包括对所述预定阈值进行解码或编码。
8.一种用于对代表至少一个图像的编码的数据流进行解码的设备,所述图像被分割成多个块,所述解码设备包括处理器(PROC0),所述处理器被配置为,对于被称为当前块的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则解码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由解码的编码模式信息项指示的编码模式重构当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式重构当前块,第一编码模式对应于使用针对当前块解码的变换的预测残差的逆变换来重构(E436)当前块所依据的编码模式,并且第二编码模式对应于通过以下方式重构(E444)当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于所述图像的先前解码的块,
-根据获得的所述像素的预测和与所述像素相关联的解码的预测残差重构所述像素。
9.一种用于对代表至少一个图像的数据流进行编码的设备,所述图像被分割成多个块,所述编码设备包括处理器(PROC),所述处理器被配置为,对于被称为当前块的、具有小于或等于预定阈值的尺寸的、图像的至少一个块:
-确定当前块的尺寸是否小于或等于预定阈值,
-如果当前块的尺寸小于或等于预定阈值,则编码指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,并根据由编码的编码模式信息项指示的编码模式编码当前块,
-如果当前块的尺寸大于预定阈值,则根据第一编码模式编码当前块,第一编码模式对应于使用当前块的预测残差的变换来编码(E21)当前块所依据的编码模式,第二编码模式对应于通过以下方式来编码(E22)
当前块所依据的编码模式:
-对于当前块的每个像素:
-从另一个先前解码的像素获得(E222)所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于所述图像的先前解码的块,
-编码(E223)与所述像素相关联并且从针对所述像素获得的预测中获得的预测残差。
10.一种代表至少一个图像的编码的数据流,所述图像被分割成多个块,对于被称为当前块的、图像的至少一个块,如果当前块具有小于或等于预定阈值的尺寸,所述编码的数据流:
-包括指示第一编码模式和第二编码模式当中的、当前块的编码模式的信息项,
-当当前块的编码模式对应于第一编码模式时,或者如果当前块具有大于预定阈值的尺寸时,包括编码的变换的预测残差,
-当当前块的编码模式对应于第二编码模式并且当前块具有小于或等于预定阈值的尺寸时,包括通过以下步骤获得的编码的预测残差:
-对于当前块的每个像素:
-从另一个先前解码的像素获得所述像素的预测,所述另一个先前解码的像素属于所述当前块或属于所述图像的先前解码的块,
-从针对所述像素获得的预测中获得与所述像素相关联的预测残差。
11.根据权利要求10所述的数据流,还包括代表至少为所述图像编码的所述预定阈值的值。
12.一种计算机程序,包括用于当所述程序由处理器执行时,实现根据权利要求1或3至7中任一项所述的解码方法或根据权利要求2至7中任一项所述的编码方法的指令。
13.一种计算机可读数据介质,包括根据权利要求12所述的计算机程序的指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1858571A FR3086485A1 (fr) | 2018-09-21 | 2018-09-21 | Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image. |
FR1858571 | 2018-09-21 | ||
PCT/FR2019/052028 WO2020058594A1 (fr) | 2018-09-21 | 2019-09-03 | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112740691A true CN112740691A (zh) | 2021-04-30 |
CN112740691B CN112740691B (zh) | 2024-07-30 |
Family
ID=
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107040785A (zh) * | 2016-02-04 | 2017-08-11 | 联发科技股份有限公司 | 图像解码和图像编码的方法和装置 |
CN107710763A (zh) * | 2015-06-29 | 2018-02-16 | 必卡姆公司 | 用于对数字图像进行编码的方法、解码方法、装置和相关计算机程序 |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107710763A (zh) * | 2015-06-29 | 2018-02-16 | 必卡姆公司 | 用于对数字图像进行编码的方法、解码方法、装置和相关计算机程序 |
CN107040785A (zh) * | 2016-02-04 | 2017-08-11 | 联发科技股份有限公司 | 图像解码和图像编码的方法和装置 |
Non-Patent Citations (1)
Title |
---|
MOHSEN ABDOLI 等: "Intra Prediction Using In-Loop Residual Coding for the post-HEVC Standard", 《2017 IEEE 19TH INTERNATIONAL WORKSHOP ON MULTIMEDIA SIGNAL PROCESSING(MMSP)》, pages 1 - 6 * |
Also Published As
Publication number | Publication date |
---|---|
US20210377541A1 (en) | 2021-12-02 |
KR20210062635A (ko) | 2021-05-31 |
EP3854090A1 (fr) | 2021-07-28 |
WO2020058594A1 (fr) | 2020-03-26 |
US11616958B2 (en) | 2023-03-28 |
JP2022501909A (ja) | 2022-01-06 |
US20230199193A1 (en) | 2023-06-22 |
FR3086485A1 (fr) | 2020-03-27 |
BR112021003632A2 (pt) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101947658B1 (ko) | 영상 복호화 방법 및 장치 | |
KR101947657B1 (ko) | 인트라 예측 정보 부호화 방법 및 장치 | |
KR20130045151A (ko) | 복원 블록을 생성하는 방법 및 장치 | |
US20230199193A1 (en) | Methods and devices for coding and decoding a data stream representing at least one image | |
JP2024056766A (ja) | 少なくとも1つの画像を表すデータストリームをコーディングおよびデコーディングするための方法および装置 | |
CN112740691B (zh) | 用于编码和解码表示至少一个图像的数据流的方法和设备 | |
CN112740690B (zh) | 用于编码和解码代表至少一个图像的数据流的方法和设备 | |
CN112292858B (zh) | 用于编码和解码表示至少一个图像的数据流的方法和装置 | |
CN112740692B (zh) | 用于编码和解码表示至少一个图像的数据流的方法和设备 | |
JP7466469B2 (ja) | 少なくとも1つの画像を表すデータストリームをコーディングおよび復号するための方法およびデバイス | |
CN113412618B (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 |