CN101951519A - 高速去块效应滤波方法 - Google Patents
高速去块效应滤波方法 Download PDFInfo
- Publication number
- CN101951519A CN101951519A CN 201010505127 CN201010505127A CN101951519A CN 101951519 A CN101951519 A CN 101951519A CN 201010505127 CN201010505127 CN 201010505127 CN 201010505127 A CN201010505127 A CN 201010505127A CN 101951519 A CN101951519 A CN 101951519A
- Authority
- CN
- China
- Prior art keywords
- filtering
- data
- block
- pixel
- boundary
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种视频图像处理领域的高速去块效应滤波方法,主要解决现有技术中去块效应滤波速度较慢的问题。本发明的步骤包括:(1)对宏块进行横向切分;(2)对宏块的垂直边界进行滤波,先后对亮度数据和色度数据的4×4子块边界,按照从左到右的顺序进行循环滤波;(3)对宏块进行纵向切分;(4)对宏块的水平边界进行滤波,先后对亮度数据和色度数据的4×4子块边界,按照从上到下的顺序进行循环滤波。本发明将宏块的垂直和水平边界的滤波过程分成读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据五个步骤。本发明减少了滤波过程中数据存取周期并且对滤波过程的拆分更加合理,提高了滤波速度。
Description
技术领域
本发明涉及视频图像处理技术领域,更进一步涉及一种高速去块效应的滤波方法。
背景技术
为了改善视频图像在解码后产生的方块效应,去块效应滤波技术在解码端已经被广泛使用。去块效应滤波技术是根据视频图像宏块中的每一个4×4子块的边界强度和量化系数,对图像中的每一个4×4子块像素进行滤波,以消除图像中由于变换量化引入的方块效应。去块效应滤波技术对图像中每一个4×4块的内容都要进行纵向和横向两次滤波,由此涉及到大量的数值计算和存储器读写。
在现有的去块效应滤波方法中,都以如何提高滤波速度为设计重点。例如,专利申请“H.264解码器去块效应滤波的操作方法”(申请号CN200710064949.8,公开号CN101035276A)中,为了提高滤波速度,该方法将一个宏块左右分成两个8×16块,先后对每个8×16块中4×4子块的垂直边界和水平边界按照从上到下的顺序进行滤波。该滤波顺序有利于滤波过程中的数据复用,减少滤波过程对存储器的访问量。但该方法在数据读入和数据输出时采用DDR SRAM存储器,并不使用片上存储器,整个滤波过程中大量的时钟周期用来对DDR SRAM进行控制和访问,降低了滤波速度。
又如,论文“An in/post-loop deblocking filter with hybrid filteringschedule”(T.M.Liu,W.P.Lee,T.A.Lin,and C.Y.Lee,IEEE Transactionson Circuits and Sysems for Video Technology,vol.17,no.7,pp.937-943,Jul.2007.)中,为了提高滤波速度,提出了一种垂直边界和水平边界交替滤波的去块效应滤波方法。该方法将一个宏块分成8个4×8块,然后对每个4×8块中的4×4子块中的边界依照从上到下的顺序进行滤波,这种宏块边界滤波顺序使片上存储器资源的使用量进一步减少,并且滤波的周期个数也比之前减少了7个,但该方法中的边界滤波顺序过于繁复,虽然减少了片上资源的使用量,但控制逻辑占用资源较多,并影响了滤波速度的进一步提升。
发明内容
本发明克服了现有技术存在的上述不足,提出了一种高速去块效应滤波方法。该方法提出了一种新的滤波顺序,并将一个完整的滤波过程分成读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据五个步骤,通过合理的组织滤波和像素数据的读写顺序,减少了滤波过程中的数据等待周期,提高了滤波速度。
本发明的具体步骤如下:
(1)对宏块进行横向切分。将亮度块从上到下分成四个4×16子块,将色度块分成四个4×8子块。
(2)对宏块的垂直边界进行滤波。先后对亮度数据的每个4×16块和色度数据的每个4×8块中的4×4子块边界,按照从左到右的顺序进行垂直边界的循环滤波。
(3)对宏块进行纵向切分。将亮度块从左到右分成四个16×4子块,将色度块分成四个8×4子块。
(4)对宏块的水平边界进行滤波。先后对亮度数据的每个16×4块和色度数据的每个8×4块中的4×4子块边界,按照从上到下的顺序进行水平边界的循环滤波。
上述步骤(2)和步骤(4)中边界循环滤波的步骤如下:
第一,读入数据。在进行垂直边界滤波时,从存储器中读入垂直边界右边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入垂直边界左边的像素数据。在进行水平边界滤波时,从存储器中读入水平边界下边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入水平边界上边的待滤波数据。
第二,计算滤波像素的上限值和滤波强度值。根据第一个步骤输入的宏块编码参数,按照现有视频编码标准中规定的门限参数公式,计算滤波像素的上限值,并判断滤波强度值。
第三,预滤波。计算滤波边界两边像素的和值和差值。
第四,更新像素。根据第二个步骤和第三个步骤得到的结果,对宏块像素按照滤波公式进行更新。
第五,输出数据。在进行垂直边界滤波时,垂直边界右边的滤波后数据作为第一个步骤的输入数据,垂直边界左边的滤波后数据存入存储器中;在进行水平边界滤波时,水平边界下边的滤波后数据作为第一个步骤的输入数据,水平边界上边的滤波后数据存入存储器中。
与现有技术相比,本发明具有以下优点:
第一,减少滤波过程中数据存取周期数。本发明提出了一种新的滤波顺序,对宏块中4×4子块的垂直边界按照从左到右,从上到下的顺序滤波,对宏块中4×4子块的水平边界按照从上到下,从左到右的顺序滤波,这种边界滤波顺序更有利于数据复用,从而减少了滤波过程中数据的存取周期数,加快了滤波速度。
第二,对滤波过程的拆分更加合理。本发明将一个完整的滤波过程分成读入数据、计算滤波像素的上限值和滤波强度值、预滤波、更新像素和输出数据五部分,每一步的计算量趋于均衡,对滤波过程的拆分更加合理,加快了滤波速度。
附图说明
图1为本发明的流程图。
图2为本发明宏块垂直和水平边界滤波步骤流程图。
具体实施方式
下面结合附图1对本发明做进一步的描述:
步骤1,对宏块进行横向切分,将亮度块从上到下分成四个4×16子块,将色度块分成四个4×8子块。
步骤2,对宏块的垂直边界进行滤波。
2a)对宏块亮度数据的垂直边界进行滤波。对宏块亮度数据的每个4×16块中的4×4子块边界,按照从左到右的顺序进行读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据五个步骤的边界循环滤波。
2b)对宏块色度数据的垂直边界进行滤波。对宏块色度数据的每个4×8块中的4×4子块边界,按照从左到右的顺序进行读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据五个步骤的边界循环滤波。
步骤3,对宏块进行纵向切分,将亮度块从左到右分成4个16×4子块,将色度块分成4个8×4子块。
步骤4,对宏块的水平边界进行滤波。
4a)对宏块亮度数据的水平边界进行滤波。对宏块亮度数据的每个16×4块中的4×4子块边界,按照从上到下的顺序进行读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据五个步骤的边界循环滤波。
4b)对宏块色度数据的水平边界进行滤波。对宏块色度数据的每个8×4块中的4×4子块边界,按照从上到下的顺序进行读入数据,计算滤波像素的上限值和滤波强度值,预滤波,更新像素,输出数据的五个步骤的边界循环滤波。
结合图2说明本发明宏块垂直和水平边界滤波的具体步骤是:
第一,读入数据。读入的数据包括图像宏块的像素数据和图像宏块的编码信息。在进行垂直边界滤波时,从存储器中读入垂直边界右边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入垂直边界左边的像素数据。在进行水平边界滤波时,从存储器中读入水平边界下边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入水平边界上边的待滤波数据。
宏块的编码参数包括:图像量化参数值qp(取值0~52),滤波补偿值offsetA和offsetB(取值-12~+12),宏块的编码格式(帧内编码或帧间编码)。
第二,计算滤波像素的上限值和滤波强度值。根据第一个步骤输入的宏块编码参数,按照现有视频编码标准中规定的门限参数公式,计算滤波像素的上限值,并判断滤波强度值;
上限值包括两个,设为α和β,具体计算步骤如下:
首先根据输入的图像量化参数值qp和滤波补偿值offsetA和offsetB,根据(公式1)和(公式2)计算得到两个和值SumA和SumB。
SumA=qp+OffsetA (公式1)
SumB=qp+OffsetB (公式2)
判断SumA和SumB的大小,得到查表索引值indexA和indexB。判断步骤如下:
若SumA大于0且小于51,则indexA=SumA;若SumA小于0,则indexA=0;若SumA大于51,则indexA=51。
若SumB大于0且小于51,则indexB=SumB;若SumB小于0,则indexB=0;若SumB大于51,则indexB=51。
根据indexA和indexB,通过查表1查表得到α,β的值。
滤波强度值bS按照如下规则进行判断:
若边界两边的两组像素中至少有一组是帧内编码模式,并且边界是宏块边界,则滤波强度值为4;若边界两边的两组像素中至少有一组是帧内编码模式,而边界不是宏块边界,则滤波强度值为3;若边界两边的两组像素都不是帧内编码模式,但是两组像素中包含非零的变换系数,则滤波强度值为2;若边界两边的两组像素使用了不同的参考图像,或运动矢量的差值大于0,则滤波强度值为1;在其他情况下滤波强度值为0。
第三,预滤波。计算滤波边界两边像素的和值和差值。从滤波边界两边的两组像素中,一次取出两个像素,计算这两个像素的和值和差值,依次完成对两组像素中所有像素的计算。
第四,更新像素。根据第二个步骤和第三个步骤得到的结果,对宏块像素按照滤波公式进行更新。
在垂直边界滤波时,设边界左边的四个像素分别是q0,q1,q2,q3,更新后的像素分别是q′0,q′1,q′2,q′3,边界右边的四个像素分别是p0,p1,p2,p3,更新后的像素分别是p′0,p′1,p′2,p′3。
在水平边界滤波时,设边界下边的四个像素分别是q0,q1,q2,q3,更新后的像素分别是q′0,q′1,q′2,q′3,边界上边的四个像素分别是p0,p1,p2,p3,更新后的像素分别是p′0,p′1,p′2,p′3。
当滤波强度bS值为4,(p2-p0)<β并且(p0-q0)<((α÷4)+2)时,按照(公式3)(公式4)(公式5)(公式6)(公式7)(公式8)对像素进行更新。
p′0=(p2+2*p1+2*p0+2*q0+q1+4)>>3 (公式3)
p′1=(p2+p1+p0+q0+2)>>2 (公式4)
p′2=(2*p3+3*p2+p1+p0+q0+4)>>3 (公式5)
q′0=(p1+2*p0+2*q0+2*q1+q2+4)>>3 (公式6)
q′1=(p0+q0+q1+q2+2)>>2 (公式7)
q′2=(2*q3+3*q2+q1+q0+p0+4)>>3 (公式8)
否则,按照(公式9)(公式10)对像素进行更新。
p′0=(2*p1+p0+q1+2)>>2 (公式9)
q′0=(2*q1+q0+p1+2)>>2 (公式10)
第五,输出数据。在进行垂直边界滤波时,垂直边界右边的滤波后数据作为第一个步骤的输入数据,垂直边界左边的滤波后数据存入存储器中;在进行水平边界滤波时,水平边界下边的滤波后数据作为第一个步骤的输入数据,水平边界上边的滤波后数据存入存储器中。
为了使本发明的优点得到进一步的体现,以下是使用本方法进行的测试。
测试条件
计算机配置环境为Pentium42.6Ghz,内存1G,系统windows xp2,xilinx公司FPGA开发工具软件ISE10.1版本,Menter Graphics公司时序仿真软件modeltech6.4e版本。
硬件平台配置环境为xilinx公司的virtex4系列开发板。
测试内容
输入176×144,352×288,704×576,1280×1024四种不同分辨率下各30帧视频图像序列,统计本发明在每种分辨率下,滤波一个宏块,滤波一帧图像和滤波30帧的图像序列所使用的时钟周期数。
测试结果
利用本发明对不同分辨率视频图像进行滤波,测试结果所下:
结果分析
如上表所示,使用本发明的方法在对视频图像进行去块效应滤波时,每一个宏块的滤波时钟周期数减少了5个,对不同分辨率的图像,则随着图像分辨率的增大滤波周期数减少的就越多,达到了高速滤波速度的目的。
Claims (2)
1.一种高速去块效应滤波方法,包括以下步骤:
(1)对宏块进行横向切分,将亮度块从上到下分成四个4×16子块,将色度块分成四个4×8子块;
(2)对宏块的垂直边界进行滤波,先后对亮度数据的每个4×16块和色度数据的每个4×8块中的4×4子块边界,按照从左到右的顺序进行垂直边界的循环滤波;
(3)对宏块进行纵向切分,将亮度块从左到右分成四个16×4子块,将色度块分成四个8×4子块;
(4)对宏块的水平边界进行滤波,先后对亮度数据的每个16×4块和色度数据的每个8×4块中的4×4子块边界,按照从上到下的顺序进行水平边界的循环滤波。
2.根据权利要求1所述的高速去块效应滤波方法,其特征在于:所述的步骤(2)和步骤(4)边界循环滤波的步骤是:
第一,读入数据,在进行垂直边界滤波时,从存储器中读入垂直边界右边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入垂直边界左边的像素数据;在进行水平边界滤波时,从存储器中读入水平边界下边的像素数据和宏块的编码参数,从第五个步骤的输出数据中读入水平边界上边的待滤波数据;
第二,计算滤波像素的上限值和滤波强度值,根据第一个步骤输入的宏块编码参数,按照现有视频编码标准中规定的门限参数公式,计算滤波像素时使用的上限值,并判断滤波强度值;
第三,预滤波,计算滤波边界两边像素的和值和差值;
第四,更新像素,根据第二个步骤和第三个步骤得到的结果,对宏块像素按照滤波公式进行更新;
第五,输出数据,在进行垂直边界滤波时,垂直边界右边的滤波后数据作为第一个步骤的输入数据,垂直边界左边的滤波后数据存入存储器中;在进行水平边界滤波时,水平边界下边的滤波后数据作为第一个步骤的输入数据,水平边界上边的滤波后数据存入存储器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010505127 CN101951519A (zh) | 2010-10-12 | 2010-10-12 | 高速去块效应滤波方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010505127 CN101951519A (zh) | 2010-10-12 | 2010-10-12 | 高速去块效应滤波方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101951519A true CN101951519A (zh) | 2011-01-19 |
Family
ID=43454857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010505127 Pending CN101951519A (zh) | 2010-10-12 | 2010-10-12 | 高速去块效应滤波方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101951519A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102857758A (zh) * | 2012-09-03 | 2013-01-02 | 上海算芯微电子有限公司 | 可复用像素处理方法及视频处理芯片 |
CN103299626A (zh) * | 2011-01-14 | 2013-09-11 | 瑞典爱立信有限公司 | 去块滤波 |
CN103379327A (zh) * | 2012-04-24 | 2013-10-30 | 安凯(广州)微电子技术有限公司 | 一种去方块效应滤波方法 |
CN103957425A (zh) * | 2014-04-23 | 2014-07-30 | 华为技术有限公司 | 图像处理方法及系统 |
CN104683820A (zh) * | 2015-02-28 | 2015-06-03 | 华为技术有限公司 | 一种环路滤波方法及环路滤波器 |
CN105847839A (zh) * | 2015-11-17 | 2016-08-10 | 西安邮电大学 | 一种用于阵列结构的多视点视频编码强滤波实现方法 |
CN103702132B (zh) * | 2013-12-10 | 2017-05-31 | 华为技术有限公司 | 滤波方法、装置及设备 |
CN107172423A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对视频帧进行滤波的方法及装置 |
CN111800643A (zh) * | 2020-07-03 | 2020-10-20 | 北京博雅慧视智能技术研究院有限公司 | 一种用于视频编码的去方块滤波器及其滤波方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1874516A (zh) * | 2006-06-22 | 2006-12-06 | 上海交通大学 | 基于avs的去块效应滤波器vlsi实现装置 |
CN101076124A (zh) * | 2006-05-18 | 2007-11-21 | 北京大学深圳研究生院 | 去块滤波器 |
-
2010
- 2010-10-12 CN CN 201010505127 patent/CN101951519A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101076124A (zh) * | 2006-05-18 | 2007-11-21 | 北京大学深圳研究生院 | 去块滤波器 |
CN1874516A (zh) * | 2006-06-22 | 2006-12-06 | 上海交通大学 | 基于avs的去块效应滤波器vlsi实现装置 |
Non-Patent Citations (3)
Title |
---|
《现代电子技术》 20091231 孙建辉等 H.264解码器中一种新颖的去块效应滤波器设计 3-6 1-2 , 第305期 * |
《电子测量技术》 20091031 李俊伟等 H.264/AVC去块滤波算法研究及FPGA实现 117-120 2 第32卷, 第10期 * |
《西北工业大学学报》 20080630 胡红旗等 一种高效去块滤波结构设计与VLSI实现 382-386 1-2 第26卷, 第3期 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9743115B2 (en) | 2011-01-14 | 2017-08-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Deblocking filtering |
US9407912B2 (en) | 2011-01-14 | 2016-08-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Deblocking filtering |
US10142659B2 (en) | 2011-01-14 | 2018-11-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Deblocking filtering |
CN103299626A (zh) * | 2011-01-14 | 2013-09-11 | 瑞典爱立信有限公司 | 去块滤波 |
CN103379327A (zh) * | 2012-04-24 | 2013-10-30 | 安凯(广州)微电子技术有限公司 | 一种去方块效应滤波方法 |
CN102857758B (zh) * | 2012-09-03 | 2015-02-04 | 上海算芯微电子有限公司 | 可复用像素处理方法及视频处理芯片 |
CN102857758A (zh) * | 2012-09-03 | 2013-01-02 | 上海算芯微电子有限公司 | 可复用像素处理方法及视频处理芯片 |
CN103702132B (zh) * | 2013-12-10 | 2017-05-31 | 华为技术有限公司 | 滤波方法、装置及设备 |
CN103957425B (zh) * | 2014-04-23 | 2018-01-23 | 华为技术有限公司 | 图像处理方法及系统 |
CN103957425A (zh) * | 2014-04-23 | 2014-07-30 | 华为技术有限公司 | 图像处理方法及系统 |
CN104683820A (zh) * | 2015-02-28 | 2015-06-03 | 华为技术有限公司 | 一种环路滤波方法及环路滤波器 |
CN104683820B (zh) * | 2015-02-28 | 2018-03-06 | 华为技术有限公司 | 一种环路滤波方法及环路滤波器 |
CN105847839A (zh) * | 2015-11-17 | 2016-08-10 | 西安邮电大学 | 一种用于阵列结构的多视点视频编码强滤波实现方法 |
CN107172423A (zh) * | 2017-03-31 | 2017-09-15 | 武汉斗鱼网络科技有限公司 | 一种对视频帧进行滤波的方法及装置 |
CN111800643A (zh) * | 2020-07-03 | 2020-10-20 | 北京博雅慧视智能技术研究院有限公司 | 一种用于视频编码的去方块滤波器及其滤波方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101951519A (zh) | 高速去块效应滤波方法 | |
CN105898335B (zh) | 提升硬件效率的环路滤波方法以及环路滤波装置 | |
CN102884792B (zh) | 用于统一显著图编码的方法和设备 | |
CN114208191B (zh) | 基于颜色格式的视频区域分割 | |
CN101990099B (zh) | 图像处理设备和方法 | |
CN103947208B (zh) | 减少解块滤波器的方法及装置 | |
JP2022526664A (ja) | クロスコンポーネントモードにおけるパラメータ導出 | |
CN113785576B (zh) | 编解码视频中的二次变换的使用 | |
CN110234012A (zh) | 用于高性能视频编码中的无损编码模式的环内滤波的装置 | |
TWI295140B (en) | A dual-mode high throughput de-blocking filter | |
CN101321290B (zh) | 基于数字信号处理器的去块滤波方法 | |
CN113812155A (zh) | 多种帧间编解码方法之间的交互 | |
JP7332795B2 (ja) | クロマ・イントラモードのベースとなるサイズ制約 | |
CN103051892B (zh) | 内嵌式回路滤波方法以及内嵌式回路滤波装置 | |
KR20220051178A (ko) | 색상 포맷에 기초한 코딩 모드 결정 | |
WO2022116824A1 (zh) | 视频解码方法、视频编码方法、相关设备及存储介质 | |
CN101841722B (zh) | 滤波边界强度的检测装置的检测方法 | |
CN113728631B (zh) | 帧内子块分割和多变换选择 | |
JP2023521119A (ja) | ビデオコーディングにおけるスキップブロックの変換のための最小許容量子化 | |
WO2022266971A1 (zh) | 编解码方法、编码器、解码器以及计算机存储介质 | |
WO2022217442A1 (zh) | 系数编解码方法、编码器、解码器以及计算机存储介质 | |
CN103731674B (zh) | 一种h.264二维并行后处理去块滤波器硬件实现方法 | |
CN107623849B (zh) | 视频解码方法和装置 | |
RU2815434C2 (ru) | Способы уменьшения межкомпонентной зависимости | |
WO2024152352A1 (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110119 |