Video data processing method and device

By disabling the first color component deblocking filtering at the edge of the BDPCM or RDPCM encoding block in the video encoding and decoding system and activating the second color component deblocking filtering, the problem of low processing efficiency of the encoding block edge is solved, and higher encoding efficiency and lower block artifacts are achieved.

CN113906752BActive Publication Date: 2025-05-06HFI INNOVATION INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080035948.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-10-15
Filing Date
2020-05-28
Publication Date
2025-05-06
Estimated Expiration
2040-05-28

AI Technical Summary

Technical Problem

In video encoding and decoding systems, it is difficult for the prior art to effectively handle the edge between two BDPCM or RDPCM encoding blocks, resulting in block artifacts and coding inefficiencies.

Method used

By disabling deblocking of the first color component on the edge between the current block and the adjacent block, and activating deblocking of the second color component, a deblocking filtering operation is performed to mitigate block artifacts on the block boundary.

Benefits of technology

Effectively reduce block artifacts on block boundaries, and improve the encoding efficiency of video encoding and decoding systems, especially in BDPCM and RDPCM modes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113906752B_ABST
    Figure CN113906752B_ABST
Patent Text Reader

Abstract

A video processing method and apparatus for encoding a current block and an adjacent block includes: receiving input data of a current block and an adjacent block in a current picture, determining that the current block and the adjacent block are encoded in a BDPCM or RDPCM mode, performing a deblocking filtering operation by deactivating a deblocking filter for a first color component and activating a deblocking filter for a second color component, and encoding or decoding the current block and the adjacent block. Each current pixel in a BDPCM coded block is predicted by one or more adjacent pixels of the current pixel. RDPCM is applied to process a quantized residual of an RDPCM coded block according to a prediction direction of the RDPCM coded block.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references

[0002] The present invention claims priority to U.S. Provisional Patent Application No. 62 / 854,382, filed on May 30, 2019, entitled “Deblocking Filter Decisions for Block DPCM and Quantized Residual BDPCM” and U.S. Provisional Patent Application No. 62 / 915,053, filed on October 15, 2019, entitled “Deblocking Filter Decisions for Block DPCM and Transform skip Mode”. The contents of the above U.S. Provisional Patent Applications are incorporated into this specification by reference. Technical Field

[0003] The present invention relates to a video processing method and apparatus in a video encoding and decoding system, and in particular to a deblocking filter decision for an edge between two Block Differential Pulse Code Modulation (BDPCM) coding blocks or between two Residual Differential Pulse Code Modulation (RDPCM) coding blocks. Background Art

[0004] The High Efficiency Video Coding (HEVC) standard is the latest video coding standard developed by the Video Coding Experts Group of the Joint Collaboration Team on Video Coding (JCT-VC) of the ITU-T study group. The HEVC standard improves the video compression performance of the ongoing standard H.264 / AVC to meet the demand for higher picture resolution, higher frame rate and better video quality. The HEVC standard relies on a block-based coding structure that divides each video slice into multiple square coding tree units (CTUs), where CTU is the basic unit of video compression in HEVC. Raster scan order is used to encode or decode CTUs in each slice. Each CTU can contain a coding unit (CU) or it can be recursively divided into four smaller CUs according to a quadtree partitioning structure until a predefined minimum CU size is reached. The prediction decision is made at the CU level, where each CU is encoded using either inter-picture prediction or intra-picture prediction. Once the partitioning of the CU hierarchical tree is completed, each CU is further divided into one or more prediction units (PUs) according to the PU partitioning type used for prediction. Since the same prediction process is applied to all pixels in a PU, the PU serves as a basic representative block for sharing prediction information. The prediction information is transmitted to the decoder on a PU basis. Motion estimation can identify one (uniprediction) or two (bi-prediction) best reference blocks for a CU coded using inter-image prediction in one or two reference pictures, while motion compensation in inter-image prediction can locate the one or two best reference blocks based on one or two motion vectors (MVs). A CU coded using intra-image prediction is predicted by reference samples in the same picture. The prediction error of a CU is the difference between the CU and the predictor, and the prediction error is divided into one or more transform units (TUs) for transformation and quantization.

[0005] Block Differential Pulse Code Modulation (BDPCM) In the upcoming emerging video coding standards, block differential pulse code modulation (Block-DPCM or BDPCM) has been developed to predict pixels in the luma component of intra CUs with each size less than or equal to 32 samples. For each intra CU with a width or height less than or equal to 32 luma samples, the BDPCM flag bdpcm_flag is sent at the CU level. The BDPCM flag for the intra CU indicates whether conventional intra coding or Block-DPCM is applied to the intra CU, and the BDPCM flag is encoded using a single CABAC context. When BDPCM is selected to encode or decode the current block, each sample in the current block is predicted from the neighboring samples in the vertical and horizontal directions using the median edge detector of LOCO-1. ​​For the current pixel X in the current block with pixel A as the left neighbor, pixel B as the top neighbor, and C as the top left neighbor, the predictor of the current pixel P(X) can be obtained by the following formula:

[0006] P(X)=min(A,B)ifC≥max(A,B);

[0007] max(A,B)ifC≤min(A,B);

[0008] A+BC otherwise.

[0009] When the top and upper left adjacent are selected, the unfiltered reference pixels are used to predict the top row of the current block, and when the left and upper left adjacent are selected, the unfiltered reference pixels are used to predict the left column of the current block. When the left adjacent is selected, the reconstructed pixels are used to predict the first row except the first pixel, and when the top adjacent is selected, the reconstructed pixels are used to predict the left row except the first pixel. The reconstructed pixels are also used to predict the remaining rows and columns of the current block. The pixels are processed in raster scan order within the current block. The difference between the predictor of the current block and the original data of the current block is called the prediction error, also known as the residual of the current block, and after rescaling, the prediction error of the current block is quantized in the spatial domain in the same way as the quantization in the transform skip mode (Transform SkipMode, abbreviated as TSM). Each pixel is then reconstructed by adding the quantized prediction error to the predictor. The reconstructed pixels are used to predict subsequent pixels in raster scan order. The amplitude and sign of the quantized prediction error are encoded separately. First, cbf_bdpcm_flag is encoded. If this flag is equal to zero, all amplitudes of the current block are decoded to zero. If this flag is equal to 1, all amplitudes of the current block are encoded separately in raster scan order. In order to keep the complexity of BDPCM low, the amplitude values ​​are limited to a maximum of 31 (including 31). The amplitude is encoded using unary binarization, with three contexts for the first bit bin, and then one context for each additional bit bin until the twelfth bit bin, and all remaining bit bins have one context. For each non-zero residual, the sign is encoded in bypass mode.

[0010] In order to maintain the consistency of the conventional intra prediction modes, the first mode in the Most Probable Mode (MPM) list is associated with the BDPCM prediction CU (not sent) and can be used for MPM generation of subsequent blocks.

[0011] On the boundary between two BDPCM blocks, deblocking filtering for both luma and chroma components is disabled, since neither BDPCM block is processed by the transform stage, which is usually responsible for blocking artifacts.

[0012] Residual Differential Pulse Code Modulation (RDPCM)Another scheme of BDPCM is quantized residual domain BDPCM (RDPCM (Quantized residual domain BDPCM), further renamed as BDPCM in VVC). The signaling direction of BDPCM indicates whether vertical or horizontal prediction is adopted. The reference pixels used in BDPCM are the unfiltered samples and the reconstructed samples, and the prediction error is quantized in the spatial domain. The reference pixels are used to predict the rows or columns of the BDPCM coded block row by row. The pixels are reconstructed by adding the dequantized prediction error to the predictor. The signaling and prediction direction used in RDPCM are the same as the BDPCM scheme. In RDPCM, the entire block is predicted by replicating samples in the horizontal or vertical prediction direction similar to intra-frame prediction. The residual is quantized and the difference between the quantized residual and the predictor (horizontal or vertical) is encoded. For a block of size M rows and N columns, let r i,j ,0≤i≤M-1,0≤j≤N-1 is the prediction residual after intra prediction in the horizontal or vertical direction using the unfiltered samples of the upper or left block boundary. If RDPCM is performed in the horizontal direction, the left neighbor pixel values ​​of the current block are copied to each column in the predictor of the current block; if RDPCM is performed in the vertical direction, the top neighbor row is copied to each row in the predictor of the current block.

[0013] Let Q(r i,j ), 0≤i≤M-1,0≤j≤N-1 represents the residual r i,j The residual is the difference between the original block and the predicted block value. RDPCM is then applied to the quantized residual samples to generate a quantized residual sample with elements An M×N array When sending vertically:

[0014]

[0015] For horizontal prediction, similar rules apply and the residual quantized sample is obtained as follows:

[0016]

[0017] Residual quantization samples is sent to the decoder. At the decoder side, the above calculation is inverted to generate the quantized residual Q(r i,j ),0≤i≤M-1,0≤j≤N-1. For vertical prediction,

[0018]

[0019] For the horizontal prediction case,

[0020]

[0021] Inverse quantization residual Q -1 (Q(r i,j )) is added to the predictor to generate the reconstructed sample values.

[0022] The main advantage of the RDPCM scheme is that the inverse RDPCM can be performed on the fly during coefficient resolution by simply adding the predictor to the resolved coefficients, or it can be performed after coefficient resolution. The splitting of 4xN and Nx4 blocks into 2 parallel processed blocks can be avoided.

[0023] Deblocking Filter Deblocking filter tools were developed to mitigate blocky artifacts along the boundaries of blocks in block-based video coding systems. The deblocking filter tool is a loop filter applied to decoded pictures, because the filtered pictures are stored back in the decoded picture buffer and used to predict other pictures in the video picture sequence. The deblocking filter operation is a combination of deblocking filter decisions and filtering processes. The deblocking filter decision determines whether to apply deblocking filtering and the intensity of the filter. The filtering process modifies the values ​​of pixels at the block boundaries selected by the deblocking filter decision. The deblocking filter operation is independent between the luminance and chrominance components, so all three components can be processed independently. Deblocking filter decisions include on / off decisions, normal / strong filter decisions, and the number of pixels modified by deblocking filtering in regular filter mode. Since some coding conditions are more likely to produce obvious block artifacts, deblocking filter decisions are made based on bitstream information such as prediction mode and motion vectors. The boundary strength (Boundary strength, abbreviated as bS) value is defined according to the deblocking filter decision, and the filtering process is only applied to block boundaries where bS is greater than zero. When all three conditions are true, a strong deblocking filter implemented by a bilinear filter is applied to the luma boundary samples. Condition 1 is the "large block condition", which detects whether the luma samples on the p-side or q-side of the boundary are located in a larger block. Wherein, a larger block is defined as: for vertical edges, when the width of the side block is greater than or equal to 32 luma samples; for horizontal edges, when the height of the side block is greater than or equal to 32 luma samples. Conditions 2 and 3 are determined by the following formula, where β is a threshold that depends on the Quantization Parameter and has a piecewise linear correlation, and tC is also a clipping offset that depends on the QP.

[0024] Condition2=(d<β)? TRUE:FALSE

[0025] Condition3=StrongFilterCondition=(dpqis less than(β>>2),sp3+sq3 less than(3*β>>5),and Abs(p0-q0) less than(5*tC+1)>>1)? TRUE:FALSE

[0026] In the case where strong deblocking filtering is selected for block boundaries, the block boundary samples on the p-side pi for i=0 to Sp-1 and the block boundary samples on the q-side qj for j=0 to Sq-1 are replaced by linear interpolation as follows:

[0027] p i ′=(f i *Middle s,t +(64-f i )*P s +32)>>6), limit p i ±tcPD i

[0028] q j ′=(g j *Middle s,t +(64-g j )*Q s +32)>>6), limit q j ±tcPD j

[0029] where tcPD i and tcPD j is the position-dependent clipping variable, the strong deblocking parameter g j ,f i ,Middle s,t ,P s and Q s It is derived from the formula as shown in Table 1.

[0030] Table 1 – Derivation of strong deblocking parameters for the luminance component

[0031]

[0032]

[0033]

[0034] The strong deblocking filter for chroma components also modifies three samples from block boundaries and implements strong low-pass filtering. The strong deblocking filter for chroma components is defined as:

[0035] p2'=(3*p3+2*p2+p1+p0+q0+4)>>3

[0036] p1'=(2*p3+p2+2*p1+p0+q0+q1+4)>>3

[0037] p0'=(p3+p2+p1+2*p0+q0+q1+q2+4)>>3

[0038] Chroma deblocking filtering is applied to the 4x4 chroma sample grid and is selected when both sides of the chroma edge are greater than or equal to eight chroma samples and the following three decisions are met. The first decision is associated with the boundary intensity decision and the large block decision. The second and third decisions are the same as the luma decision, which are the on / off decision and the strong filter decision, respectively. In the first decision, the bS determination is modified to perform chroma deblocking filtering, as shown in Table 2. The conditions in Table 2 are checked sequentially, and if a condition is met, the remaining conditions with lower priority are skipped.

[0039] Table 2 – Modified boundary strength determination

[0040]

[0041] If the bS of the current boundary is equal to 2, or if the bS of the current boundary is equal to 1 and it is detected that both sides of the current boundary are located in a larger block, chroma deblocking filtering is performed. The second and third decisions are basically the same as the HEVC luminance strong filter decision.

[0042] Deblocking Filtering for Subblock Boundaries In the upcoming emerging video coding standards, deblocking filtering operations can be applied to CU boundaries aligned with the 8x8 grid as well as subblock boundaries. Subblock boundaries include prediction unit (PU) boundaries introduced by spatial temporal motion vector prediction (STMVP) and affine mode, and transform unit (TU) boundary modes introduced by sub-block transform (SBT) and intra-sub-partition (ISP). For SBT and ISP sub-blocks on the 8x8 grid, the same method as TU in conventional deblocking filtering is adopted. When there are non-zero transform coefficients in any sub-block across the edge, deblocking filtering is applied to TU boundaries on the 8x8 grid. For sub-block temporal motion vector prediction (SbTMVP) and affine sub-blocks on the 8x8 grid, the same method as PU in conventional deblocking filtering is adopted. For PU boundaries, deblocking filtering is applied to an 8×8 grid taking into account the difference between the motion vectors and the reference pictures of neighboring sub-blocks. Summary of the invention

[0043] In an exemplary embodiment of a video processing method, a video encoding or decoding system receives input video data associated with a current block and an adjacent block in a current picture, determines whether the current block and the adjacent block are both encoded in a BDPCM mode or both are encoded in an RDPCM mode, and if the current block and the adjacent block are both encoded in a BDPCM or RDPCM mode, performs a deblocking filtering operation on an edge between the current block and the adjacent block by deactivating a deblocking filter for a first color component on the edge and activating a deblocking filter for a second color component on the edge, and encodes or decodes the current block and the adjacent block in the current picture. The adjacent block is spatially adjacent to the current block. A deblocking filtering operation is performed on an edge between the current block and the adjacent block based on the determination result. Each current pixel in a BDPCM encoding block in the current picture is predicted by one or more adjacent pixels of the current pixel in the current picture. In some embodiments, the one or more adjacent pixels used to predict the current pixel in the BDPCM encoding block include one or a combination of a left adjacent pixel of the current pixel, a top adjacent pixel of the current pixel, and an upper left adjacent pixel of the current pixel. When the neighboring pixel is outside the BDPCM coding block, the neighboring pixel used to predict the current pixel in the BDPCM coding block is an unfiltered reference pixel, or when the neighboring pixel is within the BDPCM coding block, the neighboring pixel used to predict the current pixel in the BDPCM coding block is a reconstructed pixel. For the RDPCM coding block, RDPCM is applied to the quantized residual of the RDPCM coding block according to the prediction direction of the RDPCM coding block to modify the quantized residual.

[0044] In an embodiment where only the BDPCM or RDPCM mode is applied to the luma component of the video data, the first color component is a luma component and the second color component is one or more chroma components. In an embodiment where only the BDPCM or RDPCM mode is applied to one or more chroma components of the video data, the first color component is one or more chroma components and the second color component is a luma component.

[0045] In an embodiment of the present invention, the boundary strength value of the deblocking filter of the first color component on the edge between the current block and the adjacent block is set to zero, and the boundary strength value of the deblocking filter of the second color component on the edge is set to 2. That is, according to this embodiment, the deblocking filter can be used to filter the second color component on the edge between the current block and the adjacent block.

[0046] Some embodiments of a video encoding system determine a predictor for each current pixel in a current block encoded in a BDPCM mode from one or more neighboring pixels of the current pixel, determine a residual for each current pixel based on the predictor for each current pixel, quantize the residual for each current pixel in a spatial domain, dequantize the quantized residual for each current pixel, and reconstruct each current pixel by adding the dequantized residual to the predictor for each current pixel. Each reconstructed current pixel of the current block can be used to predict subsequent pixels in the current block according to a raster scan order. Some embodiments of a video decoding system determine a predictor for each current pixel in a current block encoded in a BDPCM mode from one or more neighboring pixels of the current pixel, decode and dequantize the quantized residual for each current pixel, and reconstruct each current pixel by adding the dequantized residual to the predictor for each current pixel. Each reconstructed current pixel of the current block can be used to predict subsequent pixels in the current block according to a raster scan order.

[0047] Some embodiments of the video encoding system determine a predictor for each current pixel in a current block encoded in an RDPCM mode, determine a residual for each current pixel based on the predictor for each current pixel, quantize the residual for each current pixel in a spatial domain, apply RDPCM to the quantized residuals of the current block, dequantize the processed quantized residuals, and then reconstruct each current pixel by adding the corresponding dequantized residuals and the predictor for the current pixel. Some embodiments of the video decoding system also determine a predictor for each current pixel in a current block encoded in an RDPCM mode, decode the quantized residuals of the current block, apply RDPCM to process the quantized residuals, dequantize the processed quantized residuals, and reconstruct each current pixel by adding the corresponding dequantized residuals and the predictor for each current pixel.

[0048] In some embodiments where RDPCM is applied, a video encoding or decoding system determines a prediction direction of a current block and a prediction direction of a neighboring block, and if the two prediction directions are different, a deblocking filtering operation is performed on an edge between the current block and the neighboring block by activating deblocking filtering for the first and second color components. If the two prediction directions are the same, a deblocking filtering operation is performed on an edge between the current block and the neighboring block by deactivating deblocking filtering for the first color component and activating deblocking filtering for the second color component. According to an embodiment, the prediction direction of the current block and the prediction direction of the neighboring block are explicitly signaled in the video bitstream or parsed from the video bitstream.

[0049] An embodiment of a video encoding system explicitly signals the BDPCM prediction mode flags of the current block and the adjacent blocks, and the video decoding system parses the BDPCM prediction mode flags of the current block and the adjacent blocks. The current block and the adjacent blocks may be CU, PU or TU. In one embodiment in which the current block is encoded in BDPCM mode, the video processing method further comprises: receiving input data associated with a second adjacent block adjacent to the current block, and performing a deblocking filtering operation on the edge between the current block and the second adjacent block. The deblocking filtering operation performed on the edge between the current adjacent block and the second adjacent block comprises: if the second adjacent block is encoded in a mode other than the BDPCM mode, activating deblocking filtering for the first and second color components. For example, if the second adjacent block is not encoded in the BDPCM mode, the boundary strength values ​​of the first and second color components are both set to 2 to perform deblocking filtering on the edge between the current block and the second adjacent block.

[0050] Aspects of the present disclosure also provide an apparatus for performing video processing in a video encoding system. The apparatus includes one or more electronic circuits configured to receive input data of a current block and a neighboring block in a current picture, determine whether the current block and the neighboring block are both encoded in BDPCM or RDPCM mode, and when the current block and the neighboring block are both encoded in BDPCM or RDPCM mode, perform a deblocking filtering operation on an edge between the current block and the neighboring block by deactivating a deblocking filter for a first color component and activating a deblocking filter for a second color component, and encode or decode the current block and the neighboring block in the current picture. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] Various embodiments of the present disclosure, presented as examples, will be described in detail with reference to the following drawings, in which:

[0052] Figure 1 Determining a boundary strength value for deblocking filtering of a luma component Y on an edge between a p-side and a q-side according to an embodiment of the present invention is shown.

[0053] Figure 2 Determining a boundary strength value for deblocking filtering of chroma components Cb and Cr on an edge between a p-side and a q-side according to an embodiment of the present invention is shown.

[0054] Figure 3 A flowchart of an exemplary video processing method according to an embodiment of the present invention is shown.

[0055] Figure 4 An exemplary system block diagram of a video encoding system combined with a video processing method according to an embodiment of the present invention is shown.

[0056] Figure 5An exemplary system block diagram of a video decoding system combined with a video processing method according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0057] It will be readily understood that the components of the present invention, as generally described and illustrated in the drawings herein, may be arranged and designed in a variety of different configurations. Therefore, the following more detailed description of embodiments of the systems and methods of the present invention, as illustrated in the drawings, is not intended to limit the scope of the claimed invention, but is merely representative of selected embodiments of the present invention.

[0058] Deblocking filter decision for the edge between two BDPCM or RDPCM blocks In some exemplary embodiments of the present invention, the BDPCM or RDPCM mode is applied only to the luminance component of the video data. For the current block encoded in the BDPCM mode, the luminance deblocking filter is deactivated on the edge between two BDPCM blocks (i.e., the current block and another BDPCM-encoded block adjacent to the current block). For the current block encoded in the RDPCM mode, the luminance deblocking filter is deactivated on the edge between two RDPCM blocks (i.e., the current block and another RDPCM-encoded block adjacent to the current block). In this specification, the terms BDPCM block or RDPCM block and the terms BDPCM encoding block or RDPCM encoding block are used interchangeably to indicate that at least one color component of the block is processed by the BDPCM or RDPCM mode. Each current pixel in the BDPCM encoding block is predicted by one or more neighboring pixels of the current pixel in the current picture. For example, the neighboring pixels used to predict the current pixel in the BDPCM encoding block include one or a combination of the left neighboring pixel of the current pixel, the top neighboring pixel of the current pixel, and the upper left neighboring pixel of the current pixel. If the neighboring pixel is outside the BDPCM coding block, the neighboring pixel used to predict the current pixel in the BDPCM coding block is an unfiltered reference pixel, and if the neighboring pixel is within the BDPCM coding block, the neighboring pixel used to predict the current pixel in the BDPCM coding block is a reconstructed pixel. RDPCM is applied to the quantized residual of the RDPCM coding block according to the prediction direction, for example, the prediction direction is selected from the horizontal direction and the vertical prediction. In one embodiment, for each RDPCM coding block, the prediction direction is explicitly signaled or parsed in the video bitstream. According to one embodiment, the luminance deblocking filter is disabled on the edge between two BDPCM blocks, or according to another embodiment, the luminance deblocking filter is disabled on the edge between two RDPCM blocks. Disabling luminance deblocking filtering or chrominance deblocking filtering is also referred to as disabling deblocking filtering for the first color component, where the first color component is a luminance component or one or more chrominance components. Disabling luminance deblocking filtering means disabling the deblocking filtering operation on the luminance edge between two luminance blocks, while enabling luminance deblocking filtering means enabling the deblocking filtering operation on the luminance edge between two luminance blocks. In some embodiments, luma deblocking filtering can be disabled by setting the boundary strength value (bS) of the luma component to zero. Similarly, disabling chroma deblocking filtering means disabling the deblocking filtering operation on one or two chroma edges between two or four chroma blocks, and activating chroma deblocking filtering means activating the deblocking filtering operation on one or two chroma edges between two or four chroma blocks. In some embodiments, chroma deblocking filtering can be disabled by setting the boundary strength value (bS) of the chroma component to zero.In an embodiment where the BDPCM or RDPCM mode is applied to the luma component of the current block, the current block is considered an intra block in the deblocking filtering decision for the chroma components. In other words, if the BDPCM / RDPCM mode is applied only to the first color component of the current block, deblocking filtering for the second color component on the edge between the current block and another BDPCM / RDPCM encoded block is activated. When the first component is a luma component, the second color component is one or more chroma components, or when the first color component is one or more chroma components, the second color component is a luma component. In an embodiment where the BDPCM or RDPCM mode is applied only to the luma component, the deblocking filtering decision for the chroma components treats each BDPCM / RDPCM block as an intra-prediction block, and therefore, the deblocking filtering operation can be applied to the edge between two intra-prediction blocks. In one embodiment where the BDPCM or RDPCM mode is applied only to the luma component of the video data, for the edge between two BDPCM / RDPCM blocks, the boundary strength value (bS) of the luma component is set to zero, while the boundary strength value (bS) of the chroma components (including Cb and Cr components) is set to 2. In this embodiment, if further deblocking filtering criteria are met, the deblocking filtering operation is used to filter the chroma components on the edge between the two BDPCM / RDPCM blocks. More generally, when the BDPCM or RDPCM mode is applied to the first color component, the boundary strength value of the deblocking filter for the first color component on the edge between the two BDPCM / RDPCM blocks is set to zero, while the boundary strength value of the deblocking filter for the second color component on the edge between the two BDPCM / RDPCM blocks is set to 2. The current block may be a coding unit (CU), a prediction unit (PU), or a transform unit (TU).

[0059] In some other embodiments, only the BDPCM or RDPCM mode is applied to the chroma component of the video data, the chroma deblocking filter is disabled on the edge between two BDPCM encoding blocks or two RDPCM encoding blocks, but the luminance deblocking filter is activated on the edge between two BDPCM encoding blocks or two RDPCM encoding blocks. In the embodiment in which only the BDPCM mode is applied to the chroma component, when the chroma component of the current block is processed by the BDPCM mode, the deblocking filter for the chroma component is disabled on the edge between the current block and another BDPCM encoding block adjacent to the current block, and the deblocking filter for the luminance component is activated on the edge between the current block and another BDPCM encoding block. In the embodiment in which only the RDPCM mode is applied to the chroma component, the deblocking filter on the edge between two RDPCM blocks is performed by activating the deblocking filter for the chroma component on the edge and deactivating the deblocking filter for the chroma component on the edge.

[0060] In the following embodiments, the BDPCM or RDPCM mode may be applied to one or both of the luminance and chrominance components, in one embodiment, luminance deblocking filtering and chrominance deblocking filtering are disabled on the edge between two BDPCM or RDPCM coding blocks, and in another embodiment, luminance deblocking filtering and chrominance deblocking filtering are activated on the edge between two BDPCM or RDPCM coding blocks. For example, according to one embodiment, for the edge between two BDPCM blocks or two RDPCM blocks, the boundary strength value of the deblocking filter for the luminance and chrominance components is set to zero, and the boundary strength value of the deblocking filter for the luminance and chrominance components is 0. According to another embodiment, for the edge between two BDPCM blocks or two RDPCM blocks, the boundary strength value of the deblocking filter for the luminance and chrominance components is set to 2.

[0061] In some embodiments of the present invention, the video encoding system explicitly signals the BDPCM prediction mode flag of the current block to indicate that the current block is encoded in the BDPCM mode, and the video decoding system parses the BDPCM prediction mode flag of the current block. In one embodiment, the BDPCM mode can be used for intra-coded blocks, and a BDPCM prediction mode flag is signaled for each intra-coded block to indicate whether the intra-coded block is encoded in the normal intra-prediction mode or in the BDPCM mode.

[0062] exist Figure 1 and Figure 2 Some examples of deriving boundary strength values ​​for deblocking filtering of marked edges for implementing embodiments of the present invention are shown in FIG. Figure 1 A method for deriving a deblocking filtered boundary strength value of a luminance component Y according to an embodiment of the present invention is shown. Figure 1In step S102, if the BDPCM mode is not applied to the luma component, each block encoded in the chroma BDPCM mode is regarded as a block encoded in the intra mode to determine the boundary strength value of the luma component. In step S102, the video encoding or decoding system checks whether both the p-side and the q-side of the current edge are encoded in the luma BDPCM mode, and if both the p-side and the q-side of the current edge are encoded in the luma BDPCM mode, the boundary strength value of the deblocking filter for the luma component is set to zero (bS_Y=0) for the current edge. In the case where the check result of step S102 is false, the encoding or decoding system checks whether any one of the p-side or the q-side of the current edge is encoded in the intra mode or the Combined Inter and Intra Prediction (CIIP) mode, or whether one of the p-side and the q-side is encoded in the luma BDPCM mode in step S104. In step S106, if the check result of step S104 is true, for the current edge, the boundary strength value of the deblocking filter for the luma component is set to two (bS_Y=2), otherwise, the video encoding or decoding system checks whether the current edge is a marked transform block (TransformBlock) edge, and for each color component, the block (TB) coding block flag (CBF) on the p side or the q side is not zero. If the check result of step S106 is true, for the current edge, the boundary strength value of the deblocking filter for the luma component is set to one (bS_Y=1). In step S108, if the check result of step S106 is false, the video encoding or decoding system further checks whether the current edge is a marked prediction block (PB) edge, and the reference pictures of the p-side and the q-side are different, or whether the current edge is a marked PB edge, and the absolute difference between mvx or mvy on the p-side and the q-side in units of 1 / 16 luma samples is less than or equal to 8, where mvx represents the horizontal dimension of the motion vector and mvy represents the vertical dimension of the motion vector. If the check result of step S108 is true, the boundary strength value of the deblocking filter for the luma component of the current edge is set to one (bS_Y=1), and if the check result of step S108 is "no", the boundary strength value of the current edge is set to zero (bS_Y=0).

[0063] Figure 2 A method for deriving a boundary strength value of a deblocking filter for chrominance components Cb and Cr according to an embodiment of the present invention is shown. Figure 2In step S202, if the BDPCM mode is not applied to the chroma component, each block encoded in the luma BDPCM mode is regarded as a block encoded in the intra mode to determine the boundary strength value of the chroma component. In step S204, if the check result of step S202 is true, the boundary strength value of the deblocking filter for the chroma component is set to zero (bS_Cb=0, bS_Cr=0), otherwise the video encoding or decoding system checks whether the p-side or any one of the p-sides of the current edge is encoded in the intra mode or the CIIP mode, or whether one of the p-side or q-side of the current edge is encoded in the chroma BDPCM mode. The q-side of the current edge is encoded in the edge mode or the CIIP mode, and if the check result of step S204 is true (true), the boundary strength value of the deblocking filter for the chroma component is set to 2 (bS_Cb=2, bS_Cr=2). In step S206, in the case where the check result of step S204 is false, the video encoding or decoding system further checks whether the CBF of the p-side or q-side is not zero for the current chroma component, or whether the p-side or q-side is in a joint chroma residual mode. If the test result of step S206 is true, the boundary strength value of the deblocking filter for the current chroma component Cb is set to one (bS_Cb=1), otherwise the boundary strength value for the current chroma component Cb is set to zero (bS_Cb=0). If the test result of step S206 is true, the boundary strength value of the deblocking filter for the current chroma component Cr is set to one (bS_Cr=1), otherwise the boundary strength value for the current chroma component Cr is set to zero (bS_Cr=0).

[0064] Deblocking filtering decision for the edge between two BDPCM or RDPCM blocks considering prediction direction In some embodiments of the present invention, the signaled BDPCM direction for the BDPCM coding block is considered when making deblocking filtering decisions on the edge of the BDPCM coding block. The signaled BDPCM direction is a prediction direction used in the BDPCM or RDPCM mode and signaled in the video bitstream or parsed from the video bitstream, for example, the prediction direction can be selected from the vertical direction and the horizontal direction. In one embodiment, if the signaled BDPCM directions of the two blocks are different, deblocking filtering for luminance and chrominance components is activated to filter the edge between the two BDPCM or RDPCM blocks. In this embodiment, the BDPCM or RDPCM mode can be applied to the luminance component, the chrominance component, or both the luminance and chrominance components. For example, the BDPCM mode is applied only to the luminance component of the video data, and when the prediction directions of the two BDPCM blocks are different, the boundary strength value of the deblocking filter on the edge between the two BDPCM blocks for the luminance and chrominance components is set to 2.

[0065] In another embodiment, if the signaled BDPCM directions of the two BDPCM or RDPCM blocks are different, deblocking filtering of the luminance and chrominance components is activated on the edge between the two BDPCM or RDPCM blocks, and if the signaled BDPCM directions of the two BDPCM or RDPCM blocks are the same, deblocking filtering of at least one of the luminance and chrominance components is disabled on the edge between the two BDPCM or RDPCM blocks. In this embodiment, the BDPCM or RDPCM mode can be applied to the luminance component, the chrominance component, or both the luminance and chrominance components. For example, when the BDPCM mode is applied only to the luminance component of the video data, if the prediction directions of the two BDPCM blocks are different, the boundary strength values ​​of the deblocking filters of the luminance and chrominance components are both set to 2 for the edge between the two BDPCM blocks; if the prediction directions of the two BDPCM blocks are the same, the boundary strength value of the deblocking filter of the luminance component is set to zero for the edge between the two BDPCM blocks, and the boundary strength value of the deblocking filter of the chrominance component is set to 2. In another example, when the BDPCM mode is applied to both the luminance and chrominance components of the video data, if the prediction directions of the two BDPCM blocks are different, the boundary strength values ​​of the deblocking filters of the luminance and chrominance components are both set to 2 for the edge between the two BDPCM blocks; if the prediction directions of the two BDPCM blocks are the same, the boundary strength values ​​of the deblocking filters of the luminance component and the chrominance components are both set to 0 for the edge between the two BDPCM blocks. In yet another example, when the BDPCM mode is applied only to the chrominance component of the video data, if the prediction directions of the two BDPCM blocks are different, the boundary strength values ​​of the deblocking filters of the luminance and chrominance components are both set to 2 for the edge between the two BDPCM blocks; if the prediction directions of the two BDPCM blocks are the same, the boundary strength value of the deblocking filters of the luminance component is set to 2 for the edge between the two BDPCM blocks, and the boundary strength value of the deblocking filters of the chrominance components is set to 0 for the edge between the two BDPCM blocks.

[0066] Deblocking Filtering Decisions for Edges with One Side Encoded with BDPCM or RDPCM When making deblocking filtering decisions for edges with one side encoded with BDPCM or RDPCM mode, some embodiments of the present invention treat each BDPCM or RDPCM encoded block as an intra-coded block. For example, when only one side of the edge is encoded with BDPCM or RDPCM mode, the boundary strength (bS) value of the deblocking filter for both the luminance and chrominance components is set to 2, so deblocking filtering can be used to filter the luminance and chrominance components.

[0067] In another embodiment, when the BDPCM or RDPCM mode is applied only to the luma component of the video data, luma deblocking is not applied only to one side of the current edge encoded by the BDPCM or RDPCM mode. That is, for an edge with only one side encoded in the BDPCM / RDPCM mode, deblocking filtering of the luma component is disabled only on the side encoded in the BDPCM / RDPCM mode, while deblocking filtering of the luma component is still enabled on the other side of the edge. In yet another embodiment, when the BDPCM or RDPCM mode is applied to the luma component, deblocking filtering for the luma component is disabled on the current edge, wherein either side of the current edge is encoded using the BDPCM or RDPCM mode. For example, if either side of the edge is encoded in the BDPCM or RDPCM mode, the bS value of the deblocking filter of the luma component will be set to zero.

[0068] According to one embodiment, if the BDPCM or RDPCM mode is applied to the chroma component of the video data, chroma deblocking is not applied only to one side of the current edge encoded by the BDPCM or RDPCM mode. For example, the bS value of the chroma deblocking filter used to filter the side encoded by the BDPCM or RDPCM mode is set to zero, while the bS value of the chroma deblocking filter used to filter the other side of the edge is set to 2. In another embodiment, deblocking filtering for chroma components is disabled on an edge, one side of which is encoded by the BDPCM or RDPCM mode. For example, if one side of the current edge is encoded by the BDPCM or RDPCM mode, the bS value of the deblocking filter of the chroma component is set to zero for the current edge.

[0069] The BDPCM or RDPCM coding block in the aforementioned embodiments may be a coding unit block, a prediction unit block or a transform unit block.

[0070] Deblocking filtering decisions for blocks encoded in transform skip mode Some embodiments of deblocking filtering decisions are made based on whether blocks on one side or both sides of an edge are encoded in transform skip mode (TSM). The video encoder typically transforms, quantizes, and entropy encodes the residual data of each block. The video encoder transforms the residual data by applying a transform operation such as discrete cosine transform (DCT) to the residual data in the pixel domain and transforms it into transform coefficients in the frequency domain. The video decoder performs the inverse operation of the operation completed in the video encoder, for example, the video decoder entropy decodes the quantized transform coefficients, dequantizes the transform coefficients, and then performs an inverse transform operation to transform the transform coefficients back to residual data in the pixel domain. For the current block encoded in TSM, the transform and inverse transform operations are skipped. Some examples of the current block include a transform unit (TU), a coding unit (CU), or a prediction unit (PU). The video encoder quantizes and entropy encodes the pixel domain residual data associated with the current block; the video decoder entropy decodes and dequantizes the pixel domain residual data of the current block. The video encoder may generate a TSM flag for inclusion in a video bitstream, the TSM flag indicating whether a current block is encoded using the TSM.

[0071] In the case where TSM is applied to the luma component, according to an embodiment, luma deblocking filtering is disabled on the edge between two blocks encoded with TSM. For example, for the edge between two luma blocks both encoded with TSM, the bS value of the luma component is set to zero. In another embodiment, when only one of two adjacent blocks is encoded with TSM, luma deblocking filtering is not filtered on one side of the edge encoded with TSM, while luma deblocking filtering can be applied to the other side of the edge. In yet another embodiment, if either side of the edge is encoded with TSM, luma deblocking filtering is disabled on the edge. For example, if either side of the current edge is encoded with TSM, the bS value of the luma component of the current edge will be set to zero.

[0072] In the case where TSM is applied to chroma components, according to one embodiment, chroma deblocking filtering is disabled on the edge between two blocks encoded with TSM. For example, for the edge between two chroma blocks both encoded with TSM, the bS value of the chroma component is set to zero. In another embodiment, when only one adjacent block is encoded with TSM, the chroma deblocking filter does not filter the side of the edge encoded with TSM, and the chroma deblocking filter can be applied to the other side of the edge. In yet another embodiment, if any side of the edge is TSM encoded, the chroma deblocking filter is disabled on the edge. For example, if any side of the current edge is encoded with TSM, the bS value of the chroma component of the current edge is set to zero.

[0073] Considering the deblocking filtering decision for the motion information of the block encoded in the transform skip mode In some other embodiments, when one or two adjacent blocks are encoded in TSM, the deblocking filtering decision also depends on the motion information of the two adjacent blocks. In the case of applying TSM to the luminance component, according to one embodiment, if the two adjacent transform-skipped blocks have the same or similar motion vectors and the same reference picture, the luminance deblocking filter is disabled on the edge between the two transform skipped blocks. For example, if two adjacent luminance blocks encoded with TSM have the same or similar motion vectors and the same reference picture, the bS value of the current edge is set to zero. In another embodiment, if at least one luminance block is encoded in TSM and the two luminance blocks have the same or similar motion vectors and the same reference picture, the luminance deblocking filter is disabled on the edge between the two luminance blocks. For example, if either side of the current edge is encoded with TSM and both sides of the current edge have the same or similar motion vectors and the same reference picture, the bS value of the current edge is set to zero. The neighboring blocks of the edge can be CU, PU or TU. An example of a similar motion vector is defined by the absolute difference between the horizontal component and the vertical component of the motion vector being less than a threshold value TH in units of one quarter luminance samples. For example, the threshold value TH is 1, 2, 3, or 4. In another embodiment, the aforementioned example or embodiment may also be applied to the chroma component. For example, according to one embodiment, when TSM is applied to the chroma component, if two adjacent blocks that have skipped the transform have the same or similar motion vectors and the same reference picture, the chroma deblocking filter is disabled on the edge between the two blocks that have skipped the transform. For example, if two adjacent chroma blocks encoded with TSM have the same or similar motion vectors and the same reference picture, the bS value of the current edge is set to zero. In another embodiment, if at least one of the chroma blocks is encoded with TSM and the two chroma blocks have the same or similar motion vectors and the same reference picture, the chroma deblocking filter is disabled on the edge between the two chroma blocks.

[0074] Example flow chart of encoding or decoding process Figure 3An exemplary flow chart of a video processing method to be implemented in a video encoding or decoding system according to an embodiment of the present invention is shown. In step S302, the video encoding or decoding system receives input data associated with a current block and an adjacent block in a current picture. On the encoder side, the input data corresponds to pixel data to be encoded as a video bitstream; on the decoder side, the input data corresponds to encoded data or prediction residuals to be decoded. The adjacent block is spatially adjacent to the current block. In step S304, the video encoding or decoding system determines whether the current block and the adjacent block are both encoded in BDPCM mode. Each current pixel in the BDPCM encoded block is predicted by one or more adjacent pixels of the current pixel in the current picture. In step S306, if the current block and the adjacent block are both encoded in BDPCM mode, a deblocking filtering operation is performed on the edge between the current block and the adjacent block by disabling deblocking filtering for the first color component on the edge and enabling deblocking filtering for the second color component on the edge. For example, when the BDPCM mode is applied only to the luminance component, the first color component is the luminance component (Y), and the second color component is one or more chrominance components (Cb and Cr). In another example, when only the BDPCM mode is applied to one or more chrominance components, the first color component is one or more chrominance components (Cb and Cr), and the second color component is a luminance component (Y). When the check result of step S304 is no, the video encoding or decoding system further checks in step S310 whether the current block and one of the adjacent blocks are encoded in the BDPCM mode. If the current block and one of the adjacent blocks are encoded in the BDPCM mode, a deblocking filtering operation is performed on the edge between the current block and the adjacent block by activating deblocking filtering on the first and second color components in step S312; otherwise, a deblocking filtering operation is performed on the edge between the current block and the adjacent block according to the boundary strength determination method in step S314. An example of the boundary strength determination method is shown in Table 2. After the deblocking filtering operation is performed in step S306, S312, or S314, the video encoding or decoding system encodes or decodes the current block and the adjacent block in the current picture in step S308.

[0075] Implementation of video encoder and decoder The aforementioned video processing method can be implemented in a video encoder or a decoder. For example, the proposed video processing method is implemented in a deblocking filter of an encoder and / or a deblocking filter of a decoder. Alternatively, any proposed method is implemented as a circuit coupled to a deblocking filter of an encoder and / or a deblocking filter of a decoder to provide information required for deblocking filtering. Figure 4An exemplary system block diagram of a video encoder 400 for implementing various embodiments of the present invention is shown. An intra prediction module 410 provides an intra predictor based on reconstructed video data of a current picture. An inter prediction module 412 performs motion estimation (ME) and motion compensation (MC) based on video data from other pictures to provide an inter predictor. For each block, the intra prediction module 410 or the inter prediction module 412 provides the selected predictor to an adder module 416 to form a prediction error, also known as a prediction residual. In some embodiments of the present invention, the current block is encoded by a BDPCM mode, and each current pixel in the current block is predicted by one or more neighboring pixels of the current pixel in the current picture. The predictor of each current pixel in the current block encoded in the BDPCM mode is determined from the neighboring pixels of the current pixel, and the residual of each current pixel is determined according to the predictor of each current pixel. The prediction residual of each block is generally further processed by a transform module (T) 418 and then by a quantization module (Q) 420. In certain embodiments of the BDPCM mode, the prediction residual of the BDPCM coded block is quantized in the spatial domain instead of being transformed in the frequency domain. In this case, the quantization module 420 processes the residual of each current pixel in the current block to produce a quantized residual. The quantized residual is then encoded by the entropy encoder 434 to form a video bitstream. The video bitstream is then packaged together with side information. The quantized residual of each current pixel in the current block is then processed by the inverse quantization module (IQ) 422 to dequantize the quantized residual. Since the transform operation is skipped for the residual of the current block, the inverse transform module (IT) 424 does not process the dequantized residual of the current block. Figure 4As shown, each current pixel is reconstructed by adding the dequantized residual back to the predictor of each current pixel at the reconstruction module (REC) 426 to produce reconstructed video data. According to one embodiment, each reconstructed current pixel of the current block is then used to predict the next pixel in the current block according to the raster scan order. The reconstructed video data can be stored in a reference picture buffer (Reference Picture Buffer) 432 and used for prediction of other pictures. The reconstructed video data recovered from REC 426 may suffer various damages due to the encoding process; therefore, before being stored in the reference picture buffer 432, a loop processing deblocking filter (DF) 428 and a sample adaptive offset (SAO) 430 are applied to the reconstructed video data to further improve the picture quality. When a deblocking filtering operation is performed on the edge between a current block encoded in BDPCM mode and an adjacent block also encoded in BDPCM mode, an embodiment of DF 428 deactivates the deblocking filter for the first color component and activates the deblocking filter for the second color component. For example, when the BDPCM mode is applied only to the luma component, the first color component is a luma component and the second color component is a chroma component. Syntax associated with information for loop processing DF 428 and SAO 430 is provided to an entropy encoder 434 for incorporation into an encoded video bitstream.

[0076] In some other embodiments, the current block is encoded in RDPCM mode, and each current pixel in the current block is predicted by inter-frame or intra-frame prediction in the inter-frame prediction module 412 or the intra-frame prediction module 410 to generate a predictor for each current pixel. The residual of each current pixel in the current block is determined by the adder 416 according to the predictor of each current pixel, and the residual is quantized in the spatial domain by the quantization module 420. RDPCM is then applied to the quantized residual of the current block to process the quantized residual according to the prediction direction. Examples of the prediction direction are selected from the horizontal direction and the vertical direction and signaled in the video bitstream. The processed quantized residual is dequantized in the inverse quantization module 422, and each current pixel in the current block is reconstructed in the reconstruction module 426 by adding the corresponding dequantized residual and the predictor of the current pixel. In deblocking filtering 428, the boundary strength determination method checks whether both sides of the edge are encoded in RDPCM mode, and performs a deblocking filtering operation on the edge of the two RDPCM blocks by deactivating the deblocking filtering for the first color component and activating the deblocking filtering for the second color component. For example, if RDPCM is applied to the luma component, the first color component is the luma component, and the second color component is one or more chroma components. In another example, if RDPCM is applied to one or more chroma components, the first color component is one or more chroma components, and the second color component is the luma component.

[0077] exist Figure 5 The diagram shows the method for decoding from Figure 4 The video decoder 500 corresponding to the video bitstream generated by the video encoder 400. The video bitstream is the input of the video decoder 500 and is decoded by the entropy decoder 510 to parse and recover the quantized residual and other system information. The decoding process of the decoder 500 is similar to the reconstruction loop at the encoder 400, except that the decoder 500 only requires motion compensation prediction in the inter-frame prediction module 514. Each block is decoded by the intra-frame prediction module 512 or the inter-frame prediction module 514. According to the prediction direction, the current block in some embodiments of the present invention is decoded by the BDPCM mode. An example selects the prediction direction from the horizontal and vertical directions and parses it from the video bitstream. The switching module 516 selects the intra-frame predictor from the intra-frame prediction module 512 or the inter-frame predictor from the inter-frame prediction module 514 according to the decoded mode information. The quantized residual associated with each current pixel of the current block encoded in the BDPCM mode is inversely quantized by the inverse quantization module (IQ) 520 to generate an inversely quantized residual. According to some embodiments, when processing a BDPCM or RDPCM coded block, the inverse transform operation performed in the inverse transform module (IT) 522 is skipped. Each current pixel is reconstructed by adding the dequantized residual of each current pixel to the predictor of each current pixel in REC 518 to generate reconstructed video data. Each reconstructed current pixel in the current block is used to predict the next pixel in the current block according to the raster scan order. The reconstructed video data is further processed by DF 524 and SAO 526 to generate the final decoded video. In DF 524, a deblocking filtering operation is performed on the edge between the current block and the adjacent block, where the current block and the adjacent block are both encoded in BDPCM mode. According to some embodiments of the present invention, the deblocking filtering operation performed on the edge between two BDPCM blocks deactivates the deblocking filtering for the first color component and activates the deblocking filtering for the second color component. For example, when BDPCM is applied only to the luminance component, the first color component is the luminance component, and the second color component is one or more chrominance components. If the currently decoded picture is a reference picture, the reconstructed video of the currently decoded picture is also stored in the reference picture buffer 528 for subsequent pictures in decoding order.

[0078] In some embodiments, the current block is encoded in RDPCM mode, and the inter-frame prediction module 514 or the intra-frame prediction module 512 is used to predict the predictor of each current pixel in the current block, and the quantized residual of the current block is decoded from the video bitstream. RDPCM is applied to process the quantized residual of the current block, and the processed quantized residual is dequantized in the inverse quantization module 520. In REC 518, each current pixel in the current block is reconstructed by adding the corresponding dequantized residual and the predictor of the current pixel. DF 524 performs a deblocking filtering operation on the edge between the current block and the adjacent block, where the adjacent block is also encoded in RDPCM mode. The deblocking filtering operation performed on the edge between two RDPCM blocks will deactivate the deblocking filtering for the first color component and activate the deblocking filtering for the second color component. For example, when RDPCM is applied only to the luminance component, the first color component is the luminance component, and the second color component is one or more chrominance components.

[0079] Figure 4 and Figure 5 The various components of the video encoder 400 and the video decoder 500 in the embodiment may be implemented by hardware components, one or more processors configured to execute program instructions stored in a memory, or a combination of hardware and processors. For example, the processor executes program instructions that are used to control the deblocking filtering operation on the edges between blocks. The processor is equipped with one or more processing cores. In some examples, the processor executes program instructions to perform functions in certain components of the encoder 400 and the decoder 500, and the memory electrically coupled to the processor is used to store program instructions, information corresponding to the reconstructed image of the block, and / or intermediate data in the encoding or decoding process. In some embodiments, the memory includes a non-temporary computer-readable medium, such as a semiconductor or solid-state memory, a random access memory (RAM), a read-only memory (ROM), a hard disk, an optical disk, or other suitable storage medium. The memory may also be a combination of two or more of the non-temporary computer-readable media listed above. As Figure 4 and Figure 5 As shown, the encoder 400 and the decoder 500 can be implemented in the same electronic device. Therefore, if implemented in the same electronic device, various functional components of the encoder 400 and the decoder 500 can be shared or reused. For example, Figure 4 One or more of the reconstruction module 426, the inverse transform module 424, the inverse quantization module 422, the deblocking filter 428, the sample adaptive offset 430 and the reference picture buffer 432 in the image processing module 424 may also be used as Figure 5 The reconstruction module 518, the inverse transform module 522, the inverse quantization module 520, the deblocking filter 524, the sample adaptive offset 526 and the reference picture buffer 528 in the image processing unit 500 are shown in FIG.

[0080] Embodiments of the video processing methods for encoding or decoding can be performed in a circuit integrated into a video compression chip or in a program code integrated into video compression software to perform the above-mentioned processing. For example, the deblocking filtering operation can be implemented in a program code to be executed on a computer processor, a digital signal processor (DSP), a microprocessor, or a field programmable gate array (FPGA). These processors can be configured to perform specific tasks according to the present invention by executing machine-readable software code or firmware code that defines the specific method embodied by the present invention.

[0081] References to "one embodiment", "some embodiments" or similar language throughout the specification mean that specific features, structures or characteristics described in conjunction with these embodiments may be included in at least one embodiment of the present invention. Therefore, the phrases "in one embodiment" or "in some embodiments" that appear throughout the specification do not necessarily all refer to the same embodiment, which may be implemented alone or in combination with one or more other embodiments. In addition, the described features, structures or characteristics may be combined in any suitable manner in one or more embodiments. However, those skilled in the art will recognize that the present invention may be practiced without one or more specific details, or with the use of other methods, components, etc. In other cases, well-known structures or operations are not shown or are not shown. Detailed description to avoid confusing aspects of the present invention.

[0082] The present invention may be implemented in other specific forms without departing from the spirit or essential features of the present invention. The described examples should be considered in all respects as illustrative only and not restrictive. Therefore, the scope of the present invention is indicated by the appended claims rather than the foregoing description. All changes falling within the equivalent meaning and scope of the claims should be included within their scope.

Claims

1. A video data processing method, comprising: Receiving input data related to a current block and a neighboring block in a current picture, wherein the neighboring block is spatially adjacent to the current block; determining whether the current block and the neighboring block are both coded in a block differential pulse code modulation mode, wherein each current pixel in each block differential pulse code modulation coded block in the current picture is predicted by one or more neighboring pixels of the current pixel in the current picture; When both the current block and the neighboring block are encoded in a block differential pulse code modulation mode, performing a deblocking filtering operation on an edge between the current block and the neighboring block by deactivating deblocking filtering for a first color component on the edge between the current block and the neighboring block and activating deblocking filtering for a second color component on the edge between the current block and the neighboring block; and The current block and the neighboring block in the current picture are encoded or decoded.

2. The video data processing method according to claim 1, wherein: The block differential pulse code modulation mode is applied only to the luminance components of the current block and the neighboring block, and the first color component is the luminance component, and the second color component is one or more chrominance components.

3. The video data processing method according to claim 1, wherein: The block differential pulse code modulation mode is applied only to one or more chrominance components of the current block and the neighboring block, and the first color component is the one or more chrominance components, and the second color component is a luminance component.

4. The video data processing method according to claim 1, wherein: A boundary strength value of the deblocking filter for the second color component on the edge between the current block and the neighboring block is set to 2.

5. The video data processing method according to claim 4, wherein: A boundary strength value of the deblocking filter for the first color component on the edge between the current block and the neighboring block is set to zero.

6. The video data processing method according to claim 1, further comprising: Receive input data associated with a second neighboring block adjacent to the current block, determine that the second neighboring block is encoded in a mode different from the block differential pulse code modulation mode, and perform deblocking filtering on the edge between the current block and the second neighboring block by activating deblocking filtering of the first color component and the second color component on the edge between the current block and the second neighboring block.

7. The video data processing method according to claim 1, wherein: A deblocking filtering operation on an edge between the current block and the neighboring block is performed based on the determination result.

8. A video data processing method, comprising: Receiving input data related to a current block and a neighboring block in a current picture, wherein the neighboring block is spatially adjacent to the current block; determining whether the current block and the neighboring block are both encoded in a residual differential pulse code modulation mode, wherein residual differential pulse code modulation is applied to a quantized residual of the current block according to a prediction direction of the current block, and residual differential pulse code modulation is applied to a quantized residual of the neighboring block according to a prediction direction of the neighboring block; When both the current block and the neighboring block are encoded in a residual differential pulse code modulation mode, performing a deblocking filtering operation on an edge between the current block and the neighboring block by deactivating deblocking filtering for a first color component on the edge between the current block and the neighboring block and activating deblocking filtering for a second color component on the edge between the current block and the neighboring block; and The current block and the neighboring block in the current picture are encoded or decoded.

9. The video data processing method according to claim 8, wherein: The residual differential pulse code modulation mode is applied only to the luminance components of the current block and the neighboring block, and the first color component is the luminance component, and the second color component is one or more chrominance components.

10. The video data processing method according to claim 8, wherein: The residual differential pulse code modulation mode is applied only to one or more chrominance components of the current block and the neighboring block, and the first color component is the one or more chrominance components, and the second color component is a luminance component.

11. The video data processing method according to claim 8, wherein: A boundary strength value of the deblocking filter for the second color component on the edge between the current block and the neighboring block is set to 2.

12. The video data processing method according to claim 11, wherein: A boundary strength value of the deblocking filter for the first color component on the edge between the current block and the neighboring block is set to zero.

13. The video data processing method according to claim 8, wherein: The method also includes determining a prediction direction of the current block and a prediction direction of the adjacent block, wherein if the prediction directions of the current block and the adjacent block are different, performing a deblocking filtering operation by activating deblocking filtering for the first color component and the second color component on the edge between the current block and the adjacent block.

14. The video data processing method according to claim 8, wherein: A deblocking filtering operation on an edge between the current block and the neighboring block is performed based on the determination result.

15. A video data processing apparatus, the apparatus comprising one or more electronic circuits configured to: Receive input data related to a current block and neighboring blocks in a current picture, wherein: The adjacent block is spatially adjacent to the current block; Determining that the current block and the neighboring block are both coded in a block differential pulse code modulation mode or both coded in a residual differential pulse code modulation mode, wherein each current pixel in each block differential pulse code modulation coding block in the current picture is predicted by one or more neighboring pixels of the current pixel in the current picture, and residual differential pulse code modulation is applied to a quantized residual of each residual differential pulse code modulation coding block according to a prediction direction of the residual differential pulse code modulation coding block; performing a deblocking filtering operation on an edge between the current block and the neighboring block by deactivating deblocking filtering for a first color component on the edge between the current block and the neighboring block and activating deblocking filtering for a second color component on the edge between the current block and the neighboring block; and The current block and the neighboring block in the current picture are encoded or decoded.

Citation Information

Patent Citations

  • Method, apparatus and system for de-blocking a block of video samples

    CN106464866A

  • Method and apparatus of video coding

    CN108781297A