High granularity decoder side cross component loop filter
Patent Information
- Application Number
- BR112025020884
- Authority / Receiving Office
- BR · BR
- Patent Type
- Applications
- Publication Date
- 2026-08-25
Smart Images

Figure 00000051_0000 
Figure 00000051_0001 
Figure 00000053_0000
Description
1 / 47 HIGH GRANULARITY DECODER SIDE CROSS COMPONENT LOOP FILTER TECHNICAL FIELD:
[0001] The teachings according to the exemplary embodiments of this invention relate in general to video encoding and decoding and, more particularly, to the improvement of chroma key construction. BACKGROUND:
[0002] This section is intended to provide background or context for the invention, which is cited in the claims. The description in this document may include concepts that may be pursued, but are not necessarily those that were previously conceived or pursued. Therefore, unless otherwise indicated in this document, what is described in this section is not prior art to the description and claims in this application and is not admitted to be prior art by inclusion in this section.
[0003] Certain abbreviations that may be found in the description and / or in the Figures are defined in this document as follows: ALF adaptive loop filter AMVR adaptive motion vector resolution CC cross-component CC-ALF adaptive cross-component loop filter CCLM intra-cross-component linear model prediction CTU coding tree unit CU central unit ISM industrial, scientific, medical ISP intra-subpartitions LM linear model LMS minimum mean square MRL multiple reference line MMLM multi-model LM Petition 870250103134, dated 11 / 11 / 2025, page 5 / 103 2 / 47 MVD motion vector difference VVC versatile video codec WP weighted prediction
[0004] Brief Description of Previous Developments
[0005] Block-based processing is widely used in video encoding because it provides a good trade-off between encoding efficiency and computational complexity. Intra-block copy tools are known to be able to generate a prediction for a current block.
[0006] The exemplary embodiments of this invention propose improved operations for model monitoring procedures as well as for beam prediction. SUMMARY:
[0007] This section contains examples of possible implementations and is not intended to be exhaustive.
[0008] In another exemplary aspect of the invention, there is an apparatus, such as a user-side device comprising: at least one processor; and at least one non-transient memory that stores instructions, which when executed by the at least one processor, cause the apparatus to at least: obtain for a set of samples at least one convolutional cross-component model filter, wherein the set of samples are reconstructed samples from two channels for an image; apply at least one filter to the reconstructed sample set from the first channel; apply the at least one convolutional cross-component model filter using as input an output of the at least one filter to the reconstructed sample set from the first channel; apply at least one filter to the output of the at least one convolutional cross-component model filter;and apply a cross-component filter to the reconstructed sample set of the first channel or to the output of at least one filter to the reconstructed sample set of the first channel, in order to obtain a correction for the output of at least one filter; Petition 870250103134, dated 11 / 11 / 2025, page 6 / 103 3 / 47 using as input the output of at least one convolutional cross-component model filter.
[0009] In yet another exemplary aspect of the invention, there is a method comprising: obtaining for a sample set at least one convolutional cross-component model filter, wherein the sample set is reconstructed samples from two channels for an image; applying at least one filter to the reconstructed sample set from the first channel; applying the at least one convolutional cross-component model filter using as input an output of the at least one filter to the reconstructed sample set from the first channel; applying at least one filter to the output of the at least one convolutional cross-component model filter;and apply a cross-component filter to the reconstructed sample set of the first channel or to the output of at least one filter to the reconstructed sample set of the first channel, to obtain a correction for the output of at least one filter using as input the output of at least one convolutional cross-component model filter.
[0010] A further exemplary embodiment is an apparatus and a method comprising the apparatus and the method of the preceding paragraphs, wherein there is adding an output of the cross-component filter to the output of at least one filter using as input the output of at least one convolutional cross-component model filter, wherein the convolutional cross-component model filter is derived and applied to blocks that are not determined by any coding or prediction partitions, wherein said blocks have a square or rectangular shape, and wherein said blocks may be overlapping or distinct, wherein the use of the convolutional cross-component model for each block is determined without additional signaling.
[0011] A non-transient, computer-readable medium that stores program code, wherein the program code is executed by at least one processor to perform at least the method as described in the paragraphs above. Petition 870250103134, dated 11 / 11 / 2025, page 7 / 103 4 / 47
[0012] In yet another exemplary aspect of the invention, there is an apparatus comprising: means for adding a cross-component filter output to the output of at least one filter using as input the output of at least one convolutional cross-component model filter, wherein the convolutional cross-component model filter is derived and applied to blocks that are not determined by any coding or prediction partitions, wherein said blocks have a square or rectangular shape, and wherein said blocks may be overlapping or distinct, wherein the use of the convolutional cross-component model for each block is determined without additional signaling.
[0013] According to the exemplary embodiments as described in the paragraph above, at least the means for adding, deriving, applying and determining comprise a network interface, and computer program code stored on a computer-readable medium and executed by at least one processor.
[0014] A communication system comprising the network-side device and the user-side device that perform operations as described above. BRIEF DESCRIPTION OF THE DRAWINGS:
[0015] The aforementioned and other aspects, features and benefits of various embodiments of the present disclosure will become more fully apparent from the following detailed description with reference to the accompanying drawings, in which reference signs are used to designate similar or equivalent elements. The drawings are illustrated to facilitate a better understanding of the embodiments of the disclosure and are not necessarily drawn to scale, wherein:
[0016] FIG. 1A shows locations of the samples used for the derivation of α and β;
[0017] FIG. 1B shows a Table 1, chroma mode derivation from luma mode when cclm_is enabled; Petition 870250103134, dated 11 / 11 / 2025, page 8 / 103 5 / 47
[0018] FIG. 1C shows Table 2, a unified binarization table for chroma prediction mode;
[0019] FIG. 2 shows Classification of luma samples into two classes used in the derivation of two sets of α and β Upper and background sample domain of the spatial domain
[0020] FIG. 3 shows the locations of the samples used for the CCCM derivation filter when six reference lines are used; and
[0021] FIG. 4 shows from left to right: 3 vertical leads, 3 horizontal leads, 5 cross leads, 25 diamond leads;
[0022] FIG. 5 shows an example of four reference lines adjacent to a prediction block;
[0023] FIG. 6 shows a matrix-weighted intra-prediction process;
[0024] FIG. 7 shows adjacent upper and left blocks used in CIIP weight derivation;
[0025] FIG. 8 shows ALF filter formats (chroma: 5*5 diamond, luma: 7x7 diamond);
[0026] FIG. 9A shows a subsampled Laplacian calculation;
[0027] FIG. 9B shows a table with a mapping of the gradient calculated for a block and the transformations;
[0028] FIG. 10 shows (a) CC-ALF colocalization in relation to other loop filters (b) Diamond-shaped filter;
[0029] FIG. 11 shows improved ALF line with chroma update based on CCCM;
[0030] FIG. 12 shows a block diagram of a possible and non-limiting exemplary system in which the exemplary modalities can be practiced; and
[0031] FIG. 13 shows a method according to the exemplary embodiments of the invention that can be carried out by an apparatus. DETAILED DESCRIPTION:
[0032] In exemplary embodiments of this invention, it is proposed at least Petition 870250103134, dated 11 / 11 / 2025, page 9 / 103 6 / 47 a method and apparatus for at least improving chroma construction for video encoding and decoding.
[0033] Hybrid video codecs, for example, ITU-T H.263, H.264 / AVC, and HEVC, can encode video information in two phases. First, the pixel values in a given image area (or “block”) are predicted, for example, by means of motion compensation (finding and indicating an area in one of the previously encoded video frames that closely corresponds to the block being encoded) or by spatial means (using the pixel values around the block to be encoded in a specified manner). In the first phase, predictive coding can be applied, for example, as so-called sample prediction and / or so-called syntax prediction.
[0034] In sample prediction, pixel or sample values are predicted in a certain area or “block” of the image. These sample pixel values can be predicted, for example, using one or more motion compensation or intra-prediction mechanisms.
[0035] Motion compensation mechanisms (which may also be referred to as inter-prediction, temporal prediction, or motion-compensated temporal prediction or motion-compensated prediction or MCP) involve finding and indicating an area in one of the previously encoded video frames that closely corresponds to the block being encoded. Inter-prediction can reduce temporal redundancy.
[0036] Intra prediction, where pixel or sample values can be predicted by spatial mechanisms, involves finding and indicating a spatial region relationship. Intra prediction utilizes the fact that adjacent pixels within the same image are likely to be correlated. Intra prediction can be performed in the transform or spatial domain, i.e., sample values or transform coefficients can be predicted. Intra prediction is typically exploited in intra coding, where no inter prediction is applied.
[0037] In syntax prediction, which can also be referred to as prediction of Petition 870250103134, dated 11 / 11 / 2025, page 10 / 103 7 / 47 Parameter, syntax elements and / or syntax element values and / or variables derived from syntax elements are predicted from previously (de)coded syntax elements and / or previously derived variables. Non-limiting examples of syntax prediction are provided below.
[0038] In motion vector prediction, motion vectors, for example, for inter- and / or interview prediction, can be encoded differently relative to a specific block-predicted motion vector. In many video codecs, predicted motion vectors are created in a predefined way, for example, by calculating the median of the encoded or decoded motion vectors of adjacent blocks. Another way to create motion vector predictions, sometimes referred to as advanced motion vector prediction, is to generate a list of candidate predictions from adjacent blocks and / or co-located blocks in temporal reference images and flag the chosen candidate as the motion vector predictor. In addition to predicting motion vector values, the previously encoded / decoded image reference index can be predicted.The reference index is typically predicted from adjacent blocks and / or colocalized blocks in a temporal reference image. Differential coding of motion vectors is typically disabled across slice boundaries.
[0039] Block partitioning, for example, from CTU to CUs and even PUs, can be predicted.
[0040] In filter parameter prediction, the filtering parameters, for example, for adaptive sample shift, can be predicted.
[0041] Prediction approaches using image information from a previously encoded image may also be called inter-prediction methods, which may also be referred to as temporal prediction and motion compensation. Prediction approaches using image information within the same image may also be called intra-prediction methods.
[0042] Secondly, the prediction error, that is, the difference between the block Petition 870250103134, dated 11 / 11 / 2025, page 11 / 103 8 / 47 of the predicted pixels and the original pixel block are encoded. This can be done by transforming the difference into pixel values using a specified transform (e.g., Discrete Cosine Transform (DCT) or a variant thereof), quantizing the coefficients, and entropy-encoding the quantized coefficients. By varying the fidelity of the quantization process, the encoder can control the balance between the precision of the pixel representation (image quality) and the size of the resulting encoded video representation (broadcast bitrate file size).
[0043] In many video codecs, including H.264 / AVC and HEVC, motion information is indicated by motion vectors associated with each motion-compensated image block. Each of these motion vectors represents the displacement of the image block in the image to be encoded (in the encoder) or decoded (in the decoder) and the prediction source block in one of the previously encoded or decoded images (or graphic representations). H.264 / AVC and HEVC, like many other video compression standards, divide an image into a grid of rectangles, for each of which a similar block in one of the reference images is indicated for inter-prediction. The location of the prediction block is encoded as a motion vector that indicates the position of the prediction block relative to the block to be encoded.
[0044] In the Versatile Video Codec (VVC) under development, the following new encoding tools exist. (Further description will be added later in the final patent draft if necessary): • Intraprediction: - Intra 67 mode with wide-angle mode extension; - Block size and mode-dependent 4-lead interpolation filter; - Combination of intra-position-dependent prediction (PDPC); - Intra-component linear model (CCLM) prediction; - Multireference intra-line prediction; Petition 870250103134, dated 11 / 11 / 2025, page 12 / 103 9 / 47 - Intra-subpartitions; - Intraweighted prediction with matrix multiplication; • Interimage prediction: - Copy of block movement with spatial, temporal, historical, and pairwise averaged embedding candidates; - Inter-reference prediction of affine motion; - Prediction of temporal motion vector based on sub-block; Adaptive motion vector resolution; - 8x8 block-based motion compression for temporal motion prediction; - High-precision (1 / 16 pel) motion vector storage and motion compensation with an 8-lead interpolation filter for the luma component and a 4-lead interpolation filter for the chroma component; - Triangular partitions; Combined intra- and inter-combined prediction; - Incorporate with MVD (MMVD); - Symmetric MVD Coding; - Bidirectional optical flow; - Decoder side motion vector refinement; - Biprediction with CU level weighting; • Transformation, quantization, and encoding of coefficients: - Multiple primary transform selection with DCT2, DST7 and DCT8; - Secondary transform for low frequency zone; - Transformed from sub-block to interpredicted residue; - Dependent quantization with QP max increased from 51 to 63; - Transform coefficient encoding with signal data hiding; - Encoding of transform jump residue; Petition 870250103134, dated 11 / 11 / 2025, page 13 / 103 10 / 47 • Entropy Coding: - Arithmetic coding mechanism with adaptive dual-window probability update; • Loop filter: - Loop resizing; - Blocking filter with longer, stronger filter; - Adaptive sample bias; Adaptive Loop Filter; • Screen content encoding: - Current image reference with reference region restriction; • 360-degree video encoding: - Compensation for surrounding horizontal motion; • High-level syntax and parallel processing: - Reference image management with direct flagging of the reference image list; - Cutting groups with rectangular cutting groups.
[0045] Partitioning in VVC
[0046] In VVC, each image is divided into coding tree units (CTUs) similar to HEVC. An image can also be divided into slices, clippings, bricks, and subimages. A CTU can be divided into smaller CUs using a quaternary tree structure. Each CU can be divided using a quadruple tree and nested multi-type tree including ternary and binary splitting.
[0047] There are specific rules for inferring partitioning at image boundaries.
[0048] Redundant splitting patterns are not allowed in partitioning multiple nested types.
[0049] Cross-component linear model (CCLM) prediction
[0050] To reduce cross-component redundancy, a cross-component linear model (CCLM) prediction mode is used in VVC, for which chroma samples are predicted based on luma samples. Petition 870250103134, dated 11 / 11 / 2025, page 14 / 103 11 / 47 reconstructed from the same CU using a linear model as follows: pred_C (i,j)=aTec_L'(i,j)+ β (3-1) where predC(i,j) represents the predicted chroma samples in a CU and recL'(i, j) represents the subsampled reconstructed luma samples from the same CU.
[0051] The CCLM parameters (α and β) are derived with at most four neighboring chroma samples and their corresponding subsampled luma samples. Assuming the actual chroma block dimensions are WxH, then W' and H' are defined as: - W' = W, H' = H when LM mode is applied; - W' = W + H when the LM-A mode is applied; - H' = H + W when the LM-L mode is applied;
[0052] The neighboring positions above are denoted as S[ 0, -1 ]^S[ W' - 1, -1 ] and the neighboring positions to the left are denoted as S[ -1, 0 ]_S[ -1, H' - 1 ]. Then, the four samples are selected as: - S[W' / 4, -1 ], S[ 3 * W' / 4, -1 ], S[ -1, H' / 4 ], S[ -1, 3 * H' / 4 ] when LM mode is applied and both the above and left samples are available; - S[ W' / 8, -1 ], S[ 3 * W' / 8, -1 ], S[ 5 * W' / 8, -1 ], S[ 7 * W' / 8, -1 ] when LM-A mode is applied or only the above neighboring samples are available; - S[ -1, H' / 8 ], S[ -1, 3 * H' / 8 ], S[ -1, 5 * H' / 8 ], S[-1, 7 * H' / 8 ] when the LM-L mode is applied or only left neighbor samples are available.
[0053] The four neighboring luma samples at the selected positions are subsampled and compared four times to find two smaller values: x0A and x1A, and two larger values: x0B and x1B. Their corresponding chroma sample values are denoted as y0A, y1A, y0B, and y1B. Then, xA, xB, yA, and yB are derived as: Xa=(x°a + x1a +1)>>1; Xb=(x°b + x1b +1)>>1; Ya=(y°a + y1a +1)>>1; Yb=(y°b + y1b Petition 870250103134, dated 11 / 11 / 2025, page 15 / 103 12 / 47 +1)>>1 (3-1)
[0054] Finally, the linear model parameters a and β are obtained according to the following equations: the Xa~Xb (3-2) e = Yb-vXb(3-3)
[0055] FIG. 1 shows an example of the location of the samples to the left and above and of the sample of the current block involved in CCLM mode.
[0056] The division operation to calculate the parameter α is implemented with a lookup table. To reduce the memory required to store the table, the diff value (difference between maximum and minimum values) and the parameter α are expressed by an exponential notation. For example, diff is approximated with a significant part of 4 bits and an exponent. Consequently, the table for 1 / diff is reduced to 16 elements for 16 significant part values as follows: DivTable [ ] = { 0, 7, 6, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1.0} (3-4)
[0057] This would have the benefit of both reducing the complexity of the calculation and the amount of memory required to store the necessary tables.
[0058] Furthermore, the model above and the model on the left can be used to calculate the coefficients of the linear model together, and they can also be used alternatively in the other 2 LM modes, called LM_A and LM_L modes.
[0059] In LM_A mode, only the above model is used to calculate the linear model coefficients. To obtain more samples, the above model is extended to (W+H). In LM_L mode, only the left model is used to calculate the linear model coefficients. To obtain more samples, the left model is extended to (H+W).
[0060] For a non-square block, the above template is extended to W+W, the template on the left is extended to H+H.
[0061] To match chroma sample locations for Petition 870250103134, dated 11 / 11 / 2025, page 16 / 103 In 13 / 47 4:2:0 video sequences, two types of subsampling filters are applied to luma samples to achieve a 2:1 subsampling ratio in both horizontal and vertical directions. The subsampling filter selection is specified by an SPS level flag. The two subsampling filters are as follows, corresponding to “type-0” and “type-2” content, respectively. RecL'(í,j) = 'recL(2t — 1,2j — 1) + 2 · recL(2i — 1,2j — 1) + recL(2i + 1,2j — 1) +' recL(2i — 1, 2j) + 2 · recL(2i, 2j) + recL(2i + 1,2j) + 4 >> 3 (3-5) ΓrecL(2i, 2j — 1) + recL(2i — 1,2j) + 4 · recL(2i, 2j)lrecL (>.;) = | .^(2, + 1,2.) + (2i, 2j+ 1) + 4 P 3(3-6)
[0062] Note that only one luma line (general line storage in intra prediction) is used to produce the subsampled luma samples when the upper reference line is at the CTU limit.
[0063] This parameter computation is performed as part of the decoding process and is not merely an encoder fetch operation. As a result, no syntax is used to drive the α and β values to the decoder.
[0064] For intra-mode chroma encoding, a total of 8 intra modes are allowed for intra-mode chroma encoding. These modes include five traditional intra modes and three cross-component linear model modes (CCLM, LM_A, and LM_L). Chroma mode signaling and the derivation process are shown in Table 1 of FIG. 1B. Chroma mode encoding depends directly on the intra prediction mode of the corresponding luma block. Since the separate block partition structure for luma and chroma components is allowed in I slices, one chroma block can correspond to multiple luma blocks. Therefore, for DM Chroma mode, the intra prediction mode of the corresponding luma block that covers the central position of the current chroma block is directly inherited.
[0065] In Table 2 of FIG. 1C, the first binary indicates whether it is regular (0) or LM mode (1). If it is LM mode, then the next binary indicates whether it is Petition 870250103134, dated 11 / 11 / 2025, page 17 / 103 14 / 47 LM_CHROMA (0) or not. If it is not LM_CHROMA, the next binary 1 indicates whether it is LM_L (0) or LM_A (1). In this case, when sps_cclm_enabled_flag is 0, the first binary in the binarization table for the corresponding intra_chroma_pred_mode can be discarded before entropy encoding. Or, in other words, the first binary is inferred to be 0 and therefore not encoded. This simple binarization table is used for both cases of sps_cclm_enabled_flag equal to 0 and 1. The first two binaries in table 2 are context-encoded with their own context model, and the remaining binaries are bypass-encoded.
[0066] In addition, in order to reduce luma-chroma latency in dual-tree, when the 64x64 luma encoding tree node is partitioned with Unsplit (and ISPs are not used for the 64x64 CU) or QT, the chroma CUs in the 32x32 / 32x16 chroma encoding tree node are allowed to use CCLM as follows: - If the 32x32 chroma node is not split or is split by partitioned QT, all chroma CUs in the 32x32 node can use CCLM; - If the 32x32 chroma node is partitioned with Horizontal BT, and the 32x16 child node does not partition or uses Vertical BT partitioning, all chroma CUs in the 32x16 chroma node can use CCLM.
[0067] In all other split luma and chroma encoding tree conditions, CCLM is not allowed for chroma CU.
[0068] Multiple Model Logistics (MMLM)
[0069] The CCLM included in VVC is extended by adding three Multiple LM Model (MMLM) modes. In each MMLM mode, reconstructed neighboring samples are classified into two classes using a threshold that is the average of the reconstructed neighboring luma samples. The linear model of each class is derived using the Least Squares method (LMS). For the CCLM mode, the LMS method is also used to derive the linear model. FIG. 2 illustrates two luma-to-chroma models obtained for a luma threshold (Y) of 17. Each luma-to-chroma model has its own linear model parameters α and Petition 870250103134, dated 11 / 11 / 2025, page 18 / 103 15 / 47 β. As can be seen from the figure below, each luma-to-chroma model corresponds to a spatial segmentation of the content (that is, they correspond to different objects or textures in the scene).
[0070] Cross-Component Convolutional Model (CCCM)
[0071] An improved version of cross-component prediction, known as CCCM, uses a 2D filter kernel to derive the luma-to-chroma model. Filter coefficients are derived on the decoder side using a reconstructed set of chroma samples and input data. For filter coefficient derivation, colocalized reference sample areas (consisting of reconstructed luma and chroma samples) are defined for both luma and chroma as shown in FIG. 3, where the typically used 4:2:0 chroma subsampling has been applied. The reference sample area for a given block might be, for example, six lines above and to the left as shown in FIG. 3, but any number of reference lines (which can be implemented by either the encoder or the decoder) can be used.Generally, reference samples can contain any chroma and luma samples that have been reconstructed by both the encoder and the decoder. Once the reference samples are determined, the filter coefficients can be derived, for example, using different types of linear regression tools such as ordinary least squares estimation, orthogonal match search, optimized orthogonal match search, ridge regression, or absolute minimum selection and reduction operator.
[0072] The dimensions of the filter core can be, for example, 1x3 (1D vertical), 3x1 (1D horizontal), 3x3, 7x7 or any dimensions, and can be shaped (by selecting only a subset of all possible kernel locations) as a cross or a diamond (as shown in FIG. 4) or as any determined shape. When referring to samples within the filter kernel, the following notation is used: north (above), east (right), south (below), west (left) and center, as illustrated in FIG. 4 using the Petition 870250103134, dated 11 / 11 / 2025, page 19 / 103 16 / 47 letters N, E, S, W, C.
[0073] The general method of chroma sample reconstruction using convolution between a filter kernel obtained from the decoder side and an input dataset is referred to as the cross-component convolutional model (CCCM) herein. The following steps can be applied to perform a CCCM operation: 1. Define colocalized reference areas on luma and chroma components; 2. Subsample the luma samples to match the chroma grid (optional); 3. Scan the luma and chroma samples from the reference area and collect available statistics (such as autocorrelation matrix and cross-correlation vector) based on the filter format; 4. Solve for the filter coefficients by minimizing squared error (or any other metric) based on available statistics (such as the autocorrelation matrix and the cross-correlation vector); 5. Calculate a chroma block predicted by convolution of luma samples with reduced sampling using the filter kernel.
[0074] We will define the (possibly subsampled) luma samples as a 2D array Y(x,y) indexed using horizontal coordinate x and vertical coordinate y. We will also define the colocalized chroma samples as a 2D array C(x,y) and the filter kernel (i.e., coefficients) as a 3x3 array F(tJ). At a sample level, the convolution between Y and F is defined as: j=ii = 1 C(x,y) =ΣΣY(x + i,y + j) F(i + 1,j + 1). j=-1 i=-1
[0075] When other data terms are used, such as the non-linear square root term, the above convolution becomes, Petition 870250103134, dated 11 / 11 / 2025, p. 20 / 103 17 / 47 C(x,y) / j = 1 i=1 (Σ Σ \ j = -1i=-1 Y(x + i,y+j)· F(i + 1,j + 1) + F(0)jY(x,y), where F are filter coefficients that reside outside the filter kernel. 2D, but which were obtained as part of the system of linear equations that were used to solve the 2D filter coefficients in Step 4 above. Similarly, the bias term can be added to the convolution with, C(x,y) ( j=1 i=1 (ΣΣ \ j=-1 i=-1 Y(x + i,y+j)· F(i + 1,j + 1) + F(0) + F(1) ^Y(x,y)
[0076] Multireference intraline prediction (MRL)
[0077] Multireference intra-line prediction (MRL) uses more reference lines for intra-prediction. In FIG. 5, an example of 4 reference lines is depicted, where the samples of segments A and F are not sourced from reconstructed neighboring samples, but populated with the nearest samples from Segments B and E, respectively. HEVC intra-image prediction uses the nearest reference line (i.e., reference line 0). In MRL, 2 additional lines (reference line 1 and reference line 3) are used.
[0078] The selected reference line index (mrl_idx) is flagged and used to generate the intra predictor. For reference line idx, which is greater than 0, only include additional reference line modes in the MPM list and only flag the mpm index without a remaining mode. The reference line index is flagged before the intra prediction modes, and the Flat mode is excluded from the intra prediction modes if a non-zero reference line index is flagged.
[0079] MRL is disabled for the first row of blocks within a CTU to prevent the use of extended reference samples outside the current CTU row. Additionally, PDPC is disabled when an additional row is used. For MRL mode, DC value derivation in intra-DC prediction mode for indices Petition 870250103134, dated 11 / 11 / 2025, page 21 / 103 18 / 47 of non-zero reference lines is aligned with that of reference line index 0. MRL requires the storage of 3 neighboring luma reference lines with one CTU to generate predictions. The Cross Component Linear Model (CCLM) tool also requires 3 neighboring luma reference lines for its subsampling filters. The definition of MLR to use the same 3 lines is aligned with CCLM to reduce storage requirements for decoders.
[0080] Intra-subpartitions (ISP)
[0081] Intra subpartitions (ISPs) divide intrapredicted luma blocks vertically or horizontally into 2 or 4 subpartitions depending on the block size. For example, the minimum block size for ISPs is 4x8 (or 8x4). If the block size is greater than 4x8 (or 8x4), then the corresponding block is divided into 4 subpartitions. It has been observed that M x 128 ISP blocks (with M < 64) and 128 x N ISP blocks (with N < 64) could generate a potential problem with the 64 x 64 VDPU. For example, an M x 128 CU in the case of a simple tree has an M One CU has 128 TB of luma and two corresponding 64 TBs of chroma. If the CU uses ISP, then the luma TB will be divided into four M x 32 TBs (only horizontal division is possible), each smaller than a 64 x 64 block. However, in the current ISP design, chroma blocks are not divided. Therefore, both chroma components will be larger than a 32 x 32 block. Analogously, a similar situation could be created with a 128 x N CU using ISP. Consequently, these two cases are a problem for the 64 x 64 decoder line. For this reason, the sizes of CUs that can use ISP are restricted to a maximum of 64 x 64. All subpartitions satisfy the condition of having at least 16 samples.
[0082] Matrix Intraweighted Prediction (MIP)
[0083] Matrix weighted intraprediction (MIP) method is a newly added intraprediction technique in VVC. To predict the samples of a rectangular block of width W and height H, matrix weighted intraprediction (MIP) adopts a line of reconstructed neighboring boundary samples H to the left of Petition 870250103134, dated 11 / 11 / 2025, page 22 / 103 19 / 47 block and a line of W neighboring boundary samples reconstructed above the block as input. If the reconstructed samples are unavailable, they are generated as is done in conventional intra-prediction. The generation of the prediction signal is based on the following three steps, which are averaging, matrix vector multiplication, and linear interpolation as shown in FIG. 6.
[0084] Inter prediction in VVC
[0085] The list of candidates to incorporate may include the following: 1) Spatial MVP of spatially neighboring Cus; 2) Temporal MVP of colocalized Cus; 3) MVP based on historical data from a FIFO table; 4) Paired average MVP (using candidates already on the list); 5) Mvs zero.
[0086] The embedded mode width motion vector difference (MMVD) is for signaling MVDs and a resolution index after signaling the embedding candidate.
[0087] In symmetric MVD, movement information from list-1 is derived from movement information from list-0 in the case of biprediction.
[0088] In affine prediction, several motion vectors are indicated / signaled for different corners of a block, which are used to derive the sub-block motion vectors. In affine embedding, affine motion information of a block is generated based on the normal or affine motion information of neighboring blocks.
[0089] In sub-block temporal motion vector prediction, motion vectors of sub-blocks of the current block are predicted from appropriate sub-blocks in the reference frame that are indicated by the motion vector of a spatially neighboring block (if available).
[0090] In adaptive motion vector resolution (AMVR), MVD accuracy is signaled for each CU.
[0091] In Biprediction with weight at the CU level, an index indicated the weight values for the weighted average of two prediction blocks. Petition 870250103134, dated 11 / 11 / 2025, page 23 / 103 20 / 47
[0092] Bidirectional optical flow (BDOF) refines motion vectors in the case of biprediction. BDOF generates two prediction blocks using the signaled motion vectors. Thus, a motion refinement is calculated to minimize the error between the two prediction blocks using their gradient values. The final prediction blocks are refined using the motion refinement and gradient values.
[0093] Biprediction with CU level weighting (BCW) and weighted prediction (WP)
[0094] In HEVC, the biprediction signal is generated by weighting two prediction signals obtained from two different reference images and / or using two different motion vectors. In VVC, the biprediction mode is extended beyond simple averaging to allow weighted averaging of the two prediction signals. Pbipred = ((8 - w) * Po + w * P1 + 4) » 3
[0095] Five weights are allowed in weighted average biprediction, we {-2,3,4,5,10}. For each bipredicted CU, the weight w is determined in one of two ways: 1) for a non-embedding CU, the weight index is signaled after the motion vector difference; 2) for an embedding CU, the weight index is inferred from neighboring blocks based on the embedding candidate index. BCW is only applied to CUs with 256 or more luma samples (i.e., CU width times CU height is greater than or equal to 256). For low-delay images, all 5 weights are used. For non-low-delay images, only 3 weights (we{3,4,5}) are used. - In the encoder, fast search algorithms are applied to find the weight index without significantly increasing encoder complexity. These algorithms are summarized as follows. For further details, readers should refer to the VTM software and the JVET-L0646 document. When combined with AMVR, unequal weights are only conditionally checked for 1-pel and 4-pel motion vector accuracies if the current image is a low-resolution image. Petition 870250103134, dated 11 / 11 / 2025, page 24 / 103 21 / 47 delay; - When combined with Affine, Affine ME will be performed for unequal weights if and only if Affine mode is selected as the current best mode; - When the two reference images in biprediction are the same, unequal weights are only conditionally checked; - Non-equal weights are not sought when certain conditions are met, depending on the POC distance between the current image and its reference images, encoding QP, and the temporal level.
[0096] The BCW weight index is encoded using a context-encoded binary followed by offset-encoded binaries. The first context-encoded binary indicates whether equal weight is used; and if unequal weight is used, additional binaries are signaled using offset coding to indicate which unequal weight is used.
[0097] Weighted Prediction (WP) is an encoding tool supported by H.264 / AVC and HEVC standards for effectively encoding fading video content. Support for WP has also been added in the VVC standard. WP allows weighting parameters (weight and offset) to be signaled for each reference image in each of the L0 and L1 reference image lists. Thus, during motion compensation, the weight (or weights) and offset (or offsets) of the corresponding reference image (or images) are applied. WP and BCW are designed for different types of video content. In order to avoid interactions between WP and BCW, which would complicate VVC decoder design, if a CU uses WP, then the BCW weight index is not signaled, and is inferred as 4 (i.e., equal weight is applied). For an embedding CU, the weight index is inferred from neighboring blocks based on the embedding candidate index.This can be applied to both normal embedding mode and inherited affine embedding mode. For constructed affine embedding mode, affine movement information is constructed based on the information from... Petition 870250103134, dated 11 / 11 / 2025, page 25 / 103 22 / 47 movement of up to 3 blocks. The BCW index for a CU using the affine embedding mode is simply set equal to the BCW index of the first control point MV.
[0098] In VVC, CIIP and BCW cannot be applied together to a CU. When a CU is encoded with CIIP mode, the BCW index of the current CU is set to 2, for example, equal weight.
[0099] Combined inter- and intra-combined prediction (CIIP)
[00100] In VVC, when a CU is encoded in embedding mode, if the CU contains at least 64 luma samples (i.e., CU width times CU height equals or is greater than 64) and if both the CU width and CU height are less than 128 luma samples, an additional flag is set to indicate whether the combined inter / intra prediction mode (CIIP) is applied to the current CU. As the name suggests, CIIP prediction combines an inter prediction signal with an intra prediction signal. The inter prediction signal in CIIP mode is derived using the same inter prediction process applied to regular embedding mode; and the intra prediction signal is derived after the regular intra prediction process with the plan mode. Then, the inter- and intra-prediction signals are combined using weighted averaging, where the weight value is calculated depending on the coding modes of the upper and left neighboring blocks (depicted in FIG. 7) as follows: - If the top neighbor is available and is intracoded, then set isIntraTop to 1, otherwise set isIntraTop to 0; - If the left neighbor is available and intracoded, then set isIntraLeft to 1; otherwise, set isIntraLeft to 0. - If (isIntraLeft + isIntraTop) equals 2, then wt is set to 3; - Alternatively, if (isIntraLeft + isIntraTop) equals 1, then wt is set to 2; Alternatively, set wt to 1.
[00101] LIC is an inter-prediction technique for modeling local illumination variation between the current block and its prediction block as a function of that between Petition 870250103134, dated 11 / 11 / 2025, page 26 / 103 23 / 47 current block model and reference block model. The function parameters can be denoted by a scale α and an offset β, which forms a linear equation, i.e., α*ρ[χ]+β to compensate for illumination changes, where p[x] is a reference sample indicated by MV at a location x in the reference image. Since α and β can be derived based on the current block model and reference block model, no signaling overhead is required for them, except that a LIC flag is signaled for AMVP mode to indicate the use of LIC.
[00102] The local lighting compensation proposed in JVET-O0066 is used in ECM for inter-uniprediction CUs with the following modifications. • Intraneighbor samples can be used in deriving LIC parameters; • LIC is disabled for blocks with fewer than 32 luma samples; • For both affine and non-sub-block modes, LIC parameter derivation is performed based on model block samples corresponding to the current CU, instead of partial model block samples corresponding to the first upper left 16x16 unit; • Reference block model samples are generated using MC with the block MV without rounding it to integer-pel precision.
[00103] Handling of out-of-bounds (OOB) samples
[00104] In bidirectional motion compensation, out-of-bounds (OOB) prediction samples are discarded, and only non-OOB predictors, when available, are used to generate the final predictor. Specifically, assuming Pss_xij and Pos-y^ denote the position of a prediction sample in a current block, Mv_Xij and Mv_yij (x = 0.1) denote the MV of the current block; OssLeftBdry, posRightBdry, SssTopBdyy, and PosBottomBdry are the positions of four image boundaries. A prediction sample is considered OOB when at least one of the following conditions is met: (P ss_Xi,j + Mv_xl) > (PssRightBdry + half_pixel), (Pss_Xi,j + Mv_xLj) < (PssLeftBdry- half_pixel), Petition 870250103134, dated 11 / 11 / 2025, page 27 / 103 24 / 47 (P os_yu+ Mv_y%) > (P osBottomBdry+ half_pixel), (Pos_ytj + Mv_yfi) < (PosTopBdry- half_pixel) where half_pixel equals 8, representing the half-pel sample distance at a sample precision of 1 / 16-pel. After examining the OOB condition for each sample, the final prediction samples for a bidirectional block are generated as follows: If Ptf is OOB and P00 is not OOB >J Dfinal- DÜ '\j - 'j! so if ptf is not OOB and P00 is OOBl,J Dfinal- DOOF'Jij then p.final- (P0+ P00+ 1) >> 1. The OOB verification process is also applicable when BCW is enabled.
[00105] Finally, it is noted that this adaptive sample-only biprediction process applies to prediction units for which at least one reference block is first detected as partially or entirely out of bounds. Thus, a block-level OOB criterion is first checked. If both prediction blocks are non-OOB, then the usual biprediction occurs.
[00106] Loop filters
[00107] There are a total of three loop filters in VVC. In addition to the deblocking filter and SAO (the two loop filters in HEVC), the adaptive loop filter (ALF) is applied. The ALF comprises luma ALF, chroma ALF, and cross-component ALF (CC-ALF). The ALF filtering process is designed so that luma ALF, chroma ALF, and CC-ALF can be run in parallel. The order of the filtering process in VVC is deblocking filter, SAO, and ALF. The SAO in VVC is the same as in HEVC.
[00108] In VVC, an Adaptive Loop Filter (ALF) with block-based filter adaptation is applied. For the luma component, one of 25 filters is selected for each 4x4 block, based on the direction and activity of local gradients. Petition 870250103134, dated 11 / 11 / 2025, page 28 / 103 25 / 47
[00109] Two diamond filter formats (as shown in FIG. 8) are used. The 7x7 diamond format is applied to the luma component and the 5x5 diamond format is applied to the chroma components.
[00110] For the luma component, each 4x4 block is categorized into one of 25 classes. The classification index C is derived based on its directionality D and a quantized activity value 4, as follows: Λ C = 5D + A To calculate D and Â, the gradients of the horizontal, vertical, and two diagonal directions are first calculated using the Laplacian 1-D: í + 3j + 3 g» = Σ Σ νω,νωk=í-2 l=j-2 í+3j + 3= |2R(k, l) - R(k, l - 1) - R(k, l + 1)| g Σ Σ h· ή· k=í-2 l=j-2 í + 3j + 3 12R (k, l) — R (k — 1, l) — R (k + 1, l)| 9di= Σ Σ D1'.l- D1kJ = k=í-2l=j-3 í+3j + 3gd2= Σ Σ D2^,i, D2ki = k=í-2j=j-2 |2R (k, l) — R(k — 1, l — 1) — R (k + 1, l + 1)| 12R(k, l) — R(k — 1, l + 1) — R(k + 1, l — 1)| Where the indices i and j refer to the coordinates of the upper left sample within the 4x4 block and R(i,j) indicates a sample reconstructed at coordinate (i,D).
[00111] To reduce the complexity of block classification, the 1-D subsampled Laplacian calculation is applied. As shown in FIG. 9, the same subsampled positions are used for gradient calculation in all directions.
[00112] Then, D maximum and minimum values of the horizontal and vertical gradient directions are defined as: g^x= ^xíg^g^g^™ = min(gh,gv) The maximum and minimum values of the gradient in two diagonal directions are Petition 870250103134, dated 11 / 11 / 2025, p. 29 / 103 26 / 47 defined as: g& = max(gao,gai),g%ondi = min(gao,gai) To derive the value of directionality D, these values are compared with each other and with two thresholds t1 and t2: Step 1. If both gfâx < t1 · g^ and gg^ < t1 · g^nai are true, D is set to 0; Step 2. If g^ / g^ > ggdi / gSi, continue from Step 3, otherwise continue from Step 4; Step 3. If g^ > t2•gffn, D is set to 2; otherwise D is set to 1; Step 4. If g&^gA· D is set to 4; otherwise D is set to 3.
[00113] The value of activity A is calculated as: í+3j + 3A= Σ Σ (Vkj+ha k=Í-2l=j-2 A is further quantized for the range from 0 to 4 inclusive, and the quantized value is denoted as Λ.
[00114] For chroma components in an image, no classification method is applied.
[00115] Before filtering each 4x4 luma block, geometric transformations such as rotation or diagonal and vertical flip are applied to the filter coefficients f(k,l) and the corresponding filter clipping values c(k,l) depending on gradient values calculated for that block. This is equivalent to applying these transformations to the samples in the filter support region. The idea is to make different blocks to which ALF is applied more similar by aligning their directionality.
[00116] Three geometric transformations, including diagonal, vertical flip, and rotation, are introduced: Diagonal: f (k, l) = f(l,k), cD(k,l) = c(l,k), Petition 870250103134, dated 11 / 11 / 2025, page 30 / 103 27 / 47 Vertical flip: f(k, l) — f (k, K — l — 1), c^(k, l) — c(k, K — l — 1), Rotation: f (k, l) — f (K — l — 1, k), c^ (k, l) — c(K — l — 1, k), where K is the filter size and 0 <k,l<k — 1 são coordenadas de coeficientes, modo que a localização (0,0) está no canto esquerdo superior e (k 1, k 1) direito inferior. as transformações aplicadas aos coeficientes filtro f (k, l) valores corte c(k, dependendo gradiente calculados para aquele bloco. a relação entre transformação os quatro gradientes das direções é resumida na seguinte tabela.
[00117] On the decoder side, when ALF is enabled for a CTB, each sample R(i,j) within the CU is filtered, resulting in sample value R'(i,j~) as shown below: R'(i,j) — R(i,j) + ((ΣΣ k*01*0 f (k, l) x K(R(í + k, j + l) — R(i, j), c(k, l)) + 64 NO where f(k, l) denotes the decoded filter coefficients, K(x,y) is the cutoff function and c(k, l) denotes the decoded cutoff parameters. The variable kel varies between - | and ^ where L denotes the filter length.
[00118] The clipping function K(x,y) — min (y, max(—y, x)) corresponds to the function Clip3 (—y,y,x). The clipping operation introduces nonlinearity to make ALF more efficient by reducing the impact of neighboring sample values that are very different from the current sample value.
[00119] CC-ALF uses luma sample values to refine each chroma component by applying an adaptive linear filter to the luma channel and then using the output of this filtering operation for chroma refinement. FIG. 10 (a) provides a system-level diagram of the CC-ALF process in relation to the SAO, luma ALF and chroma ALF processes.
[00120] Filtering in CC-ALF is performed by applying a linear diamond-shaped filter (FIG. 10 (b)) to the luma channel. One filter is used for each chroma channel, and the operation is expressed as Petition 870250103134, dated 11 / 11 / 2025, page 31 / 103 28 / 47 ΔIι(χ,γ) = Σ Oo^eS; Io(xY+ Xo,yY+ yo')ci(Xo,yo') where (x,y) is the location of chroma component i that is refined, (xY,yY) is the luma location based on (x,y), Si is the filter support area in luma component, ci(x0,y0) represents the filter coefficients.
[00121] As shown in FIG. 10, the luma filter support is the colocalized region with the actual chroma sample after considering the spatial scaling factor between the luma and chroma planes.
[00122] In the VVC reference software, CC-ALF filter coefficients are computed by minimizing the mean squared error of each chroma channel relative to the original chroma content. To achieve this, the VTM algorithm uses a coefficient derivation process similar to one used for chroma ALF. Specifically, a correlation matrix is derived, and the coefficients are computed using a Cholesky decomposition solver in an attempt to minimize a mean squared error metric. In the filter design, a maximum of 8 CC-ALF filters can be designed and transmitted per image. The resulting filters are then indicated for each of the two chroma channels on a CTU basis.
[00123] Adaptive loop filters (such as ALF in VVC) perform luma and chroma filtering in parallel to decrease the mean squared error (MSE) between the reconstruction and the original samples. More specifically, in VVC, ALF first filters both luma and chroma in parallel, and subsequently also applies cross-component filtering (CC-ALF) to further enhance the chroma, see FIG. 10a. The filters are signaled at a coarse spatial granularity, meaning that the filters change at most at the CTU level.
[00124] CC-ALF in VVC uses luma samples before ALF as input and therefore neglects any improvement obtained from luma-ALF. Even if CC-ALF considers luma filtered with ALF as input, there would be little benefit since CC-ALF uses Wiener filters (which are indicated in Petition 870250103134, dated 11 / 11 / 2025, page 32 / 103 29 / 47 CTU level), to improve chroma, and at this scale, small changes to the Wiener filter tap input don't significantly alter the output (i.e., the filter coefficients are slightly different, but the output is basically the same).
[00125] Instead of more localized CTU-level filters (and independent of coding partitioning or prediction), luma-to-chroma filters are required to fully convert luma enhancements into chroma enhancements, but signaling of such filters is prohibited by the significant signaling cost.
[00126] In order to improve the use of ALF luma output to enhance chroma reconstruction, exemplary embodiments of the invention apply filters that can directly convert luma enhancements into chroma enhancements before chroma ALF or CC-ALF are applied. These filters need to be derived and applied locally in fine spatial granularity (i.e., distinct filters for each, for example, 4x4 block). According to exemplary embodiments of the invention, the convolutional cross-component model (CCCM) is used to map the enhanced luma onto an enhanced chroma without additional signaling. A variant of such a method is already described in [1] in which residual luma is mapped onto chroma correction using CCCM.
[00127] Before describing the exemplary embodiments as disclosed in the present document in detail, reference is made to FIG. 12 to illustrate a simplified block diagram of various electronic devices that are suitable for use in the practice of the exemplary embodiments of this invention.
[00128] FIG. 12 shows a block diagram of a possible and non-limiting exemplary system in which the exemplary embodiments can be practiced. In FIG. 12, a user equipment (UE) 10 is in wireless communication with a wireless network 1 or network 1 as in FIG. 12. The wireless network 1 or network 1 as in FIG. 12 may comprise a communication network such as a mobile network, for example, mobile network 1 or first mobile network as disclosed in the present document. Any reference in Petition 870250103134, dated 11 / 11 / 2025, page 33 / 103 30 / 47 of this document referring to a wireless network 1 as in FIG. 12 can be seen as a reference to any wireless network as disclosed in this document. Furthermore, the wireless network 1 as in FIG. 12 may also comprise wired features as may be required by a communication network. A UE is a typically wireless mobile device that can access a wireless network. The UE, for example, may be a mobile phone (or so-called cell phone) and / or a computer with a mobile terminal function. For example, the UE or mobile terminal may also be a portable, pocket-sized, handheld, computer-embedded, or vehicle-mounted mobile device and perform language signaling and / or data exchange with the RAN.
[00129] The UE 10 includes one or more DP 10A processors, one or more MEM 10B memories, and one or more TRANS 10D transceivers interconnected via one or more buses. Each of the one or more TRANS 10D transceivers includes a receiver and a transmitter. The one or more buses may be address, data, or control buses, and may include any interconnection mechanism, such as a series of lines on a motherboard or integrated circuit, optical fiber or other optical communication equipment, and the like. The one or more TRANS 10D transceivers may optionally be connected to one or more antennas for communication with NN 12 and ISM 13, respectively. The one or more MEM 10B memories include PROG 10C computer program code. The UE 10 communicates with NN 12 and / or ISM 13 via a wireless link 11 or 16.
[00130] NN 12 (NR / 5G Node B, an evolved NB or LTE device) is a network node such as a secondary master node base station (e.g., for NR or long-term LTE evolution) that communicates with devices such as ISM 13 and UE 10 of FIG. 12. NN 12 provides wireless devices such as UE 10 access to wireless network 1. NN 12 includes one or more DP 12A processors, one or more MEM 12B memories, and one or more TRANS 12D transceivers interconnected via one or more buses. According to exemplary embodiments, these TRANS 12D may include X2 and / or Xn interfaces for use Petition 870250103134, dated 11 / 11 / 2025, p. 34 / 103 31 / 47 in carrying out the exemplary embodiments. Each of the one or more TRANS 12D transceivers includes a receiver and a transmitter. The one or more TRANS 12D transceivers may optionally be connected to one or more antennas for communication via at least link 11 with the UE 10. One or more MEM 12B memories and the PROG 12C computer program code are configured to cause the NN 12, with one or more DP 12A processors, to perform one or more of the operations as described in this document. The NN 12 may communicate with another gNB or eNB, or a device such as the ISM 13 via link 16. Furthermore, link 11, link 16 and / or any other link may be wired or wireless or both and may implement, for example, an X2 or Xn interface. Furthermore, link 11 and / or link 16 may be through other network devices such as, but not limited to, an NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF device 14 as in FIG. 12.NN 12 can perform the functionalities of an MME (Mobility Management Entity) or SGW (Service Gateway), such as a User Plan Functionality and / or an Access Management functionality for LTE and similar functionality for 5G.
[00131] The ISM 13 may be for WiFi or Bluetooth or other wireless device associated with a mobility function device such as an AMF or SMF; furthermore, the SIM 13 may comprise an NR / 5G Node B or possibly an evolved NB, a base station such as a secondary master node base station (e.g., for NR or long-term LTE evolution) that communicates with devices such as the NN 12 and / or UE 10 and / or wireless network 1. The ISM 13 includes one or more DP 13A processors, one or more MEM 13B memories, one or more network interfaces, and one or more TRANS 13D transceivers interconnected via one or more buses. According to the exemplary embodiments, these ISM 13 network interfaces may include X2 and / or Xn interfaces for use in realizing the exemplary embodiments. Each of the one or more TRANS 13D transceivers includes a receiver and a transmitter that can optionally be connected to one or more antennas. Petition 870250103134, dated 11 / 11 / 2025, p. 35 / 103 32 / 47 One or more MEM 13B memories include PROG 13C computer program code. For example, one or more MEM 13B memories and PROG 13C computer program code are configured so that, with one or more DP 13A processors, the ISM 13 performs one or more of the operations as described in this document. The ISM 13 can communicate with another mobility function device and / or eNB such as the NN 12 and the UE 10 or any other device using, for example, link 11 or link 16 or another link. Link 16 as shown in FIG. 12 can be used for communication with NN12. These links can be wired or wireless or both and can implement, for example, an X2 or Xn interface. Furthermore, as stated above, link 11 and / or link 16 may be through other network devices such as, but not limited to, an NCE / MME / SGW device such as an NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14 of FIG. 12.
[00132] One or more of the buses of the device in FIG. 12 may be address, data, or control buses, and may include any interconnection mechanism, such as a series of lines on a motherboard or integrated circuit, optical fiber or other optical communication equipment, wireless channels, and the like. For example, one or more TRANS 12D, TRANS 13D, and / or TRANS 10D transceivers may be implemented as a remote radio head (RRH), with the other elements of NN 12 being physically located in a different location from the RRH, and these devices may include one or more buses that could be implemented in part as optical fiber cable to connect the other elements of NN 12 to an RRH.
[00133] Note that although FIG. 12 shows network nodes such as NN 12 and ISM 13, any of these nodes can incorporate or be incorporated into an eNodeB or eNB or gNB as for LTE and NR, and still be configurable to perform exemplary modes.
[00134] Furthermore, it is noted that the description in this document indicates that "cells" perform functions, but it should be clear that the gNB that forms the cell and / or a user equipment and / or device performs a management function. Petition 870250103134, dated 11 / 11 / 2025, page 36 / 103 33 / 47 mobility is what will perform the functions. Furthermore, the cell is part of a gNB, and there can be multiple cells per gNB.
[00135] Wireless network 1, or any network it may represent, may or may not include an NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14 which may include Network Control Element (NCE) functionality, MME (Mobility Management Entity) / SGW (Service Gateway) functionality, and / or Service Gateway (SGW) and / or MME (Mobility Management Entity) and / or SGW (Service Gateway) functionality, and / or User Data Management (UDM) functionality, and / or PCF (Policy Control) functionality, and / or Access and Mobility Management Function (AMF), and / or Session Management Function (SMF) functionality, and / or Location Management Function (LMF), and / or Authentication Server (AUSF) functionality and which provides connectivity to an additional network, such as a telephone network and / or a data communications network (e.g., the Internet),and is configured to perform any 5G and / or NR operations in addition to or instead of other standard operations at the time of this application. The NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14 is configurable to perform operations according to exemplary modes in any of LTE, NR, 5G and / or any standards-based communication technologies that are implemented or discussed at the time of this application. Furthermore, it is noted that operations according to exemplary modes, as performed by NN 12 and / or ISM 13, may also be performed on the NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14.
[00136] The NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14 includes one or more DP 14A processors, one or more MEM 14B memories, and one or more network interfaces (N / WI / F(s)), interconnected through one or more buses coupled to link 13 and / or link 16. According to the exemplary embodiments, these network interfaces may include X2 and / or Xn interfaces for use in realizing the exemplary embodiments. One or more MEM 14B memories include computer program code. Petition 870250103134, dated 11 / 11 / 2025, p. 37 / 103 34 / 47 PROG 14C. One or more MEM14B memories and the PROG 14C computer program code are configured to, with one or more DP 14A processors, cause the NCE / MME / SGW / UDM / PCF / AMF / SMF / LMF 14 to perform one or more operations that may be necessary to support operations according to the exemplary embodiments.
[00137] It is observed that NN 12 and / or ISM 13 and / or UE 10 can be configured (e.g. based on standards implementations etc.) to perform Location Management Function (LMF) functionality. The LMF functionality can be incorporated into any of these network devices or other devices associated with these devices. Furthermore, an LMF such as the MME / SGW / UDM / PCF / AMF / SMF / LMF 14 LMF of FIG. 12, as at least described below, can be co-located with UE 10 as to be separated from NN 12 and / or ISM 13 of FIG. 12 to perform operations according to exemplary embodiments as disclosed in this document.
[00138] Wireless Network 1 can implement network virtualization, which is the process of combining hardware and software network resources and network functionality into a single software-based administrative entity, a virtual network. Network virtualization involves platform virtualization, often combined with resource virtualization. Network virtualization is categorized as external, combining many networks, or parts of networks, into a virtual unit, or internal, providing network-like functionality for software containers in a single system. It should be noted that the virtualized entities resulting from network virtualization are still implemented, at some level, using hardware such as DP10, DP12A, DP13A and / or DP14A processors and MEM 10B, MEM 12B, MEM 13B and / or MEM 14B memories, and such virtualized entities also create technical effects.
[00139] Computer-readable memories MEM 12B, MEM 13B and MEM 14B can be of any type suitable for the local technical environment and can be implemented using any suitable data storage technology, such as semiconductor-based memory devices, flash memory, Petition 870250103134, dated 11 / 11 / 2025, page 38 / 103 35 / 47 Magnetic memory devices and systems, optical memory devices and systems, fixed memory, and removable memory. Computer-readable memories MEM 12B, MEM 13B, and MEM 14B may be means for performing storage functions. Processors DP10, DP12A, DP13A, and DP14A may be of any type suitable for the local technical environment and may include one or more general-purpose computers, special-purpose computers, microprocessors, digital signal processors (DSPs), and processors based on multi-core processor architecture, as non-limiting examples. Processors DP10, DP12A, DP13A, and DP14A may be means for performing functions such as UE 10, NN 12, ISM 13 control, and other functions as described herein.
[00140] In general, the various types of any of these devices may include, but are not limited to, mobile phones such as smartphones, tablets, personal digital assistants (PDAs) that have wireless communication capabilities, laptops that have wireless communication capabilities, image capture devices such as digital cameras that have wireless communication capabilities, gaming devices that have wireless communication capabilities, music storage and playback devices that have wireless communication capabilities, Internet devices that allow wireless Internet access and browsing, tablets with wireless communication capabilities, as well as portable units or terminals that incorporate combinations of such functions.
[00141] In addition, the various modalities of any of these devices can be used with a UE vehicle, a High Altitude Platform Station, or any other type of node associated with a terrestrial network or any drone-type radio or a radio in an aircraft or other aerial vehicle or a vessel that moves on water such as a boat.
[00142] Exemplary embodiments of the invention provide at least one enhanced ALF line that uses CCCM to locally map ALF-enhanced luma onto enhanced chroma. The output of the CCCM filtering stage is then, Petition 870250103134, dated 11 / 11 / 2025, p. 39 / 103 36 / 47 used as input for both ALF chroma and CC-ALF. Also, exemplary embodiments of the invention provide various embodiments to address more specific cases.
[00143] In VVC, ALF uses Wiener filters to reduce the MSE of luma and chroma reconstructions. The filter coefficients are selected from a fixed set of coefficients using a signed index or explicitly signed from the encoder to the decoder. In both cases, signaling is involved. A cross-component variant called CC-ALF improves chroma by applying a Wiener filter to the luma component in order to obtain a correction term for the chroma component, see FIG. 10. In all filter derivations related to ALF, the goal is (in the encoder) to minimize the error against the original luma and chroma.
[00144] The ALF line in VVC on the decoder is summarized in the following steps, 1a. Apply luma ALF to the reconstructed luma; 2a. Apply chroma ALF to the reconstructed chroma; 3a. Apply CC-ALF to the reconstructed luma (i.e., the input from Step 1a) to obtain a chroma correction; 4a. Add the output from Step 3a to the output from Step 2a.
[00145] In exemplary embodiments of this invention, an improved ALF line is introduced as shown in FIG. 11.
[00146] FIG. 11 shows an improved ALF line with chroma update based on CCCM.
[00147] In the illustrated embodiment, the luma input for CC-ALF is the luma stage output of ALF, but it can also be configured to be the luma stage output of SAO. Additionally, depending on the embodiment, the CCCM model derivation can be placed before the SAO stages. The optional input paths for the CCCM filtering stage are used when some of the output samples from the CCCM filtering stage are to be mixed with the output samples from SAO or some of the Petition 870250103134, dated 11 / 11 / 2025, page 40 / 103 37 / 47 CCCM filter output samples are to be exactly the SAO output samples. It should be understood that all CCCM stages illustrated can, if necessary, be replaced by any cross-component prediction tool such as CCLM, GL-CCCM, or any other cross-component prediction tool.
[00148] Most importantly, an additional filtering stage is inserted between the ALF luma and ALF chroma stages.
[00149] This filtering stage is based on the CCCM method and therefore requires no signaling and uses a different minimization objective than ALF.
[00150] In CCCM, the minimization goal is not the original chrominance, but the reconstructed chrominance and model derivation are also performed in the decoder. The following steps describe the improved line in the decoder, 1b. Obtain CCCM filters in high spatial granularity by using reconstructed luma and chroma as reference samples; 2b. Apply luma ALF to the reconstructed luma; 3b. Apply the CCCM filters from Step 1b using the output from Step 2b as input; 4b. Apply Chroma ALF to the output of Step 3b; 5b. Apply CC-ALF to a) the reconstructed luma or b) the output from Step 2b, to obtain a chroma correction; 6b. Add the output from Step 5b to the output from Step 4b.
[00151] The output of Step 2b is luma that has a higher quality than that used as input in Step 1b. When the higher quality luma is used as input in Step 3b, essentially according to the exemplary embodiments of the invention, a higher quality version of the chroma is obtained as output. The CCCM filtering retains the color space characteristics (obtained by the model in Step 1b), but converts luminance corrections (such as corrected edges / gradients or smoothed / sharpened textures) into a higher quality version of the chroma. Petition 870250103134, dated 11 / 11 / 2025, page 41 / 103 38 / 47
[00152] One of the main benefits of the enhanced ALF line is the granularity at which CCCM model derivation and filtering takes place. CCCM models are derived and applied to small blocks that can be independent of coding and prediction partitions. For example, said blocks can be 1x1, 2x2, 4x4, etc., and can have square or rectangular shapes. The blocks can also be overlapping or distinct. Compared to CC-ALF filters at the CTU level, the proposed method can track the cross-component model at high spatial accuracy and therefore also finely map detailed luma enhancements to chroma enhancements. This is contrary to CC-ALF, in which filter coefficients are changed only at the CTU level and only 8 different filters are available per image. With CCCM there can be thousands of filters, for example, one for each 8x8 block, without any additional signaling cost.
[00153] In the proposed improved line, CC-ALF can still be applied and still provides a benefit, since CC-ALF filters are derived in the encoder, minimizing the quadratic error with respect to the original samples.
[00154] In Step 5b above, depending on the mode, the input for CC-ALF can be the unfiltered reconstructed luma (i.e., Step 1b input) or the ALF-filtered luma (i.e., Step 2b output).
[00155] In the filtering stage in Step 3b, the CCCM model performance can be considered. During model derivation, the model's MSE is obtained, and if said MSE is considered high, the CCCM stage can be skipped to the specified block.
[00156] It should be understood that all CCCM stages mentioned can, if necessary, be replaced by any cross-component prediction tool such as CCLM, GL-CCCM, or any other cross-component prediction tool. For clarity, in the following embodiments, the state-of-the-art CCCM cross-component prediction tool is used as an example.
[00157] In one embodiment, the derivation and filtering of the CCCM model Petition 870250103134, dated 11 / 11 / 2025, page 42 / 103 39 / 47 can be made in any given granularity, for example, in 1x1, 2x2, 4x4, 8x8, 16x16 blocks, etc., or using rectangular blocks such as 4x8 or 8x4.
[00158] In one embodiment, the blocks in which the CCCM models are derived and applied may be distinct or overlapping.
[00159] In one embodiment, CCCM blocks can be independent of or dependent on coding or prediction partitioning. For example, instead of using very fine granularity, blocks can follow chroma or luma partitioning at some precision to speed up model derivation and filtering.
[00160] In one embodiment, during CCCM model derivation with MSE, the model can be examined in each block and, if the MSE exceeds a certain threshold, the CCCM stage can be skipped to the specified block.
[00161] In one embodiment, based on the previous embodiment, the MSE threshold can be fixed or signaled from the encoder to the decoder.
[00162] In one embodiment, based on the previous embodiment, the MSE threshold can be inferred based on underlying coding partitioning, luma sample values, or chroma sample values.
[00163] In one embodiment, the CCCM model can have any number of filter coefficients.
[00164] In one embodiment, the derivation and filtering of the CCCM model can be replaced by simplified variants such as CCLM.
[00165] In one embodiment, the derivation and filtering of the CCCM model can be replaced by more advanced variants such as those that consider gradient and location information (such as GL-CCCM).
[00166] In one embodiment, the CCCM model derivation stage can be placed before or after the SAO stages.
[00167] In one embodiment, the CCCM model derivation stage can be placed at any point before the luma ALF stage. Petition 870250103134, dated 11 / 11 / 2025, page 43 / 103 40 / 47
[00168] In one embodiment, the luma input in the CC-ALF stages can be the input to the ALF luma stage or the output of the ALF luma stage.
[00169] In one embodiment, the filter may consist of auxiliary information in order to guide the filter so that it enhances areas or samples with certain better characteristics. Examples of such auxiliary information are as follows: • The input to the filter may include residual information from the luma block; • The input for the filter can include luma block prediction information; • The input to the filter can include one or more of the luma block transform coefficients; • The input to the filter may include inputs and / or outputs from previous filtering operations. For example, the input and / or output of a deblocking filter, the input and / or output of a SAO filter, and the input and / or output of an ALF filter; • The input to the filter may include the difference between the inputs and outputs of previous filtering operations. For example, the input and output difference of a deblocking filter, the input and output difference of a SAO filter, the input and output difference of an ALF filter. A scaling operation may also be applied to the difference values before feeding them to the CCCM filter.
[00170] In one embodiment, the use of the CCCM stage can be signaled from encoder to decoder.
[00171] In one embodiment, the use of the filter can be signaled at different granularities, for example, signaling can be done for each filtering unit as 1x1, 2x2, etc. Alternatively, signaling can be done at a granularity different from the filtering granularity. For example, filter activation can be done at a coarse granularity, for each per CTU, and when the Petition 870250103134, dated 11 / 11 / 2025, page 44 / 103 41 / 47 filtering mode is enabled for that CTU, filtering can be done at a finer granularity (e.g., 1x1, 2x2, 4x4, ...). In this case, on the encoder side, the decision on whether to use the filter or not can be made for the entire CTU based on rate distortion optimization.
[00172] In one embodiment, different filter types and / or sizes such as CCCM, GL-CCCM, conventional CCLM or any other variant may be decided for each CTU, slice, subimage, image or sequence level and signaled accordingly.
[00173] In one embodiment, the CCCM stage can be applied to all chroma components or to a specified set of chroma components.
[00174] In one embodiment, the proposed ALF line can be used in any color space.
[00175] In one embodiment, an additional chroma-to-chroma CCCM stage can be inserted between the Cb ALF and Cr ALF stages, thus making the chroma ALF sequential as well.
[00176] In one embodiment, the CCCM model derivation and filtering stage may use subsampled and / or original luma samples.
[00177] In one embodiment, the filtering units may consist of non-overlapping blocks. In this case, the filter derivation process for all filtering units can be done in parallel. Furthermore, once the parameters of a certain unit are derived, then CCCM filtering can begin without much latency on the line.
[00178] FIG. 13 illustrates operations that can be performed by a device such as, but not limited to, a device (e.g., the UE 10 as in FIG. 12). As shown in step 1310 of FIG. 13, there is the obtaining for a sample set of at least one convolutional cross-component model filter. As shown in step 1320 of FIG. 13, where the sample set is reconstructed samples of two channels for an image. As shown in step 1330 of FIG. 13, there is the application of at least one filter to Petition 870250103134, dated 11 / 11 / 2025, page 45 / 103 42 / 47 reconstructed sample set of the first channel. As shown in step 1340 of FIG. 13, there is the application of at least one filter to the reconstructed sample set of the first channel. As shown in step 1350 of FIG. 13, there is the application of at least one convolutional cross-component model filter using as input an output of at least one filter to the reconstructed sample set of the first channel; as shown in step 1360 of FIG. 13, there is the application of at least one filter to the output of at least one convolutional cross-component model filter. As shown in step 1370 of FIG.13, there is the application of a cross-component filter to the reconstructed sample set of the first channel or to the output of at least one filter to the reconstructed sample set of the first channel, in order to obtain a correction for the output of at least one filter using as input the output of at least one convolutional cross-component model filter.
[00179] According to the exemplary embodiments as described in the paragraphs above, there is the addition of a cross-component filter output to the output of at least one filter using as input the output of at least one convolutional cross-component model filter.
[00180] According to the exemplary embodiments as described in the paragraphs above, where the convolutional cross-component model filter is derived and applied to the blocks that are not determined by any coding or prediction partitions.
[00181] According to the exemplary modalities as described in the paragraphs above, in which said blocks have a square or rectangular shape, and in which said blocks may be overlapping or distinct. In which the use of the convolutional cross-component model for each block is determined without additional signaling.
[00182] A non-transient computer-readable medium (MEM 12B as in FIG. 12) storing program code (PROG 10C as in FIG. 12), wherein the program code is executed by at least one processor (DP 10A and / or Petition 870250103134, dated 11 / 11 / 2025, page 46 / 103 43 / 47 DP 10F as in FIG. 12) to perform the operations as at least described in the paragraphs above.
[00183] According to an exemplary embodiment of the invention as described above, there is an apparatus comprising: there are means for adding (one or more 10D transceivers and / or one or more 13D transceivers; MEM 10B and / or MEM 13B; PROG 10C and / or PROG 13C; and DP 10A and / or DP 13A as in FIG. 12) an output of the cross-component filter to the output of at least one filter using as input the output of at least one convolutional cross-component model filter, wherein the convolutional cross-component model filter is derived and applied (one or more 10D transceivers and / or one or more 13D transceivers; MEM 10B and / or MEM 13B; PROG 10C and / or PROG 13C; and DP 10A and / or DP 13A as in FIG.12) for blocks that are not determined by any coding or prediction partitions, wherein said blocks have a square or rectangular shape, and wherein said blocks may be overlapping or distinct, wherein the use of the convolutional cross-component model for each block is determined (one or more 10D transceivers and / or one or more 13D transceivers; MEM 10B and / or MEM 13B; PROG 10C and / or PROG 13C; and DP 10A and / or DP 13A as in FIG. 12) without additional signaling.
[00184] In the exemplary aspect of the invention according to the paragraph above, wherein at least the means for adding, deriving, applying and determining comprise a non-transient computer-readable means [MEM 10B and / or MEM 13B as in FIG. 12] encoded with a computer program [PROG 10C and / or PRPG 13C as in FIG. 12] executable by at least one processor [DP 10A and / or DP 13A as in FIG. 12].
[00185] Furthermore, according to exemplary embodiments of the invention, there exists a set of circuits for performing operations according to exemplary embodiments of the invention as disclosed in this document. This set of circuits may include any type of circuit set, including content encoding circuit sets, circuit sets Petition 870250103134, dated 11 / 11 / 2025, p. 47 / 103 44 / 47 content decoding, processing circuitry, image generation circuitry, data analysis circuitry, etc.). Furthermore, this circuitry may include distinct circuit assemblies, application-specific integrated circuits (ASICs) and / or field-programmable gate array (FPGA) circuit assemblies, etc., as well as a processor specifically configured by software to perform the respective function, or dual-core processors with corresponding software and digital signal processors, etc.). Additionally, the necessary inputs and outputs of the circuitry are provided, the function performed by the circuitry, and the interconnection (perhaps through the inputs and outputs) of the circuitry with other components, which may include other circuit assemblies, in order to realize exemplary embodiments of the invention as described herein.
[00186] According to exemplary embodiments of the invention as disclosed in this application, the provided "circuit assembly" may include at least one or more or all of the following: (a) hardware-only circuit implementations (such as implementations that are only analog and / or digital circuit assemblies); (b) combinations of hardware and software circuits, such as (as applicable): (i) a combination of analog and / or digital hardware circuit(s) with software / firmware; and (ii) any portions of hardware processor(s) with software (including digital signal processor(s), software and memory(ies) that work together to enable a device, such as a mobile phone or server, to perform various functions, such as functions or operations according to exemplary embodiments of the invention as disclosed herein); and (c) hardware circuit(s) and / or processor(s), such as microprocessor(s) or a portion of microprocessor(s), that require software (e.g., firmware) for operation, but the software may not be present when not Petition 870250103134, dated 11 / 11 / 2025, page 48 / 103 45 / 47 required for operation.
[00187] According to exemplary embodiments of the invention, there exists a suitable set of circuits for carrying out at least innovative operations and according to exemplary embodiments of the invention as disclosed in this application, this "set of circuits", as it may be used herein, refers at least to the following: (a) hardware-only circuit implementations (such as analog-only and / or digital-only circuit implementations); and (b) combinations of circuits and software (and / or firmware), such as (as applicable): (i) a combination of processor(s) or (ii) portions of processor(s) / software (including digital signal processor(s), software and memory(ies) that work together to enable a device, such as a mobile phone or server, to perform various functions); and (c) circuits, such as microprocessor(s) or a portion of microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present.
[00188] This definition of "circuit assembly" applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term circuit assembly would also cover an implementation of merely a processor (or multiple processors) or portion of a processor and its respective software and / or firmware. The term circuit assembly would also cover, for example, and if applicable, a particular claim element, a baseband integrated circuit or application processor integrated circuit for a mobile phone or a similar integrated circuit in a server, a cellular network device or other network device.
[00189] In general, the various modalities can be implemented in hardware or special-purpose circuits, software, logic, or any combination thereof. For example, some aspects can be implemented in hardware, while other aspects can be Petition 870250103134, dated 11 / 11 / 2025, page 49 / 103 46 / 47 implemented in firmware or software that can be executed by a controller, microprocessor, or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flowcharts, or using some other pictorial representation, it is well understood that these blocks, devices, systems, techniques, or methods described herein may be implemented, as non-limiting examples, in special-purpose hardware, software, firmware, circuits or logic, general-purpose hardware or controller, or other computing devices, or some combination thereof.
[00190] Modalities of the inventions can be practiced in various components, such as integrated circuit modules. The design of integrated circuits is, to a large extent, a highly automated process. Complex and powerful software tools are available to convert a logic-level design into a semiconductor circuit design ready to be etched and formed onto a semiconductor substrate.
[00191] The term "exemplary" is used herein to mean that it serves as an example, instance, or illustration. Any embodiment described herein as exemplary should not necessarily be interpreted as preferential or advantageous in relation to other embodiments. All embodiments described in this Detailed Description are exemplary embodiments provided to enable those skilled in the art to produce or use the invention and not to limit the scope of the invention as defined by the claims.
[00192] The preceding description has provided, by way of non-limiting and illustrative examples, a complete and informative description of the best method and apparatus currently contemplated by the inventors for carrying out the invention. However, various modifications and adaptations may become apparent to those skilled in the relevant art, given the preceding description when read in conjunction with the accompanying drawings and the appended claims. Petition 870250103134, dated 11 / 11 / 2025, page 50 / 103 47 / 47 However, all such modifications and similar modifications of the exemplary embodiments of this invention will still fall within the scope of this invention.
[00193] It should be noted that the terms connected, coupled, or any variant thereof, mean a connection or coupling, whether direct or indirect, between two or more elements, and may encompass the presence of one or more intermediate elements between two elements that are connected or coupled together. The coupling or connection between the elements may be physical, logical, or a combination thereof. As employed in this document, two elements may be considered connected or coupled together by the use of one or more wires, cables, and / or printed electrical connections, as well as by the use of electromagnetic energy, such as electromagnetic energy having wavelengths in the radio frequency region, in the microwave region, and in the optical region (both visible and invisible), as various non-limiting and non-exhaustive examples.
[00194] Furthermore, some of the features of the preferred embodiments of this invention can be used advantageously without the corresponding use of other features. As such, the foregoing description should be considered merely illustrative of the principles of the invention, and not a limitation thereof. Petition 870250103134, dated 11 / 11 / 2025, page 51 / 103
Claims
1 / 3 CLAIMS 1. Apparatus characterized by comprising: at least one processor; and at least one non-transient memory that stores instructions, which, when executed by the at least one processor, cause the apparatus to at least: obtain for a set of samples at least one convolutional cross-component model filter, wherein the set of samples are reconstructed samples from two channels for an image; apply at least one filter to the reconstructed sample set of the first channel; apply the at least one convolutional cross-component model filter using as input an output of the at least one filter to the reconstructed sample set of the first channel; apply at least one filter to the output of the at least one convolutional cross-component model filter;and apply a cross-component filter to the reconstructed sample set of the first channel or to the output of at least one filter to the reconstructed sample set of the first channel, to obtain a correction for the output of at least one filter using as input the output of at least one convolutional cross-component model filter.
2. Device, according to claim 1, characterized in that at least one non-transient memory that stores instructions is executed by at least one processor to make the device: add an output of the cross-component filter to the output of at least one filter using as input the output of at least one convolutional cross-component model filter.
3. Apparatus, according to claim 1, characterized in that the convolutional cross-component model filter is derived and applied to blocks that are not determined by any coding or prediction partitions.
4. Apparatus, according to claim 3, characterized in that said blocks have a square or rectangular shape, and in that said blocks may be overlapping or distinct.
5. Apparatus, according to claim 3, characterized in that the use of the convolutional cross-component model for each block is determined without additional signaling.
6. A method characterized by comprising: obtaining for a set of samples at least one convolutional cross-component model filter, wherein the set of samples is reconstructed samples from two channels for an image; applying at least one filter to the reconstructed sample set of the first channel; applying at least one convolutional cross-component model filter using as input an output of at least one filter to the reconstructed sample set of the first channel; applying at least one filter to an output of at least one convolutional cross-component model filter; and applying a cross-component filter to the reconstructed sample set of the first channel or to an output of at least one filter to the reconstructed sample set of the first channel, to obtain a correction for an output of at least one filter using as input an output of at least one convolutional cross-component model filter.Petition 870250088069, dated 09 / 29 / 2025, page 8 / 225 3 / 3.
7. Apparatus, according to claim 6, characterized in that at least one non-transient memory that stores instructions is executed by at least one processor to make the apparatus: add an output of the cross-component filter to an output of at least one filter using as input an output of at least one convolutional cross-component model filter.
8. A method according to claim 6, characterized in that the convolutional cross-component model filter is derived and applied to blocks that are not determined by any coding or prediction partitions.
9. Method according to claim 8, characterized in that said blocks have a square or rectangular shape, and in that said blocks can be overlapping or distinct.
10. Method according to claim 8, characterized in that the use of the convolutional cross-component model for each block is determined without additional signaling. Petition 870250088069, dated 09 / 29 / 2025, p. 9 / 225