CN112789856A - 视频编/解码中基于变换域滤波的量化伪影抑制 - Google Patents

视频编/解码中基于变换域滤波的量化伪影抑制 Download PDF

Info

Publication number
CN112789856A
CN112789856A CN201980065153.5A CN201980065153A CN112789856A CN 112789856 A CN112789856 A CN 112789856A CN 201980065153 A CN201980065153 A CN 201980065153A CN 112789856 A CN112789856 A CN 112789856A
Authority
CN
China
Prior art keywords
pixel
value
filtered
samples
transform
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
CN201980065153.5A
Other languages
English (en)
Inventor
D.鲁萨诺夫斯基
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN112789856A publication Critical patent/CN112789856A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • 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/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/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/619Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding the transform being operated outside the prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

一种用于对视频数据进行解码的装置包括存储器和一个或更多个以电路实现的处理器。该一个或更多个处理器被配置为:接收包括已编码视频数据的比特流;从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息。该一个或更多个处理器还被配置为:使用预测信息和残差块来重建当前块以生成重建块。响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,该一个或更多个处理器被配置为对重建块执行变换域滤波以生成经滤波块。

Description

视频编/解码中基于变换域滤波的量化伪影抑制
本申请要求于2019年10月7日提交的美国申请第16/595,016号的优先权,该美国申请要求于2018年10月8日提交的美国临时申请第62/742,847号的权益,以上两者的全部内容通过引用合并于此。
技术领域
本公开涉及视频编码和视频解码。
背景技术
数字视频功能可以被集成到各种各样的设备中,包括数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或台式计算机、平板计算机、电子书阅读器、数码相机、数字记录设备、数字媒体播放器、视频游戏设备、视频游戏控制台、蜂窝或卫星无线电话、所谓的“智能电话”、视频电话会议设备、视频流式处理设备等等。数字视频设备实现视频编译码技术,例如那些在由下述定义的标准中描述的技术:MPEG-2、MPEG-4、ITU-TH.263、ITU-T H.264/MPEG-4第10部分、高级视频编译码(AVC)、高效视频编译码(HEVC)标准、ITU-TH.265/高效视频编译码(HEVC)、以及上述各标准的扩展。通过实现这些视频编译码技术,上述视频设备可以更有效地对数字视频信息进行发送、接收、编码、解码和/或存储。
视频编译码技术包括空间(图片内)预测和/或时间(图片间)预测,以减少或去除视频序列中固有的冗余。对于基于块的视频编译码,可以将视频条带(例如,视频图片或视频图片的一部分)分割为视频块,这些视频块也可以被称为编译码树单元(CTU)、编译码单元(CU)和/或编译码节点。对于图片的帧内编译码的(I)条带中的视频块,使用相对于同一图片中相邻块中的参考样点的空间预测进行编码。图片的帧间编译码的(P或B)条带中的视频块,可以使用相对于同一图片中相邻块中参考样点的空间预测或者相对于其他参考图片中的参考样点的时间预测。图片可以被称为帧,并且参考图片可以被称为参考帧。
发明内容
总的来说,本公开描述了关于对由于压缩、模糊等被失真的视频帧执行的滤波过程的技术以潜在地改善客观和主观的质量。本文所述的一种或更多种技术可以被用于新的视频编译码解决方案,例如H.266或现有视频编解码器中任一种的扩展的设计中,或者被提议作为对于未来视频编译码标准来说有前途的编译码工具。其也可以用作由标准或专用编解码器输出的视频帧的后处理方法。
在一示例中,一种用于对视频数据进行解码的方法包括:由以电路实现的视频解码器来接收包括已编码视频数据的比特流;由视频解码器从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息;由视频解码器使用预测信息和残差块来重建当前块以生成重建块;以及响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,由视频解码器对重建块执行变换域滤波以生成经滤波块,其中执行变换域滤波包括:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成所述像素的经滤波值。
在另一示例中,一种用于对视频数据进行解码的装置包括:被配置为存储已编码视频数据的存储器;以及以电路实现的一个或更多个处理器,并且一个或更多个处理器被配置为:接收包括已编码视频数据的比特流;从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息;使用预测信息和残差块来重建当前块以生成重建块;以及响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,对重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,一个或更多个处理器被配置为:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
在另一示例中,一种用于对视频数据进行解码的装置包括:用于接收包括已编码视频数据的比特流的部件;用于从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息的部件;用于使用预测信息和残差块来重建当前块以生成重建块的部件;以及用于,响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,对重建块执行变换域滤波以生成经滤波块的部件,其中用于执行变换域滤波的部件包括:用于生成重建块的像素的样点集合的部件;用于对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量的部件;用于对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量的部件;以及用于对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值的部件。
在一示例中,一种非暂时性计算机可读存储介质存储有指令,当指令被执行时,使得一个或更多个处理器:接收包括已编码视频数据的比特流;从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息;使用预测信息和残差块来重建当前块以生成重建块;以及响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,对重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,一个或更多个处理器被配置为:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
在另一示例中,一种用于对视频数据进行编码的方法包括:由以电路实现的视频编码器使用预测信息和残差块来重建当前块以生成重建块;响应于确定变换域滤波针对当前块被启用:由视频编码器对视频数据的比特流进行编码,其中,比特流包括指示预测信息、残差块以及变换域滤波信息的一个或更多个语法元素,其中变换域滤波信息指示变换域滤波针对当前块被启用;以及由视频编码器对重建块执行变换域滤波以生成经滤波块,其中,执行变换域滤波包括:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
在另一示例中,一种用于对视频数据进行编码的装置包括:被配置为存储视频数据的存储器;以及以电路实现的一个或更多个处理器,并且一个或更多个处理器被配置为:使用预测信息和残差块来重建当前块以生成重建块;响应于确定变换域滤波针对当前块被启用:对视频数据的比特流进行编码,其中比特流包括指示预测信息、残差块和变换域滤波信息的一个或更多个语法元素,变换域滤波信息指示变换域滤波针对当前块被启用;以及对重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,一个或更多个处理器被配置为:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
在一示例中,一种用于对视频数据进行解码的装置包括:使用预测信息和残差块来重建当前块以生成重建块的部件;响应于确定变换域滤波针对当前块被启用,对视频数据的比特流进行编码的部件,其中比特流包括指示预测信息、残差块和变换域滤波信息的一个或更多个语法元素,变换域滤波信息指示变换域滤波针对当前块被启用;以及对重建块执行变换域滤波以生成经滤波块的部件,其中,执行变换域滤波的部件包括:生成重建块的像素的样点集合的部件;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量的部件;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量的部件;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值的部件。
在另一示例中,一种非暂时性计算机可读存储介质存储有指令,当指令被执行时,使得一个或更多个处理器:使用预测信息和残差块来重建当前块以生成重建块;响应于确定变换域滤波针对当前块被启用:对视频数据的比特流进行编码,其中比特流包括指示预测信息、残差块和变换域滤波信息的一个或更多个语法元素,变换域滤波信息指示变换域滤波针对当前块被启用;以及对重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,一个或更多个处理器被配置为:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
在以下附图和描述中阐明了一个或更多个示例的细节。根据说明书、附图和权利要求书,其他特征、目的和优势将是显而易见的。
附图说明
图1是示出执行本公开的技术的一种示例视频编码和解码系统的框图。
图2A和图2B是示出一种示例四叉树二叉树(QTBT)结构以及对应的编译码树单元(CTU)的示意图。
图3是示出可以执行本公开的技术的一种示例视频编码器的框图。
图4是示出可以执行本公开的技术的一种示例视频解码器的框图。
图5是示出一种示例滤波过程的示意图。
图6是示出一种示例等效滤波器模型的示意图。
图7是示出一种使用子采样查找表(LUT)的示例传递函数(transfer function)。
图8是示出一种处理斜率为-5.5的亮度斜坡的示例效果的示意图。
图9是示出一种用于对当前块进行编码的示例方法的流程图。
图10是示出一种用于对当前块进行解码的示例方法的流程图。
图11是示出一种用于对变换域滤波信息进行解码的示例方法的流程图。
图12是示出一种用于变换域滤波的示例方法的流程图。
图13是示出一种用于使用边界区域的变换域滤波的示例方法的流程图。
图14是示出一种用于对变换域滤波信息进行编码的示例方法的流程图。
具体实施方式
在编解码过程中对残差块的变换系数进行的量化会将量化伪影(artifacts)引入视频数据的残差块中。因此,使用预测信息和残差块来重建当前块可以导致块伪影,诸如,例如,但不限于结果重建块中正在形成的、在原始视频数据中并不存在的水平和垂直断续。上述断续会被看成是移动和闪烁的,而其是不需要的。此外,这种块伪影可以降低视频数据的预测的准确性,这可能导致较低的计算效率,较大的比特流,和/或较高的功耗。
本文中所描述的技术,例如,通过应用Hadamard(阿达马)变换滤波,在变换域中应用去噪和/或噪声抑制。此外,为了进一步提高重现原始视频数据的准确性,本文中所述的技术可以使用语法元素的值来帮助控制基于变换的滤波,上述语法元素在比特流中被信令通知以指示基于变换的滤波是否针对视频数据的当前块被启用、被禁用或被衰减。以这种方式,视频编解码器(例如,视频编码器或视频解码器)可以应用基于变换的滤波以减少或去除可能包括块伪影的视频数据的块中的块伪影,而不是将基于变换的滤波应用于视频数据的所有块。
图1是示出可以执行本公开的技术的一种示例视频编码和解码系统100的框图。本公开的技术通常针对编译码(编码和/或解码)视频数据。通常,视频数据包括用于处理视频的任何数据。因而,视频数据可以包括原始的、未编译码的视频,已编码视频,已解码(例如,重建的)视频以及视频元数据,例如信令数据。
如图1所示,在本示例中,系统100包括源设备102,源设备102提供将要由目标设备116解码和显示的已编码视频数据。具体的,源设备102经由计算机可读介质110向目标设备116提供视频数据。源设备102和目标设备116可以包括多种设备中的任何设备,包括台式计算机、笔记本(即,膝上型)电脑、平板电脑、机顶盒、例如智能电话的电话手机、电视、相机、显示设备、数字媒体播放器、视频游戏控制台、视频流式传输设备等等。在某些情况下,源设备102和目标设备116被配置用于无线通信,并且因此被称为无线通信设备。
在图1的示例中,源设备102包括视频源104、存储器106、视频编码器200和输出接口108。目标设备116包括输入接口122、视频解码器300、存储器120和显示设备118。根据本公开所述,源设备102的视频编码器200和目标设备116的视频解码器300可以被配置为对基于变换域滤波的量化伪影抑制和信号恢复的技术进行应用。因而,源设备102表示视频编码设备的示例,而目标设备116表示视频解码设备的示例。在其他示例中,源设备和目标设备可以包括其他组件或布置。例如,源设备102可以从诸如外部相机的外部视频源接收视频数据。同样地,目标设备116可以与外部显示设备连接,而不是包括集成显示设备。
图1中所示的系统100仅仅是一个示例。总的来说,任何数字视频编码和/或解码设备都可以执行基于变换域滤波的量化伪影抑制和信号恢复的技术。源设备102和目标设备116仅仅是这些编译码设备的示例,其中,源设备102生成经编译码的视频数据以传输到目标设备116。本公开将“编译码”设备称为进行数据的编译码(编码和/或解码)的设备。因此,视频编码器200和视频解码器300表示编译码设备的示例,具体分别表示视频编码器的示例和视频解码器的示例。在某些示例中,设备102、116可以以基本对称的方式运行,使得设备102、116中的每一个都包括视频编码组件和视频解码组件。因此,系统100可以支持视频设备102、116之间的单向或双向视频传输,例如,用于视频流式传输,视频回放,视频广播或视频电话。
通常,视频源104表示视频数据(即,原始的、未编译码的视频数据)的源,并将视频数据的连续系列的图片(也称为“帧”)提供给视频编码器200,视频编码器200针对这些图片编码数据。源设备102的视频源104可以包括例如摄像机的视频捕获设备,包含先前捕获的原始视频的视频档案,和/或用于从视频内容提供者接收视频的视频馈送接口。作为另一可替换方案,视频源104可以生成基于计算机图形的数据作为源视频,或者实时视频,存档视频和计算机生成的视频的组合。在每种情况下,视频编码器200都对捕获到的视频数据、预捕获到的视频数据或计算机生成的视频数据进行编码。视频编码器200可以将图片从接收顺序(有时称为“显示顺序”)重新排列为用于编译码的编译码顺序。视频编码器200可以生成包括已编码视频数据的比特流。之后,源设备102可以经由输出接口108将已编码视频数据输出到计算机可读介质110上,以用于通过例如目标设备116的输入接口122的接收和/或检索。
源设备102的存储器106和目标设备116的存储器120表示通用存储器。在某些示例中,存储器106和存储器120可以存储原始视频数据,例如,来自视频源104的原始视频和来自视频解码器300的原始的、已解码的视频数据。另外或可替换地,存储器106和存储器120可以存储可分别由例如视频编码器200和视频解码器300执行的软件指令。尽管在本示例中被与视频编码器200和视频解码器300分离地被示出,但应该理解的是,视频编码器200和视频解码器300还可以包括内部存储器,以实现功能上相似或等效的目的。此外,存储器106和存储器120可以存储例如从视频编码器200输出的已编码视频数据以及输入到视频解码器300的已编码视频数据。在某些示例中,存储器106和存储器120的部分可以被分配为一个或更多个视频缓存器,例如,以存储原始视频数据、已解码视频数据和/或已编码视频数据。
计算机可读介质110可以表示能够将已编码视频数据从源设备102传输到目标设备116的任何类型的介质或设备。在一个示例中,计算机可读介质110表示使得源设备102,例如经由射频网络或基于计算机的网络,实时地将已编码视频数据直接发送到目标设备116的通信介质。根据诸如无线通信协议的通信标准,输出接口108可以对包括已编码视频数据的传输信号进行调制,并且输入接口122可以对接收到的传输信号进行调制。通信介质可以包括任何无线或有线通信介质,例如射频(RF)频谱或一条或更多条物理传输线。通信介质可以形成基于分组的网络的部分,诸如局域网,广域网或诸如因特网的全球网络。通信介质可以包括路由器、交换机、基站或任何其他有助于从源设备102到目标设备116的通信的装备。
在某些示例中,源设备102可以将已编码数据从输出接口108输出到存储设备116。类似地,目标设备116可以经由输入接口122访问来自存储设备116的已编码数据。存储设备116可以包括多种分布式的或本地访问的数据存储媒介中的任何一种,例如硬盘驱动器、Blu-ray光盘、DVD、CD-ROM、闪存、易失性或非易失性存储器、或用于存储已编码视频数据的任何其他合适的数字存储媒介。
在某些示例中,源设备102可以将已编码视频数据输出到文件服务器114或可以存储由源设备102生成的已编码视频的另一中间存储设备。目标设备116可以以流式或下载的方式来访问文件服务器114所存储的视频数据。文件服务器114可以是能够存储已编码视频数据并能将所述已编码视频数据发送至目标设备116的任何类型的服务器设备。文件服务器114可以表示web服务器(例如,用于网站)、文件传输协议(FTP)服务器、内容分发网络设备、或网络连接式存储(NAS)设备。目标设备116可以通过包括因特网连接的任何标准数据连接来访问文件服务器114的已编码视频数据。这可以包括无线信道(例如Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)、或者二者的组合,该组合适合于访问存储在文件服务器114上的已编码视频数据。文件服务器114和输入接口122可以被配置为根据流式传输协议、下载传输协议或二者的组合来运行。
输出接口108和输入接口122可以表示无线发送器/接收器、调制解调器、有线网络组件(例如以太网卡)、根据多种IEEE 802.11标准中的任一种运行的无线通信组件、或其他物理组件。在输出接口108和输入接口122包括无线组件的示例中,输出接口108和输入接口122可以被配置为根据蜂窝通信标准来传送例如已编码视频数据的数据。所述蜂窝通信标准包括例如4G、4G-LTE(长期演进)、LTE Advanced、5G等等。在输出接口108包括无线发送器的某些示例中,输出接口108和输入接口122可以被配置为根据其他无线标准来传送例如已编码视频数据的数据。所述其他无线标准包括IEEE 802.11规范、IEEE 802.15规范(例如ZigBeeTM)、BluetoothTM标准等等。在某些示例中,源设备102和/或目标设备116可以包括相应的片上系统(SoC)设备。例如,源设备102可以包括执行归于视频编码器200和/或输出接口108的功能的SoC设备,而目标设备116可以包括执行归于视频解码器300和/或输入接口122的功能的SoC设备。
可以将本公开的技术应用于支持多种多媒体应用中任一种视频编译码。所述多媒体应用包括例如空中电视广播、有线电视传输、卫星电视传输、因特网流视频传输,例如基于HTTP的动态自适应流(dynamic adaptive streaming over HTTP,DASH)、编码至数据存储介质上的数字视频、存储于数据存储介质上的数字视频的解码、或其他应用。
目标设备116的输入接口122接收来自计算机可读介质110(例如,存储设备112、文件服务器114等)的已编码视频比特流。已编码视频比特流计算机可读介质110可以包括由视频编码器200定义的用信令通知信息。所述用信令通知信息也被视频解码器300使用,例如具有描述视频块或其他已编译码单元(例如,条带、图片、图片组、序列等)的特征和/或处理的值的语法元素。显示设备118向用户显示已解码视频数据的已解码图片。显示设备118可以表示多种显示设备中的任何一种。所述多种显示设备例如是阴极射线管(CRT)显示器、液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一种类显示设备。
虽然图1中未示出,在某些示例中,视频编码器200和视频解码器300分别可以与音频编码器和/或音频解码器集成在一起,并且可以包括适当的MUX-DEMUX单元或其他硬件和/或软件,以处理包括普通数据流中的音频和视频两者的复用流。如果适用,则MUX-DEMUX单元可以遵循ITU H.223多路复用器协议或例如用户数据报协议(UDP)的其他协议。
视频编码器200和视频解码器300均可以实现为多种合适的编码器和/或解码器电路中的任何一种,上述多种合适的编码器和/或解码器电路例如是一个或更多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或以上各种电路的任意组合。在使用软件部分地实现上述技术的情况下,设备可以将用于软件的指令存储在合适的非暂时性计算机可读介质中,并在使用一个或更多个处理器的硬件中执行这些指令,以进行本公开的技术。视频编码器200和视频解码器300中的每一个可以被包括在一个或更多个编码器或解码器中,视频编码器200和视频解码器300中的任一个可以被集成为相应设备中的组合编码器/解码器(CODEC)的一部分。包括视频编码器200和/或视频解码器300的设备可以包括集成电路、微处理器和/或无线通信设备,例如蜂窝电话。
视频编码器200和视频解码器300可以根据诸如ITU-T H.265(也称为高效视频编译码(HEVC))或其扩展(例如多视图和/或可缩放视频编译码扩展)的视频编译码标准来操作。可替换地,视频编码器200和视频解码器300可以根据诸如联合探索测试模型(JointExploration Test Model,JEM)的其他专有或行业标准来操作。然而,本公开的技术不限于任何特定的编码标准。
通常,视频编码器200和视频解码器300可以执行基于块的图片编译码。术语“块”通常是指包括待处理的(例如,编码的、解码的、或者在编码和/或解码过程中使用的)数据的结构。例如,块可以包括亮度和/或色度数据的样点的二维矩阵。通常,视频编码器200和视频解码器300可以对以YUV(例如,Y,Cb,Cr)格式表示的视频数据进行编译码。也就是说,视频编码器200和视频解码器300不是对图片的样点的红、绿和蓝(RGB)数据进行编译码,而是可以对亮度和色度分量进行编译码,其中色度分量可以包括红色色度分量和蓝色色度分量两者。在某些示例中,视频编码器200在编码之前将接收到的RGB格式的数据转换成YUV表示,而视频解码器300将YUV表示转换成RGB格式。可替换地,预处理单元和后处理单元(未示出)可以执行这些转换。
本公开通常可以指图片的编译码(例如,编码和解码),以包括对该图片的数据进行编码或解码的过程。类似地,本公开可以指对图片的块的编译码,以包括对块的数据进行编码或解码的过程,例如,预测和/或残差编译码。已编码视频比特流通常包括用于语法元素(syntax elements)的一系列值,这些语法元素表示编译码决策(例如,编译码模式)和图片到块的分割方式。因此,通常应该将对图片或块进行编译码的描述理解为用于形成该图片或块的语法元素的值进行编译码。
HEVC定义了各种块,包括编译码单元(CU)、预测单元(PU)、和变换单元(TU)。根据HEVC,视频编解码器(例如,视频编码器200)根据四叉树结构将编译码树单元(CTU)分割为CU。也就是说,该视频编解码器将CTU和CU分割为四个相等的且不重叠的正方形,并且该四叉树的每个节点具有零个或四个子节点。没有子节点的节点可以被称为“叶节点”,并且这种叶节点的CU可以包括一个或更多个PU和/或一个或更多个TU。视频编解码器可以对PU和TU进行进一步分割。例如,在HEVC中,残差四叉树(RQT)表示TU的分割。在HEVC中,PU表示帧间预测数据,而TU表示残差数据。帧内预测所得的CU包括帧内预测信息,例如帧内模式指示。
作为另一示例,视频编码器200和视频解码器300可以被配置为根据JEM操作。根据JEM,视频编解码器(例如,视频编码器200)将图片分割为多个编译码树单元(CTU)。视频编码器200可以根据树结构对CTU进行分割,该树结构包括诸如四叉树-二叉树(quadtree-binary tree,QTBT)结构。JEM的QTBT结构取消了多种分割类型的概念,例如HEVC的CU、PU和TU之间的区别。JEM的QTBT结构包括两个级别:根据四叉树分割进行分割所获得的第一级,以及根据二叉树分割进行分割所获得的第二级。该QTBT结构的根节点对应于CTU。二叉树的叶节点对应于编译码单元(CU)。
在某些示例中,视频编码器200和视频解码器300可以使用单个QTBT结构来表示亮度分量和色度分量中的每一个。而在其他示例中,视频编码器200和视频解码器300可以使用两个或更多个QTBT结构,例如一个QTBT结构用于亮度分量而另一个QTBT结构用于两个色度分量(或者两个QTBT结构用于相应的色度分量)。
视频编码器200和视频解码器300可以被配置为使用基于HEVC的四叉树分割、基于JEM的QTBT分割、或其他分割结构。为了说明的目的,基于QTBT分割对本公开的技术进行了描述。然而,应该理解的是,本公开的技术还可以应用于配置为使用四叉树分割或其它类型的分割的视频编解码器。
本公开可以互换地使用“N×N”和“N乘N”来指代块(例如CU或其他视频块)在垂直维度和水平维度上的样点维度,例如16×16样点或16乘16样点。通常,16×16的CU在垂直方向上会有16个样点(y=16),并且在水平方向上会有16个样点(x=16)。同样地,N×N的CU通常在垂直方向上具有N个样点并且在水平方向上也具有N个样点,其中N表示非负的整数值。CU中的样点可以以行和列的方式排列。此外,CU在水平方向上的样点数量不必与垂直方向上的样点数量相同。举例来说,CU可以包括N×M个样点,其中M不必要等于N。
视频编码器200对表示预测和/或残差信息以及其他信息的CU的视频数据进行编码。预测信息指示将如何对该CU进行预测以便形成针对该CU的预测块。残差信息通常表示预测块与编码之前的CU样点之间的逐样点差值。
为了预测CU,视频编码器200通常可以通过帧间预测或帧内预测来形成用于CU的预测块。帧间预测通常指根据先前已编译码的图片的数据来预测CU,而帧内预测通常指根据同一图片的先前已编译码的数据来预测CU。为了执行帧间预测,视频编码器200可使用一个或更多个运动向量来生成预测块。视频编码器200通常可以进行运动搜索,例如,根据CU与参考块之间的差,来识别与CU紧密匹配的参考块。视频编码器200可以使用绝对差值和(SAD)、平方差值和(SSD)、平均绝对差(MAD)、均方差(MSD)或其他此类差值计算来计算差值度量,以确定参考块是否紧密匹配当前CU。在某些示例中,视频编码器200可以使用单向预测或双向预测来预测该当前CU。
JEM还提供可以被认为是帧间预测模式的仿射运动补偿模式。在仿射运动补偿模式中,视频编码器200可以确定表示非平移运动的两个或更多个运动向量。该非平移运动例如放大或缩小、旋转、透视运动或其他不规则运动类型。
为了进行帧内预测,视频编码器200可以选择帧内预测模式来生成预测块。JEM提供了67种帧内预测模式,包括各种方向模式以及平面模式和DC模式。通常,视频编码器200选择描述当前块(例如,CU的块)的、根据其预测当前块的样点的相邻样点的帧内预测模式。假设视频编码器200以光栅扫描顺序(从左到右,从上到下)对CTU和CU进行编译码,则这样的相邻样点通常位于同一图片中当前块的上方,左上方,或左侧。
视频编码器200对表示当前块的预测模式的数据进行编码。举例来说,对于帧间预测模式,视频编码器200可以对表示使用多种可用帧间预测模式中的哪一种的数据以及用于对应模式的运动信息进行编码。对于单向或双向帧间预测,例如,视频编码器200可以使用高级运动向量预测(AMVP)或合并模式来对运动向量进行编码。对于仿射运动补偿模式,视频编码器200可以使用类似的模式来对运动向量进行编码。
在诸如块的帧内预测或帧间预测的预测之后,视频编码器200可以计算针对该块的残差数据。残差数据,例如残差块,表示该块与使用对应的预测模式形成的该块的预测块之间的逐样点差值。视频编码器200可以对残差块应用一种或更多种变换,以在变换域而非样点域中生成经变换的数据。举例来说,视频编码器200可以将离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换应用于残差视频数据。另外,视频编码器200可以在一次变换之后应用二次变换,例如,模式依赖的不可分的二次变换(mode-dependent non-separable secondary transform,MDNSST)、信号依赖的变换、Karhunen-Loeve变换(KLT)等。视频编码器200在应用一种或更多种变换之后产生变换系数。
如上所述,在进行任何生成变换系数的变换之后,视频编码器200可以对这些变换系数进行量化。量化通常是指对变换系数进行量化以使得可能减少用于表示所述系数的数据量,从而提供进一步的压缩。通过进行量化过程,视频编码器200可以减小与系数中某些或全部相关联的位深度。例如,视频编码器200可以在量化期间将n位值舍入为m位值,其中n大于m。在某些示例中,为了进行量化,视频编码器200可以对待量化的值进行按位右移。
在量化之后,视频编码器200可以对变换系数进行扫描,从而从包括已量化变换系数的二维矩阵来生成一维向量。在对已量化变换系数进行扫描而形成一维向量之后,视频编码器200可以例如根据上下文自适应二进制算术编译码(context-adaptive binaryarithmetic coding,CABAC)对该一维向量进行熵编码。视频编码器200还可以对描述与已编码视频数据相关联的元数据的语法元素的值进行熵编码,用于视频解码器300在解码视频数据中使用。
视频编码器200还可以在例如图片头部、块头部、条带头部中生成给视频解码器300的语法数据,例如基于块的语法数据、基于图片的语法数据以及基于序列的语法数据,或其他语法数据,诸如序列参数集(sequence parameter set,SPS)、图片参数集(pictureparameter set,PPS)或视频参数集(video parameter set,VPS)中。视频解码器300可以同样地对这些语法数据进行解码以确定如何解码对应的视频数据。
以这种方式,视频编码器200可以生成比特流。该比特流包括已编码视频数据,例如,描述将图片分割为块(例如,CU)的语法元素以及针对上述块的预测和/或残差信息。最终,视频解码器300可以接收该比特流并对上述已编码视频数据进行解码。
通常,视频解码器300进行与视频编码器200相反的过程,来对比特流的已编码视频数据进行解码。比如,尽管与视频编码器200的CABAC编码过程相反,但视频解码器300可以以大体上相似的方式来使用CABAC以对比特流的语法元素的值进行解码。语法元素可以定义将图片分割成CTU的分割信息、以及根据对应的分割结构(诸如QTBT结构)的每个CTU的分割,从而定义该CTU的CU。语法元素还可以对视频数据的块(例如,CU)的预测和残差信息进行定义。
残差信息可以由例如已量化变换系数表示。视频解码器300可以对块的已量化变换系数进行逆量化和逆变换以重现该块的残差块。视频解码器300使用已用信令通知的预测模式(帧内或帧间预测)和相关的预测信息(例如,用于帧间预测的运动信息)来形成该块的预测块。视频解码器300然后可以将该预测块和上述残差块(在逐样点的基础上)进行组合以重现原始块。视频解码器300可以进行附加处理,例如进行去块过程以减少沿着块的边界的视觉伪影。
本公开通常可以指“用信令通知(signaling)”某些信息,例如语法元素。术语“用信令通知(signaling)”通常可以指语法元素的值和/或用于对已编码视频数据进行解码的其他数据的通信。即,视频编码器200可以用信令通知比特流中的语法元素的值。通常,用信令通知是指在比特流中生成值。如上所述,源设备102可以基本上实时地将比特流传送到目标设备116,也可以不是实时的,诸如在将语法元素存储到存储设备112以用于稍后目标设备116的检索时可能发生的情况。
图2A和图2B是示出一种示例四叉树-二叉树(QTBT)结构130和对应的编译码树单元(CTU)132的示意图。实线表示四叉树划分,而虚线表示二叉树划分。在二叉树的每个划分(即非叶)节点中,用信令通知一个标志以指示使用了哪种划分类型(即,水平或垂直),其中,在本示例中0指示水平划分,而1指示垂直划分。对于四叉树划分,不需要指示划分类型,这是因为四叉树节点将块水平地和垂直地划分为尺寸相等的4个子块。因此,视频编码器200可以对QTBT结构130的区域树级(例如,实线)的语法元素(例如划分信息)和QTBT结构130的预测树级(例如,虚线)的语法元素(例如划分信息)进行编码,而视频解码器300可以对QTBT结构130的区域树级(例如,实线)的语法元素(例如,划分信息)和QTBT结构130的预测树级(例如,虚线)的语法元素(例如划分信息)进行解码。针对由QTBT结构130的终端叶节点表示的CU,视频编码器200可以对例如预测和变换数据的视频数据进行编码,而视频解码器300可以对例如预测和变换数据的视频数据进行解码。
通常,图2B的CTU 132可以与定义了与QTBT结构130在第一级和第二级的节点相对应的块的尺寸的参数相关联。这些参数可以包括CTU尺寸(表示样点中CTU 132的尺寸)、最小四叉树尺寸(MinQTSize,表示最小允许的四叉树叶节点尺寸)、最大二叉树尺寸(MaxBTSize,表示最大允许的二叉树根节点尺寸)、最大二叉树深度(MaxBTDepth,表示最大允许的二叉树深度)和最小二叉树尺寸(MinBTSize,表示最小允许的二叉树叶节点尺寸)。
对应于CTU的QTBT结构的根节点可以在QTBT结构的第一级具有四个子节点,可以根据四叉树分割对每个子节点进行分割。即,该第一级的节点是叶节点(没有子节点)或具有四个子节点。QTBT结构130的示例将这样的节点表示为包括父节点和以实线用于分支的子节点。如果该第一级的节点不大于最大允许的二叉树根节点尺寸(MaxBTSize),则它们可以被相应的二叉树进一步分割。可以迭代进行一个节点的二叉树划分,直到由该划分产生的节点达到最小允许的二叉树叶节点尺寸(MinBTSize)或最大允许的二叉树深度(MaxBTDepth)。QTBT结构130的示例以虚线用于分支的方式来表示这样的节点。二叉树叶节点被称为编译码单元(CU),其用于预测(例如,帧内预测或帧间预测)和变换,而不需要任何进一步的分割。如上面所讨论的,CU也可以被称为“视频块”或“块”。
在QTBT分割结构的一个示例中,将CTU的尺寸设置为128×128(亮度样点和两个对应的64×64的色度样点),MinQTSize设置为16×16,MaxBTSize设置为64×64,MinBTSize(针对宽度和高度两者)设置为4,以及MaxBTDepth设置为4。首先对CTU应用四叉树分割以生成四叉树叶节点。四叉树叶节点的尺寸可以从16×16(即MinQTSize)到128×128(即CTU尺寸)。如果四叉树叶节点为128×128的,则其不会再被二叉树进一步划分,因为该尺寸超过了MaxBTSize(即,此示例中为64×64)。否则,四叉树叶节点还会被二叉树进一步分割。因此,四叉树叶节点也是二叉树的根节点并具有为0的二叉树深度。当二叉树的深度达到MaxBTDepth(此示例中为4)时,不允许进一步划分。当二叉树节点的宽度等于MinBTSize(此示例中为4)时,表明不允许进一步的水平划分。类似地,二叉树节点的高度等于MinBTSize表明不允许对该二叉树节点再进行垂直划分。如上所述,二叉树的叶节点被称为CU,并且根据预测和变换被进一步处理而无需再进行分割。
图3是示出一种可以执行本公开的技术的示例视频编码器200的框图。出于阐述的目的提供图3,而不应该将其视为限制本公开中广泛例示和描述的技术。为了说明的目的,本公开基于诸如HEVC视频编译码标准和开发中的H.266视频编译码标准的视频编译码标准描述了视频编码器200。然而,本公开的技术不限于这些视频编译码标准,并且通常适用于视频编码和解码。
在图3的示例中,视频编码器200包括视频数据存储器230、模式选择单元202、残差生成单元204、变换处理单元206、量化单元208、逆量化单元210、逆变换处理单元212、重建单元214、滤波器单元216、已解码图片缓存器(DPB)218和熵编码单元220。
视频数据存储器230可以存储待由视频编码器200的组件进行编码的视频数据。视频编码器200可以接收存储于视频数据存储器230中的视频数据(例如,来自视频源104(图1)的视频数据)。DPB 218可以充当参考图片存储器,该参考图片存储器存储在通过视频编码器200预测后续视频数据中使用的参考视频数据。视频数据存储器230和DPB 218可以由多种存储设备中的任一种形成,例如动态随机访问存储器(DRAM),包括同步DRAM(SDRAM)、磁阻RAM(MRAM)、电阻性RAM(RRAM)或其他类型的存储设备。视频数据存储器230和DPB 218可以被提供为相同的存储设备或分离的存储设备。在多个示例中,视频数据存储器230可以与视频编码器200的其他组件一起在芯片上(on-chip),如上所示,或者相对于那些组件在芯片外(off-chip)。
在本公开中,对视频数据存储器230的描述不应该被解释为受限于视频编码器200内部的存储器,除非如此具体地描述,或者受限于视频编码器200外部的存储器,除非如此具体地描述。准确的说,对视频数据存储器230的描述应该被理解为参考存储器,参考存储器存储视频编码器200接收的、用于编码的视频数据(例如,用于待被编码的当前块的视频数据)。图1的存储器106还可以为来自视频编码器200的各个单元的输出提供临时存储。
对图3的各个单元进行说明,以帮助理解由视频编码器200进行的操作。这些单元可以实现为固定功能电路,可编程电路或两者的组合。固定功能电路是指提供特定功能并为可以进行的操作进行预设的电路。可编程电路是指可以被编程以进行各种任务并且在可以进行的操作中提供灵活功能的电路。例如,可编程电路可以执行软件或固件,以使得可编程电路以软件或固件的指令所定义的方式来运行。固定功能电路可以执行软件指令(例如,对参数进行接收或输出),但是固定功能电路执行的操作的类型通常是不可变的。在某些示例中,上述单元中的一个或更多个可以是不同的电路块(固定功能或可编程),而在某些示例中,上述一个或更多个单元可以是集成电路。
视频编码器200可以包括算术逻辑单元(ALU)、基本功能单元(EFU)、数字电路、模拟电路和/或由可编程电路形成的可编程核。在使用由可编程电路执行的软件来进行视频编码器200的操作的示例中,存储器106(图1)可以对视频编码器200接收并执行的软件的目标代码进行存储,或者在视频编码器200中的另一存储器(未显示)对这些指令进行存储。
视频数据存储器230被配置为存储接收到的视频数据。视频编码器200可以从视频数据存储器230中检索视频数据的图片,并将上述视频数据提供给残差生成单元204和模式选择单元202。视频数据存储器230中的视频数据可以是待被编码的原始视频数据。
模式选择单元202包括运动估计单元222、运动补偿单元224和帧内预测单元226。模式选择单元202可以包括根据其他预测模式进行视频预测的另外的功能单元。作为示例,模式选择单元202可以包括调色板单元、块内复制单元(可以是运动估计单元222和/或运动补偿单元224中的一部分)、仿射单元、线性模型(LM)单元等。
模式选择单元202通常协调多个编码通路,以测试编码参数的组合和该组合的结果速率失真值。这些编码参数可以包括从CTU到CU的分割、用于CU的预测模式、用于CU的残差数据的变换类型、用于CU的残差数据的量化参数等。模式选择单元202可以最终选择具有比其他经测试的组合更好的速率失真值的编码参数的组合。
视频编码器200可以将从视频数据存储器230检索到的图片分割为一系列CTU,并将一个或更多个CTU封装在条带内。模式选择单元210可以根据树结构,例如上述的QTBT结构或HEVC的四叉树结构,来对图片的CTU进行分割。如上所述,视频编码器200可以根据树结构通过分割CTU来形成一个或更多个CU。这种CU通常还可以被称为“视频块”或“块”。
通常,模式选择单元202还控制其组件(例如,运动估计单元222、运动补偿单元224和帧内预测单元226)以生成针对当前块(例如,当前CU,或HEVC中PU和TU的重叠部分)的预测块。对于当前块的帧间预测,运动估计单元222可以进行运动搜索以识别一个或更多个参考图片(例如,存储在DPB 218中的一个或更多个预先已编译码图片)中的一个或更多个紧密匹配的参考块。具体地,运动估计单元222可以例如根据绝对差值和(SAD)、平方差值和(SSD)、平均绝对差(MAD)、均方差(MSD)等来计算表示潜在参考块与该当前块有多相似的值。运动估计单元222通常可以使用当前块与所考虑的参考块之间的逐样点差值来进行这些计算。运动估计单元222可以识别出具有这些计算所得的最小值的参考块,来指示与当前块最紧密匹配的参考块。在一些示例中,模式选择单元202可以确定变换域滤波是否针对当前块被启用、被禁用、或被衰减(例如,使用较小的压缩系数而不是被启用)。模式选择单元202可以输出指示变换域滤波针对当前块被启用、被禁用或被衰减的、可以被熵编码单元220编码的一个或更多个语法元素。
运动估计单元222可以形成一个或更多个运动向量(MV)。所述运动向量定义参考块在参考图片中的位置相对于当前块在当前图片中的位置。之后,运动估计单元222可以将运动向量提供给运动补偿单元224。例如,对于单向帧间预测,运动估计单元222可以提供单个运动向量,而对于双向帧间预测,运动估计单元222可以提供两个运动向量。运动补偿单元224之后可以使用运动向量来生成预测块。例如,运动补偿单元224可以使用运动向量来检索参考块的数据。作为另一示例,如果运动向量具有分数样点精度,则运动补偿单元224可以根据一个或更多个内插滤波器来内插用于预测块的值。此外,对于双向帧间预测,运动补偿单元224可以检索由相应的运动向量所标识的两个参考块的数据并且例如通过逐样点平均或加权平均来对检索到的数据进行组合。
作为另一个示例,对于帧内预测或帧内预测编译码,帧内预测单元226可以根据与当前块相邻的样点来生成预测块。例如,对于方向模式(directional mode),帧内预测单元226通常可以对相邻样点的值进行数学组合,并在定义的方向上跨越当前块填充这些计算出的值以产生预测块。作为另一示例,对于DC模式,帧内预测单元226可以计算相邻样点到当前块的平均值并且生成预测块,以针对该预测块的每个样点包括得到的平均值。
模式选择单元202将预测块提供给残差生成单元204。残差生成单元204从视频数据存储器230接收当前块的原始的未编译码的版本,并从模式选择单元202接收预测块。残差生成单元204计算当前块和预测块之间的逐样点差值。所得逐样点差值定义了针对该当前块的残差块。在某些示例中,残差生成单元204还可以确定残差块中的样点值之间的差值以使用残差差分脉冲代码调制(Residual Differential Pulse Code Modulation,RDPCM)来生成残差块。在某些示例中,可以使用执行二进制减法的一个或更多个减法器电路来形成残差生成单元204。
在某些示例中,模式选择单元202将CU分割为PU,每个PU可以与亮度预测单元和对应的色度预测单元相关联。视频编码器200和视频解码器300可以支持具有多种尺寸的PU。如上所示,CU的尺寸指CU的亮度编译码块的尺寸,PU的尺寸指PU的亮度预测单元的尺寸。假设特定CU的尺寸为2N×2N,则视频编码器200可以支持用于帧内预测的PU尺寸为2N×2N或N×N,以及用于帧间预测的对称PU的尺寸为2N×2N、2N×N、N×2N、N×N或类似的尺寸。视频编码器20和视频解码器30还可以支持用于帧间预测的不对称分割的PU的尺寸为2N×nU、2N×nD、nL×2N以及nR×2N。
在某些示例中,模式选择单元不再将CU分割为PU,每个CU可以与亮度编译码块和对应的色度编译码块相关联。如上所述,CU的尺寸是指CU的亮度编译码块的尺寸。视频编码器200和视频解码器300可以支持CU的尺寸为2N×2N,2N×N或N×2N。
对于其他视频编译码技术(诸如,块内复制模式编译码、仿射模式编译码以及线性模型(LM)模式编译码),作为少数示例,模式选择单元202经由与编译码技术相关联的相应单元生成针对正在被编码的当前块的预测块。在某些示例中,例如调色板模式编译码,模式选择单元202不会生成预测块,并且而是生成指示基于选择的调色板重建块的方式的语法元素。在该模式中,模式选择单元202可以将这些语法元素提供给熵编码单元220以进行编码。
如上所述,残差生成单元204接收当前块和对应的预测块的视频数据。残差生成单元204之后生成当前块的残差块。残差生成单元204计算预测块和当前块之间的逐样点差值以生成残差块。因而,变换处理单元206对残差块应用一种或更多种变换以生成变换系数的块(在本文中称为“变换系数块”)。变换处理单元206可以对残差块应用多种变换以形成变换系数块。例如,变换处理单元206可以对残差块应用离散余弦变换(DCT)、方向变换、Karhunen-Loeve变换(KLT)或概念上类似的变换。在某些示例中,变换处理单元206对残差块进行多种变换,例如初级变换和次级变换,诸如旋转变换。在某些示例中,变换处理单元206不对残差块进行变换。
量化单元208可以对变换系数块中的变换系数进行量化,以生成已量化变换系数块。量化单元208可以根据与当前块相关联的量化参数(QP)值来对变换系数块的变换系数进行量化。视频编码器200(例如,经由模式选择单元202)可以通过调整与CU相关联的QP值来调整应用于与当前块相关联的系数块的量化程度。量化会引起信息丢失,因此,已量化变换系数的精度会比变换处理单元206生成的原始变换系数的精度低。
逆量化单元210和逆变换处理单元212可以分别对已量化变换系数块应用逆量化和逆变换,以基于变换系数块重建残差块。重建单元214基于重建的残差块和由模式选择单元202生成的预测块来生成与当前块相对应的重建块(尽管可能具有某种程度的失真)。例如,重建单元214可以将重建的残差块的样点加到模式选择单元202所生成的预测块的对应样点来生成重建块。
滤波器单元216可以对重建块执行一种或更多种滤波操作。例如,滤波器单元216可以执行去块操作以减少沿着CU的边界的块状伪影。在某些示例中,可以跳过滤波器单元216的操作。例如,滤波器单元216可以被配置为使用LUT来确定重建块的第一变换函数值,对该第一变换函数值进行内插以生成第二变换函数值,并且使用该第二变换函数值来对重建块进行滤波。例如,滤波器单元216可以被配置为执行如本文中进一步描述的变换域滤波(见图5-8以及11-14).
视频编码器200将重建块存储于DPB 218中。例如,在不需要滤波器单元216的操作的示例中,重建单元214可以将重建块存储到DPB 218中。在需要滤波器单元216的操作的示例中,滤波器单元216可以将经滤波的重建块存储到DPB 218中。运动估计单元222和运动补偿单元224可以从DPB 218中检索参考图片,该参考图片由重建(且可能经滤波的)块形成,以对后续已编码图像的块进行帧间预测。另外,帧内预测单元226可以使用当前图片在DPB218中的重建块来对该当前图片中的其他块进行帧内预测。
通常,熵编码单元220可以对从视频编码器200的其他功能组件接收到的语法元素进行熵编码。例如,熵编码单元220可以对来自量化单元208的已量化变换系数块进行熵编码。作为另一示例,熵编码单元220可以对来自模式选择单元202的预测语法元素(例如,用于帧间预测的运动信息或用于帧内预测的帧内模式信息)进行熵编码。熵编码单元220可以对作为视频数据的另一个示例的语法元素进行一种或更多种熵编码操作以生成经熵编码的数据。例如,熵编码单元220可以执行上下文自适应可变长度编译码(CAVLC)操作、CABAC操作、可变至可变(V2V)长度编译码操作、基于语法的上下文自适应二进制算术编译码(SBAC)操作、概率区间分割熵(PIPE)编译码操作、指数-哥伦布(Golomb)编码操作或对数据进行的另一种熵编码操作。在某些示例中,熵编码单元220可以在语法元素未被熵编码的旁路模式下运行。在某些示例中,熵编码单元220可以对用于变换域滤波信息的一个或更多个语法元素进行熵编码,该变换域滤波信息指示,例如,变换域滤波是否被启用、被禁用或被衰减。
视频编码器200可以输出包括重建条带或图片的块所需的经熵编码的语法元素的比特流。具体地,熵编码单元220可以输出比特流。
以上所述的操作是相对于块来描述的。这种描述应当被理解为用于亮度编译码块和/或色度编译码块的操作。如上所述,在某些示例中,亮度编译码块和色度编译码块分别是CU的亮度分量和色度分量。在某些示例中,亮度编译码块和色度编译码块是PU的亮度分量和色度分量。
重建单元214被配置为使用预测信息和残差块来重建当前块以生成重建块。响应于确定变换域滤波针对当前块被启用,熵编码单元220被配置为对视频数据的比特流进行编码,该比特流包括指示预测信息、残差块以及指示变换域滤波针对当前块被启用的变换域滤波信息的语法元素。响应于确定变换域滤波针对当前块被启用,滤波器单元216被配置为对重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,滤波器单元216被配置为:生成对于重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量;以及对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
图4是示出可以进行本公开的技术的一种示例视频解码器300的框图。出于阐述的目的提供图4,而不应该将其视为限制本公开中广泛例示和描述的技术。为了说明的目的,本公开基于JEM和HEVC的技术描述了视频解码器300。然而,本公开的技术可以由配置为基于其他视频编译码标准的视频编译码设备来进行。
在图4的示例中,视频解码器300包括已编译码图片缓存器(CPB)存储器320、熵解码单元302、预测处理单元304、逆量化单元306、逆变换处理单元308、重建单元310、滤波器单元312以及已解码图片缓存器(DPB)314。预测处理单元304包括运动补偿单元316和帧内预测单元318。预测处理单元304可以包括加法单元以根据其他预测模式进行预测。作为示例,预测处理单元304可以包括调色板单元、块内复制单元(可以形成运动补偿单元318的一部分)、仿射单元、线性模型(LM)单元等。在其他示例中,视频解码器300可以包括更多,更少或不同的功能组件。
CPB存储器320可以存储待由视频解码器300的组件进行解码的视频数据,例如已编码视频比特流。存储在CPB存储器320中的视频数据可以例如从计算机可读介质110(图1)获得。CPB存储器320可以包括对来自已编码视频比特流的已编码视频数据(例如,语法元素)进行存储的CPB。而且,CPB存储器320可以存储除了已编译码图片的语法元素之外的视频数据,例如表示来自视频解码器300的多个单元的输出的临时数据。DPB 314通常存储已解码图片。视频解码器300在对已编码视频比特流的后续数据和图片进行解码时,可以输出和/或使用上述已解码图片以作为参考视频数据。CPB存储器320和DPB 314可以由多种存储器设备中的任一种形成,诸如,动态随机存取存储器(dynamic random access memory,DRAM)。上述多种存储器设备包括同步DRAM(synchronous DRAM,SDRAM)、磁阻RAM(magnetoresistive RAM,MRAM)、电阻RAM(resistive RAM,RRAM)或其他类型的存储器设备。CPB存储器320和DPB 314可以由相同的存储器设备或分离的存储器设备提供。在多个示例中,CPB存储器320可以与视频解码器300的其他组件在芯片上,或者相对于那些组件在芯片外。
另外地或可替换地,在某些示例中,视频解码器300可以从存储器120(图1)中检索已编译码视频数据。也就是说,存储器120可以如上文所述与CPB存储器320一起存储数据。同样地,当视频解码器300的某些或全部功能由待由视频解码器300的处理电路执行的软件实现时,存储器120可以存储待由视频解码器300执行的指令。
对图4中所示的多个单元进行说明以帮助理解由视频解码器300执行的操作。这些单元可以实现为固定功能电路,可编程电路或两者的组合。与图3相似的是,固定功能电路是指提供特定功能并为可以执行的操作进行预设的电路。可编程电路是指可以被编程以执行多种任务并且在可以执行的操作中提供灵活功能的电路。举例来说,可编程电路可以执行软件或固件,以使得可编程电路以软件或固件的指令所定义的方式来运行。固定功能电路可以执行软件指令(例如,接收参数或输出参数),但是固定功能电路执行的操作类型通常是不可变的。在某些示例中,所述单元中的一个或更多个可以是不同的电路块(固定功能或可编程的),而在某些示例中,该一个或更多个单元可以是集成电路。
视频解码器300可以包括ALU、EFU、数字电路、模拟电路和/或由可编程电路形成的可编程核。在视频解码器300的操作由在可编程电路上执行的软件执行的示例中,片上或片外存储器可以存储视频解码器300接收并执行的软件的指令(例如,目标代码)。
熵解码单元302可以从CPB接收已编码视频数据,并对该视频数据进行熵解码以重现语法元素。预测处理单元304、逆量化单元306、逆变换处理单元308、重建单元310以及滤波器单元312可以基于从比特流中提取的语法元素来生成已解码视频数据。
通常,视频解码器300在逐块的基础上重建图片。视频解码器300可以单独地对每个块执行重建操作(其中当前正在被重建,即,被解码,的块可以被称为“当前块”)。
熵解码单元302可以对定义已量化变换系数块的已量化变换系数的语法元素和变换信息进行熵解码,变换信息例如量化参数(QP)和/或变换模式指示。在某些示例中,熵解码单元302可以对用于变换域滤波信息的一个或更多个语法元素进行解码。该变换域滤波信息指示,例如,变换域滤波被启用、被禁用或被衰减。逆量化单元306可以使用与已量化变换系数块相关联的QP来确定量化的程度,并且同样地,确定逆量化的程度以供逆量化单元306应用。逆量化单元306可以例如进行按位左移的运算来对已量化变换系数进行逆量化。逆量化单元306从而可以形成包括变换系数的变换系数块。
在逆量化单元306形成变换系数块之后,逆变换处理单元308可以将一种或更多种逆变换应用于变换系数块以生成与当前块相关联的残差块。例如,逆变换处理单元308可以对系数块应用逆DCT、逆整数变换、逆Karhunen-Loeve变换(KLT)、逆旋转变换、逆方向变换或另一种逆变换。
此外,预测处理单元304根据由熵解码单元302进行熵解码所得到的预测信息语法元素来生成预测块。例如,如果预测信息语法元素指示当前块是帧间预测的,则运动补偿单元316可以生成预测块。在这种情况下,预测信息语法元素可以指示DPB 314中的从其检索参考块的参考图片以及标识参考图片中的参考块相对于当前图片中的当前块的位置的运动向量。运动补偿单元316通常可以以针对运动补偿单元224(图3)所描述的方式基本相似的方式来进行帧间预测过程。例如,预测处理单元304可以接收可以被熵解码单元302解码的、一个或更多个语法元素的值。一个或更多个语法元素指示变换域滤波针对当前块被启用、被禁用或被衰减。在本示例中,预测处理单元304可以基于指示变换域滤波针对当前块被启用、被禁用或被衰减的一个或更多个语法元素的值来确定变换域滤波是否针对当前块被启用、被禁用或被衰减。
作为另一示例,如果预测信息语法元素指示当前块是帧内预测的,则帧内预测单元318可以根据预测信息语法元素指示的帧内预测模式来生成预测块。同样地,帧内预测单元318通常可以以与针对帧内预测单元226(图3)所描述的方式基本相似的方式来执行帧内预测过程。帧内预测单元318可以从DPB 314检索当前块的相邻样点的数据。
重建单元310可以使用预测块和残差块来重建当前块。例如,重建单元310可以将残差块的样点加到预测块的对应样点上以重建当前块。
滤波器单元312可以对重建块进行一种或更多种滤波操作。例如,滤波器单元312可以进行去块操作以减少沿着重建块的边缘的块伪影。滤波器单元312的操作不必要在所有示例中都执行。例如,滤波器单元312可以被配置为使用LUT确定重建块的第一变换函数值,对该第一变换函数值进行内插以生成第二变换函数值,并且使用该第二变换函数值来对重建块进行滤波。滤波器单元312可以被配置为执行如本文中进一步描述的变换域滤波(见图5-8以及11-14)。
在某些示例中,熵解码单元302可以对用于变换域滤波信息的一个或更多个语法元素进行熵解码。该变换域滤波信息指示,例如,变换域滤波是否被启用、被禁用或被衰减。滤波器单元312可以基于变换域滤波对重建块执行一个或更多个滤波操作。例如,响应于熵解码单元302对用于指示变换域滤波被启用的变换域滤波信息的一个或更多个语法元素进行熵解码,滤波器单元312可以执行变换域滤波(例如,Hadamard变换滤波)。
视频解码器300可以将重建块存储在DPB 314中。如上所述,DPB 314可以向预测处理单元304提供参考信息,例如用于帧内预测的当前图片的样点以及用于后续运动补偿的预先解码的图片。同时,视频解码器300可以输出来自DPB的已解码图片,以用于后续在例如图1的显示设备118的显示设备上呈现。
以这种方式,视频解码器300表示视频解码设备的示例,该视频解码设备包括配置为存储视频数据的存储器以及以电路实现的一个或更多个处理单元,并且所述一个或更多个处理单元被配置为:接收包括已编码视频数据的比特流;从比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息;以及使用预测信息和残差块来重建所述当前块以生成重建块。响应于确定变换域滤波信息指示变换域滤波针对所述当前块被启用,上述一个或更多个处理单元被配置为对重建块执行变换域滤波以生成经滤波块。在本示例中,为了执行变换域滤波,上述一个或更多个处理器被配置为:生成重建块的像素的样点集合;对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;以及对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量。在本示例中,为了执行变换域滤波,上述一个或更多个处理器还被配置为:对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值。
图5是示出一种示例滤波过程的示意图。对已编译码块的变换系数或残余块的变换系数进行的量化将量化伪影引入数据块。
块伪影,这种伪影中之一,原始图片中不存在的水平和垂直断续(请注意,图片可以是静止图像或来自视频序列的帧)可以是由中度到高度压缩导致的。平面区域中的这些伪影看起来像“拼接(tiling)”,因为这些伪影不会被高对比度的内容所掩盖。此外,正在播放的视频中的块伪影会被看成“移动和闪烁”,这是因为断续在连续帧中的位置不同。
块伪影的一个来源是关于帧内和帧间预测误差的、包括变换和量化的基于块的变换编译码。变换系数的粗量化会导致块边界处的造成视觉干扰的断续。运动补偿预测是视频中的块伪影的另一来源。可以通过从可能不同的参考帧的不同位置复制内插像素数据来生成运动补偿块。由于几乎从来没有针对这些数据的完美匹配,因此通常会在复制的数据块的边界上出现断续。
通过变换系数的标量量化而引入到信号中的量化噪声可以导致将量化噪声引入到重建信号中。为了抑制该噪声并恢复原始信号,已经提出了多种滤波器设计。这种滤波器设计的一个示例是去块滤波器。这种滤波设计的另一示例是在变换域进行滤波以实现块伪影抑制,诸如,例如,但不限于,以滑动窗口3D DCT(SW-3DDCT)算法技术进行滤波以实现Gaussian噪声抑制。变换域滤波的另一示例是提出的用于视频编译码的Hadamard变换滤波。下面提供Hadamard变换滤波的简要描述。
在图5的示例中,视频编码器200和/或视频解码器300可以被配置为使用布置在定位于包括像素321的左上角样点组的2×2的窗口内的第一样点集合323来生成像素321的第一经滤波值。在本示例中,视频编码器200和/或视频解码器300可以被配置为使用布置在定位于包括像素321的右上角样点组的2×2的窗口内的第二样点集合325来生成像素321的第二经滤波值。视频编码器200和/或视频解码器300可以被配置为使用布置在定位于包括像素321的左下角样点组的2×2的窗口内的第三样点集合327来生成像素321的第三经滤波值。进一步地,视频编码器200和/或视频解码器300可以被配置为使用布置在定位于包括像素321的右下角样点组的2×2的窗口内的第四样点集合329来生成像素321的第四经滤波值。视频编码器200或视频解码器300可以使用第一经滤波值、第二经滤波值、第三经滤波值和第四经滤波值来生成像素321的平均值。以这种方式,Hadamard变换滤波可以帮助减少块伪影和/或量化噪声。
在Hadamard变换滤波中,视频编码器200和/或视频解码器300可以将滤波器应用于具有非零变换系数的重建块。视频编码器200和/或视频解码器300可以在块重建之后立即对已解码样点执行滤波。举例来说,视频解码器300可以被配置为接收包含已编码视频数据的比特流,并从该比特流中解码一个或更多个语法元素的值以生成当前块的残差块、当前块的预测信息以及变换域滤波信息。在本示例中,视频解码器300可以被配置为使用预测信息和残差块来重建当前块以生成重建块。在某些示例中,视频编码器200可以被配置为对视频数据的比特流进行编码,该比特流包括指示预测信息、残差块和变换域滤波信息的语法元素,该变换域滤波信息指示变换域滤波针对当前块被启用。视频编码器200和/或视频解码器300可以将滤波结果用于输出以及空间和时间预测两者。针对帧内和帧间CU滤波,滤波器可以具有相同的实现。
例如,对于重建块中的每个像素,像素处理可以包括以下步骤中的一个或更多个,以对重建块执行变换域滤波。在第一步骤中,视频编码器200和/或视频解码器300在当前像素包括于2×2的窗口内的情况下,对局部邻域尺寸为2×2的样点进行聚合。例如,视频编码器200和/或视频解码器300可以被配置为生成重建块的像素的样点集合。视频编码器200和/或视频解码器300可以根据指定的模型进行样点聚合。
在第二步骤中,视频编码器200和/或视频解码器300对四个样点的聚合进行4点Hadamard变换。在第三步骤中,视频编码器200和/或视频解码器300通过非均匀阈值化和滤波器系数缩放来进行变换域滤波,
Figure BDA0003003312350000271
其中(i)是Hadamard频谱中频谱分量的索引,R(i)是对应于索引的、重建像素的频谱分量,m=4是等于频谱分量的数量的归一化常数,σ是使用以下等式、根据编解码器量化参数QP推导出的滤波参数。该等式为:
σ=2.64*2(0.1296*(QP-11)) 等式2
换句话说,例如,视频编码器200和/或视频解码器300可以针对像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量,并对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量。
对应于DC值的第一频谱分量可以被绕过而不被滤波。在某些示例中,视频编码器200和/或视频解码器300可以执行经滤波频谱的逆4点Hadamard变换。在某些示例中,在执行滤波步骤之后,视频编码器200和/或视频解码器300可以将原始位置的经滤波像素放置到累积缓存器中。在某些示例中,在完成像素的滤波之后,视频编码器200和/或视频解码器300可以通过用于每个像素滤波的处理窗口2×2的数量来对累加值进行归一化。图6示意性地呈现了滤波过程。
图6是示出一种示例等效滤波器模型的示意图。等效滤波器模型是像素的3×3的块351,如图6所示。等式1中指定的变换域滤波过程引入了频谱分量R(i)与缩放系数(scaling coefficient)的乘法,该缩放系数总是小于1。要排除乘法,可以使用基于LUT的传递函数,如以下等式3所示:
Figure BDA0003003312350000281
在等式3中,
Figure BDA0003003312350000282
其中(i)是Hadamard频谱中频谱分量的索引,在等式2中定义了σ,abs()是返回绝对值的函数,R(i)是对应于索引的、重建像素的频谱分量,并且m=4是等于频谱分量的数量的归一化常数。
换句话说,例如,视频编码器200和/或视频解码器300可以对重建块的像素(例如,A)的样点集合353进行聚合(例如,扫描,生成等),对该像素的样点集合执行从像素域到频域的变换以生成重建像素的频谱分量355,并对重建像素的频谱分量355进行滤波以生成重建像素的经滤波频谱分量357。在本示例中,该变换为Hadamard变换,而在其他示例中,可以使用其他变换。
之后,视频编码器200和/或视频解码器300可以对重建像素的经滤波频谱分量应用逆Hadamard变换。在本示例中,在其他示例中,可以使用其他逆变换。例如,视频编码器200和/或视频解码器300可以对重建像素的经滤波频谱分量357执行从频域到像素域的逆变换以生成该像素的经滤波值359(例如,A’)。
视频编码器200和/或视频解码器300可以对包含样点的所有2×2区域重复该过程,并且可以对结果求平均。例如,视频编码器200和/或视频解码器300可以被配置为:使用像素的第一样点集合323生成像素的第一经滤波值;使用像素的第二样点集合325生成像素的第二经滤波值;使用像素的第三样点集合327生成像素的第三经滤波值;使用像素的第四样点集合329生成像素的第四经滤波值;以及对第一经滤波值,第二经滤波值,第三经滤波值和第四经滤波值求平均,以生成针对该像素的平均值。
对于样点x,视频编码器200和/或视频解码器300可以经由用于左上角样点组的频谱X1、用于右上角的X2、用于左下角的X3以及用于右下角样点组的X4对4个2×2的块进行处理。由逆Hadamard变换从缩放的系数产生的输出值形成估计xi,通过对估计求平均来产生输出值y:
y=(invT(TF(X1))+invT(TF(X2))+invT(TF(X3))+invT(TF(X4)))/4等式4
其中Xi是变换系数,TF是传递函数,invT是逆变换过程。
也就是说,例如,视频编码器200和/或视频解码器300可以被配置为针对像素的每个样点集合重复该过程。举例来说,视频编码器200和/或视频解码器300可以被配置为生成像素的第二样点集合。视频编码器200和/或视频解码器300可以被配置为对像素的第二样点集合执行从像素域到频域的变换以生成重建像素的第二频谱分量。在本示例中,视频编码器200和/或视频解码器300可以被配置为对重建像素的第二频谱分量进行滤波以生成重建像素的第二经滤波频谱分量。视频编码器200和/或视频解码器300可以被配置为对重建像素的第二经滤波频谱分量执行从频域到像素域的逆变换以生成像素的第二经滤波值。
视频编码器200和/或视频解码器300可以使用查找表来近似等式3(或2)中的传递函数。在某些示例中,视频编码器200和/或视频解码器300可以仅对正值进行制表,而对于大于127的值,则视频编码器200和/或视频解码器300可以替代地使用近似函数F(x)=x。此外,在某些示例中,并非对0与127之间的每个值都进行制表。替代地,视频编码器200和/或视频解码器300可以使用子采样,以使得总共N(32或16)个值被使用。
图7是示出使用子采样的查找表(LUT)的一种示例传递函数的示意图。独立的LUT针对每个QP值被构建,并被子采样以减少所利用的存储,请参见图7中的可视化。其中曲线702示出了表示等式3(或2)的传递函数的预期LUT,而线344示出了其近似。图7示出了在线342处的原始LUT与14.3b的LUT的比较,最低的qp范围为18-23。在某些示例中,视频编码器200和/或视频解码器300可以被配置为基于QP值来选择和/或推导出LUT。
因此,以qp-范围(18-23)为例,如图7中所示,使用14.3的子采样LUT(线344)的传递函数与非子采样版本(线342)相比具有更多的断续。该近似包括具有规则间隔的断续。
这些断续会引起经滤波输出中的量化效应。考虑块的以下斜率为-5.5的缓慢亮度斜坡:
Figure BDA0003003312350000291
Figure BDA0003003312350000301
在应用了Hadamard变换之后,通过传递函数(LUT)填入AC系数并应用逆Hadamard变换,其变为:
Figure BDA0003003312350000302
图8是示出一种处理斜率为-5.5的亮度斜坡的示例效果的示意图。图8图示了在上述扫描线在处理之前(线346)和上述扫描线在处理之后(线348)的强度。如在图8中所看到的,该处理使得亮度斜坡变得更加波动(线348)。
等式3(或2)的传递函数的近似可以导致规则的断续。这些断续的存在会潜在地导致重建图像中的变形或带伪影引入。
变换域设计的另一方面是,对针对重叠窗口尺寸2×2所产生的经滤波估计求平均,是以所有估计相等为前提。因此,当应用诸如,例如,Hadamard变换滤波的变换滤波时,未使用关于块内的误差分布的先验知识。
变换域设计的第三方面是,该块的所有样点经受滤波。因此,当应用诸如,例如,Hadamard变换滤波的变换滤波时,未使用关于误差分布的先验知识。
本公开提出了几种技术,以改善针对视频编解码器中的后重建应用所提出的Hadamard变换滤波的性能。本公开的技术可以分开地或组合地被使用。
在第一技术中,视频编码器200和/或视频解码器300可以被配置为使用通过使用等式3产生的被减小尺寸的传递函数。
在第二技术中,视频编码器200和/或视频解码器300可以由粗略地描述变换函数的TF值的推导(derivation)来推导出输入值x的实际变换函数值TF(x)。在某些示例中,视频编码器200和/或视频解码器300可以,例如,通过分段线性内插,来利用诸如线性内插的推导过程。在某些实例中,视频编码器200和/或视频解码器300可以使用y=x*a+b来实现线性内插。在某些示例中,TF(x)=TF(0)+x*dTF,其中TF(0)是变换函数的起点,x是输入值,dTF是描述TF函数的斜率的线性函数参数。可替换地或另外地,视频编码器200和/或视频解码器300可以通过二进制移位来实现线性内插:
TF(x)=TF(0)+x<<numShifts
在上面的等式中,numShift表示乘法器,例如dTF=1<<numShift;
可替换地或另外地,视频编码器200和/或视频解码器300可以通过LUT获取来实现该内插:
TF(x)=TF(0)+LUT1(x>>numShifts)+LUT2(x-1<<numShifts)
在上面的等式中,LUT以粗略表示来表示传递函数TF的趋势,而LUT2提供了变换函数TF(x)的局部细化值。
在某些示例中,视频编码器200可以向解码器(例如,视频解码器300)提供TF(x)的线性近似的参数以作为辅助信息。在某些示例中,视频解码器300可以从由视频编码器200在比特流中用信令通知的语法元素中推导出TF(x)的线性近似的参数。在某些示例中,视频编码器200和视频解码器300可以根据给定块的块尺寸、编译码模式、以及变换类型和/或变换系数值来推导出TF(x)的线性近似的参数。
在某些示例中,给解码器(例如,视频解码器300)的TF(x)的线性近似的参数可以适应于条带,片,片的片组或CU。
在某些示例中,视频编码器200可以将若干描述TF(x)的线性近似的参数的参数作为辅助信息或通过已编译码比特流提供给解码器(例如,视频解码器300)。可以使得TF(x)的线性近似的这些参数中的某些参数透明,从而省去了滤波。可以通过从比特流的语法元素或从已编译码视频信号的参数推导出指定滤波器ID的索引值来从所提供的集合中选择适当的TF。
在第三技术中,可以以一定的权重来获取对等式4中的输出值y有贡献的估计,该权重既可以基于提供给视频解码器300的辅助信息推导出,也可以基于当前块(即,当前被处理的块)的参数推导出。当前块的示例参数可以包括当前块的块尺寸、当前块内的样点x的空间位置、当前块的编译码模式或从比特流推导出的语法元素。
视频编码器200和/或视频解码器300可以利用权重推导过程,诸如,例如,线性内插,例如,以分段的形式。
y=(a1*invT(TF(X1))+a2*invT(TF(X2))+a3*invT(TF(X3))+a4*invT(TF(X4)))>>2等式5
换句话说,例如,视频编码器200可以被配置为确定第一权重值(例如,a1)、第二权重值(例如,a2)、第三权重值(例如,a3)和第四权重值(例如a4),并对辅助信息进行编码,该辅助信息包括指示第一权重值、第二权重值、第三权重值和第四权重值的一个或更多个语法元素的值。类似地,视频解码器300可以被配置为对一个或更多个语法元素的值进行解码以生成辅助信息,并使用辅助信息来确定第一权重值、第二权重值、第三权重值和第四权重值。
在某些示例中,视频编码器200和/或视频解码器300可以被配置为基于当前块的块尺寸、当前块内第一样点集合中的每个样点的空间位置、以及当前块的编译码模式中的一个或更多个来推导出第一权重值、第二权重值、第三权重值和第四权重值。
为了执行变换域滤波,视频编码器200和/或视频解码器300可以被配置为使用第一权重值和第一经滤波值来生成像素的第一加权值,该第一经滤波值是通过使用像素的第一样点集合生成的。举例来说,视频编码器200和/或视频解码器300可以被配置为通过将第一权重值(a1)乘以通过计算invT(TF(X1)生成的第一经滤波值来生成第一加权值(a1*invT(TF(X1)))。视频编码器200和/或视频解码器300可以使用第二权重值和第二经滤波值来生成像素的第二加权值,该第二经滤波值是通过使用像素的第二样点集合生成的;使用第三权重值和第三经滤波值来生成像素的第三加权值,该第三经滤波值是通过使用像素的第三样点集合生成的;使用第四权重值和第四经滤波值来生成像素的第四加权值,该第四经滤波值是通过使用像素的第四样点集合生成的。
在本示例中,视频编码器200和/或视频解码器300可以对第一加权值、第二加权值、第三加权值和第四加权值求平均以生成针对像素的平均值。例如,视频编码器200和/或视频解码器300可以被配置为生成经滤波块以指示针对像素的平均值。举例来说,视频编码器200和/或视频解码器300可以被配置为通过计算a1*invT(TF(X1)来生成第一加权值,通过计算a2*invT(TF(X2)来生成第二加权值,通过计算a3*invT(TF(X3)来生成第三加权值,以及通过计算a4*invT(TF(X4)来生成第四加权值。视频编码器200和/或视频解码器300可以对第一加权值、第二加权值、第三加权值和第四加权值求和,并通过将结果移位两次(例如,>>2)来将结果除以四,以生成针对该像素的平均值。
在第四技术中,视频编码器200和/或视频解码器300可以通过矩形窗口形成样点组:X1-X4,矩形窗口的实际属性(例如,每个方向上的尺寸)可以取决于当前块属性,例如尺寸/编译码模式或变换属性。例如,视频编码器200和/或视频解码器300可以基于当前块的尺寸和/或当前块的编译码模式中的一个或更多个来确定像素的样点集合(例如,X1)的矩形窗口的尺寸。
在第五技术中,在当前块内,不是当前块的每个样点都能被处理。例如,基于变换的滤波器可以受限于处于被处理块的边界区域(例如,当前块的外边缘)中的样点。因此,视频编码器200和/或视频解码器300可以不对被处理块的中心区域中的样点应用滤波。
换句话说,例如,视频编码器200和/或视频解码器300可以被配置为确定像素是否在当前块的边界区域内。响应于确定像素在当前块的边界区域内,视频编码器200和/或视频解码器300可以被配置为对像素的样点集合执行从像素域到频域的变换,以生成重建像素的频谱分量。在该示例中,视频编码器200和/或视频解码器300可以被配置为对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量。视频编码器200和/或视频解码器300可以被配置为对重建像素的经滤波频谱分量执行从频域到像素域的逆变换,以生成像素的经滤波值。
在某些示例中,视频编码器200和/或视频解码器300可以被配置为确定像素不在当前块的边界区域内,并且响应于确定该像素不在当前块的边界区域内,禁止对像素执行变换域滤波。
在第六技术中,可以由在CU级别、CTU级别、TU级别、条带级别、图片级别或在序列级别的比特流中用信令通知的语法元素来启用、禁用或衰减基于变换的滤波控制。对基于变换的滤波进行启用、禁用或衰减的语法元素可以以与其他数据交织的标志元素或标识符元素的形式或以适用性映射(application map)的形式来被用信令通知。可替换地,可以部署一定的决策逻辑以实现基于变换的滤波的适用性的结论。举例来说,视频编码器200和/或视频解码器300可以被配置为基于当前块的尺寸、预测时间或其他信息来确定基于变换的滤波是否被启用,被禁用或被衰减。
例如,响应于确定从一个或更多个语法元素的值被解码的变换域滤波信息指示变换域滤波针对当前块被启用,视频解码器300可以对重建块执行变换域滤波以生成经滤波块。类似地,在一个示例中,响应于确定变换域滤波针对当前块被启用,视频编码器200可以对视频数据的比特流进行编码。在本示例中,比特流包括指示预测信息、残差块、以及变换域滤波信息的语法元素,该变换域滤波信息指示变换域滤波针对当前块被启用。此外,在本示例中,视频编码器200可以对重建块执行变换域滤波以生成经滤波块。
在某些示例中,视频解码器300可以确定从一个或更多个语法元素的值被解码的变换域滤波信息是否指示变换域滤波针对当前块被衰减。在本示例中,视频解码器300可以基于变换域滤波信息是否指示变换域滤波针对当前块被衰减来对重建像素的频谱分量进行滤波。举例来说,视频解码器300可以在变换域滤波被启用时使用第一查找表来进行变换域滤波中的滤波,而在变换域滤波被衰减时使用第二查找表来进行变换域滤波中的滤波,其结果具有比第一查找表小的系数间隔(comparting)。类似地,视频编码器200可以被配置为对比特流进行编码以包括一个或更多个用信令对变换域滤波进行通知以指示变换域滤波针对当前块被衰减了还是针对当前块被启用了的语法元素,并且基于变换域滤波信息是否指示变换域滤波针对当前块被衰减来对重建像素的频谱分量进行滤波。
本文描述了使用在比特流中用信令通知的语法元素的值来控制基于变换的滤波以指示基于变换的滤波是否被启用/禁用/衰减的技术。上述技术可以提高由视频解码器300所解码的数据的质量,与不用信令通知基于变换的滤波值的系统相比,其可以提高视频编码器200和/或视频解码器300对视频数据的预测。因此,本文所描述的技术可以提高视频编码器200和/或视频解码器300的性能,与不用信令通知基于变换的滤波值的系统相比,其可以实现较高的计算效率,较小的比特流和/或较低的功耗中的一个或更多个。
图9是示出用于对当前块进行编码的一种示例方法的流程图。当前块可以包括当前CU。尽管参考视频编码器200(图1和图2)进行了描述,但是应当理解的是,其他设备可以被配置为执行与图9的方法类似的方法。
在本示例中,视频编码器200最初对当前块进行预测(350)。例如,视频编码器200可以形成针对当前块的预测块。在某些示例中,视频编码器200可以基于存储在已解码图片缓存器218中的、已经被滤波器单元216例如使用变换域滤波进行滤波的先前块来确定预测块。视频编码器200然后可以计算针对当前块的残差块(352)。为了计算残差块,视频编码器200可以计算原始的未编译码的块与当前块的预测块之间的差。之后,视频编码器200可以对该残差块的系数进行变换和量化(354)。接下来,视频编码器200可以对残差块的已量化的变换系数进行扫描(356)。在扫描期间或在扫描之后,视频编码器200可以对系数进行熵编码(358)。例如,视频编码器200可以使用CAVLC或CABAC来对系数进行编码,以包括指示变换域滤波针对当前块是否被启用、被禁用或被衰减的一个或更多个语法元素。然后,视频编码器200可以输出块的经熵编译码的数据(360)。
图10是示出用于对视频数据的当前块进行解码的一种示例方法的流程图。当前块可以包括当前CU。尽管参考视频解码器300(图1和图3)进行了描述,但是应当理解的是,其他设备可以被配置为执行与图10类似的方法。
视频解码器300可以接收对于当前块的经熵编译码的数据,例如经熵编译码的预测信息和对于对应于当前块的残差块的系数的经熵编译码数据(370)。视频解码器300可以对经熵编译码的数据进行熵解码,以确定针对当前块的预测信息并且重现残差块的系数(372)。在某些示例中,视频解码器300可以对经熵编译码的数据进行熵解码已确定变换域滤波信息。
视频解码器300可以例如,使用由针对当前块的预测信息所指示的帧内或帧间预测模式来预测当前块(374),以计算针对当前块的预测块。在某些示例中,视频解码器300可以基于存储在已解码图片缓存器314中的、已经被滤波器单元312例如使用变换域滤波进行滤波的先前块来确定预测块。然后,视频解码器300可以对重现的系数进行逆扫描(376),以创建已量化变换系数的块。接着,视频解码器300可以对系数进行逆量化和逆变换以产生残差块(378)。视频解码器300最终可以通过将预测块和残差块进行组合来对当前块进行解码(380)。视频解码器300可以使用预测信息和残差块来重建当前块,并基于变换域滤波信息是否指示变换域滤波针对当前块被启用、被禁用或被衰减来应用变换域滤波。
图11是示出一种用于对变换域滤波信息进行解码的示例方法的流程图。当前块可以包括当前CU。尽管参考视频解码器300(图1和3)被描述,应该理解的是,其他设备可以被配置为执行与图11的方法相似的方法。
视频解码器300可以接收包括已编码视频数据的比特流(402)。视频解码器300可以从比特流中解码一个或更多个语法元素的值,以生成当前块的残差块,当前块的预测信息以及变换域滤波信息(404)。视频解码器300可以使用预测信息和残差块来重建当前块以产生重建块(406)。视频解码器300可以确定变换域滤波信息指示变换域滤波针对当前块被启用(408)。例如,视频解码器300可以响应于确定变换域滤波信息的、被分配给变换域滤波的特定标志被设置来确定变换域滤波信息指示变换域滤波针对当前块被启用。视频解码器300可以可选地确定变换域滤波器信息是否指示变换域滤波被衰减(410)。例如,视频解码器300可以响应于确定变换域滤波信息的、被分配给变换域滤波的特定标志被设置来确定变换域滤波信息指示变换域滤波针对当前块被衰减。响应于确定变换域滤波信息指示变换域滤波针对当前块被启用,视频解码器300可以对重建块执行变换域滤波以生成经滤波块(412)。例如,视频解码器300可以执行图12和/或图13中示出的一个或更多个步骤。视频解码器300可以可选地输出经滤波块用于显示(414)。
图12是示出一种用于变换域滤波的示例方法的流程图。当前块可以包括当前CU。尽管参考视频解码器300(图1和3)进行了描述,但是应当理解的是,其他设备可以被配置为执行与图12的方法相似的方法。例如,图12中所描述的过程可以被视频编码器200(图1和4)执行。
视频解码器300可以针对重建块的像素的每个样点集合来生成重建块的像素的样点集合(430)。例如,视频解码器300可以生成图5中的第一样点集合323、第二样点集合325、第三样点集合327和第四样点集合329。对于重建块的像素的每个样点集合,视频解码器300可以对该像素的样点集合执行从像素域到频域的变换,以生成重建像素的频谱分量(432)。例如,视频解码器300可以对样点集合353应用Hadamard变换以生成重建像素的频谱分量355,如图6所示。
对于重建块的像素的每个样点集合,视频解码器300可以对重建像素的频谱分量进行滤波以生成重建像素的经滤波频谱分量(434)。例如,视频解码器300可以使用等式1、2和/或3来对频谱分量进行滤波。对于重建块的像素的每个样点集合,视频解码器300可以对重建像素的经滤波频谱分量执行从频域到像素域的逆变换以生成像素的经滤波值(436)。例如,视频解码器300可以对重建像素的经滤波频谱分量357应用逆Hadamard变换以生成经滤波值359,如图6中所示。在某些示例中,为像素的四个样点集合中的每一个生成经滤波值(见图5)。
视频解码器300可以确定第一权重值、第二权重值、第三权重值和第四权重值(438)。例如,视频解码器300可以基于当前块的块尺寸、当前块内第一样点集合中的每个样点的空间位置、以及当前块的编译码模式中的一个或更多个来推导出第一权重值、第二权重值、第三权重值和第四权重值。举例来说,视频解码器300可以基于当前块的块尺寸来推导出具有比第一权重值更大的值的第一权重值。
在某些示例中,视频解码器300可以对一个或更多个语法元素的值进行解码以生成辅助信息,并使用辅助信息来确定第一权重值、第二权重值、第三权重值和第四权重值。在某些示例中,视频解码器300可以简单地确定第一权重值、第二权重值、第三权重值和第四权重值中的每一个的值为1。
视频解码器300可以对第一加权值、第二加权值、第三加权值和第四加权值求平均以生成针对像素的平均值(440)。例如,视频解码器300可以计算等式4或等式5。
图13是示出一种用于使用边界区域进行变换域滤波的示例方法的流程图。当前块可以包括当前CU。尽管参考视频解码器300(图1和3)进行了描述,但是应当理解的是,其他设可以被配置为执行与图13的方法类似的方法。例如,在图13中所描述的过程可以被视频编码器200(图1和4)执行。
视频解码器300可以确定像素是否在当前块的边界区域内(452)。响应于确定像素在当前块的边界区域内(判定块452的“是”),视频解码器300可以生成样点集合,对像素的样点集合执行变换(例如,Hadamard变换),进行滤波以及执行逆变换(例如,逆Hadamard变换)(454)。然而,响应于确定像素不在当前块的边界区域内(判定块452的“否”),视频解码器300可以禁止生成样点集合,禁止对像素的样点集合执行变换、滤波以及执行逆变换(456)。在任何情况下,视频解码器300可以确定重建块的所有像素是否已经被处理(458)。响应于确定重建块的所有像素并未被处理(块458的“否”),视频解码器300将像素计数器递增(460),并且过程转到判定块452。响应于重建块的所有像素已被处理(块458的“否”),则过程结束。
图14是示出一种用于对变换域滤波信息进行编码的示例方法的流程图。当前块可以包括当前CU。尽管参考视频编码器200(图1和3)进行了描述,但是应当理解的是,其他设备可以被配置为执行与图14的方法类似的方法。
视频编码器200可以使用预测信息和残差块来重建当前块以生成重建块(470)。视频编码器200可以确定变换域滤波针对当前块被启用(472)。例如,响应于确定当前块包括原始图片中不存在的伪影或水平和垂直的断续,视频编码器200可以确定变换域滤波针对当前块被启用。在某些示例中,视频编码器200可以可选地确定变换域滤波信息是否指示变换域滤波针对当前块被衰减。响应于确定变换域滤波针对当前块被启用,视频编码器200可以:对视频数据的比特流进行编码,该比特流包括指示预测信息、残差块以及变换域滤波信息的语法元素,该变换域滤波信息指示变换域滤波针对当前块被启用(474);并对重建块执行变换域滤波以生成经滤波块(476)。例如,视频编码器200可以执行图12和/或图13中所示的一个或更多个步骤。视频编码器200可以可选地将经滤波块存储于已解码图片缓存器218中(478)。
应该认识到,根据示例,可以以不同的顺序执行,也可以添加,合并或完全省略(例如,并非所有描述的动作或事件是实践这些技术所必要的)本文描述的技术中的任一种的某些动作或事件。此外,在某些示例中,可以例如通过多线程处理、中断处理或多个处理器并发地执行动作或事件,而不是顺序地执行动作或事件。
在一个或更多个示例中,可以以硬件,软件,固件或其任意组合来实现所述功能。如果以软件实现,则所述功能可以作为一个或更多个指令或代码存储在计算机可读介质上或通过计算机可读介质进行传输,并由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质或者通信介质。计算机可读存储介质对应于诸如数据存储介质的有形介质。通信介质包括有助于,例如根据通信协议,将计算机程序从一处传送到另一处的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质,或者(2)诸如信号或载波的通信介质。数据存储介质可以是满足下述条件的任何可用的介质。所述条件为一台或更多台计算机或一个或更多个处理器可以访问该数据存储介质以检索指令、代码和/或数据结构,从而实现本公开中描述的技术。计算机程序产品可以包括计算机可读介质。
作为示例而非限制,上述计算机可读存储介质可以包括:RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储、或其他磁性存储设备、闪存存储器或任何其他可以用于以指令或数据结构形式存储所需程序代码且可由计算机访问的介质。而且,任何连接都适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或诸如红外,无线电和微波的无线技术从网站、服务器或其他远程源发送指令,则上述同轴电缆、光纤电缆、双绞线、DSL或诸如红外、无线电和微波的无线技术都包含于介质的定义。然而,应当理解,计算机可读存储介质和数据存储介质并不包括连接、载波、信号或其他瞬时介质,而是指非瞬时的有形存储介质。本文使用的磁盘和光盘包括压缩光盘(CD)、激光光碟、光盘、数字多功能光盘(DVD)、软盘和Blu-ray光盘,其中磁盘通常以磁性方式复制数据,而光盘则通过激光光学方式复制数据。上述的组合也应包括在计算机可读介质的范围内。
可以由一个或更多个处理器来执行指令,该一个或更多个处理器例如一个或更多个信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他等效的集成或离散逻辑电路。因此,如本文所使用的术语“处理器”可以指任何前述结构或适合于实现本文所述的技术的任何其他结构。另外,在某些方面,本文所述的功能可以在被配置用于进行编码和解码的专用硬件和/或软件模块内提供,或结合在组合编解码器中。同样,所述技术可以在一个或更多个电路或逻辑元件中充分实现。
本公开的技术可以在各种各样的设备或装置中实现,包括无线手机,集成电路(IC)或一组IC(例如,芯片组)。在本公开中描述了多个组件,模块或单元以强调被配置为执行所公开的技术的设备的功能方面,但不一定需要由不同硬件单元来实现。准确地说,如上所述,结合适当的软件和/或固件,多个单元可以组合在编解码器硬件单元中,或者由互操作硬件单元集来提供,包括如上所述的一个或更多个处理器。
已经对多种示例进行了描述。这些和其他示例均在所附权利要求的范围内。

Claims (32)

1.一种用于对视频数据进行解码的方法,所述方法包括:
由以电路实现的视频解码器来接收包括已编码视频数据的比特流;
由所述视频解码器从所述比特流中解码一个或更多个语法元素的值以生成当前块的残差块、所述当前块的预测信息以及变换域滤波信息;
由所述视频解码器使用所述预测信息和所述残差块来重建所述当前块以生成重建块;以及
响应于确定所述变换域滤波信息指示变换域滤波针对所述当前块被启用,由所述视频解码器对所述重建块执行变换域滤波以生成经滤波块,其中执行变换域滤波包括:
生成所述重建块的像素的样点集合;
对所述像素的所述样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;
对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量;以及
对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换,以生成所述像素的经滤波值。
2.根据权利要求1所述的方法,还包括:
由所述视频解码器来确定所述变换域滤波信息是否指示变换域滤波针对所述当前块被衰减,其中,基于所述变换域滤波信息是否指示变换域滤波针对所述当前块被衰减来对所述重建像素的所述频谱分量进行滤波。
3.根据权利要求1所述的方法,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,并且其中,执行变换域滤波包括:
使用所述像素的第二样点集合来生成所述像素的第二经滤波值;
使用所述像素的第三样点集合来生成所述像素的第三经滤波值;
使用所述像素的第四样点集合来生成所述像素的第四经滤波值;以及
对所述第一经滤波值、所述第二经滤波值、所述第三经滤波值和所述第四经滤波值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
4.根据权利要求1所述的方法,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,其中,解码包括对所述一个或更多个语法元素的所述值进行解码以生成辅助信息,其中所述方法还包括由所述视频解码器使用所述辅助信息来确定第一权重值、第二权重值、第三权重值和第四权重值,并且其中执行变换域滤波包括:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;以及
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
5.根据权利要求1所述的方法,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,并且其中所述方法还包括:由所述视频解码器基于所述当前块的块尺寸、所述当前块内的所述第一样点集合中的每个样点的空间位置以及所述当前块的编译码模式中的一个或更多个来推导出第一权重值、第二权重值、第三权重值和第四权重值,其中执行变换域滤波包括:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;以及
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
6.根据权利要求1所述的方法,其中,所述样点集合是布置在定位于包括所述像素的左上角样点组的2×2的窗口内的第一样点集合,其中所述经滤波值是第一经滤波值,并且其中执行变换域滤波包括:
使用布置在定位于包括所述像素的右上角样点组的2×2的窗口内的第二样点集合来生成第二经滤波值;
使用布置在定位于包括所述像素的左下角样点组的2×2的窗口内的第三样点集合来生成第三经滤波值;以及
使用布置在定位于包括所述像素的右下角样点组的2×2的窗口内的第四样点集合来生成第四经滤波值。
7.根据权利要求1所述的方法,其中,所述重建像素的所述频谱分量是所述重建像素的第一频谱分量,所述重建像素的所述经滤波频谱分量是所述重建像素的第一经滤波频谱分量,其中执行变换域滤波包括:
生成所述像素的第二样点集合;
对所述像素的所述第二样点集合执行从所述像素域到所述频域的变换,以生成所述重建像素的第二频谱分量;
对所述重建像素的所述第二频谱分量进行滤波以生成所述重建像素的第二经滤波频谱分量;以及
对所述重建像素的所述第二经滤波频谱分量执行从所述频域到所述像素域的逆变换,以生成所述像素的第二经滤波值。
8.根据权利要求1所述的方法,
其中,执行所述变换包括执行Hadamard变换;以及
其中,执行所述逆变换包括执行逆Hadamard变换。
9.根据权利要求1所述的方法,其中,执行变换域滤波包括:
确定所述像素是否位于所述当前块的边界区域内,其中生成所述样点集合、执行所述变换、进行滤波以及执行所述逆变换都是响应于确定所述像素位于所述当前块的所述边界区域内。
10.根据权利要求9所述的方法,其中所述像素是第一像素,并且其中执行变换域滤波包括:
确定第二像素是否位于所述当前块的所述边界区域内;以及
响应于确定所述第二像素不位于所述当前块的所述边界区域内,禁止对所述第二像素执行变换域滤波。
11.一种用于对视频数据进行解码的装置,所述装置包括:
被配置为存储已编码视频数据的存储器;以及
以电路实现的一个或更多个处理器,并且所述一个或更多个处理器被配置为:
接收包括所述已编码视频数据的比特流;
从所述比特流中解码一个或更多个语法元素的值以生成当前块的残差块、所述当前块的预测信息以及变换域滤波信息;
使用所述预测信息和所述残差块来重建所述当前块以生成重建块;以及
响应于确定所述变换域滤波信息指示变换域滤波针对所述当前块被启用,对所述重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
生成所述重建块的像素的样点集合;
对所述像素的所述样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;
对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量;以及
对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的经滤波值。
12.根据权利要求11所述的装置,其中所述一个或更多个处理器还被配置为:
确定所述变换域滤波信息是否指示变换域滤波针对所述当前块被衰减,其中,为了对所述重建像素的所述频谱分量进行滤波,所述一个或更多个处理器被配置为基于所述变换域滤波信息是否指示变换域滤波针对所述当前块被衰减来对所述重建像素的所述频谱分量进行滤波。
13.根据权利要求11所述的装置,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,并且其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
使用所述像素的第二样点集合来生成所述像素的第二经滤波值;
使用所述像素的第三样点集合来生成所述像素的第三经滤波值;
使用所述像素的第四样点集合来生成所述像素的第四经滤波值;以及
对所述第一经滤波值、所述第二经滤波值、所述第三经滤波值和所述第四经滤波值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
14.根据权利要求11所述的装置,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,其中,为了解码,所述一个或更多个处理器被配置为:对所述一个或更多个语法元素的所述值进行解码以生成辅助信息,其中所述一个或更多个处理器被配置为使用所述辅助信息来确定第一权重值、第二权重值、第三权重值和第四权重值,并且其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,其中所述一个或更多个处理器被配置为生成所述经滤波块以指示针对所述像素的所述平均值。
15.根据权利要求11所述的装置,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,并且其中所述一个或更多个处理器被配置为:基于所述当前块的块尺寸、所述当前块内的所述第一样点集合中的每个样点的空间位置以及所述当前块的编译码模式中的一个或更多个来推导出第一权重值、第二权重值、第三权重值和第四权重值,其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;以及
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,其中,所述一个或更多个处理器被配置为生成所述经滤波块以指示针对所述像素的所述平均值。
16.根据权利要求11所述的装置,其中,所述样点集合是布置在定位于包括所述像素的左上角样点组的2×2的窗口内的第一样点集合,其中所述经滤波值是第一经滤波值,并且其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
使用布置在定位于包括所述像素的右上角样点组的2×2的窗口内的第二样点集合来生成第二经滤波值;
使用布置在定位于包括所述像素的左下角样点组的2×2的窗口内的第三样点集合来生成第三经滤波值;以及
使用布置在定位于包括所述像素的右下角样点组的2×2的窗口内的第四样点集合来生成第四经滤波值。
17.根据权利要求11所述的装置,其中,所述重建像素的所述频谱分量是所述重建像素的第一频谱分量,所述重建像素的所述经滤波频谱分量是所述重建像素的第一经滤波频谱分量,并且其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
生成所述像素的第二样点集合;
对所述像素的所述第二样点集合执行从所述像素域到所述频域的变换,以生成所述重建像素的第二频谱分量;
对所述重建像素的所述第二频谱分量进行滤波以生成所述重建像素的第二经滤波频谱分量;以及
对所述重建像素的所述第二经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的第二经滤波值。
18.根据权利要求11所述的装置,其中,为了执行所述变换,所述一个或更多个处理器被配置为执行Hadamard变换;以及
其中,为了执行所述逆变换,所述一个或更多个处理器被配置为执行逆Hadamard变换。
19.根据权利要求11所述的装置,其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
确定所述像素是否位于所述当前块的边界区域内,其中所述一个或更多个处理器被配置为:响应于确定所述像素位于所述当前块的所述边界区域内,生成所述样点集合、执行所述变换、进行滤波以及执行所述逆变换。
20.根据权利要求19所述的装置,其中所述像素是第一像素,并且其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
确定第二像素是否位于所述当前块的所述边界区域内;以及
响应于确定所述第二像素不位于所述当前块的所述边界区域内,禁止对所述第二像素执行变换域滤波。
21.一种用于对视频数据进行解码的装置,所述装置包括:
用于接收包括已编码视频数据的比特流的部件;
用于从所述比特流中解码一个或更多个语法元素的值以生成当前块的残差块、所述当前块的预测信息以及变换域滤波信息的部件;
用于使用所述预测信息和所述残差块来重建所述当前块以生成重建块的部件;以及
用于,响应于确定所述变换域滤波信息指示变换域滤波针对所述当前块被启用,对所述重建块执行变换域滤波以生成经滤波块的部件,其中用于执行变换域滤波的部件包括:
用于生成所述重建块的像素的样点集合的部件;
用于对所述像素的所述样点集合执行从像素域到频域的变换以生成重建像素的频谱分量的部件;
用于对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量的部件;以及
用于对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的经滤波值的部件。
22.一种存储有指令的非暂时性计算机可读存储介质,其中,当所述指令被执行时,使得一个或更多个处理器:
接收包括已编码视频数据的比特流;
从所述比特流中解码一个或更多个语法元素的值以生成当前块的残差块、所述当前块的预测信息以及变换域滤波信息;
使用所述预测信息和所述残差块来重建所述当前块以生成重建块;以及
响应于确定所述变换域滤波信息指示变换域滤波针对所述当前块被启用,对所述重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
生成所述重建块的像素的样点集合;
对所述像素的所述样点集合执行从像素域到频域的变换以生成重建像素的频谱分量;
对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量;以及
对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的经滤波值。
23.一种对视频数据进行编码的方法,所述方法包括:
由以电路实现的视频编码器使用预测信息和残差块来重建当前块以生成重建块;
响应于确定变换域滤波针对所述当前块被启用:
由所述视频编码器对所述视频数据的比特流进行编码,其中,所述比特流包括指示所述预测信息、所述残差块以及变换域滤波信息的一个或更多个语法元素,其中所述变换域滤波信息指示变换域滤波针对所述当前块被启用;以及
由所述视频编码器对所述重建块执行变换域滤波以生成经滤波块,其中,执行变换域滤波包括:
生成所述重建块的像素的样点集合;
对所述像素的所述样点集合执行从像素域到频域的变换以生成所述重建像素的频谱分量;
对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量;以及
对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的经滤波值。
24.根据权利要求23所述的方法,还包括:
由所述视频编码器确定所述变换域滤波是否针对所述当前块被衰减或针对所述当前块被启用,其中编码包括:对所述比特流进行编码以包括一个或更多个语法元素,所述一个或更多个语法元素用信令通知变换域滤波以指示所述变换域滤波是否针对所述当前块被衰减或针对所述当前块被启用,其中,基于所述变换域滤波是否针对所述当前块被衰减或针对所述当前块被启用来对所述重建像素的所述频谱分量进行滤波。
25.根据权利要求23所述的方法,其中,所述样点集合是第一样点集合,并且所述经滤波值是第一经滤波值,并且其中,执行变换域滤波包括:
使用所述像素的第二样点集合来生成所述像素的第二经滤波值;
使用所述像素的第三样点集合来生成所述像素的第三经滤波值;
使用所述像素的第四样点集合来生成所述像素的第四经滤波值;以及
对所述第一经滤波值、所述第二经滤波值、所述第三经滤波值和所述第四经滤波值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
26.根据权利要求23所述的方法,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,其中,编码包括对所述一个或更多个语法元素进行编码以生成指示第一权重值、第二权重值、第三权重值和第四权重值的辅助信息,并且其中,执行变换域滤波包括:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;以及
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
27.根据权利要求23所述的方法,其中,所述样点集合是第一样点集合并且所述经滤波值是第一经滤波值,并且其中所述方法还包括:由所述视频编码器基于所述当前块的块尺寸、所述当前块内的所述第一样点集合中的每个样点的空间位置以及所述当前块的编译码模式中的一个或更多个来推导出第一权重值、第二权重值、第三权重值和第四权重值,其中执行变换域滤波包括:
使用所述第一权重值和所述第一经滤波值来生成所述像素的第一加权值;
使用所述第二权重值和利用所述像素的第二样点集合生成的第二经滤波值来生成所述像素的第二加权值;
使用所述第三权重值和利用所述像素的第三样点集合生成的第三经滤波值来生成所述像素的第三加权值;
使用所述第四权重值和利用所述像素的第四样点集合生成的第四经滤波值来生成所述像素的第四加权值;以及
对所述第一加权值、所述第二加权值、所述第三加权值和所述第四加权值求平均以生成针对所述像素的平均值,所述方法还包括生成所述经滤波块以指示针对所述像素的所述平均值。
28.根据权利要求23所述的方法,其中,所述样点集合是布置在定位于包括所述像素的左上角样点组的2×2的窗口内的第一样点集合,其中所述经滤波值是第一经滤波值,并且其中执行变换域滤波包括:
使用布置在定位于包括所述像素的右上角样点组的2×2的窗口内的第二样点集合来生成所述像素的第二经滤波值;
使用布置在定位于包括所述像素的左下角样点组的2×2的窗口内的第三样点集合来生成所述像素的第三经滤波值;以及
使用布置在定位于包括所述像素的右下角样点组的2×2的窗口内的第四样点集合来生成所述像素的第四经滤波值。
29.根据权利要求23所述的方法,其中,所述重建像素的所述频谱分量是所述重建像素的第一频谱分量,所述重建像素的所述经滤波频谱分量是所述重建像素的第一经滤波频谱分量,其中执行变换域滤波包括:
生成所述像素的第二样点集合;
对所述像素的所述第二样点集合执行从所述像素域到所述频域的变换以生成所述重建像素的第二频谱分量;
对所述重建像素的所述第二频谱分量进行滤波以生成所述重建像素的第二经滤波频谱分量;以及
对所述重建像素的所述第二经滤波频谱分量进行从所述频域到所述像素域的逆变换以生成所述像素的第二经滤波值。
30.根据权利要求23所述的方法,
其中,执行所述变换包括执行Hadamard变换;以及
其中,执行所述逆变换包括执行逆Hadamard变换。
31.根据权利要求23所述的方法,其中,执行变换域滤波包括:
确定所述像素是否位于所述当前块的边界区域内,其中生成所述样点、执行所述变换、进行滤波以及执行所述逆变换都是响应于确定所述像素位于所述当前块的所述边界区域内。
32.一种用于对视频数据进行编码的装置,所述装置包括:
被配置为存储所述视频数据的存储器;以及
以电路实现的一个或更多个处理器,并且所述一个或更多个处理器被配置为:
使用预测信息和残差块来重建当前块以生成重建块;
响应于确定变换域滤波针对所述当前块被启用:
对所述视频数据的比特流进行编码,其中所述比特流包括指示所述预测信息、所述残差块和变换域滤波信息的一个或更多个语法元素,所述变换域滤波信息指示变换域滤波针对所述当前块被启用;以及
对所述重建块执行变换域滤波以生成经滤波块,其中,为了执行变换域滤波,所述一个或更多个处理器被配置为:
生成所述重建块的像素的样点集合;
对所述像素的所述样点集合执行从像素域到频域的变换以生成所述重建像素的频谱分量;
对所述重建像素的所述频谱分量进行滤波以生成所述重建像素的经滤波频谱分量;以及
对所述重建像素的所述经滤波频谱分量执行从所述频域到所述像素域的逆变换以生成所述像素的经滤波值。
CN201980065153.5A 2018-10-08 2019-10-08 视频编/解码中基于变换域滤波的量化伪影抑制 Pending CN112789856A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862742847P 2018-10-08 2018-10-08
US62/742,847 2018-10-08
US16/595,016 US11172215B2 (en) 2018-10-08 2019-10-07 Quantization artifact suppression and signal recovery by the transform domain filtering
US16/595,016 2019-10-07
PCT/US2019/055202 WO2020076832A1 (en) 2018-10-08 2019-10-08 Quantization artifact suppression by transform domain filtering in video encoding/decoding

Publications (1)

Publication Number Publication Date
CN112789856A true CN112789856A (zh) 2021-05-11

Family

ID=70051284

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980065153.5A Pending CN112789856A (zh) 2018-10-08 2019-10-08 视频编/解码中基于变换域滤波的量化伪影抑制

Country Status (5)

Country Link
US (1) US11172215B2 (zh)
EP (1) EP3864843A1 (zh)
CN (1) CN112789856A (zh)
TW (1) TW202029774A (zh)
WO (1) WO2020076832A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113709325A (zh) * 2021-07-20 2021-11-26 辽宁大学 基于Hadamard频域变换矩阵阈值滤波的单像素成像方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117834922A (zh) 2018-01-17 2024-04-05 英迪股份有限公司 对视频进行解码或编码的方法和发送数据的方法
EP3989586A4 (en) * 2019-06-21 2023-07-19 Samsung Electronics Co., Ltd. VIDEO ENCODING METHOD AND DEVICE FOR PERFORMING POST-RECONSTRUCTION FILTERING IN LIMITED PREDICTION MODE, AND VIDEO DECODER METHOD AND DEVICE
US11375200B2 (en) * 2019-12-24 2022-06-28 Tencent America LLC Video coding method and device for controlling color component processing
US11425423B1 (en) 2022-03-10 2022-08-23 Yendo Hu Memory storage for motion estimation and visual artifact redcution
US11388445B1 (en) 2022-03-10 2022-07-12 Yendo Hu Mosquito noise smoothing between different video subsections encoded with different compression methods within a video frame

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130195181A1 (en) * 2010-01-25 2013-08-01 Thomson Licensing Methods for coding and decoding
US20130301714A1 (en) * 2010-11-04 2013-11-14 Sk Telecom Co., Ltd. Method and apparatus for encoding/decoding image for performing intraprediction using pixel value filtered according to prediction mode

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130195181A1 (en) * 2010-01-25 2013-08-01 Thomson Licensing Methods for coding and decoding
US20130301714A1 (en) * 2010-11-04 2013-11-14 Sk Telecom Co., Ltd. Method and apparatus for encoding/decoding image for performing intraprediction using pixel value filtered according to prediction mode

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
GEERT VAN DER AUWERA等: "Transform Dependent Deblocking Filter Parameter Adjustment in Slice Level", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) OF ITU-T SG16 WP3 AND ISO/IEC JTC1/SC29/WG11 7TH MEETING: GENEVA, 21-30 NOVEMBER, 2011,JCTVC-G291, pages 1 - 5 *
SERGEY IKONIN 等: "CE14: Hadamard transform domain filter (Test 3)", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 12TH MEETING: MACAO, CN, 3–12 OCT. 2018, JVET-L326-V1,, pages 1 - 9 *
VICTOR STEPIN等: "CE2 related: Hadamard Transform Domain Filter", OINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 11TH MEETING: LJUBLJANA, SI, 10–18 JULY 2018,JVET-K0068-V3, pages 1 - 5 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113709325A (zh) * 2021-07-20 2021-11-26 辽宁大学 基于Hadamard频域变换矩阵阈值滤波的单像素成像方法
CN113709325B (zh) * 2021-07-20 2023-09-15 辽宁大学 基于Hadamard频域变换矩阵阈值滤波的单像素成像方法

Also Published As

Publication number Publication date
EP3864843A1 (en) 2021-08-18
US20200112736A1 (en) 2020-04-09
US11172215B2 (en) 2021-11-09
WO2020076832A1 (en) 2020-04-16
TW202029774A (zh) 2020-08-01

Similar Documents

Publication Publication Date Title
JP7463399B2 (ja) ビデオコーディングのための勾配ベースの予測改良
CN113785587A (zh) 在矩阵帧内预测模式中裁剪预测样本
US11172215B2 (en) Quantization artifact suppression and signal recovery by the transform domain filtering
CN114080802A (zh) 用于视频译码中的变换跳过模式和调色板模式的最小允许量化参数
CN112385223A (zh) 取决于模式的帧内平滑(mdis)与帧内内插滤波器切换的组合
CN114128286A (zh) 视频编解码中的环绕运动补偿
CN113557734A (zh) 视频译码中的系数域块差分脉冲译码调制
CN112385233A (zh) 合并的依赖模式的帧内平滑(mdis)与具有依赖位置的帧内预测组合(pdpc)的内插值滤波器切换
CN113728629A (zh) 视频译码中的运动向量推导
JP7423647B2 (ja) 異なるクロマフォーマットを使用した三角予測ユニットモードでのビデオコーディング
US11418793B2 (en) Adaptive affine motion vector coding
CN112673636B (zh) 将运动向量取整以自适应运动向量差分辨率及提高视频译码中的运动向量存储精度
CN114223202A (zh) 低频不可分离变换(lfnst)信令
US20200366889A1 (en) Gradient-based prediction refinement for video coding
CN112602323B (zh) 用于视频编码和处理的解块滤波器
CN113597762A (zh) 视频译码中具有非线性自适应环路滤波器的固定滤波器
CN113632466A (zh) 视频数据的帧间-帧内预测模式
CN114846796A (zh) 用于视频译码中的参考图片重采样的环绕偏移
CN113994678A (zh) 信令通知色度量化参数(qp)映射表
CN112771860A (zh) 针对视频译码中最差情况的带宽减少的仿射限制
CN114402620A (zh) 用于视频编解码的交叉分量自适应环路滤波的比特移位
US11089328B2 (en) Bi-directional optical flow in video coding
CN114424570A (zh) 用于视频编解码的变换单元设计
CN114846803A (zh) 支持有损译码和无损译码两者的残差译码
CN116830576A (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