WO2007033551A1 - A loop filtering method for use in image encoding process - Google Patents
A loop filtering method for use in image encoding process Download PDFInfo
- Publication number
- WO2007033551A1 WO2007033551A1 PCT/CN2006/001619 CN2006001619W WO2007033551A1 WO 2007033551 A1 WO2007033551 A1 WO 2007033551A1 CN 2006001619 W CN2006001619 W CN 2006001619W WO 2007033551 A1 WO2007033551 A1 WO 2007033551A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block
- value
- filtering
- edge
- image
- 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.)
- Ceased
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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/527—Global motion vector estimation
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- 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/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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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
Definitions
- the present invention relates to the field of image coding processing technologies, and in particular, to a loop filtering method in image coding processing.
- the compression processing framework of H.264 is shown in Figure 1.
- the basic processing unit is 16 X 16 macroblocks, which uses multi-frame reference, intra prediction, multi-macroblock mode, 4X4 integer transform and quantization, loop filtering, 1/ 4 pixel motion prediction, CAVLC (context-based variable length coding algorithm) and CABAC (context-based arithmetic coding algorithm) entropy coding and other advanced technologies, its compression efficiency is higher than MPEG-2, H.263, MPEG-4 ASP More than one.
- China Digital Audio Video Codec Standards Working Group AVS has organized a series of standards similar to the MPEG standard since 2002, including video coding standards, audio coding standards, system standards, digital copyright protection DRM standards, etc.
- video coding standards including video coding standards, audio coding standards, system standards, digital copyright protection DRM standards, etc.
- the AVS parti system standard and the AVS part2 video standard were released in December 2003, and the AVS part7 video standard was released in December 2004.
- the images need to be block-processed, and each block will have block effects in different degrees after transformation and quantization.
- the block effect is mainly caused by the quantization error caused by the quantization block processing.
- the block effect has two different expressions depending on the content of the image within the block range, mainly trapezoidal noise and lattice noise. This type of noise will make the edges of the image noticeable and even blocky.
- the trapezoidal noise appears at the strong edges of the image. Since many high frequency coefficients of the DCT (Discrete Cosine Transform) are quantized to zero, the strong edges cannot be fully digitized in the transform domain, and the continuity of the strong edges passing through the boundary of the coded block cannot be obtained due to the block processing of the image. Guaranteed, so that jagged noise appears at the strong edges of the image, making visually unnatural edges of the data block, Called trapezoidal noise.
- DCT Discrete Cosine Transform
- the lattice noise appears in a flat area of the image.
- the rounding may occur due to quantization rounding, which may result in a transform domain.
- the DC (direct current) coefficient crosses the decision threshold of the adjacent quantization level, causing a sudden change in the brightness of the adjacent two coded blocks in the reconstructed image, so that the sheet-like contour appears visually, which is called lattice noise.
- the image needs to be deblocked.
- post-filtering is commonly used to overcome blockiness.
- the loop-filter is used to overcome the block effect. Compared with the post-processing filter, the former does not need a special buffer to pre-store the current frame, so the hardware implementation is easier.
- the loop filter is located in the prediction loop and can directly affect the prediction frame. Therefore, it is possible to reduce the residual coefficient.
- the corresponding filtering process can be performed - if the blockiness value of one edge of the current filtering process is 2, and the pixel difference of the pixel pair at the boundary of the encoding block is smaller than the value defined in the threshold table, the pairwise filter is used.
- the pixel values corresponding to the window are averaged to generate two pairs of new pixel values;
- the difference filtering method is used to increase or decrease the original pixel value by one. The difference, which produces two pairs of new pixel values;
- an object of the present invention is to provide a loop filtering method in image encoding processing, thereby achieving good deblocking effect in a flat region and adapting to more deblocking occasions. .
- the present invention provides a loop filtering method in an image encoding process, including:
- the image real edge judging step determines whether the edge of the encoding block is the real edge of the image according to the pixel difference value of the pixel points on both sides of the encoding block edge and the pixel difference value of the pixel point inside the encoding block;
- the filtering step when the coding block edge is not the real edge of the image, the coding block is filtered by using a filtering method corresponding to the block effect value of the coding block.
- the filtering processing method corresponding to the block effect value of 3 is to filter the pixel values by the corresponding filtering window to generate three pairs of new pixel values;
- the filtering processing method corresponding to the block effect value of 2 is to filter the pixel values by the corresponding filtering window to generate two pairs of new pixel values;
- the filter processing method corresponding to the block effect value is differential filtering, which generates 2 pairs of new pixel values.
- the loop filtering implementation method adopted by the present invention can increase the signal-to-noise ratio by about 0.08 db and the code rate by about 1.5%.
- the loop filtering algorithm provided by the present invention is improved in design for flat region filtering, it has a good effect on the deblocking effect of the flat region.
- the filtering sequence is extended in the invention, so that the filtering operator is further refined and more suitable for different deblocking occasions.
- the present invention does not produce a phenomenon of smoothing the real edge for the texture region since the true edge is checked before filtering.
- the present invention can also implement parallel processing at the macroblock level, that is, it is possible to perform filtering processing on multiple edges simultaneously in the same macroblock.
- Figure 1 is a schematic diagram of a H.264 compression processing framework
- Figure 3 is a schematic diagram of a code block boundary
- Figure 4 is a schematic diagram of the boundary pixel values required for an 8-tap filter on a vertical boundary.
- the method of the present invention specifically includes the following processing: First, calculate the block effect value strength;
- Step 21 Calculate the number of similar points in the boundary area of the coding block rmm;
- the similarity point is a pair of points whose pixel value difference is smaller than the flatness threshold.
- the flatness threshold can be obtained from the QP average QP a of the two coded blocks.
- the number of similar points is the sum of the number of similar points on the same side and the two sides of the coding block edge.
- rmm is calculated by the following formula - 2 ((abs(L n -H withdraw) ⁇ rM)?l:0) + ⁇ (( bs(H n - R soup) ⁇ Th2) ?1:0)
- abs (A-B) is the absolute value operation of A-B.
- A-B the same method is adopted, and the three sets of points in the horizontal direction are summed to obtain num.
- the symbol "?” indicates that the front value is greater than 0, and the A value in A: B is taken, otherwise the B value is taken. .
- Thl and Th2 are flatness thresholds, and the index of the table index can be calculated according to the QP average QP av of the two blocks.
- the image is a non-HD or non-standard definition image (such as the horizontal width of the pixel is less than 500 pixels), then -
- Step 23 Determine whether there is an intra block, and if yes, perform step 24; otherwise, directly execute step 25:
- Determining whether there is an intra block is specifically as follows: If at least one of the blocks on both sides of the edge of the coding block is in intra coding, it is determined that there is an intra block.
- Step 24 If there is a code block that is an intra block, add 1 to the corresponding strength, and then go to step 25.
- the filtering is a smoothing operation, it is possible to smooth the real edges. In order to effectively prevent such operations, it is necessary to make a true and false discrimination for the current edge before filtering.
- Step 25 Determine whether the current edge is a real edge. If not, go to step 26, otherwise, the process ends.
- the pixel difference between the pixels on both sides of the edge of the coding block and the pixel difference of the pixel inside the coding block are calculated, and it is determined whether the difference is greater than the corresponding threshold. If it is greater than, the true edge of the image is not required. Filtering, otherwise, determining the edge that needs to be filtered;
- a preset one-dimensional linear operator In order to determine whether it is a true edge, it is first necessary to calculate the pixel difference value, and specifically, a preset one-dimensional linear operator can be used. Its operation object is a preset one-dimensional window. For example, set a pair of points on both sides of the code block edge, R0 and L0 as shown in Figure 4, and two pairs of points L0 and L1, R0 and Ri o inside the code block.
- it is also necessary to preset corresponding threshold values, and the specific threshold values are respectively stored in two threshold values, which are assumed to be ⁇ , ⁇ tables, respectively, and the ⁇ table records two pixels on both sides of the code block edge.
- the threshold of the pixel difference value, the ⁇ table records the threshold of the pixel difference of two pixels inside the coding block, and two one-dimensional arrays are recorded in the two tables.
- the specific values of the threshold values in the two tables are determined according to the quantization step size QP of the coding block quantization.
- the array index value of the threshold table is the quantized value plus the offset.
- the values of the two offsets are all 0.
- the ⁇ and ⁇ tables can be displayed in array form and list form as follows:
- Fig. 4 it is illustrated in the horizontal direction: subtracting R0 and L0 to obtain a difference C1; subtracting R1 from R0 to obtain a difference C2; subtracting L1 from L0 to obtain a difference C3; If C1 is smaller than ⁇ , C2 is smaller than ⁇ , and C3 is smaller than ⁇ , it is considered that the characteristic edge of the image is not a real edge, and filtering can be performed; otherwise, no filtering is performed.
- Step 26 Perform filtering processing according to the block effect value by using a corresponding filtering manner, where: determining whether the block effect value is 0, and if yes, the process ends, because no filtering is needed when the block effect value is 0. Processing, otherwise continue to judge;
- the block value is 2 and the block value is 3, which is the mean filtering mode, but the number of pairs of pixels processed by the two is different, which will be described in detail below.
- the mean filtering method used in the present invention is to re-assign a plurality of pairs of pixels at a coding block boundary, and adjust the pixel value by using a window filtering formula, and the corresponding output value is jointly determined by 8 points in FIG. 4; Filtering is an adjustment of four points, which adds or subtracts a difference from the original pixel value, thereby narrowing the gap between the two pixel values, so that the visual block effect is eliminated.
- the filter operators used in the present invention have three levels, corresponding to three different non-zero block effect values strengt. Since it is an 8X 8 block, the filter window can be extended to an 8-tap filter. As shown in FIG. 4, the corresponding specific operators are described as follows, where L0, L1, L2, L3 and R0, Rl, R2, R3 represent the original reconstructed pixel values of the unfiltered operation, 10, 11, 12, 13 and R0, rl, r2, r3 represent the pixel values after the filtering operation:
- ⁇ 2 IClip(-C0 5 CO, ( (10—Ll) * 3 + (L2 ⁇ r0) + 4) » 3 ), then after filtering, 11-L1+A2;
- the (1, 2, 1) and (1, 1, 1) weight coefficient pairs are used for L0;
- a (1, 1, 1, 1) weight coefficient pair is used for R1 and L1.
- R1 and L1 can also be filtered as follows to obtain AVS Part 2 compatible filter design, which reduces the implementation complexity of the system:
- Rl aq? (R2 + Rl + R0 + L0 + 2) » 2 : R1;
- R0 aq? ((Rl«l) + R2 + ((R0+L0)«1) + LI +4 ) »3 : ( Rl + (R0«l)+L0 + 2)»2 ;
- Rl aq?(R0 + (Rl«l)+ L0 + 2)»2: R1;
- Ll ap? ((Ll«l) + L0 + R0 + 2)»2: L1 ;
- R2 aq? (RO + R1 + (R2«2) + (R3 «l) +4)»3: R2;
- the (1, 2, 2, 2, 1) and (1, 2, 1) weight coefficient pairs are used; for R1 and L1, (1, 1, 2) and (2, 1, 1 are used respectively. Weight coefficient pairs; (1, 1, 4, 2) and (2, 4, 1, 1) weight coefficient pairs are used for R2 and L2, respectively.
- the calculation formula of the above filtering process is obtained by querying a filter cut parameter table CLIP-TAB table, first with QP as the index, and the value found in CLIPJTAB is C0, the
- TAB tables can be represented in array and table form as:
- the filtering process of the vertical boundary is taken as an example.
- the filtering window is in the vertical state, but the corresponding filtering operator and the filtering calculation on the vertical boundary.
- the sub-consistent, the corresponding filtering process is the same, so it will not be detailed.
- the loop filtering implementation method adopted by the present invention can improve the objective performance.
- the code rate drops by about 1.5%.
- the loop filtering algorithm of the present invention uses the number of similar point pairs to determine the block effect value, and the flatness region has high sensitivity to the above-described block effect value determining method, thereby achieving high intensity smoothing of the flat region. Filtering, with better deblocking effect.
- the filter series is extended to make the filter operator more detailed and more suitable for different deblocking occasions.
- Parallel processing at the macroblock level can be realized, that is, the filtering processing of multiple edges is simultaneously processed in parallel within the same macroblock.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
图像编码处理中的环路滤波方法 技术领域 Loop filtering method in image encoding processing
本发明涉及图像编码处理技术领域, 尤其涉及一种图像编码处理中的环 路滤波方法。 The present invention relates to the field of image coding processing technologies, and in particular, to a loop filtering method in image coding processing.
背景技术 Background technique
随着多媒体技术的发展和多媒体应用的迅速推广, 由 MPEG和 ITU两个 标准组织联合形成的标准制定工作组 JVT制定的 H.264视频图像压缩标准, 以其先进的技术特点和较好的压缩性能, 已经在会议电视、 可视电话、 流媒 体、 HD DVD、 视频监控、 数字电视、 3G等领域得到了广泛应用。 With the development of multimedia technology and the rapid promotion of multimedia applications, the H.264 video image compression standard developed by the standard development working group JVT formed by the two standards organizations of MPEG and ITU, with its advanced technical features and better compression Performance has been widely used in conference TV, videophone, streaming media, HD DVD, video surveillance, digital TV, 3G and other fields.
H.264的压缩处理框架如图 1所示, 基本处理单位为 16 X 16宏块, 采用 了多帧参考、 帧内预测、 多宏块模式、 4X4整数变换和量化、 环路滤波、 1/4 象素运动预测、 CAVLC (基于上下文的变长编码算法)和 CABAC (基于上 下文的算术编码算法)熵编码等先进技术, 其压缩效率比 MPEG-2、 H.263、 MPEG-4 ASP提高一倍多。 The compression processing framework of H.264 is shown in Figure 1. The basic processing unit is 16 X 16 macroblocks, which uses multi-frame reference, intra prediction, multi-macroblock mode, 4X4 integer transform and quantization, loop filtering, 1/ 4 pixel motion prediction, CAVLC (context-based variable length coding algorithm) and CABAC (context-based arithmetic coding algorithm) entropy coding and other advanced technologies, its compression efficiency is higher than MPEG-2, H.263, MPEG-4 ASP More than one.
除此之外, 中国数字音视频编解码技术标准工作组 AVS从 2002年开始 组织制定一套类似于 MPEG标准的标准系列, 包括视频编码标准、 音频编码 标准、 系统标准、 数字版权保护 DRM标准等部分, 并于 2003年 12月发布 了 AVS parti系统标准、 AVS part2视频标准,于 2004年 12月发布了 AVS part7 视频标准。 In addition, China Digital Audio Video Codec Standards Working Group AVS has organized a series of standards similar to the MPEG standard since 2002, including video coding standards, audio coding standards, system standards, digital copyright protection DRM standards, etc. In part, the AVS parti system standard and the AVS part2 video standard were released in December 2003, and the AVS part7 video standard was released in December 2004.
在 H.264、 AVS等视频编码标准中, 对图像均需要作分块处理, 每个编 码块在变换及量化之后都会不同程度的出现块效应。 块效应的出现主要是由 于量化时分块处理造成的量化误差引起的, 所述的块效应随分块范围内图像 内容的不同, 有两种不同的表现形式, 主要为梯形噪声和格形噪声。 此类噪 声将使图像边缘明显甚至出现块状区域。 In video coding standards such as H.264 and AVS, the images need to be block-processed, and each block will have block effects in different degrees after transformation and quantization. The block effect is mainly caused by the quantization error caused by the quantization block processing. The block effect has two different expressions depending on the content of the image within the block range, mainly trapezoidal noise and lattice noise. This type of noise will make the edges of the image noticeable and even blocky.
所述的梯形噪声出现在图像的强边缘处。 由于 DCT (离散余弦变换) 的 许多高频系数被量化为零, 使得强边缘在变换域内不能被完全数字化, 又由 于图像的分块处理, 使得穿过编码块边界的强边缘的连续性不能得到保证, 从而在图像强边缘处出现锯齿状噪声, 使得视觉上有不自然的数据块边缘, 称之为梯形噪声。 The trapezoidal noise appears at the strong edges of the image. Since many high frequency coefficients of the DCT (Discrete Cosine Transform) are quantized to zero, the strong edges cannot be fully digitized in the transform domain, and the continuity of the strong edges passing through the boundary of the coded block cannot be obtained due to the block processing of the image. Guaranteed, so that jagged noise appears at the strong edges of the image, making visually unnatural edges of the data block, Called trapezoidal noise.
所述的格形噪声出现在图像的平坦区域。 在图像的平坦区域, 亮度有递 增或者递减的情况下, 由于量化取整时进行了四舍五入, 可能导致变换域的 The lattice noise appears in a flat area of the image. In the flat region of the image, if the brightness is increasing or decreasing, the rounding may occur due to quantization rounding, which may result in a transform domain.
DC (直流)系数越过了相邻量化级的判决门限, 造成在重建图像中相邻两个 编码块出现亮度突变, 使得视觉上出现片状轮廓, 称之为格形噪声。 The DC (direct current) coefficient crosses the decision threshold of the adjacent quantization level, causing a sudden change in the brightness of the adjacent two coded blocks in the reconstructed image, so that the sheet-like contour appears visually, which is called lattice noise.
为了避免块效应, 在图像编码完, 存储起来作为后一帧的参考帧之前, 需要对图像做去块效应的处理。 在 MPEG系列标准中, 普遍采用了后处理滤 波器(post— filtering) 来克服块效应。 而在 H.264中, 则采用了环路滤波器 (loop -filter) 的方式克服块效应。 釆用环路滤波器和采用后处理滤波器相 比, 前者无需专门的缓冲区来预存当前帧, 因此硬件实现更加容易; 再者, 环路滤波器位于预测环内, 可以直接影响预测帧, 因此, 可以起到减小残差 系数的作用。 In order to avoid the block effect, before the image is encoded and stored as the reference frame of the next frame, the image needs to be deblocked. In the MPEG family of standards, post-filtering is commonly used to overcome blockiness. In H.264, the loop-filter is used to overcome the block effect. Compared with the post-processing filter, the former does not need a special buffer to pre-store the current frame, so the hardware implementation is easier. Furthermore, the loop filter is located in the prediction loop and can directly affect the prediction frame. Therefore, it is possible to reduce the residual coefficient.
下面对在 AVS part2中使用的环路滤波的实现方式进行说明, 具体包括: 首先, 计算块效应值和像素差值, 并加以判断: The following describes the implementation of the loop filtering used in AVS part2, including: First, calculate the block effect value and the pixel difference value, and judge:
按照宏块编码信息计算块效应值 Bs,如果宏块为帧内编码类型,则 Bs=2, 如果宏块为帧间编码类型, 且运动矢量和参考帧在编码块边界处有差异, 则 Bs=l , 否则 Bs=0; The block effect value Bs is calculated according to the macroblock coding information, and if the macroblock is of the intra coding type, Bs=2, if the macroblock is of an inter coding type, and the motion vector and the reference frame have differences at the coding block boundary, then Bs =l, otherwise Bs=0;
根据量化步长 QP创建两个相邻像素对像素差值的阈值表, 将编码块边 界处的相邻像素对的差值大小与阈值表进行比较; Creating a threshold table of pixel difference values of two adjacent pixels according to the quantization step QP, and comparing the difference value of the adjacent pixel pairs at the coding block boundary with the threshold table;
其次, 便可以进行相应的滤波处理- 如果当前滤波处理的一条边的块效应值为 2, 并且编码块边界处的像素 对的像素差值小于阈值表中定义的值, 则用数对滤波器窗口对应的像素值作 均值滤波, 产生两对新像素值; Secondly, the corresponding filtering process can be performed - if the blockiness value of one edge of the current filtering process is 2, and the pixel difference of the pixel pair at the boundary of the encoding block is smaller than the value defined in the threshold table, the pairwise filter is used. The pixel values corresponding to the window are averaged to generate two pairs of new pixel values;
如果当前滤波处理的一条边的块效应值为 1, 并且编码块边界处的像素 对的像素差值小于阈值表中定义的值, 则采用差值滤波方式, 将原像素值增 加或减去一个差值, 产生两对新像素值; If the block effect value of one edge of the current filtering process is 1, and the pixel difference of the pixel pair at the boundary of the encoding block is smaller than the value defined in the threshold table, the difference filtering method is used to increase or decrease the original pixel value by one. The difference, which produces two pairs of new pixel values;
如果块效应值为 0, 或者编码块边界处的像素对的像素差值大于阈值表 中定义的值, 则不作滤波。 If the blockiness value is 0, or if the pixel difference of the pixel pair at the boundary of the coding block is greater than the value defined in the threshold table, no filtering is performed.
可以看出, 上述现有的环路滤波过程中忽略了在平坦区域块效应更容易 被人眼察觉的事实, 因而并未针对平坦区域进行大强度的平滑滤波。 而且, 在上述方法中, 滤波算子只有 3级 (0, 1, 2), 由于滤波算子过于单一, 因 而很难达到良好的滤波效果, 进而使得相应的方法适应的场合受限。 It can be seen that the above-mentioned existing loop filtering process neglects that the block effect in the flat region is easier. The fact that it is perceived by the human eye, therefore, does not perform large-intensity smoothing filtering on flat areas. Moreover, in the above method, the filter operator has only three levels (0, 1, 2), and since the filter operator is too single, it is difficult to achieve a good filtering effect, and thus the corresponding method is limited.
发明内容 Summary of the invention
鉴于上述现有技术所存在的问题, 本发明的目的是提供一种图像编码处 理中的环路滤波方法, 从而可以在平坦区域实现良好的去块效应, 并可以适 应更多的去块效应场合。 In view of the above problems in the prior art, an object of the present invention is to provide a loop filtering method in image encoding processing, thereby achieving good deblocking effect in a flat region and adapting to more deblocking occasions. .
为了实现上述目的,本发明提供了一种图像编码处理中的环路滤波方法, 包括: In order to achieve the above object, the present invention provides a loop filtering method in an image encoding process, including:
块效应值确定步骤, 统计待滤波的编码块边界区域相似点的数量, 并根 据相似点的数量确定该编码块的块效应值; a block effect value determining step of counting the number of similar points in the boundary region of the coded block to be filtered, and determining a block effect value of the coded block according to the number of similar points;
图像真实边缘判断步骤, 根据编码块边缘两边像素点的像素差值及编码 块内部的像素点的像素差值判断编码块边缘是否是图像的真实边缘; The image real edge judging step determines whether the edge of the encoding block is the real edge of the image according to the pixel difference value of the pixel points on both sides of the encoding block edge and the pixel difference value of the pixel point inside the encoding block;
滤波步骤, 对于编码块边缘不是图像的真实边缘时, 采用编码块的块效 应值对应的滤波方式对编码块进行滤波处理。 In the filtering step, when the coding block edge is not the real edge of the image, the coding block is filtered by using a filtering method corresponding to the block effect value of the coding block.
上述的图像编码处理中的环路滤波方法, 其中, 所述的块效应值确定步 骤中, 相似点的数量小于第一预定值时, 确定块效应值为 0, 相似点的数量大 于或等于第一预定值且小于第二预定值时,确定块效应值为 1, 相似点的数量 大于或等于第二预定值时, 确定块效应值为 2。 The loop filtering method in the image encoding process described above, wherein, in the block effect value determining step, when the number of similar points is less than the first predetermined value, the block effect value is determined to be 0, and the number of similar points is greater than or equal to the first When a predetermined value is less than the second predetermined value, the blockiness value is determined to be 1, and when the number of similarities is greater than or equal to the second predetermined value, the blockiness value is determined to be 2.
上述的图像编码处理中的环路滤波方法, 其中, 所述的块效应值确定步 骤中, 当所述的编码块为帧内编码块时, 则将确定的块效应值加 1。 The loop filtering method in the image encoding process described above, wherein, in the block effect value determining step, when the encoding block is an intra-coded block, the determined block-effect value is incremented by one.
上述的图像编码处理中的环路滤波方法,其中,块效应值为 0时不进行滤 波处理; The loop filtering method in the image encoding processing described above, wherein the filtering effect is not performed when the blockiness value is 0;
块效应值为 3对应的滤波处理方式为用对应的滤波窗口对像素值作均值 滤波, 产生 3对新像素值; The filtering processing method corresponding to the block effect value of 3 is to filter the pixel values by the corresponding filtering window to generate three pairs of new pixel values;
块效应值为 2对应的滤波处理方式为用对应的滤波窗口对像素值作均值 滤波, 产生 2对新像素值; The filtering processing method corresponding to the block effect value of 2 is to filter the pixel values by the corresponding filtering window to generate two pairs of new pixel values;
块效应值为 1对应的滤波处理方式为差值滤波, 产生 2对新像素值。 The filter processing method corresponding to the block effect value is differential filtering, which generates 2 pairs of new pixel values.
上述的图像编码处理中的环路滤波方法, 其中, 所述的相似点是指边界 区域中像素差值小于平坦度阈值的点。 a loop filtering method in the image encoding process described above, wherein the similarity point refers to a boundary A point in the region where the pixel difference is less than the flatness threshold.
上述的图像编码处理中的环路滤波方法, 其中, 所述的相似点的数量为 编码块边缘同侧和两侧相似点对个数的和。 The loop filtering method in the image encoding process described above, wherein the number of similar points is the sum of the number of similar points on the same side and the sides of the coded block edge.
上述的图像编码处理中的环路滤波方法, 其中, 所述平坦度阈值根据两 个块的 QP平均值计算査表索引后查表得到。 The loop filtering method in the image encoding process described above, wherein the flatness threshold is obtained by calculating a lookup table index based on a QP average value of two blocks.
上述的图像编码处理中的环路滤波方法, 其中, 所述的图像真实边缘判 断步骤中, 编码块边界处的像素对的差值小于预定的门限值时, 判断为编码 块不是图像的真实边缘。 The loop filtering method in the image encoding process described above, wherein, in the image real edge determining step, when the difference between the pixel pairs at the boundary of the encoding block is less than a predetermined threshold, it is determined that the encoding block is not the real image edge.
由上述本发明提供的技术方案可以看出, 本发明采用的环路滤波实现方 法可以使得信噪比提高 0.08db左右, 码率下降 1.5 %左右。 同时, 由于本发明 提供的环路滤波算法针对平坦区域滤波进行了改进设计, 所以对平坦区域的 去块效应有很好的效果。 It can be seen from the above technical solution provided by the present invention that the loop filtering implementation method adopted by the present invention can increase the signal-to-noise ratio by about 0.08 db and the code rate by about 1.5%. At the same time, since the loop filtering algorithm provided by the present invention is improved in design for flat region filtering, it has a good effect on the deblocking effect of the flat region.
本发明中扩展了滤波级数, 因而还使得滤波算子更为细化, 更加适应于 不同的去块效应场合。 The filtering sequence is extended in the invention, so that the filtering operator is further refined and more suitable for different deblocking occasions.
本发明对于纹理区域, 由于在滤波之前检验过真实边缘, 所以不会产生 将真实边缘平滑的现象。 The present invention does not produce a phenomenon of smoothing the real edge for the texture region since the true edge is checked before filtering.
除上述优点之外, 本发明还可以实现宏块级的并行处理, 即在同一宏块 内可以实现同时并行对多条边进行滤波处理。 In addition to the above advantages, the present invention can also implement parallel processing at the macroblock level, that is, it is possible to perform filtering processing on multiple edges simultaneously in the same macroblock.
附图说明 DRAWINGS
图 1为 H.264压縮处理框架示意图; Figure 1 is a schematic diagram of a H.264 compression processing framework;
图 2为本发明所述的方法流程图; 2 is a flow chart of the method according to the present invention;
图 3为编码块边界示意图; Figure 3 is a schematic diagram of a code block boundary;
图 4为垂直边界上的 8抽头滤波器所需使用的边界象素值示意图。 Figure 4 is a schematic diagram of the boundary pixel values required for an 8-tap filter on a vertical boundary.
具体实施方式 detailed description
本发明的目的在于提供一种环路滤波方法, 它可以有效去除块效应, 使 得解码后图像的主观质量提高, 客观上峰值信噪比提高, 码率下降。 It is an object of the present invention to provide a loop filtering method which can effectively remove blockiness, improve the subjective quality of the decoded image, and objectively increase the peak signal to noise ratio and decrease the code rate.
下面将结合附图对本发明提供的方法的具体实现方式进行说明, 其中编 码块是 8 X 8编码块, 对于其他编码块 (如 4 X 4编码块) 情形, 方法类似。 如 图 2所示, 本发明的方法具体包括以下处理过程: 首先, 计算块效应值 strength; A specific implementation manner of the method provided by the present invention will be described below with reference to the accompanying drawings, wherein the coding block is an 8×8 coding block, and the method is similar for other coding blocks (such as a 4×4 coding block). As shown in FIG. 2, the method of the present invention specifically includes the following processing: First, calculate the block effect value strength;
步骤 21: 计算编码块边界区域相似点的个数 rmm; Step 21: Calculate the number of similar points in the boundary area of the coding block rmm;
所谓相似点, 是象素值差值小于平坦度阈值的一对点, 平坦度阈值可以 根据两个编码块的 QP平均值 QPa †算查表得到。 所述的相似点的数量为编码 块边缘同侧和两侧相似点对的个数和,如图 3所示, Ln Hn Rn Kn (0<=η<=7) 是位于编码块边界的 32个点, 则 rmm由以下公式算出- 2 ((abs(Ln -H„)<rM)?l:0) +∑ (( bs(Hn - R„) < Th2) ?1:0) The similarity point is a pair of points whose pixel value difference is smaller than the flatness threshold. The flatness threshold can be obtained from the QP average QP a of the two coded blocks. The number of similar points is the sum of the number of similar points on the same side and the two sides of the coding block edge. As shown in FIG. 3, Ln Hn Rn Kn (0<=η<=7) is 32 located at the boundary of the coding block. For each point, rmm is calculated by the following formula - 2 ((abs(L n -H„)<rM)?l:0) +∑ (( bs(H n - R„) < Th2) ?1:0)
7 "= "= (1) 7 " = "= (1)
+j ((abs(Rn -Kn)<Thl)?l: 0) +j ((abs(R n -K n )<Thl)?l: 0)
«=0 «=0
其中, abs (A— B) 是取 A— B的绝对值操作。 对于水平边界, 采取同样 的办法, 对水平方向上的三组点作差再求和得到 num, 符号 "? "表示其前 面值大于 0时, 取 A: B中的 A值, 否则取 B值。 Among them, abs (A-B) is the absolute value operation of A-B. For the horizontal boundary, the same method is adopted, and the three sets of points in the horizontal direction are summed to obtain num. The symbol "?" indicates that the front value is greater than 0, and the A value in A: B is taken, otherwise the B value is taken. .
其中 Thl和 Th2为平坦度阈值,可以根据两个块的 QP平均值 QPav计算查表 索引 Index Where Thl and Th2 are flatness thresholds, and the index of the table index can be calculated according to the QP average QP av of the two blocks.
两个块的 QP平均值 QPav为: QPav = (QPp + QPq + 1 )» 1, 索引 Index为 The QP average QP av of the two blocks is: QP av = (QP p + QP q + 1 )» 1, the index Index is
根据索引 Index与平坦度阈值 1¾和 2间的对应关系,由下表得到 的取值- According to the correspondence between the index Index and the flatness thresholds 13⁄4 and 2 , the values obtained from the following table -
步骤 22: 根据统计的相似点的个数确定待滤波编码块的块效应值, 具体 为- 图像为高清或标清图像(水平方向的像素宽度大于等于 500个像素),贝 IJ: 1、 若 num<4, strength =0; Step 22: Determine the block effect value of the code block to be filtered according to the number of statistical similarities, specifically - the image is a high definition or standard definition image (the pixel width in the horizontal direction is greater than or equal to 500 pixels), and IJ: 1. If num<4, strength =0;
2、 若 num>=4且 num<12, strength= l ; 2. If num>=4 and num<12, strength= l ;
3、 若 num>= 12, strength= 2 o 3. If num>= 12, strength= 2 o
图像为非高清或非标清图像(如水平方向的像素宽度小于 500个像素) , 则- The image is a non-HD or non-standard definition image (such as the horizontal width of the pixel is less than 500 pixels), then -
1、 若 num<4, strength=0; 1. If num<4, strength=0;
2、 若 num>=4且 num<16, strength = 1; 2. If num>=4 and num<16, strength = 1;
3、 若 num>=16, strength =2。 3. If num>=16, strength =2.
在此, 4、 12、 16仅是本发明的具体实施例中举出的具体判断阈值, 当然 也可以选用其他的数值。 Here, 4, 12, and 16 are only specific judgment thresholds exemplified in the specific embodiment of the present invention, and of course, other values may be selected.
当然, 也可以依据相似点的数量及其他门限值确定相应的块效应值; 步骤 23: 判断是否存在帧内块, 如果是, 则执行步骤 24, 否则, 直接执 行步骤 25: Of course, the corresponding block effect value may also be determined according to the number of similar points and other threshold values; Step 23: Determine whether there is an intra block, and if yes, perform step 24; otherwise, directly execute step 25:
判断是否存在帧内块具体为: 如果编码块边缘两边的块中至少有一个是 采用帧内编码方式, 则判断为存在帧内块。 Determining whether there is an intra block is specifically as follows: If at least one of the blocks on both sides of the edge of the coding block is in intra coding, it is determined that there is an intra block.
步骤 24: 如果有一个编码块是帧内块, 则将相应的 strength加 1, 之后, 再执行步骤 25。 Step 24: If there is a code block that is an intra block, add 1 to the corresponding strength, and then go to step 25.
其次, 便需要根据上述确定的块效应值执行滤波处理。 Secondly, it is necessary to perform filtering processing in accordance with the block effect value determined above.
由于滤波是平滑操作, 所以有可能将真实边缘作平滑处理, 为了有效防 止这种操作, 在滤波之前应该针对当前边缘作真假判别。 Since the filtering is a smoothing operation, it is possible to smooth the real edges. In order to effectively prevent such operations, it is necessary to make a true and false discrimination for the current edge before filtering.
步骤 25: 判断当前边缘是否为真实边缘, 如果不是, 则执行步骤 26, 否 则, 过程结束; Step 25: Determine whether the current edge is a real edge. If not, go to step 26, otherwise, the process ends.
具体为计算编码块边缘两边像素点的像素差值及编码块内部的像素点的 像素差值, 并判断该差值是否均大于各自对应的阈值, 如果大于, 则是图像 真实边缘, 不需要进行滤波, 否则, 确定为需要进行滤波处理的边缘; Specifically, the pixel difference between the pixels on both sides of the edge of the coding block and the pixel difference of the pixel inside the coding block are calculated, and it is determined whether the difference is greater than the corresponding threshold. If it is greater than, the true edge of the image is not required. Filtering, otherwise, determining the edge that needs to be filtered;
为判断是否为真实边缘, 首先需要计算所述的像素差值, 具体可以釆用 预先设定的一维线性算子。 其操作对象为预先设定的一维窗口。 例如, 设定 编码块边缘两边的一对点, 如图 4所示的 R0和 L0, 以及编码块内部两对点 L0 禾口 Ll, R0和 Ri o 另外, 还需要预先设定相应的判别门限值, 具体的门限值分别保存于两 个门限值表, 假设分别是 α, β表, α表记录了编码块边缘两边的两个像素点 的像素差值的门限, β表记录了编码块内部两个像素点的像素差值的门限,两 表中分别记录了两个一维数组。 In order to determine whether it is a true edge, it is first necessary to calculate the pixel difference value, and specifically, a preset one-dimensional linear operator can be used. Its operation object is a preset one-dimensional window. For example, set a pair of points on both sides of the code block edge, R0 and L0 as shown in Figure 4, and two pairs of points L0 and L1, R0 and Ri o inside the code block. In addition, it is also necessary to preset corresponding threshold values, and the specific threshold values are respectively stored in two threshold values, which are assumed to be α, β tables, respectively, and the α table records two pixels on both sides of the code block edge. The threshold of the pixel difference value, the β table records the threshold of the pixel difference of two pixels inside the coding block, and two one-dimensional arrays are recorded in the two tables.
而且, 所述的两个表中门限值的具体取值根据编码块量化的量化步长 QP 确定。 同时, 为了方便调整滤波执行的力度, 还可以人为设定了两个调整滤 波的偏移量。 此时, 所述门限值表的数组索引值就是量化值加上偏移量, 默 认状态下, 这两个偏移量的取值都是 0。 在査该表时, 则用 QP与偏移量的和 得到两个值, 然后作一个约束, 得到两个索引值 indexA和 indexB。 根据这两 个值在 α, β表中找出相应的 α, β值作为判别的门限值; Moreover, the specific values of the threshold values in the two tables are determined according to the quantization step size QP of the coding block quantization. At the same time, in order to adjust the intensity of the filter execution, it is also possible to manually set the offset of the two adjustment filters. At this time, the array index value of the threshold table is the quantized value plus the offset. In the default state, the values of the two offsets are all 0. When looking up the table, we use the sum of QP and the offset to get two values, and then make a constraint to get two index values indexA and indexB. According to these two values, the corresponding α, β values are found in the α, β table as the threshold value for discrimination;
其中 α、 β表可以分别以数组形式和列表形式如下所示: The α and β tables can be displayed in array form and list form as follows:
( 1 ) α表为: (1) The α table is:
byte ALPHA_TABLE[64]= Byte ALPHA_TABLE[64]=
{ {
0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
1, 1, 1, 2, 2, 2, 3, 3, 1, 1, 1, 2, 2, 2, 3, 3,
4, 4, 5, 5, 6, 7, 8, 9, 4, 4, 5, 5, 6, 7, 8, 9,
10,11,12,13,15,16,18,20, 10,11,12,13,15,16,18,20,
22,24,26,28,30,33,33,35, 22,24,26,28,30,33,33,35,
35,36,37,37,39,39,42,44, 35,36,37,37,39,39,42,44,
46,48,50,52,53,54,55,56, 46,48,50,52,53,54,55,56,
57,58,59,60,61,62,63,64 57,58,59,60,61,62,63,64
}; };
(2) β表为: (2) The β table is:
byte BETA— TABLE[64] = Byte BETA- TABLE[64] =
{ {
0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2,
2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6,
6, 7, 7, 7, 8, 8, 8, 9, 6, 7, 7, 7, 8, 8, 8, 9,
9,10,10,11,11,12,13,14 9,10,10,11,11,12,13,14
15,16,17,18,19,20,21,22: 15,16,17,18,19,20,21,22:
23,23,24,24,25,25,26,27 23,23,24,24,25,25,26,27
如图 4, 以水平方向上的例子说明: 用 R0和 L0相减, 得到一差值 C1 ; 用 R0减 Rl, 得到一差值 C2; 用 L0减 L1 , 得到一差值 C3; 之后, 如果 C1小于 α, C2小于 β且 C3小于 β, 则认为图像的特征边缘不是真实边缘, 可以进行滤波; 反之则不进滤波。 As shown in Fig. 4, it is illustrated in the horizontal direction: subtracting R0 and L0 to obtain a difference C1; subtracting R1 from R0 to obtain a difference C2; subtracting L1 from L0 to obtain a difference C3; If C1 is smaller than α, C2 is smaller than β, and C3 is smaller than β, it is considered that the characteristic edge of the image is not a real edge, and filtering can be performed; otherwise, no filtering is performed.
当确定需要进行滤波处理时, 则根据步骤 22或步骤 24确定的块效应值进 行相应的滤波处理, 具体采用下述处理过程实现: 步骤 26, 根据块效应值采用对应的滤波方式进行滤波处理, 其中: 包括 判断所述的块效应值是否为 0, 如果是, 则过程结束, 这是因为当块效应 值为 0时无需进行滤波处理, 否则继续判断; When it is determined that the filtering process needs to be performed, the corresponding filtering process is performed according to the block effect value determined in step 22 or step 24, and the following processing is specifically implemented: Step 26: Perform filtering processing according to the block effect value by using a corresponding filtering manner, where: determining whether the block effect value is 0, and if yes, the process ends, because no filtering is needed when the block effect value is 0. Processing, otherwise continue to judge;
判断所述的块效应值是否为 1, 如果是, 则采用块效应值为 1时的滤波处 理方式进行滤波处理, 即采用差值滤波方式进行滤波处理; 否则继续判断; 判断所述的块效应值是否为 2, 如果是, 则采用块效应值为 2时的滤波处理方 式进行滤波处理, 否则采用块效应值为 3时的滤波处理方式进行滤波处理。 Determining whether the block effect value is 1, if yes, filtering processing is performed by using a filtering processing mode when the block effect value is 1, that is, filtering processing is performed by using a difference filtering method; otherwise, judging is continued; determining the block effect Whether the value is 2, if yes, the filtering processing is performed when the block effect value is 2, otherwise the filtering processing is performed when the block effect value is 3.
在此, 块效应值为 2和块效应值为 3时均为均值滤波方式, 但二者处理的 像素对数目不同, 这点将在下面进行详细描述。 Here, the block value is 2 and the block value is 3, which is the mean filtering mode, but the number of pairs of pixels processed by the two is different, which will be described in detail below.
本发明中采用的均值滤波方式是对编码块边界多对像素重新赋值, 用窗 口滤波公式实现对像素值的调整, 其对应输出值由图 4中的 8个点共同决定; 所述的差值滤波是对四个点作调整,它将原始像素值加上或者减去一个差值, 从而将两个像素值的差距缩小, 使得视觉上块效应消除。 The mean filtering method used in the present invention is to re-assign a plurality of pairs of pixels at a coding block boundary, and adjust the pixel value by using a window filtering formula, and the corresponding output value is jointly determined by 8 points in FIG. 4; Filtering is an adjustment of four points, which adds or subtracts a difference from the original pixel value, thereby narrowing the gap between the two pixel values, so that the visual block effect is eliminated.
下面将对各块效应值对应的具体的滤波处理过程进行举例说明。 The specific filtering process corresponding to each block effect value will be exemplified below.
本发明中采用的滤波算子一共有 3级, 分别对应 3个不同的非零块效应值 strengt 由于是 8X 8的块, 所以滤波窗口可以扩展到 8抽头滤波器。 如图 4所 示, 相应的具体的算子描述如下, 其中 L0、 Ll、 L2、 L3和 R0、 Rl、 R2、 R3 表示未经滤波操作的原始重建像素值, 10、 11、 12、 13和 r0、 rl、 r2、 r3表示经 滤波操作后的像素值: The filter operators used in the present invention have three levels, corresponding to three different non-zero block effect values strengt. Since it is an 8X 8 block, the filter window can be extended to an 8-tap filter. As shown in FIG. 4, the corresponding specific operators are described as follows, where L0, L1, L2, L3 and R0, Rl, R2, R3 represent the original reconstructed pixel values of the unfiltered operation, 10, 11, 12, 13 and R0, rl, r2, r3 represent the pixel values after the filtering operation:
( 1 ) 当 strength= l时, 釆用差值滤波方式进行滤波: (1) When strength = l, 差值 filter with difference filtering:
所述的差值 Δ1 = IClip(-C0, CO, ( (R0-L0) * 3 + (LI— Rl) + 4) » 3 ); 则滤波后, 10=L0+A1, r0=R0-Al ; The difference Δ1 = IClip(-C0, CO, ( (R0-L0) * 3 + (LI - Rl) + 4) » 3 ); Then after filtering, 10 = L0 + A1, r0 = R0 - Al ;
Δ2= IClip(-C05 CO, ( (10—Ll) * 3 + (L2~r0) + 4) » 3 ), 则滤波后, 11-L1+A2; Δ2= IClip(-C0 5 CO, ( (10—Ll) * 3 + (L2~r0) + 4) » 3 ), then after filtering, 11-L1+A2;
Δ3= IClip(-C0, CO, ( (Rl— rO) * 3 + (10-R2) + 4) » 3 ), 则滤波后, rl=Rl— Δ3。 Δ3 = IClip(-C0, CO, ( (Rl - rO) * 3 + (10-R2) + 4) » 3 ), then after filtering, rl = Rl - Δ3.
(2) 当 strength=2时, 采用均值滤波方式进行滤波: (2) When strength=2, filter by means of mean filtering:
r0 = aq ? ( Rl + (R0 « 1)+L0 +2 ) »2: ((Rl « 1) + R0 + L0 +2 ) » 2 ; 10 = ap? ((L0 « 1)+ L1 + R0 +2 ) »2: ((LI « 1) + L0 + R0 +2 ) » 2; rl = aq? ( R2+ Rl + rO + 10 + 2 ) » 2 : Rl; R0 = aq ? ( Rl + (R0 « 1)+L0 +2 ) »2: ((Rl « 1) + R0 + L0 +2 ) » 2 ; 10 = ap? ((L0 « 1)+ L1 + R0 +2 ) »2: ((LI « 1) + L0 + R0 +2 ) » 2; Rl = aq? ( R2+ Rl + rO + 10 + 2 ) » 2 : Rl;
11 = ap ? ( L2 + LI + 10 + rO + 2 ) » 2 : LI; 11 = ap ? ( L2 + LI + 10 + rO + 2 ) » 2 : LI;
上述的滤波方式中: In the above filtering method:
针对 RO采用 (1,2,1)和 (1,1,2)权重系数对; Use (1, 2, 1) and (1, 1, 2) weight coefficient pairs for RO;
针对 L0采用了 (1,2,1)和 (1,1,1)权重系数对; The (1, 2, 1) and (1, 1, 1) weight coefficient pairs are used for L0;
针对 R1和 L1采用了 (1,1,1,1)权重系数对。 A (1, 1, 1, 1) weight coefficient pair is used for R1 and L1.
同时, 在具体实施过程中, 还可将 R1和 L1采用如下方法进行滤波以获取 与 AVS Part 2兼容的滤波器设计, 降低系统的实现复杂度: At the same time, in the specific implementation process, R1 and L1 can also be filtered as follows to obtain AVS Part 2 compatible filter design, which reduces the implementation complexity of the system:
rl =aq?(R2 + Rl +R0+L0 + 2)»2 :R1; Rl = aq? (R2 + Rl + R0 + L0 + 2) » 2 : R1;
11 = ap?(L2 + Ll + L0 + R0 + 2)»2 :L1; 11 = ap?(L2 + Ll + L0 + R0 + 2)»2 :L1;
其中, "d=a? b:c"的含义为当 a大于 0时 d=b,否则 d=c。 Where "d=a? b:c" means that when a is greater than 0, d=b, otherwise d=c.
(3) 当 Strength=3时, 仍采用均值滤波方式进行滤波: (3) When S trength=3, the mean filtering method is still used for filtering:
r0= aq? ( (Rl«l) + R2 + ((R0+L0)«1) + LI +4 ) »3 : ( Rl + (R0«l)+L0 + 2)»2 ; R0= aq? ((Rl«l) + R2 + ((R0+L0)«1) + LI +4 ) »3 : ( Rl + (R0«l)+L0 + 2)»2 ;
10 = ap ? ( L2 + (Ll«l) + ((R0+L0)«1) + Rl +4 ) »3: ((L0«1) + LI + R0+2)»2; 10 = ap ? ( L2 + (Ll«l) + ((R0+L0)«1) + Rl +4 ) »3: ((L0«1) + LI + R0+2)»2;
rl = aq?(R0 + (Rl«l)+ L0 + 2)»2:R1; Rl = aq?(R0 + (Rl«l)+ L0 + 2)»2: R1;
ll=ap? ((Ll«l) + L0 + R0 + 2)»2:L1; Ll=ap? ((Ll«l) + L0 + R0 + 2)»2: L1 ;
r2= aq? (RO + R1 + (R2«2) + (R3«l) +4)»3: R2; R2= aq? (RO + R1 + (R2«2) + (R3«l) +4)»3: R2;
12 = ap ? (LO + L1 + (L2«2) + (L3«l) +4)»3: L2; 12 = ap ? (LO + L1 + (L2«2) + (L3«l) +4)»3: L2 ;
上述的滤波方式中: In the above filtering method:
针对 RO和 LO采用了 (1, 2, 2, 2, 1)和 (1, 2, 1)权重系数对; 针对 R1和 L1分别采用了 (1, 1, 2)和 (2, 1, 1)权重系数对; 针对 R2和 L2分别采用了 (1, 1, 4, 2) 和 (2, 4, 1, 1)权重系数对。 其中, aq = (abs(R0— R2)<p);ap = (abs(L0 - L2) < β) 。 For the RO and LO, the (1, 2, 2, 2, 1) and (1, 2, 1) weight coefficient pairs are used; for R1 and L1, (1, 1, 2) and (2, 1, 1 are used respectively. Weight coefficient pairs; (1, 1, 4, 2) and (2, 4, 1, 1) weight coefficient pairs are used for R2 and L2, respectively. Where aq = (abs(R0- R2)<p); ap = (abs(L0 - L2) < β) .
以上滤波处理的计算公式中 CO是由查询一张滤波裁减参数表 CLIP一 TAB 表得到, 首先以 QP为索引, 在 CLIPJTAB中査得的值即为 C0, 所述的 The calculation formula of the above filtering process is obtained by querying a filter cut parameter table CLIP-TAB table, first with QP as the index, and the value found in CLIPJTAB is C0, the
CLIP— TAB表可以用数组形式和表格形式表示为: CLIP—TAB tables can be represented in array and table form as:
byte CLIP_TAB[64] = 0, 0, 0, 0, 0, 0, 0, 0, Byte CLIP_TAB[64] = 0, 0, 0, 0, 0, 0, 0, 0,
o, o, 0, 0, 0, 0, 0, 0, o, o, 0, 0, 0, 0, 0, 0,
ι,ι,ι, 1, 1, 1,1,1, ι,ι,ι, 1, 1, 1,1,1,
1,1,1, 1, 1, 1,2, 2, 1,1,1, 1, 1, 1,2, 2,
2, 2, 2, 2, 2, 2,3,3, 2, 2, 2, 2, 2, 2, 3, 3,
3 3 3 3, 3, 4, 4, 4, 3 3 3 3, 3, 4, 4, 4,
5, 5, 5, 6, 6, 6, 7, 7, 5, 5, 5, 6, 6, 6, 7, 7,
7, 7, 8, 8, 8, 9, 9,9 7, 7, 8, 8, 8, 9, 9,9
前面描述中是以对垂直边界的滤波处理过程为例进行的说明, 对于水平 边界, 其滤波窗口处于竖直状态, 但相应的滤波算子和垂直边界上的滤波算 子一致, 相应的滤波处理过程也相同, 故不再详述。 In the foregoing description, the filtering process of the vertical boundary is taken as an example. For the horizontal boundary, the filtering window is in the vertical state, but the corresponding filtering operator and the filtering calculation on the vertical boundary. The sub-consistent, the corresponding filtering process is the same, so it will not be detailed.
综上所述, 本发明采用的环路滤波实现方法可以在客观性能上提高 In summary, the loop filtering implementation method adopted by the present invention can improve the objective performance.
0.08db左右的信噪比, 码率下降 1.5 %左右。 With a signal-to-noise ratio of around 0.08 db, the code rate drops by about 1.5%.
而且, 本发明的环路滤波算法利用相似点对数目来确定块效应值, 而平 坦度区域对上述的块效应值确定方法具有很高的敏感性, 从而实现了对平坦 区域的大强度的平滑滤波, 具有较好的去块效应的效果。 Moreover, the loop filtering algorithm of the present invention uses the number of similar point pairs to determine the block effect value, and the flatness region has high sensitivity to the above-described block effect value determining method, thereby achieving high intensity smoothing of the flat region. Filtering, with better deblocking effect.
扩展了滤波级数, 使得滤波算子更为细化, 更加适应于不同的去块效应 场合。 The filter series is extended to make the filter operator more detailed and more suitable for different deblocking occasions.
对于纹理区域, 由于在滤波之前检验过真实边缘, 所以不会产生将真实 边缘平滑的现象。 For the texture region, since the true edge is checked before filtering, there is no phenomenon that the real edge is smoothed.
可以实现宏块级的并行处理, 即在同一宏块内同时并行处理多条边的滤 波处理。 Parallel processing at the macroblock level can be realized, that is, the filtering processing of multiple edges is simultaneously processed in parallel within the same macroblock.
以上所述, 仅为本发明较佳的具体实施方式, 但本发明的保护范围并不 局限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可 轻易想到的变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明 的保护范围应该以权利要求的保护范围为准。 The above is only a preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or within the technical scope disclosed by the present invention. Alternatives are intended to be covered by the scope of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN200510106247.2 | 2005-09-19 | ||
| CNB2005101062472A CN100438629C (en) | 2005-09-19 | 2005-09-19 | Loop Filtering Method in Image Coding Processing |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2007033551A1 true WO2007033551A1 (en) | 2007-03-29 |
Family
ID=37425928
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2006/001619 Ceased WO2007033551A1 (en) | 2005-09-19 | 2006-07-10 | A loop filtering method for use in image encoding process |
Country Status (3)
| Country | Link |
|---|---|
| CN (1) | CN100438629C (en) |
| RU (1) | RU2370816C1 (en) |
| WO (1) | WO2007033551A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9185430B2 (en) | 2010-03-15 | 2015-11-10 | Mediatek Singapore Pte. Ltd. | Deblocking filtering method and deblocking filter |
| CN107197256A (en) * | 2011-11-07 | 2017-09-22 | 佳能株式会社 | Method and apparatus for encoding and decoding a sequence of images |
Families Citing this family (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101321276B (en) * | 2007-06-10 | 2012-06-20 | 华为技术有限公司 | Method and apparatus for removing block effect |
| CN101119494B (en) * | 2007-09-10 | 2010-12-22 | 威盛电子股份有限公司 | Method for determining boundary strength of block type digital coding image |
| CN101389016B (en) * | 2007-09-13 | 2010-10-20 | 华为技术有限公司 | Method and device for obtaining block boundary strength and removing block effect |
| CN101207812B (en) * | 2007-12-10 | 2010-04-07 | 海信集团有限公司 | A video loop filtering method |
| CN101389019B (en) * | 2008-04-16 | 2012-02-08 | 惠州华阳通用电子有限公司 | Video processing method |
| CN101742292B (en) * | 2008-11-14 | 2013-03-27 | 北京中星微电子有限公司 | Image content information-based loop filtering method and filter |
| RU2653461C2 (en) * | 2014-01-21 | 2018-05-08 | Общество с ограниченной ответственностью "Аби Девелопмент" | Glare detection in the image data frame |
| CN101494787B (en) * | 2009-02-10 | 2011-02-09 | 重庆大学 | A Deblocking Method Based on Blocking Detection |
| CN102098501B (en) * | 2009-12-09 | 2013-05-08 | 中兴通讯股份有限公司 | Method and device for removing block effects of video image |
| WO2011096869A1 (en) * | 2010-02-05 | 2011-08-11 | Telefonaktiebolaget L M Ericsson (Publ) | De-blocking filtering control |
| US8724899B2 (en) | 2010-02-11 | 2014-05-13 | Thomson Licensing | Method of processing an image and corresponding device |
| EP2679006B1 (en) | 2011-02-25 | 2017-10-11 | Sun Patent Trust | Efficient decisions for deblocking |
| KR101567467B1 (en) * | 2011-05-10 | 2015-11-09 | 미디어텍 인크. | Method and apparatus for reduction of in-loop filter buffer |
| CN103139577B (en) | 2011-11-23 | 2015-09-30 | 华为技术有限公司 | The method and apparatus of a kind of depth image filtering method, acquisition depth image filtering threshold |
| JP2014197723A (en) * | 2012-01-06 | 2014-10-16 | ソニー株式会社 | Image forming apparatus and method |
| US9451258B2 (en) * | 2012-04-03 | 2016-09-20 | Qualcomm Incorporated | Chroma slice-level QP offset and deblocking |
| JP6168452B2 (en) | 2012-05-25 | 2017-07-26 | サン パテント トラスト | Moving picture encoding method, moving picture decoding method, moving picture encoding apparatus, moving picture decoding apparatus, and moving picture encoding / decoding apparatus |
| WO2013175756A1 (en) * | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | Image encoding method, image decoding method, image encoding device, image decoding device, and image encoding/decoding device |
| WO2013175736A1 (en) | 2012-05-25 | 2013-11-28 | パナソニック株式会社 | Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device |
| EP2858356A4 (en) | 2012-05-25 | 2015-08-26 | Panasonic Ip Corp America | IMAGE ENCODING METHOD, IMAGE ENCODING DEVICE, IMAGE DECODING METHOD, IMAGE DECODING DEVICE, AND IMAGE ENCODING / DECODING DEVICE |
| ES2923648T3 (en) | 2012-06-04 | 2022-09-29 | Sun Patent Trust | Video image encoding procedure, video image decoding procedure |
| WO2016015198A1 (en) * | 2014-07-28 | 2016-02-04 | 北京大学深圳研究生院 | Video coding/decoding method and apparatus |
| CN104113765A (en) * | 2014-07-28 | 2014-10-22 | 北京大学深圳研究生院 | Video coding and decoding method and device |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1189652A (en) * | 1997-01-29 | 1998-08-05 | 三星电子株式会社 | Loop filter and loop filtering method |
| CN1535019A (en) * | 2004-01-14 | 2004-10-06 | 华中科技大学 | A loop filtering method and loop filter |
| CN1668106A (en) * | 2004-03-09 | 2005-09-14 | 扬智科技股份有限公司 | Method and device for removing block effect of image frame by loop filtering |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100243225B1 (en) * | 1997-07-16 | 2000-02-01 | 윤종용 | Signal adaptive filtering method for reducting blocking effect and ringing noise and filter thereof |
| RU2150146C1 (en) * | 1998-09-03 | 2000-05-27 | Семенченко Михаил Григорьевич | Method for image processing |
| KR100366643B1 (en) * | 1998-11-25 | 2003-02-19 | 삼성전자 주식회사 | Method and apparatus for de-blocking |
| JP2002027471A (en) * | 2000-07-07 | 2002-01-25 | Matsushita Electric Ind Co Ltd | Adaptive block-like noise removal method for still image / moving image using text / edge detection technology |
| US20050105889A1 (en) * | 2002-03-22 | 2005-05-19 | Conklin Gregory J. | Video picture compression artifacts reduction via filtering and dithering |
| CN1233171C (en) * | 2004-01-16 | 2005-12-21 | 北京工业大学 | A simplified loop filtering method for video coding |
-
2005
- 2005-09-19 CN CNB2005101062472A patent/CN100438629C/en not_active Expired - Lifetime
-
2006
- 2006-07-10 WO PCT/CN2006/001619 patent/WO2007033551A1/en not_active Ceased
- 2006-07-10 RU RU2008114610/09A patent/RU2370816C1/en active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1189652A (en) * | 1997-01-29 | 1998-08-05 | 三星电子株式会社 | Loop filter and loop filtering method |
| CN1535019A (en) * | 2004-01-14 | 2004-10-06 | 华中科技大学 | A loop filtering method and loop filter |
| CN1668106A (en) * | 2004-03-09 | 2005-09-14 | 扬智科技股份有限公司 | Method and device for removing block effect of image frame by loop filtering |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9185430B2 (en) | 2010-03-15 | 2015-11-10 | Mediatek Singapore Pte. Ltd. | Deblocking filtering method and deblocking filter |
| CN107197256A (en) * | 2011-11-07 | 2017-09-22 | 佳能株式会社 | Method and apparatus for encoding and decoding a sequence of images |
| US10462493B2 (en) | 2011-11-07 | 2019-10-29 | Canon Kabushiki Kaisha | Method and device for optimizing encoding/decoding of compensation offsets for a set of reconstructed samples of an image |
| US10575020B2 (en) | 2011-11-07 | 2020-02-25 | Canon Kabushiki Kaisha | Method and device for providing compensation offsets for a set of reconstructed samples of an image |
| US10743033B2 (en) | 2011-11-07 | 2020-08-11 | Canon Kabushiki Kaisha | Method and device for optimizing encoding/decoding of compensation offsets for a set of reconstructed samples of an image |
| US10771819B2 (en) | 2011-11-07 | 2020-09-08 | Canon Kabushiki Kaisha | Sample adaptive offset filtering |
| US11076173B2 (en) | 2011-11-07 | 2021-07-27 | Canon Kabushiki Kaisha | Method and device for providing compensation offsets for a set of reconstructed samples of an image |
| CN107197256B (en) * | 2011-11-07 | 2021-09-21 | 佳能株式会社 | Method and apparatus for encoding and decoding a sequence of images |
Also Published As
| Publication number | Publication date |
|---|---|
| CN1867075A (en) | 2006-11-22 |
| CN100438629C (en) | 2008-11-26 |
| RU2370816C1 (en) | 2009-10-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2007033551A1 (en) | A loop filtering method for use in image encoding process | |
| CN101389016B (en) | Method and device for obtaining block boundary strength and removing block effect | |
| KR101000926B1 (en) | Filters and Filtering Methods to Eliminate Image Discontinuities | |
| CN100373950C (en) | Adaptive de-blocking filtering device and method for MPEG video decoder | |
| TWI418218B (en) | Method,apprartus,electrnoic device,computer-readable medium,and processor for deblocking and edge enhancement of block based digital video | |
| US8577168B2 (en) | System and method for in-loop deblocking in scalable video coding | |
| CN111630857B (en) | Video encoding and decoding method/device and corresponding non-volatile computer readable medium | |
| EP1555832A2 (en) | Adaptive loop filtering for reducing blocking artifacts | |
| WO2010078759A1 (en) | Method for image temporal and spatial resolution processing based on code rate control | |
| JP2006513633A (en) | Decoder apparatus and method for smoothing artifacts generated during error concealment | |
| CN101267560A (en) | Deblocking filtering method and device | |
| CN1285214C (en) | Loop filtering method and loop filter | |
| CN103647975B (en) | Improved sample adaptive offset filtering method based on histogram analysis | |
| WO2002078350A1 (en) | A method for pre-deleting noise of image | |
| CN101321276B (en) | Method and apparatus for removing block effect | |
| JP2008503177A (en) | Method for color difference deblocking | |
| CN109889829B (en) | Fast sample adaptive compensation for 360 degree video | |
| Wang et al. | Adaptive Wavelet Domain Filter for Versatile Video Coding (VVC). | |
| Prasantha et al. | Performance evaluation of H. 264 decoder on different processors | |
| KR100711025B1 (en) | Residual Signal Filtering Method for Improving Video Standard Coding | |
| CN105681784B (en) | A kind of PSNR blind estimating methods based on H264/AVC videos | |
| Yadav et al. | Optimization of the deblocking filter in H. 264 codec for real time implementation | |
| Kim et al. | Efficient block mode decision and prediction mode selection for intra prediction in H. 264/AVC high profile | |
| CN103402101A (en) | AVS loop filtering quick algorithm based on boundary smoothness | |
| Lim et al. | A loop filter with segmentation mode in video coding |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2008114610 Country of ref document: RU |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 06761382 Country of ref document: EP Kind code of ref document: A1 |