CN110199522B - 编码方法、解码方法和解码设备 - Google Patents

编码方法、解码方法和解码设备 Download PDF

Info

Publication number
CN110199522B
CN110199522B CN201880007962.6A CN201880007962A CN110199522B CN 110199522 B CN110199522 B CN 110199522B CN 201880007962 A CN201880007962 A CN 201880007962A CN 110199522 B CN110199522 B CN 110199522B
Authority
CN
China
Prior art keywords
filter
video
filter coefficients
prediction
current block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880007962.6A
Other languages
English (en)
Other versions
CN110199522A (zh
Inventor
阿列克谢·菲利波夫
瓦西里·拉夫特斯基
杨海涛
马克西姆·瑟乔夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN110199522A publication Critical patent/CN110199522A/zh
Application granted granted Critical
Publication of CN110199522B publication Critical patent/CN110199522B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • 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

Landscapes

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

Abstract

提供了一种由解码设备执行译码的方法。所述方法包括:确定当前块的预测方向;确定沿所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;基于所述传播距离选择多个滤波器系数中的一个;使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及显示包括所预测的所述像素的图像。

Description

编码方法、解码方法和解码设备
背景技术
即便描绘相对较短的视频,也可能需要大量的视频数据量,当需要在带宽容量有限的通信网络中流传输或传送数据时,可能会产生难度。因此,在现代电信网络中传送视频数据之前通常会压缩视频数据。由于内存资源可能有限,当在存储设备上存储视频时,视频的大小也可能成为问题。在传输或存储视频数据之前,视频压缩设备经常在信源处使用软件和/或硬件对视频数据进行编码,从而减少表示数字视频图像所需的数据量。然后,对视频数据进行解码的视频解压设备在信宿处接收压缩后数据。在网络资源有限同时对更高视频质量的需求不断增长的情况下,需要出现提高压缩率而几乎不影响图像质量的改进型压缩和解压技术。
发明内容
在一项实施例中,本发明包括一种由编码设备执行编码的方法。所述方法包括一种由解码设备执行编码的方法。所述方法包括:所述解码设备确定当前块的预测方向;所述解码设备确定沿所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;所述解码设备基于所述传播距离选择多个滤波器系数中的一个;所述解码设备使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及在电子设备的显示器上显示包括所预测的所述像素的图像。
可选地,根据任一前述方面,在所述方面的另一实施方式中,所选择的所述滤波器系数中的所述一个的强度基于所确定的所述传播距离。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述多个滤波器系数包含由弱到强的一系列滤波器系数。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述一系列滤波器系数包含对应于较短传播距离的较弱滤波器系数和对应于较长传播距离的较强滤波器系数。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述预测方向是水平的或垂直的。
可选地,根据任一前述方面,在所述方面的另一实施方式中,所述预测方向是对角的。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述滤波器是平滑滤波器。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述滤波器是锐化滤波器。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述解码设备的存储器中存储将一系列传播距离映射到所述多个滤波器系数的表。
在一项实施例中,本发明包括一种由编码设备执行编码的方法。所述方法包括一种由编码设备执行编码的方法。所述方法包括:所述编码设备确定当前块的预测方向;所述编码设备确定沿所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;所述编码设备基于所述传播距离选择多个滤波器系数中的一个;所述编码设备使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及所述编码设备向用于解码比特流的解码设备传输包括图像的比特流,所述图像包括所述像素的图像。
可选地,根据任一前述方面,在所述方面的另一实施方式中,所选择的所述滤波器系数中的所述一个的强度基于所确定的所述传播距离。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述多个滤波器系数包含由弱到强的一系列滤波器系数。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述一系列滤波器系数包含对应于较短传播距离的较弱滤波器系数和对应于较长传播距离的较强滤波器系数。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述预测方向是对角的。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述滤波器是平滑滤波器。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述滤波器是锐化滤波器。
在一项实施例中,本发明包括一种解码设备,所述解码设备包括:接收器,用于为从编码设备接收比特流,所述比特流包含图像;耦合到所述接收器的处理器,所述处理器用于:从所述图像内选择当前块;确定所述当前块的预测方向;确定沿着所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;基于所述传播距离选择多个滤波器系数中的一个;使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及可耦合到所述处理器的显示器,所述显示器用于显示包括所预测的所述像素的图像。
可选地,根据任一前述方面,在所述方面的另一实施方式中,所选择的所述滤波器系数中的所述一个的强度基于所确定的所述传播距离。可选地,根据任一前述方面,在所述方面的另一实施方式中,所述多个滤波器系数包含由弱到强的一系列滤波器系数,所述一系列滤波器系数包含对应于较短传播距离的较弱滤波器系数和对应于较长传播距离的较强滤波器系数。可选地,在任一前述方面中,所述方面的另一实施方式提供了耦合到所述处理器的存储器,所述存储器用于存储将一系列传播距离映射到所述多个滤波器系数的表。
为了清楚起见,任一上述实施例可以与任一或多个其它上述实施例组合以创建在本发明范围内的新实施例。
这些和其它特征通过结合附图和权利要求中的下述详细描述将更容易理解。
附图说明
为了更透彻地理解本发明,现参阅结合附图和具体实施方式而描述的以下简要说明,其中的相同参考标号表示相同部分。
图1为可利用双向预测技术的示例编码系统的方框图。
图2为可实施双向预测技术的示例视频编码器的方框图。
图3为可实施双向预测技术的视频编码器示例的方框图。
图4示出了使用一个或多个参考样本进行预测的块。
图5为用于实施滤波器系数选择过程的视频编码设备。
图6示出了滤波器组的实施例。
图7示出了使用已经从一个相邻块复制的一组滤波器的参数值来预测的块。
图8示出了使用已经从一个相邻块复制的一组滤波器的参数值来预测的块。
图9为在编码器侧做出基于成本的率失真优化决策的方法实施例。
图10为在解码器侧使用合并的前向预测滤波器参数的方法实施例。
图11示出了根据一项实施例提供的使用从相邻块中的基本单元(base unit,BU)收集的参数值来预测的块。
图12示出了根据一项实施例提供的使用从相邻块中的BU收集的参数值来预测的块。
图13示出了根据一项实施例提供的使用从相邻块中的BU收集的参数值来预测的块。
图14为由解码设备执行的编码方法的实施例。
图15为由编码设备执行的编码方法的实施例。
图16为编码设备的示意图。
具体实施方式
首先应理解,尽管下文提供一项或多项实施例的说明性实施方式,但所公开的系统和/ 或方法可使用任何数目的技术来实施,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实施方式、附图和技术,包括本文所说明并描述的示例性设计和实施方式,而是可在所附权利要求书的范围以及其等效物的完整范围内修改。
图1为示出可利用双向预测技术的示例性编码系统10的方框图。如图1所示,编码系统 10包括源设备12,该源设备12提供已编码视频数据,该已编码视频数据将稍后由目标设备 14进行解码。具体而言,源设备12可以通过计算机可读介质16向目标设备14提供视频数据。源设备12和目标设备14可以包括许多各种不同设备中的任何设备,包括台式电脑、笔记本电脑(例如膝上型电脑)、平板电脑、机顶盒、“智能”电话等手机、“智能”平板、电视机、照相机、显示设备、数字媒体播放器、电子游戏机、视频流设备等。在一些情况下,可以配备源设备12和目标设备14进行无线通信。
目标设备14可以接收已编码视频数据,该已编码视频数据将由计算机可读介质16进行解码。计算机可读介质16可以包括能够将已编码视频数据从源设备12移动到目标设备14的任何类型的介质或设备。在一个示例中,计算机可读介质16可以包括通信介质,以使得源设备12能够直接向目标设备14实时传输已编码视频数据。已编码视频数据可以根据无线通信协议等通信标准进行调制,并且可以传输到目标设备14。通信介质可以包括任何无线通信介质或有线通信介质,例如射频(radio frequency,RF)频谱或一个或多个物理传输线。通信介质可以形成局域网、广域网或诸如互联网之类的全球网络等分组网络的一部分。通信介质可以包括路由器、交换机、基站或可用于促进源设备12到目标设备14的通信的任何其它设备。
在一些示例中,已编码数据可以从输出接口22输出到存储设备。类似地,已编码数据可以通过输入接口28从存储设备进行访问。存储设备可以包括多种分布式或本地访问的数据存储介质中的任何一种,例如硬盘驱动器、蓝光光盘、数字视频光盘(digital videodisk,DVD)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、闪存、易失性或非易失性存储器或用于存储已编码视频数据的任何其它合适的数字存储介质。在又一示例中,存储设备可对应于文件服务器或可存储由源设备12生成的已编码视频的其它中间存储设备。目标设备14可通过流式传输或下载从存储设备中访问所存储的视频数据。文件服务器可以是能够存储已编码视频数据并将已编码视频数据传输到目标设备14的任何类型的服务器。示例性文件服务器包括网络服务器(例如用于网站)、文件传输协议(file transferprotocol,FTP)服务器、网络连接存储(network attached storage,NAS)设备或本地磁盘驱动器。目标设备14可通过包括互联网连接在内的任何标准数据连接来访问已编码视频数据。互联网连接可以包括适合于访问存储在文件服务器上的已编码视频数据的无线信道(例如Wi-Fi连接)、有线连接(例如数字用户线路(digital subscriber line,DSL)、电缆调制解调器等),或者无线信道与有线连接两者的组合。来自存储设备的已编码视频数据的传输可以是流式传输、下载传输或它们的组合。
本发明的技术不一定限于无线应用或设置。这些技术可应用于视频编码以支持各种多媒体应用中的任一种,例如空中电视广播、有线电视传输、卫星电视传输、互联网流媒体视频传输,例如超文本传输协议动态自适应流媒体(dynamic adaptive streaming overhypertext transfer protocol,DASH)、编码到数据存储介质上的数字视频、存储在数据存储介质上的数字视频的解码或其它应用。在一些示例中,编码系统10可以用于支持单向或双向视频传输,以支持视频推流、视频回放、视频广播和/或视频电话等应用。
在图1的示例中,源设备12包括视频源18、视频编码器20和输出接口22。目标设备14包括输入接口28、视频解码器30和显示设备32。根据本发明,源设备12中的视频编码器20和/或目标设备14中的视频解码器30可用于应用双向预测技术。在其它示例中,源设备和目标设备可以包括其它组件或部件。例如,源设备12可以从外部摄像机等外部视频源接收视频数据。同样地,目标设备14可以与外部显示设备连接,而不包括集成显示设备。
图1所示的编码系统10仅是一个示例。双向预测技术可以由任何数字视频编码和/或解码设备来执行。尽管本发明的技术一般由视频编码设备执行,但这些技术还可由通常称为“CODEC”的视频编码器/解码器执行。此外,本发明的技术还可以由视频预处理器执行。视频编码器和/或解码器可以是图形处理器(graphics processing unit,GPU)或类似设备。
源设备12和目标设备14仅是以下情况中的编码设备的示例:源设备12生成已编码视频数据,再将已编码视频数据传输到目标设备14。在一些示例中,源设备12和目标设备14可以以基本对称的方式操作,使得源设备12和目标设备14各自包括视频编码组件和视频解码组件。因此,编码系统10可支持视频设备12与视频设备14之间的单向或双向视频传输,以进行视频推流、视频回放、视频广播或视频电话等。
源设备12中的视频源18可以包括摄像机等视频捕获设备、包含先前捕获的视频的视频资料库和/或用于从视频内容提供商接收视频的视频馈送接口。在另一替代方案中,视频源 18可以生成基于计算机图形的数据作为源视频,或者生成直播视频、存档视频和计算机生成的视频的组合。
在一些情况下,当视频源18是摄像机时,源设备12和目标设备14可以形成所谓的拍照手机或视频手机。然而,如上所述,本发明中所述的技术通常可应用于视频编码,并且可应用于无线应用和/或有线应用。在每种情况下,可由视频编码器20对所捕获、预先捕获或计算机生成的视频进行编码。然后,可由输出接口22将已编码视频信息输出到计算机可读介质 16上。
计算机可读介质16可以包括无线广播或有线网络传输等瞬时性介质或者硬盘、闪存、光盘、数字视频光盘、蓝光光盘或其它计算机可读介质等存储介质(即非暂时性存储介质)。在一些示例中,网络服务器(未示出)可以从源设备12接收已编码视频数据并且通过网络传输将已编码视频数据提供给目标设备14。类似地,盘片冲压设施等媒体生产设施的计算设备可以从源设备12接收已编码视频数据并且产生包含该已编码视频数据的光盘。因此,在各种示例中,计算机可读介质16可理解为包括各种形式的一个或多个计算机可读介质。
目标设备14中的输入接口28从计算机可读介质16接收信息。计算机可读介质16的信息可以包括由视频编码器20定义的语法信息,视频编码器20还由视频解码器30使用,语法信息包括描述块和其它已编码单元的特性和/或处理的语法元素,例如图片组(group ofpicture, GOP)。显示设备32将已解码视频数据显示给用户,并且可包括多种显示设备中的任何一种,例如阴极射线管(cathode ray tube,CRT)、液晶显示器(liquid crystaldisplay,LCD)、等离子显示器、有机发光二极管(organic light emitting diode,OLED)显示器或其它类型的显示设备。
视频编码器20和视频解码器30可根据目前正在开发的高效率视频编码(HighEfficiency Video Coding,HEVC)标准等视频编码标准操作,且可以符合HEVC测试模型(HEVC Test Model,HM)。或者,视频编码器20和视频解码器30还可根据其它专有或行业标准操作,例如国际电信联盟电信标准化部门(International Telecommunications UnionTelecommunication Standardization Sector,ITU-T)H.264标准,或称为运动图像专家组(Motion Picture Expert Group, MPEG)-4,第10部分,高级视频编码(Advanced VideoCoding,AVC),H.265/HEVC或这些标准的扩展。然而,本发明的技术不限于任何特定的编码标准。视频编码标准的其它示例包括MPEG-2和ITU-T H.263。尽管在图1中未示出,但是在一些方面中,视频编码器20和视频解码器30各自可以与音频编码器和音频解码器集成,且可以包括适当的复用器-解复用器(multiplexer-demultiplexer,MUX-DEMUX)单元或其它硬件及软件,以对通用数据流或单独数据流中的音频和视频分别进行编码处理。如果适用,MUX-DEMUX单元可以符合ITU H.223复用器协议或用户数据报协议(user datagramprotocol,UDP)等其它协议。
视频编码器20和视频解码器30各自可实施为各种合适的编码器电路中的任一个,例如一个或一个微处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路 (application specific integrated circuit,ASIC)、现场可编程门阵列(fieldprogrammable gate array,FPGA)、离散逻辑、软件、硬件、固件或它们的任何组合。当本发明的技术部分以软件实施时,设备可以将软件的指令存储在合适的非瞬时性计算机可读介质中,并且使用一个或多个处理器以硬件形式执行这些指令,从而执行本发明的技术。视频编码器20和视频解码器30都可包括在一个或多个编码器或解码器中,其中任一者可作为组合式编码器/解码器 (combined encoder/decoder,CODEC)的一部分而集成在相应设备中。包括视频编码器20 和/或视频解码器30的设备可以包括集成电路、微处理器和/或蜂窝电话等无线通信设备。
图2为示出可实施双向预测技术的视频编码器20的示例的方框图。视频编码器20可对视频分片内的视频块执行帧内和帧间编码。帧内编码依赖于空间预测以减少或移除给定视频帧或图片内的视频中的空间冗余。帧间编码依赖于时间预测以减少或移除视频序列的相邻帧或图片内的视频中的时间冗余。帧内模式(I模式)可以是几种基于空间的编码模式中的任何一种。帧间预测模式,例如单向预测(P模式)或双向预测(B模式),可以是几种基于时间的编码模式中的任何一种。
如图2所示,视频编码器20接收待编码的视频帧内的当前视频块。在图2的示例中,视频编码器20包括模式选择单元40、参考帧存储器64、加法器50、变换处理单元52、量化单元54和熵编码单元56。模式选择单元40又包括运动补偿单元44、运动估计单元42、帧内预测单元46和分区单元48。对于视频块重构,视频编码器20还包括逆量化单元58、逆变换单元60和加法器62。还可以包括去块效应滤波器(图2中未示出),用于对块边界进行滤波,从而去除已重构视频中的块效应伪影。如果需要,去块效应滤波器通常会对加法器62的输出进行滤波。除去块效应滤波器之外,还可使用其它(环内或后环)滤波器。为了简洁起见,没有示出这些滤波器,但是如果需要,这些滤波器可以(作为环内滤波器)对加法器50的输出进行滤波。
在编码过程中,视频编码器20接收待编码的视频帧或视频分片。视频帧或视频分片可分为多个视频块。运动估计单元42和运动补偿单元44对相对于一个或多个参考帧中的一个或多个块的接收到的视频块执行帧间预测编码,从而提供时间预测。帧内预测单元46还可对相对于与待编码的块相同的帧或分片内的一个或多个相邻块的接收到的视频块执行帧内预测编码,从而提供空间预测。视频编码器20可执行多个编码通道,从而为视频数据的每个块选择适当的编码模式,等等。
此外,分区单元48可基于在前述编码通道中对前述分区方案进行的评估将视频数据的块划分成子块。例如,分区单元48最初可将帧或分片划分成最大编码单元(1argestcoding unit, LCU),然后基于率失真分析(例如率失真优化)将每个LCU划分成子编码单元(sub-coding unit,sub-CU)。模式选择单元40还可生成一个四叉树数据结构,指示将LCU划分成子CU。四叉树的叶子节点CU可包括一个或多个预测单元(prediction unit,PU)以及一个或多个变换单元(transform unit,TU)。
本发明使用术语“块”来指代HEVC场景下的CU、PU或TU中的任一个,或其它标准场景下的类似数据结构(例如在H.264/AVC下的宏块和子块)。CU包括编码节点以及与编码节点相关的PU和TU。CU的大小对应于编码节点的大小并且是正方形。CU的大小范围可以从8×8像素到树块的大小,最大值为64×64像素或更大。每个CU可以包含一个或多个PU 以及一个或多个TU。与CU相关的语法数据可以描述将CU划分成一个或多个PU,等等。对CU进行省略或直接模式编码、帧内预测模式编码或帧间预测模式编码,所使用的分区模式存在差异。可以对PU进行分区,形状为非正方形。与CU相关的语法数据还可以描述根据四叉树将CU划分成一个或多个TU,等等。TU的形状可以是正方形或非正方形(例如矩形)。
模式选择单元40可基于错误结果等选择帧内或帧间编码模式中的一个模式,将得到的帧内或帧间编码块提供给加法器50以生成残差块数据,并提供给加法器62来重构已编码块以用作参考帧。模式选择单元40还为熵编码单元56提供语法元素,例如运动向量、帧内模式指示符、分区信息和其它此类语法信息。
运动估计单元42和运动补偿单元44可高度集成,但是出于概念目的而分别说明。运动估计单元42所执行的运动估计是生成运动向量的过程,这些运动向量估计视频块的运动。例如,运动向量可指示相对于参考帧(或其它编码单元)内的预测块的当前视频帧或图片内的视频块的PU的位移,其中所述参考帧内的预测块相对于当前帧(或其它编码单元)内正在编码的当前块。预测块是根据像素差发现与待编码的块紧密匹配的块,该像素差可通过绝对差和(sum of absolute difference,SAD)、平方差和(sum of square difference,SSD)或其它差值度量进行确定。在一些示例中,视频编码器20可计算参考帧存储器64内存储的参考图片的非整数像素位置的值。例如,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可执行针对全像素位置和分数像素位置的运动搜索,并输出具有分数像素精度的运动向量。
运动估计单元42通过将PU的位置与参考图片中的预测块的位置进行比较来计算已经进行帧间编码的分片中视频块的PU的运动向量。参考图片可以从第一参考图片列表(列表0) 或第二参考图片列表(列表1)中选择,这两个列表中的每个列表都标识存储在参考帧存储器64中的一个或多个参考图片。运动估计单元42将计算得到的运动向量发送到熵编码单元 56和运动补偿单元44。
由运动补偿单元44执行的运动补偿可能涉及基于由运动估计单元42所确定的运动向量来提取或生成预测块。再者,在一些示例中,运动估计单元42和运动补偿单元44可以在功能上进行集成。在接收到当前视频块的PU的运动向量之后,运动补偿单元44可以定位一个参考图片列表中运动向量所指向的预测块。加法器50通过从正在编码的当前视频块的像素值中减去预测块的像素值来形成残差视频块,从而形成像素差值,如下所述。一般情况下,运动估计单元42执行与亮度组件有关的运动估计,运动补偿单元44对色度组件和亮度组件使用基于亮度组件计算得到的运动向量。模式选择单元40还可生成与视频块和视频分片相关的语法元素,以供视频解码器30在解码视频分片的视频块时使用。
帧内预测单元46可以对当前块进行帧内预测,作为由运动估计单元42和运动补偿单元 44执行的帧间预测的替代方案,如上所述。具体而言,帧内预测单元46可以确定帧内预测模式,用于对当前块进行编码。在一些示例中,帧内预测单元46可在单独的编码通道中等使用各种帧内预测模式对当前块进行编码,而帧内预测单元46(在一些示例中,模式选择单元 40)可从测试模式中选择要使用的适当的帧内预测模式。
例如,帧内预测单元46可使用率失真分析对各种已测试帧内预测模式计算率失真值,并从测试模式中选择具有最佳率失真特性的帧内预测模式。率失真分析通常确定已编码块和原始未编码块之间的失真(或误差)量以及确定用于产生已编码块的比特率(即比特数),其中对原始未编码块进行编码来产生该已编码块。帧内预测单元46可计算各种已编码块的失真比率和速率,以确定哪个帧内编码模式显示该块的最佳率失真值。
此外,帧内预测单元46可用于使用深度建模模式(depth modeling mode,DMM)对深度图中的深度块进行编码。模式选择单元40可使用率失真优化(rate-distortionoptimization, RDO)等来确定可用DMM模式是否比帧内预测模式和其它DMM模式产生更好的编码结果。可以将对应于深度图的纹理图像的数据存储在参考帧存储器64中。运动估计单元42和运动补偿单元44还可以用于对深度图中的深度块进行帧间预测。
在为块选择帧内预测模式(例如,传统帧内预测模式或某种DMM模式)之后,帧内预测单元46可将指示该块的所选帧内预测模式的信息提供给熵编码单元56。熵编码单元56可对指示所选帧内预测模式的信息进行编码。视频编码器20可将配置数据包含在已传输比特流中,配置数据可包括多个帧内预测模式索引表和多个已修改的帧内预测模式索引表(也称为码字映射表)、对各种块的编码上下文的定义以及用于每种上下文的最可能的帧内预测模式、帧内预测模式索引表和已修改的帧内预测模式索引表的指示。
视频编码器20通过从正在编码的原始视频块中减去来自模式选择单元40的预测数据,形成残差视频块。加法器50表示执行这种减法操作的一个或多个组件。
变换处理单元52对残差块进行离散余弦变换(discrete cosine transform,DCT)或概念上类似的变换等变换,从而产生包括残差变换系数值的视频块。变换处理单元52可以执行概念上类似于DCT的其它变换。还可使用小波变换、整数变换、子带变换或其它类型的变换。
变换处理单元52对残差块进行变换,从而产生具有残差变换系数的块。该变换可将残差信息从像素值域转换到变换域,例如频域。变换处理单元52可将得到的变换系数发送给量化单元54。量化单元54对变换系数进行量化以进一步降低比特率。量化过程可降低与部分或全部系数相关的比特深度。量化的程度可通过调整量化参数进行修改。在一些示例中,量化单元54然后可对包括已量化变换系数的矩阵执行扫描。或者,熵编码单元56可执行扫描。
量化后,熵编码单元56对已量化变换系数进行熵编码。例如,熵编码单元56可以执行基于上下文的自适应变长编码(context adaptive variable length coding,CAVLC)、基于上下文的自适应二进制算术编码(context adaptive binary arithmetic coding,CABAC)、基于语法的上下文自适应二进制算术编码(syntax-based context-adaptivebinary arithmetic coding,SBAC)、概率区间划分熵(probability intervalpartitioning entropy,PIPE)编码或其它熵编码技术。在基于上下文的熵编码中,上下文可基于相邻块。在熵编码单元56进行熵编码后,已编码比特流可以传输给其它设备(例如视频解码器30)或进行归档以供稍后传输或检索。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换在像素域中重构残差块,以便稍后用作参考块,等等。运动补偿单元44可通过将残差块添加到参考帧存储器64中的其中一个帧的预测块来计算参考块。运动补偿单元44还可将一个或多个内插滤波器应用到已重构残差块,从而计算非整数像素值以在运动估计时使用。加法器62将已重构残差块添加到由运动补偿单元44生成的运动补偿预测块中,以生成已重构视频块以供在参考帧存储器64中存储。已重构视频块可由运动估计单元42和运动补偿单元44用作参考块以在后续视频帧中对块进行帧间编码。
图3为示出可实施双向预测技术的视频解码器30的示例的方框图。在图3的示例中,视频解码器30包括熵解码单元70、运动补偿单元72、帧内预测单元74、逆量化单元76、逆变换单元78、参考帧存储器82和加法器80。在一些示例中,视频解码器30可执行通常与参照视频编码器20(图2)所描述的编码通道相反。运动补偿单元72可基于从熵解码单元70接收的运动向量来生成预测数据,而帧内预测单元74可基于从熵解码单元70接收的帧内预测模式指示符来生成预测数据。
在解码过程中,视频解码器30从视频编码器20接收相关语法元素和表示已编码视频分片中的视频块的已编码视频比特流。视频解码器30中的熵解码单元70对比特流进行熵解码以生成已量化系数、运动向量或帧内预测模式指示符、其它语法元素。熵解码单元70将运动向量和其它语法元素转发给运动补偿单元72。视频解码器30可以在视频分片级别和/或视频块级别接收语法元素。
当视频分片编码为帧内编码(I)分片时,帧内预测单元74可基于指示的帧内预测模式和当前帧或图片中的先前已解码块的数据来生成当前视频分片中的视频块的预测数据。在视频帧编码为帧间编码分片(即B、P或GPB分片)时,运动补偿单元72基于从熵解码单元 70接收到的运动向量和其它语法元素为当前视频分片中的视频块产生预测块。预测块可由参考图片列表之一内的参考图片之一产生。视频解码器30可基于存储在参考帧存储器82中的参考图片使用默认构建技术来构建参考帧列表,即列表0和列表1。
运动补偿单元72通过解析运动向量和其它语法元素来确定当前视频分片中的视频块的预测信息,并使用该预测信息为正在解码的当前视频块生成预测块。例如,运动补偿单元72 使用接收到的语法元素中的一部分来确定用于对视频分片中的视频块进行编码的预测模式 (例如帧内或帧间预测)、帧间预测分片类型(例如B分片、P分片或GPB分片)、视频分片的一个或多个参考图片列表的构建信息、视频分片中的每个帧间编码视频块的运动向量、视频分片中的每个帧间编码视频块的帧间预测状态以及其它信息,从而对当前视频分片中的视频块进行解码。
运动补偿单元72还可基于内插滤波器执行内插。运动补偿单元72可使用在视频块编码期间视频编码器20所使用的内插滤波器来计算参考块的非整数像素的内插值。在这种情况下,运动补偿单元72可从接收到的语法元素中确定视频编码器20所使用的内插滤波器,并使用该内插滤波器来产生预测块。
可以将对应于深度图的纹理图像的数据存储在参考帧存储器82中。运动估计单元72还可以用于对深度图中的深度块进行帧间预测。
本领域技术人员将认识到,图1的编码系统10适合于实现各种视频编码技术,包括但不限于基于传播距离的滤波、信号隐藏和基于从相邻块获得的滤波器信息的滤波,下文将对此进行更充分的解释。
数字视频通信和存储应用由各种各样的数字设备实现,例如数码相机、蜂窝无线电话、膝上型计算机、广播系统、视频电话会议系统,等等。视频压缩是这些应用中最重要且最具挑战性的任务之一。视频压缩任务复杂,并且受两个矛盾参数的限制:压缩效率和计算复杂度。ITU-TH.264/AVC或ITU-TH.265/HEVC等视频编码标准在这些参数之间进行了权衡。
最先进的视频编码标准主要基于将源图像划分为块。这些块的处理取决于它们的大小、空间位置以及编码器所指定的编码模式。根据预测类型可以将编码模式分成两组:帧内预测模式和帧间预测模式。帧内预测模式使用同一图像的像素来生成参考样本,从而计算正被重构的块的像素的预测值。帧内预测还可以称为空间预测。帧间预测模式设计用于时间预测并且使用上一个或下一个图像(例如相邻块)的参考样本来预测当前图像的块的像素。
由于冗余类型不同,帧内编码的预测过程和帧间编码的预测过程也是不同的。帧内预测通常构建参考样本的一维缓冲器。帧间预测通常使用二维参考像素矩阵的子像素内插。为了改进预测结果,可以针对帧内编码和帧间编码使用附加处理(例如,针对帧内预测对参考样本进行平滑处理,针对帧间预测对参考块进行锐化处理)。
最近采用的ITU-T H.265/HEVC标准(ISO/IEC 23008-2:2013,“信息技术-异构环境中的高效编码和媒体传送:第2部分:高效视频编码(Information technology-Highefficiency coding and media delivery in heterogeneous environments-Part 2:High efficiency video coding)”, 2013年11月)公布了一套最新的视频编码工具,该套工具在编码效率与计算复杂度之间进行了权衡。
类似于ITU-T H.264/AVC视频编码标准,HEVC/H.265视频编码标准规定将源图像划分为块,例如CU。每个CU可以进一步分成更小的CU或PU。可以根据应用于PU像素的处理类型来对PU进行帧内预测或帧间预测。在帧间预测情况下,PU表示使用为PU指定的运动向量通过运动补偿来处理的像素的面积。对于帧内预测,PU指定一组TU的预测模式。TU 可以具有不同的尺寸(例如,4×4、8×8、16×16和32×32像素),并且可以以不同的方式进行处理。对于TU,执行变换编码(即预测误差正在用DT进行变换)并对变换编码进行量化。因此,重建的像素包含能够影响预测准确度的量化噪声和块效应伪影。
为了减少对帧内预测的这种影响,已经对HEVC/H.265采用参考像素滤波。对于帧间预测,使用子像素内插来计算参考像素。在运动补偿情况下的参考像素平滑可以与子像素内插过程的抗混叠滤波组合进行。
已经提出了模式自适应帧内预测平滑技术。平滑滤波取决于所选择的帧内预测模式和在视频比特流中编码的标志。根据针对块定义的帧内预测模式,参考样本可以由滤波器进行平滑或者在不被修改的情况下使用。对于对参考样本进行平滑的情况,平滑滤波器的选择也可以基于帧内预测模式。另外,该选择可以根据从比特流重建的标志的值来执行。
当前的HEVC/H.265标准部分地使用这种技术。具体地,若存在几种帧内模式和块大小的组合,则关闭滤波器平滑。
参考样本自适应滤波器(reference sample adaptive filter,RSAF)已经被认为是适用于 HEVC/H.265标准的参考样本滤波器的扩展。该自适应滤波器在平滑之前划分或分割参考样本以将不同的滤波器应用于不同的分段。另外,数据隐藏过程已用于传送平滑标志。联合开发模型1(Joint Exploration Model 1,JEM1)采用简化版本的参考样本自适应滤波器,JEM1 包含若干使用平滑的其它工具,包括:四抽头帧内内插滤波器、边界预测滤波器和/或多参数帧内预测(multi-parameter intra prediction,MPI),MPI可以由位置相关帧内预测组合(position dependent intra prediction combination,PDPC)来替代。
但是,上述方法遇到问题,包括在编码或解码期间的大量信令工作和视频的过平滑处理。
本文公开了一种根据传播距离来选择滤波器强度的方法,该传播距离是参考样本与正被预测的像素之间的距离。传播距离取决于要预测的块的宽高比(例如,宽度除以高度)和帧内预测模式的方向性,下文将对此进行更充分的解释。该方法适用于平滑滤波器或锐化滤波器的应用等。
图4示出了使用一个或多个参考样本402来预测的块400。参考样本402在本文中也可以称为参考像素或基本单元(base unit,BU)。如图所示,图4中的参考样本402沿着方框400的左边和顶边配置。然而,也可以在预测期间使用来自其它位置(未示出)的参考样本402。块400的宽度(width,W)为四个像素,高度(height,H)为八个像素。然而,方框 400在实际应用中可以具有其它尺寸并且可以具有除矩形之外的形状。
可使用若干帧内预测模式中的其中一种,包括水平模式、垂直模式或对角模式等,来预测块400。为了便于讨论,图4中的块400可以描绘为使用对角预测模式进行预测。对应于针对方框400选择的对角预测模式的预测方向404在图4中用三个箭头表示。
当正在预测块400内的像素406时,确定沿着预测方向404从参考样本402到像素406 的传播距离408。此后,可以使用传播距离408来选择多个滤波器系数中的其中一个。在一项实施例中,相对于正被预测的像素(例如像素406)具有较短传播距离408的参考样本402 (在图4中以斜线框示出)对应于较弱的参考样本滤波器,相对于正被预测的像素的具有较长传播距离408的参考样本402(在图4中以空白框示出)对应于较强的参考样本滤波器。
提供了该过程的一个示例。假定对应于图4中的像素406的传播距离408被确定为四个 (例如,约为四、四舍五入为四等)。使用表1中已有的映射,选择滤波器系数[1,6,1]。
传播距离 0..3 4..12 13..20 21..48 48..64 >64
滤波器系数 [1] [1,6,1] [3,10,3] [1,2,1] [2,3,6,3,2] [2,7,14,7,2]
表1
如表1所示,根据传播距离408,滤波器系数的强度从左至右增强。也就是说,在一项实施例中,滤波器系数的强度与传播距离408成正比。实际上,对于0像素与3像素之间的传播距离,应用相对较弱的滤波器系数[1]。对于21像素和48像素之间的传播距离,应用较强的滤波器系数[1,2,1]。此外,对于大于64像素的传播距离,应用最强的滤波器系数[2,7,14,7,2]。应该认识到,表1中的参数出于讨论目的而提供。实际上,可以在实际应用中使用不同的传播距离408和不同的滤波器系数。
一旦基于传播距离408选择了这些滤波器系数中的其中一个,则使用适当的滤波器(例如平滑滤波器、锐化滤波器等)来预测像素406。在一项实施例中,重复预测过程,直到块 400中的每个像素406已经完成预测。因为每个像素406使用基于该特定像素的传播距离408 的滤波器系数来预测,所以由编码设备执行的编码处理得以改进。可以在编码器(例如视频编码器20)和解码器(例如视频解码器30)二者处执行对像素406应用基于预测距离408的滤波器系数的过程。
图5是用于实施本文所述的滤波器系数选择过程的视频编码设备500。编码设备500可以类似于图1的视频编码器20或视频解码器30。如图所示,编码设备500包括一组滤波器 510和滤波器控制器520。
该组滤波器510可以包括一个或多个滤波器,例如RSAF、用于帧内预测的内插滤波器和/或用于帧内预测的块滤波器。帧内预测的块滤波器可以包括MPI、PDPC和/或边界平滑。这些滤波器可以通过平滑来影响帧内预测的结果。
该组滤波器510可由一个或多个主要参数和一个或多个次要参数配置。例如,该组滤波器510的第一组滤波器可以由主参数配置,并且该组滤波器510的第二组滤波器可以由次要参数配置。主要参数和次要参数可以是以下项中的一个或多个:预测单元的大小、正被预测的块的大小、帧内预测模式、多参数帧内模式索引和/或参考样本滤波标志。在一项实施例中,第一组滤波器和第二组滤波器重叠。
滤波器控制器520用于基于传播距离(例如图4中的传播距离408)来选择或确定滤波器系数。滤波器控制器520用于基于一个或多个主要参数以及该组滤波器510的强度准则来调整一个或多个次要参数。具体而言,滤波器控制器520可以用于部分基于一个或多个第一参数来调整一个或多个次要参数。例如,次要参数的值可以部分基于预定值,例如来自比特流的预定值,并且部分基于主要参数的调整。
此外,滤波器控制器520还可以用于基于该组滤波器510的强度准则来调整一个或多个次要参数。滤波器控制器520还能够基于帧内预测模式和参考样本的传播距离来选择新的一组参数。例如,在表1中,示出了针对不同的传播距离范围而设计的一组不同的系数。包含在表1中的信息既可以存储在编码侧(例如存储在视频编码器20中)也可以存储在解码侧(例如存储在视频解码器30中)。由于存储了信息,因此需要从编码侧和解码侧传输的信息较少。实际上,传播距离范围可以在解码侧单独导出,并且可以从现有表1中查找到对应的系数。
帧内预测过程可以是在编码器侧和/或解码器侧的混合视频编码工具链的一部分。类似地,帧间预测程序可以包括一组滤波器(例如,内插滤波器和预测滤波器),该组滤波器可能导致用作参考的块过度平滑或过度锐化处理,该参考实际上是用于帧间预测的帧内预测块的模拟。
图6示出了滤波器组600(也称为一组滤波器)的实施例。滤波器组600由滤波器控制模块602实施。滤波器控制模块602可以与图5的滤波器控制器520类似。在一项实施例中,滤波器控制模块602用于在不同的帧内预测阶段调整滤波参数,下文将对此进行更充分的解释。
在一项实施例中,该组滤波器600包括参考样本平滑单元604、帧内预测单元606、预测块滤波器单元608和边界平滑单元610。参考样本平滑单元604用于接收一个或多个相邻样本612作为输入。一个或多个相邻样本612可以与图4的参考样本402类似。参考样本平滑单元604用于对相邻样本612进行平滑处理和/或进一步处理以获得一个或多个参考样本614,该一个或多个参考样本614提供给帧内预测单元606作为输入。帧内预测单元606包括内插滤波器616。帧内预测单元606的输出618由预测块滤波器单元608作为输入接收。
预测块滤波器单元608用于计算一个或多个预测块620,该一个或多个预测块620被馈送给边界平滑单元610作为输入。边界平滑单元610生成一个或多个帧内预测块624作为输出622。
在一项实施例中,滤波器控制模块602可以用于读取帧内预测参数626作为主要参数。此外,滤波器控制模块602可以用于基于这些主要参数来导出次要参数。
包括该组滤波器600的视频编码设备(例如视频编码器20、视频解码器30)可用于有选择地使用参考样本滤波器的隐式或显式信令,即仅用于满足特定条件的那些TU。
四叉树分区结果可以用作使用显式或隐式信令的参考样本滤波器选择的指示。具体而言,当PU的大小大于阈值(例如32×32)时,将参考样本滤波器标志设置为零。当PU大小的条件为真时,可以根据PU大小和/或帧内模式条件仅选择“无滤波器”和“应用弱滤波器”选项。
本文还公开了指定在视频编码过程中使用的隐藏条件的方法。隐藏用于在没有向信令引入新的语法元素(例如符号位隐藏)的情况下用信号发送信息,下文将对此进行更充分的解释。解码器(例如视频解码器30)使用隐藏条件来推导隐藏信息的存在。在一项实施例中,在量化变换系数内执行隐藏。
在第一实施例中,当有效量化变换系数的数量小于阈值(例如3个、4个、5个有效系数) 时,触发隐藏条件。在第二实施例中,当最后一个和第一个有效量化变换系数的位置之间的距离小于或等于阈值时(例如在预定义扫描顺序内有3个、4个、5个或6个系数位置),触发隐藏条件。在另一项实施例中,隐藏条件可以是前述第一实施例和第二实施例的组合。
隐藏条件可以用作显式信令标志存在的指示。例如,当有效量化变换系数的数量小于阈值时,禁用位置相关预测组合(position dependent prediction combination,PDPC),而且PDPC 标志未进行编码。在一项实施例中,当最后一个和第一个有效量化变换系数的位置之间的距离小于或等于阈值时,禁用自适应参考样本平滑(adaptive referencesamples smoothing,ARSS) 隐藏或显式信令。
因此,通过评估量化残差信号系数来确定用于生成预测信号的帧内预测工具列表。
本文还公开了一种针对类似于滤波器组510的一组滤波器引入合并模式的方法。不是对该组滤波器的所有参数值进行传输,而是从一个或多个相邻块中获得这些值,下文将对此进行更充分的解释。为了表示已经从一个或多个相邻块获得了这些值,要对合并标志进行设置。
图7示出了使用已经从一个相邻块702中复制的一组滤波器的参数值来预测的块700。如图7所示,已经从块700上方的相邻块702复制了该组滤波器的参数值。在一项实施例中,可以从图7中所示的其它相邻块702中的任何一个或多个复制该组滤波器的参数值。为了表示已经从一个或多个相邻块中获得了这些值,将合并标记设置为二进制值(例如1)。
图8示出了使用已经从一个相邻块802中复制的一组滤波器的参数值来预测的块800。如图8所示,使用若干相邻的块802来导出该组滤波器的参数值。在这种情况下,参数值从属于相邻TU(未示出)的每个相邻基本单元(base unit,BU)804收集。对所收集的参数值进行进一步处理以获得将应用于待预测的块800的参数值。例如,当参数值是二进制值(例如使用二进制标志作为滤波器参数)时,可以根据以下等式使用多数规则:
P=arg max{NP=0,NP=1}
其中,NP=0和NP=1分别表示参数值等于0和1的BU。
图9是在编码器侧(在视频编码器20处)做出基于成本的率失真优化决策的方法900的实施例。方法900适于做出有关前向预测滤波器参数的合并的决定,下文将对此进行更充分的解释。
在步骤902中,定义所选择的帧内预测模式所属的范围。在步骤904中,定义应当用作前向预测滤波器参数的数据源的BU。在步骤906中,计算将用于合并的前向预测滤波器参数的值。在步骤908中,计算合并参数时的速率失真成本,称为JMerge,以及未合并参数时的速率失真成本,称为JNoMerge
在步骤910中,对JMerge和JNoMerge进行比较以确定JMerge是否大于JNoMerge。如果JMerge大于JNoMerge,则沿着“是”分支前进到步骤912。在步骤912中,将合并标志值设置为第一二进制值(例如0)以指示比较结果。相反,如果JMerge不大于JNoMerge,则沿着“否”分支前进到步骤914。在步骤914中,将合并标志值设置为第二二进制值(例如1)以指示比较结果。此后,可以执行附加视频编码步骤或过程。
图10是在解码器侧(例如在视频解码器30处)使用合并的前向预测滤波器参数的方法 1000的实施例。在解码器侧执行的方法1000类似于在编码器侧执行的方法900,下文将对此进行更充分的解释。
在步骤1002中,检查称为Fmerge的合并标志的设置。如果尚未设置合并标志(例如Fmerge=0),则沿着“否”分支并且方法1000结束。如果已经设置了合并标志(例如Fmerge=1),那么沿着“是”分支前进到步骤1004。在步骤1004中,定义所选择的帧内预测模式所属的范围。在步骤1006中,定义应当用作前向预测滤波器参数的源的BU。在步骤1008中,计算将用于合并的前向预测滤波器参数的值。在步骤1010中,将计算得到的前向预测参数值应用于待预测的当前块。此后,可以执行附加视频解码步骤或过程。
在一项实施例中,可基于所选择的帧内预测模式与用于导出该组滤波器的参数值的相邻 BU的位置之间的依赖性来合并前向预测滤波器参数。图11和图12分别示出了用于在垂直或接近垂直以及水平或接近水平的定向模式中合并前向预测滤波器参数的机制。
图11示出了根据一项实施例提供的使用从相邻块1102中的BU 1104所收集的参数值来预测的块1100。使用角度范围β来确定正用于预测的定向模式,该定向模式在图11中是垂直的或接近垂直的。这里,顶部相邻块1102内的两个中间BU 1104属于角度范围β(如虚线所示)。因此,在预测块1100(或其中的像素)时仅使用角度范围β内的那两个中间BU 1104。在一项实施例中,当预测当前块1100时,合并来自两个中间BU 1104的滤波器参数。
图12示出了根据一项实施例提供的使用从相邻块1202中的BU 1204所收集的参数值来预测的块1200。类似于图11,不只是使用任何BU 1204进行预测。而是,仅使用某些BU1204。如图12所示,使用角度范围β来确定正用于预测的定向模式,该定向模式在图12中是垂直的或接近垂直的。这里,左部相邻块1202内的两个中间BU 1204属于角度范围β(如虚线所示)。因此,在预测块1200(或其中的像素)时仅使用角度范围β内的那两个中间BU 1204。在一项实施例中,当预测当前块1200时,合并来自两个中间BU 1204的滤波器参数。
图13示出了根据一项实施例提供的使用从相邻块(未示出)中的BU 1302所收集的参数值来预测的块1300。具体而言,图13示出了平面帧内预测模式的参考样本滤波处理中的变化。
平面内预测使用两对相对侧面(例如一对是从右侧与左侧形成的,另一对是从顶侧与底侧形成的)来预测待预测块(例如块1300)内的值。来自左侧1304和顶侧1306的参考样本分别是重构的像素值。通过复制右上(top-right,TR)参考样本来生成右侧N。通过复制左下(bottom-left,BL)参考样本来生成右侧M。在一项实施例中,使用ARSS来仅获得参考样本TR的一个滤波值以修改右侧N上的值和参考样本BL的仅一个滤波值,从而修改底侧 M上的值。
在一项实施例中,分别通过组合TR参考样本的滤波值或未滤波值以及通过组合BL参考样本的滤波值或未滤波值来生成右侧和底侧像素(以阴影框示出)。根据生成的样本在底侧M 内或在右侧N内的位置来执行对滤波参考值或未滤波参考值的选择。根据底侧M的预定义值 m和右侧N的预定义值n将底部M和右侧N中的每一个划分成两个子集。在一项实施例中,基于块宽度和高度等选择预定义值m、n。将未滤波参考样本复制到与右侧和底侧有关的子集 n和m中。将未滤波参考样本分别复制到与右侧集和底侧集有关的子集N-n和M-m中。
出于说明目的,平面帧内预测模式所使用的滤波参考样本和未滤波参考样本已被赋予不同的阴影图案。同样地,所使用的未滤波参考样本也已经以没有阴影的图案示出。
在一项实施例中,应用于参考样本的滤波器根据参考样本TR的块宽度和参考样本BL的块高度来选择。在一项实施例中,应用于参考样本的滤波器根据块高宽比进行选择,高宽比是块1300水平定向时块宽度与块高度的比率以及块1300垂直定向时的块高度与块宽度的比率。
图14是由图3的视频解码器30等解码设备实施译码的方法1400的实施例。方法1400 在需要更有效的视频编码时执行。在步骤1402中,确定当前块的预测方向。预测方向可以是水平的、接近水平的、垂直的、接近垂直的、对角的,等等。在步骤1404中,确定沿着预测方向的传播距离。在一项实施例中,传播距离是当前块中的待预测像素与紧邻当前块的参考样本之间测量得到的距离。
在步骤1406中,基于传播距离选择多个滤波器系数中的一个。在一项实施例中,使用上述表1进行选择。在步骤1408中,使用滤波器和所选择的滤波器系数来预测当前块中的像素。在一项实施例中,滤波器是平滑滤波器或锐化滤波器。在步骤1410中,在电子设备的显示器上显示包括所预测的像素的图像。
图15是由图2的视频编码器20等编码设备实施的编码的方法1500的实施例。方法1500 在需要更有效的视频编码时执行。在步骤1502中,确定当前块的预测方向。预测方向可以是水平的、接近水平的、垂直的、接近垂直的、对角的,等等。在步骤1504中,确定沿着预测方向的传播距离。在一项实施例中,传播距离是当前块中的待预测像素与紧邻当前块的参考样本之间测量得到的距离。
在步骤1506中,基于传播距离选择多个滤波器系数中的一个。在一项实施例中,使用上述表1进行选择。在步骤1508中,使用滤波器和所选择的滤波器系数来预测当前块中的像素。在一项实施例中,滤波器是平滑滤波器或锐化滤波器。在步骤1510中,向用于解码比特流的解码设备(例如视频解码器30)传输包含像素的图像的比特流。
图16为根据本发明实施例的编码设备1600的示意图。编码设备1600适合于实现如本文所述的公开实施例。编码设备1600包括:入端口1610和接收器单元(Rx)1620,用于接收数据;处理器、逻辑单元或中央处理器(central processing unit,CPU))1630,用于处理数据;发射器单元(Tx)1640和出端口1650,用于传输数据;以及存储器1660,用于存储数据。编码设备1600还可以包括耦合到入端口1610、接收器单元1620、发射器单元1640和出端口1650的光电(optical-to-electrical,OE)组件和电光(electrical-to-optical,EO)组件,用于控制光信号或电信号的出入。
处理器1630以硬件和软件形式来实施。处理器1630可实施为一个或多个CPU芯片、核 (例如多核处理器)、现场可编程门阵列(field-programmable gate array,FPGA)、专用集成电路(application specific integrated circuit,ASIC)和数字信号处理器(digital signal processor, DSP)。处理器1630与入端口1610、接收器单元1620、发射器单元1640、出端口1650和存储器1660进行通信。处理器1630包括参考样本处理(referencessample processing,RSP)模块1670。RSP模块1670实施上述公开的实施例。例如,RSP模块1670实施、处理、准备或提供各种编码操作。因此,包含RSP模块1670对编码设备1600的功能提供了实质性改进,并且实现了编码设备1600到不同状态的转换。或者,RSP模块1670以存储在存储器1660 中并由处理器1630执行的指令来实施。
存储器1660包括一个或多个磁盘、磁带驱动器和固态驱动器,并且可以用作溢出数据存储设备,以在选择程序用于执行时存储这些程序,并且存储在程序执行过程中所读取的指令和数据。存储器1660可以是易失性和/或非易失性,且可以是只读存储器(read-only memory, ROM)、随机存取存储器(random-access memory,RAM)、三态内容寻址存储器(ternary content-addressable memory,TCAM)和/或静态随机存取存储器(staticrandom-access memory, SRAM)。
提供了一种由解码装置执行译码的方法。该方法包括:解码装置确定当前块的预测方向;解码装置确定沿预测方向的传播距离,传播距离是当前块中的待预测像素与紧邻当前块的参考样本之间测量得到的距离;解码装置基于传播距离选择多个滤波器系数中的一个;解码装置使用滤波器和所选择的多个滤波器系数中的一个来预测当前块中的像素;以及解码器装置显示包括所预测的像素的图像。
提供了一种由编码装置执行编码的方法。该方法包括:编码装置确定当前块的预测方向;编码装置确定沿预测方向的传播距离,传播距离是当前块中的待预测像素与紧邻当前块的参考样本之间测量得到的距离;编码装置基于传播距离选择多个滤波器系数中的一个;编码装置使用滤波器和所选择的多个滤波器系数中的一个来预测当前块中的像素;以及编码装置向用于解码比特流的解码设备传输包括像素的图像的比特流。
一种解码设备,包括:接收装置,用于从编码设备接收比特流,比特流包含图像;耦合到接收装置的处理装置,该处理装置用于:从图像中选择当前块;确定当前块的预测方向;确定沿着预测方向的传播距离,传播距离是当前块中的待预测像素与紧邻当前块的参考样本之间测量得到的距离;基于传播距离选择多个滤波器系数中的一个;使用滤波器和所选择的多个滤波器系数中的一个来预测当前块中的像素;以及可耦合到处理装置的显示装置,该显示装置用于显示包括所预测的像素的图像。
虽然本发明中已提供若干实施例,但应理解,在不脱离本发明的精神或范围的情况下,本发明所公开的系统和方法可以以许多其它特定形式来体现。本发明的实例应被视为说明性而非限制性的,且本发明并不限于本文中所给出的细节。例如,各种元件或组件可以在另一系统中组合或整合,或者某些特征可以省略或不实施。
此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其它系统、模块、技术或方法进行组合或集成。展示或论述为彼此耦合或直接耦合或通信的其它项也可以采用电方式、机械方式或其它方式经由某一接口、设备或中间组件间接地耦合或通信。其它变化、替代和改变的示例可以由本领域的技术人员在不脱离本文精神和所公开的范围的情况下确定。

Claims (17)

1.一种由解码设备执行译码的方法,其特征在于,包括:
所述解码设备确定当前块的预测方向;
所述解码设备确定沿着所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;
所述解码设备基于所述传播距离选择多个滤波器系数中的一个;所述被选择的滤波器的强度是根据所述确定的传播距离选择的;
所述解码设备使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及
在电子设备的显示器上显示包括所预测的所述像素的图像。
2.根据权利要求1所述的方法,其特征在于,所述多个滤波器系数包含由弱到强的一系列滤波器系数。
3.根据权利要求2所述的方法,其特征在于,所述一系列滤波器系数包含与较短传播距离的对应的较弱滤波器系数和与较长传播距离对应的较强滤波器系数。
4.根据权利要求1所述的方法,其特征在于,所述预测方向是水平的或垂直的。
5.根据权利要求1所述的方法,其特征在于,所述预测方向是对角的。
6.根据权利要求1所述的方法,其特征在于,所述滤波器是平滑滤波器。
7.根据权利要求1所述的方法,其特征在于,所述滤波器是锐化滤波器。
8.根据权利要求1所述的方法,其特征在于,还包括在所述解码设备的存储器中存储将一组传播距离映射到所述多个滤波器系数的表。
9.一种由编码设备执行编码的方法,其特征在于,包括:
所述编码设备确定当前块的预测方向;
所述编码设备确定沿着所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;
所述编码设备基于所述传播距离选择多个滤波器系数中的一个;所述被选择的滤波器的强度是根据所述确定的传播距离选择的;
所述编码设备使用滤波器和所选的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及
所述编码设备向用于解码比特流的解码设备传输包含图像的所述比特流,所述图像包括所述像素。
10.根据权利要求9所述的方法,其特征在于,所述多个滤波器系数包含由弱到强的一系列滤波器系数。
11.根据权利要求10所述的方法,其特征在于,所述一系列滤波器系数包含与较短传播距离的对应的较弱滤波器系数和与较长传播距离对应的较强滤波器系数。
12.根据权利要求9所述的方法,其特征在于,所述预测方向是对角的。
13.根据权利要求9所述的方法,其特征在于,所述滤波器是平滑滤波器。
14.根据权利要求9所述的方法,其特征在于,所述滤波器是锐化滤波器。
15.一种解码设备,其特征在于,包括:
接收器,用于从编码设备接收比特流,所述比特流包含图像;
耦合到所述接收器的处理器,所述处理器用于:
从所述图像内选择当前块;
确定所述当前块的预测方向;
确定沿着所述预测方向的传播距离,所述传播距离是所述当前块中的待预测像素与紧邻所述当前块的参考样本之间测量得到的距离;
基于所述传播距离选择多个滤波器系数中的一个;所述被选择的滤波器的强度是根据所述确定的传播距离选择的;
使用滤波器和所选择的所述多个滤波器系数中的所述一个来预测所述当前块中的所述像素;以及
可耦合到所述处理器的显示器,所述显示器用于显示包括所预测的所述像素的图像。
16.根据权利要求15所述的解码设备,其特征在于,所述一系列滤波器系数包含与较短传播距离的对应的较弱滤波器系数和与较长传播距离对应的较强滤波器系数。
17.根据权利要求15所述的解码设备,其特征在于,还包括耦合到所述处理器的存储器,所述存储器用于存储将一系列传播距离映射到所述多个滤波器系数的表。
CN201880007962.6A 2017-04-04 2018-04-04 编码方法、解码方法和解码设备 Active CN110199522B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762481525P 2017-04-04 2017-04-04
US62/481,525 2017-04-04
US15/943,853 US10728548B2 (en) 2017-04-04 2018-04-03 Processing reference samples used for intra-prediction of a picture block
US15/943,853 2018-04-03
PCT/CN2018/081808 WO2018184542A1 (en) 2017-04-04 2018-04-04 Processing reference samples used for intra-prediction of a picture block

Publications (2)

Publication Number Publication Date
CN110199522A CN110199522A (zh) 2019-09-03
CN110199522B true CN110199522B (zh) 2021-07-09

Family

ID=63671145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880007962.6A Active CN110199522B (zh) 2017-04-04 2018-04-04 编码方法、解码方法和解码设备

Country Status (7)

Country Link
US (1) US10728548B2 (zh)
EP (1) EP3566443A4 (zh)
JP (1) JP2020509714A (zh)
KR (1) KR20190110599A (zh)
CN (1) CN110199522B (zh)
TW (1) TWI678918B (zh)
WO (1) WO2018184542A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019041165A (ja) * 2017-08-23 2019-03-14 富士通株式会社 画像符号化装置、画像復号装置、画像処理方法、及び画像処理プログラム
AU2019269346B2 (en) * 2018-05-14 2023-07-27 Interdigital Vc Holdings, Inc. Block shape adaptive intra prediction directions for quadtree-binary tree
DK3707898T3 (da) 2018-07-13 2021-05-03 Ericsson Telefon Ab L M Valg af transformation i en videokoder og/eller videoafkoder
CN112740276A (zh) * 2018-09-23 2021-04-30 华为技术有限公司 用于帧内参考样本插值滤波器切换的方法和装置
US20200213595A1 (en) * 2018-12-31 2020-07-02 Comcast Cable Communications, Llc Methods, Systems, And Apparatuses For Adaptive Processing Of Non-Rectangular Regions Within Coding Units
AU2020301374A1 (en) * 2019-06-24 2022-01-27 Huawei Technologies Co., Ltd. Sample distance calculation for geometric partition mode
EP4018651A4 (en) * 2019-09-02 2023-02-22 Huawei Technologies Co., Ltd. ENCODER, DECODER AND RELATED METHODS OF FILTER MODIFICATION IN A GENERAL INTRA PREDICTION PROCESS
WO2022037583A1 (en) * 2020-08-21 2022-02-24 Alibaba Group Holding Limited Systems and methods for intra prediction smoothing filter
CN113259669B (zh) * 2021-03-25 2023-07-07 浙江大华技术股份有限公司 编码方法、装置、电子设备及计算机可读存储介质
EP4315854A1 (en) * 2021-03-31 2024-02-07 Telefonaktiebolaget LM Ericsson (publ) Smooth surface prediction

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2006320064B2 (en) * 2005-11-30 2010-09-09 Kabushiki Kaisha Toshiba Image encoding/image decoding method and image encoding/image decoding apparatus
WO2008084378A2 (en) 2007-01-09 2008-07-17 Nokia Corporation Adaptive interpolation filters for video coding
WO2008134482A1 (en) 2007-04-26 2008-11-06 Polycom, Inc. De-blocking filter arrangements
JP5052301B2 (ja) * 2007-11-21 2012-10-17 オリンパス株式会社 画像処理装置、画像処理方法
KR101460608B1 (ko) 2008-03-04 2014-11-14 삼성전자주식회사 필터링된 예측 블록을 이용한 영상 부호화, 복호화 방법 및장치
KR101682147B1 (ko) 2010-04-05 2016-12-05 삼성전자주식회사 변환 및 역변환에 기초한 보간 방법 및 장치
EP2375747B1 (en) 2010-04-12 2019-03-13 Sun Patent Trust Filter positioning and selection
US8538177B2 (en) 2010-07-30 2013-09-17 Microsoft Corporation Line and pixel based methods for intra frame coding
US9819966B2 (en) 2010-09-01 2017-11-14 Qualcomm Incorporated Filter description signaling for multi-filter adaptive filtering
WO2012071417A1 (en) 2010-11-24 2012-05-31 Thomson Licensing Adaptive loop filtering
US9258573B2 (en) 2010-12-07 2016-02-09 Panasonic Intellectual Property Corporation Of America Pixel adaptive intra smoothing
US10142630B2 (en) 2010-12-10 2018-11-27 Texas Instruments Incorporated Mode adaptive intra prediction smoothing in video coding
CN105959706B (zh) 2011-01-12 2021-01-08 三菱电机株式会社 图像编码装置和方法、以及图像译码装置和方法
US20120183041A1 (en) 2011-01-14 2012-07-19 Sony Corporation Interpolation filter for intra prediction of hevc
US20120230393A1 (en) 2011-03-08 2012-09-13 Sue Mon Thet Naing Methods and apparatuses for encoding and decoding video using adaptive interpolation filter length
CN106851270B (zh) 2011-04-25 2020-08-28 Lg电子株式会社 执行帧内预测的编码设备和解码设备
KR20120140181A (ko) * 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
US9179148B2 (en) * 2011-06-30 2015-11-03 Futurewei Technologies, Inc. Simplified bilateral intra smoothing filter
US9357235B2 (en) 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
US9282344B2 (en) 2011-11-04 2016-03-08 Qualcomm Incorporated Secondary boundary filtering for video coding
CN107071435A (zh) 2011-11-08 2017-08-18 株式会社Kt 对视频信号进行解码的方法
WO2014007718A1 (en) 2012-07-06 2014-01-09 Telefonaktiebolaget L M Ericsson (Publ) Restricted intra deblocking filtering for video coding
US10182242B2 (en) * 2013-12-27 2019-01-15 Mediatek Inc. Method and apparatus for palette coding with cross block prediction
EP3111645A1 (en) 2014-02-26 2017-01-04 Dolby Laboratories Licensing Corporation Luminance based coding tools for video compression
WO2015178796A1 (en) 2014-05-23 2015-11-26 Huawei Technologies Co., Ltd. Method and apparatus for pre-prediction filtering for use in block-prediction techniques
US10425648B2 (en) * 2015-09-29 2019-09-24 Qualcomm Incorporated Video intra-prediction using position-dependent prediction combination for video coding
EP3367688A4 (en) * 2015-10-21 2018-10-24 Sharp Kabushiki Kaisha Predictive image generation device, image decoding device, and image encoding device
MY201173A (en) 2015-11-17 2024-02-08 Huawei Tech Co Ltd Method and apparatus of adaptive filtering of samples for video coding
EP3335422B1 (en) 2015-12-23 2021-12-01 Huawei Technologies Co., Ltd. Method and apparatus for transform coding with block-level transform selection and implicit signaling within hierarchical partitioning
CN117255194A (zh) * 2016-09-30 2023-12-19 罗斯德尔动力有限责任公司 图像处理方法及其装置

Also Published As

Publication number Publication date
TWI678918B (zh) 2019-12-01
US20180288413A1 (en) 2018-10-04
WO2018184542A1 (en) 2018-10-11
EP3566443A1 (en) 2019-11-13
JP2020509714A (ja) 2020-03-26
US10728548B2 (en) 2020-07-28
EP3566443A4 (en) 2020-01-15
CN110199522A (zh) 2019-09-03
KR20190110599A (ko) 2019-09-30
TW201842776A (zh) 2018-12-01

Similar Documents

Publication Publication Date Title
CN110199522B (zh) 编码方法、解码方法和解码设备
US10477237B2 (en) Decoder side motion vector refinement in video coding
CN110622508B (zh) 视频压缩中的双向预测方法及装置
CN110870311B (zh) 视频压缩中的编解码方法与装置
KR102483942B1 (ko) 비디오 인코더, 비디오 디코더 및 대응하는 인코딩 및 디코딩 방법
US10477232B2 (en) Search region determination for intra block copy in video coding
US10412419B2 (en) Adaptive filtering in video coding
KR20170123632A (ko) 비디오 인코딩을 위한 적응적 모드 체킹 순서
KR20190089890A (ko) 비디오 코딩에서의 양방향 필터 사용의 표시
US20190110052A1 (en) Bidirectional intra prediction
AU2023202658B2 (en) Boundary block partitioning in video coding
JP7279189B2 (ja) ビデオコーディングのための変換ユニット区分方法
WO2019072210A1 (en) RESTRICTION ON SUB-BLOCK SIZE DEDUCTION FOR AFFINE INTERPREDITION

Legal Events

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