CN104041045A - 用于视频译码的二次边界滤波 - Google Patents
用于视频译码的二次边界滤波 Download PDFInfo
- Publication number
- CN104041045A CN104041045A CN201280053654.XA CN201280053654A CN104041045A CN 104041045 A CN104041045 A CN 104041045A CN 201280053654 A CN201280053654 A CN 201280053654A CN 104041045 A CN104041045 A CN 104041045A
- Authority
- CN
- China
- Prior art keywords
- piece
- border
- value
- filtering
- predicted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在一个实例中,一种视频译码装置经配置以:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。所述视频译码装置可基于拉普拉斯值或梯度差值与阈值的比较来确定是否对所述所预测块进行滤波。是否对所述所预测块进行滤波的所述确定可至少部分地基于边界关系,例如一个边界与另一边界或者边界与所述所预测块的像素值的关系。
Description
本申请案主张2011年11月4日申请的第61/556,038号美国临时申请案的权益,所述申请案的整个内容特此以引用的方式并入本文中。
技术领域
本发明涉及视频译码,且更明确地说,涉及视频数据的帧内预测译码。
背景技术
数字视频能力可并入到较宽范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数字相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置等。数字视频装置实施视频压缩技术,例如由MPEG-2、MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分高级视频译码(AVC)界定的标准和所述标准的扩展部分中所描述的那些视频压缩技术,以更高效地发射和接收数字视频信息。
视频压缩技术执行空间预测和/或时间预测以减少或去除视频序列中固有的冗余。对于基于块的视频译码,可将一视频帧或片分区成若干块。可进一步分区每一块。使用关于相邻块的空间预测来编码经帧内译码(I)帧或片中的块。经帧间译码(P或B)帧或片中的块可相对于同一帧或片中的相邻块使用空间预测,或相对于其它参考帧使用时间预测。
发明内容
一般来说,本发明描述用于确定在视频数据的帧内预测译码期间是否执行二次边界滤波的技术。是否执行二次边界滤波的决策可基于数学边界关系,例如当前块的边界之间或当前块的边界与当前块的像素值之间的关系。在一些实例中,数学边界关系可对应于拉普拉斯(Laplacian)值或梯度差。
在一个实例中,一种方法包含:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;以及响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
在另一实例中,一种装置包含视频译码器,其经配置以:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
在另一实例中,一种装置包含:用于使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块的装置;用于确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波的装置;以及用于响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波的装置。
在另一实例中,一种计算机可读存储媒体上存储有指令,所述指令在被执行时致使处理器:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
在附图及下文描述中陈述一个或一个以上实例的细节。将从描述和图式且从所附权利要求书明白其它特征、目标和优点。
附图说明
图1是说明可利用用于确定是否执行二次边界滤波的技术的实例视频编码和解码系统的框图。
图2是说明可实施用于确定是否执行二次边界滤波的技术的视频编码器的实例的框图。
图3是说明可实施用于确定是否执行二次边界滤波的技术的视频解码器的实例的框图。
图4是说明HEVC中的各种帧内预测模式方向的概念图。
图5A和5B是说明基于拉普拉斯计算参考边界样本之间的边界关系的概念图。
图6是说明用于编码当前块的实例方法的流程图。
图7是说明用于解码当前视频数据块的实例方法的流程图。
图8是说明根据本发明的技术的用于确定是否执行二次边界滤波的实例方法的流程图。
具体实施方式
一般来说,本发明提供与在帧内预测译码期间处理像素有关的技术。明确地说,本发明描述用于在视频数据块的帧内预测译码期间启用或停用(完全或部分地)二次边界滤波的技术。还可将二次边界滤波描述为使用二次边界的数据对所预测块进行滤波,所述所预测块是使用一次边界的数据来预测的。就是说,对块进行帧内预测可包含:使用一次边界的数据来预测所述块;确定是否使用二次边界对所述块进行滤波;以及接着响应于确定对所述块进行滤波,使用二次边界的数据对所预测块进行滤波。
二次边界滤波可包含将多种滤波器中的任一者应用于二次边界处的像素的值以及预测单元中的像素的值,以产生预测单元中的像素的经修改值。二次边界滤波可通常包含:使用二次边界的一个或一个以上值来计算所预测块的一个或一个以上像素的偏移值;以及将所述偏移值应用于相应像素。
边界可对应于左侧边界或上方边界(即,顶侧边界)。可通过各种帧内预测模式产生预测单元,例如定向帧内预测模式和非定向帧内预测模式。非定向帧内预测模式可包含(例如)DC模式和平面模式。如本发明中所描述,定向帧内预测模式可包含相对水平的帧内预测模式、相对垂直的帧内预测模式,以及相对对角的帧内预测模式。相对水平的帧内预测模式用以使用左侧边界的数据产生所预测块,而相对垂直的帧内预测模式用以使用顶侧边界的数据产生所预测块。
因此,如上文所述,当使用相对水平的帧内预测模式产生所预测块时,可将一次边界视为左侧边界,而当使用相对垂直的帧内预测模式产生所预测块时,可将一次边界视为顶侧边界。当使用相对水平的帧内预测模式产生所预测块时,可将二次边界视为顶侧边界,而当使用相对垂直的帧内预测模式产生所预测块时,可将二次边界视为左侧边界。
视频块可包含译码单元(CU)、预测单元(PU)以及变换单元(TU)。块边界可出现在CU、PU以及TU之间。就是说,块边界可对应于两个相邻块(例如,相邻CU、PU或TU)之间的共用边缘。CU通常指代包含一个或一个以上PU和一个或一个以上TU的视频数据块。PU通常对应于所预测数据块,不管是通过帧内预测还是帧间预测,而TU对应于残余数据块。残余数据通常对应于原始、未经译码视频数据与所预测视频数据之间的逐像素差,即对应PU中的像素的值。HEVC工作草案版本4(WD4)为亮度分量指定以下帧内预测模式:平面、DC以及至多达33种定向模式,取决于帧内PU大小。布罗斯(Bross)等人的WD4:高效视频译码工作草案4(ITU-T SG16WP3和ISO/IECJTC1/SC29/WG11的视频译码联合协作团队(JCT-VC),第6次会议,意大利都灵(Torino),2011年7月14到22日)中描述HEVC WD4。模式相关帧内平滑(MDIS)方法包含取决于模式和PU大小,在帧内预测之前对参考边界样本进行低通滤波。DC预测滤波方法和简化在经DC预测的PU的边界上应用滤波。
用于处理经帧内预测的块(即,经帧内预测的PU,在本文中也称为“经预测块”)之间的边界附近的像素的一些技术包含滤波、基于梯度的预测以及双向预测。在基于梯度的预测中,取决于水平或垂直预测,可计算两个参考边界样本之间的差(在一些情况下,可能需要内插)、对其进行加权,并将其与沿帧内PU边界的至少一个列或行相加。在双向预测中,可使用所述方向的两端上的参考样本(即,像素)(在一些情况下,可能需要内插),且可对二次边界上的参考样本进行加权,并将其与所预测的帧内PU样本相加。换句话说,在产生所预测块之后,例如使用一次边界的数据,视频译码器可应用滤波器,其以数学方式将所预测块的数据(例如,像素值)与二次边界的值进行组合,以修改所预测块的数据。
在一些实例中,可将两个参考样本之间的经加权梯度与沿垂直和水平预测模式的帧内PU边界的至少一个列或行相加。在一些实例中,取决于帧内预测方向,可在根据平面预测模式产生的PU的边界上应用滤波器,且可将二分接头滤波器应用于二次边界。在一些实例中,可依据帧内预测方向在二次边界上应用对角二分接头滤波器,而不一定在根据平面预测模式产生的PU的边界上应用第一滤波器。
视频译码方法的评估通常包含本杰特高增量位速率(Biontegaard Delta bitrate,BD速率)的减小的评估。此评估包含位速率(即,用以表示视频数据的位的数目)与失真(即,可从经译码视频数据再现的数据与原始视频数据之间的差)的比较。一般来说,减小BD速率的技术反映有利视频译码技术。上文所论述的用于边界滤波的方法减小一些视频序列的BD速率,但在一些情况下,二次边界滤波引入不利的BD速率损失。本发明提供用于针对引入BD速率损失的情况免于应用二次边界滤波的技术。
更明确地说,本发明提供用于检测导致二次边界滤波的BD速率损失的情况的技术。可将这些技术描述为用于二次边界滤波的保护逻辑,因为这些技术可确定是启用还是停用(完全或部分地)二次边界滤波。如果检测是肯定的,那么可部分地或完全停用二次边界滤波,以便改进BD速率性能。举例来说,对于包含具有高对比度且含有频繁转变的文本区的序列,二次边界滤波将无关样本从参考边界传播到帧内PU中。
本发明的技术包含计算参考边界的样本之间或参考边界样本与帧内PU样本(即,所预测块的像素值)之间的数学关系。这些数学关系可基于例如拉普拉斯或梯度差的计算。可将来自计算这些关系的结果与阈值进行比较,以便在应用或停用(部分地或完全地)二次边界滤波之间进行决定。所述阈值可为在编码/解码时计算或用信号通知的预定常数(潜在地取决于例如量化参数等参数)。所述数学关系可由编码器和解码器两者或仅由编码器计算,在此情况下,编码器可用信号通知解码器是否应应用二次边界滤波,或应应用哪一部分。
图1是说明可利用用于确定是否执行二次边界滤波的技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,其经由计算机可读媒体16将经编码视频提供给目的地装置14。源装置12和目的地装置14可包括各种各样装置中的任一者。本发明的技术可适用于空中电视广播、有线电视发射、卫星电视发射、因特网视频发射、经编码到存储媒体上的经编码的数字视频,或其它情况。因此,计算机可读媒体16可包括适合发射经编码视频数据的无线或有线媒体的任何组合,或例如光盘、硬盘驱动器等计算机可读存储媒体。
在图1的实例中,源装置12包含视频源18、视频编码器20和输出接口22。目的地装置14包含输入接口28、视频解码器30和显示装置32。根据本发明,源装置12的视频编码器20可经配置以应用用于确定是否执行二次边界滤波的技术。在其它实例中,源装置和目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如外部相机)接收视频数据。同样地,目的地装置14可与外部显示装置介接,而不是包含集成显示装置。
图1所说明的系统10仅为一个实例。用于确定是否执行二次边界滤波的技术可由任何数字视频编码和/或解码装置执行。尽管通常本发明的技术由视频编码装置执行,但所述技术还可由视频编码器/解码器(通常称为“CODEC”)执行。此外,本发明的技术还可由视频预处理器执行。源装置12及目的地装置14仅为此些译码装置的实例,其中源装置12产生用于发射到目的地装置14的经译码视频数据。在一些实例中,装置12、14可以大体上对称的方式操作,使得装置12、14中的每一者包含视频编码和解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频发射,例如用于视频流式传输、视频重放、视频广播或视频电话。
源装置12的视频源18可包含视频捕获装置,例如视频相机、含有先前捕获的视频的视频档案,和/或从视频内容提供者馈送的视频。作为另一替代方案,视频源18可产生基于计算机图形的数据作为源视频,或直播视频(live video)、存档视频与计算机产生的视频的组合。在一些情况下,如果视频源18为视频相机,那么源装置12和目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提到,本发明中所描述的技术一般可适用于视频译码,且可应用于无线和/或有线应用。在每一情况下,可由视频编码器20来编码所捕获的、所预先捕获的或计算机产生的视频。经编码的视频信息可接着由输出接口22输出到计算机可读媒体16上。
计算机可读媒体16可包含瞬时媒体,例如无线广播或有线网络传输,或存储媒体(即,非暂时性存储媒体),例如硬盘、快闪驱动器、压缩光盘、数字视频光盘、蓝光光盘,或其它计算机可读媒体。在一些实例中,网络服务器(未图示)可从源装置12接收经编码视频数据,且例如经由网络传输将经编码视频数据提供给目的地装置14。类似地,媒体生产设施(例如,光盘冲压设施)的计算装置可从源装置12接收经编码视频数据,且产生含有所述经编码视频数据的光盘。因此,在各种实例中,可将计算机可读媒体16理解为包含各种形式的一个或一个以上计算机可读媒体。
目的地装置14的输入接口28从计算机可读媒体16接收信息。计算机可读媒体16的信息可包含由视频编码器20界定的语法信息,其还可由视频解码器30使用,所述语法信息包含描述块和其它经译码单元(例如,GOP)的特性和/或处理的语法元素。显示装置32向用户显示经解码的视频数据,且可包括多种显示装置中的任一者,例如阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
在图1的实例中,计算机可读媒体16可包括任何无线或有线通信媒体,例如射频(RF)频谱或一个或一个以上物理传输线、或无线和有线媒体的任一组合。计算机可读媒体16可形成例如局域网、广域网或例如因特网等全局网络的基于包的网络的部分。计算机可读媒体16一般表示用于将视频数据从源装置12发射到目的地装置14的任何合适的通信媒体或不同通信媒体的集合,包含有线或无线媒体的任何合适组合。计算机可读媒体16可包含可用于促进从源装置12到目的地装置14的通信的路由器、交换器、基站或任何其它设备。
视频编码器20和视频解码器30可根据视频压缩标准来操作,例如ITU-T H.264标准,或者称为MPEG4,部分10,高级视频译码(AVC)。然而,本发明的技术不限于任何特定译码标准。其它实例包含MPEG-2和ITU-T H.263。尽管图1中未展示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当的MUX-DEMUX单元或其它硬件及软件,以处置对共同数据流或单独数据流中的音频与视频两者的编码。如果适用,MUX-DEMUX单元可符合ITU H.223多路复用器协议或例如用户数据报协议(UDP)等其它协议。
ITU-T H.264/MPEG-4(AVC)标准是由ITU-T视频译码专家组(Video Coding ExpertsGroup,VCEG)连同ISO/IEC动画专家组(MPEG)制定以作为被称为联合视频小组(JointVideo Team,JVT)的集体伙伴关系的产品。在一些方面中,本发明中所描述的技术可应用于通常符合H.264标准的装置。ITU-T研究组在2005年3月在ITU-T推荐H.264“用于通用视听服务的高级视频译码(Advanced Video Coding for generic audiovisualservices)”中描述了H.264标准,其在本文中可被称作H.264标准或H.264规范或H.264/AVC标准或规范。联合视频小组(JVT)继续从事于H.264/MPEG-4AVC的扩展。
视频编码器20和视频解码器30各自可实施为多种合适编码器电路中的任一者,例如一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。视频编码器20和视频解码器30中的每一者可包含于一个或一个以上编码器或解码器中,视频编码器20和视频解码器30中的任一者可作为组合式编码器/解码器(CODEC)的一部分而集成于相应相机、计算机、移动装置、订户装置、广播装置、机顶盒、服务器等中。
视频序列通常包含一系列视频帧。图片组(GOP)通常包括一系列一个或一个以上视频帧。GOP可在GOP的标头、GOP的一个或一个以上帧的标头或其它地方中包含语法数据,其描述包含于GOP中的帧的数目。每一帧可包含帧语法数据,其描述相应帧的编码模式。视频编码器20通常对个别视频帧内的视频块进行操作以便对视频数据进行编码。一视频块可对应于一块或一块的一分区。所述视频块可具有固定的或变化的大小,且可根据指定的译码标准而大小不同。每一视频帧可包括多个片。每一片可包括多个块,所述多个块可布置成若干分区,所述分区还被称作子块。
举例来说,ITU-T H.264标准支持各种块大小(例如,针对亮度分量的16乘16、8乘8或4乘4,和针对色度分量的8×8)的帧内预测,以及各种块大小(例如,针对亮度分量的16×16、16×8、8×16、8×8、8×4、4×8和4×4,和针对色度分量的对应缩放的大小)的帧间预测。在本发明中,“NxN”与“N乘N”可互换使用,以指代依据垂直和水平尺寸的块的像素尺寸,例如16x16个像素或16乘16个像素。一般来说,16x16块将在垂直方向上具有16个像素(y=16),且在水平方向上具有16个像素(x=16)。同样地,NxN块通常在垂直方向上具有N个像素,且在水平方向上具有N个像素,其中N表示非负整数值。一块中的像素可布置成若干行和若干列。此外,块无需必定在水平方向上与在垂直方向上具有相同数目的像素。举例来说,块可包括NxM个像素,其中M不一定等于N。
小于16乘16的块大小可称为16乘16块的分区。视频块可包括像素域中的像素数据块,或(例如)在对表示经译码的视频块与预测视频块之间的像素差的残余视频块数据应用例如离散余弦变换(DCT)、整数变换、小波变换或概念上类似的变换等变换之后的在变换域中的变换系数的块。在一些情况下,视频块可包括变换域中的经量化变换系数的块。
较小视频块可提供较佳分辨率,且可用于包括较高细节水平的视频帧的定位。一般来说,块和各种分区(有时称为子块)可称为视频块。另外,可将片视为多个视频块,例如块和/或子块。每一片可为视频帧的可独立解码单元。或者,帧自身可为可解码单元,或可将帧的其它部分定义为可解码单元。术语“经译码单元”或“译码单元”可指代例如整个帧、帧的片、图片群组(GOP)(也称为序列)等视频帧的任何可独立解码的单元,或根据适用的译码技术界定的另一可独立解码的单元。
经编码视频数据可包含预测数据和残余数据。视频编码器可在帧内预测模式或帧间预测模式期间产生预测数据。帧内预测通常涉及相对于图片的相邻、先前经译码块来预测同一图片的块。帧间预测通常涉及相对于先前经译码图片的数据来预测图片的块。
在帧内或帧间预测之后,视频编码器可计算所述块的残余值。残余值通常对应于块的所预测数据与所述块的真实值之间的差异。为了进一步压缩块的残余值,可将残余值变换为一组变换系数,其将尽可能多的数据(也称为“能量”)压到尽可能少的系数中。变换系数对应于可为与原始块相同大小的二维系数矩阵。换句话说,仅存在与原始块中的像素一样多的变换系数。然而,归因于变换,变换系数中的许多可具有等于零的值。
视频编码器可接着量化变换系数以进一步压缩视频数据。量化通常涉及将相对较大范围内的值映射到相对较小范围内的值,从而减少表示经量化变换系数所需的数据量。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,在量化期间,可将n位值向下舍入到m位值,其中n大于m。在量化之后,视频编码器可扫描变换系数,从而从包含经量化变换系数的二维矩阵产生一维向量。因为可存在若干零值经量化变换系数,所以视频编码器可经配置以在达到零值经量化变换系数后即刻停止扫描,从而减少一维向量中的系数的数目。所述扫描可设计成将较高能量(且因此较低频率)系数放在阵列的前部,且将较低能量(且因此较高频率)系数放在阵列的后部。
视频编码器可接着对所得阵列进行熵编码以更进一步压缩数据。在一些实例中,视频编码器可经配置以使用可变长度代码(VLC)来表示阵列的各种可能经量化变换系数,例如使用上下文自适应可变长度译码(CAVLC)。在其它实例中,视频编码器可经配置以使用二进制算术译码来编码所得经量化系数,例如使用上下文自适应二进制算术译码(CABAC)。
视频编码器20可进一步例如在帧标头、块标头、片标头或GOP标头中将语法数据(例如,基于块的语法数据、基于帧的语法数据以及基于GOP的语法数据)发送到视频解码器30。GOP语法数据可描述相应GOP中的帧的数目,且帧语法数据可指示用以编码对应帧的编码/预测模式。
当前正在进行努力来开发新的视频译码标准,当前称为高效视频译码(HEVC)。即将出现的标准也称为H.265。标准化努力是基于视频译码装置的模型,称为HEVC测试模型(HM)。HM假定视频译码装置优于根据例如ITU-T H.264/AVC的装置的若干能力。举例来说,H.264提供九种帧内预测编码模式,而HM提供多达三十五种帧内预测编码模式。
HM指代作为译码单元(CU)的视频数据块。位流中的语法数据可界定最大译码单元(LCU),其为依据像素数据的最大译码单元。一般来说,CU具有与H.264标准的宏块类似的目的,只是CU不具有大小差别。因此,CU可分给为若干子CU。一般来说,本发明中对CU的参考可指代图片的最大译码单元或LCU的子CU。可将LCU分割为若干子CU,且每一子CU可分割为若干子CU。用于位流的语法数据可界定LCU可分割的最大次数,称为CU深度。因此,位流还可界定最小译码单元(SCU)。本发明还是用术语“块”来指代CU、PU或TU中的任一者。
LCU可与四分树数据结构相关联。一般来说,四分树数据结构每CU包含一个节点,其中根节点对应于LCU。如果CU分割为四个子CU,那么对应于CU的节点包含四个叶节点,其各自对应于子CU中的一者。四分树数据结构的每一节点可提供用于对应CU的语法数据。举例来说,四分数中的节点可包含分割旗标,指示对应于所述节点的CU是否被分割为子CU。CU的语法元素可递归地界定,且可取决于CU是否分割为子CU。
未分割的CU可包含一个或一个以上预测单元(PU)。一般来说,PU表示对应CU的全部或一部分,且包含用于检索PU的参考样本的数据。举例来说,当PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一实例,当PU经帧间模式编码时,PU可包含描述PU的运动向量的数据。界定运动向量的数据可描述(例如)运动向量的水平分量、运动向量的垂直分量、运动向量的分辨率(例如,四分之一像素精度或八分之一像素精度)、运动向量指向的参考帧,和/或运动向量的参考列表(例如,列表0或列表1)。界定PU的CU的数据还可描述(例如)将CU分为一个或一个以上PU。划分模式可在CU未经译码、经帧内模式编码或经帧间预测模式编码之间不同。
具有一个或一个以上PU的给定CU还可包含一个或一个以上变换单元(TU)。在使用PU的预测之后,视频编码器可计算CU的对应于PU的部分的残余值。可变换、扫描和量化残余值。TU不一定限于PU的大小。因此,TU可大于或小于同一CU的对应PU。在一些实例中,TU的最大大小可对应于对应CU的大小。
如上文所述,帧内预测包含从图片的先前经译码CU预测同一图片的当前CU的PU。更具体地说,视频编码器可使用特定帧内预测模式对图片的当前CU进行帧内预测。HM编码器可配置有至多达三十三个定向帧内预测模式以及两个非定向帧内预测模式。
HM编码器可经配置以使得用于块的可用帧内预测模式集合取决于所述块或PU的大小而不同。就是说,预测单元(PU)的大小可确定可用于所述PU的帧内预测模式的数目,编码器可从中选择一帧内预测模式来预测所述PU。下文的表1说明预测单元大小与可用于所述大小的PU的定向帧内预测模式的数目之间的对应性的一个实例。
表1
预测单元大小 | 定向帧内预测模式的数目 |
4x4 | 33 |
8x8 | 33 |
16x16 | 33 |
32x32 | 33 |
根据本发明的技术,视频编码器20可经配置以确定是启用还是停用二次边界滤波。就是说,视频编码器20和视频解码器30可经配置以确定是否将滤波器应用于经帧内预测的视频数据块(其曾使用一次边界来预测),其中所述滤波器使用二次边界的数据。视频编码器20可经配置以将指示视频解码器30是否应对特定视频数据块执行二次边界滤波的信息提供给视频解码器30。或者,视频解码器30可执行与视频编码器20用于确定是否执行二次边界滤波的技术类似的技术。在任一情况下,视频解码器30可经配置以确定是否对经帧内译码的视频数据块之间的边界执行二次边界滤波。
更明确地说,视频编码器20和视频解码器30可经配置以对某些视频数据块进行帧内预测。帧内预测模式包含定向帧内预测模式,例如如图4中所说明,其在下文更详细地描述。其它帧内预测模式包含非定向帧内预测模式,例如DC模式和平面模式。可将某些定向帧内预测模式描述为相对水平的或相对垂直的,而可将其它定向帧内预测模式描述为相对对角的。
如本发明中所述,相对水平的和相对垂直的帧内预测模式是利用来自一个一次边界的数据来预测对应块的模式,而相对对角的帧内预测模式是利用来自两个边界的数据来预测对应块的模式。举例来说,相对水平的预测模式利用来自所述块的左侧边界的数据来预测所述块,而相对垂直的预测模式利用来自所述块的顶侧边界的数据来预测所述块。因此,可将左侧边界视为相对水平的预测模式的一次边界,而可将顶侧边界视为相对垂直的预测模式的一次边界。
另一方面,相对对角的帧内预测模式使用左侧边界和顶侧边界两者的数据,且因此顶侧边界或左侧边界均不被视为这些模式的一次边界。或者,在其它实例中,对于相对对角的帧内预测模式,两个边界均可被视为一次,或可将相对重加权的边界(依据对预测的贡献)视为一次。对于非定向帧内预测模式,例如DC和平面模式,可将顶侧边界和左侧边界两者视为一次边界。同样地,在非定向帧内预测模式的情况下,可使用来自两个边界的数据来执行二次边界滤波。
根据本发明的技术,在使用一次边界的数据(例如,使用相对水平或相对垂直的定向帧内预测模式)对块进行帧内预测之后,视频编码器20和视频解码器30可确定是否使用所述块的二次边界的数据对所预测块进行滤波。举例来说,在使用当前块的作为一次边界的左侧边界的数据来形成所预测块之后,视频编码器20和视频解码器30可确定是否使用作为二次边界的顶侧边界的数据来对所预测块进行滤波。如上文所论述,使用作为一次边界的左侧边界的数据来形成所预测块可起因于使用相对水平的帧内预测模式对当前块进行帧内预测。作为另一实例,在使用当前块的作为一次边界的顶侧边界的数据来形成所预测块之后,视频编码器20和视频解码器30可确定是否使用作为二次边界的左侧边界的数据来对所预测块进行滤波。如上文所论述,使用作为一次边界的顶侧边界的数据来形成所预测块可起因于使用相对垂直的帧内预测模式对当前块进行帧内预测。
为了确定是否将二次边界滤波器应用于所预测块,视频编码器20(作为实例)可计算表示边界关系的值。此值(可称为边界关系值)可描述一次边界的值与二次边界的值之间的关系,或可描述一次和/或二次边界的值与所预测块本身的值之间的关系。在计算边界关系值之后,视频编码器20可基于所述值是否超过阈值来确定是否将二次边界滤波器应用于所预测块。视频编码器20可使用例如拉普拉斯或梯度差来计算边界关系值。
视频解码器30还可计算边界关系值,类似于视频编码器20。或者,视频编码器20可经配置以译码指示是否对所预测块进行滤波的信令数据。就是说,视频编码器20可编码代表是否使用二次边界的数据来对所预测块进行滤波的语法信息。同样地,视频解码器30可经配置以解码代表是否使用二次边界的数据来对所预测块进行滤波的语法信息。因此,不是计算二次边界值,而是视频解码器30可基于经解码的语法数据使用二次边界的数据来选择性地滤波所预测的块。
如上文所论述,视频编码器20和视频解码器30可经配置以确定是否使用二次边界的数据对所预测的块进行滤波,所述所预测的块是使用一次边界的数据来预测的。此滤波可称为二次边界滤波。一般来说,二次边界滤波涉及使用二次边界的数据来修改所预测块的数据。举例来说,可数学上应用沿二次边界的一个或一个以上像素的值来修改所预测块的一个或一个以上像素的值。作为二次边界滤波的一个实例,对于在经帧内预测的块中使用一次边界所产生的每一像素值,可基于二次边界处的两个特定像素值之间的经加权差来计算偏移。可将所述偏移与所预测块中的像素值相加以产生经修改像素值。
视频编码器20和视频解码器30还可对经帧内预测的块进行译码,不管所预测块是否曾使用二次边界的数据来滤波。就是说,如果所预测块未经滤波,那么视频编码器20和视频解码器30可使用所预测块来译码所述块。明确地说,视频编码器20可计算表示所预测块与原始块之间的逐像素差的残余值,接着译码(例如,变换、量化和熵编码)所述残余值。同样地,视频解码器30可解码残余值,且将所述残余值与所预测块组合以解码所述块。
另一方面,如果所预测块经二次边界滤波,那么视频编码器20和视频解码器30可使用经滤波的所预测块来译码所述块。明确地说,视频编码器20可计算表示经滤波的所预测块与原始块之间的逐像素差的残余值,接着译码(例如,变换、量化和熵编码)所述残余值。同样地,视频解码器30可解码残余值,且将所述残余值与经滤波的所预测块组合以解码所述块。
视频编码器20和视频解码器30各自可实施为多种合适编码器或解码器电路中的任一者(如适用),例如一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器20和视频解码器30中的每一者可包含在一个或一个以上编码器或解码器中,其中的任一者可集成为组合式视频编码器/解码器(CODEC)的部分。包含视频编码器20和/或视频解码器30的设备可包括集成电路、微处理器和/或无线通信装置,例如蜂窝式电话。
以此方式,视频编码器20和视频解码器30各自表示经配置以进行以下动作的视频译码器的实例:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
如上文所述,对视频数据块进行帧内预测可包含使用例如相对水平或相对垂直的帧内预测模式对当前视频数据块进行帧内预测。如相对于图4更详细地论述,在本发明中,相对水平和相对垂直的帧内预测模式是利用当前块的主要一个边界的数据的那些模式。一次边界可对应于例如左侧边界或顶侧边界。明确地说,左侧边界包含一个或一个以上左相邻块的像素,而顶侧边界包含一个或一个以上顶相邻块的像素。
尽管本发明主要将这些技术描述为对应于相对水平或相对垂直帧内预测模式的使用,但这些技术也可应用于相对对角的帧内预测模式和/或非定向帧内预测模式,例如DC模式和平面模式。举例来说,在DC模式和平面模式下,可将两个边界视为一次边界和二次边界。
确定是否对所预测块进行滤波可包含计算拉普拉斯边界关系值和/或梯度差边界关系值,如上文所论述。此外,确定是否对所预测块进行滤波可包含将边界关系值与阈值进行比较。阈值可为计算边界关系值的方式所特定的。举例来说,可为拉普拉斯边界关系值界定第一阈值,且可为梯度差边界关系值界定第二阈值。在一些实例中,当边界关系值小于阈值时,可启用二次边界滤波。
图2是说明可实施用于确定是否执行二次边界滤波的技术的视频编码器20的实例的框图。视频编码器20可执行包含块或者块的分区或子分区的视频帧内的块的帧内和帧间译码。帧内译码依靠空间预测来减少或去除给定视频帧内的视频中的空间冗余。帧间译码依靠时间预测来减少或去除视频序列的相邻帧内的视频中的时间冗余。帧内模式(I模式)可指代若干基于空间的压缩模式中的任一者,且例如单向预测(P模式)或双向预测(B模式)等帧间模式可指代若干基于时间的压缩模式中的任一者。尽管图2中描绘用于帧间模式编码的组件,但应理解,视频编码器20可进一步包含用于帧内模式编码的组件。然而,为了简明和清楚起见,不说明此些组件。
如图2中所示,视频编码器20接收待编码视频帧内的当前视频块。在图2的实例中,视频编码器20包含模式选择单元40、参考帧存储器64、求和器50、变换处理单元52、量化单元54以及熵译码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测单元46、滤波单元66以及分区单元48。对于视频块重构,视频编码器20还包含逆量化单元58、逆变换单元60以及求和器62。另外,视频编码器20可包含去块器(未图示),其可对求和器62的输出进行去块,并将经去块的视频数据存储在参考帧存储器64中。
在编码过程期间,视频编码器20接收待译码的视频帧或片。可将帧或片分为多个视频块或CU。运动估计单元42和运动补偿单元44相对于一个或一个以上参考帧中的一个或一个以上块执行对所接收的视频块的帧间预测译码以提供时间压缩。帧内预测单元46可替代地相对于与待译码的块在同一帧或切片中的一个或一个以上相邻块执行所接收视频块的帧内预测译码,以提供空间压缩。根据本发明的技术,如下文更详细地描述,帧内预测单元46可利用滤波单元66来对所预测块进行滤波,例如以执行二次边界滤波。视频编码器20可执行多个译码遍次,例如为每一视频数据块选择适当的译码模式。
此外,分区单元48可基于先前译码遍次中的先前分区方案的评估将视频数据块分区成若干子块。举例来说,分区单元48可最初将帧或片分区成LCU,且基于速率失真分析(例如,速率失真优化)将所述LCU中的每一者分区成若干子CU。模式选择单元40可进一步产生指示将LCU分区成子CU的四叉树数据结构。四叉树的叶节点CU可包含一个或一个以上PU以及一个或一个以上TU。
模式选择单元40可例如基于错误结果选择译码模式(帧内或帧间)中的一者,且将所得经帧内译码或帧间译码块提供给求和器50以产生残余块数据,且提供给求和器62以重构经编码块以用作参考帧。模式选择单元40还向熵译码单元56提供语法元素,例如运动向量、帧内模式指示符、分区信息和其它此类语法信息。
运动估计单元42与运动补偿单元44可高度集成,但出于概念上的目的而分开予以说明。运动估计是产生估计视频块的运动的运动向量的过程。运动向量(例如)可指示预测参考帧(或其它经译码单元)内的预测块相对于当前帧(或其它经译码单元)内正被译码的当前块的位移。预测块是被发现在像素差异方面密切地匹配待译码的块的块,其可由绝对差总和(SAD)、平方差总和(SSD)或其它差异量度确定。运动向量还可指示块的分区的移位。运动补偿可涉及基于运动估计所确定的运动向量来获取或产生预测块。并且,在一些实例中,运动估计单元42和运动补偿单元44可在功能上集成。
运动估计单元42通过将视频块与参考帧存储器64中的参考帧的视频块进行比较来计算经帧间译码帧的视频块的运动向量。运动补偿单元44还可内插参考帧(例如,I帧或P帧)的子整数像素。举例来说,ITU H.264标准描述两个列表:列表0,其包含具有比正编码的当前帧早的显示次序的参考帧;以及列表1,其包含具有比正编码的当前帧迟的显示次序的参考帧。因此,可根据这些列表来组织存储在参考帧存储器64中的数据。
运动估计单元42将来自参考帧存储器64的一个或一个以上参考帧的块与当前帧(例如P帧或B帧)的待编码块进行比较。当参考帧存储器64中的参考帧包含子整数像素的值时,由运动估计单元42计算的运动向量可指代参考帧的子整数像素位置。如果没有用于子整数像素位置的值存储在参考帧存储器64中,那么运动估计单元42和/或运动补偿单元44还可经配置以计算存储在参考帧存储器64中的参考帧的子整数像素位置的值。运动估计单元42将所计算的运动向量发送到熵译码单元56和运动补偿单元44。由运动向量识别的参考帧块可称为预测块。运动补偿单元44可基于预测块计算预测数据。
作为由上文所述的运动估计单元42和运动补偿单元44所执行的帧间预测的替代方案,帧内预测单元46可对当前块进行帧内预测。明确地说,帧内预测单元46可确定要用来编码当前块的帧内预测模式。在一些实例中,帧内预测单元46可例如在单独编码遍次期间,使用各种帧内预测模式来编码当前块,且帧内预测单元46(或在一些实例中,模式选择单元40)可从被测模式中选择要使用的适当帧内预测模式。
举例来说,帧内预测单元46可使用对各种被测帧内预测模式的速率失真分析来计算速率失真值,且在被测模式之中选择具有最佳速率失真特性的帧内预测模式。速率失真分析通常确定经编码块与经编码以产生经编码块的原始未经编码块之间的失真(或误差)的量,以及用以产生经编码块的位速率(即,位的数目)。帧内预测单元46可从各种经编码块的失真和速率计算比率,以确定哪一帧内预测模型展现所述块的最佳速率失真值。在为块选择帧内预测模式之后,帧内预测单元46可提供向熵译码单元56指示为所述块选择的帧内预测模式的信息。
根据本发明的技术,帧内预测单元46可在视频数据块(例如,PU)的帧内预测译码期间选择性地启用或停用(完全或部分地)二次边界滤波。明确地说,帧内预测单元46或模式选择单元40可计算代表当前块(例如,当前PU)的两个边界(例如,左相邻边界和上相邻边界)之间的边界关系的值。或者,帧内预测单元46或模式选择单元40可计算代表当前块(例如,当前PU)的边界与当前块的像素值之间的边界关系的值。
一般来说,滤波单元66代表帧内预测单元46至少部分地基于边界关系对所预测视频数据块进行滤波。更明确地说,根据本发明的技术(如相对于图5更详细地描述),帧内预测单元46可确定是启用还是停用经帧内预测视频数据块的二次边界滤波。选择性地启用或停用二次边界滤波可改进块(例如,PU)的所预测值,这可藉此改进所述块的BD速率。当帧内预测单元46(或模式选择单元40)启用二次边界滤波时,滤波单元66可对所预测的视频数据块(例如,PU)进行滤波。模式选择单元40还可将所预测的块(或,在滤波单元66的滤波之后,经滤波的所预测块)提供给求和器50。
为了使用二次边界对所预测块进行滤波,滤波单元66可使用二次边界的一个或一个以上值来修改所预测块的个别像素Pij。举例来说,令(i,j)对应于位置(i,j)处的所预测块的像素,其中所述所预测块的左上角位于位置(0,0)。令Pij对应于所预测块的位置(i,j)处的像素。令P′ij对应于位置(i,j)处的经滤波像素,即具有如由滤波单元66修改的Pij的值。滤波单元66可计算使用相对垂直的帧内预测模式来预测的所预测块的P′ij,如下:
P′ij=Pij+α·(Li-RLi), (1)
其中α为介于0与1之间的分数,且根据分别用于垂直模式和水平模式的j和i来选择,RLi表示对应于Pij的左侧边界中的参考样本(即,左侧边界中在位置i处的像素),且Li表示当前块的左列中在位置i处的参考样本。在一个实例中,当j(i)=0时,α=1/2;当j(i)=1时,α=1/4;当j(i)=2时,α=1/8;且当j(i)=3,4时,α=1/16。
滤波单元66可计算使用相对水平的帧内模式预测的所预测块的P′ij,如下:
P′ij=Pij+α·(Aj-RAj), (2)
其中α为介于0与1之间的分数,且根据(如上文所述)分别用于垂直模式和水平模式的j和i来选择,RAj表示对应于Pij的顶侧边界中的参考样本(即,顶侧边界中在位置j处的像素),且Aj表示上部行中在位置j处的参考样本。如上文所述,在一个实例中,当j(i)=0时,α=1/2;当j(i)=1时,α=1/4;当j(i)=2时,α=1/8;且当j(i)=3,4时,α=1/16。
模式选择单元40可为帧内预测单元46选择相对水平或相对垂直帧内预测模式,以用来预测当前视频数据块。帧内预测单元46可根据相对水平或相对垂直的帧内预测模式,使用一次边界的数据形成所预测块(例如,PU)。对于相对水平模式,一次边界可对应于例如块的左侧边界,或对于相对垂直模式,一次边界可对应于块的顶侧边界。二次边界可对应于所述块的不同于一次边界的边界。举例来说,当一次边界为左侧边界时,二次边界可对应于顶侧边界,且当一次边界为顶侧边界时,二次边界可对应于左侧边界。模式选择单元40可进一步确定是否使用块的二次边界的数据来对所预测块(即,起因于使用相对水平或相对垂直帧内预测模式的帧内预测的所预测块)进行滤波(即,是否执行二次边界滤波)。
在一些实例中,模式选择单元40可计算表示边界关系的值(本文中也称为边界关系值)。模式选择单元40可计算边界关系值以表示一次边界的一个或一个以上像素的值以及二次边界的一个或一个以上像素的像素值,或一次边界和二次边界中的至少一者的一个或一个以上像素的值和所预测块的一个或一个以上像素的像素值。模式选择单元40可基于边界关系值与阈值的比较来确定是否使用二次边界对所预测块进行滤波。
在一些实例中,计算边界关系值可包含计算拉普拉斯值。举例来说,当帧内预测单元46使用相对水平的帧内预测模式来预测块时,模式选择单元40可根据以下公式计算拉普拉斯值:
max(|TR[N-2]-2*TR[N-1]+TR[N]|,|TR[N-3]-2*TR[N-2]+TR[N-1]|)。
在此实例函数中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,且N为表示所述块的宽度的整数值。更具体地说,沿所述块的顶侧边界的像素可从0编索引到N,其中0表示所述块的最左像素,且N表示所述块的最右像素,使得所述块的宽度为(N+1)。
作为另一实例,当帧内预测单元46使用相对垂直的帧内预测模式来预测块时,模式选择单元40可根据以下公式计算拉普拉斯值:
max(|SR[N-2]-2*SR[N-1]+SR[N]|,|SR[N-3]-2*SR[N-2]+SR[N-1]|)。
在此实例函数中,SR[j]对应于沿顶侧边界的从块的顶部边缘开始的第j个像素,且N为表示所述块的高度的整数值。更具体地说,沿所述块的左侧边界的像素可从0编索引到N,其中0表示所述块的最上像素,且N表示所述块的最下像素,使得所述块的高度为(N+1)。
尽管上文主要描述为与定向帧内预测模式(例如相对水平和相对垂直的帧内预测模式)的使用有关,但本发明的技术也可应用于确定是否将二次边界滤波应用于归因于非定向帧内预测模式(例如,DC模式或平面模式)的所预测块。在此些情况下,可根据以下公式来执行计算拉普拉斯值:
max(|TR[N-2]-2*TR[N-1]+TR[N]|,|TR[N-3]-2*TR[N-2]+TR[N-1]|,
|SR[N-2]-2*SR[N-1]+SR[N]|,|SR[N-3]-2*SR[N-2]+SR[N-1]|)。
如在以上实例中,在此实例中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,而SR[j]对应于沿左侧边界从块的顶部边缘开始的第j个像素。在此实例中,假定块是正方形的,且值N为表示块的高度和宽度两者的整数值。如上文所述,假定所述块的第一像素(最左和最上像素)的零索引,高度可等于宽度,且高度和宽度两者可等于(N+1)。
在其它实例中,模式选择单元40可将边界关系值计算为梯度差值。举例来说,当帧内预测单元46使用相对水平的帧内预测模式来计算所预测块时,模式选择单元40可根据以下公式计算边界关系值:
max(|TR[N]-P[N,0]|,|TR[N-1]-P[N-1,0]|,|TR[N]-P[N-1,0]|,|TR[N-1]-P[N,0]|)。
如在以上实例中,在此实例中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,且N为表示所述块的宽度的整数值。在此实例中,P(i,j)对应于所预测块的在位置(i,j)处的像素。
作为另一实例,当帧内预测单元46使用相对垂直的帧内预测模式来计算所预测块时,模式选择单元40可根据以下公式计算边界关系值:
max(|SR[N]-P[0,N]|,|SR[N-1]-P[0,N-1]|,|SR[N]-P[0,N-1]|,|SR[N-1]-P[0,N]|)。
如在以上实例中,在此实例中,SR[j]对应于沿左侧边界的从块的左边缘开始的第j个像素,且N为表示所述块的高度的整数值。
在任何情况下,模式选择单元40可例如通过将边界关系值与阈值进行比较来确定所预测块是否应经二次边界滤波。在一些实例中,模式选择单元40可包含基于各种特性(例如,边界关系值是拉普拉斯值还是梯度差值)界定不同阈值的数据。在模式选择单元40确定所预测块应经二次边界滤波的情况下,滤波单元66可将二次边界滤波器应用于所述块。就是说,帧内预测单元46可将代表所预测块的数据发送到滤波单元66,其可接着使用二次边界的数据来修改所述数据。帧内预测单元46或模式选择单元40还可将指示所述边界中的哪一者视为一次边界且将所述边界中的哪一者视为二次边界的数据发送到滤波单元66。滤波单元66可从参考帧存储器64检索二次边界的数据以执行二次边界滤波。
视频编码器20通过从正译码的原始视频块减去来自模式选择单元40的预测数据(即,所预测块)而形成残余视频块。求和器50表示执行此减法运算的组件。残余视频块表示所预测(且可能经滤波)块与所述所预测块所对应的原始块之间的逐像素差异。更明确地说,当模式选择单元40确定不使用二次边界滤波来对所预测块进行滤波时,模式选择单元40可将所预测块发送到求和器50。或者,当模式选择单元40确定所预测块应经二次边界滤波时,模式选择单元40可将经滤波的所预测块(起因于滤波单元66所执行的二次边界滤波)发送到求和器50。以此方式,视频编码器20可响应于确定不对所预测块进行滤波,使用所预测块来编码所述块(即,所预测块所对应的原始块),且响应于确定对所预测块进行滤波,使用经滤波的所预测块来编码所述块。
变换处理单元52对残余块应用例如离散余弦变换(DCT)或概念上类似的变换等变换,从而产生包括残余变换系数值的视频块。变换处理单元52可执行其它变换,例如由H.264标准或即将到来的HEVC标准界定的那些变换,其概念上类似于DCT。也可使用小波变换、整数变换、子带变换或其它类型的变换。在任何情况下,变换处理单元52均将变换应用于残余块,从而产生残余变换系数块。所述变换可将残余信息从像素值域转换到变换域(例如,频域)。量化单元54量化残余变换系数以进一步减小位率。量化过程可减少与系数中的一些或全部相关联的位深度。通过调整量化参数来修改量化程度。
在量化之后,熵译码单元56对经量化变换系数进行熵译码。举例来说,熵译码单元56可执行内容自适应可变长度译码(CAVLC)、上下文自适应二进制算术译码(CABAC),或另一熵译码技术。熵译码单元56还可对来自模式选择单元40的语法元素(例如运动向量、帧内模式指示符、分区信息等)进行熵译码。在熵译码单元56进行的熵译码之后,可将经编码视频发射到另一装置或加以存档以用于稍后发射或检索。在上下文自适应二进制算术译码的情况下,上下文可基于相邻块。
在一些情况下,熵译码单元56或视频编码器20的另一单元可经配置以执行除熵译码之外的其它译码功能。举例来说,熵译码单元56可经配置以确定块和分区的CBP值。并且,在一些情况下,熵译码单元56可执行其块或分区中的系数的游程长度译码。明确地说,熵译码单元56可应用曲折扫描或其它扫描模式来扫描块或分区中的变换系数,且编码零的游程以用于进一步压缩。熵译码单元56还可用适当的语法元素建构标头信息以用于在经编码视频位流中进行发射。
逆量化单元58和逆变换单元60分别应用逆量化和逆变换,以在像素域中重构残余块,例如以供稍后用作参考块。运动补偿单元44可通过将残余块与参考帧存储器64的帧中的一者的预测块相加来计算参考块。运动补偿单元44还可将一个或一个以上内插滤波器应用于经重构的残余块,以计算用于运动估计中的子整数像素值。求和器62将所重构的残余块与由运动补偿单元44产生的经运动补偿的预测块相加以产生经重构视频块,以存储在参考帧存储器64中。经重构的视频块可由运动估计单元42和运动补偿单元44用作对后续视频帧中的块进行帧间预测的参考块。
以此方式,视频编码器20表示经配置以进行以下动作的视频译码器的实例:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
图3是说明可实施用于确定是否执行二次边界滤波的技术的视频解码器30的实例的框图。在图3的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、滤波单元84、逆量化单元76、逆变换单元78、参考帧存储器82以及求和器80。在一些实例中,视频解码器30可包含去块器(未图示),其可对求和器80的输出进行滤波,并将经去块的视频数据存储在参考帧存储器82中。视频解码器30在一些实例中可执行一般与相对于视频编码器20(图2)所描述的编码遍次互逆的解码遍次。
运动补偿单元72可基于从熵解码单元70接收到的运动向量产生预测数据。运动补偿单元72可使用在位流中接收到的运动向量来识别参考帧存储器82中的参考帧中的预测块。帧内预测单元74可使用在位流中接收到的帧内预测模式从空间上邻近的块形成预测块。
根据本发明的技术,帧内预测单元74可在视频数据块(例如,PU)的帧内预测译码期间选择性地启用或停用(完全或部分地)二次边界滤波。明确地说,帧内预测单元74可计算代表当前块(例如,当前PU)的两个边界(例如,左相邻边界和上相邻边界)之间的边界关系的值。或者,帧内预测单元74可计算代表当前块(例如,当前PU)的边界与当前块的像素值之间的边界关系的值。
在此些实例中,帧内预测单元74至少部分地基于边界关系,选择性地确定是否对对应于当前视频数据块的所预测块进行滤波。更明确地说,根据本发明的技术(例如,如相对于图5更详细地描述),帧内预测单元74可确定是启用还是停用经帧内预测视频数据块的二次边界滤波。选择性地启用或停用二次边界滤波可改进块(例如,PU)的所预测值,这可藉此改进所述块的BD速率。
在其中帧内预测单元74计算边界关系值的实例中,帧内预测单元74可以大体上类似于如相对于图2所论述的视频编码器20的方式的方式来计算边界关系值。举例来说,帧内预测单元74可计算拉普拉斯值。作为一个实例,当帧内预测单元74使用相对水平的帧内预测模式来预测所述块时(例如,如由代表帧内预测模式的当前块的语法数据所指示),帧内预测单元74可根据以下公式计算拉普拉斯值:
max(|TR[N-2]-2*TR[N-1]+TR[N]|,|TR[N-3]-2*TR[N-2]+TR[N-1]|)。
在此实例函数中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,且N为表示所述块的宽度的整数值。更具体地说,沿所述块的顶侧边界的像素可从0编索引到N,其中0表示所述块的最左像素,且N表示所述块的最右像素,使得所述块的宽度为(N+1)。
作为另一实例,当帧内预测单元74使用相对垂直的帧内预测模式来预测所述块时(再次,根据指示帧内预测模式的语法数据),帧内预测单元74可根据以下公式计算拉普拉斯值:
max(|SR[N-2]-2*SR[N-1]+SR[N]|,|SR[N-3]-2*SR[N-2]+SR[N-1]|)。
在此实例函数中,SR[j]对应于沿顶侧边界的从块的顶部边缘开始的第j个像素,且N为表示所述块的高度的整数值。更具体地说,沿所述块的左侧边界的像素可从0编索引到N,其中0表示所述块的最上像素,且N表示所述块的最下像素,使得所述块的高度为(N+1)。
尽管上文主要描述为与定向帧内预测模式(例如相对水平和相对垂直的帧内预测模式)的使用有关,但本发明的技术也可应用于确定是否将二次边界滤波应用于归因于非定向帧内预测模式(例如,DC模式或平面模式)的所预测块。在此些情况下,可根据以下公式来执行计算拉普拉斯值:
max(|TR[N-2]-2*TR[N-1]+TR[N]|,|TR[N-3]-2*TR[N-2]+TR[N-1]|,
|SR[N-2]-2*SR[N-1]+SR[N]|,|SR[N-3]-2*SR[N-2]+SR[N-1]|)。
如在以上实例中,在此实例中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,而SR[j]对应于沿左侧边界从块的顶部边缘开始的第j个像素。在此实例中,假定块是正方形的,且值N为表示块的高度和宽度两者的整数值。如上文所述,假定所述块的第一像素(最左和最上像素)的零索引,高度可等于宽度,且高度和宽度两者可等于(N+1)。
在其它实例中,帧内预测单元74可将边界关系值计算为梯度差值。举例来说,当帧内预测单元74使用相对水平的帧内预测模式来计算所预测块时,帧内预测单元74可根据以下公式计算边界关系值(对应于梯度差值):
max(|TR[N]-P[N,0]|,|TR[N-1]-P[N-1,0]|,|TR[N]-P[N-1,0]|,|TR[N-1]-P[N,0]|)。
如在以上实例中,在此实例中,TR[k]对应于沿顶侧边界从块的左边缘开始的第k个像素,且N为表示所述块的宽度的整数值。在此实例中,P(i,j)对应于所预测块的在位置(i,j)处的像素。
作为另一实例,当帧内预测单元74使用相对垂直的帧内预测模式来计算所预测块时,帧内预测单元74可根据以下公式计算边界关系值(对应于梯度差值):
max(|SR[N]-P[0,N]|,|SR[N-1]-P[0,N-1]|,|SR[N]-P[0,N-1]|,|SR[N-1]-P[0,N]|)。
如在以上实例中,在此实例中,SR[j]对应于沿左侧边界的从块的左边缘开始的第j个像素,且N为表示所述块的高度的整数值。
在任何情况下,帧内预测单元74可例如通过将边界关系值与阈值进行比较来确定所预测块是否应经二次边界滤波。在一些实例中,帧内预测单元74可包含基于各种特性(例如,边界关系值是拉普拉斯值还是梯度差值)界定不同阈值的数据。此些阈值可为预定义的,或根据从视频编码器接收的语法元素来确定。
在帧内预测单元74确定所预测块应经二次边界滤波的情况下,滤波单元84可将二次边界滤波器应用于所述块。就是说,帧内预测单元74可将代表所预测块的数据发送到滤波单元84,其可接着使用二次边界的数据来修改所述数据。帧内预测单元74还可将指示所述边界中的哪一者视为一次边界且将所述边界中的哪一者视为二次边界的数据发送到滤波单元84。滤波单元84可从参考帧存储器82检索二次边界的数据以执行二次边界滤波。
为了使用二次边界对所预测块进行滤波,滤波单元84可以可大体上类似于相对于图2的视频编码器20的滤波单元66所述的技术的方式,使用二次边界的一个或一个以上值来修改所预测块的个别像素Pij。就是说,滤波单元84可酌情执行等式(1)和/或(2),以在启用二次边界滤波时对所预测块的数据进行滤波。举例来说,令(i,j)对应于位置(i,j)处的所预测块的像素,其中所述所预测块的左上角位于位置(0,0)。令Pij对应于所预测块的位置(i,j)处的像素。令P′ij对应于位置(i,j)处的经滤波像素,即具有如由滤波单元84修改的Pij的值。滤波单元84可计算使用相对垂直的帧内预测模式来预测的所预测块的P′ij,如下:
P′ij=Pij+α·(Li-RLi), (1)
其中α为介于0与1之间的分数,且根据分别用于垂直模式和水平模式的j和i来选择,RLi表示对应于Pij的左侧边界中的参考样本(即,左侧边界中在位置i处的像素),且Li表示当前块的左列中在位置i处的参考样本。在一个实例中,当j(i)=0时,α=1/2;当j(i)=1时,α=1/4;当j(i)=2时,α=1/8;且当j(i)=3,4时,α=1/16。
滤波单元84可计算使用相对水平的帧内模式预测的所预测块的P′ij,如下:
P′ij=Pij+α·(Aj-RAj), (2)
其中α为介于0与1之间的分数,且根据(如上文所述)分别用于垂直模式和水平模式的j和i来选择,RAj表示对应于Pij的顶侧边界中的参考样本(即,顶侧边界中在位置j处的像素),且Aj表示上部行中在位置j处的参考样本。如上文所述,在一个实例中,当j(i)=0时,α=1/2;当j(i)=1时,α=1/4;当j(i)=2时,α=1/8;且当j(i)=3,4时,α=1/16。
在其它实例中,帧内预测单元74可接收指示是否执行二次边界滤波的语法元素。在此些实例中,帧内预测单元74无需计算边界关系值。代替地,帧内预测单元74可基于语法元素的值确定是否执行二次边界滤波。如相对于图2所论述,视频编码器(例如,视频编码器20)可计算边界关系值,并将边界关系值与阈值进行比较,以确定是否对特定所预测块执行二次边界滤波,接着编码指示所述确定的语法元素。因此,视频解码器30可解码所述语法元素,以确定是否对起因于相对水平或相对垂直的帧内预测模式的所预测块进行滤波。
逆量化单元76将提供于位流中且由熵解码单元70解码的经量化变换系数逆量化(即,去量化)。逆量化过程可包括(例如)如由H.264解码标准或即将到来的HEVC标准界定的常规过程。逆量化过程还可包含针对每一块使用由视频解码器30计算的量化参数QPY来确定量化程度以及同样地应应用的逆量化的程度。
逆变换单元58对变换系数应用逆变换(例如,逆DCT、逆整数变换,或概念上类似的逆变换过程),以便产生像素域中的残余块。运动补偿单元72产生经运动补偿的块,从而可能执行基于内插滤波器的内插。待用于具有子像素精度的运动估计的内插滤波器的识别符可包含于语法元素中。运动补偿单元72可使用如由视频编码器20在视频块的编码期间所使用的内插滤波器来计算参考块的子整数像素的经内插值。运动补偿单元72可根据所接收的语法元素来确定视频编码器20所使用的内插滤波器,且使用所述内插滤波器来产生预测块。
运动补偿单元72使用语法信息中的一些来确定用于编码经编码视频序列的帧的块的大小、描述经编码视频序列的帧的每一块如何分区的分区信息、指示如何编码每一分区的模式、用于每一经帧间编码的块或分区的一个或一个以上参考帧(以及参考帧列表),以及用以解码经编码视频序列的其它信息。或者,如上文所论述,帧内预测单元74可对视频数据块进行帧内预测。此外,帧内预测单元74可确定是否致使滤波单元84来对所预测块进行滤波,再次如上文所论述。
求和器80对残余块与由运动补偿单元72或帧内预测单元74产生的对应预测块进行求和以形成经解码块。更明确地说,根据本发明的技术,当帧内预测单元74产生所预测块且确定不执行二次边界滤波时,求和器80将残余块与对应的所预测块进行组合。另一方面,当帧内预测单元74产生所预测块且致使滤波单元84执行二次边界滤波时,求和器80将残余块与对应的经滤波所预测块进行组合。如果需要的话,还可应用去块滤波器来对经解码块进行滤波,以便去除成块性假影。应理解,去块滤波器与本发明的二次边界滤波过程分开。接着将经解码的视频块存储在参考帧存储器82中,参考帧存储器82提供用于后续运动补偿或帧内预测的参考块,且还产生用于在显示装置(例如,图1的显示装置32)上呈现的经解码视频。
以此方式,视频解码器30表示经配置以进行以下动作的视频译码器的实例:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
图4是说明HEVC中的各种帧内预测模式方向的概念图。通常使用圆括号中的数字识别符以及与垂直(v)或水平(h)的相对偏移来致使帧内预测模式。在此实例中,跳过模式(2),因为模式(2)通常对应于DC预测模式,其为非定向的。其它非定向帧内预测模式(例如平面模式)也从图4省略。
在图4的实例中,可将定向帧内预测模式指示为相对水平或相对垂直。在此实例中,相对于水平指示的模式(例如,h+n,其中n∈[0,8])被称为相对水平的,而相对于垂直指示的模式(例如,v+n,其中n∈[0,8])被称为相对垂直的。其它定向模式被称为相对对角的,且由具有虚线的箭头表示。此些相对对角的帧内预测模式包含界定为h-n(其中n∈[1,7])和v-n(n∈[1,8])的模式。
对于定向帧内预测模式(包含相对水平、相对垂直以及相对对角),在相对水平的模式(HOR到HOR+8)的情况下且对于相对对角的模式(包含模式(HOR-1到HOR-7)),将二次边界界定为顶部帧内PU边界,且对于相对垂直模式(VER到VER+8)且对于相对对角模式(包含模式(VER-1到VER-8)),将二次边界界定为侧(左)帧内PU边界。一般来说,为了确定是否执行二次边界滤波,边界彼此或与预测单元的像素的比较对应于分析当前块与相邻的先前经译码块(例如,当前块左侧或上方的块)之间的边界的数据。
因此,对边界关系的参考应理解为包含当前块与相邻的先前经译码块之间的两个边界之间的数学关系,或当前块与相邻的先前经译码块之间的两个边界中的一者与当前块的像素值(例如,当前块的PU的像素值)之间的数学关系此些数学关系可包含例如拉普拉斯计算和梯度差计算。
图5A和5B是说明基于拉普拉斯计算参考边界样本之间的边界关系的概念图。图5A说明包含像素106A到106P(像素106)的块100。块100与由像素104A到104D(像素104)界定的顶侧边界以及由像素102A到102D界定的左侧边界相邻。在此实例中,块100为4x4块,意味着块100具有4个像素的高度和4个像素的宽度。可使用坐标(i,j)来指代像素106,其中i和j在[0,3]中。因此,块100的高度和宽度可由N表示,其中N=3。明确地说,块100的高度和宽度为N+1(且因此,在此实例中为4)。类似地,图5B的块110包含像素116A到116P,且与由像素114A到114D(像素114)界定的顶侧边界以及由像素112A到112D(像素112)界定的左侧边界相邻。如同块100,图5B的块110为4x4块。
图5A和5B中的箭头表示用于块100、110的帧内预测方向。在这些实例中,使用相对水平的预测方向来预测块100,而使用相对垂直的预测方向来预测块110。因此,块100的一次边界为由像素102界定的左侧边界,而块100的二次边界为由像素104界定的顶侧边界。另一方面,块110的一次边界为由像素114界定的顶侧边界,而块110的二次边界为由像素112界定的左侧边界。
顶部参考边界样本(在图5A中由像素104且在图5B中由像素114界定)还可由TR[i](i=0…N)表示,且侧参考边界样本(图5A中的像素102以及图5B中的像素112)由SR[i](i=0…N)表示。在这些实例中,“边界样本”为当前块的边界的像素值,而所述边界包含相对于当前块的相邻、先前经译码块的像素。帧内PU样本(即,PU的所预测像素值,例如图5A中的像素106以及图5B中的像素116)由表示P[k,l](k,l=0…N)。以下伪码在定向帧内预测模式的情况下基于拉普拉斯说明参考边界样本之间的关系的实例计算:
在此伪码中,针对两个相邻参考边界位置(即定中心在TR[N-1]和TR[N-2]或SR[N-1]和SR[N-2]周围)计算拉普拉斯的绝对值。一般来说,可针对至少一个位置计算拉普拉斯,且在多个位置的情况下,所述位置可沿参考边界位置稀疏分布或相邻。此外,所述技术可从一个参考边界线扩展到多个参考边界线。
因此,在图5A的实例中,对于块100,可将拉普拉斯值计算为:
max(|像素104B-2*像素104C+像素104D|,|像素104A-2*像素104B+像素104C)。
同样地,在图5B的实例中,对于块110,可将拉普拉斯值计算为:
max(|像素112B-2*像素112C+像素112D|,|像素112A-2*像素112B+像素112C|)。
在非定向DC和平面帧内预测模式的情况下,“二次”边界可由顶部和侧部(左侧)帧内PU边界两者界定。以下伪码说明实例解决方案:
可使用基于梯度差的替代数学关系。这用针对定向帧内预测模式的以下伪码来说明:
类似于基于拉普拉斯的关系,对于DC和平面帧内模式,可因此处理两个边界。在一般情况下,可计算至少一个梯度差,且在多个梯度差的情况下,其可沿帧内PU边界稀疏定位,或彼此邻近。此外,可将梯度差扩展到多个参考边界线,且扩展到TR[i]与SR[i]样本之间的梯度差。另一扩展可为包含来自整个帧内PU和参考边界的样本。
此外,每一二次边界滤波技术(滤波、基于梯度、双向等)可具有其自己的专有保护逻辑和用于启用或停用所述技术的阈值。每一定向或非定向帧内预测模式可具有其自己的专有保护逻辑以及用于启用或停用适当的二次边界滤波技术的阈值。可使用表格来查找什么二次边界滤波技术适用于每一定向或非定向帧内预测模式,以及启用或停用所述二次边界滤波技术的阈值(对应于适当的保护逻辑)。或者,可通过编码器将此信息用信号通知给解码器(例如,由视频编码器20通知给视频解码器30)。因此,在各种实例中,编码器可用信号向解码器通知是否执行二次边界滤波或用于确定是否执行二次边界滤波的准则。在其它实例中,视频解码器可先验地配置有用于确定是否执行二次边界滤波的准则。
图6是说明用于编码当前块的实例方法的流程图。当前块可包括当前CU或当前CU的一部分。尽管相对于视频编码器20(图1和2)描述,但应理解,其它装置可经配置以执行与图6的方法类似的方法。
在此实例中,视频编码器20最初使用帧内预测来预测当前块(120)。举例来说,视频编码器20可计算当前块的一个或一个以上预测单元(PU)。根据本发明的技术,视频编码器20可使用帧内预测模式(例如,相对水平或相对垂直帧内预测模式)来预测当前块。在一些实例中,视频编码器20可使用相对对角帧内预测模式或非定向帧内预测模式(例如,DC或平面模式)来预测当前块。
视频编码器20可接着确定是否执行二次边界滤波(122)。下文相对于图8更详细地描述用于确定是否执行二次边界滤波的实例方法。如果确定二次边界滤波,那么视频编码器20可接着对所预测块进行滤波(124)。就是说,帧内预测单元46可形成所预测块,且滤波单元66(图2)可使用沿二次边界的像素的值来对所预测块的值进行滤波。
视频编码器20可接着计算当前块的残余块,例如以产生变换单元(TU)(126)。为了计算残余块,视频编码器20可计算原始的未经译码块与当前块的所预测块之间的差。明确地说,根据本发明的技术,当未确定二次边界滤波时,视频编码器20可将残余块计算为原始块与所预测块之间的差,且当确定二次边界滤波时,计算为原始块与经滤波所预测块之间的差。
视频编码器20可接着变换并量化残余块的系数(128)。接下来,视频编码器20可扫描残余块的经量化变换系数(130)。在扫描期间,或在扫描之后,视频编码器20可对系数进行熵编码(132)。举例来说,视频编码器20可使用CAVLC或CABAC来编码所述系数。视频编码器20可接着输出所述块的经熵译码数据(134)。
以此方式,图6的方法表示包含以下各项的方法的实例:对视频数据块进行帧内预测;使用沿所述块的一次边界的像素的值来形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;以及响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
图7是说明用于解码当前视频数据块的实例方法的流程图。当前块可包括当前CU或当前CU的一部分。尽管相对于视频解码器30(图1和3)来描述,但应理解,其它装置可经配置以执行与图7的方法类似的方法。
视频解码器30可使用帧内预测来预测当前块(140),以计算当前块的所预测块。举例来说,视频解码器30可计算当前块的一个或一个以上预测单元(PU)。明确地说,视频解码器30可对当前块的帧内预测模式指示进行熵解码。根据本发明的技术,视频解码器30可使用帧内预测模式(例如,相对水平或相对垂直帧内预测模式)来预测当前块。在一些实例中,视频解码器30可使用相对对角帧内预测模式或非定向帧内预测模式(例如,DC或平面模式)来预测当前块。
视频解码器30可接着确定是否执行二次边界滤波(142)。下文相对于图8更详细地描述用于确定是否执行二次边界滤波的实例方法。如果确定二次边界滤波,那么视频解码器30可接着对所预测块进行滤波(144)。就是说,帧内预测单元74可形成所预测块,且滤波单元84(图3)可使用沿二次边界的像素的值来对所预测块的值进行滤波。
视频解码器30还可接收来自当前块的经熵译码的数据,例如对应于当前块的残余块的系数的经熵译码的数据(146)。视频解码器30可对经熵译码的数据进行熵解码,以再现残余块的系数(148)。视频解码器30可接着逆扫描再现的系数(150),以创建经量化变换系数块。视频解码器30可接着逆量化和逆变换所述系数以产生残余块(152)。视频解码器30可最终通过将所预测块与残余块进行组合来解码当前块(154)。明确地说,当未确定二次边界滤波时,视频解码器30可将残余块与所预测块进行组合。另一方面,当确定二次边界滤波时,视频解码器30可将残余块与经滤波的所预测块进行组合。
以此方式,图7的方法表示包含以下各项的方法的实例:对视频数据块进行帧内预测;使用沿所述块的一次边界的像素的值来形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;以及响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
图8是说明根据本发明的技术的用于确定是否执行二次边界滤波的实例方法的流程图。图8的方法可由视频编码器20(例如,帧内预测单元46)和/或视频解码器30(例如,帧内预测单元74),或其它视频数据处理装置来执行。出于实例的目的,相对于视频编码器20来描述图8的方法,但应理解,类似方法可由视频解码器30执行。在一些实例中,图8的方法的步骤162到168可对应于图6的方法的步骤122以及图7的方法的步骤142。
最初,视频编码器20可对视频数据块进行帧内预测(160)。举例来说,视频编码器20可选择帧内模式来用以编码视频数据块,接着随后解码经帧内译码的视频数据块。当执行图8的方法时,视频解码器30可使用所接收到的语法信息所执行的帧内模式来解码经译码的视频数据块。
在预测经帧内译码的视频数据块之后,视频编码器20可计算表示所述块的边界关系的值(162)。边界关系可包含一个边界与另一边界(例如,顶侧边界和左侧边界)或边界与帧内PU样本之间的数学关系。在一些实例中,边界关系可包括拉普拉斯值,而在其它实例中,边界关系可基于梯度差。
举例来说,如果使用相对水平的定向帧内预测模式来预测块,那么视频编码器20可从顶部相邻块中的像素的值计算拉普拉斯值。如图5A中所说明且相对于图5A所论述,例如,视频编码器20可将拉普拉斯值计算为|TR[N-2]-2*TR[N-1]+TR[N]|和|TR[N-3]-2*TR[N-2]+TR[N-1]|中的最大值。作为另一实例,如果使用相对垂直的帧内预测模式来预测块,那么视频编码器20可从左侧相邻块中的像素的值计算拉普拉斯值。如图5B中所说明且相对于图5B所论述,例如,视频编码器20可将拉普拉斯值计算为|SR[N-2]-2*SR[N-1]+SR[N]|和|SR[N-3]-2*SR[N-2]+SR[N-1]|中的最大值。
作为又一实例,可能已使用非定向帧内预测模式(例如DC或平面模式)来预测所述块。在一些实例中,当使用非定向模式来对块进行帧内预测时,视频编码器20可将拉普拉斯值计算为|TR[N-2]-2*TR[N-1]+TR[N]|、|TR[N-3]-2*TR[N-2]+TR[N-1]|、|SR[N-2]-2*SR[N-1]+SR[N]|和|SR[N-3]-2*SR[N-2]+SR[N-1]|中的最大值。
在其它实例中,视频编码器20可将基于梯度值的数学关系计算为边界关系。举例来说,对于相对水平的定向模式,视频编码器20可将梯度差值计算为|TR[N]-P[N,0]|、|TR[N-1]-P[N-1,0]|、|TR[N]-P[N-1,0]|和|TR[N-1]-P[N,0]|中的最大值,且对于相对垂直的定向模式,计算为|SR[N]-P[0,N]|、|SR[N-1]-P[0,N-1]|、|SR[N]-P[0,N-1]|和|SR[N-1]-P[0,N]|中的最大值。视频编码器20还可经配置以便以大体上类似于非定向模式的拉普拉斯值的方式计算用于非定向模式的梯度差值。
在计算代表边界关系的值(在本文中也称为边界关系值)之后,视频编码器20可确定所述值是否小于阈值(164)。如果所述值小于阈值(164的“是”分支),那么视频编码器20可启用二次边界滤波(166)。另一方面,如果所述值不小于(例如,等于或大于)阈值(164的“否”分支),那么视频编码器20可停用二次边界滤波(168)。大于或等于阈值的值可指示如果启用二次边界滤波,那么将使BD速率降级。以此方式,视频编码器20和/或视频解码器30可确定为经帧内预测的视频数据块启用还是停用二次边界滤波。
在一个或一个以上实例中,所描述的功能可以硬件、软件、固件或其任何组合来实施。如果以软件来实施,那么功能可作为一个或一个以上指令或代码存储在计算机可读媒体上或经由计算机可读媒体传输,且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体等有形媒体,或包含例如根据通信协议促进计算机程序从一处到另一处的传送的任何媒体的通信媒体。以此方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体,或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一个或一个以上计算机或一个或一个以上处理器存取以检索指令、代码和/或数据结构以供实施本发明中所描述的技术的任何可用媒体。计算机程序产品可包含计算机可读媒体。
作为实例(而非限制),所述计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,快闪存储器,或可用于存储呈指令或数据结构的形式的所要程序码且可由计算机存取的任何其它媒体。并且,任何连接均可恰当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤缆线、双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤缆线、双绞线、DSL或例如红外线、无线电及微波等无线技术包含于媒体的定义中。然而,应理解,计算机可读存储媒体和数据存储媒体不包含连接、载波、信号或其它暂时性媒体,而是针对非暂时性有形存储媒体。在本文中使用时,磁盘及光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。上文的组合也应包含在计算机可读媒体的范围内。
指令可由一个或一个以上处理器执行,例如一个或一个以上数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA),或其它等效集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指上述结构或适合于实施本文中所描述的技术的任一其它结构中的任一者。另外,在一些方面中,本文所述的功能性可提供于经配置以用于编码和解码的专用硬件和/或软件模块内,或并入在组合式编解码器中。并且,可将所述技术完全实施于一个或一个以上电路或逻辑元件中。
本发明的技术可在各种各样的装置或设备中实施,包含无线手持机、集成电路(IC)或一组IC(例如,芯片组)。本发明中描述各种组件、模块或单元,以强调经配置以执行所揭示技术的装置的功能方面,但不一定要求由不同硬件单元来实现。相反,如上文所述,各种单元可组合在编解码器硬件单元中,或由互操作硬件单元的集合提供,包含如上文所述的一个或一个以上处理器,结合合适的软件和/或固件。
已描述了各种实例。这些和其它实例在所附权利要求书的范围内。
Claims (38)
1.一种译码视频数据的方法,所述方法包括:
使用沿视频数据块的一次边界的像素的值来对所述块进行帧内预测以形成所预测块;
确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;以及
响应于确定对所述所预测块进行滤波,使用所述二次边界的数据来对所述所预测块进行滤波。
2.根据权利要求1所述的方法,其中确定是否使用所述二次边界的所述数据来对所述所预测块进行滤波包括计算表示边界关系的值。
3.根据权利要求2所述的方法,其中确定是否对所述所预测块进行滤波包括基于所述所计算值与阈值的比较来确定是否对所述所预测块进行滤波。
4.根据权利要求2所述的方法,其中所述值表示所述一次边界的一个或一个以上像素的像素值与所述二次边界的一个或一个以上像素的像素值之间的关系。
5.根据权利要求2所述的方法,其中所述值表示所述一次边界和所述二次边界中的至少一者的一个或一个以上像素的像素值与所述所预测块的一个或一个以上像素的像素值之间的关系。
6.根据权利要求2所述的方法,其中计算所述值包括计算拉普拉斯值。
7.根据权利要求6所述的方法,其中对所述块进行帧内预测包括使用相对水平的帧内预测模式来预测所述块,其中计算所述拉普拉斯值包括计算|TR[N-2]-2*TR[N-1]+TR[N]|和|TR[N-3]-2*TR[N-2]+TR[N-1]|的最大值,其中所述二次边界包括顶侧边界,其中TR[k]对应于沿所述顶部边界从所述块的左边缘开始的第k个像素,且其中N为表示所述块的宽度的整数值。
8.根据权利要求6所述的方法,其中对所述块进行帧内预测包括使用相对垂直的帧内预测模式来预测所述块,且其中计算所述拉普拉斯值包括计算|SR[N-2]-2*SR[N-1]+SR[N]|和|SR[N-3]-2*SR[N-2]+SR[N-1]|的最大值,其中所述二次边界包括左侧边界,其中SR[j]对应于沿所述左侧边界从所述块的顶部边缘开始的第j个像素,且其中N为表示所述块的高度的整数值。
9.根据权利要求6所述的方法,其中对所述块进行帧内预测包括使用非定向帧内预测模式来预测所述块,且其中计算所述拉普拉斯值包括计算|TR[N-2]-2*TR[N-1]+TR[N]|、|TR[N-3]-2*TR[N-2]+TR[N-1]|、|SR[N-2]-2*SR[N-1]+SR[N]|和|SR[N-3]-2*SR[N-2]+SR[N-1]|的最大值,其中TR[k]对应于沿顶侧边界从所述块的所述左边缘开始的所述第k个像素,其中SR[j]对应于沿左侧边界从所述块的所述顶部边缘开始的所述第j个像素,其中所述块包括正方形块,且其中N为表示所述块的宽度和高度的整数值。
10.根据权利要求9所述的方法,其中使用非定向帧内预测模式对所述块进行帧内预测包括使用DC模式和平面模式中的一者来预测所述块。
11.根据权利要求2所述的方法,其中计算所述值包括计算梯度差值。
12.根据权利要求11所述的方法,其中对所述块进行帧内预测包括使用相对水平的帧内预测模式来预测所述块,其中计算所述梯度差值包括计算|TR[N]-P[N,0]|、|TR[N-1]-P[N-1,0]|、|TR[N]-P[N-1,0]|和|TR[N-1]-P[N,0]|的最大值,其中所述二次边界包括顶侧边界,其中TR[k]对应于沿所述顶部边界从所述块的所述左边缘开始的所述第k个像素,其中N为表示所述块的宽度的整数值,且其中P[i,j]对应于所述所预测块的在位置[i,j]处的像素。
13.根据权利要求11所述的方法,其中对所述块进行帧内预测包括使用相对垂直的帧内预测模式来预测所述块,其中计算所述梯度差值包括计算|SR[N]-P[0,N]|、|SR[N-1]-P[0,N-1]|、|SR[N]-P[0,N-1]|和|SR[N-1]-P[0,N]|的最大值,其中SR[j]对应于沿所述左侧边界从所述块的所述顶部边缘开始的所述第j个像素,其中N为表示所述块的高度的整数值,且其中P[i,j]对应于所述所预测块的在位置[i,j]处的所述像素。
14.根据权利要求1所述的方法,其进一步包括:
响应于确定不对所述所预测块进行滤波而使用所述所预测块来译码所述块;以及
响应于确定对所述所预测块进行滤波而使用所述经滤波的所预测块来译码所述块。
15.根据权利要求14所述的方法,
其中使用所述所预测块来译码所述块包括使用所述所预测块来解码所述块,包括将经解码的残余值与所述所预测块相加,且
其中使用所述经滤波的所预测块来译码所述块包括使用所述经滤波的所预测块来解码所述块,包括将所述经解码的残余值与所述经滤波的所预测块相加。
16.根据权利要求14所述的方法,
其中帧内预测包括选择帧内预测模式用于所述块,以及使用所述选定的帧内预测模式来预测所述块,
其中使用所述所预测块来译码所述块包括使用所述所预测块来编码所述块,包括计算表示所述块与所述所预测块之间的差的残余值,且
其中使用所述经滤波的所预测块来译码所述块包括使用所述经滤波的所预测块来编码所述块,包括计算表示所述块与所述经滤波的所预测块之间的差的残余值。
17.根据权利要求1所述的方法,其进一步包括译码表示是否使用所述二次边界的数据来对所述所预测块进行滤波的语法信息。
18.一种用于译码视频数据的装置,所述装置包括视频译码器,其经配置以:使用沿视频数据块的一次边界的像素的值对所述块进行帧内预测以形成所预测块;确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;且响应于确定对所述所预测块进行滤波而使用所述二次边界的数据对所述所预测块进行滤波。
19.根据权利要求18所述的装置,其中为了确定是否使用所述二次边界的所述数据来对所述所预测块进行滤波,所述视频译码器经配置以计算表示边界关系的值。
20.根据权利要求19所述的装置,其中所述视频译码器经配置以基于所述所计算值与阈值的比较来确定是否对所述所预测块进行滤波。
21.根据权利要求19所述的装置,其中所述值表示所述一次边界的一个或一个以上像素的像素值与所述二次边界的一个或一个以上像素的像素值之间的关系以及所述一次边界和所述二次边界中的至少一者的一个或一个以上像素的像素值与所述所预测块的一个或一个以上像素的像素值之间的关系中的一者。
22.根据权利要求18所述的装置,其中为了计算所述值,所述视频译码器经配置以计算拉普拉斯值。
23.根据权利要求18所述的装置,其中为了计算所述值,所述视频译码器经配置以计算梯度差值。
24.根据权利要求18所述的装置,其中所述视频译码器进一步经配置以响应于确定不对所述所预测块进行滤波而使用所述所预测块来译码所述块,且响应于确定对所述所预测块进行滤波而使用所述经滤波的所预测块来译码所述块。
25.一种用于译码视频数据的装置,所述装置包括:
用于使用沿视频数据块的一次边界的像素的值来对所述块进行帧内预测以形成所预测块的装置;
用于确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波的装置;以及
用于响应于确定对所述所预测块进行滤波而使用所述二次边界的数据来对所述所预测块进行滤波的装置。
26.根据权利要求25所述的装置,其中所述用于确定是否使用所述二次边界的所述数据来对所述所预测块进行滤波的装置包括用于计算表示边界关系的值的装置。
27.根据权利要求26所述的装置,其中所述用于确定是否对所述所预测块进行滤波的装置包括用于基于所述所计算值与阈值的比较来确定是否对所述所预测块进行滤波的装置。
28.根据权利要求26所述的装置,其中所述值表示所述一次边界的一个或一个以上像素的像素值与所述二次边界的一个或一个以上像素的像素值之间的关系以及所述一次边界和所述二次边界中的至少一者的一个或一个以上像素的像素值与所述所预测块的一个或一个以上像素的像素值之间的关系中的一者。
29.根据权利要求25所述的装置,其中所述用于计算所述值的装置包括用于计算拉普拉斯值的装置。
30.根据权利要求25所述的装置,其中所述用于计算所述值的装置包括用于计算梯度差值的装置。
31.根据权利要求25所述的装置,其进一步包括:
用于响应于确定不对所述所预测块进行滤波而使用所述所预测块来译码所述块的装置;以及
用于响应于确定对所述所预测块进行滤波而使用所述经滤波的所预测块来译码所述块的装置。
32.一种计算机可读存储媒体,其上存储有指令,所述指令在被执行时致使处理器:
使用沿视频数据块的一次边界的像素的值来对所述块进行帧内预测以形成所预测块;
确定是否使用所述块的二次边界的数据来对所述所预测块进行滤波;以及
响应于确定对所述所预测块进行滤波,使用所述二次边界的数据来对所述所预测块进行滤波。
33.根据权利要求32所述的计算机可读存储媒体,其中所述致使所述处理器确定是否使用所述二次边界的所述数据来对所述所预测块进行滤波的指令包括致使所述处理器计算表示边界关系的值的指令。
34.根据权利要求33所述的计算机可读存储媒体,其中所述致使所述处理器确定是否对所述所预测块进行滤波的指令包括致使所述处理器基于所述所计算值与阈值的比较来确定是否对所述所预测块进行滤波的指令。
35.根据权利要求33所述的计算机可读存储媒体,其中所述值表示所述一次边界的一个或一个以上像素的像素值与所述二次边界的一个或一个以上像素的像素值之间的关系以及所述一次边界和所述二次边界中的至少一者的一个或一个以上像素的像素值与所述所预测块的一个或一个以上像素的像素值之间的关系中的一者。
36.根据权利要求32所述的计算机可读存储媒体,其中所述致使所述处理器计算所述值的指令包括致使所述处理器计算拉普拉斯值的指令。
37.根据权利要求32所述的计算机可读存储媒体,其中所述致使所述处理器计算所述值的指令包括致使所述处理器计算梯度差值的指令。
38.根据权利要求32所述的计算机可读存储媒体,其进一步包括致使所述处理器进行以下操作的指令:
响应于确定不对所述所预测块进行滤波而使用所述所预测块来译码所述块;以及
响应于确定对所述所预测块进行滤波而使用所述经滤波的所预测块来译码所述块。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161556038P | 2011-11-04 | 2011-11-04 | |
US61/556,038 | 2011-11-04 | ||
US13/666,610 | 2012-11-01 | ||
US13/666,610 US9282344B2 (en) | 2011-11-04 | 2012-11-01 | Secondary boundary filtering for video coding |
PCT/US2012/063276 WO2013067320A1 (en) | 2011-11-04 | 2012-11-02 | Secondary boundary filtering for video coding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104041045A true CN104041045A (zh) | 2014-09-10 |
CN104041045B CN104041045B (zh) | 2017-10-31 |
Family
ID=47192161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280053654.XA Active CN104041045B (zh) | 2011-11-04 | 2012-11-02 | 用于视频译码的二次边界滤波 |
Country Status (6)
Country | Link |
---|---|
US (2) | US9282344B2 (zh) |
EP (1) | EP2774368B1 (zh) |
JP (1) | JP5833250B2 (zh) |
KR (1) | KR101589852B1 (zh) |
CN (1) | CN104041045B (zh) |
WO (1) | WO2013067320A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107801024A (zh) * | 2017-11-09 | 2018-03-13 | 北京大学深圳研究生院 | 一种用于帧内预测的边界滤波方法 |
US10728548B2 (en) | 2017-04-04 | 2020-07-28 | Futurewei Technologies, Inc. | Processing reference samples used for intra-prediction of a picture block |
CN113612997A (zh) * | 2015-09-29 | 2021-11-05 | 高通股份有限公司 | 针对视频译码使用与位置相关的预测组合的改进视频帧内预测 |
CN114339225A (zh) * | 2016-09-05 | 2022-04-12 | Lg电子株式会社 | 图像编码和解码装置及比特流存储介质和发送装置 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110113561A (ko) * | 2010-04-09 | 2011-10-17 | 한국전자통신연구원 | 적응적인 필터를 이용한 인트라 예측 부호화/복호화 방법 및 그 장치 |
US9282344B2 (en) | 2011-11-04 | 2016-03-08 | Qualcomm Incorporated | Secondary boundary filtering for video coding |
US8660374B1 (en) * | 2011-12-23 | 2014-02-25 | Massachusetts Institute Of Technology | Selecting transform paths for compressing visual data |
EP3078194B1 (en) * | 2014-01-02 | 2019-09-11 | HFI Innovation Inc. | Method and apparatus for intra prediction coding with boundary filtering control |
US9438923B2 (en) * | 2014-06-05 | 2016-09-06 | Blackberry Limited | Apparatus and method to support encoding and decoding video data |
WO2017030270A1 (ko) * | 2015-08-17 | 2017-02-23 | 엘지전자(주) | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
GB2557809B (en) | 2015-08-28 | 2021-12-01 | Kt Corp | Method and device for processing video signal |
KR102437109B1 (ko) * | 2015-11-11 | 2022-08-26 | 삼성전자주식회사 | 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치 |
CA3005417A1 (en) | 2015-11-17 | 2017-05-26 | Huawei Technologies Co., Ltd. | Method and apparatus for video coding |
CN107896330B (zh) * | 2017-11-29 | 2019-08-13 | 北京大学深圳研究生院 | 一种用于帧内和帧间预测的滤波方法 |
KR20240125065A (ko) * | 2017-12-08 | 2024-08-19 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 이미지 인코딩 장치, 이미지 디코딩 장치, 이미지 인코딩 방법 및 이미지 디코딩 방법 |
CN108492370B (zh) * | 2018-03-02 | 2020-05-22 | 中国地质大学(武汉) | 基于TV和各向异性Laplacian正则项的三角网格滤波方法 |
JP7473478B2 (ja) * | 2018-06-18 | 2024-04-23 | インターデジタル ヴイシー ホールディングス, インコーポレイテッド | イントラ予測におけるplanarモード及びdcモードの境界フィルタリング |
US11140388B2 (en) * | 2019-09-06 | 2021-10-05 | Tencent America LLC | Method and apparatus for non-linear loop filtering |
CN113612992B (zh) * | 2021-07-01 | 2023-11-03 | 杭州未名信科科技有限公司 | 一种针对avs3硬件编码器的快速帧内编码单元的编码方法 |
US11917144B2 (en) * | 2021-09-29 | 2024-02-27 | Mediatek Inc. | Efficient in-loop filtering for video coding |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682781A (zh) * | 2008-01-18 | 2010-03-24 | 松下电器产业株式会社 | 图像编码方法以及图像解码方法 |
US20110200100A1 (en) * | 2008-10-27 | 2011-08-18 | Sk Telecom. Co., Ltd. | Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium |
WO2011134641A1 (en) * | 2010-04-26 | 2011-11-03 | Panasonic Corporation | Filtering mode for intra prediction inferred from statistics of surrounding blocks |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6236764B1 (en) * | 1998-11-30 | 2001-05-22 | Equator Technologies, Inc. | Image processing circuit and method for reducing a difference between pixel values across an image boundary |
US7457362B2 (en) | 2003-10-24 | 2008-11-25 | Texas Instruments Incorporated | Loop deblock filtering of block coded video in a very long instruction word processor |
KR101379255B1 (ko) * | 2007-04-06 | 2014-03-28 | 삼성전자주식회사 | 미분 방정식을 이용한 인트라 예측 부호화, 복호화 방법 및장치 |
KR100973657B1 (ko) | 2007-11-01 | 2010-08-02 | 경희대학교 산학협력단 | 디블록킹 필터링을 포함하는 코덱 사이의 트랜스코딩 방법 및 장치 |
FR2923637A1 (fr) * | 2007-11-09 | 2009-05-15 | Canon Kk | Procede, dispositif d'identification d'un ensemble de pixels dont les valeurs sont destinees a etre utilisees pour determiner la valeur d'un pixel |
CN102342104B (zh) * | 2009-03-06 | 2015-07-01 | 汤姆森特许公司 | 预测图像数据块的方法、实现所述方法的解码和编码设备 |
KR101749269B1 (ko) | 2009-06-30 | 2017-06-22 | 삼성전자주식회사 | 적응적인 인루프 필터를 이용한 동영상 부호화와 복호화 장치 및 그 방법 |
CA2785036A1 (en) | 2010-02-05 | 2011-08-11 | Telefonaktiebolaget L M Ericsson (Publ) | De-blocking filtering control |
US9185430B2 (en) | 2010-03-15 | 2015-11-10 | Mediatek Singapore Pte. Ltd. | Deblocking filtering method and deblocking filter |
KR20110113561A (ko) | 2010-04-09 | 2011-10-17 | 한국전자통신연구원 | 적응적인 필터를 이용한 인트라 예측 부호화/복호화 방법 및 그 장치 |
EP2559239A2 (en) * | 2010-04-13 | 2013-02-20 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus for intra predicting a block, apparatus for reconstructing a block of a picture, apparatus for reconstructing a block of a picture by intra prediction |
LT3661201T (lt) * | 2011-07-19 | 2021-04-12 | Tagivan Ii Llc | Filtravimo būdas, vaizdo dekodavimo būdas, vaizdo kodavimo būdas, vaizdo dekodavimo aparatas, vaizdo kodavimo aparatas ir vaizdo kodavimo/dekodavimo aparatas |
US9161046B2 (en) * | 2011-10-25 | 2015-10-13 | Qualcomm Incorporated | Determining quantization parameters for deblocking filtering for video coding |
US9282344B2 (en) | 2011-11-04 | 2016-03-08 | Qualcomm Incorporated | Secondary boundary filtering for video coding |
-
2012
- 2012-11-01 US US13/666,610 patent/US9282344B2/en active Active
- 2012-11-02 CN CN201280053654.XA patent/CN104041045B/zh active Active
- 2012-11-02 JP JP2014540126A patent/JP5833250B2/ja not_active Expired - Fee Related
- 2012-11-02 WO PCT/US2012/063276 patent/WO2013067320A1/en active Application Filing
- 2012-11-02 KR KR1020147015016A patent/KR101589852B1/ko not_active IP Right Cessation
- 2012-11-02 EP EP12788016.9A patent/EP2774368B1/en not_active Not-in-force
-
2016
- 2016-03-04 US US15/061,818 patent/US9838718B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101682781A (zh) * | 2008-01-18 | 2010-03-24 | 松下电器产业株式会社 | 图像编码方法以及图像解码方法 |
US20110200100A1 (en) * | 2008-10-27 | 2011-08-18 | Sk Telecom. Co., Ltd. | Motion picture encoding/decoding apparatus, adaptive deblocking filtering apparatus and filtering method for same, and recording medium |
WO2011134641A1 (en) * | 2010-04-26 | 2011-11-03 | Panasonic Corporation | Filtering mode for intra prediction inferred from statistics of surrounding blocks |
Non-Patent Citations (1)
Title |
---|
J. LAINEMA: "Directional intra prediction smoothing", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113612997A (zh) * | 2015-09-29 | 2021-11-05 | 高通股份有限公司 | 针对视频译码使用与位置相关的预测组合的改进视频帧内预测 |
CN114339225A (zh) * | 2016-09-05 | 2022-04-12 | Lg电子株式会社 | 图像编码和解码装置及比特流存储介质和发送装置 |
CN114339225B (zh) * | 2016-09-05 | 2024-06-04 | 罗斯德尔动力有限责任公司 | 图像编码和解码装置及比特流存储介质和发送装置 |
US10728548B2 (en) | 2017-04-04 | 2020-07-28 | Futurewei Technologies, Inc. | Processing reference samples used for intra-prediction of a picture block |
CN107801024A (zh) * | 2017-11-09 | 2018-03-13 | 北京大学深圳研究生院 | 一种用于帧内预测的边界滤波方法 |
CN107801024B (zh) * | 2017-11-09 | 2019-07-12 | 北京大学深圳研究生院 | 一种用于帧内预测的边界滤波方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20140098768A (ko) | 2014-08-08 |
US9838718B2 (en) | 2017-12-05 |
CN104041045B (zh) | 2017-10-31 |
KR101589852B1 (ko) | 2016-01-28 |
US9282344B2 (en) | 2016-03-08 |
WO2013067320A1 (en) | 2013-05-10 |
EP2774368B1 (en) | 2016-01-06 |
US20130114708A1 (en) | 2013-05-09 |
EP2774368A1 (en) | 2014-09-10 |
US20160191951A1 (en) | 2016-06-30 |
JP5833250B2 (ja) | 2015-12-16 |
JP2014535224A (ja) | 2014-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104041045A (zh) | 用于视频译码的二次边界滤波 | |
CN102783149B (zh) | 用于视频译码的适应性运动分辨率 | |
CN103190147B (zh) | 用于视频译码的语法元素的联合译码方法及设备 | |
CN103026709B (zh) | 用于视频译码的帧间预测模式和参考图片列表索引的译码 | |
US20170201770A1 (en) | Adaptive transform size selection for geometric motion partitioning | |
KR101618021B1 (ko) | 인트라 예측 모드들의 서브세트 및 대응하는 방향 변환들을 이용한 비디오 코딩 | |
CN103299620B (zh) | 在视频译码中使用最可能扫描次序对用于视频块的扫描次序信息进行有效译码 | |
CN104737537A (zh) | 用于可缩放视频译码的加权预测模式 | |
CN103703781A (zh) | 使用自适应运动向量分辨率的视频译码 | |
JP2014209743A (ja) | 幾何学的動き区分のための固定小数点実装形態 | |
CN103891279A (zh) | 用于帧内预测译码的最大概率变换 | |
CN103535034A (zh) | 用于视频译码的对块效应假影的滤波 | |
CN104303501A (zh) | 用于视频译码的量化矩阵和解块滤波器 | |
CN105532007A (zh) | 在视频译码中用于非亮度分量的自适应解块滤波 | |
CN103141100A (zh) | 用于视频译码的帧内平滑滤波器 | |
CN103718552A (zh) | 用于视频译码的对非正方形块的解块 | |
CN103597832A (zh) | 用于使用相邻模式的视频译码的增强的帧内预测模式信令 | |
CN103202016A (zh) | 用于视频译码的自适应运动向量分辨率信令 | |
CN103238322A (zh) | 在视频译码中单独地译码视频块的最后有效系数的位置 | |
CN104012096A (zh) | 执行视频译码的运动向量预测 | |
CN103339938A (zh) | 执行视频译码的运动向量预测 | |
CN103947205A (zh) | 帧内模式译码中的参考模式选择 | |
CN104604224A (zh) | 可缩放视频译码中的变换基底调整 | |
CN103918263A (zh) | 用于扫描视频编译中的矩形变换的设备和方法 | |
CN104247417A (zh) | 用于视频译码中的解块滤波器的β偏移控制 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |