CN103051892A - 内嵌式回路滤波方法以及内嵌式回路滤波装置 - Google Patents
内嵌式回路滤波方法以及内嵌式回路滤波装置 Download PDFInfo
- Publication number
- CN103051892A CN103051892A CN2012103892406A CN201210389240A CN103051892A CN 103051892 A CN103051892 A CN 103051892A CN 2012103892406 A CN2012103892406 A CN 2012103892406A CN 201210389240 A CN201210389240 A CN 201210389240A CN 103051892 A CN103051892 A CN 103051892A
- Authority
- CN
- China
- Prior art keywords
- pixel column
- except
- level
- block
- pixel
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供一种用于重建后的影像数据的内嵌式回路处理方法以及装置,该重建后的影像数据分割为多个影像单元。横跨多个垂直影像单元边界的该重建后的影像数据会进行水平除区块,多个水平影像单元边界的每一侧的水平除区块处理后的影像数据的n个像素进行垂直除区块。该n个重建后的像素列的至少其一进行水平除区块以产生像素列pn-1的至少一水平除区块处理后的像素列,以及基于像素列pn-1的该水平除区块处理后的像素列来对像素列pn的至少一水平除区块处理后的像素列进行取样点自适应性偏移处理。上述步骤会在目前影像单元以下的相邻影像单元到达前执行。
Description
技术领域
本发明所揭露的实施例是相关于一影像编码系统(video coding system),尤指一种相关于一影像编码器或是解码器的内嵌式回路滤波器的实作的方法以及装置。
背景技术
移动估测(motion estimation)是一种利用连续影像中的时间域冗余(temporalredundancy)的高效率图框间(inter frame)编码机制。移动补偿(motion-compensated)的图框间编码被广泛地使用于多种国际影像编码标准当中。多种编码标准通常采用以区块(block)为基础单元的移动估测技术,其中针对每一巨集区块(macroblock)或是类似区块设定会决定出移动信息(motion information),例如编码模式(coding mode)以及移动向量(motion vector)。除此之外,亦可以自适应的(adaptive)方式来采用图框内编码(intra-coding),即仅处理单张图框(frame)而不参考其他图框。图框间预测(inter-predicted)或是图框内预测(intra-predicted)的残值(residue)通常会另外经由转换(transformation)、量化(quantization)以及熵编码(entropycoding)来产生一压缩影像位流。在编码处理的过程中会产生编码失真(coding artifact),特别是在量化的处理的时候,因此,为了减轻编码失真的效应,在一些较新的编码系统中,会另外采用额外的处理予重建后的影像以加强画面的品质,一般来说,会将上述的额外的处理内嵌在一回路处理中,如此一来,编码器以及解码器便可以利用同样的参考画面来使系统表现获得改善。
随着高效能影像编码标准(High Efficiency Video Coding,HEVC)的发展,除区块滤波器(deblocking filter,DF)、取样点自适应性偏移(sample adaptive offset,SAO)以及自适应性回路滤波器(adaptive loop filter,ALF)都被使用来加强画面的品质。内嵌式回路滤波器信息可能需要被纳入在位流中,以使解码器能够正常地回复(recover)所需的信息。因此,通常来自取样点自适应性偏移以及自适应性回路滤波器的内嵌式回路滤波器信息会被输入至熵编码器中以纳入位流。在高效能影像编码标准中,除区块滤波器是被使用于重建后的影像,首先水平除区块滤波器会处理跨越垂直区块边界的重建后的影像数据,接着垂直除区块滤波器会处理跨越水平区块边界的经由水平除区块滤波器处理后的影像数据。在进行完水平除区块滤波以及垂直除区块滤波之后,再对经过完整除区块滤波处理过的影像数据进行取样点自适应性偏移,接下来再对取样点自适应性偏移完的影像数据进行自适应性回路滤波处理。高效能影像编码标准中的回路处理的顺序是为除区块滤波器、取样点自适应性偏移以及自适应性回路滤波器,然而在其他影像系统中,依据不同的回路滤波器,上述处理顺序则可以有不同的先后顺序。
图1为具有内嵌式回路处理的一示范性自适应性影像编码系统的示意图。影像位流经由影像解码器142解码来回复转换后以及量化后的残值、取样点自适应性偏移/自适应性回路滤波器信息以及其他系统信息。编码过的残值通过反量化(inverse quantization,IQ)124以及反转换(inverse transformation,IT)126来回复该残值。该回复的残值接着会被加回至重建器128中的预估数据136以产生重建后的影像数据。一切换器114会视基础的影像数据是采用一图框内预测模式(intra mode)或是一图框间模式(inter mode)的编码,而从图框内预测区块(intra prediction block)110或是移动补偿区块113中选择该预估数据。最后,重建的影像另经由除区块滤波器130、取样点自适应性偏移器131以及自适应性回路滤波器132来产生强化后的解码影像。强化及重建后的影像数据会被储存在参考画面缓冲器134,并用来作为其他图框的预估之用。
高效能影像编码标准中的编码处理是依据最大编码单元(largest coding unit,LCU)来进行,经由使用四分树(quadtree)可以使最大编码单元被自适应性地分割为多个编码单元,在每一叶节点(leaf)编码单元中,对每一8x8区块边界来进行除区块滤波处理,并且在高效能影像编码标准的测试系统模型版本4.0(HM-4.0)中,亦对8x8区块边界进行除区块滤波处理。对每一8x8区块来说,首先会跨越垂直区块边界进行水平滤波,接着会跨越水平区块边界进行垂直滤波。一般而言,编码处理可以将一画面分割为多个影像单元(image unit),并且自适应性地来为每一影像单元选择编码参数,而该影像单元可以是一最大编码单元、一巨集区块、一影像切片(slice)、一影像块(tile)或是其他影像结构。在处理一亮度区块边界(luma block boundary)的期间,每一边的n个像素都和滤波器参数的推导有关,且在滤波处理过后,每一边最多可以改变m个像素。对高效能影像编码标准来说,亮度成分的n是设定为4,对跨越垂直区块边界的水平滤波而言,重建后的像素(即未经过除区块滤波处理的像素)是用于滤波器参数的推导,并且亦可当作来源像素(source pixel)来进行滤波处理。如图1所示,内嵌于回路中的第一个滤波元件是除区块滤波器130,除区块滤波器130是用来处理重建后的影像数据,尽管如此,在一影像系统中,可以在除区块滤波处理程序之前先处理重建后的影像数据以产生处理后的重建后的影像数据,在这样的状况下,除区块滤波器所处理的是为处理后的重建后的影像数据。于此说明书内容中,经过除区块滤波处理之前的影像数据是指紧接该除区块滤波处理之前的影像数据,可以是该重建后的影像数据或是该处理后的重建后的影像数据。为了方便起见,在此说明书内容中,该重建后的影像数据亦包括该处理后的重建后的影像数据。
图2A为每一侧具有n(n=4)个边界像素的一垂直区块边界210的范例的示意图。右侧的n个边界像素是标记为q0、q1、q2以及qn-1,其中q0是紧邻边界的像素。左侧的n(n=4)个边界像素是标记为p0、p1、p2以及pn-1,其中p0是紧邻边界的像素。关于跨越垂直区块边界的水平滤波处理,重建后的像素(即未经过除区块滤波处理的像素)是用于滤波器参数的推导,而水平除区块像素(即经过水平滤波处理的像素)是用作垂直滤波。图2B为每一侧具有n(n=4)个边界像素的一水平区块边界220的范例的示意图。下侧的n个边界像素是标记为q0、q1、q2以及qn-1,其中q0是紧邻边界的像素。上侧的n(n=4)个边界像素是标记为p0、p1、p2以及pn-1,其中p0是紧邻边界的像素。该区块边界的每一侧的n个像素是用作滤波器参数的推导以及滤波操作,除区块滤波仅改变该区块边界的每一侧的m个像素,其中m等于或是小于n。在高效能影像编码标准中,将亮度成分的m设定为3,因此,在除区块滤波处理之后仅有边界像素(q0到qm-1)或是(p0到pm-1)会有变化。对一彩度区块边界(chroma block boundary)的除区块滤波处理来说,每一侧上的两个像素(即n=2),即(p0以及p1)或是(q0以及q1),是相关于滤波器参数的推导,且每一侧上的至少一像素(即m=1),即p0或是q0,在除区块滤波处理之后会有变化。对跨越垂直区块边界的水平滤波处理而言,重建后的像素是用作滤波器参数的推导以及作为滤波处理的来源像素。对跨越水平区块边界的垂直滤波处理而言,水平除区块滤波处理后的中间像素(即水平滤波处理后的像素)是用作滤波器参数的推导以及作为滤波处理的来源像素。
如图1所示,在高效能影像编码标准的测试系统模型版本4.0(HM-4.0)中亦采用取样点自适应性偏移器131。取样点自适应性偏移被视为滤波处理的一特殊案例,其仅针对一个像素来作处理。处理取样点自适应性偏移能够将一画面分割为多个最大编码单元对齐区域(LCU-aligned region),且每一区域都能够在两个带状偏移(band offset,BO)类型、四个边缘偏移(edge offset,EO)类型以及不处理(关闭)之间选择一个取样点自适应性偏移类型。对每一待处理(亦称作待滤波)的像素而言,带状偏移使用像素强度(pixel intensity)来将像素分类至一能带,如图3所示,像素强度的范围可以平均被分为32个能带,在像素被分类完之后,可以为每一能带中的所有像素导出一偏移量,且中间16个能带或是外侧16个能带的偏移量会被选取并编码。在取样点自适应性偏移的处理当中,首先进行像素的分类以将像素分类为不同的若干组(亦称为类别),如图4所示,每一像素的像素分类是依据一3x3窗,其中对应0°、90°、135°以及45°的四组配置被用来作为分类之用。在对一画面或是一区域中的所有像素的分类后,每一像素组中可得到一偏移量并将其传送出去。在高效能影像编码标准的测试系统模型版本4.0中,取样点自适应性偏移是被使用在亮度成分以及彩度成分,且每一亮度成分都是独立处理。和带状偏移相似,可以由除了类别0之外的每一类别的所有像素得到一偏移,其中类别0会强制使用0偏移(zero offset)。以下表1列出了边缘偏移(EO)像素的分类,其中C代表要被分类的像素。
表1.
类别 | 情况 |
1 | C<两相邻像素 |
2 | C<一相邻像素&&C==一相邻像素 |
3 | C>一相邻像素&&C==一相邻像素 |
4 | C>两相邻像素 |
0 | 以上皆非 |
如图1所示,在高效能影像编码标准的测试系统模型版本4.0中,内嵌于回路中的另一个滤波元件是为自适应性回路滤波器132。自适应性回路滤波器132亦是用来增强画面品质,使用了多种类型的亮度滤波器足印(footprint)以及彩度滤波器足印,举例来说,图5A所示为一11x5的十字型滤波器(cross shaped filter)的示意图,而图5B中所示为一5x5的雪片型滤波器(snow-flake shaped filter)的示意图。每一画面都能够为亮度信号选择一个滤波器形状,并且也为彩度信号选择一个滤波器形状。在高效能影像编码标准的测试系统模型版本4.0中,每一画面最多可以使用16个亮度自适应性回路滤波器以及一个彩度自适应性回路滤波器。为了允许自适应性回路滤波器的局部化处理(localization),有两种模式可以供亮度像素来选择滤波器,一种是为基于区域的自适应性(region-based adaptation,RA)模式,另一种是为基于区块的自适应性(block-based adaptation,BA)模式。对于画面层级(picture level)上的自适应性模式的选择来说,除了基于区域的自适应性模式以及基于区块的自适应性模式之外,大于一临界值的编码单元(coding unit,CU)可以另外被滤波器使用旗标(filter usageflag)所控制而局部地启动或是停止自适应性回路滤波器的运作。在高效能影像编码标准的测试系统模型版本4.0中,关于彩度成分的部分,由于其相对地平坦,因此并未使用局部的自适应性处理,且一画面中的两个彩度成分会共享同一滤波器。
该基于区域的自适应性模式单纯地将一亮度画面分割为16个区域,而一旦该亮度画面的尺寸是已知,该16个区域即确定且固定。该16个区域可以被合并,并且在合并之后的每一区域都使用一滤波器,因此,该基于区域的自适应性模式的每一画面最多使用16个滤波器。另一方面,该基于区块的自适应性模式使用边缘活动以及方向(edge activity anddirection)的特性来处理每一4x4区块。计算一4x4区块的特性可能需要邻近的像素,举例来说,如图6所示,在高效能影像编码标准的测试系统模型版本4.0中,一5x5窗610被用来处理一相关的4x4窗620。在计算出4x4区块的特性后,该区块被归类至15个类别中的其中之一。该些类别可以被合并,并且在合并之后的每一类别都使用一滤波器,因此,该基于区块的自适应性模式的每一画面最多使用15个滤波器。
如图1所示,在高效能影像编码标准的测试系统模型版本4.0中的示范性解码器实施例当中,解码处理程序被分为两个部分。其一是基于最大编码单元的处理程序,包括有图框内预测(intra prediction,IP)器110、移动补偿器113、反转换器126、反量化器124以及重建器128,其二是基于画面的处理程序,包括有除区块滤波器130、取样点自适应性偏移器131以及自适应性回路滤波器132。当SPS、PPS或是影像切片层级(slice-level)语法元素(syntax elements)被解析时,熵解码(entropy decoding,ED)器142属于该基于画面的处理程序,而当最大编码单元的语法元素被解析时,熵解码器142则属于该基于最大编码单元的处理程序。在基于个人电脑的软件环境下,对除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理来说,基于画面的处理程序较基于最大编码单元的处理程序容易实作。然而,若是在硬件中或是嵌入式软件中来实作解码器,基于画面的处理程序需要画面缓冲器,而由于芯片需要内建画面缓冲器,因此会导致较高的系统成本;另一方面,使用芯片外画面缓冲器会需要对外部存储器进行存取的动作,因此会明显地提高系统对频宽的需求,此外,耗电量以及数据存取的延迟时间也将因此增加。因此,较佳的实作方式是使用基于最大编码单元的解码配置来设计除区块滤波器、取样点自适应性偏移以及自适应性回路滤波器。
当使用基于最大编码单元的处理程序来设计除区块滤波器、取样点自适应性偏移以及自适应性回路滤波器时,可以使用最大编码单元来以一光栅扫描(raster scan)的顺序来进行多个最大编码单元的平行处理,以完成编码以及解码处理程序。在这样的状况下,由于处理一个最大编码单元像素列(LCU row)需要上一个最大编码单元像素列的像素,因此除区块滤波器、取样点自适应性偏移以及自适应性回路滤波器便需要像素列缓冲器(line buffer)。若使用芯片外像素列缓冲器(例如动态随机存取存储器),则会造成外部存储器频宽以及耗电量的大幅上升,另一方面,若是使用芯片内建的像素列缓冲器(例如静态随机存取存储器),则会导致芯片面积的上升,因而造成芯片成本的上升。虽然基于最大编码单元处理程序的像素列缓冲器已经较画面缓冲器小的多,但仍然存在降低像素列缓冲器以降低成本的需求。
图7为在一基于最大编码单元的编码或是解码系统中处理有关除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理的亮度成分时对于像素列缓冲器的需求的范例的示意图。粗体线710以及粗体线712分别表示水平最大编码单元边界以及垂直最大编码单元边界,且目前所处理的最大编码单元是位于水平最大编码单元边界710的上侧,以及垂直最大编码单元边界712的右侧。一开始时,水平除区块滤波器会先对第A像素列~第J像素列的像素来进行处理,接下来则是由垂直除区块滤波器来对像第A像素列~第J像素列的像素来进行处理。为了方便起见,第X像素列可以用像素列X来表示。对于水平最大编码单元边界710的上方的像素列K~像素列N的水平除区块滤波处理来说,需要等到取得水平最大编码单元边界710的下方的四列像素列之后,才能够来进行处理。为了避免水平除区块处理后的像素需要用到像素列缓冲器,因此可以将像素列K~像素列N的水平滤波处理延后到水平最大编码单元边界710的下方的像素可取得之后才来进行。如此一来,由于稍后才会对其进行除区块滤波处理,因此除区块滤波处理前的像素(即重建后的像素)中的这四列像素列(即像素列K~像素列N)必须要先被储存起来。除区块滤波处理前的像素指的是完全没有经过除区块滤波处理的重建后的像素。因此,在一典型的系统中,这四(n=4)列(像素列K~像素列N)像素列是用来储存除区块滤波处理前的像素,以便进行后续的除区块滤波处理程序。依据图1所示的系统配置,接下来会对除区块滤波器130所输出的像素来进行取样点自适应性偏移处理,由于除区块滤波器130已对像素列A~像素列J进行了处理,因此取样点自适应性偏移器131可以接着对像素列A~像素列J进行处理。另外,因为取样点自适应性偏移器131依据如方框730所示的一3x3窗来进行边缘偏移类型(EO type)的处理,所以取样点自适应性偏移器131能够被用来处理至除区块滤波器130所输出的像素列I的像素。像素列J需要除区块滤波器130所输出的像素列K的像素来构成该3x3窗,然而除区块滤波器130所输出的像素列K还没有办法被取得。在取样点自适应性偏移器131处理完像素列A~像素列I的像素之后,由于像素列J尚未被取样点自适应性偏移器131处理完,因此仍然无法计算出一4x4区块740的特性,因此,在这一次的流程中,自适应性回路滤波器132仅能处理像素列A~像素列F的像素。如图7所示,自适应性回路滤波器132通过该5x5雪片状滤波器来对像素列F进行处理,其中另标示出滤波器足印750所依据的一基础像素(underlying pixel)752,在此流程中,直到较下面的最大编码单元取得之前,都无法对目前的最大编码单元再进行任何进一步的处理。
在得到较下面的最大编码单元后,可以由像素列缓冲器中读取出目前的最大编码单元的像素列K~像素列N(在较下面的最大编码单元到达之后,仍然将位于最大编码单元边界710以及最大编码单元712的右上角的象限的最大编码单元称作“目前的最大编码单元”),并且由水平除区块滤波器130来产生经过水平除区块处理后的像素列K~像素列N,水平除区块滤波器处理程序可以被用来执行位在下方的相邻最大编码单元的重建后的像素列。图7中仅绘示了该下方的相邻最大编码单元中的两列像素列(像素列O以及像素列P)以说明底下的最大编码单元边界710的上方的重建后的影像数据的内嵌式回路处理。垂直除区块滤波处理程序被用来对经过水平除区块程序处理后的像素列K~像素列N进行处理,垂直除区块滤波处理程序会对目前的最大编码单元的有关于像素列K~像素列N的四个边界上的像素进行处理,例如图7中的长条方框720。在像素列K~像素列N经过垂直除区块滤波处理过后,像素列J~像素列P便能够来进行取样点自适应性偏移的处理程序。当对像素列J进行取样点自适应性偏移处理的时候,需要利用像素列I来决定有关于边缘偏移的分类,因此,除区块滤波器130所输出的像素中的两列像素列(即像素列I以及像素列J)必须要为了取样点自适应性偏移的处理程序而被储存在像素列缓冲器之中。接着,便可以将像素列G~像素列P中的4x4区块的特性都计算出来,并且也可以依此通过自适应性回路滤波器132来对像素列G~像素列P进行滤波处理。当自适应性回路滤波器132处理过像素列G之后,需要取样点自适应性偏移器131来对像素列E~像素列I的像素数据进行处理,经过了进一步的分析之后,可以发现取样点自适应性偏移器131所输出的像素中的五列像素列(即列E~列I)必须要为了进行自适应性回路滤波处理程序而被储存在像素列缓冲器之中,因此,所有的内嵌式滤波处理总共需要11个亮度像素列缓冲器(4个未经过除区块滤波处理的像素列、2个除区块滤波处理后的像素列以及5个取样点自适应性偏移处理后的像素列)。
图8有关于基于最大编码单元的解码系统中的除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理的彩度成分对于像素列缓冲器的需求的范例的示意图。粗体线810以及粗体线812分别表示水平最大编码单元边界以及垂直最大编码单元边界,且目前所处理的最大编码单元是位于水平最大编码单元边界810的上侧,以及垂直最大编码单元边界812的右侧。一开始时,水平除区块滤波器会先对目前的最大编码单元的像素列A~像素列J的像素来进行处理,然而,由于较下面的最大编码单元尚未被得到,因此除区块滤波器并不能够对像素列M~像素列N进行垂直滤波处理,必须要先取得水平最大编码单元边界810之下的两列水平除区块处理后的像素列。和内嵌式亮度处理程序相似,为了避免水平除区块处理后的影像数据需要用到像素列缓冲器,对于像素列M以及像素列N的水平滤波处理可延后到取得较下面的最大编码单元之后才来进行,如此一来,除区块滤波处理前的影像数据(即重建后的影像数据)中的这两列像素列(即像素列M以及像素列N)必须要为了除区块处理而先被储存起来。接下来,会对除区块滤波器所输出的像素来进行取样点自适应性偏移处理,取样点自适应性偏移器131对每一像素的处理是依据如图8所示的方框820的一3x3窗来进行,因为除区块滤波器已经处理完像素列A~像素列L的像素,所以取样点自适应性偏移器131可以对像素列A到像素列K进行处理。在取样点自适应性偏移器处理完像素列A到像素列K之后,自适应性回路滤波器便可以对像素列A到像素列I来进行处理。由于使用了一5x5雪片状滤波器,故如滤波器足印830的像素列I上的基础像素832所示,自适应性回路滤波器不能够对超过像素列I的像素列来进行处理,在此流程中,直到较下面的最大编码单元取得之前,都无法对目前的最大编码单元进行任何进一步的处理。在得到较下面的最大编码单元后,除区块滤波器会首先对像素列M~像素列P来进行处理,接着像素列L~像素列P便能够来进行取样点自适应性偏移的处理程序。图8中仅绘示了下方的相邻最大编码单元中的两列像素列(像素列O以及像素列P)以说明在底下的最大编码单元边界810的上方的重建后的影像数据的内嵌式回路处理。当取样点自适应性偏移器在处理像素列L的时候,会需要用到相邻的像素列K,因此除区块滤波器所输出的像素中的两像素列(即像素列K以及像素列L)必须要为取样点自适应性偏移处理程序而储存起来。在像素列L~像素列P经过取样点自适应性偏移处理过后,像素列J~像素列P便能够来进行自适应性回路滤波器的滤波处理程序,而当对像素列J进行滤波的时候,会需要相邻的像素列H~像素列L,经过了进一步的分析之后,可以发现取样点自适应性偏移器所输出的像素中的四列像素列(即列H~列K)必须要为了进行自适应性回路滤波处理程序而被储存在像素列缓冲器之中。因此,所有的内嵌式滤波处理总共需要8个彩度像素列缓冲器。
在上述关于一示范性解码系统的分析中,可以发现用于亮度成分以及彩度成分的除区块滤波器、取样点自适应性偏移器以及自适应性回路滤波器对于像素列缓冲器的需求分别是11个以及8个。对于高画质数字电视信号来说,每一像素列可能具有接近两千个像素,因此整体系统对于像素列缓冲器的需求会是一个可观的数目,所以减少内嵌式回路处理系统中像素列缓冲器的数目已成为一个亟需解决的问题。
发明内容
本发明揭露一种用于重建后的影像数据的内嵌式回路处理方法以及装置,其中该重建后的影像数据是被分割为多个影像单元,每一影像单元是对应于一最大编码单元(LCU)、一影像切片(slice)或是一影像块(tile)。此外,针对横跨多个垂直影像单元边界来对该重建后的影像数据进行水平除区块,接着对多个水平影像单元边界的每一边的水平除区块处理后的影像数据的n个像素进行垂直除区块。依据本发明的实施例,针对像素列pn-1而对该n个重建后的像素列的至少其中之一进行该水平除区块以产生至少一水平除区块处理后的像素列,以及针对像素列pn而基于给像素列pn-1的该水平除区块处理后的像素列来对至少一水平除区块处理后的像素列进行取样点自适应性偏移(sample adaptive offset,SAO)处理,其中上述步骤会在目前的影像单元以下的一相邻影像单元到达之前执行。
在本发明的一实施例中,该方法另包括有当该目前的影像单元以下的该相邻影像单元到达之前,储存除区块滤波器输出像素的一像素列pn来对像素列pn-1进行取样点自适应性偏移。在本发明的另一实施例中,该方法另包括有储存该n个水平除区块处理后的像素列于一个或是多个像素列缓冲器,并从该一个或是多个像素列缓冲器中读取出该n个水平除区块处理后的像素列,以及当该目前的影像单元以下的该相邻影像单元到达时,对该n个水平除区块处理后的像素列进行该垂直除区块。
在本发明的又一实施例中,在该目前的影像单元以下的该相邻影像单元到达之前,该n个重建后的像素列的至少一像素列p0并未经过水平除区块的处理。该方法另可包括有为像素列p0储存该重建后的像素列于一像素列缓冲器中,且为像素列p0自该像素列缓冲器中读取该重建后的像素列,以及为目前的影像单元之下的相邻影像单元来依据该重建后的像素列p0以及编码数据进行一图框间预测,来为该目前的影像单元之下的该相邻影像单元来产生重建后的影像。另外,该方法另可包括有在进行该图框间预测之后,为像素列p0对该重建后的像素列进行该水平除区块以为像素列p0产生一水平除区块处理后的像素列,以及为像素列p0对该一水平除区块处理后的像素列进行该垂直除区块。
本发明会将一部份的像素列(例如像素列K~像素列N)的水平滤波处理延后到较下面的最大编码单元可取得之后才来进行,因此,在较下面的最大编码单元到达之前,可使用水平除区块滤波器来对一像素列(例如像素列K)进行处理,所以得以对更多一列像素列(例如像素列J)来进行取样点自适应性偏移的处理,此外,像素列K中经过水平除区块处理之后的输出像素将不会被储存于像素列缓冲器之中,因而节省了像素列缓冲器的空间。
附图说明
图1为具有内嵌除区块滤波器、取样点自适应性偏移器以及自适应性回路滤波器的回路处理的一示范性自适应性影像编码系统的示意图。
图2A为每一侧具有4个边界像素的一垂直区块边界的示意图。
图2B为每一侧具有4个边界像素的一水平区块边界的示意图。
图3为取样点自适应性偏移中将像素强度范围平均分为32个能带的带状偏移的示意图。
图4为取样点自适应性偏移中依据一3x3窗来将边缘偏移像素分类,其具有0°、90°、135°以及45°的四组配置的示意图。
图5A为自适应性回路滤波器的一11x5的十字型滤波器的示意图。
图5B为自适应性回路滤波器的一5x5的雪片型滤波器的示意图。
图6为使用具有一5x5支援窗的一4x4基于区块的自适应性窗的基于区块的自适应性模式的自适应性回路滤波器的示意图。
图7为在一基于最大编码单元的编码或是解码系统中处理有关除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理的亮度成分时对于像素列缓冲器的需求的的示意图。
图8有关于基于最大编码单元的解码系统中的除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理的彩度成分对于像素列缓冲器的需求的的示意图。
图9为依据本发明一实施例的进行基于最大编码单元的解码系统的除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理所需要的该亮度像素列缓冲器的示意图。
图10为依据本发明一实施例的基于最大编码单元解码系统的除区块滤波器、取样点自适应性偏移器以及自适应性回路滤波器所需要的彩度像素列缓冲器的示意图。
附图标号
110 图框内预测区块
113 移动补偿区块
114 切换器
124 反量化器
126 反转换器
128 重建器
130 除区块滤波器
131 取样点自适应性偏移器
132 自适应性回路滤波器
134 参考画面缓冲器
136 预估数据
142 熵解码器
210 垂直区块边界
220 水平区块边界
610、742、952 5x5窗
620、740、950 4x4窗
710、810、910、1010 水平最大编码单元边界
712、812、912、1012 垂直最大编码单元边界
720、730、820、840、920、930、1020、1040方框
750、830、940、1030 滤波器足印
752、832、942、1032 基础像素
具体实施方式
图9为依据本发明一实施例的处理流程的范例示意图,其中绘示了进行基于最大编码单元的解码系统的除区块滤波处理、取样点自适应性偏移处理以及自适应性回路滤波处理所需要的亮度像素列缓冲器。一已知的目前的最大编码单元是位于水平最大编码单元边界910以及垂直最大编码单元边界912的右上方的象限中。像素列A到像素列J首先会经过水平除区块滤波处理,接着再经过垂直除区块滤波处理。如同之前所述,为了避免为了像素列K到像素列N的垂直除区块滤波处理而需使用水平除区块处理后像素的像素列缓冲器,可以将像素列K~像素列N的水平滤波处理延后到较下面的最大编码单元可取得之后才来进行,因此,当取得较下面的最大编码单元的时候,除区块滤波处理前的像素中的这四列像素列(即像素列K~像素列N)会被储存起来。接下来,取样点自适应性偏移便准备好对经过除区块滤波处理之后所输出的像素来进行处理,由于对像素列K到像素列N所进行的垂直除区块滤波处理不会改变像素列K,所以水平除区块滤波处理可以额外地被用来对像素列K进行处理(即边界像素列pn-1),因此,如图9中的3x3窗930所示,由于可以得到额外的除区块滤波处理后的像素列K,因此取样点自适应性偏移可以被额外地使用来对像素列J进行处理。当像素列K已完成水平除区块滤波处理之后,为了节省像素列缓冲器的空间,像素列K中经过水平除区块处理之后的输出像素将不会被储存于像素列缓冲器之中。当需要像素列K中经过水平除区块之后的像素来进行垂直除区块滤波处理程序的时候,可以再重新产生一次像素列K中经过水平除区块之后的像素,这样的作法对于基于硬件的实作来说并不是一个大问题。在经过对像素列A到像素列J的取样点自适应性偏移处理程序之后,如4x4窗950所示的4x4区块特性便可以依据5x5窗952而计算出来。此时可以对像素列A到像素列H来进行自适应性回路滤波处理的程序。处理完自适应性回路滤波处理程序之后,直到可以取得较下面的最大编码单元之前,目前的最大编码单元不会进行其他更进一步的处理。
当较下面的最大编码单元到达的时候,首先使用除区块滤波器来对像素列K到像素列P进行处理,接着再使用取样点自适应性偏移器来对像素列K到像素列P进行处理,水平除区块滤波处理是用来处理目前的最大编码单元(在较下面的最大编码单元到达之后,位于最大编码单元边界910以及最大编码单元边界912的右上方的象限的最大编码单元仍然被称作“目前的最大编码单元”)的最下面的三列像素列(即像素列L到像素列N),接着可以对经过水平除区块处理之后的像素来进行垂直除区块滤波处理(举例来说,如长条方框920所示)。当在对像素列K进行取样点自适应性偏移处理的时候,如3x3窗930所示,需要使用到像素列J,因此,有需要将除区块滤波器所输出的像素中的一像素列(即像素列J)储存起来,以便进行后续的取样点自适应性偏移运算,接着,便可以计算出像素列I到像素列P的4x4区块特性。最后,可以对像素列I到像素列P进行自适应性回路滤波处理,当自适应性回路滤波器在对像素列I进行滤波处理程序的时候,需要像素列G到像素列K(如基础像素942的滤波器足印940所示),然而,如窗952所示,计算相关于像素列I到像素列J的4x4区块(窗950所示)的特性需要用到像素列F到像素列J经过取样点自适应性偏移处理之后的数据,因此,取样点自适应性偏移器所输出的像素的五列像素列(即像素列F到像素列J)必须要储存起来,以便进行后续的自适应性回路滤波器处理。因此,内嵌式回路滤波器所需要的亮度像素列缓冲器的数量总共是10个,较图7所示的方法少了一个像素列缓冲器,因为图框内亮度预测(intra luma prediction)已经储存除区块滤波处理前的像素中的一列像素列(即像素列N),此亮度像素列缓冲器是对应于边界像素列p0且能够被内嵌式回路滤波器共享。目前方的最大编码单元的编码数据到达的时候,可以使用图1中所示的熵解码器142来回复下方的最大编码单元的残值。对于图框内编码影像数据来说,下方的最大编码单元的重建后影像数据可以依据重建后的像素列p0以及下方的最大编码单元的回复后的残值来回复。虽然在此并未清楚载明,应当理解的是对下方的最大编码单元的图框内预测解码也可能需要紧邻于下方的最大编码单元的左边最大编码单元边界的重建后的数据。除此之外,若是一滤波器索引像素列缓冲器(filter index line buffer)是用来储存像素列G到像素列J的基于区块的自适应性(block-based adaptation,BA)模式滤波器的选择,便不需要在对像素列I到像素列J进行滤波器处理的时候再次计算区块特性,如此一来,取样点自适应性偏移器所输出的像素中的一像素列(即像素列F)便可为了进行自适应性回路滤波处理而被节省下来,相较于像素列缓冲器来说,对于每一4x4区块,滤波器索引像素列缓冲器仅需要4位,这仅仅是像素列缓冲器的大约10%。
在上述范例中,需要将除区块滤波器所输出的像素中的一像素列(即像素列J)储存在像素列缓冲器中,以便后续的取样点自适应性偏移处理程序的进行,其中除区块滤波器所输出的像素会依边缘偏移(edge offset,EO)分类来储存。表1所示为基于高效能影像编码标准的测试系统模型版本4.0(HM-4.0)的边缘偏移分类的范例,其中中心像素的值会与两个相邻的像素值进行比较,换句话说,可以依据中心像素值以及各自的相邻像素值的差距的正负号来决定该边缘偏移分类,如此一来,可将部分导出信息(partial derived information)储存下来,而非储存实际的像素值。在以上范例中,可将像素列J以及像素列I之间的正负号的信息(部分导出信息)储存下来,而非储存像素列J的经过除区块滤波处理后的像素值。根据所使用的内嵌式回路滤波器,可以决定出部分导出信息,除此之外,基于基本的内嵌式回路滤波器,部分导出信息可以由重建后的影像数据、水平除区块处理后的影像数据、完整经过除区块滤波处理后的数据或是经过取样点自适应性偏移处理后的数据来得到。
以上示范性实施例中,在较下面的最大编码单元到达之前使用水平除区块滤波器来对像素列(即对应pn-1的像素列)进行处理,因此得以对更多一列像素列(即像素列J)来进行取样点自适应性偏移的处理,随后,可以得到关于像素列G到像素列J的区块特性,并且使用自适应性回路滤波器来在下面的最大编码单元到达之前对像素列A到像素列H进行处理。在此范例中,有四个像素(n=4)会关系到滤波器参数的推导以及滤波操作,且除区块滤波器会对三个像素(m=3)来进行处理,因此,最大编码单元边界的每一侧仅有一个像素(n-m=1)没有被处理(即pn-1或是qn-1)。上述实施例可以被延伸至具有更多不被除区块滤波所改变的像素的除区块滤波器,也就是n-m>1。除此之外,当除区块滤波器、取样点自适应性偏移器以及自适应性回路滤波器使用特定内嵌式回路滤波器信息或是参数来说明本发明实施例的详细的步骤的时候,该些特定信息以及参数并非用来限制本发明,且熟习此领域者应可将使用其他经过变化的内嵌式回路滤波器的信息以及参数来将本发明应用于编码系统中。
图10为依据本发明一实施例的处理流程的示意图,其中所示为基于最大编码单元解码系统的除区块滤波器、取样点自适应性偏移器以及自适应性回路滤波器所需要的彩度像素列缓冲器。对于具有较低的水平最大编码单元边界1010以及左侧的垂直最大编码单元边界1012的一个已知的目前的最大编码单元,首先使用水平除区块滤波器来对像素列A到像素列M进行处理,接下来使用垂直除区块滤波器来对像素列A到像素列L进行处理。由于对像素列M到像素列N的垂直除区块滤波处理不会改变像素列M,像素列M中经过水平除区块处理后的像素也是像素列M的除区块滤波器的输出像素。此流程中对像素列M使用水平除区块的好处是可以让取样点自适应性偏移器多处理一额外的像素列,即像素列L。因为可以得到经过除区块滤波处理过后的像素列M,因此在图10中如正方框1020所示,可以对像素列L进行基于一3x3窗的取样点自适应性偏移的分类。在本发明的实施例中,为了与图框内彩度预测处理一起共享像素列N的除区块滤波器处理前的像素的像素列缓冲器,可以延后对像素列N的水平除区块滤波处理直到较下面的最大编码单元到达为止。至于对于像素列M到像素列N的垂直除区块滤波器,则需要等待取得较下面的最大编码单元。在像素列A到像素列L完成取样点自适应性偏移的处理之后,便可以对像素列A到像素列J进行自适应性回路滤波处理流程,对于图10中所示的基础像素1032的5x5滤波器足印1030,自适应性回路滤波器最多可处理至像素列J。在此之后,直到可以取得较下面的最大编码单元之前,目前的最大编码单元不会执行任何更进一步的运算。
当可以取得较下面的最大编码单元的时候,像素列N到像素列P首先会进行水平除区块滤波处理,接着会对像素列M到像素列P进行垂直除区块滤波处理的程序,其中对水平边界1010的上方的两个像素的垂直除区块滤波处理程序如图10中的长方框1040所示。接着,再对经过除区块滤波处理之后的像素来进行取样点自适应性偏移的处理,当对像素列M进行取样点自适应性偏移的处理时,为了得到基于一3x3窗的取样点自适应性偏移分类的数据,需要用到像素列L。然而,取样点自适应性偏移器已经对像素列L进行过处理,且不再可以得到像素列L的除区块滤波器输出结果,因此,除区块滤波器输出像素的一像素列(即像素列L)必须要为了取样点自适应性偏移而先被缓冲器储存下来。最终,使用自适应性回路滤波器来对像素列K到像素列P进行滤波处理,当自适应性回路滤波器在对像素列K进行滤波处理的时候,会需要用到像素列I到像素列M,经过详细的计算,可以得知取样点自适应性偏移器所输出的像素的四列像素列(像素列I到像素列L)必须要为了自适应性回路滤波处理而先被储存起来,因此,内嵌式回路滤波器总共需要七个彩度像素列缓冲器。
在本发明另一实施例中,在像素列K到像素列N的水平除区块滤波处理结束之后,经过水平除区块处理后的输出像素中的四列像素列(即像素列K到像素列N)被储存在像素列缓冲器中,以等待进行垂直除区块滤波的处理。当得到较下面的最大编码单元之后,水平除区块处理过的像素列K到像素列N便从像素列缓冲器中被读取出来,并使用垂直除区块滤波器来对像素列K到像素列N进行处理。虽然本实施例中的除区块滤波处理的流程较为直觉,但是像素列缓冲器完全不能被图框内预测处理流程所共用,图框内预测是对除区块滤波处理前的影像数据进行处理,然而,像素列缓冲器储存的是水平除区块处理后的影像数据。为了克服这个问题,本发明又揭露一实施例,依据此实施例,水平除区块滤波器会对像素列A到像素列M进行处理,接着将像素列K到像素列M的水平除区块处理后的像素以及像素列N的除区块滤波处理前的像素均存在像素列缓冲器之中,接下来对像素列A到像素列J进行垂直除区块滤波处理,至于取样点自适应性偏移处理以及自适应性回路滤波处理则可以遵照如图7以及图8所示的传统的方法,或是遵照如图9以及图10中所示的本发明的方法。当较下面的最大编码单元到达的时候,可以将像素列N的除区块滤波处理前的像素从像素列缓冲器中读取出来,并且与较下面的最大编码单元的编码数据一起被用于图框内亮度预测,接着可以对重建后的像素列N来进行水平除区块滤波处理,并且从像素列缓冲器当中将像素列K到像素列M的经过水平除区块处理后的像素读取出来,以及对像素列K到像素列P进行垂直除区块滤波处理。取样点自适应性偏移处理以及自适应性回路滤波处理可以遵照如图7以及图8所示的传统的方法,或是遵照如图9以及图10中所示的本发明的方法。
在本发明又一实施例中,将针对像素列p0到像素列pk-1而延后一水平最大编码单元边界的上方的像素列的水平除区块滤波处理,其中1<k<n,像素列p0到像素列pk-1的除区块滤波处理之前的像素会被储存在像素列缓冲器中以便进行水平除区块滤波的处理流程。另一方面,会对像素列pk到像素列pn-1进行水平除区块滤波处理流程,以及将像素列pk到像素列pn-1的水平除区块处理后的输出储存于像素列缓冲器之中。在此状况下,像素列p0的除区块滤波处理之前的像素会被储存在一像素列缓冲器中,且该像素列缓冲器可以与图框内预测处理时所需的像素列缓冲器共用。
在本发明的另一实施例中,由于将像素列p0的一部分的水平除区块滤波处理流程延后,因此重建后的像素列p0的一部分被储存在一像素列缓冲器中,当较下面的最大编码单元的编码数据到达的时候,可以回复该较下面的最大编码单元的残值,接着将该重建后的像素列p0的一部分自像素列缓冲器当中读取出来,并且与该较下面的最大编码单元的残值一起使用来产生至少一部分的重建后的影像给位在目前的影像单元的下方的相邻影像单元。
当一水平最大编码单元边界的上方的像素列于下方的最大编码单元到达之前尚未全部经过水平滤波处理的时候,可以为了下方的最大编码单元的像素列(水平最大编码单元边界之下的n列像素列)的滤波处理而将滤波器决定信息(例如开启/关闭的决定或是强/弱滤波器的决定)储存下来。
上述的像素列缓冲器可以通过使用芯片上的储存装置来实作,例如静态随机存取存储器(static random access memory,SRAM),以降低芯片外存储器所耗占的系统频宽以及功率。本发明中的像素列缓冲器可以使用单一整合的存储器装置或是多个存储器装置来实作。
上述说明的用意在于使所属领域中技术人员得以采用本发明说明书中叙述的特定应用以及要求来实践本发明,而凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围,因此,本发明并不受限于上述的特定实施例,而应被给予与本发明所公开的操作原理和新颖的技术特征相一致的最宽范围。在以上的详细描述中,说明了各种特定细节以使本发明得以被透彻理解,然而,所属领域中技术人员应当能理解,本发明是可以被实施的。
上述的本发明实施例可以实作在各式各样的硬件、软件代码或是上述两者的结合的应用当中。举例来说,本发明的一实施例可以是整合于一影像压缩芯片中的一电路,或是整合于影像压缩软件中的程序代码以执行上述的处理程序;本发明的一实施例亦可是执行于一数字信号处理系统中的程序代码以执行上述的处理程序。本发明亦可涉及于一电脑处理器、一数字信号处理器、一微处理器或是现场可编程门阵列(field programmable gate array,FPGA)所执行的若干功能,这些处理器可以依据本发明来设定而执行体现本发明的特定方法的机器可读软件代码或是固体代码,以执行特定工作,其中软件代码或是固体代码可以透过不同的程序语言或是不同的格式以及风格来开发,且软件代码亦可以在不同的目标平台上被编译。然而,使用不同的格式、风格或是语言的软件代码以及使用其他配置程序代码的方法来依据本发明而执行这些工作将不会背离本发明的精神以及范围。
本发明可以通过其他特定形式来体现而不背离其精神或是基本的技术特征,而所描述的实施例在所有方面都仅是说明性的,而不是限制性的,因此,本发明的范畴应由权利要求而非由上述的描述所指示。等同于本发明的权利要求的含义和范畴内的所有变化都被包括在权利要求的范畴内。
Claims (20)
1.一种用于一重建后的影像数据的内嵌式回路处理方法,其特征在于,所述重建后的影像数据是被分割为多个影像单元,并对横跨多个垂直影像单元边界的所述重建后的影像数据进行一水平除区块,接着对多个水平影像单元边界的每一侧的水平除区块处理后的影像数据的n个像素进行一垂直除区块,以及所述垂直除区块的多个垂直滤波器参数是依据所述多个水平影像单元边界的每一侧的n个水平除区块处理后的像素列所产生,其中n是一第一整数,所述方法包括有:
为一目前影像单元接收所述重建后的影像数据,其中所述重建后的影像数据包括有一水平影像单元边界的上方的n个重建后的像素列,其包括像素列p0到像素列pn-1,且像素列p0是最接近所述水平影像单元边界;
对所述n个重建后的像素列的至少其中之一进行所述水平除区块以产生针对像素列pn-1的至少一水平除区块处理后的像素列;以及
基于针对像素列pn-1的所述水平除区块处理后的像素列,来对针对像素列pn的至少一水平除区块处理后的像素列进行取样点自适应性偏移处理;
其中上述步骤会在所述目前影像单元以下的一相邻影像单元到达之前执行。
2.如权利要求1所述的内嵌式回路处理方法,其特征在于,所述的内嵌式回路处理方法另包括有:
储存除区块滤波器输出像素的一像素列pn,以便于所述目前的影像单元以下的所述相邻影像单元到达时对像素列pn-1进行取样点自适应性偏移处理。
3.如权利要求1所述的内嵌式回路处理方法,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所有的所述n个重建后的像素列都会进行所述水平除区块;以及所述内嵌式回路处理方法另包括有:
储存所述n个水平除区块处理后的像素列于一个或是多个像素列缓冲器之中;
从所述一个或是多个像素列缓冲器中读取出所述n个水平除区块处理后的像素列;以及
当所述目前影像单元以下的所述相邻影像单元到达时,对所述n个水平除区块处理后的像素列进行所述垂直除区块。
4.如权利要求1所述的内嵌式回路处理方法,其特征在于,所述影像单元是对应于一最大编码单元、一影像切片或是一影像块。
5.如权利要求1所述的内嵌式回路处理方法,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所述n个重建后的像素列的至少一像素列p0并未被所述水平除区块所处理。
6.如权利要求5所述的内嵌式回路处理方法,其特征在于,所述的内嵌式回路处理方法另包括有:
将针对像素列p0的所述重建后的像素列储存于一像素列缓冲器之中;
自所述像素列缓冲器中读取出针对像素列p0的所述重建后的像素列;以及
基于针对像素列p0的所述重建后的像素列以及所述目前影像单元之下的所述相邻影像单元的编码数据来进行一图框间预测,以针对所述目前的影像单元之下的所述相邻影像单元来产生一重建后的影像。
7.如权利要求6所述的内嵌式回路处理方法,其特征在于,所述的内嵌式回路处理方法另包括有:
在进行所述图框间预测之后,针对像素列p0的所述重建后的像素列进行所述水平除区块,以针对像素列p0产生一水平除区块处理后的像素列;以及
对针对像素列p0的所述水平除区块处理后的像素列进行所述垂直除区块。
8.如权利要求5所述的内嵌式回路处理方法,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所述n个重建后的像素列中的像素列p0到像素列pk-1并未被所述水平除区块所处理;以及所述方法另包括有:
在所述目前影像单元以下的所述相邻影像单元到达之前,将针对像素列p0到像素列pK-1的重建后的像素列以及针对像素列pK到像素列pK-1的水平除区块处理后的像素列储存于一个或是多个像素列缓冲器之中,其中1<K<n,且K是一第二整数。
9.如权利要求5所述的内嵌式回路处理方法,其特征在于,所述的内嵌式回路处理方法另包括有:
另包括有当得到所述目前影像单元之下的所述相邻影像单元时,储存针对所述目前影像单元的所述水平滤波处理的滤波器决定信息。
10.如权利要求5所述的内嵌式回路处理方法,其特征在于,所述的内嵌式回路处理方法另包括有储存相关于在所述水平图像单元边界之上的一重建后的像素列或是一水平除区块后的像素列的至少部分导出信息,其中所述部分导出信息是用于所述水平除区块或是取样点自适应性偏移处理,以及其中当得到所述目前的影像单元之下的所述相邻影像单元时,所述水平除区块或是取样点自适应性偏移处理是用于所述水平影像单元边界以上的一重建后的像素列或是一水平除区块后的像素列的所述至少一部分。
11.一种用于重建后的影像数据的内嵌式回路处理装置,其特征在于,所述重建后的影像数据是被分割为多个影像单元,并对横跨多个垂直影像单元边界的所述重建后的影像数据进行一水平除区块,接着对多个水平影像单元边界的每一侧的水平除区块处理后的影像数据的n个像素进行一垂直除区块,以及所述垂直除区块的多个垂直滤波器参数是依据所述多个水平影像单元边界的每一侧的n个水平除区块处理后的像素列所产生,其中n是一第一整数,所述装置包括有:
为一目前影像单元接收所述重建后的影像数据的手段,其中所述重建后的影像数据包括有一水平影像单元边界的上方的n个重建后的像素列,其包括像素列p0到像素列pn-1,且像素列p0是最接近所述水平影像单元边界;
对所述n个重建后的像素列的至少其中之一进行所述水平除区块以产生针对像素列pn-1的至少一水平除区块处理后的像素列的手段;以及
基于针对像素列pn-1的所述水平除区块处理后的像素列,来对针对像素列pn的至少一水平除区块处理后的像素列进行取样点自适应性偏移处理的手段;
其中上述步骤会在所述目前影像单元以下的一相邻影像单元到达之前执行。
12.如权利要求11所述的内嵌式回路处理装置,其特征在于,所述的内嵌式回路处理装置另包括有:
储存除区块滤波器输出像素的一像素列pn,以便于所述目前影像单元以下的所述相邻影像单元到达时,像素列pn-1进行取样点自适应性偏移处理的手段。
13.如权利要求11所述的内嵌式回路处理装置,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所有的所述n个重建后的像素列都会进行所述水平除区块;以及所述内嵌式回路处理装置另包括有:
储存所述n个水平除区块处理后的像素列于一个或是多个像素列缓冲器之中的手段;
从所述一个或是多个像素列缓冲器中读取出所述n个水平除区块处理后的像素列的手段;以及
当所述目前影像单元以下的所述相邻影像单元到达时,对所述n个水平除区块处理后的像素列进行所述垂直除区块的手段。
14.如权利要求11所述的内嵌式回路处理装置,其特征在于,所述影像单元是对应于一最大编码单元、一影像切片或是一影像块。
15.如权利要求11所述的内嵌式回路处理装置,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所述n个重建后的像素列的至少一像素列p0并未被所述水平除区块所处理。
16.如权利要求15所述的内嵌式回路处理装置,其特征在于,所述的内嵌式回路处理装置另包括有:
将针对像素列p0的所述重建后的像素列储存于一像素列缓冲器之中的手段;
自所述像素列缓冲器中读取出针对像素列p0的所述重建后的像素列的手段;以及
基于针对像素列p0的所述重建后的像素列以及所述目前影像单元之下的所述相邻影像单元的编码数据来进行一图框间预测,以针对所述目前影像单元之下的所述相邻影像单元来产生一重建后的影像的手段。
17.如权利要求16所述的内嵌式回路处理装置,其特征在于,所述的内嵌式回路处理装置另包括有:
在进行所述图框间预测之后,针对像素列p0的所述重建后的像素列进行所述水平除区块,以针对像素列p0产生一水平除区块处理后的像素列的手段;以及
对针对像素列p0的所述水平除区块处理后的像素列进行所述垂直除区块的手段。
18.如权利要求15所述的内嵌式回路处理装置,其特征在于,在所述目前影像单元以下的所述相邻影像单元到达之前,所述n个重建后的像素列中的像素列p0到像素列pk-1并未被所述水平除区块所处理;以及所述装置另包括有:
在所述目前影像单元以下的所述相邻影像单元到达之前,将针对为像素列p0到像素列pK-1的重建后的像素列以及针对像素列pK到像素列pK-1的水平除区块处理后的像素列储存于一个或是多个像素列缓冲器之中的手段,其中1<K<n,且K是一第二整数的手段。
19.如权利要求15所述的内嵌式回路处理装置,其特征在于,所述的内嵌式回路处理装置另包括有当得到所述目前的影像单元之下的所述相邻影像单元时,储存针对所述目前的影像单元的所述水平滤波处理的滤波器决定信息的手段。
20.如权利要求15所述的内嵌式回路处理装置,其特征在于,所述的内嵌式回路处理装置另包括有储存相关于在所述水平影像单元边界之上的一重建后的像素列或是一水平除区块后的像素列的至少部分导出信息,其中所述部分导出信息是用于所述水平除区块或是取样点自适应性偏移处理;以及其中当得到所述目前的影像单元之下的所述相邻影像单元时,所述水平除区块或是取样点自适应性偏移处理是用于所述水平影像单元边界以上的一重建后的像素列或是一水平除区块后的像素列的至少一部分的手段。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161547273P | 2011-10-14 | 2011-10-14 | |
US61/547,273 | 2011-10-14 | ||
US13/633,162 US8913656B2 (en) | 2011-10-14 | 2012-10-02 | Method and apparatus for in-loop filtering |
US13/633,162 | 2012-10-02 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103051892A true CN103051892A (zh) | 2013-04-17 |
CN103051892B CN103051892B (zh) | 2015-12-09 |
Family
ID=48064377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210389240.6A Active CN103051892B (zh) | 2011-10-14 | 2012-10-15 | 内嵌式回路滤波方法以及内嵌式回路滤波装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103051892B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338374A (zh) * | 2013-06-21 | 2013-10-02 | 华为技术有限公司 | 图像处理方法及装置 |
CN105306957A (zh) * | 2015-10-23 | 2016-02-03 | 北京中星微电子有限公司 | 自适应环路滤波方法和设备 |
CN105325004A (zh) * | 2013-04-19 | 2016-02-10 | 三星电子株式会社 | 基于用信号传输样点自适应偏移参数的视频编码方法和设备以及视频解码方法和设备 |
CN105706449A (zh) * | 2013-06-19 | 2016-06-22 | 苹果公司 | 样本自适应偏移控制 |
CN105898335A (zh) * | 2015-02-13 | 2016-08-24 | 联发科技股份有限公司 | 提升硬件效率的环路滤波方法以及环路滤波装置 |
CN105992011A (zh) * | 2015-02-26 | 2016-10-05 | 扬智科技股份有限公司 | 环路滤波的计算方法及装置 |
CN105430410B (zh) * | 2014-09-17 | 2019-01-11 | 联发科技股份有限公司 | 运动补偿装置及运动补偿方法 |
CN110392259A (zh) * | 2018-04-16 | 2019-10-29 | 晨星半导体股份有限公司 | 影像压缩系统及利用影像压缩系统以压缩影像画面的方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090016450A1 (en) * | 2007-07-10 | 2009-01-15 | Faraday Technology Corporation | In-loop deblocking-filtering method and apparatus applied to video codec |
US20100128778A1 (en) * | 2008-11-25 | 2010-05-27 | Microsoft Corporation | Adjusting hardware acceleration for video playback based on error detection |
US20100329361A1 (en) * | 2009-06-30 | 2010-12-30 | Samsung Electronics Co., Ltd. | Apparatus and method for in-loop filtering of image data and apparatus for encoding/decoding image data using the same |
US20100329362A1 (en) * | 2009-06-30 | 2010-12-30 | Samsung Electronics Co., Ltd. | Video encoding and decoding apparatus and method using adaptive in-loop filter |
US20110249747A1 (en) * | 2010-04-12 | 2011-10-13 | Canon Kabushiki Kaisha | Motion vector decision apparatus, motion vector decision method and computer readable storage medium |
-
2012
- 2012-10-15 CN CN201210389240.6A patent/CN103051892B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090016450A1 (en) * | 2007-07-10 | 2009-01-15 | Faraday Technology Corporation | In-loop deblocking-filtering method and apparatus applied to video codec |
US20100128778A1 (en) * | 2008-11-25 | 2010-05-27 | Microsoft Corporation | Adjusting hardware acceleration for video playback based on error detection |
US20100329361A1 (en) * | 2009-06-30 | 2010-12-30 | Samsung Electronics Co., Ltd. | Apparatus and method for in-loop filtering of image data and apparatus for encoding/decoding image data using the same |
US20100329362A1 (en) * | 2009-06-30 | 2010-12-30 | Samsung Electronics Co., Ltd. | Video encoding and decoding apparatus and method using adaptive in-loop filter |
US20110249747A1 (en) * | 2010-04-12 | 2011-10-13 | Canon Kabushiki Kaisha | Motion vector decision apparatus, motion vector decision method and computer readable storage medium |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105325004B (zh) * | 2013-04-19 | 2019-06-11 | 三星电子株式会社 | 基于用信号传输样点自适应偏移参数的视频编码方法和设备以及视频解码方法和设备 |
CN105325004A (zh) * | 2013-04-19 | 2016-02-10 | 三星电子株式会社 | 基于用信号传输样点自适应偏移参数的视频编码方法和设备以及视频解码方法和设备 |
CN111526367B (zh) * | 2013-06-19 | 2023-08-04 | 苹果公司 | 具有样本自适应偏移控制的解码方法、系统、介质和装置 |
CN105706449A (zh) * | 2013-06-19 | 2016-06-22 | 苹果公司 | 样本自适应偏移控制 |
US11363264B2 (en) | 2013-06-19 | 2022-06-14 | Apple Inc. | Sample adaptive offset control |
CN111526367A (zh) * | 2013-06-19 | 2020-08-11 | 苹果公司 | 样本自适应偏移控制 |
US10708588B2 (en) | 2013-06-19 | 2020-07-07 | Apple Inc. | Sample adaptive offset control |
CN105706449B (zh) * | 2013-06-19 | 2020-05-19 | 苹果公司 | 样本自适应偏移控制 |
CN103338374B (zh) * | 2013-06-21 | 2016-07-06 | 华为技术有限公司 | 图像处理方法及装置 |
CN103338374A (zh) * | 2013-06-21 | 2013-10-02 | 华为技术有限公司 | 图像处理方法及装置 |
US10021427B2 (en) | 2013-06-21 | 2018-07-10 | Huawei Technologies Co., Ltd. | Image processing method and apparatus |
CN105430410B (zh) * | 2014-09-17 | 2019-01-11 | 联发科技股份有限公司 | 运动补偿装置及运动补偿方法 |
CN105898335A (zh) * | 2015-02-13 | 2016-08-24 | 联发科技股份有限公司 | 提升硬件效率的环路滤波方法以及环路滤波装置 |
US10306246B2 (en) | 2015-02-13 | 2019-05-28 | Mediatek Inc. | Method and apparatus of loop filters for efficient hardware implementation |
CN105898335B (zh) * | 2015-02-13 | 2019-02-15 | 联发科技股份有限公司 | 提升硬件效率的环路滤波方法以及环路滤波装置 |
CN105992011B (zh) * | 2015-02-26 | 2019-04-09 | 扬智科技股份有限公司 | 环路滤波的计算方法及装置 |
CN105992011A (zh) * | 2015-02-26 | 2016-10-05 | 扬智科技股份有限公司 | 环路滤波的计算方法及装置 |
CN105306957B (zh) * | 2015-10-23 | 2019-04-26 | 湘潭中星电子有限公司 | 自适应环路滤波方法和设备 |
CN105306957A (zh) * | 2015-10-23 | 2016-02-03 | 北京中星微电子有限公司 | 自适应环路滤波方法和设备 |
CN110392259A (zh) * | 2018-04-16 | 2019-10-29 | 晨星半导体股份有限公司 | 影像压缩系统及利用影像压缩系统以压缩影像画面的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103051892B (zh) | 2015-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103947208B (zh) | 减少解块滤波器的方法及装置 | |
CN103051892B (zh) | 内嵌式回路滤波方法以及内嵌式回路滤波装置 | |
CN105898335B (zh) | 提升硬件效率的环路滤波方法以及环路滤波装置 | |
US8913656B2 (en) | Method and apparatus for in-loop filtering | |
CN106878729B (zh) | 基于分区基础的自适应环路滤波方法和装置 | |
TWI738092B (zh) | 減少環路濾波緩衝器的方法及裝置 | |
CN105794210B (zh) | 视频编码系统中用于边界像素的运动补偿预测方法及装置 | |
CN103141094B (zh) | 自适应环路滤波方法和装置 | |
AU2012327672B2 (en) | Method and apparatus for non-cross-tile loop filtering | |
EP3057320A1 (en) | Method and apparatus of loop filters for efficient hardware implementation | |
EP2708027B1 (en) | Method and apparatus for reduction of in-loop filter buffer | |
TWI507019B (zh) | 解碼視訊資料的方法及其裝置 | |
CN105850121A (zh) | 用于基于块的自适应环路滤波的滤波器控制的方法 | |
CN105306957B (zh) | 自适应环路滤波方法和设备 | |
US20140036991A1 (en) | Method and Apparatus for Sample Adaptive Offset in a Video Decoder | |
CN103200402A (zh) | 清除解块人为噪声的方法 | |
EP3884667B1 (en) | Video coding with triangular shape prediction units | |
CN104521234B (zh) | 合并去区块处理和取样自适应偏移处理的视频处理方法和装置 | |
CN107040778A (zh) | 环路滤波方法以及环路滤波装置 | |
US20140169478A1 (en) | Method and apparatus of deblocking filter with simplified boundary strength decision | |
CN110249630B (zh) | 去块效应滤波装置、方法和存储介质 | |
CN111164975B (zh) | 图像数据编码和解码 | |
Ramakrishna et al. | SAO filtering inside CTU loop for high efficiency video coding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160908 Address after: Hsinchu County, Taiwan, China Patentee after: Atlas Limited by Share Ltd Address before: Hsinchu Science Park, Taiwan, China Patentee before: MediaTek.Inc |