Decoder-side prediction method and device based on weighted distortion

By introducing weighted distortion calculations in video decoding technology, the problem of failure to fully consider the impact of sample perception in the prior art is solved, and more efficient encoding performance and video quality are achieved.

CN111903128BActive Publication Date: 2025-04-22INTERDIGITAL VC HOLDINGS INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201980020689.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-03-29
Filing Date
2019-03-25
Publication Date
2025-04-22
Estimated Expiration
2039-03-25

AI Technical Summary

Technical Problem

In the existing video decoding technology, distortion calculation uniformly processes all samples, failing to fully consider the perceived impact of the samples, resulting in poor encoding performance.

Method used

Weighted distortion calculations are introduced in the decoder, and by obtaining weighting factors related to the video sequence samples, the video sequence samples that apply these weighting factors are determined to minimize the distortion metrics, thereby decoding or encoding.

Benefits of technology

Through weighted distortion calculation, the perceived impact of the samples can be more accurately reflected, the encoding performance is improved, and the quality of video decoding is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111903128B_ABST
    Figure CN111903128B_ABST
Patent Text Reader

Abstract

A decoder can use weighted distortion based prediction to determine information for making decisions about motion vectors, reference pixels, and coding modes, similar to corresponding encoder operations. Samples in and around the current block and samples of reference pictures are weighted, and a distortion metric is generated to determine the decision. Embodiments for prediction modes such as cross component linear model (CCLM), local illumination compensation (LIC), and frame rate up conversion (FRUC) are described. Various embodiments describe the derivation of weighting factors used in decision making, including inference by the decoder based on quantization parameters, local activity of blocks, and weighting factors of samples of temporally close reference pictures.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present principles relate to video compression and video decoding. Background Art

[0002] The field of the following embodiments is video coding, with an emphasis on decoding tools involving the calculation of distortions. This involves, for example, frame rate up-conversion (FRUC), pattern matched motion vector derivation (PMMVD), all based on template matching (TM) techniques, cross component linear model (CCLM), local illumination compensation (LIC) and indirect bidirectional optical flow (BIO). These tools are described in the JVET (Joint Video Exploration Team) committee.

[0003] These tools make decoder decisions based on the calculation of local distortion, which is based on the spatial or temporal reconstruction of the signal. The distortion is for example the sum of absolute differences (SAD) between different prediction samples. This means that each sample has the same contribution to the overall distortion.

[0004] However, it is well known that all samples do not have the same perceptual impact. Therefore, it is very common in encoder algorithms to introduce sample-dependent weighting values ​​in the distortion calculations involved in the encoding decisions.

[0005] The described embodiments suggest using this weighted distortion in the decoder when the decoder utilizes such distortion calculations to make its decisions. Summary of the invention

[0006] These and other drawbacks and shortcomings of the prior art are addressed by the present principles, which are directed to methods and apparatus for decoder-side prediction based on weighted distortion.

[0007] According to one aspect of the present principles, a method is provided. The method comprises the following steps: obtaining a weighting factor related to a video sequence sample; determining information for minimizing a distortion metric based on the video sequence sample to which the weighting factor is applied; and decoding a current video block using the information.

[0008] According to another aspect of the present principles, a second method is provided. The method comprises the following steps: obtaining a weighting factor related to a video sequence sample; determining information for minimizing a distortion metric based on the video sequence sample to which the weighting factor is applied; and encoding a current video block using the information.

[0009] According to another aspect of the present principles, an apparatus is provided. The apparatus includes a memory and a processor. The processor may be configured to encode or decode a block of a video image by: obtaining a weighting factor related to a video sequence sample; and determining information to minimize a distortion metric based on the video sequence sample to which the weighting factor is applied; and using the information to encode or decode a current video block.

[0010] These and other aspects, features and advantages of the present principles will become apparent from the following detailed description of illustrative embodiments, which is to be read in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 Sample positions used for the derivation of CCLM parameters are shown.

[0012] Figure 2 Neighboring samples used to derive IC parameters are shown.

[0013] Figure 3 It is shown that in bidirectional prediction, the L shapes in reference 0 and 1 are compared with the current block L shape to derive the IC parameters.

[0014] Figure 4 Neighboring blocks used in the SAD calculation of the template cost function are shown.

[0015] Figure 5 Neighboring blocks used in the SAD calculation of the bilateral cost function are shown.

[0016] Figure 6 A standard general purpose video compression scheme is shown.

[0017] Figure 7 A standard general purpose video decompression scheme is shown.

[0018] Figure 8 A flow chart showing one embodiment of the described method is shown.

[0019] Fig. 9 The sample locations used to derive CCLM parameters are shown.

[0020] Fig.10 The calculation of the weighting factors from the reference block is shown.

[0021] Fig.11 An example of a time coding hierarchy is shown.

[0022] Fig.12 One embodiment of a method using the described aspects is shown.

[0023] Fig.13 Another embodiment of a method using the described aspects is shown.

[0024] Fig.14 One embodiment of an apparatus using the described aspects is shown. DETAILED DESCRIPTION

[0025] The described embodiments propose to use this weighted distortion in the decoder when the decoder uses this distortion calculation to make its decisions.One advantage of these concepts is that improved coding performance is obtained by applying weighting when calculating the distortion in the decoder.

[0026] The Cross Component Linear Model (CCLM) prediction mode is conceptually close to the LIC (Local Illumination Compensation) mode, but it is applied internally across color components of the picture. The samples of a given color component are predicted from the samples of another color component based on an L-shape of decoded pixels around the current block.

[0027] Typically, this is applied to predict chrominance samples from luma samples. As in LIC, a linear model is used:

[0028] pred C (i,j)=a·rec L ′(i,j)+b

[0029] where pred C Represents the predicted chrominance samples, and rec L ' represents the reconstructed luma sample. Parameters a and b are derived based on the already available luma samples and chroma samples from the L-shaped surroundings of the current luma block (Vref neighborhood) and the current chroma block (Vcur neighborhood), as Figure 1 As in LIC, the distortion considered is the mean square error (MSE).

[0030] Therefore, CCLM is based on the calculation of local distortion and is defined as follows:

[0031]

[0032] In inter mode, LIC allows to correct block prediction samples obtained via motion compensation (MC) by taking into account possible spatial or temporal local illumination variations. The LIC parameters are estimated by comparing the set of reconstructed samples rec_cur around the current block (“current blk”) located in the neighborhood Vcur with the set of reconstructed samples rec_ref located in the neighborhood Vref (MV) of the displacement block (“ref blk”) in the reference picture, as Figure 2 Here, MV is the motion displacement between the current block and the reference block. Typically, Vcur and Vref(MV) consist of L-shaped samples adjacent to the current block and the reference block, respectively.

[0033] The LIC parameters minimize the mean square error difference (MSE) between samples in Vcur and samples in Vref (MV), and are corrected by the IC parameters. Typically, the LIC model is linear: LIC(x) = a.x + b = (a)(x) + b.

[0034]

[0035] s and r are the corresponding pixel positions in Vcur and Vref (MV) respectively.

[0036] In the following, pixel positions will be labeled by 1 (eg, s or r) or 2 variables (eg, (x, y) or (i, j)).

[0037] In the case of bidirectional prediction, the LIC parameter (a 0 , b 0 ) and (a 1 , b 1 ) are derived independently from Vref0(MV0) and Vref1(MV1) ( Figure 3 ).

[0038] Therefore, LIC is based on the calculation of local distortion and is defined as follows:

[0039]

[0040] Decoder-side motion derivation (DMVD) is an inter-prediction tool based on the decoder-side derivation of motion vectors from a distortion-based motion estimation process. DMVD consists in derivation of motion vectors based on a distortion function applied to reconstructed samples. Such a function calculates the cost between reference and candidate as the sum of absolute differences (SAD) between two pixel blocks.

[0041] The reference is defined with some neighboring blocks (or CU, PU ...) of the current block (or CU, PU ...) to be encoded / decoded. The goal is to find the motion vector predictor that minimizes the SAD between the reference block (or CU, PU ...) and the neighboring blocks (or CU, PU ...) of the block pointed to by the test motion vector predictor in the test reference picture.

[0042] Two tools in JVET are currently using this technique, Frame Rate Up-Conversion (FRUC) and Pattern Matching Motion Vector Derivation (PMMVD).

[0043] FRUC uses two different template matching cost functions, called template and bilateral, respectively, in the following Figure 4 and Figure 5 The FRUC bilateral model is based on a similar design to PMMVD.

[0044] In FRUC template mode, the template matching cost is the cost of the blocks of the current picture and the blocks of the reference picture adjacent to the current block (typically Figure 4As shown, the sum of the SAD between the dotted block (if available) and the dashed block (if available). Let us note that the top left position of the current block is p = (xc, yc) and the tested motion vector MV = (dx, dy).

[0045] The SAD is calculated as follows:

[0046]

[0047] Wherein, |t| is the absolute value of the variable t, Vcur consists of the neighboring dot blocks (if available) and dashed blocks (if available) of the current block, and Vref(MV) consists of the neighboring dot blocks (if available) and dashed blocks (if available) of the reference block located at position (xc+dx, yc+dy) in the reference picture.

[0048] As in the previous case, s and r are the corresponding pixel positions in Vcur and Vref (MV) respectively.

[0049] In FRUC bilateral mode as well as PMMVD, the template matching cost is the SAD between blocks of two different reference pictures (typically, Figure 5 As shown, dashed blocks (if available). If the top left position of the current block is (xc, yc), the tested motion vector MV = (dx, dy), then the SAD is calculated as follows:

[0050]

[0051] Where Vref0(MV) consists of the reference block located at position (xc+dx, yc+dy) in reference picture 0, and Vref1(λ.MV) consists of the reference block located at position (xc+λ.dx, yc+λ.dy)) in reference picture 1, λ is a scaling factor that takes into account the temporal distance between picture ref1 and the current picture relative to the temporal distance between picture ref0 and the current picture. Typically, λ=(tref1-tcur) / (tref0-tcur), where tcur, tref0 and tref1 are the temporal instances of the current picture, reference picture 0 and reference picture 1.

[0052] The distortion used in the common decoder-side calculation gives the same weight to all samples. However, weighting factors are usually used when calculating such distortion in the encoder, for example to take into account the perceptual impact of the samples.

[0053] At least one JVET method is based on local gradients within the block, using a weight for each block calculated from the luminance signal. Blocks with high activity (ie, local gradients with high magnitude) are given lower weights than blocks with low activity.

[0054] Another weighting proposed within the JVET committee is for HDR content. The weighting depends on the luminance value of the sample.

[0055] Applying appropriate weights at the encoder side usually leads to significant gains in visual quality (for the same bitrate) by better distributing bits between various regions of the picture. However, this weighting should not be applied at the decoder.

[0056] The described embodiments solve this problem. The following paragraphs present exemplary embodiments, such as for calculating CCLM or LIC parameters on the encoder or decoder side. Selecting the correct transform to apply to the reference pixel based on the neighborhood of reconstruction or decoding changes the prediction. The described embodiments also present encoder and decoder side motion vector refinement in FRUC, FRUC bilateral and PMMVD modes. In these cases, selecting the correct reference pixel based on the neighborhood of decoding changes the reference. However, the described methods can also be summarized as encoder and decoder side prediction mode or motion vector selection. In an embodiment, the distortion can be compared to determine the coding mode, reference pixel or motion vector, etc.

[0057] In the prior art, weighting can be applied in the DMVD method to weight samples from different pictures, such as in the prior art method of processing the weighted average of multiple predictors. However, this method does not take into account the local importance (weighting) of the samples.

[0058] The described embodiments involve a decision process applied at the decoder side (and for symmetry reasons at the encoder) for making decisions based on direct (as in FRUC) or indirect (as in LIC) calculations of the distortion.

[0059] exist Figure 8 The basic concept of the described embodiment is depicted in . The decision process consists of four steps. In a first step (101), the current sampling neighborhood Vcur that will be used to derive the distortion is identified. Similarly, in another step (102), the reference sample neighborhood Vref that will be used to derive the distortion is identified. Step (103) derives a weighting factor W(s) to be applied to each sample used in the distortion calculation, s in Vcur. This step uses the output of step 101 (current sample) and possibly the output of step 102 (reference sample) as input data. The final step (104) corresponds to the actual decision process based on the calculation of the distortion using the current sample, the reference sample and the weighting factors as input.

[0060] The weighted distortion can be determined from the currently reconstructed or decoded samples and the reference samples and minimized by changing parameters. These parameters can be reference samples, coding modes, motion vectors or other parameters that affect the distortion. In at least one embodiment described below, the parameters within the distortion determination can be changed to minimize the weighted distortion.

[0061] In a first embodiment applied to CCLM, the described embodiment works as follows. The goal is to predict the color samples of the current block from spatially adjacent color samples and from co-located adjacent color samples of another color component. For example, it is applied to predict the chrominance samples of a block from a block of co-located luminance samples.

[0062] In step 101, the L-shaped color sample Vcur of the current block is identified. This corresponds to Figure 1 Indicates the setting Vcur.

[0063] In step 102, the L-shaped color samples of the co-located block are identified from the component Vref used to predict the current block. This corresponds to Figure 1 Indicates the setting Vref.

[0064] • In step 103, the weighting factor W(r) to be applied is calculated.

[0065] In step 104, the distortion of parameters a, b is calculated as follows:

[0066]

[0067] a and b are calculated to minimize this weighted distortion.

[0068] The normalization factor can be applied as follows:

[0069]

[0070] In a second embodiment applied to CCLM, the described embodiment works as follows. The goal is to predict the samples of the current block located at position (xc, yc) from spatially neighboring samples and from samples located in the reference picture. A motion vector MV (dx, dy) is given. Therefore, the reference block is located at position (xc+dx, yc+dy).

[0071] In step 101, the L-shaped sample Vcur of the current block is identified. This corresponds to Figure 2 Indicates the setting Vcur.

[0072] In step 102, identify the L-shaped color samples Vref(MV) of the reference block. This corresponds to Figure 2 The setting Vref(MV) is indicated in .

[0073] • In step 103, the weighting factor W(r) to be applied is calculated.

[0074] In step 104, the distortion of parameters a, b is calculated as follows:

[0075]

[0076] a and b are calculated to minimize this weighted distortion.

[0077] The normalization factor can be applied as follows:

[0078]

[0079] In a third embodiment applied to the FRUC template mode, the described embodiment works as follows. The goal is to identify the best motion vector MV (dx, dy) using spatially neighboring samples of the current block located at position (xc, yc) and spatially neighboring samples of the reference block identified by the motion vector MV. Therefore, the reference block is located at position (xc+dx, yc+dy).

[0080] In step 101, the L-shaped sample Vcur of the current block is identified. This corresponds to Figure 4 The dotted block (if available) and dashed line block (if available) of the current picture in the image.

[0081] In step 102, the L-shaped sample Vref(MV) of the reference block is identified. This corresponds to Figure 4 The dotted blocks (if available) and dashed blocks (if available) of the reference picture in the image.

[0082] • In step 103, the weighting factor W(r) to be applied is calculated.

[0083] In step 104, the distortion of the motion vector MV is calculated as follows:

[0084]

[0085] The MV is calculated to minimize the distortion.

[0086] The normalization factor can be applied as follows:

[0087]

[0088] In a fourth embodiment applied to FRUC bilateral and PMMVD, the described embodiment works as follows. The goal is to identify the best motion vector MV (dx, dy) using two reference blocks located in two reference pictures. The current block is considered to be located at position (xc, yc). The reference block is derived from the position (xc, yc) and the motion vector MV.

[0089] • In step 101, samples in the current block Vcur are identified.

[0090] • At step 102, samples in a reference block from reference picture 0, Vref0 (MV), are identified. Similarly, samples in the reference block are from reference picture 1, Vref1 (.MV).

[0091] • In step 103, the weighting factor W(r) to be applied is calculated.

[0092] In step 104, the distortion of the motion vector MV is calculated as follows:

[0093]

[0094] The MV is calculated to minimize the distortion.

[0095] The normalization factor can be applied as follows:

[0096]

[0097] In the above equation, the weighting factors can be calculated from the current neighborhood, from the reference, or from a combination of them. The distortion to be minimized can be calculated as follows:

[0098]

[0099] where W(p,r,s) is the weighting factor calculated from the neighborhood and d(p,r,s) is the distortion calculated from the neighborhood point (p,r,s).

[0100] In a first embodiment for deriving the weighting factors, a first method is adopted. In this embodiment, the weighting function F(.) is inferred by the decoder or signaled in the bitstream.

[0101] The weighting factor for a sample at position r is derived as follows:

[0102] W(r)=F(rec_cur(r))

[0103] That is, the weighting factors depend only on the values ​​of samples from the current picture at position r.

[0104] In an embodiment, even though the distortion calculation is applied to chroma samples, the weighting factors depend only on the values ​​of luma samples from the current picture at position r.

[0105] W(r)=F(rec_curY(r))

[0106] The weight function F(.) can be implemented as follows:

[0107] Lookup table,

[0108] Piecewise scaling function,

[0109] piecewise linear functions,

[0110] · Piecewise polynomial functions.

[0111] It can be coded in SEI messages, in sequence parameter set (SPS), picture parameter set (PPS), in slice header, in coding tree unit (CTU) syntax, per slice or in new structures such as adaptive picture set (APS).

[0112] In a second embodiment using a second method to calculate the weighting factors, the weighting factors are based on the QP used to encode the samples. Fig. 9 , where the current block is surrounded by samples (Vcur) belonging to 4 different blocks, coded with 4 different QPs (QP0 to 3). For the temporal case, the weights can be calculated from any reference (if ref0 or ref1 is available) or the current picture. Fig.10 Example a reference block in a reference picture, where the reference block consists of samples with potentially different QPs from different blocks in the reference picture. The weighting factor for the sample at position s is calculated from the QPi used to encode the block to which the sample belongs. We denote this QP with QP(s). Here, therefore four different weighting factors will be used.

[0113] In one embodiment, W(s) is related to 2 (-QP(s) / 3) Proportional.

[0114] W(s)=K.2 (-QP(s) / 3)

[0115] K is a constant parameter.

[0116] In a third embodiment, a third method of deriving weighting parameters is used. The weighting factor of a sample position is based on the local activity of the block containing the sample. For example, the local activity locAct in block B can be calculated as follows:

[0117]

[0118] where N is the number of samples of block B, and h(x, y) can be defined as:

[0119] h(x,y)=4. rec(x,y)−rec(x+1,y)−rec(x,y+1)−rec(x−1,y)−rec(x,y−1) rec(x,y) is the value of the reconstructed sample at position (x,y).

[0120] If s = (x, y) belongs to block B, then W(s) = locAct(B)

[0121] In a variation, we consider that for each position s, a block Bs is centered at position s, and W(s) = locAct(Bs). The typical size of B is 8x8.

[0122] In case of bilateral motion derivation, samples from the current block Vcur cannot be used to derive the weighting factors since they have not yet been reconstructed.

[0123] In one embodiment of bilateral motion derivation, the weighting factors are calculated using samples of the temporally closest reference picture among the different reference pictures considered (reference 0 and reference 1).

[0124] In another embodiment of bilateral motion derivation, the weighting factors are calculated using samples of the reference picture whose temporal level in the temporal coding hierarchy is the lowest among the different reference pictures considered (reference 0 and reference 1).

[0125] For example, refer to Fig.11 , let us consider that the current block uses pictures R0 and R3 as reference pictures. In this embodiment, the weighting factors should be calculated based on samples located in picture R0, which is at a lower temporal level than picture R4.

[0126] In another embodiment, the weighting factors are calculated using samples from two reference pictures used to derive the motion vectors. For example, the following strategy may be used:

[0127] - Using any of the above solutions, calculate the weighting factor W0(p) for each position p inside Vref0(MV). Normalization over the block can also be applied.

[0128] - Using any of the above solutions, calculate the weighting factor W1(s) for each position s inside Vref1(.MV). Normalization over the block can also be applied.

[0129] -The final weighting factor for position p is calculated as follows:

[0130] W(p,s)=(a.W0(p)+(1-a).W1(s))

[0131] Where a<=1 is a given parameter (eg, set equal to).

[0132] In another embodiment, the weighting factors are calculated using the samples of the reference picture for which the average QP is lowest. The average QP is calculated, for example, as follows. Let (xc, yc) be the position of the current block in the current picture. Let MV(dx, dy) be the motion vector associated with the reference picture. The block in the reference picture is located at (xc+dx, yc+dy). The average QP in the reference block is the average of the QPs used by the samples of the reference block. Fig.10 An example is given where the reference block consists of samples belonging to different blocks, which are coded with potentially different QPs.

[0133] average The calculation is as follows:

[0134]

[0135] N is the number of samples in Vref, and QP(s) is the QP of the block where sample s is located.

[0136] The described embodiments aim to obtain a more accurate distortion measurement in the decoder-side refinement stage.

[0137] The preceding paragraphs have presented exemplary embodiments such as: a) calculation of CCLM or LIC parameters at the decoder side (selecting the correct transform to apply to reference pixel-changed prediction based on the decoded neighborhood), and b) motion vector refinement at the decoder side for FRUC, FRUC Bilateral and PMMVD modes (selecting the correct reference pixel-changed reference based on the decoded neighborhood). But it can also be summarized as decoder side prediction mode or motion vector selection. Where appropriate, the corresponding encoder side operations will also be part of the disclosed concepts presented here.

[0138] One embodiment of the described aspects is Fig.12 , which shows one embodiment of a method 1200 for decoder-side prediction based on weighted distortion. The method begins at start block 1201 and proceeds to block 1210 to obtain weighting factors associated with video sequence samples. Control proceeds from block 1210 to block 1220 to determine information for applying weighting factors to the video sequence samples to minimize a distortion metric. Such information may include reference samples, motion vectors, or coding modes for use in the next step. Control then proceeds from block 1220 to block 1230 to decode the video block using the determined information.

[0139] Another embodiment of the described aspect is Fig.13 , which shows one embodiment of a method 1300 for encoder-side prediction based on weighted distortion. The method begins at start block 1301 and proceeds to block 1310 to obtain weighting factors associated with video sequence samples. Control proceeds from block 1310 to block 1320 to determine information for applying weighting factors to the video sequence samples to minimize a distortion metric. Such information may include reference samples, motion vectors, or coding modes for use in the next step. Control then proceeds from block 1320 to block 1330 to encode the video block using the determined information.

[0140] One embodiment of the described aspects is Fig.14 , which shows an apparatus 1400 for prediction based on weighted distortion. The apparatus includes a processor 1410 and a memory 1420. The processor 1410 is configured to encode to perform Fig.13 The steps are: Fig.13The method performs encoding using weighted distortion based prediction for a portion of a video image.

[0141] When processor 1410 is configured to decode, it performs Fig.12 The steps are: Fig.12 The method performs a prediction based on a weighted distortion for a portion of a video image.

[0142] The functions of the various elements shown in the figures may be provided using dedicated hardware and hardware capable of executing software in conjunction with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of separate processors (some of which may be shared). In addition, the explicit use of the term "processor" or "controller" should not be understood to refer only to hardware capable of executing software, but may implicitly include, but is not limited to, digital signal processor ("DSP") hardware, read-only memory ("ROM") for storing software, random access memory ("RAM"), and non-volatile memory. .

[0143] Other hardware, conventional and / or custom, may also be included. Similarly, any switches shown in the figures are merely conceptual. Their functions may be performed by the operation of program logic, by dedicated logic, by the interaction of program control and dedicated logic, or even manually, as more specifically understood from the environment, and the specific technology may be selected by the implementer.

[0144] This description illustrates the present principles. It will thus be appreciated that those skilled in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the present principles and are included within their spirit and scope.

[0145] All examples and conditional language recited herein are intended for teaching purposes to assist the reader in understanding the present principles and concepts contributed by the inventor(s) to advance the art, and should be understood as not being limited by such specifically recited examples and limitations.

[0146] Furthermore, all statements describing principles, aspects, and embodiments of the present principles, as well as specific examples thereof, are intended to include both structural and functional equivalents thereof. Additionally, such equivalents are intended to include currently known equivalents as well as equivalents developed in the future, i.e., any elements developed that perform the same function, regardless of structure.

[0147] Thus, for example, those skilled in the art will appreciate that the block diagrams presented herein represent conceptual views of illustrative circuitry embodying the present principles. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo-code, etc. represent various processes that can be substantially represented in a computer-readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.

[0148] In the claims herein, any element expressed as a means for performing a specified function is intended to include any manner of performing that function, including, for example, a) a combination of circuit elements that perform that function or b) any form of software, including firmware, microcode, etc., combined with appropriate circuitry for executing that software to perform that function. The present principles, as defined by such claims, reside in the fact that the functions provided by a variety of recited components are combined and put together in the manner required by the claims. Any components that can provide those functions are therefore considered equivalent to those shown here.

[0149] References in this specification to "one embodiment" or "an embodiment" and other variations of the present principles mean that the particular features, structures, characteristics, etc. described in connection with the embodiment are included in at least one embodiment of the present principles. Thus, the appearances of the phrases "in one embodiment" or "in an embodiment" and other variations in various places throughout this specification are not necessarily all referring to the same embodiment.

Claims

1. A method applied to a cross-component linear model, comprising: determining that weighting parameters are calculated to minimize weighted distortion between samples of the video block and reference samples using weighting factors based on quantization parameters of blocks of at least one reference picture including corresponding reference samples, and the calculation is applied to chroma samples; predicting chrominance samples from spatially neighboring samples and from samples located in a reference picture as a function of said weighting parameters; and, The current video block is decoded using the predicted chroma samples.

2. The method according to claim 1, wherein: The video samples include at least one of a neighboring area of ​​a current video block and at least one reference picture.

3. The method according to claim 1, wherein: The determination of the weighting factors further comprises using reference samples or at least one motion vector.

4. The method according to claim 1, wherein: Compute the distortion metric for the chroma samples.

5. The method according to claim 1, wherein: The weighting factors are based on a function of the video samples.

6. The method according to claim 1, wherein: The weighting factor is used to determine a coding mode of the current video block.

7. A device for use in a cross-component linear model, comprising: Memory, and Processor, configured as: determining that weighting parameters are calculated to minimize weighted distortion between samples of the video block and reference samples using weighting factors based on quantization parameters of blocks of at least one reference picture including corresponding reference samples, and the calculation is applied to chroma samples; predicting chrominance samples from spatially neighboring samples and from samples located in a reference picture as a function of said weighting parameters; and, The current video block is decoded using the predicted chroma samples.

8. The device according to claim 7, wherein: The video samples include at least one of a neighboring area of ​​a current video block and at least one reference picture.

9. The device according to claim 7, wherein: The determination of the weighting factors further comprises using reference samples or at least one motion vector.

10. The device according to claim 7, wherein: Compute the distortion metric for the chroma samples.

11. The device according to claim 7, wherein: The weighting factors are based on a function of the video samples.

12. The device according to claim 7, wherein: The weighting factor is used to determine a coding mode of the current video block.

13. A method applied to a cross-component linear model, comprising: determining that weighting parameters are calculated to minimize weighted distortion between samples of the video block and reference samples using weighting factors based on quantization parameters of blocks of at least one reference picture including corresponding reference samples, and the calculation is applied to chroma samples; predicting chrominance samples from spatially neighboring samples and from samples located in a reference picture as a function of said weighting parameters; and, The current video block is encoded using the predicted chroma samples.

14. The method according to claim 13, wherein: The video samples include at least one of a neighboring area of ​​a current video block and at least one reference picture.

15. The method according to claim 13, wherein: The determination of the weighting factors further comprises using reference samples or at least one motion vector.

16. The method according to claim 13, wherein: Compute the distortion metric for the chroma samples.

17. The method according to claim 13, wherein: The weighting factors are based on a function of the video samples.

18. The method according to claim 13, wherein: The weighting factor is used to determine a coding mode of the current video block.

19. A device for use in a cross-component linear model, comprising: Memory, and Processor, configured as: determining that weighting parameters are calculated to minimize weighted distortion between samples of the video block and reference samples using weighting factors based on quantization parameters of blocks of at least one reference picture including corresponding reference samples, and the calculation is applied to chroma samples; predicting chrominance samples from spatially neighboring samples and from samples located in a reference picture as a function of said weighting parameters; and, The current video block is encoded using the predicted chroma samples.

20. The device according to claim 19, wherein The video samples include at least one of a neighboring area of ​​a current video block and at least one reference picture.

21. The device according to claim 19, wherein The determination of the weighting factors further comprises using reference samples or at least one motion vector.

22. The device according to claim 19, wherein Compute distortion metrics for chroma samples.

23. The device according to claim 19, wherein: The weighting factors are based on a function of the video samples.

24. The device according to claim 19, wherein The weighting factor is used to determine a coding mode of the current video block.

25. A non-transitory computer readable medium having stored thereon instructions for implementing the method of any one of claims 1-6 and 13-18 when executed by a processor.

26. A computer program product comprising instructions which, when executed by a computer, cause the computer to perform the method of any one of claims 1 to 6 and 13 to 18.

Citation Information

Patent Citations

  • Distortion weighing

    CN102415097A

  • Video coding using hybrid intra prediction

    WO2017123133A1