CN112312139A - 视频解码的环路滤波方法与解码装置 - Google Patents

视频解码的环路滤波方法与解码装置 Download PDF

Info

Publication number
CN112312139A
CN112312139A CN201910710807.7A CN201910710807A CN112312139A CN 112312139 A CN112312139 A CN 112312139A CN 201910710807 A CN201910710807 A CN 201910710807A CN 112312139 A CN112312139 A CN 112312139A
Authority
CN
China
Prior art keywords
block
pixel
pixels
filtering
internal memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910710807.7A
Other languages
English (en)
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.)
Ali Corp
Original Assignee
Ali Corp
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 Ali Corp filed Critical Ali Corp
Priority to CN201910710807.7A priority Critical patent/CN112312139A/zh
Publication of CN112312139A publication Critical patent/CN112312139A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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

视频解码的环路滤波方法与解码装置
技术领域
本发明是有关于视频解码技术,且特别是有关于一种视频解码的环路滤波方法与解码装置。
背景技术
随着可再现及储存高解析度或高清晰度视频内容的硬件的开发及传播,越来越需要对高解析度或高清晰度视频内容进行有效地编码或解码的视频编解码器。像是,AVS2等标准已建立,并积极地用于视频编解码器中以获得高压缩效率及高影像品质。AVS2可支援超高解析度(4K以上)、高动态范围视频的高效压缩。
环路滤波模块是AVS2编解码演算法重要的组成部分之一,其主要作用之一为:平滑影像中由于基于块处理的运动补偿、变换及量化产生和虚假边界,降低影像块效应。基于硬件的设计,环路滤波模块需要对每个数据块(可能是一个32X32或16X16的最大编码单元(Largest Coding Unit,LCU)或者四分之一个64X64的LCU)的边缘进行去块滤波(Deblockfiltering),上述数据块可称之为去块滤波块(Deblocking Block,DB)。由于去块滤波需要相邻块内的像素数据,因而同一DB的像素数据需要多次被存取,且存取时机又受限于基于光栅扫描的解码顺序,这对内部记忆体的数据传输频宽与储存容量造成一定程度的压力。此外,每个DB的边界是和LCU的边界对齐的,但样本自适应偏移滤波(Sample AdaptiveOffset filtering,SAO)却是对往左上方偏移上述DB后而取得的SAO滤波块进行滤波,因而需要一种有效率的数据存取方式来获得正确滤波块内的像素数据。
发明内容
有鉴于此,本发明提供一种视频解码的环路滤波方法与解码装置,其可节约用以进行环路滤波的内部存储空间并提升解码效率。
本发明的一实施例提供一种视频解码的环路滤波方法,其包括下列步骤:将第一影像区块的第一中间区块像素、第一右侧区块像素、第一中下区块像素,以及第一右下区块像素分别写入内部存储器的多个存储区块;自所述内部存储器读取所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素,并自所述内部存储器读取所述第一影像区块的相邻像素,以针对所述第一影像区块执行去块滤波与样本自适应偏移滤波,其中所述第一影像区块的相邻像素包括相对于所述第一影像区块的第一左上区块像素、第一中上区块像素、第一右上区块像素、第一左侧区块像素、第一左下区块像素;在针对所述第一影像区块执行去块滤波与样本自适应偏移滤波之后,自所述内部存储器输出所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素,而释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的多个释放存储区块;将第二影像区块的第二中间区块像素写入释出所述第一中间区块像素的所述释放存储区块,并将所述第二影像区块的第二右侧区块像素、第二中下区块像素,以及第二右下区块像素分别写入所述内部存储器的多个存储区块;自所述内部存储器读取所述第二中间区块像素、所述第二右侧区块像素、所述第二中下区块像素,以及所述第二右下区块像素,并自所述内部存储器读取所述第二影像区块的相邻像素,以针对所述第二影像区块执行去块滤波与样本自适应偏移滤波,其中所述第二影像区块的相邻像素包括相对于所述第二影像区块的第二左上区块像素、第二中上区块像素、第二右上区块像素、第二左侧区块像素、第二左下区块像素。其中,所述第二左侧区块像素为所述第一右侧区块像素,而第二左上区块像素为第一右上区块像素,且所述第二左下区块像素为所述右下区块像素。
从另一观点来看,本发明的一实施例提出一种视频解码的解码装置,其包括内部存储器、输入模块、滤波模块,以及输出模块。所述输入模块耦接所述内部存储器,并将第一影像区块的第一中间区块像素、第一右侧区块像素、第一中下区块像素,以及第一右下区块像素分别写入内部存储器的多个存储区块。所述滤波模块耦接所述内部存储器,并自所述内部存储器读取所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素,并自所述内部存储器读取所述第一影像区块的相邻像素,以针对所述第一影像区块执行去块滤波与样本自适应偏移滤波。其中,所述第一影像区块的相邻像素包括相对于所述第一影像区块的第一左上区块像素、第一中上区块像素、第一右上区块像素、第一左侧区块像素、第一左下区块像素。所述输出模块耦接所述内部存储器。在所述滤波模块针对所述第一影像区块执行去块滤波与样本自适应偏移滤波之后,所述输出模块输出记录于所述内部存储器中所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素,而所述内部存储器释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的多个释放存储区块。接着,所述输入模块将第二影像区块的第二右侧区块像素写入所述内部存储器中释出所述第一左侧区块像素的所述释放存储区块,并将所述第二影像区块的第二中间区块像素、第二中下区块像素,以及第二右下区块像素分别写入所述内部存储器的多个存储区块。所述滤波模块自所述内部存储器读取所述第二中间区块像素、所述第二右侧区块像素、所述第二中下区块像素,以及所述第二右下区块像素,并自所述内部存储器读取所述第二影像区块的相邻像素,以针对所述第二影像区块执行去块滤波与样本自适应偏移滤波。所述第二影像区块的相邻像素包括相对于所述第二影像区块的第二左上区块像素、第二中上区块像素、第二右上区块像素、第二左侧区块像素、第二左下区块像素。并且,所述第二左侧区块像素为所述第一右侧区块像素,而第二左上区块像素为第一右上区块像素,且所述第二左下区块像素为所述右下区块像素。
基于上述,在本发明的实施例中,当对最大编码单元中的影像区块依序进行去块滤波与样本自适应偏移滤波时,内部存储器的储存空间可以被重复使用,进而使内部存储器的储存空间可以被有效利用。此外,基于本发明实施例中的数据存取方法,样本自适应偏移滤波可在去块滤波后直接进行,从而简化去块滤波至SAO滤波的滤波过程且节省环路滤波过程所需花费的时间。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附图式作详细说明如下。
附图说明
图1是根据本发明一实施例所绘示的用于视频解码的解码装置的示意图。
图2是根据本发明一实施例所绘示的环路滤波模块的示意图。
图3是根据本发明一实施例所绘示的对最大编码单元进行环路滤波的示意图。
图4A至图4C是根据本发明一实施例所绘示的环路滤波方法的示意图。
图5是依据本发明一实施例所绘示的像素数据与储存位址的示意图。
图6是根据本发明一实施例所绘示的环路滤波方法的流程图。
图7是根据本发明一实施例所绘示的去块滤波块与SAO滤波块的示意图。
图8A与图8B是依据本发明一实施例所绘示的垂直边缘类型的SAO滤波的示意图。
图9A与图9B是依据本发明一实施例所绘示的水平边缘类型的SAO滤波的示意图。
图10A与图10B是依据本发明一实施例所绘示的135度对角类型SAO滤波的示意图。
图11A与图11B是依据本发明一实施例所绘示的45度对角类型SAO滤波的示意图。
附图标记说明
10:解码装置
110:熵解码模块
120:反量化模块
130:反变换模块
140:帧内预测模块
150:帧间预测模块
160:参考影像缓存
170:求和器
180:环路滤波模块
181:输入模块
182:内部存储器
183:滤波模块
184:输出模块
185:直接存取电路
186:线缓冲器
1831:PQ缓存
1832:去块滤波模块
1833:多工器
1834:SAO滤波模块
DB1~DB4:影像区块
300、301、701:最大编码单元
DB’:去块滤波块
DB”:SAO滤波块
H1:水平边缘
S601~S607:步骤
具体实施方式
现将详细参考本示范性实施例,在附图中说明所述示范性实施例之实例。另外,凡可能之处,在图式及实施方式中使用相同标号的元件/构件代表相同或类似部分。
图1是根据本发明一实施例所绘示的用于视频解码的解码装置的示意图。请参照图1,用于视频解码的解码装置10可包括熵解码模块110、反量化模块120、反变换模块130、帧内预测模块140、帧间预测模块150、参考影像缓存160、求和器170,以及环路滤波模块180。
视频解码装置10的熵解码模块110对码流进行熵解码以产生经量化的系数和一些语法元素,并将经量化的系数与此些语法元素转发到反量化模块120、帧内预测模块140以及帧间预测模块150。帧内预测模块140可基于帧内预测模式与来自当前帧的先前经解码影像块的数据而产生预测块。帧间预测模块150可基于熵解码模块110输出的语法元素确定帧间预测模式而产生预测块。反量化模块120对经由熵解码模组80解码而产生的经量化变换系数进行逆量化。反变换模块130将逆变换应用于变换系数,例如逆DCT或概念上类似的逆变换过程,以便产生残差块。在帧内预测模块140或帧间预测模块150产生预测块之后,视频解码装置10藉由将来自反变换模块130的残差块与对应的预测块求和以得到重建的块,即为经解码影像块。求和器170即为执行此求和操作的组件。环路滤波模块180可对经解码影像块进行滤波以改进视频品质,并且可将这些资讯存储在参考影像缓存160中。
于本发明的实施例中,环路滤波模块可包括去块滤波模块与样本自适应偏移(SAO)滤波模块。然而,环路滤波模块180还更可以包括自我调整环路滤波模块(ALF)与其他类型的杂讯抑制滤波模块,本发明对此不限制。
详细而言,图2是根据本发明一实施例所绘示的环路滤波模块的示意图。请参照图2,环路滤波模块180包括输入模块181、内部存储器182、滤波模块183,以及输出模块184。输入模块181、内部存储器182、滤波模块183,以及输出模块184可视为多个电路模块,这些电路模块可由集成电路实现。需特别说明的是,输入模块151与滤波模块183可执行各自负责任务而分时复用内部存储器182内的存储空间,从而形成流水线(Pipeline)处理结构。换言之,输入模块151与滤波模块183可视为两个流水级单元。
输入模块181接收经解码影像块的数据,并将数据写入内部存储器182。值得一提的是,输入模块181是基于本发明之特定存取规则而将待滤波的数据写入内部存储器182的指定存储区块,以达到内部存储器182的区块复用。对此,后续将有更详尽的说明。
滤波模块183耦接内部存储器182,其可包括PQ缓存1831、去块滤波模块1832、多工器1833与SAO滤波模块1834。PQ缓存1831用以暂存即将进行去块滤波之边缘的像素数据。去块滤波模块1832可去除帧间预测和帧内预测所产生的块状边缘。去块滤波模块1832自PQ缓存1831取出像素数据而将平滑函数应用于块边界,以去除块边界的不连续现象。一般而言,待滤波边界左右或上下6个像素将先暂存于PQ缓存1831之内。例如,以一个8x8的单位滤波块来说,PQ缓存1831可暂存用于垂直去块滤波的48(即6*8)个像素。
进一步而言,去块滤波模块1832系以一个单位滤波块为处理单位进行去块滤波,其按照光栅扫描讯依序处理每个单位滤波块。每个单位滤波块包括一条垂直边缘与一条水平边缘。对于每个单位滤波块,去块滤波模块1832将先对垂直边缘进行去块滤波后,再对水平边缘进行去块滤波。去块滤波模块1832依据一些判断条件来判断边缘是否需要滤波。若需要滤波,去块滤波模块1832再依据该边缘两侧的像素数据进一步判断滤波强度。
于本发明的实施例中,去块滤波模块1832可包括用以进行垂直去块滤波的垂直去块滤波模块1832a以及用以进行水平去块滤波的水平去块滤波模块1832b。垂直去块滤波模块1832a进行滤波后,将进行垂直去块滤波后的数据输出至多工器1833。多工器1833会将进行完垂直去块滤波的数据发送回内部存储器1822而覆写内部存储器1822内原本未进行垂直去块滤波的数据。接着,水平去块滤波的水平去块滤波模块1832b再依据从内部存储器182读取至PQ缓存1831之内的已完成垂直去块滤波的数据进行水平去块滤波,并将进行水平去块滤波后的数据输出至多工器1833。需注意的是,多工器1833将进行完水平去块滤波的数据输出至SAO滤波模块182,以将完成垂直去块滤波与水平去块滤波的数据输出至SAO滤波模块182。
SAO滤波模块1834用以去除与样本失真相关的伪影,像是振铃伪影与带化伪影。解码端的SAO滤波模块1834将运用由编码端确定的偏移对已完成垂直去块滤波与水平去块滤波的数据执行SAO滤波。SAO滤波模块1834将完成SAO滤波的数据发送回内部存储器1822进行覆写,并由输出模块184将完成去块滤波与SAO滤波的数据提供给后续其他模块,例如自适应环路滤波(adaptive loop filter,ALF)模块或参考图像缓冲区(reference picturebuffer)。
图3是根据本发明一实施例所绘示的对最大编码单元进行环路滤波的示意图。请参照图3,解码装置10的解码顺序是基于一个最大编码单元(LCU)的光栅扫描。最大编码单元300可被分割为第一影像区块DB1、第二影像区块DB2、第三影像区块DB3、第四影像区块DB4等4个区块。最大编码单元300的尺寸可为64x64像素,但本发明并不限制于此。基于光栅扫描的顺序,环路滤波模块180将依照第一影像区块DB1、第二影像区块DB2、第三影像区块DB3、第四影像区块DB4的顺序依序进行环路滤波。此外,在完成最大编码单元300的环路滤波之后,环路滤波模块180再对下一个最大编码单元301进行滤波。环路滤波模块180也将依据光栅扫描的规则而对最大编码单元301内的影像区块依序进行滤波。
基于去块滤波的滤波原理,去块滤波模块1832需要与最大编码单元300相邻之其他最大编码单元内的像素数据来完成去块滤波,因此内部存储器182不仅需要储存最大编码单元300内的像素数据,更要储存额外的其他相邻像素数据。亦即,于习知技术中,内部存储器182需要将当前处理的最大编码单元的所有像素数据与相邻的最大编码单元的所有像素数据通通储存下来,此举将耗费不少的储存空间。然而,于本发明的实施例中,藉由特殊的数据管理与存取方法,内部存储器182的储存空间可以在对一个最大编码单元进行滤波期间有效地被复用,使本发明可依据较小的内部储存空间完成去块滤波与SAO滤波。
详细而言,图4A至图4C是根据本发明一实施例所绘示的环路滤波方法的示意图。请先参照图4A,以下实施例将以对最大编码单元300进行滤波为例进行说明。本实施例的最大编码单元300尺寸为64x64像素,可知的,第一影像区块DB1的尺寸为32x32像素。首先,输入模块181将第一影像区块DB1的第一中间区块像素C1、第一右侧区块像素R1、第一中下区块像素CD1,以及第一右下区块像素RD1分别写入内部存储器182的多个存储区块。详细而言,输入模块181可将16x28的第一中间区块像素C1、16x28第一右侧区块像素R1、16x4的第一中下区块像素CD1,以及16x4第一右下区块像素RD1分别写入内部存储器182的第一存储区块①、第二存储区块②、第三存储区块③以及第四存储区块④。
接着,滤波模块183自内部存储器182读取第一中间区块像素C1、第一右侧区块像素R1、第一中下区块像素CD1,以及第一右下区块像素RD1,并自内部存储器182读取第一影像区块DB1的相邻像素,以针对第一影像区块DB1执行去块滤波与SAO滤波。需说明的是,第一影像区块DB1的相邻像素同样保留于内部存储器182中,第一影像区块DB1的相邻像素包括相对于第一影像区块DB1的第一左上区块像素LU1、第一中上区块像素CU1、第一右上区块像素RU1、第一左侧区块像素L1、第一左下区块像素LD1,这些相邻像素分别储存于内部存储器182的多个存储区块中。详细来说,16x4的第一左上区块像素LU1储存于第五存储区块⑤;16x4的第一中上区块像素CU1储存于第六存储区块⑥;16x4的第一右上区块像素RU1储存于第七存储区块⑦;16x28的第一左侧区块像素L1储存于第八存储区块⑧;16x4的第一左下区块像素LD1储存于第九存储区块⑨。上述之第一存储区块①至第九存储区块⑨对应至不同的存储地址。
特别说明的是,在针对第一影像区块DB1执行去块滤波与SAO滤波之前,直接存取电路185可自线缓冲器186取得第一左上区块像素LU1、第一中上区块像素CU1及第一右上区块像素RU1,并分别写入第五存储区块⑤、第六存储区块⑥与第七存储区块⑦。
接着,滤波模块183依据第一存储区块①至第九存储区块⑨内的数据针对第一影像区块DB1执行去块滤波与SAO滤波。需注意的是,由于第二影像区块DB2尚未写入内部存储器182,因此第一右侧区块像素R1与第一右下区块像素RD1内最右边的部份像素无法有足够的邻近资讯来完成去块滤波,因而第一右侧区块像素R1与第一右下区块像素RD1内最右边的部份像素也无法完成后续的SAO滤波。如图4A打斜线的区块所示,对于第一影像区块DB1而言,第一右上区块像素RU1与第一右侧区块像素R1内部份的像素可完成去块滤波与SAO滤波,但第一中上区块像素CU1、第一中间区块像素C1内所有像素可完成去块滤波与SAO滤波。
承上述,在滤波模块183依据第一存储区块①至第九存储区块⑨内的数据针对第一影像区块DB1执行去块滤波与SAO滤波之后,输出模块184输出记录于内部存储器182中第一左上区块像素LU1、第一中上区块像素CU1、第一左侧区块像素L1、第一中间区块像素C1。因此,内部存储器182可释出对应至第一左上区块像素LU1、第一中上区块像素CU1、第一左侧区块像素L1、第一中间区块像素C1的多个释放存储区块(亦即第五存储区块⑤、第六存储区块⑥、第八存储区块⑧、第一存储区块①)。
可知的,依据第一影像区块DB1内的像素与相对于第一影像区块DB1之左侧与上方的相邻像素,第一右侧区块像素R1与第一右下区块像素RD1内最右边的部份像素无法完成去块滤波,因此第一右侧区块像素R1与第一右下区块像素RD1将保留于内部存储器182。此外,第一右上区块像素RU1、第一左下区块像素LD1、第一中下区块像素CD1、第一右下区块像素RD1后续需用于第二影像区块DB2与第三影像区块DB3的去块滤波与SAO滤波,因此保留于内部存储器182内。
换言之,在内部存储器182释出对应至第一左上区块像素LU1、第一中上区块像素CU1、第一左侧区块像素L1、第一中间区块像素C1的多个释放存储区块的同时,内部存储器182保留第一右上区块像素RU1、第一右侧区块像素R1、第一左下区块像素LD1、第一中下区块像素CD1、第一右下区块像素RD1于内部存储器182中。
接续图4A,请参照图4B,输入模块181将第二影像区块DB2的第二右侧区块像素R2写入内部存储器182中释出第一左侧区块像素L1的释放存储区块(亦即第八存储区块⑧),将第二影像区块DB2的第二中间区块像素C2写入内部存储器182中释出第一中间区块像素C1的释放存储区块(亦即第一存储区块①),并将第二中下区块像素CD2以及第二右下区块像素RD2分别写入内部存储器182的多个存储区块。详细而言,输入模块181将第二中下区块像素CD2以及第二右下区块像素RD2分别写入第十存储区块⑩与第十一存储区块
Figure BDA0002153663300000091
对比图4A与图4B可知,第一存储区块①与第八存储区块⑧于对LCU 300进行去块滤波与SAO滤波的期间有被重复使用来储存不同数据。
之后,滤波模块183自内部存储器182读取第二中间区块像素C2、第二右侧区块像素R2、第二中下区块像素CD2,以及第二右下区块像素RD2,并自内部存储器182读取第二影像区块DB2的相邻像素,以针对第二影像区块DB2执行去块滤波与SAO滤波。
相似于第一影像区块DB1的滤波规则,第二影像区块DB2的相邻像素包括相对于第二影像区块DB2的第二左上区块像素LU2、第二中上区块像素CU2、第二右上区块像素RU2、第二左侧区块像素L2、第二左下区块像素LD2。需特别注意的是,第一影像区块DB1位于第二影像区块DB2的左侧。基此,于本发明的实施例中,第二左侧区块像素L2即为储存于第二存储区块②的第一右侧区块像素R1,而第二左上区块像素LU2即为储存于第七存储区块⑦的第一右上区块像素RU1,且第二左下区块像素LD2即为储存于第四存储区块④的右下区块像素RD1。
需注意的是,在针对第二影像区块DB2执行去块滤波与SAO滤波之前,直接存取电路185可自线缓冲器186取得第二中上区块像素CU2、第二右上区块像素RU2,而第二中上区块像素CU2与第二右上区块像素RU2为LCU 300上方之另一LCU的像素,并将第二中上区块像素CU2、第二右上区块像素RU2写入第六存储区块⑥与第五存储区块⑤。
相似的,如图4B打斜线的区块所示,对于第二影像区块DB2而言,第二右上区块像素RU2与第二右侧区块像素R2仅内部份的像素可完成去块滤波与SAO滤波,但第二中上区块像素CU2、第二中间区块像素C2内所有像素可完成去块滤波与SAO滤波。
在针对第二影像区块DB2执行去块滤波与SAO滤波之后,输出模块184自内部存储器182输出第二左上区块像素LU2、第二中上区块像素CU2、第二左侧区块像素L2、第二中间区块像素C2,因而内部存储器182释出对应至第二左上区块像素LU2、第二中上区块像素CU2、第二左侧区块像素L2、第二中间区块像素C2的多个释放存储区块(亦即第七存储区块⑦、第六存储区块⑥、第二存储区块②、第一存储区块①)。
接续图4B,请参照图4C,基于光栅扫描的顺序,环路滤波模块183将接着对第三影像区块DB3进行滤波。第三影像区块DB3为四分之一的最大编码单元300,且第三影像区块DB3位于第一影像区块DB1的下方。输入模块181将第三影像区块DB3的第三中间区块像素C3与第三右侧区块像素R3写入释出第二中间区块像素C2与第二左侧区块像素L2的释放存储区块(即第一存储区块①与第二存储区块②)。输入模块181更将第三影像区块DB3的第三中下区块像素CD3与第三右下区块像RD3素写入内部存储器182的多个存储区块(即第十二存储区块
Figure BDA0002153663300000101
与第十三存储区块
Figure BDA0002153663300000102
)。
同时参照图4A至图4C可知,以第一存储区块①为例,第一存储区块①于滤波模块183分别对第一影像区块DB1、第二影像区块DB2以及第三影像区块DB3依序进行滤波时是被使用来储存不同的像素数据(分别为第一影像区块DB1的第一中间区块像素CU1、第二影像区块DB2的第二中间区块像素CU2,以及第三影像区块DB2的第三中间区块像素CU3),此突显出存储区块的复用性。
接着,滤波模块183自内部存储器182读取第三中间区块像素C3与第三右侧区块像素R3、第三中下区块像素CD3,以及第三右下区块像素RD3,并自内部存储器182读取第三影像区块DB3的相邻像素,以针对第三影像区块DB3执行去块滤波与SAO滤波。
第三影像区块DB3的相邻像素包括相对于第三影像区块DB3的第三左上区块像素LU3、第三中上区块像素CU3、第三右上区块像素RU3、第三左侧区块像素L3、第三左下区块像素LD3。需特别注意的是,第一影像区块DB1位于第三影像区块DB3的上侧。基此,于本发明的实施例中,第三左上区块像素LU3即为第九存储区块⑨中的第一左下区块像素LD1,而第三中上区块像素CU3即为第三存储区块③中的第一中下区块像素CD1,且第三右上区块像素RU3即为第四存储区块④中的第一右下区块像素RD1。
相似的,如图4C打斜线的区块所示,对于第三影像区块DB3而言,第三右上区块像素RU3与第三右侧区块像素R3仅内部份的像素可完成去块滤波与SAO滤波,但第三中上区块像素CU3、第三中间区块像素C3内所有像素可完成去块滤波与SAO滤波。
在滤波模块183针对第三影像区块DB3执行去块滤波与SAO滤波之后,直接存取电路185将第三影像区块DB3中尚未完成滤波的第三中下区块像素CD3与第三右下区块像素RD3储存至线缓冲器186。因此,当处理下一行的另一最大编码单元时,直接存取电路185可将线缓冲器186内的第三中下区块像素CD3与第三右下区块像素RD3写入至内部存储器185,以作为另一最大编码单元中关联于另一影像区块的相邻像素。如同图4B的范例,当对第二影像区块DB2进行滤波时,直接存取电路185需将线缓冲器186内的第二中上区块像素CU2与第二右上区块像素RU2写入至内部存储器185,以作为第二影像区块DB2的相邻像素,而第二中上区块像素CU2与第二右上区块像素RU2也可据以完成去块滤波与SAO滤波。
在对第三影像区块DB3进行滤波之后,滤波模块将依据与上述相同的规则对第四影像区块DB4进行滤波,本领域技术人员可依据前述说明而合理推知如何对第四影像区块DB4进行滤波,于此不再赘述。
一般而言,前述内部存储器1822中的每一存储区块包括多个连续的存储地址空间,而各个存储区块彼此可为相邻或不相邻,本发明不加以限制。
图5是依据本发明一实施例所绘示的像素数据与储存位址的示意图。请参照图5,两个LCU 300、301内各像素与相邻像素的储存位置如图5所示。其中,本实施例的内部存储器182的每一存储地址可存储4x4像素的数据,因此图5所示的每一影像区块中的一小格代表可存储于同一存储地址中的4x4个像素。LCU 300、301分别被分割为4个影像区块,LCU300包括第一影像区块DB1、第二影像区块DB2、第三影像区块DB3、第四影像区块DB4。LCU301包括第五影像区块DB5、第六影像区块DB6、第七影像区块DB7、第八影像区块DB8。滤波模块183将先对第一影像区块DB1、第二影像区块DB2、第三影像区块DB3、第四影像区块DB4进行滤波之后,再对第五影像区块DB5、第六影像区块DB6、第七影像区块DB7、第八影像区块DB8进行滤波。更进一步而言,环路滤波模块180完成LCU 300的去块滤波及SAO滤波,而要接着对LCU 301进行同样的滤波处理时,对第五影像区块DB5、第六影像区块DB6、第七影像区块DB7、第八影像区块DB8的处理流程分别与上述对第一影像区块DB1、第二影像区块DB2、第三影像区块DB3、第四影像区块DB4的滤波过程相同,本领域技术人员可依据前述说明而合理推知如何对LCU 301的各影像区块进行滤波,于此不再赘述。
同时参照图4A~图4C与图5,第一存储区块①对应至位址64~91的区块。第二存储区块②对应至位址96~123的区块。第三存储区块③对应至位址144~147的区块。第四存储区块④对应至位址148~151的区块。第五存储区块⑤对应至位址128~131的区块。第六存储区块⑥对应至位址136~139的区块。第七存储区块⑦对应至位址140~143的区块。第八存储区块⑧对应至位址0~27的区块。第九存储区块⑨对应至位址132~135的区块。第十存储区块
Figure BDA0002153663300000121
对应至位址152~155的区块。第十一存储区块
Figure BDA0002153663300000122
对应至位址156~159的区块。第十二存储区块
Figure BDA0002153663300000123
对应至位址92~95的区块。第十三存储区块
Figure BDA0002153663300000124
对应至位址124~127的区块。第十四存储区块
Figure BDA0002153663300000125
对应至位址32~59的区块。第十五存储区块
Figure BDA0002153663300000126
对应至位址60~63的区块。如图5所示,因为本发明可以实现存储区块的复用,所以对于对64x64像素的LCU进行滤波时,内部存储器182仅仅需要156个记忆体位置。
本实施例仅是假设在环路滤波后的下一级以4列地址为单位进行处理,故每一存储区块皆4列地址以为单位,但本发明不以此为限。此外,文中所提到的存储区块的地址号码仅是为了说明目的而使用的索引编号,并不限制为内部存储器182的实际存储地址。
参照图5,以对第一影像区块DB进行滤波来说明,前述提及需要第一影像区块DB的相邻像素进行去块滤波与SAO滤波。实际上,当对第一影像区块DB进行垂直去块滤波时,基于去块滤波的原理,仅有以第一左侧区块像素中位址3为列首的那一列像素(对应至位址3、位址7、位址11、位址15、位址19、位址23、位址27)会输入至去块滤波模块1832进行滤波。当对第一影像区块DB进行水平去块滤波时,基于去块滤波的原理,仅有以第一中上区块像素与第一右上区块像素中位址136为行首的那一行像素(对应至位址136、位址137、位址138、位址139、位址140、位址141、位址142)会输入至去块滤波模块1832进行滤波。此外,当对第一影像区块DB进行SAO滤波时,基于SAO滤波的原理,储存于位址64~91、位址96~123、位址131、位址136~142、位址3、位址7、位址11、位址15、位址19、位址23、位址27的像素会输入至SAO滤波模块1834进行滤波。
由此可知,在对第一影像区块DB1进行滤波后,储存于位址96~123以及位址144~151的部分像素未完成滤波,所以位址96~123以及位址144~151内的像素数据继续保留在内部存储器182中。储存于位址64~91内所有像素已经完成去块滤波与SAO滤波,因而可与同样完成去块滤波与SAO滤波的位址0~27、128~131、136~139内所有像素一同输出,并释出位址64~91、0~27、128~131、136~139。
当处理第二影像区块DB2时,第二影像区块DB2的像素可写入位址64~91、0~27、152~159。如同对第一影像区块DB1所进行的滤波动作,储存于位址0~27以及位址152~159的部分像素未完成滤波,所以位址0~27以及位址152~159内的像素数据继续保留在内部存储器182中。储存于位址140~143、96~123、136~139、64~91内所有像素已经完成去块滤波与SAO滤波,因而可以输出并释出位址140~143、96~123、136~139、64~91。
当处理第三影像区块DB3时,第三影像区块DB3的像素会写入64~127位址,结合储存于位址32~63、132~135、144~151的像素完成部分滤波。接着,储存于位址32~59、132~135、144~147、64~91的像素完成所有滤波能够输出。储存于位址96~123的部份像素未完成滤波,需要继续保存在内部存储器182中。储存于位址60~63、92~95、124~127的像素数据需要保存至线缓冲器186中,等到下一行LCU到来时放到内部存储器182的地址128~131、136~143中。
当处理第三影像区块DB4时,第四影像区块DB4的像素会写入位址64~95、32~63中,结合储存于位址96~123、148~155的像素完成部分滤波。接着,储存于位址148~155、96~123、64~91的像素完成所有滤波能够输出。储存于位址32~59、156~159的部份像素未完成滤波,需要继续保存在内部存储器182中。储存于位址92~95、60~63的像素数据需要保存至线缓冲器186中,等到下一行LCU到来时放到内部存储器182的地址136~139、128~131中。
以图5的范例来说,对第三影像区块DB3、第四影像区块DB4、第七影像区块DB7、第八影像区块DB8进行滤波之后,第三影像区块DB3、第四影像区块DB4、第七影像区块DB7、第八影像区块DB8内最底下一行的像素都可以被写入线缓冲器186,等待下一行LCU进行滤波时被取出而存入内部存储器182。
图6是根据本发明一实施例所绘示的环路滤波方法的流程图。请同时参照图6与图4A,于步骤S601,输入模块181将第一影像区块DB1的像素写入内部存储器182。于步骤S602,垂直去块滤波模块1832a自内部存储器182读取第一影像区块DB1的像素与第一影像区块DB1的相邻像素,而执行垂直去块滤波。第一影像区块DB1的像素包括第一中间区块像素C1、第一右侧区块像素R1、第一中下区块像素CD1,以及第一右下区块像素RD1。于步骤S603,垂直去块滤波模块1832a将完成垂直去块滤波的像素写回内部存储器182。
之后,在垂直去块滤波模块1832a将执行垂直去块滤波所产生的像素写回内部存储器182之后,于步骤S604,水平去块滤波模块1832b自内部存储器182读取第一影像区块DB1的像素与第一影像区块DB1的相邻像素,而执行水平去块滤波并计算SAO滤波所需的比较因子。关于比较因子的详细计算方式,后续实施例有更详细的说明。需说明的是,于一实施例中,水平去块滤波模块1832b可计算出SAO滤波所需的全部比较因子。于另一实施例中,由于部份的像素不会因应水平去块滤波而有更动,因而有部份的比较因子可先行由垂直去块滤波模块1832a计算。换言之,水平去块滤波模块1832b可计算出SAO滤波所需的部份比较因子,而SAO滤波所需的另一部份比较因子是由垂直去块滤波模块1832a计算。垂直去块滤波模块1832a产生的部份比较因子可先暂存于去块滤波模块1832中的暂存器或先提给SAO滤波模块1834。
在水平去块滤波模块1832b执行水平去块滤波之后,于步骤S605,在未将执行水平去块滤波所产生的像素写回内部存储器182的情况下,SAO滤波模块1834依据比较因子对SAO滤波块执行SAO滤波。接着,于步骤S606,SAO滤波模块1834将执行水平去块滤波与SAO滤波所产生的像素写回内部存储器182。于步骤S604,内部存储器182将完成去块滤波与SAO滤波的像素输出以进行下一阶段的其他滤波处理。
需注意的是,上述SAO滤波块为第一影像区块DB向上与向左偏移而取得的区块。请参照图7,图7是根据本发明一实施例所绘示的去块滤波块与SAO滤波块的示意图。以AVS2标准来说,去块滤波模块1832是对与最大编码单元701之边界对齐的去块滤波块DB’(例如第一影像区块DB1)依序进行去块滤波。然而,SAO滤波模块1834系以SAO滤波块DB1”为单位进行滤波。如图7所示,SAO滤波块DB1”为去块滤波块DB’向上与向左偏移而取得的区块。
须先说明的是,SAO滤波模块1834可基于由熵解码模块110提取的SAO资讯而判定当前SAO滤波块DB1”的SAO模式、SAO类别以及偏移值。于此,SAO模式包括边缘模式(SAO_edge mode)或区间模式(SAO_interval mode),而SAO类别用以根据边缘类型指示边缘方向或根据区间类型指示区间范围。偏移值可指示SAO类别中所包含的经重新建构的像素与原始像素之间的差值,用以将原始影像与经重新建构的影像之间的误差最小化。然而,基于AVS2的规范,当SAO模式为边缘模式时,SAO滤波模块需要依据当前SAO滤波块DB1”所对应的边缘类型进行滤波。换言之,当SAO模式为边缘模式时,同一SAO滤波块DB1”系以相同的边缘类型进行滤波。边缘类型可包括水平边缘类型、垂直边缘类型、135度对角类型、45度对角类型,而边缘类型决定计算比较因子的方向。
基于前述实施例可知,去块滤波模块1832系以一个去块滤波块DB1’为执行单位。然而,如图7所示,在对去块滤波块DB1’执行去块滤波时,网点范围内的邻近像素资讯是必须的,即位于去块滤波块DB1’左侧与上方的邻近像素。基于AVS2的规范,由于SAO滤波系以相异于去块滤波块DB’的SAO滤波块DB1”进行滤波,因而习知技术需要将进行去块滤波后的数据写回内部存储器,再从内部存储器读取SAO滤波块DB1”内的数据进行滤波。
然而,于本发明的实施例中,由于水平去块滤波模块1832b可一并自内部存储器182读取去块滤波块DB’内的像素与网点范围内的邻近像素,且SAO滤波块DB1”对应至边缘模式中相同的边缘类型,因此SAO滤波模块1834可自水平去块滤波模块1832b接收水平去块滤波后的像素数据与基于同一边缘类型而产生之比较因子来进行SAO滤波。因此,本发明实施例的水平去块滤波模块1832b无须将水平去块滤波后数据写回内部存储器182,而SAO滤波模块1834也无须自内部存储器182读取数据而是直接从水平去块滤波模块1832b取得,从而可节省数据写回与数据读出的时间而提升解码效率。
需特别说明的是,于本发明的实施例中,SAO滤波块的SAO模式为边缘模式,而水平去块滤波模块1832b将依据边缘类型比较当前像素与当前像素之两侧相邻像素,以取得当前像素的比较因子,并将比较因子纪录于暂存器(未绘示)。边缘类型决定该取当前像素哪一个方向上的两侧相邻像素来产生比较因子。举例而言,当边缘类型为垂直边缘类型,水平去块滤波模块1832b将分别比较当前像素与上下两侧之像素而产生当前像素的两个比较因子。当边缘类型为水平边缘类型,水平去块滤波模块1832b将分别比较当前像素与左右两侧之像素而产生当前像素的两个比较因子。当边缘类型为135度对角类型或45度对角类型,水平去块滤波模块1832b将分别比较当前像素与斜对角方向两侧之像素而产生当前像素的两个比较因子。
承上述,针对同一SAO滤波块DB1”,水平去块滤波模块1832b可依据相同的边缘类型获取SAO滤波块DB1”中每一像素所对应的比较因子。之后,SAO滤波模块1834依据SAO滤波块DB1”内的每一像素与每一像素之两侧相邻像素之间的比较因子决定每一像素的偏移值。于是,SAO滤波模块1834可依据每一像素的偏移值补偿SAO滤波块DB1”内的每一像素,并将进行完水平去块滤波与SAO滤波的数据写回内部存储器182。
图8A与图8B是依据本发明一实施例所绘示的垂直边缘类型的SAO滤波的示意图。请参照图8A,假设边缘类型为垂直边缘类型,SAO滤波模块1834将比较当前像素c与上下相邻像素a、b之间的大小而获取两个比较因子。请参照图8B,当水平去块滤波模块1832b对水平边缘H1进行水平去块滤波时,水平边缘H1两侧的像素P1~像素P36会用以执行水平去块滤波而改变。所述之比较因子表示两像素之间的大小关系,其可以为一个2位元的数据,用以表示大小关系“大于”、“等于”或“小于”。
需特别说明的是,由于边缘类型为图8A所示的垂直边缘类型,在水平去块滤波模块1832b对某一列像素进行水平去块滤波之后,水平去块滤波模块1832b可根据水平去块滤波所产生的该列像素计算像素之间的比较因子。举例而言,在水平去块滤波模块1832b对第M1列的像素P1~像素P6进行水平去块滤波之后,水平去块滤波模块1832b可依据响应于水平去块滤波而改变的像素P1~像素P6与不会被水平去块滤波影响的像素P37、P38一并计算出比较因子f1~f8。相似的,在水平去块滤波模块1832b对第M2列的像素P7~像素P12进行水平去块滤波之后,水平去块滤波模块1832b可依据响应于水平去块滤波而改变的像素P7~像素P12与不会被水平去块滤波影响的像素P39、P40一并计算出比较因子f9~f16。举例而言,比较因子f2表示像素P37与像素P1的大小关系,比较因子f3表示像素P1与像素P2的大小关系,依此类推。上述之比较因子f1~f16可由水平去块滤波模块1832b暂存于暂存器。
之后,SAO滤波模块1834可依据水平去块滤波模块1832b所产生的比较因子得知各像素所需要的偏移值。详细而言,SAO滤波模块1834可自水平去块滤波模块1832b取得执行完水平去块滤波后的像素P1~像素P6、像素P37、像素P38,并依据像素P1~像素P6、像素P37、像素P38各自对应的比较因子决定个别的偏移值进行补偿。举例而言,SAO滤波模块1834可依据比较因子f2与f3决定像素P1的偏移值,从而对像素P1据以进行补偿。由此可知,SAO滤波模块1834可直接依据水平去块滤波模块1832b输出的数据进行SAO滤波,从而提升解码效率。
图9A与图9B是依据本发明一实施例所绘示的水平边缘类型的SAO滤波的示意图。请参照图9A,假设边缘类型为水平边缘类型,SAO滤波模块1834将比较当前像素c与左右相邻像素a、b之间的大小而获取两个比较因子。请参照图9B,当水平去块滤波模块1832b对水平边缘H1进行水平去块滤波时,水平边缘H1两侧的像素P1~像素P36会用以执行水平去块滤波而改变。
由于边缘类型为图9A所示的水平边缘类型,因此水平去块滤波模块1832b对某几列像素进行水平去块滤波之后,才可根据水平去块滤波所产生的像素计算比较因子。举例而言,在水平去块滤波模块1832b对第M1~M3列的像素进行水平去块滤波之后,水平去块滤波模块1832b可依据响应于水平去块滤波而改变的像素P1、像素P7、像素P13计算出比较因子f2、f10。其中,比较因子f2表示像素P1与像素P7的大小关系,而比较因子f10表示像素P7与像素P13的大小关系。依此类推,水平去块滤波模块1832b可获取每一像素所对应的比较因子。
之后,SAO滤波模块1834可依据水平去块滤波模块1832b所产生的比较因子得知各像素所需要的偏移值。举例而言,在水平去块滤波模块1832b对第M1~M3列的像素执行完水平去块滤波与计算比较因子之后,SAO滤波模块1834可依据第M2列中每一像素P7~P8、P39~P40水平方向上两个比较因子决定第M2列中每一像素P7~P8、P39~P40的偏移值,从而针对第M2列中每一像素P7~P8、P39~P40进行补偿。举例而言,SAO滤波模块1834可依据比较因子f2与f10决定像素P7的偏移值,从而对像素P7据以进行补偿。由此可知,SAO滤波模块1834可直接依据水平去块滤波模块1832b输出的数据进行SAO滤波,从而提升解码效率。
上述图9A与图9B的说明系以水平去块滤波模块1832b计算所有比较因子为例进行说明。然而,于另一实施例中,由于水平边缘H1两侧的像素P37、像素P38、像素P39、像素P40不会因为水平去块滤波而改变,因此比较因子f1与比较因子f8可事先由垂直去块滤波模块1832a依据像素P37像素P38、像素P39、像素P40而产生,并储存于暂存器中。换言之,SAO滤波模块1834可依据垂直去块滤波模块1832a与水平去块滤波模块1832b所产生的比较因子得知各像素所需要的偏移值,并据以对像素进行补偿。
图10A与图10B是依据本发明一实施例所绘示的135度对角类型的SAO滤波的示意图。请参照图10A,假设边缘类型为135度对角类型,SAO滤波模块1834将比较当前像素c与斜对角方向上的相邻像素a、b之间的大小而获取两个比较因子。请参照图10B,当水平去块滤波模块1832b对水平边缘H1进行水平去块滤波时,水平边缘H1两侧的像素P1~像素P36会用以执行水平去块滤波而改变。
由于边缘类型为图10A所示的135度对角类型,因此水平去块滤波模块1832b对某几列像素进行水平去块滤波之后,才可根据水平去块滤波所产生的像素计算比较因子。举例而言,在水平去块滤波模块1832b对第M1列的像素P1~像素P6、第M2列的像素P7~像素P12、第M3列的像素P13~像素P18进行水平去块滤波之后,水平去块滤波模块1832b可依据响应于水平去块滤波而改变的像素P1、像素P8、像素P15计算出比较因子f3、f12。其中,比较因子f3表示像素P1与像素P8的大小关系,而比较因子f12表示像素P8与像素P15的大小关系。依此类推,水平去块滤波模块1832b可获取每一像素所对应的比较因子。
之后,SAO滤波模块1834可依据水平去块滤波模块1832b所产生的比较因子得知各像素所需要的偏移值。举例而言,在水平去块滤波模块1832b对第M1~M3列的像素执行完水平去块滤波与计算比较因子之后,SAO滤波模块1834可依据第M2列中每一像素对应的对角线方向上两个比较因子决定第M2列中每一像素的偏移值,从而针对第M2列中每一像素进行补偿。举例而言,SAO滤波模块1834可依据比较因子f3与f12决定像素P8的偏移值,从而对像素P8据以进行补偿。由此可知,SAO滤波模块1834可直接依据水平去块滤波模块1832b输出的数据进行SAO滤波,从而提升解码效率。
图11A与图11B是依据本发明一实施例所绘示的45度对角类型SAO滤波的示意图。请参照图11A,假设边缘类型为45度对角类型,SAO滤波模块1834将比较当前像素c与斜对角方向上的相邻像素a、b之间的大小而获取两个比较因子。
图11A与图11B所示之范例与图10A与图10B所示之范例的差别仅在于对角线方向,其取得比较因子与SAO偏移值的方式相似,于此不再赘述。本领域技术人员可在参照前述说明后,合理推知当边缘类型为45度对角类型的操作方式。举例而言,在水平去块滤波模块1832b对第M1~M3列的像素执行完水平去块滤波之后,水平去块滤波模块1832b可比较像素P3与像素P8而获取比较因子f4,并比较像素P14与像素P8而获取比较因子f11。接着,SAO滤波模块1834可依据比较因子f4与f11决定像素P8的偏移值,从而对像素P8据以进行补偿。
综上所述,在本发明的实施例中,当对最大编码单元中的影像区块依序进行去块滤波与样本自适应偏移滤波时,内部存储器的储存空间可以被重复使用,进而使内部存储器的储存空间可以被有效利用。此外,基于本发明实施例中的数据存取方法,样本自适应偏移滤波可在去块滤波后直接进行,从而简化去块滤波至SAO滤波的滤波过程。藉此,可大幅提升解码效率与节省储存电路面积。尤其是,针对大尺寸的最大编码单元,上述优点可更为明显。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视后附的申请专利范围所界定者为准。

Claims (18)

1.一种视频解码的环路滤波方法,其特征在于,包括:
将第一影像区块的第一中间区块像素、第一右侧区块像素、第一中下区块像素,以及第一右下区块像素分别写入内部存储器的多个存储区块;
自所述内部存储器读取所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素,并自所述内部存储器读取所述第一影像区块的相邻像素,以针对所述第一影像区块执行去块滤波与样本自适应偏移滤波,其中所述第一影像区块的相邻像素包括相对于所述第一影像区块的第一左上区块像素、第一中上区块像素、第一右上区块像素、第一左侧区块像素、第一左下区块像素;
在针对所述第一影像区块执行去块滤波与样本自适应偏移滤波之后,自所述内部存储器输出所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素,而释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的多个释放存储区块;
将第二影像区块的第二中间区块像素写入释出所述第一中间区块像素的所述释放存储区块,并将所述第二影像区块的第二右侧区块像素、第二中下区块像素,以及第二右下区块像素分别写入所述内部存储器的多个存储区块;
自所述内部存储器读取所述第二中间区块像素、所述第二右侧区块像素、所述第二中下区块像素,以及所述第二右下区块像素,并自所述内部存储器读取所述第二影像区块的相邻像素,以针对所述第二影像区块执行去块滤波与样本自适应偏移滤波,其中所述第二影像区块的相邻像素包括相对于所述第二影像区块的第二左上区块像素、第二中上区块像素、第二右上区块像素、第二左侧区块像素、第二左下区块像素,
其中,所述第二左侧区块像素为所述第一右侧区块像素,而第二左上区块像素为第一右上区块像素,且所述第二左下区块像素为所述右下区块像素。
2.如权利要求1所述的视频解码的环路滤波方法,其特征在于,所述第一影像区块位于所述第二影像区块的左侧,而所述第一影像区块与所述第二影像区块为四分之一的最大编码单元,且最大编码单元的尺寸为64x64。
3.如权利要求2所述的视频解码的环路滤波方法,其特征在于,所述方法更包括:
在释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的所述释放存储区块的同时,保留所述第一右上区块像素、所述第一右侧区块像素、所述第一左下区块像素、所述第一中下区块像素、所述第一右下区块像素于所述内部存储器中。
4.如权利要求2所述的视频解码的环路滤波方法,其特征在于,自所述内部存储器读取所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素,并自所述内部存储器读取所述第一影像区块的相邻像素,以针对所述第一影像区块执行去块滤波与样本自适应偏移滤波的步骤包括:
自所述内部存储器读取所述第一影像区块的像素与所述第一影像区块的相邻像素,而执行垂直去块滤波,其中所述第一影像区块的像素包括所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素;
在将执行垂直去块滤波所产生的像素写回所述内部存储器之后,自所述内部存储器读取所述第一影像区块的像素与所述第一影像区块的相邻像素,而执行水平去块滤波并计算样本自适应偏移滤波所需的比较因子;以及
在执行所述水平去块滤波之后,在未将执行水平去块滤波所产生的像素写回所述内部存储器的情况下,依据所述比较因子对样本自适应偏移滤波块执行样本自适应偏移滤波,并将执行样本自适应偏移滤波所产生的像素写回所述内部存储器,其中所述样本自适应偏移滤波块为所述第一影像区块向上与向左偏移而取得的区块。
5.如权利要求4所述的视频解码的环路滤波方法,其特征在于,所述样本自适应偏移滤波块的样本自适应偏移模式为边缘模式,而计算样本自适应偏移滤波所需的所述比较因子的步骤包括:
依据边缘类型比较当前像素与所述当前像素之两侧相邻像素,以取得所述当前像素的所述比较因子,并将所述比较因子记录于暂存器,
其中所述边缘类型包括水平边缘类型、垂直边缘类型、135度对角类型、45度对角类型。
6.如权利要求5所述的视频解码的环路滤波方法,其特征在于,依据所述比较因子对样本自适应偏移滤波块执行样本自适应偏移滤波的步骤包括:
依据样本自适应偏移滤波块内的每一像素与每一像素之两侧相邻像素之间的所述比较因子决定每一像素的偏移值;以及
依据每一像素的偏移值补偿样本自适应偏移滤波块内的每一像素。
7.如权利要求2所述的视频解码的环路滤波方法,其特征在于,所述方法更包括:
在针对所述第二影像区块执行去块滤波与样本自适应偏移滤波之后,自所述内部存储器输出所述第二左上区块像素、所述第二中上区块像素、所述第二左侧区块像素、所述第二中间区块像素,而释出对应至所述第二左上区块像素、所述第二中上区块像素、所述第二左侧区块像素、所述第二中间区块像素的多个释放存储区块;
将第三影像区块的第三中间区块像素与第三右侧区块像素写入释出所述第二中间区块像素与所述第二左侧区块像素的所述释放存储区块,并将所述第三影像区块的第三中下区块像素与第三右下区块像素写入所述内部存储器的多个存储区块;
自所述内部存储器读取所述第三中间区块像素、所述第三右侧区块像素、所述第三中下区块像素,以及所述第三右下区块像素,并自所述内部存储器读取所述第三影像区块的相邻像素,以针对所述第三影像区块执行去块滤波与样本自适应偏移滤波,其中所述第三影像区块的相邻像素包括相对于所述第三影像区块的第三左上区块像素、第三中上区块像素、第三右上区块像素、第三左侧区块像素、第三左下区块像素,
其中所述第三左上区块像素为所述第一左下区块像素,而所述第三中上区块像素为所述第一中下区块像素,且所述第三右上区块像素为所述第一右下区块像素。
8.如权利要求7所述的视频解码的环路滤波方法,其特征在于,所述第三影像区块为四分之一的所述最大编码单元,且所述第三影像区块位于所述第一影像区块的下方。
9.如权利要求7所述的视频解码的环路滤波方法,其特征在于,所述方法更包括:
在针对所述第三影像区块执行去块滤波与样本自适应偏移滤波之后,将所述第三影像区块的所述第三中下区块像素与所述第三右下区块像素储存至线缓冲器;以及
当处理下一行的另一最大编码单元时,将所述线缓冲器内的像素数据写入至所述内部存储器,以作为所述另一最大编码单元中关联于另一影像区块的相邻像素。
10.一种视频解码的解码装置,其特征在于,包括:
一内部存储器;
一输入模块,耦接所述内部存储器,将第一影像区块的第一中间区块像素、第一右侧区块像素、第一中下区块像素,以及第一右下区块像素分别写入内部存储器的多个存储区块;
一滤波模块,耦接所述内部存储器,自所述内部存储器读取所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素,并自所述内部存储器读取所述第一影像区块的相邻像素,以针对所述第一影像区块执行去块滤波与样本自适应偏移滤波,其中所述第一影像区块的相邻像素包括相对于所述第一影像区块的第一左上区块像素、第一中上区块像素、第一右上区块像素、第一左侧区块像素、第一左下区块像素;以及
一输出模块,耦接所述内部存储器,
其中,在所述滤波模块针对所述第一影像区块执行去块滤波与样本自适应偏移滤波之后,所述输出模块输出记录于所述内部存储器中所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素,而所述内部存储器释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的多个释放存储区块,
其中,所述输入模块将第二影像区块的第二右侧区块像素写入所述内部存储器中释出所述第一左侧区块像素的所述释放存储区块,并将所述第二影像区块的第二中间区块像素、第二中下区块像素,以及第二右下区块像素分别写入所述内部存储器的多个存储区块,
其中所述滤波模块自所述内部存储器读取所述第二中间区块像素、所述第二右侧区块像素、所述第二中下区块像素,以及所述第二右下区块像素,并自所述内部存储器读取所述第二影像区块的相邻像素,以针对所述第二影像区块执行去块滤波与样本自适应偏移滤波,其中所述第二影像区块的相邻像素包括相对于所述第二影像区块的第二左上区块像素、第二中上区块像素、第二右上区块像素、第二左侧区块像素、第二左下区块像素,
其中,所述第二左侧区块像素为所述第一右侧区块像素,而第二左上区块像素为第一右上区块像素,且所述第二左下区块像素为所述右下区块像素。
11.如权利要求10所述的视频解码的解码装置,其特征在于,所述第一影像区块位于所述第二影像区块的左侧,而所述第一影像区块与所述第二影像区块为四分之一的最大编码单元,且最大编码单元的尺寸为64x64。
12.如权利要求11所述的视频解码的解码装置,其特征在于,在所述内部存储器释出对应至所述第一左上区块像素、所述第一中上区块像素、所述第一左侧区块像素、所述第一中间区块像素的多个释放存储区块的同时,所述内部存储器保留所述第一右上区块像素、所述第一右侧区块像素、所述第一左下区块像素、所述第一中下区块像素、所述第一右下区块像素于所述内部存储器中。
13.如权利要求11所述的视频解码的解码装置,其特征在于,所述滤波模块包括:
一垂直去块滤波模块,自所述内部存储器读取所述第一影像区块的像素与所述第一影像区块的相邻像素,而执行垂直去块滤波,其中所述第一影像区块的像素包括所述第一中间区块像素、所述第一右侧区块像素、所述第一中下区块像素,以及所述第一右下区块像素;
一水平去块滤波模块,在所述垂直去块滤波模块将执行垂直去块滤波所产生的像素写回所述内部存储器之后,自所述内部存储器读取所述第一影像区块的像素与所述第一影像区块的相邻像素,而执行水平去块滤波并计算样本自适应偏移滤波所需的比较因子;以及
一样本自适应偏移滤波模块,在所述水平去块滤波模块执行所述水平去块滤波之后,在未将执行水平去块滤波所产生的像素写回所述内部存储器的情况下,依据所述比较因子对样本自适应偏移滤波块执行样本自适应偏移滤波,并将执行样本自适应偏移滤波所产生的像素写回所述内部存储器,其中所述样本自适应偏移滤波块为所述第一影像区块向上与向左偏移而取得的区块。
14.如权利要求11所述的视频解码的解码装置,其特征在于,所述样本自适应偏移滤波块的样本自适应偏移模式为边缘模式,而所述水平去块滤波模块依据边缘类型比较当前像素与所述当前像素之两侧相邻像素,以取得所述当前像素的所述比较因子,并将所述比较因子纪录于暂存器,
其中所述边缘类型包括水平边缘类型、垂直边缘类型、135度对角类型、45度对角类型。
15.如权利要求14所述的视频解码的解码装置,其特征在于,所述样本自适应偏移滤波模块依据样本自适应偏移滤波块内的每一像素与每一像素之两侧相邻像素之间的所述比较因子决定每一像素的偏移值,以及依据每一像素的偏移值补偿样本自适应偏移滤波块内的每一像素。
16.如权利要求11所述的视频解码的解码装置,其特征在于,在针对所述第二影像区块执行去块滤波与样本自适应偏移滤波之后,所述输出模块自所述内部存储器输出所述第二左上区块像素、所述第二中上区块像素、所述第二左侧区块像素、所述第二中间区块像素,而所述内部存储器释出对应至所述第二左上区块像素、所述第二中上区块像素、所述第二左侧区块像素、所述第二中间区块像素的多个释放存储区块,
其中所述输入模块将第三影像区块的第三中间区块像素与第三右侧区块像素写入释出所述第二中间区块像素与所述左侧区块像素的所述释放存储区块,并将所述第三影像区块的第三中下区块像素与第三右下区块像素写入所述内部存储器的多个存储区块,
其中所述滤波模块自所述内部存储器读取所述第三中间区块像素、所述第三右侧区块像素、所述第三中下区块像素,以及所述第三右下区块像素,并自所述内部存储器读取所述第三影像区块的相邻像素,以针对所述第三影像区块执行去块滤波与样本自适应偏移滤波,其中所述第三影像区块的相邻像素包括相对于所述第三影像区块的第三左上区块像素、第三中上区块像素、第三右上区块像素、第三左侧区块像素、第三左下区块像素,
其中所述第三左上区块像素为所述第一左下区块像素,而所述第三中上区块像素为所述第一中下区块像素,且所述第三右上区块像素为所述第一右下区块像素。
17.如权利要求16所述的视频解码的解码装置,其特征在于,所述第三影像区块为四分之一的所述最大编码单元,且所述第三影像区块位于所述第一影像区块的下方。
18.如权利要求16所述的视频解码的解码装置,其特征在于,更包括一直接存取电路,所述直接存取电路耦接所述内部存储器,
其中在所述滤波模块针对所述第三影像区块执行去块滤波与样本自适应偏移滤波之后,所述直接存取电路将所述第三影像区块的所述第三中下区块像素与所述第三右下区块像素储存至线缓冲器,
其中,当处理下一行的另一最大编码单元时,所述直接存取电路将所述线缓冲器内的像素数据写入至所述内部存储器,以作为所述另一最大编码单元中关联于另一影像区块的相邻像素。
CN201910710807.7A 2019-08-02 2019-08-02 视频解码的环路滤波方法与解码装置 Pending CN112312139A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910710807.7A CN112312139A (zh) 2019-08-02 2019-08-02 视频解码的环路滤波方法与解码装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910710807.7A CN112312139A (zh) 2019-08-02 2019-08-02 视频解码的环路滤波方法与解码装置

Publications (1)

Publication Number Publication Date
CN112312139A true CN112312139A (zh) 2021-02-02

Family

ID=74485909

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910710807.7A Pending CN112312139A (zh) 2019-08-02 2019-08-02 视频解码的环路滤波方法与解码装置

Country Status (1)

Country Link
CN (1) CN112312139A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489998A (zh) * 2021-05-27 2021-10-08 杭州博雅鸿图视频技术有限公司 一种去块效应滤波方法、装置、电子设备及介质
CN114363613A (zh) * 2022-01-10 2022-04-15 北京达佳互联信息技术有限公司 滤波方法和滤波装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200642474A (en) * 2005-05-19 2006-12-01 Cheertek Inc Deblock filter method for applying on video encoding/decoding and the apparatus thereof
JP2007150913A (ja) * 2005-11-29 2007-06-14 Matsushita Electric Ind Co Ltd 画像符号化装置
KR20100099824A (ko) * 2009-03-04 2010-09-15 주식회사 코아로직 영상 디코더 및 영상 디코딩 방법
CN103518375A (zh) * 2012-04-16 2014-01-15 联发科技股份有限公司 用于贯穿条带或图块边界环路滤波的方法及其装置
TW201429259A (zh) * 2013-01-11 2014-07-16 Mstar Semiconductor Inc 影像資料處理方法以及影像處理裝置
US20140341287A1 (en) * 2013-05-20 2014-11-20 Texas Instruments Incorporated Sample Adaptive Offset (SAO) Filtering in Video Coding
CN104521234A (zh) * 2012-08-01 2015-04-15 联发科技股份有限公司 合并去区块处理和取样自适应偏移处理的视频处理方法和装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200642474A (en) * 2005-05-19 2006-12-01 Cheertek Inc Deblock filter method for applying on video encoding/decoding and the apparatus thereof
JP2007150913A (ja) * 2005-11-29 2007-06-14 Matsushita Electric Ind Co Ltd 画像符号化装置
KR20100099824A (ko) * 2009-03-04 2010-09-15 주식회사 코아로직 영상 디코더 및 영상 디코딩 방법
CN103518375A (zh) * 2012-04-16 2014-01-15 联发科技股份有限公司 用于贯穿条带或图块边界环路滤波的方法及其装置
CN104521234A (zh) * 2012-08-01 2015-04-15 联发科技股份有限公司 合并去区块处理和取样自适应偏移处理的视频处理方法和装置
TW201429259A (zh) * 2013-01-11 2014-07-16 Mstar Semiconductor Inc 影像資料處理方法以及影像處理裝置
US20140341287A1 (en) * 2013-05-20 2014-11-20 Texas Instruments Incorporated Sample Adaptive Offset (SAO) Filtering in Video Coding

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113489998A (zh) * 2021-05-27 2021-10-08 杭州博雅鸿图视频技术有限公司 一种去块效应滤波方法、装置、电子设备及介质
CN114363613A (zh) * 2022-01-10 2022-04-15 北京达佳互联信息技术有限公司 滤波方法和滤波装置
CN114363613B (zh) * 2022-01-10 2023-11-28 北京达佳互联信息技术有限公司 滤波方法和滤波装置

Similar Documents

Publication Publication Date Title
TWI755665B (zh) 使用具有鄰近取樣縮減的線性或仿射變換的內預測
KR100843196B1 (ko) H.264/avc 비디오 디코더의 디블록킹 필터
CN105474639B (zh) 视频编码装置、视频解码装置、视频系统、视频编码方法、视频解码方法以及程序
KR100695141B1 (ko) 영상처리시스템에 있어서 메모리 억세스장치 및 방법, 데이터 기록장치 및 방법과 데이터 독출장치 및 방법
EP2755388A1 (en) Method, device, and program for encoding and decoding image
KR102359415B1 (ko) 비디오 코딩을 위한 인터 예측 장치 및 방법을 위한 보간 필터
US20090129478A1 (en) Deblocking filter
US11706412B2 (en) Apparatus and method for filtering in video coding
CN112312139A (zh) 视频解码的环路滤波方法与解码装置
WO2006014312A1 (en) Caching data for video edge filtering
CN104521234B (zh) 合并去区块处理和取样自适应偏移处理的视频处理方法和装置
KR20210066823A (ko) 광각 인트라 예측을 위한 방향들
US10939102B2 (en) Post processing apparatus with super-resolution filter and loop restoration filter in block-level pipeline and associated post processing method
US7680351B2 (en) Video deblocking method and apparatus
US10659794B2 (en) Apparatus and method for palette decoding
WO2022206217A1 (zh) 在视频编码装置中进行图像处理的方法、装置、介质及系统
KR101328931B1 (ko) 비디오 복호기 및 복호방법
JP2009130599A (ja) 動画像復号装置
CN110249630B (zh) 去块效应滤波装置、方法和存储介质
US20090245663A1 (en) Image data decoding apparatus and method for decoding image data
CN105530517A (zh) 一种解码器及有损解码视频图像的方法
Li et al. A dual-mode deblocking filter design for HEVC and H. 264/AVC
US11856227B2 (en) Transform architecture in video encoding systems
US20230319259A1 (en) Coding and decoding methods and apparatuses
CN114286096B (zh) 视频解码方法、装置及设备

Legal Events

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