Image prediction method, encoder, decoder, and storage medium

By filtering initial prediction values to balance statistical characteristics, the image prediction method addresses the inefficiencies of conventional cross-component prediction techniques, improving prediction and encoding/decoding efficiency in video coding.

JP7692515B2Active Publication Date: 2025-06-13GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2024069934
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-03-25
Filing Date
2024-04-23
Publication Date
2025-06-13
Estimated Expiration
2039-10-12

AI Technical Summary

Technical Problem

Conventional cross-component prediction techniques in video coding, such as those used in H.266/VVC, do not comprehensively consider the differences in statistical characteristics of various image components, leading to low prediction efficiency.

Method used

An image prediction method that involves obtaining an initial prediction value using a prediction model and then performing filtering processing to achieve a target prediction value, thereby balancing the statistical characteristics of each image component after cross-component prediction.

Benefits of technology

This approach improves prediction efficiency by ensuring that the target prediction value is closer to the real value, reducing prediction residuals, decreasing bit rates in encoding and decoding, and enhancing the overall efficiency of video image encoding and decoding.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007692515000010
    Figure 0007692515000010
  • Figure 0007692515000011
    Figure 0007692515000011
  • Figure 0007692515000012
    Figure 0007692515000012
Patent Text Reader

Abstract

To provide an image prediction method, an encoder, a decoder, and a storage medium for not only improving prediction efficiency but also improving encoding and decoding efficiency of a video image by balancing statistical characteristics of respective image components after cross-component prediction.SOLUTION: An image prediction method includes: obtaining an initial prediction value of an image component to be predicted of a current block in an image by a prediction model; and performing filtering processing on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of video encoding and decoding, and more specifically, to an image prediction method, an encoder, a decoder, and a storage medium.

Background Art

[0002] In the latest video coding standard H.266 / Multipurpose Video Coding (VVC), the existence of cross-component prediction is permitted. CCLM prediction (cross-component linear model prediction) is one of the typical cross-component prediction techniques. Using the cross-component prediction technique, one component can be used to predict another component (or its residue), for example, the chroma component can be predicted through the luma component, or the luma component can be predicted through the chroma component, or the chroma component can also be predicted through the chroma component.

[0003] Since different components have different statistical characteristics, there are also differences in statistical characteristics depending on the components. However, when performing component prediction, the conventional cross-component prediction technique does not consider comprehensively, so the prediction efficiency is low.

Summary of the Invention

[0004] Embodiments of the present application provide an image prediction method, an encoder, a decoder, and a storage medium, which can not only improve the prediction efficiency by balancing the statistical characteristics of each image component after cross-component prediction, but also improve the efficiency of video image encoding and decoding.

[0005] The technical solutions of the embodiments of the present application are as follows.

[0006] In a first aspect, an embodiment of the present application provides an image prediction method used in an encoder or a decoder. This method includes obtaining an initial prediction value of an image component to be predicted for a current block in an image by a prediction model, and performing a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted for the current block.

[0007] In a second aspect, an embodiment of the present application provides an encoder. This encoder includes a first prediction unit and a first processing unit. The first prediction unit is used to obtain an initial prediction value of an image component to be predicted for a current block in an image by a prediction model. The first processing unit is used to perform a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted for the current block.

[0008] In a third aspect, an embodiment of the present application provides an encoder. This encoder includes a first memory and a first processor. The first memory is used to store a computer program executable by the first processor. The first processor is used to execute the method described in the first aspect by executing the computer program.

[0009] In a fourth aspect, an embodiment of the present application provides a decoder. This decoder includes a second prediction unit and a second processing unit. The second prediction unit is used to obtain an initial prediction value of an image component to be predicted for a current block in an image by a prediction model. The second processing unit is used to perform a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted for the current block.

[0010] In a fifth aspect, an embodiment of the present application provides a decoder. The decoder includes a second memory and a second processor. The second memory is used to store a computer program executable by the second processor. The second processor is used to execute the method described in the first aspect by executing the computer program.

[0011] In a sixth aspect, an embodiment of the present application provides a computer storage medium. An image prediction program is stored in the computer storage medium. When the image prediction program is executed by a first processor or a second processor, the method described in the first aspect is realized.

[0012] Embodiments of the present application provide an image prediction method, an encoder, a decoder, and a storage medium. First, an initial predicted value of an image component to be predicted for a current block in an image is obtained by a prediction model. Next, filtering processing is performed on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing filtering processing on the at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also since the obtained target predicted value is closer to a real value, the prediction residual of the image component becomes smaller, the bit rate transmitted in the encoding and decoding processes decreases, and at the same time, the encoding and decoding efficiency of the video image can be improved.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Embodiments for Carrying Out the Invention

[0014] To understand in detail the features and technical content of the embodiments of the present application, the technical solutions of the embodiments of the present application will be described in detail below with reference to the drawings. The attached drawings are only used for illustration and do not limit the present application.

[0015] In a video image, coding blocks are generally indicated by a first image component, a second image component, and a third image component. The first image component, the second image component, and the third image component are a luminance component, a blue chroma component, and a red chroma component, respectively. Specifically, the luminance component is generally indicated by the symbol Y, the blue chroma component is generally indicated by the symbol Cb or U, and the red chroma component is generally indicated by the symbol Cr or V. Thus, a video image can be represented in the YCbCr or YUV format.

[0016] In an embodiment of the present application, the first image component can be a luminance component, the second image component can be a blue chroma component, and the third image component can be a red chroma component, but the embodiments of the present application are not specifically limited thereto.

[0017] To further improve the symbolization and decoding performance, H.266 / VCC proposed the cross-component prediction technology of CCLM. With the cross-component prediction technology of CCLM, not only can the chrominance component be predicted through the luminance component (i.e., the second image component can be predicted through the first image component, or the third image component can be predicted through the first image component), but the luminance component can also be predicted through the chrominance component (i.e., the first image component can be predicted through the second image component, or the first image component can be predicted through the third image component). Furthermore, prediction between chrominance components can be realized (i.e., the third image component can be predicted through the second image component, or the second image component can be predicted through the third image component). In the embodiments of this application, hereinafter, predicting the second image component through the first image component will be taken as an example for explanation, but the technical solutions of the embodiments of this application can also be applied to the prediction of other image components.

[0018] FIG. 1 is a diagram showing the structure of a conventional cross-component prediction architecture related to the related art. As shown in FIG. 1, the second image component is predicted through the first image component (e.g., indicated by the Y component). When the YUV format adopted by the video image is the 4:2:0 format, the Y component and the U component have different resolutions. In this case, in order to reach the target resolution of the component to be predicted, it is necessary to perform downsampling on the Y component or perform upsampling on the U component so that prediction between components can be performed at the same resolution. In this example, the method of predicting the third image component (e.g., indicated by the V component) through the Y component is the same as that described above.

[0019] JPEG0007692515000001.jpg167161

[0020] In the conventional cross-component prediction architecture 10, when performing image component prediction, it does not comprehensively consider, for example, the differences in the statistical characteristics of each image component, so the prediction efficiency is low. To improve the prediction efficiency, the embodiments of the present application provide an image prediction method. First, an initial predicted value of the image component to be predicted for the current block in the image is obtained by a prediction model. Next, filtering processing is performed on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing filtering processing on this at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also the efficiency of video image encoding and decoding can be improved at the same time.

[0021] Hereinafter, each embodiment of the present application will be described in detail with reference to the drawings.

[0022] FIG. 2 is a block diagram showing the structure of a video encoding system according to an embodiment of the present application. As shown in FIG. 2, the video encoding system 20 includes a transform and quantization unit 201, an intra prediction unit 202, an intra prediction unit 203, a motion compensation unit 204, a motion estimation unit 205, an inverse transform and inverse quantization unit 206, a filter control analysis unit 207, a filtering unit 208, a coding unit 209, a decoded image buffer unit 210, and the like. The filtering unit 208 can implement deblocking (DBK) filtering and sample adaptive offset (SAO) filtering. The coding unit 209 can implement header information coding and context-based adaptive binary arithmetic coding (CABAC). For the input original video signal, one coding block can be obtained by dividing a coding tree unit (CTU). Next, for the residual sample information obtained by intra prediction or inter prediction, the transform and quantization unit 201 transforms the coding block, transforms the residual information from the sample domain to the transform domain, and quantizes the obtained transform coefficients to further reduce the bit rate. The intra prediction unit 202 and the intra prediction unit 203 are used to perform intra prediction on the coding block. Specifically, the intra prediction unit 202 and the intra prediction unit 203 are used to determine the intra prediction mode used to encode the coding block. The motion compensation unit 204 and the motion estimation unit 205 are used to perform inter prediction coding of the received coding block on one or more blocks in one or more reference frames to provide temporal prediction information. The motion estimation performed by the motion estimation unit 205 is a process of generating a motion vector, and the motion vector can estimate the motion of the coding block.The motion compensation unit 204 is used to perform motion compensation based on the motion vectors determined by the motion estimation unit 205. After determining the intra prediction mode, the intra prediction unit 203 is used to further provide the selected intra prediction data to the coding unit 209, and the motion estimation unit 205 is used to transmit the calculated motion vector data to the coding unit 209. The inverse transform and inverse quantization unit 206 is used to reconstruct the coding block. The residual block is reconstructed in the sample region, and the blocking artifacts of the reconstructed residual block are removed through the filter control analysis unit 207 and the filtering unit 208, and then the reconstructed residual block is added to one of the prediction blocks in the frame of the decoded image buffer unit 210 and used to generate the reconstructed video coding block. The coding unit 209 is used to encode various encoding parameters and the quantized transform coefficients. In the CABAC-based coding algorithm, the context content can be based on adjacent coding blocks, and information indicating the determined intra prediction mode can be encoded to output the bitstream of the video signal. The decoded image buffer unit 210 is used to store the reconstructed video coding block for prediction reference. As the coding of the video image progresses, new reconstructed coding blocks are continuously generated, and all these reconstructed coding blocks are stored in the decoded image buffer unit 210.

[0023] FIG. 3 is a block diagram showing the structure of a video decoding system according to an embodiment of the present application. As shown in FIG. 3, the video decoding system 30 includes a decoding unit 301, an inverse transform and inverse quantization unit 302, an intra prediction unit 303, a motion compensation unit 304, a filtering unit 305, a decoded image cache unit 306, and the like. The decoding unit 301 can realize header information decoding and CABAC decoding. The filtering unit 305 can realize DBK filtering and SAO filtering. After the input video signal is encoded (as shown in FIG. 2), a bitstream of the video signal is output. The bitstream is input to the video decoding system 30. First, the decoded transform coefficients are obtained via the decoding unit 301. The decoded transform coefficients are processed by the inverse transform and inverse quantization unit 302 to generate a residual block in the sample region. The intra prediction unit 303 can be used to generate prediction data for the current video coding block to be decoded based on the determined intra prediction mode and data from the previously decoded blocks in the current frame or picture. The motion compensation unit 304 is used to determine the prediction information for the video coding block to be decoded by analyzing the motion vector and other related syntax elements, and to generate a prediction block of the video coding block being decoded using the prediction information. By summing the residual block from the inverse transform and inverse quantization unit 302 and the corresponding prediction block generated by the intra prediction unit 303 or the motion compensation unit 304, a decoded video block is formed. The blocking artifacts of the decoded video block are removed via the filtering unit 305, and the quality of the video can be improved. Next, the decoded video block is stored in the decoded image cache unit 306.The decoded image cache unit 306 is used to store reference images for subsequent intra prediction or motion compensation, and is also used to output a video signal, that is, to obtain the restored original video signal.

[0024] Embodiments of the present application can be applied to the intra prediction unit 203 shown in FIG. 2 and the intra prediction unit 303 shown in FIG. 3. In other words, embodiments of the present application are applicable to both video encoding systems and video decoding systems, but embodiments of the present application are not limited in this regard.

[0025] Based on the example of the application scenario shown in FIG. 2 or FIG. 3, please refer to FIG. 4. FIG. 4 is a flowchart of an image prediction method according to an embodiment of the present application. This method can include the following content.

[0026] S401: Obtain an initial predicted value of the image component to be predicted for the current block in the image by a prediction model.

[0027] S402: Perform filtering processing on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block.

[0028] It should be noted that a video image can be divided into a plurality of image blocks, and each image block to be currently encoded can be called a coding block. Each coding block can include a first image component, a second image component, and a third image component. The current block is a coding block that attempts to perform prediction of the current first image component, second image component, or third image component in the video image.

[0029] The image prediction method according to the embodiments of the present application can be applied to a video encoding system or a video decoding system, or can be simultaneously applied to both a video encoding system and a video decoding system. It should also be noted that the embodiments of the present application do not specifically limit this.

[0030] In the embodiments of the present application, first, an initial predicted value of the image component to be predicted for the current block in the image is obtained by a prediction model. Next, a filtering process is performed on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing a filtering process on this at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also the efficiency of video image encoding and decoding can be improved simultaneously.

[0031] Furthermore, different image components have different statistical characteristics, and there are differences in the statistical characteristics of each image component. For example, the luminance component has rich texture characteristics, but the chrominance component tends to be more uniform and flat. In order to balance the statistical characteristics of each image component after cross-component prediction, at this time, it is necessary to perform characteristic statistics on at least one image component of the current block. Therefore, in some embodiments, for S402, before filtering the initial predicted value, the following content can further be included.

[0032] Perform characteristic statistics on at least one image component of the current block. The at least one image component includes the image component to be predicted and / or the image component to be referenced. The image component to be predicted and the image component to be referenced are different.

[0033] Based on the results of the characteristic statistics, obtain the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block. The image component to be predicted is the component predicted when constructing the prediction model, and the image component to be referred to is the component used for prediction when constructing the prediction model.

[0034] At least one image component of the current block can be the image component to be predicted, can also be the image component to be referred to, and can further be both the image component to be predicted and the image component to be referred to. Assuming that the prediction model realizes the prediction from the first image component to the second image component, the image component to be predicted is the second image component, and the image component to be referred to is the first image component. Or, assuming that the prediction model realizes the prediction from the first image component to the third image component, the image component to be predicted is the third image component, and the image component to be referred to is the first image component.

[0035] In this way, by performing characteristic statistics on at least one image component of the current block, based on the results of the characteristic statistics, the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block can be obtained.

[0036] Furthermore, in order to improve the prediction efficiency, filtering processing can be performed on the initial prediction value of the image component to be predicted for the current block based on the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block.

[0037] In some embodiments, performing processing on an initial predicted value corresponding to at least one image component based on a reference value of the at least one image component includes the following.

[0038] Based on a reference value of the image component to be predicted for the current block and / or a reference value of the image component to be referred to by the current block, filtering processing is performed on the initial predicted value using a preset processing mode. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and inverse quantization processing (also called de-quantization processing).

[0039] Based on the processed result, a target predicted value is obtained.

[0040] Based on the result of characteristic statistics of at least one image component of the current block, after obtaining a reference value of the image component to be predicted for the current block and / or a reference value of the image component to be referred to by the current block, filtering processing can be performed on the initial predicted value using a preset processing mode. Specifically, filtering processing can be performed on the initial predicted value using simple filtering, or filtering processing can be performed on the initial predicted value using grouping processing, or filtering processing can be performed on the initial predicted value using value correction processing, or filtering processing can be performed on the initial predicted value using quantization processing, or filtering processing can be performed on the initial predicted value using inverse quantization processing (also called de-quantization processing). The embodiments of the present application are not specifically limited.

[0041] Exemplarily, assuming that in order to improve the prediction efficiency, i.e., to improve the accuracy of the predicted value, the chroma component is predicted using the luminance component, when the preset processing mode employs value correction processing for the initial predicted value of the chroma component obtained by the prediction model, since the luminance component and the chroma component have different statistical characteristics, a deviation factor can be obtained based on the difference in the statistical characteristics of the two image components. Next, in order to balance the statistical characteristics of each image component after cross-component prediction, this deviation factor is used to perform value correction processing (for example, adding the initial predicted value and this deviation factor) on the initial predicted value to obtain the target predicted value of the chroma component. At this time, this target predicted value of the chroma component is closer to the real value of the chroma component. When the preset processing mode employs filtering processing, since the luminance component and the chroma component have different statistical characteristics, in order to balance the statistical characteristics of each image component after cross-component prediction, filtering processing is performed on the initial predicted value based on the difference in the statistical characteristics of the two image components to obtain the corresponding target predicted value of the chroma component. At this time, this target predicted value of the chroma component is closer to the real value of the chroma component. When the preset processing mode employs grouping processing, since the luminance component and the chroma component have different statistical characteristics, in order to balance the statistical characteristics of each image component after cross-component prediction, grouping processing is performed on the initial predicted value based on the difference in the statistical characteristics of the two image components, and the target predicted value of the chroma component can be obtained based on the initial predicted value after grouping processing. At this time, this target predicted value of the chroma component is closer to the real value of the chroma component.In the process of determining the initial prediction value, quantization processing and inverse quantization processing are involved for the luminance component and the chroma component. At the same time, since the luminance component and the chroma component have different statistical characteristics, based on the difference in the statistical characteristics of the two image components, there may be a difference in the quantization processing and the inverse quantization processing. In this case, when the preset processing mode adopts quantization processing, in order to balance the statistical characteristics of each image component after cross-component prediction, quantization processing is performed on the initial prediction value to obtain the corresponding target prediction value of the chroma component. At this time, the target prediction value of this chroma component is closer to the real value of the chroma component. When the preset processing mode adopts inverse quantization processing, in order to balance the statistical characteristics of each image component after cross-component prediction, inverse quantization processing is performed on the initial prediction value to obtain the corresponding target prediction value of the chroma component. At this time, the target prediction value of this chroma component is closer to the real value of the chroma component. In this way, the accuracy of the prediction value can be improved and the prediction efficiency can be improved.

[0042] Furthermore, in order to improve the prediction efficiency, based on the reference value of the image component to be predicted of the current block and / or the reference value of the image component to be referred to by the current block, filtering processing is performed on the initial prediction residual of the image component to be predicted of the current block.

[0043] In some embodiments, in S401, after obtaining the initial prediction value of the image component to be predicted of the current block in the image by the prediction model, this method can further include the following content.

[0044] Based on the initial prediction value, calculate the initial prediction residual of the image component to be predicted of the current block.

[0045] Based on the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block, filtering processing is performed on the initial prediction residual using a preset processing mode. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and dequantization processing.

[0046] Based on the processing result, a target prediction residual is obtained.

[0047] Furthermore, in some embodiments, in S402, obtaining the target predicted value of the image component to be predicted for the current block includes the following.

[0048] Based on the target prediction residual, calculate the target predicted value of the image component to be predicted for the current block.

[0049] It should be noted that the prediction residual is obtained from the difference between the predicted value of the image component and the real value of the image component. In order to improve the efficiency of video image encoding and decoding, it is necessary to make the prediction residual of the current block as small as possible.

[0050] In order to minimize the prediction residual as much as possible, on the one hand, after obtaining the initial prediction value of the image component to be predicted by the prediction model, filtering processing is performed on the initial prediction value by the preset processing mode to obtain the target prediction value of the image component to be predicted. Since the target prediction value of the image component to be predicted is as close as possible to the real value of the image component to be predicted, the prediction residual between the two is minimized as much as possible. On the other hand, after obtaining the initial prediction value of the image component to be predicted by the prediction model, the initial prediction residual of the image component to be predicted can also be determined based on the difference between the initial prediction value of the image component to be predicted and the real value of the image component to be predicted. Next, filtering processing is performed on the initial prediction residual in the preset processing mode to obtain the target prediction residual of the image component to be predicted, and based on the target prediction residual, the target prediction value of the image component to be predicted can be obtained. Since the target prediction residual is as small as possible, the target prediction value of the image component to be predicted is as close as possible to the real value of the image component to be predicted. That is, the embodiment of the present application is used not only to perform filtering processing on the initial prediction value of the image component to be predicted in the current block, but also to perform filtering processing on the initial prediction residual of the image component to be predicted in the current block. After the filtering processing, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved, which can not only improve the prediction efficiency, but also reduce the prediction residual of the image component to be predicted because the obtained target prediction value is closer to the real value. In this way, the bit rate transmitted in the encoding and decoding processes is reduced, and at the same time, the efficiency of video image encoding and decoding can be improved.

[0051] Furthermore, before obtaining the initial prediction value of the image component to be predicted for the current block, it is necessary to determine the model parameters of the prediction model in order to construct the prediction model. Therefore, in some embodiments, in S401, before obtaining the initial prediction value of the image component to be predicted for the current block in the image by the prediction model, this method may further include the following content.

[0052] Determine the reference value of the image component to be predicted for the current block. The reference value of the image component to be predicted for the current block is the image component value to be predicted of the adjacent samples of the current block.

[0053] Determine the reference value of the image component to be referred to for the current block. The image component to be referred to for the current block is different from the image component to be predicted, and the reference value of the image component to be referred to for the current block is the reference image component value of the adjacent samples of the current block.

[0054] Calculate the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block.

[0055] Construct the prediction model based on the calculated model parameters. The prediction model is used to perform cross-component prediction processing on the image component to be predicted for the current block based on the image component to be referred to for the current block.

[0056] In an embodiment of the present application, the prediction model can be a linear model, for example, it can be a cross-component prediction technique such as CCLM prediction. The prediction model can also be a non-linear model, for example, it is a cross-component prediction technique such as multiple model CCLM (MMLM) prediction, which consists of a plurality of linear models. The embodiment of the present application will be described by taking the case where the prediction model is a linear model as an example, but the prediction method according to the embodiment of the present application can also be applied to a non-linear model.

[0057] JPEG0007692515000002.jpg50161

[0058] The preset factor calculation model constructed by the least squares method will be described as an example. First, it is necessary to determine the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block. The reference value of the image component to be referred to for the current block can be the reference image component value of the adjacent samples of the current block (for example, the adjacent reference value of the first image component), and the reference value of the image component to be predicted for the current block can be the image component value to be predicted for the adjacent samples of the current block (for example, the adjacent reference value of the second image component). The model parameters of the prediction model are derived using the minimum regression error between the adjacent reference sample values of the first image component and the adjacent reference sample values of the second image component. Specifically, please refer to Equation (1).

Number

[0059] JPEG0007692515000004.jpg47161

Number

[0060] JPEG0007692515000006.jpg47160

[0061] Taking the preset factor calculation model constructed by the maximum value and the minimum value as an example, a method for deriving simplified model parameters is provided. Specifically, as shown in Equation (3), after searching for the maximum first image component adjacent reference value and the minimum first image component adjacent reference value, based on the principle of determining one line at two points, the model parameters of the prediction model can be derived.

Number

[0062] JPEG0007692515000008.jpg73160

[0063] After constructing the prediction model, image components can be predicted based on this prediction model. For example, based on the prediction model shown in Equation (2), the second image component can be predicted with the first image component. For example, the saturation component can be predicted with the luminance component to obtain an initial predicted value of the saturation component, and then, based on the reference value of the luminance component and / or the reference value of the saturation component, a preset processing mode can be used to perform filtering processing on the initial predicted value to obtain a target predicted value of the saturation component. It is also possible to predict the first image component with the second image component. For example, the luminance component can be predicted with the saturation component to obtain an initial predicted value of the luminance component, and then, based on the reference value of the luminance component and / or the reference value of the saturation component, a preset processing mode can be used to perform filtering processing on the initial predicted value to obtain a target predicted value of the luminance component. Furthermore, it is also possible to predict the third image component with the second image component. For example, the red saturation component can be predicted with the blue saturation component to obtain an initial predicted value of the red saturation component, and then, based on the reference value of the blue saturation component and / or the reference value of the red saturation component, a preset processing mode can be used to perform filtering processing on the initial predicted value to obtain a target predicted value of the red saturation component. In this way, the purpose of improving the prediction efficiency can be achieved.

[0064] Furthermore, since each image component has a different resolution, in order to conveniently construct the prediction model, it is necessary to adjust the resolution of the image component (including upsampling or downsampling the image component) so as to reach the target resolution.

[0065] Optionally, in some embodiments, before calculating the model parameters of the prediction model, this method further includes the following content.

[0066] If the resolution of the image component to be predicted for the current block is different from the resolution of the image component to be referenced for the current block, adjust the resolution of the image component to be referenced. The resolution adjustment includes upsampling adjustment or downsampling adjustment.

[0067] Based on the adjusted resolution of the image component to be referenced for the current block, update the reference value of the image component to be referenced for the current block to obtain the first reference value of the image component to be referenced for the current block. The adjusted resolution of the image component to be referenced is the same as the resolution of the image component to be predicted.

[0068] Optionally, in some embodiments, before calculating the model parameters of the prediction model, this method further includes the following.

[0069] If the resolution of the image component to be predicted for the current block is different from the resolution of the image component to be referenced for the current block, adjust the reference value of the image component to be referenced for the current block to obtain the first reference value of the image component to be referenced for the current block. The adjustment process includes one of downsampling filtering, upsampling filtering, cascaded filtering of downsampling filtering and low-pass filtering, and cascaded filtering of upsampling filtering and low-pass filtering.

[0070] When the resolution of the image component to be predicted for the current block is different from the resolution of the image component to be referenced for the current block, the resolution of the image component to be referenced can be adjusted so that the resolution of the adjusted image component to be referenced is the same as the resolution of the image component to be predicted. The resolution adjustment includes upsampling adjustment or downsampling adjustment. Based on the resolution of the adjusted image component to be referenced, the reference value of the image component to be referenced for the current block is updated to obtain the first reference value of the image component to be referenced for the current block.

[0071] Also, when the resolution of the image component to be predicted for the current block is different from the resolution of the image component to be referenced for the current block, an adjustment process can be performed on the reference value of the image component to be referenced for the current block to obtain the first reference value of the image component to be referenced for the current block. The adjustment process here includes one of downsampling filtering, upsampling filtering, cascaded filtering of downsampling filtering and low-pass filtering, and cascaded filtering of upsampling filtering and low-pass filtering.

[0072] Furthermore, in some embodiments, calculating the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referenced for the current block can include the following content.

[0073] Calculate the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the first reference value of the image component to be referenced for the current block.

[0074] When the resolution of the image component to be predicted by the current block is different from the resolution of the image component to be referred to by the current block, after obtaining the first reference value of the image component to be referred to by the updated current block, calculate the model parameters of the prediction model based on the reference value of the image component to be predicted by the current block and the first reference value of the image component to be referred to by the current block.

[0075] For example, assuming that the chroma component is predicted via the luminance component, the image component to be used is the luminance component, and the image component to be predicted is the chroma component. Since the luminance component and the chroma component have different resolutions, after obtaining the target resolution of the chroma component, because the resolution of the luminance component does not match the target resolution, it is necessary to adjust the resolution of the luminance component. For example, perform downsampling processing on the luminance component so that the adjusted resolution of the luminance component matches the target resolution. Conversely, when predicting the luminance component via the chroma component, after obtaining the target resolution of the luminance component, because the resolution of the chroma component does not match the target resolution, it is necessary to adjust the resolution of the chroma component. For example, perform upsampling processing on the chroma component so that the adjusted resolution of the chroma component matches the target resolution. Also, when predicting the red chroma component via the blue chroma component, after obtaining the target resolution of the red chroma component, since the resolution of the blue chroma component already matches the target resolution, it is not necessary to adjust the resolution of the blue chroma component. In this way, obtain the first reference value of the image component to be referred to by the updated current block based on the same resolution, build a prediction model, and predict the image component.

[0076] In addition, in order to improve the prediction efficiency, filtering processing can be performed on the initial prediction value of the image component to be predicted for the current block based on the reference value of the image component to be predicted for the current block.

[0077] In some embodiments, in S402, performing filtering processing on the initial prediction value can include the following.

[0078] Based on the reference value of the image component to be predicted for the current block, perform filtering processing on the initial prediction value to obtain a target prediction value. The reference value of the image component to be predicted for the current block can be obtained by performing characteristic statistics on the image component to be predicted for the image or the image component to be predicted for the current block.

[0079] Furthermore, performing filtering processing on the initial prediction value based on the reference value of the image component to be predicted for the current block can include the following.

[0080] Based on the reference value of the image component to be predicted for the current block, use a preset processing mode to perform filtering processing on the initial prediction value. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0081] In some embodiments, in S402, performing filtering processing on the initial prediction value includes the following.

[0082] Use the initial prediction value to calculate the initial prediction residual of the image component to be predicted for the current block.

[0083] Based on the reference value of the image component to be predicted for the current block, filtering processing is performed on the initial prediction residual using a preset processing mode. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0084] It should be noted that the preset processing mode can be, for example, filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, or adaptive filtering processing. Also, the reference value of the image component to be predicted for the current block can be obtained by performing characteristic statistics on the image component to be predicted for the image or the image component to be predicted for the current block. The characteristic statistics here are not limited to the image component to be predicted for the current block, and characteristic statistics can be performed on the image component to be predicted for the image to which the current block belongs.

[0085] In this way, for the process of filtering processing, after obtaining the initial prediction value of the image component to be predicted for the current block, based on the reference value of the image component to be predicted for the current block, filtering processing is performed on the initial prediction value using a preset processing mode to obtain a target prediction value. Or, using the initial prediction value, calculate the initial prediction residual of the image component to be predicted for the current block, and then based on the reference value of the image component to be predicted for the current block, perform filtering processing on the initial prediction residual using a preset processing mode to obtain a target prediction residual, and a target prediction value can also be obtained based on this target prediction residual.

[0086] To improve the prediction efficiency, filtering processing can be performed on the initial prediction value of the image component to be predicted for the current block based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block.

[0087] In some embodiments, in S401, before obtaining the initial prediction value of the image component to be predicted for the current block by the prediction model, this method can further include the following.

[0088] Perform characteristic statistics on the image component to be predicted for the image.

[0089] Based on the result of the characteristic statistics, determine the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block. The image component to be referred to and the image component to be predicted are different.

[0090] Calculate the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block.

[0091] Furthermore, in some embodiments, this method can further include the following.

[0092] Based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block, perform filtering processing on the initial prediction value using a preset processing mode. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0093] Different image components have different statistical characteristics, and there are differences in the statistical characteristics of each image component. For example, the luminance component has rich texture characteristics, while the chrominance component tends to be more uniform and flat. In order to balance the statistical characteristics of each image component after cross-component prediction, at this time, it is necessary to perform characteristic statistics on at least one image component of the current block. For example, perform characteristic statistics on the image component to be predicted in the image. Next, based on the results of the characteristic statistics, determine the reference value of the image component to be predicted in the current block and the reference value of the image component to be referenced in the current block. Based on the reference value of the image component to be predicted in the current block and the reference value of the image component to be referenced in the current block, not only can the model parameters of the prediction model be calculated to build the prediction model, but also filtering processing can be performed on the initial prediction value to balance the statistical characteristics of each image component after cross-component prediction, so the prediction efficiency can be improved.

[0094] Exemplarily, FIG. 5 is a schematic diagram showing the structure of an improved cross-component prediction architecture according to an embodiment of the present application. As shown in FIG. 5, based on the conventional cross-component prediction architecture 10 shown in FIG. 1, the improved cross-component prediction architecture 50 can further include a processing unit 510. The processing unit 510 is mainly used to perform related processing on the prediction value obtained by the cross-component prediction unit 160 in order to obtain a more accurate target prediction value.

[0095] JPEG0007692515000009.jpg107161

[0096] In an embodiment of the present application, when the image prediction method is applied to an encoder, after obtaining a target prediction value, a prediction residual can be determined based on the difference between the target prediction value and a real value, and the prediction residual can be written into a bitstream. At the same time, based on the reference value of the image component to be predicted of the current block and the reference value of the image component to be referred to by the current block, the model parameters of the prediction model can be calculated, and the obtained model parameters can also be written into the bitstream. This bitstream is transmitted from the encoder to the decoder. Conversely, when the image prediction method is applied to a decoder, the bitstream can be analyzed to obtain the prediction residual, and the bitstream can also be analyzed to obtain the model parameters of the prediction model to construct the prediction model. In this way, in the decoder, the initial prediction value of the image component to be predicted of the current block can still be obtained by the prediction model, and a filtering process can be performed on the initial prediction value to obtain the target prediction value of the image component to be predicted of the current block.

[0097] This embodiment provides an image prediction method. An initial prediction value of an image component to be predicted of a current block in an image is obtained by a prediction model. A filtering process is performed on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block. In this way, after predicting at least one image component of the current block, by continuously performing a filtering process on the at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also since the obtained target prediction value is closer to the real value, the prediction residual of the image component becomes smaller, the bit rate transmitted in encoding and decoding is reduced, and at the same time, the efficiency of encoding and decoding of video images can also be improved.

[0098] Based on the same inventive concept as the above-described embodiment, referring to FIG. 6, FIG. 6 is a schematic diagram showing the structure of an encoder 60 according to an embodiment of the present application. The encoder 60 can include a first prediction unit 601 and a first processing unit 602.

[0099] The first prediction unit 601 is used to obtain an initial predicted value of an image component to be predicted for the current block in the image by means of a prediction model.

[0100] The first processing unit 602 is used to perform a filtering process on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block.

[0101] In the above-described embodiment, referring to FIG. 6, the encoder 60 can further include a first statistical unit 603 and a first acquisition unit 604.

[0102] The first statistical unit 603 is used to perform characteristic statistics on at least one image component of the current block. The at least one image component includes an image component to be predicted and / or an image component to be referred to, and the image component to be predicted and the image component to be referred to are different.

[0103] The first acquisition unit 604 is used to obtain a reference value of the image component to be predicted for the current block and / or a reference value of the image component to be referred to for the current block based on the result of the characteristic statistics. The image component to be predicted is the component predicted when constructing the prediction model, and the image component to be referred to is the component used for prediction when constructing the prediction model.

[0104] In the above embodiment, the first processing unit 602 is used to perform filtering processing on the initial prediction value by using a preset processing mode based on the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and dequantization processing.

[0105] The first acquisition unit 604 is used to acquire a target prediction value based on the processing result.

[0106] In the above embodiment, referring to FIG. 6, the encoder 60 may further include a calculation unit 605 used to calculate an initial prediction residual of the image component to be predicted for the current block based on the initial prediction value.

[0107] The first processing unit 602 is used to perform filtering processing on the initial prediction residual by using a preset processing mode based on the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referred to by the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and dequantization processing.

[0108] The first acquisition unit 604 is used to acquire a target prediction residual based on the processing result.

[0109] In the above embodiment, the calculation unit 605 is used to calculate a target prediction value of the image component to be predicted for the current block based on the target prediction residual.

[0110] In the above embodiment, referring to FIG. 6, the encoder 60 may further include a first determination unit 606 and a first construction unit 607.

[0111] The first determination unit 606 is used to determine the reference value of the image component to be predicted for the current block. The reference value of the image component to be predicted for the current block is the image component value to be predicted for the adjacent samples of the current block. The first determination unit 606 is also used to determine the reference value of the image component to be referred to for the current block. The image component to be referred to for the current block is different from the image component to be predicted for the current block, and the reference value of the image component to be referred to for the current block is the reference image component value of the adjacent samples of the current block.

[0112] The calculation unit 605 is further used to calculate the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block.

[0113] The first construction unit 607 is used to construct a prediction model based on the calculated model parameters. The prediction model is used to perform cross-component prediction processing on the image component to be predicted for the current block based on the image component to be referred to for the current block.

[0114] In the above embodiment, referring to FIG. 6, the encoder 60 can further include a first adjustment unit 608. The first adjustment unit 608 is used to adjust the resolution of the image component to be referred to by the current block when the resolution of the image component to be predicted by the current block is different from the resolution of the image component to be referred to by the current block. The resolution adjustment includes upsampling adjustment and downsampling adjustment. The first adjustment unit 608 is also used to update the reference value of the image component to be referred to by the current block based on the resolution of the adjusted image component to be referred to, so as to obtain the first reference value of the image component to be referred to by the current block. The resolution of the adjusted image component to be referred to is the same as the resolution of the image component to be predicted.

[0115] In the above embodiment, when the resolution of the image component to be predicted by the current block is different from the resolution of the image component to be referred to by the current block, the first adjustment unit 608 is also used to perform an adjustment process on the reference value of the image component to be referred to by the current block to obtain the first reference value of the image component to be referred to by the current block. The adjustment process includes one of downsampling filtering, upsampling filtering, cascaded filtering of downsampling filtering and low-pass filtering, and cascaded filtering of upsampling filtering and low-pass filtering.

[0116] In the above embodiment, the calculation unit 605 is also used to calculate the model parameters of the prediction model based on the reference value of the image component to be predicted by the current block and the first reference value of the image component to be referred to by the current block.

[0117] In the above embodiment, the first processing unit 602 is further used to perform filtering processing on the initial prediction value based on the reference value of the image component to be predicted in the current block, so as to obtain the target prediction value. The reference value of the image component to be predicted in the current block is obtained by performing characteristic statistics on the image component to be predicted in the image or the image component to be predicted in the current block.

[0118] In the above embodiment, the first processing unit 602 is further used to perform filtering processing on the initial prediction value by using the preset processing mode based on the reference value of the image component to be predicted in the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0119] In the above embodiment, the calculation unit 605 is further used to calculate the initial prediction residual of the image component to be predicted in the current block by using the initial prediction value.

[0120] The first processing unit 602 is further used to perform filtering processing on the initial prediction residual by using the preset processing mode based on the reference value of the image component to be predicted in the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0121] In the above embodiment, the first statistical unit 603 is further used to perform characteristic statistics on the image component to be predicted in the image.

[0122] The first determination unit 606 is further used to determine the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block based on the results of the characteristic statistics. The image component to be referred to is different from the image component to be predicted.

[0123] The calculation unit 605 is further used to calculate the model parameters of the prediction model based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block.

[0124] In the above embodiment, the first processing unit 602 is further used to perform filtering processing on the initial prediction value using the preset processing mode based on the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0125] In the embodiments of the present application, it can be understood that the "unit" can be a part of a circuit, a part of a processor, a part of a program, software, etc., and may or may not be a module. Furthermore, various components of the embodiments of the present application can be integrated into one processing unit, or each unit can physically exist independently, or two or more units can be integrated into one unit. The above integrated unit can be realized in the form of a hardware or software function module.

[0126] When the integrated unit is realized as a software functional unit and sold or used as an independent product, it may be stored in a computer-readable recording medium. According to this understanding, for the technical solution of this application, the essential part, or the part that can contribute to the prior art, or all or part of the technical solution, can be expressed as a software product. This computer software product is stored in a storage medium and contains a plurality of commands for causing a computer (which may be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the process of the method according to this embodiment. The storage medium includes various media that can store program codes, such as a USB (Universal Serial Bus) flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0127] Therefore, the embodiments of this application provide a computer storage medium used for storing an image prediction program. When the image prediction program is executed by at least one processor, the method described in the above embodiment is executed.

[0128] Based on the above-described configuration of the encoder 60 and the computer storage medium, referring to FIG. 7, FIG. 7 is a diagram showing the specific hardware structure of the encoder 60 according to the embodiment of this application. The encoder 60 can include a first communication interface 701, a first memory 702, and a first processor 703. Various building elements are coupled together via a first bus system 704. The first bus system 704 is used to realize the connection and communication between these components. The first bus system 704 further includes a power bus, a control bus, and a status signal bus in addition to the data bus. However, for clarity of explanation, in FIG. 7, the various buses are marked as the first bus system 704.

[0129] The first communication interface 701 is used to transmit and receive signals in the process of transmitting and receiving information with other external network elements.

[0130] The first memory 702 is used to store computer programs executable by the first processor 703.

[0131] When executing a computer program, the first processor 703 obtains an initial predicted value of an image component to be predicted for the current block in the image by means of a prediction model, and performs filtering processing on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block.

[0132] The first memory 702 of the embodiment of the present application can be a volatile memory or a non-volatile memory, or can include both a volatile memory and a non-volatile memory. The non-volatile memory can be a Read-Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable Programmable Read-Only Memory (EPROM), an Electrically Erasable Programmable Read-Only Memory (EEPROM), or a Flash Memory. The volatile memory can be a Random Access Memory (RAM) that functions as an external high-speed cache. By way of example but not limitation, various types of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), Synch-link Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM).The first memory 702 of the systems and methods described herein can include, but is not limited to, these and any other suitable types of memory.

[0133] The first processor 703 of the embodiments of the present application can be an integrated circuit chip having signal processing capabilities. In the implementation process, each step of the method embodiments described above can be completed by an integrated logic circuit in the form of hardware of the first processor 703 or instructions in the form of software. The first processor 703 described above can be a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. The processor can implement or execute the methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of the present application can be directly executed and completed by a hardware decoding processor, or can be executed and completed by a combination of hardware and software modules in the decoding processor. The software module can be located in a mature storage medium in the art such as random access memory, flash memory, read-only memory, programmable read-only memory, or electrically erasable programmable memory, register, etc. The storage medium is in the first memory 702. The first processor 703 reads the information in the first memory 702 and completes the steps of the method described above together with the hardware of the processor.

[0134] It can be understood that the embodiments described in this application can be implemented by hardware, software, firmware, middleware, microcode, or a combination thereof. When implemented by hardware, the processing unit can be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processing (DSP), DSP devices, Programmable Logic Devices (PLDs), Field-Programmable Gate Arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units used to execute the functions described in this application, or a combination thereof. When implemented by software, the technology described in this application can be implemented by modules (e.g., procedures, functions, etc.) for executing the functions described in this application. The software code is stored in memory and executed by a processor. The memory can be implemented inside or outside the processor.

[0135] Optionally, as another embodiment, when executing a computer program, the first processor 703 is used to execute the method according to any one of the above embodiments.

[0136] Embodiments of the present application provide an encoder including a first prediction unit and a first processing unit. The first prediction unit is used to obtain an initial predicted value of an image component to be predicted for a current block in an image by a prediction model. The first processing unit is used to perform a filtering process on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing a filtering process on the at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only the prediction efficiency is improved, but also since the obtained target predicted value is closer to a real value, the prediction residual of the image component becomes smaller, the bit rate transmitted in encoding and decoding is reduced, and at the same time, the efficiency of encoding and decoding of video images can be improved.

[0137] Based on the same inventive concept as the above-described embodiments, referring to FIG. 8, FIG. 8 is a schematic diagram showing the structure of a decoder 80 according to an embodiment of the present application. The decoder 80 can include a second prediction unit 801 and a second processing unit 802.

[0138] The second prediction unit 801 is used to obtain an initial predicted value of an image component to be predicted for a current block in an image by a prediction model.

[0139] The second processing unit 802 is used to perform a filtering process on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block.

[0140] In the above embodiment, referring to FIG. 8, the decoder 80 can further include a second statistical unit 803 and a second acquisition unit 804.

[0141] The second statistical unit 803 is used to perform characteristic statistics on at least one image component of the current block. The at least one image component includes the image component to be predicted and / or the image component to be referred to, and the image component to be predicted is different from the image component to be referred to.

[0142] The second acquisition unit 804 is used to acquire the reference value of the image component to be predicted of the current block and / or the reference value of the image component to be referred to of the current block based on the result of the characteristic statistics. The image component to be predicted is the component predicted when building the prediction model, and the image component to be referred to is the component used for prediction when building the prediction model.

[0143] In the above embodiment, the second processing unit 802 is used to perform filtering processing on the initial prediction value using the preset processing mode based on the reference value of the image component to be predicted of the current block and / or the reference value of the image component to be referred to of the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and non-quantization processing.

[0144] The second acquisition unit 804 is used to acquire the target prediction value based on the processing result.

[0145] In the above embodiment, referring to FIG. 8, the decoder 80 can further include an analysis unit 805 used to analyze the bitstream and acquire the initial prediction residual of the image component to be predicted of the current block.

[0146] The second processing unit 802 is used to perform filtering processing on the initial prediction residual using a preset processing mode based on the reference value of the image component to be predicted for the current block and / or the reference value of the image component to be referenced by the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, and non-quantization processing.

[0147] The second acquisition unit 804 is used to acquire a target prediction residual based on the processing result.

[0148] In the above embodiment, referring to FIG. 8, the decoder 80 may further include a second construction unit 806.

[0149] The analysis unit 805 is further used to analyze the bitstream to obtain the model parameters of the prediction model.

[0150] The second construction unit 806 is used to construct a prediction model based on the analyzed model parameters. The prediction model is used to perform cross-component prediction processing on the image component to be predicted for the current block based on the image component to be referenced by the current block.

[0151] In the above embodiment, referring to FIG. 8, the decoder 80 may further include a second adjustment unit 807. The second adjustment unit 807 is used to perform resolution adjustment on the resolution of the image component to be referred to by the current block when the resolution of the image component to be predicted by the current block is different from the resolution of the image component to be referred to by the current block. The second adjustment unit 807 is also used to update the reference value of the image component to be referred to by the current block based on the resolution of the adjusted image component to be referred to, so as to obtain the first reference value of the image component to be referred to by the current block. The resolution adjustment includes upsampling adjustment and downsampling adjustment. The resolution of the adjusted image component to be referred to is the same as the resolution of the image component to be predicted.

[0152] In the above embodiment, when the resolution of the image component to be predicted by the current block is different from the resolution of the image component to be referred to by the current block, the second adjustment unit 807 is further used to perform adjustment processing on the reference value of the image component to be referred to by the current block, so as to obtain the first reference value of the image component to be referred to by the current block. The adjustment processing includes one of downsampling filtering, upsampling filtering, cascaded filtering of downsampling filtering and low-pass filtering, and cascaded filtering of upsampling filtering and low-pass filtering.

[0153] In the above embodiment, the second processing unit 802 is further used to perform filtering processing on the initial prediction value based on the reference value of the image component to be predicted by the current block, so as to obtain the target prediction value. The reference value of the image component to be predicted by the current block is obtained by performing characteristic statistics on the image component to be predicted by the image or the image component to be predicted by the current block.

[0154] In the above embodiment, the second processing unit 802 is further used to perform filtering processing on the initial prediction value by using a preset processing mode based on the reference value of the image component to be predicted for the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0155] In the above embodiment, the analysis unit 805 is further used to analyze the bitstream to obtain the initial prediction residual of the image component to be predicted for the current block.

[0156] The second processing unit 802 is further used to perform filtering processing on the initial prediction residual by using a preset processing mode based on the reference value of the image component to be predicted for the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0157] In the above embodiment, referring to FIG. 8, the decoder 80 may further include a second determination unit 808.

[0158] The second statistics unit 803 is further used to perform characteristic statistics on the image component to be predicted for the image.

[0159] The second determination unit 808 is further used to determine the reference value of the image component to be predicted for the current block and the reference value of the image component to be referred to for the current block based on the result of the characteristic statistics. The image component to be referred to is different from the image component to be predicted.

[0160] In the above embodiment, the second processing unit 802 is further used to perform filtering processing on the initial prediction value using a preset processing mode based on the reference value of the image component to be predicted in the current block and the reference value of the image component to be referenced in the current block. The preset processing mode includes at least one of filtering processing, grouping processing, value correction processing, quantization processing, inverse quantization processing, low-pass filtering processing, and adaptive filtering processing.

[0161] In the embodiments of the present application, it can be understood that the "unit" can be a part of a circuit, a part of a processor, a part of a program, or software, etc., and may or may not be a module. Furthermore, various components of the embodiments of the present application can be integrated into one processing unit, or each unit can physically exist independently, or two or more units can be integrated into one unit. The above integrated unit can be realized in the form of a hardware or software function module.

[0162] When the integrated unit is realized as a software function module and sold or used as an independent product, it may be stored in a computer-readable recording medium. According to this understanding, the embodiments of the present application provide a computer storage medium used for storing an image prediction program. When the image prediction program is executed by a second processor, the method according to any one of the above embodiments is realized.

[0163] Based on the configuration of the decoder 80 and the computer storage medium described above, referring to FIG. 9, FIG. 9 is a diagram showing the specific hardware structure of the decoder 80 according to an embodiment of the present application. The decoder 80 can include a second communication interface 901, a second memory 902, and a second processor 903. Various building elements are coupled together via a second bus system 904. The second bus system 904 is used to realize the connection and communication between these components. The second bus system 904 further includes a power bus, a control bus, and a status signal bus in addition to the data bus. However, for clarity of explanation, in FIG. 9, the various buses are marked as the second bus system 904.

[0164] The second communication interface 901 is used to transmit and receive signals in the process of transmitting and receiving information with other external network elements.

[0165] The second memory 902 is used to store a computer program executable by the second processor 903.

[0166] When executing the computer program, the second processor 903 obtains an initial predicted value of the image component to be predicted for the current block in the image by means of a prediction model, and performs filtering processing on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block.

[0167] Optionally, as another embodiment, when further executing the computer program, the second processor 903 is used to execute the method described in any one of the above embodiments.

[0168] Since the hardware functions of the second memory 902 and the first memory 702 are similar, and the hardware functions of the second processor 903 and the first processor 703 are similar, they will not be described in detail here.

[0169] Embodiments of the present application provide a decoder including a second prediction unit and a second processing unit. The second prediction unit is used to obtain an initial predicted value of an image component to be predicted for a current block in an image by means of a prediction model. The second processing unit is used to perform a filtering process on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing a filtering process on this one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also the encoding and decoding efficiency of video images can be improved.

[0170] As used herein, terms such as "comprise," "include," or their variants are intended to cover non-exclusive inclusion. Thus, a process, method, article, or apparatus that includes a list of elements does not include only those listed elements but may include other elements not listed or other elements inherent to the process, method, object, or apparatus. Further, unless there are more limitations, the presence of other identical elements in a process, method, object, or apparatus limited by the statement "comprising..." is not excluded.

[0171] The sequence numbers of the above-described embodiments do not represent the superiority or inferiority of the embodiments but are only adopted for the purpose of explanation.

[0172] The methods disclosed in some method embodiments related to the present application can be arbitrarily combined to obtain new method embodiments as long as there is no conflict.

[0173] The features disclosed in some product embodiments related to the present application can be arbitrarily combined to obtain new product embodiments as long as there is no conflict.

[0174] The features disclosed in some method or apparatus embodiments according to this application can be arbitrarily combined to obtain new method embodiments or apparatus embodiments as long as there is no contradiction.

[0175] What is described above is only a specific embodiment of the present invention, and the protection scope of the present invention is not limited thereto. A person skilled in the art can easily conceive of changes or substitutions within the technical scope disclosed in the present invention, and all should be included within the scope of this application. Therefore, the protection scope of this application should be determined by the scope of the claims.

[0176] Industrial Applicability

[0177] In the embodiments of this application, first, an initial predicted value of the image component to be predicted for the current block in the image is obtained by a prediction model. Next, filtering processing is performed on the initial predicted value to obtain a target predicted value of the image component to be predicted for the current block. In this way, after predicting at least one image component of the current block, by continuously performing filtering processing on this at least one image component, the balance of the statistical characteristics of each image component after cross-component prediction can be achieved. Therefore, not only can the prediction efficiency be improved, but also since the obtained target predicted value is closer to a real value, the prediction residual of the image component becomes smaller, the bit rate transmitted in encoding and decoding decreases, and at the same time, the efficiency of encoding and decoding of video images can also be improved.

Claims

1. 1. An image prediction method for use in an encoder, comprising: obtaining an initial prediction value of an image component to be predicted of a current block in an image by a prediction model; performing a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block; Including, performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing at least one of a filtering process, a grouping process, a value correction process, a quantization process, and an inverse quantization process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; 13. An image prediction method comprising:

2. Before performing a filtering process on the initial predicted value, the image prediction method includes: The method further includes obtaining a reference value of the image component to be predicted of the current block based on characteristic statistics for the image component to be predicted of the current block; The image component to be predicted is a component to be predicted when constructing the prediction model.

2. The image prediction method according to claim 1.

3. performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing a filtering process on the initial prediction value based on a reference value of an image component to be predicted of the current block to obtain the target prediction value; 3. The image prediction method according to claim 2.

4. performing characteristic statistics on the image component to be predicted of the current block; downsampling and averaging the image components to be predicted of the current block based on a size of the current block; 3. The image prediction method according to claim 2.

5. The image prediction method includes: When a resolution of an image component to be predicted of the current block is different from a resolution of an image component to be referenced of the current block, downsampling is performed on the resolution of the image component to be referenced; The image component to be referenced is a component used for prediction when constructing the prediction model.

2. The image prediction method according to claim 1.

6. An image prediction method for use in a decoder, comprising: obtaining an initial prediction value of an image component to be predicted of a current block in an image by a prediction model; performing a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block; Including, performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing at least one of a filtering process, a grouping process, a value correction process, a quantization process, and an inverse quantization process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; 13. An image prediction method comprising:

7. Before performing a filtering process on the initial predicted value, the image prediction method includes: The method further includes obtaining a reference value of the image component to be predicted of the current block based on characteristic statistics for the image component to be predicted of the current block; The image component to be predicted is a component to be predicted when constructing the prediction model.

7. The image prediction method according to claim 6.

8. performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing a filtering process on the initial prediction value based on a reference value of an image component to be predicted of the current block to obtain the target prediction value; 8. The image prediction method according to claim 7.

9. performing characteristic statistics on the image component to be predicted of the current block; downsampling and averaging the image components to be predicted of the current block based on a size of the current block; 8. The image prediction method according to claim 7.

10. The image prediction method includes: When a resolution of an image component to be predicted of the current block is different from a resolution of an image component to be referenced of the current block, downsampling is performed on the resolution of the image component to be referenced; The reference image component is a component used for prediction when constructing a prediction model.

7. The image prediction method according to claim 6.

11. An encoder comprising: a first prediction unit used to obtain an initial prediction value of an image component to be predicted of a current block in an image by means of a prediction model; a first processing unit used for performing a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block; Including, performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing at least one of a filtering process, a grouping process, a value correction process, a quantization process, and an inverse quantization process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; An encoder characterized by:

12. A decoder comprising: a second prediction unit used for obtaining an initial prediction value of an image component to be predicted of a current block in an image by means of a prediction model; a second processing unit used for performing a filtering process on the initial prediction value to obtain a target prediction value of the image component to be predicted of the current block; Including, performing a filtering process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; performing at least one of a filtering process, a grouping process, a value correction process, a quantization process, and an inverse quantization process on the initial prediction value to obtain a target prediction value of an image component to be predicted of the current block; A decoder characterized by:

13. 1. A computer storage medium comprising: The computer storage medium stores an image prediction program; When the image prediction program is executed by the first processor or the second processor, the method according to any one of claims 1 to 10 is realized. A computer storage medium comprising:

Citation Information

Patent Citations

  • Method and apparatus for encoding video using predictive data refinement

    JP2010507335A

  • Data encoding and decoding

    JP2015515236A

  • Method and apparatus for video coding using prediction data refinement

    US20090238276A1

  • Data encoding and decoding

    US20150043641A1

  • Video encoding device and video decoding device

    WO2019004283A1