CN104253998A - 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法 - Google Patents

一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法 Download PDF

Info

Publication number
CN104253998A
CN104253998A CN201410494794.1A CN201410494794A CN104253998A CN 104253998 A CN104253998 A CN 104253998A CN 201410494794 A CN201410494794 A CN 201410494794A CN 104253998 A CN104253998 A CN 104253998A
Authority
CN
China
Prior art keywords
memory
block
lcu
pixel
lluma
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
Application number
CN201410494794.1A
Other languages
English (en)
Other versions
CN104253998B (zh
Inventor
范益波
程魏
谢峥
陆彦珩
黄磊磊
曾晓洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN201410494794.1A priority Critical patent/CN104253998B/zh
Publication of CN104253998A publication Critical patent/CN104253998A/zh
Application granted granted Critical
Publication of CN104253998B publication Critical patent/CN104253998B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明属于数字高清视频压缩编解码技术领域,具体为一种适用于HEVC标准的去方块效应滤波器的硬件片上存储方法。在HEVC标准中,一个视频流有三个颜色分量:亮度分量Y,色度分量Cb和Cr;在去方块滤波器中,对每个8x8块的边界先进行垂直滤波然后进行水平滤波。本发明是基于一个64x64大小的LCU进行处理。首先是逻辑映射:将Y分量分成左右两个部分LLUMA和RLUMA,色度分量Cb和Cr合成一个部分CCBC;其次是物理映射:将LLUMA、RLUMA和CCBC中不同边界的4x4块存储在不同的SRAM里。本发明一共使用6块SRAM,从而省去了数据从外设的输入和输出时间,减少一个LCU的处理时间,提高吞吐率,最终实现高清数字视频的实时编码。

Description

一种适用于HEVC标准的去方块效应滤波器的硬件片上存储方法
技术领域
本发明属于数字高清视频压缩编解码技术领域,针对HEVC视频编解码标准,具体涉及一种适用于HEVC视频编码标准的、去方块滤波器的硬件片上存储方法。
背景技术
作为下一代视频编解码标准,HEVC(High Efficiency Video Coding)是于2013年由国际电信组织(ITU)和运动图像专家组(MPEG)联合成立的组织JCTVC所提出。其目标是,与上一代标准H.264/AVC相比,在相同的视觉效果的前提下,比特率减少50%。
在HEVC中,一帧图像会划分成一个个最大编码单元(LCU),其大小可以为64x64,然后LCU会划分成更小的编码单元(CU),其大小从8x8到32x32。与H.264/AVC类似,HEVC使用基于块的预测变换编码方式。这种方式会导致块的边界像素值的不连续性,即块效应,从而影响视频的图像质量,并且会增大码流。统计数据表明,块效应将会使码流增大1.3~3.3%,在某些情况会增大6%。为了消除这种块效应,HEVC使用了去块效应滤波器。
去方块滤波器模块如图1中所示。 首先判断一个8x8块边界是否是预测单元(PU)或变换单元(TU)的边界;如果是,则取该边界两边的4x4块像素进行进一步的判断和滤波。在去块效应滤波器中一共有两种滤波器:(1)正常滤波器(normal filter):4x4块的每行上只有1个或2个像素值会发生改变;(2)强滤波器(strong filter):4x4块的每行上多大三个像素值会发生改变。对每个边界具体使用哪种滤波器取决于该边界两边的4x4块像素的值的大小。
在去方块滤波器中,每个8x8块边界两边都有8x8块或4x4块。因此对每个LCU来说,其第一列4x4块需要用到右边LCU的最左边一列的4x4块,其第一行4x4块需要用到上边LCU的最下边一行的4x4块;并且由于其特殊的处理顺序,对每个LCU还需用到左上LCU的右下角的4x4块。
在标准参考软件HM10.0中,去块效应滤波器先处理每个LCU的8x8块垂直边界,再处理水平边界。但是在硬件实现时,由于像素值是存储在存储器中的。如果是存储在片外存储器将会增大整个系统的功耗,并对片外存储器的带宽带来极大的压力,如果存储在片上存储器则要合理规划组织LCU的存储方式和位置,以提高系统的吞吐率。
发明内容
本发明的目的在于提出一种处理时间短、吞吐率高的适用于HEVC标准的去方块滤波器的硬件片上存储方法。
本发明提出去方块滤波器的硬件片上存储方法,具体步骤为:
(1)在原始视频流中,将一帧图像划分为一个个64x64大小的LCU;每个LCU有:一个64x64大小的亮度分量Y,两个32x32大小的色度分量Cb和Cr;将64x64大小的亮度分量Y分成两个部分:左边亮度部分(LLUMA)和右边亮度部分(RLUMA),分时进行数据输入、滤波处理和数据输出;将两个32x32大小的色度分量Cb和Cr合成一个部分色度总量(CCBC),连续进行数据输入、滤波处理和数据输出;
(2)去方块效应滤波器针对每个8x8大小的CU边界进行滤波处理;硬件片上存储器深度为128位,即每个地址存储一个4x4块大小像素值。 
其中,数据输入、滤波处理和数据输出采用采用乒乓处理模式,即将LLUMA和RLUAM中任何一个8x8块的边界两个相邻4x4块存储在不同的存储器中,使用第零到第五共6块双端口存储器:SRAM0、SRAM1、SRAM2、SRAM3、SRAM4、SRAM5;这6块双端口存储器采用乒乓处理模式:首先,第零存储器SRAM0和第一存储器SRAM1读入LLUMA像素;然后,第零存储器SRAM0和第一存储器SRAM1中的像素进行去方块效应滤波处理,同时第二存储器SRAM2和第三存储器SRAM3读入RLUMA像素;最后,将第零存储器SRAM0和第一存储器SRAM1中的像素值输出,同时第二存储器SRAM2和第三存储器SRAM3读入RLUMA像素进行去方块效应滤波处理,第四存储器SRAM4和第五存储器SRAM5读入CCBC像素;依次循环直到所有LCU都处理完。
本发明的去方块滤波器的硬件片上存储方法,其架构如图2所示。该架构使用6双端口块存储器,形成两级映射和三个阶段并进行乒乓处理。两级映射分为逻辑映射和物理映射:
(1)逻辑映射:将64x64大小的亮度分量Y分为左右两个部分:LLUMA和RLUAM;将两个32x32大小的色度分量Cb和Cr合成为一个CCBC;
(2)物理映射:将LLUMA中构成任何一个8x8边界的相邻4x4块存储在第零存储器SRAM0和第一存储器SRAM1;将RLUMA中构成任何一个8x8边界的相邻4x4块存储在第二存储器SRAM2和第三存储器SRAM3;将CCBC中构成任何一个8x8边界的相邻4x4块存储在第四存储器SRAM4和第五存储器SRAM5;
三个阶段,依次分为数据输入(LOADING),滤波处理(FILTERING),数据输出(OUTPUT):
(1)数据输入:从片外存储器中读取4x4块并存储到片上存储器;
(2)滤波处理:从两个片上存储器各读取一个4x4块用于滤波,这个阶段包括垂直滤波和水平滤波,因此每个4x4块需要读取两次,处理完成后还需存储到片上存储器中;
(3)数据输出:每个SRAM上存储的4x4块都处理完后,将其输出到片外存储器中。
依据两级映射,6块双端口存储器SRAM使用乒乓处理模式,即在同一时刻,6块双端口存储器SRAM分别处于不同的阶段。首先,第零存储器SRAM0和第一存储器SRAM1读入LLUMA像素,即处于数据输入阶段,其余存储器暂时空闲;然后,第零存储器SRAM0和第一存储器SRAM1中的像素进行去方块效应滤波处理,同时第二存储器SRAM2和第三存储器SRAM3读入RLUMA像素,此时第零存储器SRAM0和第一存储器SRAM1处于滤波处理阶段,而第二存储器SRAM2和第三存储器SRAM3处于数据输入阶段;最后,将第零存储器SRAM0和第一存储器SRAM1中的像素值输出,同时第二存储器SRAM2和第三存储器SRAM3读入RLUMA像素进行去方块效应滤波处理,第四存储器SRAM4和第五存储器SRAM5读入CCBC像素,此时第零存储器SRAM0和第一存储器SRAM1处于数据输出阶段,而第二存储器SRAM2和第三存储器SRAM3处于滤波处理阶段,第四存储器SRAM4和第五存储器SRAM5处于数据输入阶段。依次循环直到所有LCU都处理完。
对于一个64x64大小的LCU,LLUMA和RLUMA中各有136个4x4块,而CCBC中有144个4x4块。因此在LOADING和OUTPUT阶段,LLUMA和RLUMA分别需要137个周期,CCBC需要145个周期。而LLUMA和RLUMA中各有128个边界,而CCBC有132个边界。由于滤波需要多个周期,因此在FILTERING阶段LLUMA和RLUMA中各需要132个周期,CCBC中需要136个周期。
附图说明
图1:块效应滤波器的整体架构。
图2:去块效应滤波器的存储器组织方式。
图3:去块效应滤波器的存储器乒乓处理模式。
具体实施方式
下面结合附图,对本发明做进一步的描述。
本发明提出了一种适用于HEVC的去块效应滤波器系统,使用了特殊的的片上存储架构,该架构如图1所示,使用了5个双端口的存储器SRAM0~SRAM5。这些存储器的存储组织管理如图3示。图3中每个小方框为一个4x4块,其存储管理分为两级映射:逻辑映射和物理映射。
首先是逻辑映射。
一个LCU共384个4x4块,在进行滤波时还需使用左边LCU、上边LCU和左上边LCU共17个LCU。其中前缀为X、Y、L和R为亮度分量的4x4块,前缀为C和D为色度分量4x4块。X1~X3,Y0~Y3,L0~L3,R0~R3,C1~C3,D0~D3,C37~C39和D36~D39是上边LCU的4x4块,Y4,X8,Y12,X16,Y20,X24,Y28,X32,Y36,X40,Y44,X48,Y52,X56,Y60,X64,D4,C8,D12,C16,D20,C24,D28,C32,D40,C44,D48,C52,D56,C60,D64,C68是左边LCU的4x4块,X0,C0和C36是左上角LCU的4x4块,其余则为当前LCU的4x4块。
在逻辑映射中,将亮度分量前缀为L和R的4x4块作为一个单元,映射为LLUMA,将亮度分量前缀为X和Y的4x4块作为一个单元,映射为RLUAM,将色度分量前缀为C和D的4x4块作为一个单元,映射CCBC。同一个单元的存储,处理等是同时进行的。
其次是物理映射。
根据4x4块存储位置的不同,将逻辑映射的结果存储在不同的SRAM里。其中将LLUMA中前缀为L的4x4块存储在SRAM0里,前缀为R的4x4块存储在SRAM1里;将RLUMA中前缀为X的4x4块存储在SRAM2里,前缀为Y的4x4块存储在SRAM3里;将CCBC中前缀为C的4x4块存储在SRAM4里,前缀为D的4x4块存储在SRAM5里。其中后缀数字为每个4x4块在相应SRAM里存储的位置。例如C5表示该4x4块存储在SRAM4的第5个位置里。SRAM0~SRAM5都是双端口存储器。     
下面结合附图2所示存储器的工作流程,其具体实施可以分为如下的三个阶段:
第一个阶段为LOADING。
在此阶段,从片外存储器读取LLUMA,存储到SRAM0和SRAM1,每个周期读取一个4x4块,偶数周期存储到SRAM0里,奇数周期存储到SRAM1里。
第二个阶段为FILTERING。
在此阶段,对LLUMA部分的边界进行滤波,每个周期从SRAM0和SRAM1的一个端口读取一条边界的两个4x4块,对其进行流水处理滤波处理,处理完之后从另外一个端口写回;同时在此阶段还从片外存储器读取RLUMA,存储到SRAM2和SRAM3,每个周期读取一个4x4块,偶数周期存储到SRAM2里,奇数周期存储到SRAM3里。
第三个阶段为OUTPUT。
到此阶段时,LLUAM已全部滤波处理完。因此,此阶段将LLUMA输出至片外存储器,每个周期输出一个4x4块,偶数周期从SRAM0读取4x4块进行输出,奇数周期从SRAM1读取进行输出。同时在此阶段对对RLUMA部分的边界进行滤波,每个周期从SRAM2和SRAM3的一个端口读取一条边界的两个4x4块,对其进行流水处理滤波处理,处理完之后从另外一个端口写回;在此阶段还从片外存储器读取CCBC,存储到SRAM4和SRAM5,每个周期读取一个4x4块,偶数周期存储到SRAM4里,奇数周期存储到SRAM5里。
第三阶段处理完之后回到第一阶段,读取下一个LCU的LLUMA。同时输出当前LCU的RLUMA,并对当前LUC的CCBC进行滤波处理。

Claims (1)

1. 一种适用于HEVC标准的去方块滤波器效应的硬件片上存储方法,其特征在于具体步骤如下:
(1)在原始视频流中,将一帧图像划分为一个个64x64大小的LCU;每个LCU有:一个64x64大小的亮度分量Y,两个32x32大小的色度分量Cb和Cr;将64x64大小的亮度分量Y分成两个部分:左边亮度部分LLUMA和右边亮度部分RLUMA,分时进行数据输入、滤波处理和数据输出;将两个32x32大小的色度分量Cb和Cr合成一个部分,即色度总量CCBC,连续进行数据输入、滤波处理和数据输出;
(2)去方块效应滤波器针对每个8x8大小的CU边界进行滤波处理;硬件片上存储器深度为128位,即每个地址存储一个4x4块大小像素值;
其中,数据输入、滤波处理和数据输出采用乒乓处理模式,即将LLUMA和RLUAM中任何一个8x8块的边界两个相邻4x4块存储在不同的存储器中,使用第零到第五共6块双端口存储器(SRAM0、SRAM1、SRAM2、SRAM3、SRAM4、SRAM5);这6块双端口存储器采用乒乓处理模式:首先,第零存储器(SRAM0)和第一存储器(SRAM1)读入LLUMA像素;然后,第零存储器(SRAM0)和第一存储器(SRAM1)中的像素进行去方块效应滤波处理,同时第二存储器(SRAM2)和第三存储器(SRAM3)读入RLUMA像素;最后,将第零存储器(SRAM0)和第一存储器(SRAM1)中的像素值输出,同时第二存储器(SRAM2)和第三存储器(SRAM3)读入RLUMA像素进行去方块效应滤波处理,第四存储器(SRAM4)和第五存储器(SRAM5)读入CCBC像素;依次循环直到所有LCU都处理完。
CN201410494794.1A 2014-09-25 2014-09-25 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法 Active CN104253998B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410494794.1A CN104253998B (zh) 2014-09-25 2014-09-25 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410494794.1A CN104253998B (zh) 2014-09-25 2014-09-25 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法

Publications (2)

Publication Number Publication Date
CN104253998A true CN104253998A (zh) 2014-12-31
CN104253998B CN104253998B (zh) 2017-05-10

Family

ID=52188476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410494794.1A Active CN104253998B (zh) 2014-09-25 2014-09-25 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法

Country Status (1)

Country Link
CN (1) CN104253998B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105376581A (zh) * 2015-11-17 2016-03-02 复旦大学 一种适用于hevc标准的基于指针的两级dct系数存储方法
CN105430419A (zh) * 2015-11-17 2016-03-23 复旦大学 一种适用于hevc标准的基于脏位的两级dct系数存储方法
CN109743582A (zh) * 2018-12-29 2019-05-10 龙岩学院 一种基于h.264的去块滤波器硬件架构
CN110662079A (zh) * 2019-10-23 2020-01-07 中国人民解放军国防科技大学 一种基于h.265hevc帧内预测的参考像素片上存储方法
CN110855973A (zh) * 2019-11-15 2020-02-28 北方工业大学 基于区域方向性离差和的视频帧内快速算法
CN116567231A (zh) * 2023-07-03 2023-08-08 福州时芯科技有限公司 一种用于hevc去方块滤波的系统

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123725A (zh) * 2007-09-20 2008-02-13 上海交通大学 H.264去块效应滤波器的硬件实现方法
US20080123750A1 (en) * 2006-11-29 2008-05-29 Michael Bronstein Parallel deblocking filter for H.264 video codec
US20080159407A1 (en) * 2006-12-28 2008-07-03 Yang Nick Y Mechanism for a parallel processing in-loop deblock filter
CN101321290A (zh) * 2008-07-17 2008-12-10 北京数码视讯科技股份有限公司 基于数字信号处理器的去块滤波方法
CN102075753A (zh) * 2011-01-13 2011-05-25 中国科学院计算技术研究所 一种视频编解码中去块滤波方法
CN102131098A (zh) * 2011-04-02 2011-07-20 中兴通讯股份有限公司 视频图像的去块滤波方法及装置
CN103442239A (zh) * 2013-08-29 2013-12-11 复旦大学 一种适用于hevc标准的去方块滤波器的硬件片上存储方法
CN103491372A (zh) * 2013-09-05 2014-01-01 复旦大学 一种适用于hevc标准的去方块滤波器的滤波方法
CN103491373A (zh) * 2013-09-06 2014-01-01 复旦大学 一种适用于hevc标准的去方块滤波器的四级流水滤波方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080123750A1 (en) * 2006-11-29 2008-05-29 Michael Bronstein Parallel deblocking filter for H.264 video codec
US20080159407A1 (en) * 2006-12-28 2008-07-03 Yang Nick Y Mechanism for a parallel processing in-loop deblock filter
CN101123725A (zh) * 2007-09-20 2008-02-13 上海交通大学 H.264去块效应滤波器的硬件实现方法
CN101321290A (zh) * 2008-07-17 2008-12-10 北京数码视讯科技股份有限公司 基于数字信号处理器的去块滤波方法
CN102075753A (zh) * 2011-01-13 2011-05-25 中国科学院计算技术研究所 一种视频编解码中去块滤波方法
CN102131098A (zh) * 2011-04-02 2011-07-20 中兴通讯股份有限公司 视频图像的去块滤波方法及装置
CN103442239A (zh) * 2013-08-29 2013-12-11 复旦大学 一种适用于hevc标准的去方块滤波器的硬件片上存储方法
CN103491372A (zh) * 2013-09-05 2014-01-01 复旦大学 一种适用于hevc标准的去方块滤波器的滤波方法
CN103491373A (zh) * 2013-09-06 2014-01-01 复旦大学 一种适用于hevc标准的去方块滤波器的四级流水滤波方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105376581A (zh) * 2015-11-17 2016-03-02 复旦大学 一种适用于hevc标准的基于指针的两级dct系数存储方法
CN105430419A (zh) * 2015-11-17 2016-03-23 复旦大学 一种适用于hevc标准的基于脏位的两级dct系数存储方法
CN105376581B (zh) * 2015-11-17 2018-10-16 复旦大学 一种适用于hevc标准的基于指针的两级dct系数存储方法
CN105430419B (zh) * 2015-11-17 2018-12-11 复旦大学 一种适用于hevc标准的基于脏位的两级dct系数存储方法
CN109743582A (zh) * 2018-12-29 2019-05-10 龙岩学院 一种基于h.264的去块滤波器硬件架构
CN109743582B (zh) * 2018-12-29 2020-12-11 龙岩学院 一种基于h.264的去块滤波器硬件架构
CN110662079A (zh) * 2019-10-23 2020-01-07 中国人民解放军国防科技大学 一种基于h.265hevc帧内预测的参考像素片上存储方法
CN110855973A (zh) * 2019-11-15 2020-02-28 北方工业大学 基于区域方向性离差和的视频帧内快速算法
CN110855973B (zh) * 2019-11-15 2021-10-26 北方工业大学 基于区域方向性离差和的视频帧内快速算法
CN116567231A (zh) * 2023-07-03 2023-08-08 福州时芯科技有限公司 一种用于hevc去方块滤波的系统
CN116567231B (zh) * 2023-07-03 2023-12-08 福州时芯科技有限公司 一种用于hevc去方块滤波的系统

Also Published As

Publication number Publication date
CN104253998B (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
CN104253998A (zh) 一种适用于hevc标准的去方块效应滤波器的硬件片上存储方法
CN103688533B (zh) 可减少行存储器的色度帧内预测方法及装置
CN105898335B (zh) 提升硬件效率的环路滤波方法以及环路滤波装置
CN103947208B (zh) 减少解块滤波器的方法及装置
KR20060060919A (ko) H.264/mpeg-4 에서의 블록킹 효과를 제거하기 위한디블록 필터 및 필터링 방법
CN103051892B (zh) 内嵌式回路滤波方法以及内嵌式回路滤波装置
KR100614647B1 (ko) 디블록킹 필터에서의 효과적인 에지 필터링 연산을 위한레지스터 어레이 구조
CN104521234B (zh) 合并去区块处理和取样自适应偏移处理的视频处理方法和装置
CN100531392C (zh) H.264去块效应滤波器的硬件实现方法
US8090028B2 (en) Video deblocking memory utilization
CN101115207B (zh) 基于预测点间相关性的帧内预测实现的方法及装置
US7680351B2 (en) Video deblocking method and apparatus
CN101252691B (zh) 一种多处理器并行实现高分辨率图像滤波的方法
CN103379319B (zh) 一种滤波方法、滤波器及包含该滤波器的编码器和解码器
CN104754363B (zh) 用于hevc的环路滤波方法及装置、编码器及解码器
CN103491372A (zh) 一种适用于hevc标准的去方块滤波器的滤波方法
CN103702132B (zh) 滤波方法、装置及设备
US20140056363A1 (en) Method and system for deblock filtering coded macroblocks
CN107135398B (zh) 去方块滤波方法、装置和系统
CN105530519B (zh) 一种环内滤波方法及装置
CN103731674B (zh) 一种h.264二维并行后处理去块滤波器硬件实现方法
CN104363455A (zh) 一种适用于hevc标准中帧内预测的参考像素的硬件片上存储方法
CN101005619A (zh) 一种环路滤波的方法
KR100753504B1 (ko) 비디오 디코더의 인-루프 디블럭킹 필터 시스템 및 그의필터링 방법
Li et al. A dual-mode deblocking filter design for HEVC and H. 264/AVC

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