CN115486070A - 熵编码的变换系数排序 - Google Patents

熵编码的变换系数排序 Download PDF

Info

Publication number
CN115486070A
CN115486070A CN202180032544.4A CN202180032544A CN115486070A CN 115486070 A CN115486070 A CN 115486070A CN 202180032544 A CN202180032544 A CN 202180032544A CN 115486070 A CN115486070 A CN 115486070A
Authority
CN
China
Prior art keywords
data
transform
order
encoded
encoder
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180032544.4A
Other languages
English (en)
Inventor
M·埃利奥特
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.)
V-Nova Ltd
Original Assignee
V-Nova 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
Priority claimed from GBGB2005451.6A external-priority patent/GB202005451D0/en
Priority claimed from GBGB2005658.6A external-priority patent/GB202005658D0/en
Application filed by V-Nova Ltd filed Critical V-Nova Ltd
Publication of CN115486070A publication Critical patent/CN115486070A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4084Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/18Methods 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 set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本公开提供了一种用于在编码器中对输入数据进行编码以生成编码输出数据的方法,其中所述方法包含:指示使用所述输入数据的下采样版本将所述输入数据转换为基本层重建数据;以及生成提供用于增强所述基本层重建数据的指令的增强层数据,其中所述增强层数据包括表示从所述基本层重建数据生成的重建与从所述输入数据导出的数据之间的差异的残差数据,其中所述残差数据经过至少一种变换和至少一种数据压缩方法以生成所述编码输出数据,其特征在于所述方法包含:将所述至少一种变换布置为包含哈达玛变换以将所述残差数据转换为对应变换系数,其中所述哈达玛变换的不同输出元素被布置为要编码的不同表面,以及为所述表面中的所述变换系数选择输出次序,以为所述至少一种数据压缩方法提供变换系数序列以生成所述编码输出数据,其中所述输出次序被选择为至少图块栅格次序和n×n块“Z”次序中的一种。

Description

熵编码的变换系数排序
技术领域
本公开大体上涉及一种用于编码数据的设备,例如用于编码图像或视频数据的设备。此外,本公开涉及用于使用上述设备对数据进行编码,例如用于对图像或视频数据进行编码的方法(即,使用上述设备对数据进行编码的方法)。此外,本公开涉及一种用于对数据进行解码,例如用于对图像或视频数据进行解码的设备。此外,本公开涉及用于使用上述设备对数据进行解码,例如用于对编码的图像或视频数据进行解码的方法(即,使用上述设备对数据进行解码的方法)。此外,本公开涉及用于执行上述方法的计算机程序产品。
背景技术
MPEG-2、MPEG-4和MPEG-5视频编码标准是众所周知的。为了在根据这些标准进行编码期间获得高效压缩,使用离散余弦变换(DCT)处理空间上表示图像的像素阵列中的像素宏块,以在变换后的数据宏块中提供DCT系数。
上述MPEG编码器是在计算资源较为有限的时候开发的,并且大多以串行方式处理图像和视频数据,在对上述编码数据进行解码时进行必要的必要修改也有类似的考虑。然而,现代计算装置能够通过采用多个处理核心以更并行的方式处理数据。这些现代计算装置鼓励开发更适合在并行计算装置上执行的其它类型的编码。
这些其它类型的编码尤其包含在特此通过引用并入的各种已公布专利申请中描述的VC-6和LCEVC标准。例如,LCEVC标准在2020年1月于布鲁塞尔举行的MPEG 129会议上公布的ISO/IEC DIS 23094-2低复杂度增强视频编码草案文本中进行了描述。VC-6标准在出版物SMPTE ST 2117-1(2020年7月21日)中进行了描述。这两个标准规范也通过引用并入本文中。
特别地,在以下专利申请中描述了VC-6标准:
EP12756254.4、EP12756257.7、EP12756258.5、
EP12759220.2、EP12818920.6、EP12759221、
EP12799276.6、EP13723460.5、EP13722424.2、
EP13724216.0、PCT/EP2018/0756033、EP17386046.1、
EP1R3860022、PCT/GB2018/053546、PCT/GB2018/053555、PCT/GB2018/053547、PCT/GB2018/053554、PCT/GB2018/053548。
特别地,在以下专利申请中描述了LCEVC类型:
EP12756254.4、EP12756257.7、EP 12756258.5、
EP12759220.2、EP12818920.6、EP12799276.6、
EP13708525.4、EP13723460.5、EP13722424.2、
EP13724216.0、EP14722769.8、EP16804893.2、
EP16718438.1、EP17783955.2、EP17783956.0、
EP17783957.8、PCT/EP2018/075603、PCT/GB2018/053548、
EP 18199014.4、PCT/GB2019/053068、PCT/GB2019/053066、
PCT/GB2019/053067、PCT/GB2019/053069、PCT/GB2020/050695、
PCT/GB2019/051974、PCT/GB2019/052152、PCT/GB2019/052151、
PCT/GB2019/052154、PCT/GB2019/052166、PCT/GB2019/052867、PCT/GB2019/053070、PCT/GB2019/053551、PCT/GB2019/053547、
PCT/GB2020/050492、PCT/GB2020/050574、PCT/GB2020/050693、
PCT/GB2020/050692、PCT/GB2020/050725和PCT/GB2020/050695。
LCEVC和VC-6未采用各种已知MPEG、H.264和H.265标准中实施的预测和DCT。有益的是,VC-6和/或LCEVC可以采用此类已知标准来实施编码的基本层,以确保与传统系统的向后兼容性,然后添加例如在软件中实施的至少一个增强层,所述增强层提供对基本层的增强,以使解码数据具有可扩展的质量,从而在解码器中提供比特率与视频再现质量之间的平衡。
特别地,在LCEVC和VC-6中,针对下采样的原始输入图像或视频数据执行编码的基本层。基本编码数据的解码版本与原始输入之间的差异是逐帧计算的,并且此差异形成可以添加到基本编码数据的解码版本的残差数据的基础。LCEVC和VC-6都提供了多个层级的空间可扩展性,其中可以计算每个层级的残差数据,以便以不同的空间分辨率高效地编码不同层级的特征。这不同于比较MPEG、H.264和H.265标准,后者使用帧内的相邻块或视频序列中的其它帧来预测宏块。它允许使用H.264和H.265无法实现(例如,由于通过预测引入的块之间固有的空间和时间相关性而无法实现)的高度可并行处理。
本公开解决的视频编码中的一个持续存在的客观技术问题是如何以更高效的方式编码数据。例如,希望开发出能够以更高效的方式至少对VC-6和LCEVC标准生成的残差数据进行编码的方法。
发明内容
本公开旨在提供一种改进的设备,用于以更高效和有效的方式至少对残差数据进行编码。此外,本公开旨在提供一种改进的方法,用于以更高效和有效的方式对残差数据进行编码。此外,本公开旨在提供一种改进的设备,用于以更高效和有效的方式至少对残差数据进行解码。此外,本公开旨在提供一种改进的方法,用于以更高效和有效的方式至少对残差数据进行解码。
在第一方面,本公开提供了一种用于在编码器中对输入数据进行编码以生成编码输出数据的方法,其中所述方法包含:指示使用输入数据的下采样版本将输入数据转换为基本层重建数据;以及生成提供用于增强基本层重建数据的指令的增强层数据,其中增强层数据包括表示从基本层重建数据生成的重建与从输入数据导出的数据之间的差异的残差数据,其中残差数据经过至少一种变换和至少一种数据压缩方法以生成编码输出数据,其特征在于所述方法包含:将至少一种变换布置为包含哈达玛变换以将残差数据转换为对应变换系数,其中哈达玛变换的不同输出元素被布置为要编码的不同表面,以及为表面中的变换系数选择输出次序,以为至少一种数据压缩方法提供变换系数序列以生成编码输出数据,其中输出次序被选择为至少图块栅格次序和n×n块“Z”次序中的一种。
本发明的优点在于,在生成编码输出数据时,变换(哈达玛)系数的读出能够提高数据压缩性能。
任选地,在所述方法中,基于预定义的编码单元大小(例如,2×2或4×4残差块)生成变换系数,并且用于图块栅格次序的图块包括大于编码单元大小的变换系数集合。图块栅格次序可包含对变换系数的图块进行编码,其中所述图块以栅格方式读出。
任选地,在所述方法中,平铺方式包含对大小为8×8个元素、16×16个元素、32×32个元素的图块进行编码。
任选地,在所述方法中,至少一种数据压缩方法包含行程长度编码(RLE)后接霍夫曼编码。
任选地,n×n块“Z”次序包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个n×n“Z”次序读出,其中n×n“Z”次序读出在不同变换系数组之间以递归n×n“Z”次序重复。例如,“Z”次序可包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个2×2“Z”次序读出,其中当哈达玛变换系数的矩阵或表面包含2×2个系数组的倍数时,2×2“Z”次序读出以“Z”次序重复。
任选地,所述方法实施为与VC-6或LCEVC标准兼容。
根据第二方面,提供了一种编码器,所述编码器在操作时对输入数据进行编码以生成对应的编码输出数据,其中所述编码器指示使用输入数据的下采样版本将输入数据转换为基本层重建数据,其中所述编码器生成提供用于增强输入数据的下采样版本的指令的增强层数据,其中残差数据表示从基本层重建数据生成的重建与从输入数据导出的数据之间的差异,其中残差数据在编码器中经过至少一种变换和至少一种数据压缩变换以生成编码输出数据,其特征在于至少一种变换包含哈达玛变换以将残差数据转换为对应的哈达玛变换系数,其中哈达玛变换的不同输出元素被布置为要编码的不同表面,其中所述编码器被配置成为表面中的变换系数选择输出次序,以为至少一种数据压缩方法提供变换系数序列以生成编码输出数据,其中输出次序被选择为至少图块栅格次序和n×n块“Z”次序中的一种。
任选地,在所述编码器中,至少一种数据压缩方法包含行程长度编码(RLE)后接霍夫曼编码。
任选地,在所述编码器中,图块栅格次序包含对变换系数的图块进行编码,其中所述图块以栅格方式读出。
任选地,在所述编码器中,图块栅格次序包含对大小在8×8个元素到64×64个元素的范围内的图块进行编码,其中以每个图块内的栅格次序选择变换系数。例如,图块可具有8×8个元素、16×16个元素或32×32个元素的大小。
任选地,在所述编码器中,n×n块“Z”次序包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个n×n“Z”次序读出,其中n×n“Z”次序读出在不同变换系数组之间以递归n×n“Z”次序重复。例如,“Z”次序可包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个2×2“Z”次序读出,其中当哈达玛变换系数的矩阵或表面包含2×2个系数组的倍数时,2×2“Z”次序读出以“Z”次序重复。
任选地,实施所述编码器以与VC-6或LCEVC标准兼容。
根据第三方面,提供了一种计算机程序产品,其包括上面存储有计算机可读指令的非暂时性计算机可读存储介质,所述计算机可读指令可由包括处理硬件的计算机化装置执行以执行上述第二方面的方法。
根据第四方面,提供了一种用于在解码器中对编码数据进行解码以生成解码输出数据的方法,其中所述方法包含:(i)在解码器处接收编码数据;(ii)应用至少一种逆变换以将接收到的编码数据转换为增强层数据,所述增强层数据提供用于增强从输入数据的下采样版本导出的基本层重建的指令,其中增强层数据包括残差数据以提供其增强,其中残差数据经过至少一种变换和至少一种数据压缩方法以生成接收到的编码数据,其特征在于所述方法进一步包含:(iii)根据至少一种数据压缩方法解压缩接收到的编码数据以生成中间解码数据;以及(iv)将至少一种逆变换布置为包含逆哈达玛变换,以将从中间解码数据导出的变换系数转换为残差数据,其中通过以图块栅格方式或n×n块“Z”次序读取来对变换系数进行解码。
根据第五方面,提供了一种计算机程序产品,其包括上面存储有计算机可读指令的非暂时性计算机可读存储介质,所述计算机可读指令可由包括处理硬件的计算机化装置执行以执行第四方面的方法。
根据第六方面,提供了一种用于对编码数据进行解码以生成解码输出数据的解码器,其中所述解码器包含:(i)输入,其用于接收编码数据;(ii)数据处理布置,其用于应用至少一种逆变换以将接收到的编码数据转换为增强层数据,所述增强层数据提供用于增强从输入数据的下采样版本导出的基本层重建的指令,其中增强层数据包括残差数据以提供其增强,其中残差数据经过至少一种变换和至少一种数据压缩方法以生成编码数据,其特征在于所述解码器进一步包含:(iii)解压缩布置,其用于根据至少一种数据压缩方法解压缩接收到的编码数据以生成中间解码数据;以及(iv)逆变换布置,其用于将至少一种逆变换应用为逆哈达玛变换,以将从中间解码数据导出的变换系数转换为残差数据,其中通过以图块栅格方式或n×n块“Z”次序读取来对变换系数进行解码。
本公开的额外方面、优点、特征和目的将从附图和结合所附权利要求解释的说明性实施例的详细描述中变得显而易见。
应理解,在不脱离由所附权利要求定义的本公开的范围的情况下,本公开的特征易于以各种组合进行组合。
附图说明
当结合附图阅读时,可以更好地理解上述发明内容以及说明性实施例的以下详细描述。出于示出本公开的目的,在图式中示出本公开的示例性构造。然而,本公开不限于本文所公开的特定方法和设备。此外,本领域的技术人员将理解,附图不是按比例绘制的。在可能的情况下,相似的元件已用相同的数字指示。
现在将通过举例并且参考以下各图来描述本公开的实施例,其中:
图1A是从哈达玛变换读出系数的Z次序方式的不同比例的示意性图示;
图1B是沃尔什-哈达玛变换(DWHT)的基础的图示;
图1C是图块栅格次序读出的部分的示意性图示;
图1D是比较栅格读出的示意性图示;并且
图2至21是当哈达玛变换应用于各种类型的图像或视频内容时,通过采用从哈达玛变换读出系数的图块和Z次序方式获得的性能益处的图形说明。
在附图中,带下划线的数字用于表示带下划线的数字所在的项或与带下划线的数字相邻的项。无下划线的数字与由将无下划线的数字与项连接的线标识的项相关。
具体实施方式
在以下详细描述中,阐明了本公开的说明性实施例和可以实施这些说明性实施例的方式。尽管描述了执行本公开的一些模式,但本领域的技术人员将认识到,用于执行或实践本公开的其它实施例也是可能的。
通过例如LCEVC和VC-6等增强编码标准可知,在编码器中对输入数据进行编码以生成编码输出数据可包括指示使用输入数据的下采样版本将输入数据转换为基本层重建数据,以及生成提供用于增强基本层重建数据的指令的增强层数据。例如,可对输入数据进行下采样,并将其提供给基本编解码器以进行编码和后续解码。编码基本层形成传输到解码器的基本层重建数据的编码。增强层数据包括表示从基本层重建数据(即,随后解码、编码的基本层)生成的重建与从输入数据导出的数据之间的差异的残差数据。可能存在表示不同空间分辨率的多层残差数据(例如,LCEVC具有两层)。每个残差数据流都经过至少一种变换和至少一种数据压缩方法以生成编码输出数据,即一组编码的残差流。还可以在变换之后执行量化。编码输出数据可包括编码基本层(例如,作为多路复用组合的基本流和增强流的一部分),或者可分开传输。编码器可适当配置以执行此方法。
类似地,还可能存在用于在解码器中对编码数据进行解码以生成解码输出数据的对应方法。此方法包含在解码器处接收编码数据,以及应用至少一种逆变换以将接收到的编码数据转换为增强层数据。逆变换可以将一组变换系数变换回残差数据。还可以在逆变换之后执行解量化。增强层数据包括在编码器处生成的先前描述的残差数据。解码器可以接收编码基本层,并指示使用基本层解码器(例如,对应于先前描述的编码器所使用的基本层编码器)对此编码基本层进行解码。这可能会在解码器处产生基本层重建数据,所述数据可用残差数据增强。在一种情况下,在应用至少一层残差数据之前对用基本层重建数据生成的重建进行上采样。解码器可适当配置以执行此方法。
更多详细信息可在与LCEVC和VC-6标准相关的公布材料中找到。
沃尔什-哈达玛变换是简单但有效的压缩数据方法。它们的显著优点在于基本变换不需要乘法,只需要和与差。离散沃尔什-哈达玛变换(DWHT)是通过对离散哈达玛矩阵的简单重新排列获得的。哈达玛矩阵是具有这种性质的矩阵。通过迭代地应用以下运算,可以找到高阶矩阵:
Figure BDA0003922070410000071
例如:
Figure BDA0003922070410000072
DWHT简单地通过归一化和按顺序重新排列行(即,根据符号变化的数量)从对应的哈达玛矩阵获得。因此,四点DWHT由下式给出:
Figure BDA0003922070410000073
图1B描绘了1-D DWHT 140、142、144、146的基本函数。在某些情况下,可省略归一化因子(方程3中的1/4),从而使变换矩阵类似于方程2的哈达玛矩阵。例如,如果将归一化并入例如量化等其它函数中,则这是可能的。在LCEVC和VC-6内,基于DWHT或哈达玛变换的变换被称为方向分解(DD)变换。它可以应用为4×4变换矩阵或更大的16×16变换矩阵,后一种情况被称为方向分解平方(DDS)变换,因为它等效于应用DD变换两次。方向分解具有能量压缩和解相关性质,因为哈达玛矩阵的行是正交的,并且信号的能量通过与哈达玛阵第一行相关联的“平均”系数表示,其它系数表示不同方向上的差异。对于许多原始图像块,信号能量往往相当均匀地分布在整个块上。在变换之后,数据在水平和垂直方向上进行了解相关,并且对于许多块,一个主导系数,即平均系数,包含大部分信号能量。
哈达玛函数应用于在VC-6和LCEVC编码操作期间生成的残差元素的数据阵列,以提供对应的哈达玛变换元素,在本文中称为变换系数。举例来说,4×4哈达玛矩阵(DD变换)的每一行可以标记为A、H、v和D之一,分别对应于编码单元(通常是2×2或4×4残差块)内的平均值、水平差、竖直差和对角线差。如例如在LCEVC标准中所描述,包含残差的2×2编码单元被展平为4×1向量,然后使用哈达玛矩阵进行变换,以生成具有[A,H,V,D]系数项的4×1向量。这些系数中的每一个都可以与其它类似的系数分组在一起,使得变换生成四个“表面”,即与A、H、V和D中的特定一个相关的变换系数值的帧或矩阵。例如,可存在A表面、H表面、V表面和D表面。对于16×16DDS变换,可存在16个表面。可在编码单元上并行地执行哈达玛变换,然后进行熵编码,熵编码包括行程长度编码后接霍夫曼编码。
在比较LCEVC标准实施方案中,针对RLE在表面上以主要行栅格次序读出每个表面的变换系数。图1D示出了这种排序的实例,其中沿着表面的每一行依次(例如,沿着每一行从左到右,如线162所示)读出变换系数值160。
在本实例中,本发明人己意识到,在RLE之前选择变换系数的排序可能会影响压缩效率。他们已经意识到,作为增强编码的一部分生成的(例如,在LCEVC或VC-6中执行的)残差数据通常会展现基于原始视频帧内的原始空间相关性的空间相关性。由于本文所描述的增强编码基于原始数据与来自较低空间分辨率的上采样重建的比较生成增强数据,因此所述增强数据的性质不同于在例如H.264和H.265等比较视频编解码器中生成的残差数据,其中在后一种情况下,残差数据是基于局部空间预测(例如,通过相邻块)或运动向量介导的时间预测(例如,通过其它帧)生成的。因此,例如LCEVC和VC-6等标准内的残差数据具有不同性质,例如空间相关,这是比较残差处理方法所不期望的。本发明人已意识到,这种空间相关性可以跨越多个编码单元,因此表面内的变换系数也可以示出空间相关性。例如,一条水平线可以跨越多个编码单元延伸。因此,本实例允许选择变换系数的读出次序,所述读出次序允许在后续的RLE和/或霍夫曼编码期间进行有益的压缩。另外,已发现改进的读出次序可能取决于被编码的内容。因此,可以在编码期间选择内容相关的读出次序并将其传送给解码器,以允许在解压缩之后进行对应读出。已发现,这些益处与(例如,读出之前或之后)执行的任何量化无关。
在本文所描述的某些实例中,呈现了主要行栅格读出次序的两个替代方案。这些替代方案包含图块栅格次序和n×n块“Z”次序。每种次序的益处可能因内容类型和所需比特率中的一种或多种而异,因此在编码期间可以选择三种次序中的一种以提供最佳压缩,并将其作为配置数据传送给解码器以供解码。
图1A示出了在变换系数的表面上执行的“Z”读出次序的实例。图1A的左上角示出了应用于表面中的变换系数102、104、106、108的2×2块110的“Z”次序。图1A的其余部分示出了可以如何以递归方式应用这种“Z”次序。例如,右上角示出了应用于由四个2×2块110形成的16个变换系数块120上的“Z”次序。然后,左下角示出了应用于2×2组块120的“Z”次序,并且对于右下角的系数130再次重复此模式。
更详细地,参考图1A左上角,从左上系数到右上系数到左下系数再到右下系数,即以“Z”次序,读取来自表面的2×2变换系数块。如图1A右上角所示,在四个2×2个变换系数组中读取4×4个变换系数组,其中如图所示,所述四个组的读取也以“Z”次序实施。图1A还示出了16×16个变换系数组和32×32个变换系数组的这种“Z”读出次序。当已按图1A中所指示的次序读出变换系数时,生成变换系数的对应1维(1-D)序列,所述变换系数易于使用行程长度编码、霍夫曼编码或其它熵编码方法进行编码,以生成压缩数据以供传送给解码器。还可以在读出之前或之后执行量化。有益的是,在对VC-6和LCEVC的数据进行编码时,采用行程长度编码后接霍夫曼编码的组合。
在某些情况下,图1A所示的“Z”次序示出为与主要行栅格次序相比提供改进的编码。对于某些内容类型,还发现具有具备可配置大小的图块的图块栅格次序提供了压缩改进。在某些情况下,发现以平铺方式读出变换系数比上述“Z”读出次序提供更好的压缩结果。在图块栅格次序情况下,系数以定义的图块内的栅格次序读取,然后使用行程长度编码、霍夫曼编码或行程长度编码和霍夫曼编码的组合(利用任选的量化,如上文所描述)压缩读出的变换系数。已发现,大小在8×8元素阵列到64×64元素阵列范围内的图块,例如大小为8×8元素阵列、16×16元素阵列或32×32元素阵列的图块提供了有益的结果。将了解,可以使用矩形格式的元素阵列,而不是上述正方形元素阵列。
图1C示出了应用于变换系数152的表面150的图块栅格次序的实例。示例图块154的大小示出为dx系数×dy系数。在某些情况下,对于正方形图块,dx=dy=d,其中d可以设置为8、16、32或64中的一个。如针对前三个图块部分地示出,读出次序以每个图块内的栅格次序移动,例如在移动到下一个图块之前沿着图块的每一行移动,如图所示。图块栅格次序可以在变换系数152的整个表面150上继续,以生成1D序列。应注意,这些图块的定义与用作变换基础的原始编码单元大小无关(其中可以将变换并行应用于每个编码单元以生成表面)。
总之,在比较标准化处理实践中,可以从哈达玛变换中对数据进行简单栅格读出以生成系数序列,以使用例如行程长度编码(RLE)进行压缩。然而,出乎意料地发现,采用“Z”次序或平铺方式中的一种或多种读出哈达玛系数甚至更有益于提高压缩性能。压缩性能的这种提高被认为是由于给定图像帧或视频帧内的空间相关性而出现的。压缩性能的这种改进如图2至21所示。
“Z”排序本质上是以递归Z形模式对系数进行编码,首先以Z模式对四个系数进行编码,然后以Z模式对4个Z模式进行编码;如图1A所示。此过程以越来越大的比例重复,直到例如整个图像被编码。然而,将了解,当给定图像中的表面长度不是二的幂时,边界条件会使Z次序算法稍微复杂化,但Z次序读出的各种有效实施方案仍然可行。
实验上,当对不同类型的图像和视频内容进行编码时,本公开的实施例能够提高数据压缩性能,例如与系数的栅格读出相比,在可实现的压缩方面增强大约40%。然而,对于某些类型的图像和视频内容,可实现的压缩方面的增强明显小于40%,如某些图2至21所示。
图2和3示出了基于DD变换(4×4哈达玛变换)和DDS变换(16×16哈达玛变换)的相应编码的结果200和300。与原始主要行栅格次序相比,y轴以百分比表示相对变化ΔR,例如:
Figure BDA0003922070410000101
其中Rnew是从新提出的排序方法中获得的比特率,并且Rorig是原始主要行栅格次序。值ΔR<0%表示比原始次序有所改进,并且值ΔR>0%表示压缩效率降低。使用具有固定量化参数的设置数量的(例如,100个)帧执行测试。图2和3示出了随着编码比特率的增加,所提出的次序有了改进。图2和3示出了第一测试视频“cactus”的结果。图4和5示出了第二测试视频“BasketballDrive”的结果400和500,图14和15示出了第三测试视频“Fornite”的结果1400和1500,并且图16和17示出了第四测试视频“ParkRunning3”的结果1600和1700,类似于DD和DDS变换。
图6示出了上述四种不同内容类型的DD变换的测试结果600,并且图7示出了DDS变换的测试结果700。可以看出,比特率的提高可能会因内容类型和读取次序类型而异。因此,可以通过为特定内容项选择特定读出次序,例如基于编码时的测试编码和/或以前的实验结果来提高比特率。
图8和9示出了类似于结果200和300但针对不同目标比特率范围的结果800和900(通过一组不同的量化参数实施)。类似地,图10和11示出了类似于结果400和500的结果1000和1100,图18和19示出了类似于结果1400和1500的结果1800和1900,并且图20和21示出了类似于结果1600和1700但针对不同目标比特率范围的结果2000和2100。图12和13分别示出了不同的第二目标比特率范围内DD和DDS变换的结果1200和1300。
将了解,本公开的实施例,即高级编码器,易于在自定义数字电路中实施,所述自定义数字电路例如门阵列、FPGA等;替代地,本公开的实施例易于使用例如多核处理器的计算硬件来实施,所述计算硬件在操作时执行一个或多个软件产品,包含机器可执行指令。
哈达玛变换系数的这种上述平铺或“Z”次序读出能够在编码器和对应解码器中使用,以在通过数据通信网络,例如通过
Figure BDA0003922070410000102
传送图像或视频内容时实现增强的数据压缩程度。
将了解,在对变换后的残差数据的阵列进行编码时,4个DD分量或16个DDS分量中的每一个在通过可变长度编码(或其它熵编码技术,例如算术或范围编码)进行压缩之前,通常使用行程长度编码进行单独编码(即,作为一组4个或16个表面)。虽然通过此第二步骤引入的压缩几乎不依赖或不依赖DD或DDS分量中数据的次序,但通过第一步骤可能引入的压缩预计取决于次序。
例如,如果同一给定值在DD分量(下文称为“表面”)中出现两次,则在所述出现彼此分开的情况下,行程长度压缩没有任何益处。另一方面,如果偶然选择了数据的扫描模式以便将重复的值立即连续读取到行程长度编码器中,则会保存第二符号的大小,取而代之的是将行程长度指定为2的成本。通常,以栅格次序扫描例如表面等2D阵列。这允许相同值的长行程彼此相邻。然而,实际图像具有自然噪声或测量噪声并且具有较短行程,因此只有在经过大量量化(大步长)之后,才会出现长行程。量化参数有时在图像的各个补丁之间是不同的,这也是本公开的实施例中采用的不同次序可能有益于辅助行程长度编码的一个原因。
因此,本公开的实施例有益地采用允许给定编码器在编码除了全栅格之外的元素时在不同排序模式之间切换,以便在不改变质量的情况下降低比特率或文件大小。元素读出的改进模式任选地被硬编码(例如,并入用于实施给定编码器的FPGA中)或通过数据的智能在线评估来确定(例如,使用可由计算硬件执行的软件,例如使用机器学习/人工智能(ML/AI)来执行评估,所述ML/AI能够迭代地学习最佳策略以响应于要编码的元素中出现的不同值分布而在模式之间进行选择)。在硬编码的情况下,解码器必须按照每个信道使用解码器的硬编码次序。否则,必须通过从给定编码器提供给对应解码器的编码比特流中的元数据用信号通知次序。
更局部次序的一个实例是例如上述的Z次序。另一个实例是以类似图块平铺阵列,并且首先以图块的栅格次序对数据排序,然后以图块内的栅格次序对数据排序。根据实施本公开的实施例的实践经验,观察到图块大小的影响,并且在某些情况下,图块栅格次序优先于Z次序。取决于量化步长,可以选择是否采用Z次序读出而不是图块读出的权衡:在无损模式(例如,量化步长为1)中,实施模式选择的益处可能很小,但可随着步长变化而增加(例如,如图表所示)。
虽然在真实(图像)空间中的排序/遍历是众所周知的,但DD分量空间中不同排序的想法(如本公开的实施例中所采用)并不明显,并且压缩的益处可能是巨大的。编码器可以决定使用预定义策略,而不是独立地决定在每帧基础上用于表面的次序。所述策略基于表面数据的熵或统计分布有益地切换排序。有益的是,由编码器生成的比特流用信号通知解码器帧之间是否必须更改任何排序。
在不脱离如所附权利要求所定义的本发明的范围的情况下,可以对前述的本发明的实施例进行修改。用于描述本发明并且要求保护本发明的表达,例如“包含”、“包括”、“并入”、“由……组成”、“具有”、“是”旨在以非排他性的方式进行解释,即允许也存在未明确描述的项、组件或元件。提及单数也应被解释为涉及复数。所附权利要求书中包含在括号内的数字旨在帮助理解权利要求,并且不应以任何方式解释为限制这些权利要求所要求保护的主题。

Claims (16)

1.一种用于在编码器中对输入数据进行编码以生成编码输出数据的方法,其中所述方法包含:
指示使用所述输入数据的下采样版本将所述输入数据转换为基本层重建数据;以及
生成提供用于增强所述基本层重建数据的指令的增强层数据,其中所述增强层数据包括表示从所述基本层重建数据生成的重建与从所述输入数据导出的数据之间的差异的残差数据,其中所述残差数据经过至少一种变换和至少一种数据压缩方法以生成所述编码输出数据,
其特征在于所述方法包含:
将所述至少一种变换布置为包含哈达玛变换以将所述残差数据转换为对应变换系数,其中所述哈达玛变换的不同输出元素被布置为要编码的不同表面,以及
为所述表面中的所述变换系数选择输出次序,以为所述至少一种数据压缩方法提供变换系数序列以生成所述编码输出数据,
其中所述输出次序被选择为至少图块栅格次序和n×n块“Z”次序中的一种。
2.根据权利要求1所述的方法,其特征在于所述至少一种数据压缩方法包含行程长度编码(RLE)后接霍夫曼编码。
3.根据权利要求1或2所述的方法,其特征在于方法包含将所述图块栅格次序布置成包含对大小在8×8个元素到64×64个元素的范围内的图块进行编码,其中以每个图块内的栅格次序选择变换系数。
4.根据权利要求3所述的方法,其特征在于所述图块栅格次序包含对大小为8×8个元素、16×16个元素或32×32个元素的图块进行编码。
5.根据权利要求1、2、3或4所述的方法,其特征在于所述n×n块“Z”次序包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个n×n“Z”次序读出,其中所述n×n“Z”次序读出在不同变换系数组之间以递归n×n“Z”次序重复。
6.根据权利要求1至5中任一项所述的方法,其特征在于所述方法实施为与VC-6或LCEVC标准之一兼容。
7.一种编码器,所述编码器在操作时对输入数据进行编码以生成对应的编码输出数据,
其中所述编码器指示使用所述输入数据的下采样版本将所述输入数据转换为基本层重建数据,
其中所述编码器生成提供用于增强所述输入数据的所述下采样版本的指令的增强层数据,
其中残差数据表示从所述基本层重建数据生成的重建与从所述输入数据导出的数据之间的差异,
其中所述残差数据在所述编码器中经过至少一种变换和至少一种数据压缩变换以生成所述编码输出数据,
其特征在于
所述至少一种变换包含哈达玛变换以将所述残差数据转换为对应的哈达玛变换系数,
其中所述哈达玛变换的不同输出元素被布置为要编码的不同表面,
其中所述编码器被配置成为所述表面中的所述变换系数选择输出次序,以为所述至少一种数据压缩方法提供变换系数序列以生成所述编码输出数据,
其中所述输出次序被选择为至少图块栅格次序和n×n块“Z”次序中的一种。
8.根据权利要求7所述的编码器,其特征在于所述至少一种数据压缩变换包含行程长度编码(RLE)后接霍夫曼编码。
9.根据权利要求7至8中任一项所述的编码器,其特征在于所述图块栅格次序包含对大小在8×8个元素到64×64个元素的范围内的图块进行编码,其中以每个图块内的栅格次序选择变换系数。
10.根据权利要求9所述的编码器,其特征在于平铺方式包含对大小为8×8个元素、16×16个元素或32×32个元素的图块进行编码。
11.根据权利要求7、8、9或10所述的编码器,其特征在于所述n×n块“Z”次序包含给定系数组中从左上系数到右上系数到左下系数再到右下系数的一个或多个n×n“Z”次序读出,其中所述n×n“Z”次序读出在不同变换系数组之间以递归n×n“Z”次序重复。
12.根据权利要求7至11中任一项所述的编码器,其特征在于所述编码器实施为与VC-6或LCEVC标准之一兼容。
13.一种计算机程序产品,其包括上面存储有计算机可读指令的非暂时性计算机可读存储介质,所述计算机可读指令能由包括处理硬件的计算机化装置执行以执行根据权利要求7至12中任一项所述的方法。
14.一种用于在解码器中对编码数据进行解码以生成解码输出数据的方法,其中所述方法包含:
(i)在所述解码器处接收编码数据;
(ii)应用至少一种逆变换以将接收到的编码数据转换为增强层数据,所述增强层数据提供用于增强从输入数据的下采样版本导出的基本层重建的指令,其中所述增强层数据包括残差数据以提供其增强,其中所述残差数据经过至少一种变换和至少一种数据压缩方法以生成所述接收到的编码数据,
其特征在于
所述方法进一步包含:
(iii)根据所述至少一种数据压缩方法解压缩所述接收到的编码数据以生成中间解码数据;以及
(iv)将所述至少一种逆变换布置为包含逆哈达玛变换,以将从所述中间解码数据导出的变换系数转换为所述残差数据,
其中通过以图块栅格方式或n×n块“Z”次序读取来对所述变换系数进行解码。
15.一种计算机程序产品,其包括上面存储有计算机可读指令的非暂时性计算机可读存储介质,所述计算机可读指令能由包括处理硬件的计算机化装置执行以执行根据权利要求14所述的方法。
16.一种用于对编码数据进行解码以生成解码输出数据的解码器,其中所述解码器包含:
(i)输入,其用于接收编码数据;
(ii)数据处理布置,其用于应用至少一种逆变换以将接收到的编码数据转换为增强层数据,所述增强层数据提供用于增强从输入数据的下采样版本导出的基本层重建的指令,其中所述增强层数据包括残差数据以提供其增强,其中所述残差数据经过至少一种变换和至少一种数据压缩方法以生成所述编码数据,
其特征在于
所述解码器进一步包含:
(iii)解压缩布置,其用于根据所述至少一种数据压缩方法解压缩所述接收到的编码数据以生成中间解码数据;以及
(iv)逆变换布置,其用于将所述至少一种逆变换应用为逆哈达玛变换,以将从所述中间解码数据导出的变换系数转换为所述残差数据,
其中通过以图块栅格方式或n×n块“Z”次序读取来对所述变换系数进行解码。
CN202180032544.4A 2020-04-14 2021-04-14 熵编码的变换系数排序 Pending CN115486070A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GBGB2005451.6A GB202005451D0 (en) 2020-04-14 2020-04-14 Apparatus and method for encoding data
GB2005451.6 2020-04-14
GBGB2005658.6A GB202005658D0 (en) 2020-04-19 2020-04-19 Apparatus and method for encoding data and decoding data
GB2005658.6 2020-04-19
PCT/GB2021/050892 WO2021209748A1 (en) 2020-04-14 2021-04-14 Transformed coefficient ordering for entropy coding

Publications (1)

Publication Number Publication Date
CN115486070A true CN115486070A (zh) 2022-12-16

Family

ID=75660065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180032544.4A Pending CN115486070A (zh) 2020-04-14 2021-04-14 熵编码的变换系数排序

Country Status (6)

Country Link
US (1) US20230141312A1 (zh)
JP (1) JP2023522175A (zh)
KR (1) KR20230021638A (zh)
CN (1) CN115486070A (zh)
GB (1) GB2608962A (zh)
WO (1) WO2021209748A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058215A (en) * 1997-04-30 2000-05-02 Ricoh Company, Ltd. Reversible DCT for lossless-lossy compression
WO2019111012A1 (en) * 2017-12-06 2019-06-13 V-Nova International Ltd Method and apparatus for decoding a received set of encoded data
CN112703738A (zh) * 2018-08-03 2021-04-23 V-诺瓦国际有限公司 针对信号增强编码的上采样

Also Published As

Publication number Publication date
GB202215554D0 (en) 2022-12-07
GB2608962A (en) 2023-01-18
WO2021209748A1 (en) 2021-10-21
KR20230021638A (ko) 2023-02-14
US20230141312A1 (en) 2023-05-11
JP2023522175A (ja) 2023-05-29

Similar Documents

Publication Publication Date Title
JP6675289B2 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
JP7047119B2 (ja) 変換領域における残差符号予測のための方法および装置
CN104041035B (zh) 用于复合视频的无损编码及相关信号表示方法
JP2022033108A (ja) ビデオ符号化での分割ブロック符号化方法、ビデオ復号化での分割ブロック復号化方法及びこれを実現する記録媒体
KR20200105787A (ko) 영상 부호화 방법 및 컴퓨터로 읽을 수 있는 기록 매체
US20040136457A1 (en) Method and system for supercompression of compressed digital video
WO2011083573A1 (ja) 動画像符号化装置及び動画像復号化装置
WO2012096150A1 (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP6469048B2 (ja) 動画像符号化装置、動画像符号化方法、動画像復号装置、動画像復号方法、動画像符号化データ及び記録媒体
CN1306649A (zh) 把具有第一分辨率的编码图像直接解码为具有第二分辨率的解码图像
CN103782598A (zh) 用于无损编码的快速编码方法
KR100846778B1 (ko) 복수개의 주사 패턴을 이용한 부호화 방법, 복호화 방법,및 그 장치
JP2005160089A (ja) αチャンネル映像のための符号化ブロックパターン生成装置及び方法とそれを利用したαチャンネル映像符号化/復号化装置及び方法
KR20190091235A (ko) 복원 블록을 생성하는 방법 및 장치
KR20130045155A (ko) 영상 복호화 장치
KR102253173B1 (ko) 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
JP6708211B2 (ja) 動画像符号化装置、動画像符号化方法および動画像符号化プログラムを記憶する記録媒体
KR101529903B1 (ko) 블록기반 깊이정보 맵의 코딩 방법과 장치, 및 이를 이용한 3차원 비디오 코딩 방법
CN115486070A (zh) 熵编码的变换系数排序
US9456213B2 (en) Method for simultaneously encoding macroblock groups of frame
KR100813989B1 (ko) 복수개의 주사 패턴을 이용한 부호화 방법, 복호화 방법,및 그 장치
KR100775019B1 (ko) 복수개의 주사 패턴을 이용한 부호화 방법, 복호화 방법,및 그 장치
KR20120008321A (ko) 서브샘플링을 이용한 적응적 스캐닝 및 확장된 템플릿 매칭 방법 및 장치

Legal Events

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