Image prediction method, encoder, decoder, and storage medium

By preprocessing image components and constructing prediction models, the problem of insufficient consideration of statistical characteristic differences in cross-component prediction is solved, thereby improving prediction efficiency and encoding/decoding efficiency.

CN121644800APending Publication Date: 2026-03-10GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2019-10-12
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing cross-component prediction techniques fail to adequately consider the differences in statistical characteristics between components in video coding, resulting in low prediction efficiency.

Method used

By preprocessing the image components, balancing the statistical characteristics of each component, and constructing a prediction model for cross-component prediction, including filtering, grouping, value correction, quantization, and other processing, the resolution is adjusted to construct the prediction model.

Benefits of technology

It improves prediction efficiency and video image encoding/decoding efficiency, and reduces the bit rate during the encoding/decoding process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121644800A_ABST
    Figure CN121644800A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses an image prediction method, an encoder, a decoder and a storage medium. The method comprises the following steps: determining at least one image component of a current block in an image; performing filtering processing on the at least one image component of the current block according to characteristic statistics to obtain at least one image component after filtering processing; according to the at least one image component after filtering processing, constructing a prediction model; wherein the prediction model is used for performing cross-component prediction processing on at least one image component of the current block.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present application relate to the technical field of video coding, and particularly relate to an image prediction method, an encoder, a decoder and a storage medium. BACKGROUND

[0002] In the latest video coding standard H.266 / Versatile Video Coding (VVC), the existence of cross-component prediction has been allowed; and Cross-component Linear Model Prediction (CCLM) is one of the typical cross-component prediction techniques. With the cross-component prediction technique, one component can be predicted (or its residual) by another component, such as a luma component predicting a chroma component, or a chroma component predicting a luma component, or a chroma component predicting a chroma component, etc.

[0003] Different components have different statistical characteristics, so that there are differences in statistical characteristics between components. However, when component prediction is performed, the existing cross-component prediction techniques do not consider comprehensively, resulting in low prediction efficiency. SUMMARY

[0004] Embodiments of the present application provide an image prediction method, an encoder, a decoder and a storage medium, by balancing the statistical characteristics of each component before cross-component prediction, so as to not only improve the prediction efficiency, but also improve the coding efficiency of video images.

[0005] The technical solutions of the embodiments of the present application can be implemented as follows: In a first aspect, the embodiments of the present application provide an image prediction method applied to an encoder or a decoder, and the method comprises: determining at least one image component of a current block in an image; preprocessing the at least one image component of the current block to obtain a preprocessed at least one image component; constructing a prediction model according to the preprocessed at least one image component; wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0006] In a second aspect, the embodiments of the present application provide an image prediction method applied to an encoder or a decoder, and the method comprises: determining a reference value of a first image component of a current block in an image; wherein the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; filtering the reference value of the first image component of the current block to obtain a filtered reference value; calculate model parameters of a prediction model, wherein the prediction model is used to map a value of a first image component of the current block to a value of a second image component of the current block, the second image component being different from the first image component.

[0007] In a third aspect, an encoder is provided, which includes a first determining unit, a first processing unit and a first constructing unit, wherein, The first determining unit is configured to determine at least one image component of a current block in an image. The first processing unit is configured to pre-process the at least one image component of the current block to obtain a pre-processed at least one image component. The first constructing unit is configured to construct a prediction model according to the pre-processed at least one image component, wherein the prediction model is used to perform cross-component prediction processing on the at least one image component of the current block.

[0008] In a fourth aspect, an encoder is provided, which includes a first memory and a first processor, wherein, The first memory is configured to store a computer program capable of running on the first processor. The first processor is configured to execute the method according to the first aspect or the second aspect when the computer program is running.

[0009] In a fifth aspect, a decoder is provided, which includes a second determining unit, a second processing unit and a second constructing unit, wherein, The second determining unit is configured to determine at least one image component of a current block in an image. The second processing unit is configured to pre-process the at least one image component of the current block to obtain a pre-processed at least one image component. The second constructing unit is configured to construct a prediction model according to the pre-processed at least one image component, wherein the prediction model is used to perform cross-component prediction processing on the at least one image component of the current block.

[0010] In a sixth aspect, a decoder is provided, which includes a second memory and a second processor, wherein, The second memory is configured to store a computer program capable of running on the second processor. The second processor is configured to execute the method according to the first aspect or the second aspect when the computer program is running.

[0011] In a seventh aspect, an embodiment of the present application provides a computer storage medium storing an image prediction program, which, when executed by a first processor or a second processor, implements the method according to the first aspect or the second aspect.

[0012] The embodiments of the present application provide an image prediction method, an encoder, a decoder and a storage medium. At least one image component of a current block in an image is determined. The at least one image component of the current block is preprocessed to obtain preprocessed at least one image component. A prediction model is constructed according to the preprocessed at least one image component, and the prediction model is used to perform cross-component prediction processing on the at least one image component of the current block. In this way, the at least one image component is preprocessed before prediction, which can balance the statistical characteristics of the image components before cross-component prediction, thereby improving the prediction efficiency. In addition, the predicted value of the image component obtained by using the prediction model is closer to the true value, so that the prediction residual of the image component is smaller. In this way, the bit rate transmitted in the encoding and decoding process is less, and the encoding and decoding efficiency of the video image is improved. BRIEF DESCRIPTION OF DRAWINGS

[0013] Figure 1 A schematic diagram of a component structure of a conventional cross-component prediction architecture is provided for the embodiments of the present application. Figure 2 A schematic diagram of a component block diagram of a video encoding system is provided for the embodiments of the present application. Figure 3 A schematic diagram of a component block diagram of a video decoding system is provided for the embodiments of the present application. Figure 4 A schematic diagram of a flow of an image prediction method is provided for the embodiments of the present application. Figure 5 A schematic diagram of a flow of another image prediction method is provided for the embodiments of the present application. Figure 6 A schematic diagram of a component structure of an improved cross-component prediction architecture is provided for the embodiments of the present application. Figure 7 A schematic diagram of a component structure of another improved cross-component prediction architecture is provided for the embodiments of the present application. Figure 8 A schematic diagram of a component structure of an encoder is provided for the embodiments of the present application. Figure 9 A schematic diagram of a specific hardware structure of an encoder is provided for the embodiments of the present application. Figure 10 A schematic diagram of a component structure of a decoder is provided for the embodiments of the present application. Figure 11A specific hardware structure diagram of a decoder provided by an embodiment of the present application is shown. DETAILED DESCRIPTION

[0014] In order to enable a more detailed understanding of the features and technical contents of the embodiments of the present application, the implementation of the embodiments of the present application is described in detail below with reference to the accompanying drawings, which are only used for reference and do not limit the embodiments of the present application.

[0015] In a video image, a first image component, a second image component and a third image component are generally used to represent a coding block; wherein the three image components are respectively a luminance component, a blue chrominance component and a red chrominance component, specifically, the luminance component is usually represented by a symbol Y, the blue chrominance component is usually represented by a symbol Cb or U, and the red chrominance component is usually represented by a symbol Cr or V; in this way, the video image can be represented in YCbCr format or YUV format.

[0016] In the embodiments of the present application, the first image component can be a luminance component, the second image component can be a blue chrominance component, and the third image component can be a red chrominance component, but the embodiments of the present application are not limited in this regard.

[0017] In order to further improve the coding and decoding performance, the H.266 / VCC proposes a cross-component prediction technology based on CCLM. Among them, the cross-component prediction technology based on CCLM can not only realize the prediction from the luminance component to the chrominance component, i.e. the prediction from the first image component to the second image component or the prediction from the first image component to the third image component, but also realize the prediction from the chrominance component to the luminance component, i.e. the prediction from the second image component to the first image component or the prediction from the third image component to the first image component, and even realize the prediction between the chrominance components, i.e. the prediction from the second image component to the third image component or the prediction from the third image component to the second image component, etc. In the embodiments of the present application, the following will take the prediction from the first image component to the second image component as an example for description, but the technical solutions of the embodiments of the present application can also be applied to the prediction of other image components.

[0018] Referring to Figure 1 which shows a composition structure diagram of a traditional cross-component prediction architecture provided by an embodiment of the present application. As shown in Figure 1As shown, the second image component (e.g. represented by U component) is predicted by the first image component (e.g. represented by Y component); assuming the video image is in YUV 4:2:0 format, the Y component and U component have different resolutions, in this case, the Y component needs to be down-sampled or the U component needs to be up-sampled to reach the target resolution of the component to be predicted, so that the prediction can be performed between the components at the same resolution. In this example, the method of predicting the third image component (e.g. represented by V component) using the Y component is the same.

[0019] In Figure 1 , the conventional cross-component prediction architecture 10 can include a Y component coding block (or current block) 110, a resolution adjustment unit 120, a Y 1 component coding block (or current block) 130, a U component coding block (or current block) 140, a prediction model 150, a cross-component prediction unit 160. Among them, the Y component of the video image is represented by a Y component coding block 110 of 2N×2N size, here the larger box in bold is used to highlight the indication of the Y component coding block 110, and the surrounding gray solid circle is used to indicate the adjacent reference value of the Y component coding block 110; the U component of the video image is represented by a U component coding block 140 of N×N size, here the larger box in bold is used to highlight the indication of the U component coding block 140, and the surrounding gray solid circle is used to indicate the adjacent reference value of the U component coding block 140; since the Y component and the U component have different resolutions, the resolution adjustment unit 120 is needed to adjust the resolution of the Y component to obtain a Y 1 component coding block 130 of N×N size; for the Y 1 component coding block 130, here the larger box in bold is used to highlight the indication of the Y 1 component coding block 130, and the surrounding gray solid circle is used to indicate the adjacent reference value 1 of the Y 1 component coding block 130; the adjacent reference value of the Y 1 component coding block 130 and the adjacent reference value of the U component coding block 140 can be used to construct the prediction model 150; according to the Y component reconstructed pixel value of the Y 1 component coding block 130 and the prediction model 150, the cross-component prediction unit 160 can be used for component prediction, and finally output the U component prediction value.

[0020] The traditional cross-component prediction architecture 10 is not comprehensive in considering the image component prediction, for example, the difference of the statistical characteristics among the image components is not considered, which results in low prediction efficiency. In order to improve the prediction efficiency, the embodiments of the present application provide an image prediction method, which first determines at least one image component of a current block in an image; then pre-processes the at least one image component of the current block to obtain at least one pre-processed image component; and then constructs a prediction model according to the at least one pre-processed image component, the prediction model being used for cross-component prediction processing of the at least one image component of the current block. In this way, before the prediction of the at least one image component of the current block, the at least one image component is pre-processed first, which can balance the statistical characteristics of the image components before the cross-component prediction, thereby not only improving the prediction efficiency, but also improving the coding and decoding efficiency of the video image.

[0021] The embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0022] Referring to Figure 2 which shows an example of a component block diagram of a video coding system provided by the embodiments of the present application; as Figure 2As shown, the video coding system 20 includes a transform and quantization unit 201, an intra estimation 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 filter unit 208, an encoding unit 209 and a decoded picture buffer unit 210, etc. The filter unit 208 can implement deblocking filter and sample adaptive offset (SAO) filter, and the encoding unit 209 can implement header information encoding and context-based adaptive binary arithmatic coding (CABAC). For an input original video signal, a coding tree unit (CTU) can be divided to obtain a coding block, and then the residual pixel information obtained after intra or inter prediction is transformed by the transform and quantization unit 201 to the coding block, including transforming the residual information from the pixel domain to the transform domain, and quantizing the obtained transform coefficients to further reduce the bit rate. The intra estimation unit 202 and the intra prediction unit 203 are used for intra prediction of the coding block. Specifically, the intra estimation unit 202 and the intra prediction unit 203 are used to determine the intra prediction mode to be used to encode the coding block. The motion compensation unit 204 and the motion estimation unit 205 are used to perform inter prediction encoding of the received coding block relative to 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 that can estimate the motion of the coding block, and then the motion compensation is performed by the motion compensation unit 204 based on the motion vector determined by the motion estimation unit 205. After determining the intra prediction mode, the intra prediction unit 203 is also used to provide the selected intra prediction data to the encoding unit 209, and the motion estimation unit 205 also sends the calculated determined motion vector data to the encoding unit 209. In addition, the inverse transform and inverse quantization unit 206 is used for reconstruction of the coding block to reconstruct the residual block in the pixel domain, and the blocking artifact is removed by the filter control analysis unit 207 and the filter unit 208, and then the reconstructed residual block is added to a predictive block in one of the frames of the decoded picture buffer unit 210 to generate a reconstructed video block. The encoding unit 209 is used to encode various encoding parameters and quantized transform coefficients. In the CABAC-based encoding algorithm, the context content can be based on the adjacent coding block, which can be used to encode the information indicating the determined intra prediction mode, and output the code stream of the video signal. The decoded picture buffer unit 210 is used to store the reconstructed video block for prediction reference.As the video image encoding is carried out, new reconstructed video blocks are continuously generated, which are stored in the decoded image buffer unit 210.

[0023] Referring to Figure 3 , a constituent block diagram of a video decoding system is shown; as Figure 3 shown, 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, and a decoded image buffer unit 306, etc., wherein the decoding unit 301 can realize header information decoding and CABAC decoding, and the filtering unit 305 can realize deblocking filtering and SAO filtering. After the input video signal is subjected to the encoding processing of Figure 2 , the code stream of the video signal is output; the code stream is input into the video decoding system 30, and first passes through the decoding unit 301 to obtain the decoded transform coefficients; the transform coefficients are processed by the inverse transform and inverse quantization unit 302 to generate the residual blocks in the pixel domain; the intra prediction unit 303 can be used to generate the prediction data of the current video block to be decoded based on the determined intra prediction mode and the data from the previously decoded blocks of the current frame or picture; the motion compensation unit 304 determines the prediction information for the video block to be decoded by parsing the motion vectors and other associated syntax elements, and uses the prediction information to generate the predictive block of the video block being decoded; the decoded video block is formed by summing the residual block from the inverse transform and inverse quantization unit 302 and the corresponding predictive block generated by the intra prediction unit 303 or the motion compensation unit 304; the decoded video block passes through the filtering unit 305 to remove the blockiness artifacts, which can improve the video quality; then the decoded video block is stored in the decoded image buffer unit 306, which stores the reference images for subsequent intra prediction or motion compensation, and also for the output of the video signal, i.e., the original video signal is recovered.

[0024] The embodiments of the present application are mainly applied to the intra prediction unit 203 part as Figure 2 shown and the intra prediction unit 303 part as Figure 3 shown; that is, the embodiments of the present application can be applied to the video encoding system and the video decoding system, and the embodiments of the present application are not specifically limited.

[0025] Based on the above Figure 2 or Figure 3 application scenario examples, referring to Figure 4 , a flowchart of an image prediction method is shown, which can include: S401: determining at least one image component of a current block in an image; S402: pre-processing the at least one image component of the current block to obtain pre-processed at least one image component; S403: constructing a prediction model according to the pre-processed at least one image component; wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0026] It should be noted that the video image can be divided into a plurality of image blocks, and each current image block to be encoded can be referred to as an encoding block. Each encoding block can include a first image component, a second image component and a third image component. The current block is an encoding block in which the first image component, the second image component or the third image component prediction is currently performed.

[0027] It should be further noted that the image prediction method of the embodiments of the present application can be applied to a video encoding system, a video decoding system, or both, and the embodiments of the present application are not limited in this regard.

[0028] In the embodiments of the present application, at least one image component of a current block in an image is first determined. Then, the at least one image component of the current block is pre-processed to obtain pre-processed at least one image component. Then, a prediction model is constructed according to the pre-processed at least one image component, which is used for cross-component prediction processing of the at least one image component of the current block. In this way, before predicting the at least one image component of the current block, the at least one image component is pre-processed first, which can balance the statistical characteristics of each image component before cross-component prediction, thereby not only improving the prediction efficiency, but also improving the encoding and decoding efficiency of the video image.

[0029] Further, since different image components have different statistical characteristics, and the statistical characteristics of each image component differ, for example, the luminance component has rich texture characteristics, while the chrominance component tends to be uniform and flat. The embodiments of the present application can consider the difference in statistical characteristics between image components to balance the statistical characteristics of each image component. Therefore, in some embodiments, after determining the at least one image component of the current block in the image, the method can further include: performing statistical analysis on the at least one image component of the current block; wherein the at least one image component includes a first image component and / or a second image component; According to the result of the statistical analysis, a reference value of a first image component of the current block and / or a reference value of a second image component of the current block are obtained; wherein the first image component is a component used for prediction when the prediction model is constructed, and the second image component is a component predicted when the prediction model is constructed.

[0030] It should be noted that the at least one image component of the current block can be the first image component, or the second image component, or even the first image component and the second image component. The first image component is a component used for prediction when the prediction model is constructed, which can also be referred to as a reference image component; the second image component is a component predicted when the prediction model is constructed, which can also be referred to as a predicted image component.

[0031] Suppose that the prediction of the chrominance component by the luminance component is realized by the prediction model, then the component used for prediction when the prediction model is constructed is the luminance component, and the component predicted when the prediction model is constructed is the chrominance component, i.e. the first image component is the luminance component, and the second image component is the chrominance component; or suppose that the prediction of the luminance component by the chrominance component is realized by the prediction model, then the component used for prediction when the prediction model is constructed is the chrominance component, and the component predicted when the prediction model is constructed is the luminance component, i.e. the first image component is the chrominance component, and the second image component is the luminance component.

[0032] In this way, by performing statistical analysis on the at least one image component of the current block, according to the result of the statistical analysis, the reference value of the first image component of the current block and / or the reference value of the second image component of the current block can be obtained.

[0033] Further, in order to improve the prediction efficiency, the statistical characteristic difference between the image components can be considered. That is, before performing cross-component prediction on the at least one image component by the prediction model, the at least one image component can also be preprocessed according to the statistical characteristics of the image components, such as filtering processing, grouping processing, value correction processing, quantization processing or dequantization processing, etc. Therefore, in some embodiments, for S402, the preprocessing of the at least one image component of the current block to obtain the preprocessed at least one image component can include: performing first processing on the first image component based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block by using a preset processing mode; wherein the preset processing mode at least includes one of the following: filtering processing, grouping processing, value correction processing, quantization processing and dequantization processing; obtaining a processed value of the first image component of the current block according to the result of the first processing.

[0034] It should be noted that according to the result of the characteristic statistics of at least one image component of the current block, after the reference value of the first image component of the current block and / or the reference value of the second image component of the current block is obtained, the first image component can be subjected to the first processing by using a preset processing mode. Specifically, the first image component can be subjected to the first processing by using filtering processing, or the first image component can be subjected to the first processing by using grouping processing, or the first image component can be subjected to the first processing by using value correction processing, or the first image component can be subjected to the first processing by using quantization processing, or the first image component can be subjected to the first processing by using inverse quantization processing (which can also be referred to as dequantization processing), and the like, which are not limited in the embodiments of the present application.

[0035] It should also be noted that the processing on the first image component can be the processing on the adjacent reference pixel value of the first image component, or can be the processing on the reconstructed pixel value of the first image component, or can also be the processing on other pixel values of the first image component; in the embodiments of the present application, the actual situation of the prediction model is set, which is not limited in the embodiments of the present application.

[0036] Exemplarily, assuming that the prediction model is to predict the chroma components by using the luma components, in order to improve the prediction efficiency, i.e. to improve the accuracy of the prediction value, it is required to process the luma components and / or the chroma components according to a preset processing mode, such as processing the reconstructed pixel values corresponding to the luma components according to the preset processing mode.If the preset processing mode adopts value correction processing, because the luminance component and the chrominance component have different statistical characteristics, according to the difference between the statistical characteristics of the two image components, a deviation factor can be obtained; then the value correction processing (such as adding the deviation factor to the reconstructed pixel value corresponding to the luminance component) is performed on the luminance component to balance the statistical characteristics between the image components before cross-component prediction, so as to obtain the processed luminance component; at this time, the predicted value of the chrominance component predicted according to the prediction model is closer to the true value of the chrominance component; if the preset processing mode adopts filtering processing, because the luminance component and the chrominance component have different statistical characteristics, according to the difference between the statistical characteristics of the two image components, filtering processing can be performed on the luminance component to balance the statistical characteristics between the image components before cross-component prediction, so as to obtain the processed luminance component; at this time, the predicted value of the chrominance component predicted according to the prediction model is closer to the true value of the chrominance component; if the preset processing mode adopts grouping processing, because the luminance component and the chrominance component have different statistical characteristics, according to the difference between the statistical characteristics of the two image components, grouping processing can be performed on the luminance component to balance the statistical characteristics between the image components before cross-component prediction, and according to the prediction model constructed based on the luminance component after grouping processing, the predicted value of the chrominance component predicted by the prediction model is closer to the true value of the chrominance component; in addition, because the quantization processing and the inverse quantization processing are involved in the process of predicting the chrominance component by using the prediction model, and because the luminance component and the chrominance component have different statistical characteristics, the difference between the quantization processing and the inverse quantization processing may be caused by the difference between the statistical characteristics of the two image components; at this time, if the preset processing mode adopts quantization processing, the luminance component and / or the chrominance component can be quantized to balance the statistical characteristics between the image components before cross-component prediction, so as to obtain the processed luminance component and / or the processed chrominance component; at this time, the predicted value of the chrominance component predicted according to the prediction model is closer to the true value of the chrominance component; if the preset processing mode adopts dequantization processing, the luminance component and / or the chrominance component can be dequantized to balance the statistical characteristics between the image components before cross-component prediction, so as to obtain the processed luminance component and / or the processed chrominance component; at this time, the predicted value of the chrominance component predicted according to the prediction model is closer to the true value of the chrominance component; thereby improving the accuracy of the predicted value and improving the prediction efficiency; because the predicted value of the chrominance component is closer to the true value, the prediction residual of the chrominance component is smaller, so that the bit rate transmitted in the encoding and decoding process is smaller, and the encoding and decoding efficiency of the video image is also improved.

[0037] Thus, after obtaining the reference value of the first image component of the current block and / or the reference value of the second image component of the current block, the first image component can be processed based on the reference value of the first image component of the current block by using a preset processing mode to balance the statistical characteristics among the image components before cross-component prediction, and then a processed value of the first image component of the current block is obtained; or the first image component can be processed based on the reference value of the second image component of the current block by using a preset processing mode to balance the statistical characteristics among the image components before cross-component prediction, and then a processed value of the first image component of the current block is obtained; or the first image component can be processed based on the reference value of the first image component of the current block and the reference value of the second image component of the current block by using a preset processing mode to balance the statistical characteristics among the image components before cross-component prediction, and then a processed value of the first image component of the current block is obtained; and the prediction value of the second image component predicted by using the prediction model is closer to the real value according to the processed value of the first image component of the current block; wherein the prediction model can realize cross-component prediction of the second image component by the first image component.

[0038] Further, the resolutions of the image components are not the same, and in order to facilitate the construction of the prediction model, the resolution of the image component also needs to be adjusted (including upsampling or downsampling of the image component) to reach the target resolution. Specifically, the first processing of the first image component and the resolution adjustment of the first image component by using the preset processing mode can be processed in cascade, or the first processing of the first image component and the resolution adjustment of the first image component by using the preset processing mode can be processed jointly, which will be described below.

[0039] Optionally, in some embodiments, before the pre-processing of the at least one image component of the current block to obtain the pre-processed at least one image component, the method can further include: When the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, the resolution of the first image component is adjusted; wherein the resolution adjustment includes upsampling adjustment or downsampling adjustment; Based on the adjusted resolution of the first image component, the reference value of the first image component of the current block is updated; wherein the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0040] It should be noted that the resolution adjustment, i.e. the resolution mapping, maps the resolution of the first image component to the adjusted resolution of the first image component; here, the resolution adjustment or the resolution mapping can be realized by upsampling adjustment or downsampling adjustment.

[0041] It should be further noted that when the first processing and the resolution adjustment on the first image component using the preset processing mode can be cascade processing, the resolution adjustment can be before the first processing on the first image component using the preset processing mode. That is, before the pre-processing on the at least one image component of the current block, if the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, the resolution of the first image component can be adjusted, and the reference value of the first image component of the current block is updated based on the adjusted resolution of the first image component.

[0042] Optionally, in some embodiments, after the pre-processing on the at least one image component of the current block to obtain the pre-processed at least one image component, the method can further include: when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, performing a resolution adjustment on the resolution of the first image component; wherein the resolution adjustment includes up-sampling adjustment or down-sampling adjustment; updating the processing value of the first image component of the current block based on the adjusted resolution of the first image component; wherein the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0043] It should be further noted that when the first processing and the resolution adjustment on the first image component using the preset processing mode can be cascade processing, the resolution adjustment can be after the first processing on the first image component using the preset processing mode. That is, after the pre-processing on the at least one image component of the current block, if the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, the resolution of the first image component can be adjusted, and the processing value of the first image component of the current block is updated based on the adjusted resolution of the first image component.

[0044] Optionally, in some embodiments, the pre-processing on the at least one image component of the current block to obtain the pre-processed at least one image component can include: when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, performing a second processing on the first image component based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block; wherein the second processing includes up-sampling and related processing of the preset processing mode, or down-sampling and related processing of the preset processing mode; According to a result of the second processing, a processed value of the first image component of the current block is obtained; wherein a resolution of the processed first image component of the current block is the same as a resolution of the second image component of the current block.

[0045] It is also to be noted that, when the first processing and the resolution adjustment on the first image component can be jointly processed by using the preset processing mode, the processed value of the first image component of the current block can be obtained after the first processing and the resolution adjustment are simultaneously performed. That is, if the resolution of the first image component of the current block is different from the resolution of the second image component of the current block, the second processing can be performed on the first image component according to the reference value of the first image component of the current block and / or the reference value of the second image component of the current block, the second processing integrating the first processing and the resolution adjustment, and the second processing can include upsampling and related processing of the preset processing mode, or downsampling and related processing of the preset processing mode, and the like. In this way, according to a result of the second processing, the processed value of the first image component of the current block can be obtained, and the resolution of the processed first image component of the current block is the same as the resolution of the second image component of the current block.

[0046] Exemplarily, it is still assumed that the prediction model is to predict the chroma component by using the luma component, and the image component to be predicted is the chroma component and the image component to be used is the luma component. Since the resolutions of the luma component and the chroma component are different, after the target resolution of the chroma component is obtained, the resolution of the luma component needs to be adjusted since the resolution of the luma component does not conform to the target resolution, for example, the luma component is downsampled, so that the resolution of the adjusted luma component conforms to the target resolution. Conversely, if the luma component is predicted by using the chroma component, after the target resolution of the luma component is obtained, the resolution of the chroma component needs to be adjusted since the resolution of the chroma component does not conform to the target resolution, for example, the chroma component is upsampled, so that the resolution of the adjusted chroma component conforms to the target resolution. In addition, if the red chroma component is predicted by using the blue chroma component, after the target resolution of the red chroma component is obtained, the resolution of the blue chroma component does not need to be adjusted since the resolution of the blue chroma component conforms to the target resolution, which ensures that the resolution of the blue chroma component conforms to the target resolution. In this way, subsequent prediction of the image components can be performed according to the same resolution.

[0047] Further, after the at least one preprocessed image component is obtained, a model parameter of the prediction model is determined according to the at least one preprocessed image component to construct the prediction model. Therefore, in some embodiments, for S403, the constructing the prediction model according to the at least one preprocessed image component can include: The model parameters of the prediction model are determined based on the processed value of the first image component and the reference value of the second image component. The prediction model is constructed based on the model parameters.

[0048] It should be noted that the prediction model in the embodiments of this application can be a linear model, such as the cross-component prediction technique of CCLM; the prediction model can also be a nonlinear model, such as the cross-component prediction technique of Multiple Model CCLM (MMLM), which is composed of multiple linear models. The embodiments of this application will be described below with the prediction model as a linear model as an example, but the image prediction method of the embodiments of this application can also be applied to nonlinear models.

[0049] Specifically, the model parameters include the first model parameters (using...). (represented) and second model parameters (using) (This indicates that...) And regarding... and The calculation of the factor can be done in various ways. It can be a preset factor calculation model constructed by the least squares method, a preset factor calculation model constructed by the maximum and minimum values, or even a preset factor calculation model constructed in other ways. The embodiments of this application do not make specific limitations.

[0050] Taking the preset factor calculation model constructed by the least squares method as an example, it can be derived by minimizing the regression error of the neighboring reference pixel values ​​around the current block (such as the neighboring reference values ​​of the first image component and the second image component, which are obtained after preprocessing). Specifically, it is shown in Equation (1): (1) in, This represents the adjacent reference values ​​of the first image components corresponding to the left and top edges of the current block after downsampling. This represents the adjacent reference values ​​of the second image component corresponding to the left and top edges of the current block, where N is the side length of the current block for the second image component. The first model parameters can be obtained through the calculation using equation (1). Second model parameters .

[0051] Taking the preset factor calculation model constructed from the maximum and minimum values ​​as an example, it provides a simplified method for deriving model parameters. Specifically, the model parameters can be derived by searching for the largest and smallest adjacent reference values ​​of the first image component and according to the principle of "two points determine a line", as shown in the preset factor calculation model in equation (2): (2) wherein, and denote the maximum and minimum values searched from the neighboring reference values of the first image component corresponding to the left and top sides of the down-sampled current block, and denote and the neighboring reference values of the second image component corresponding to the reference pixel points at the corresponding positions. According to and and and , the first model parameter and the second model parameter can also be obtained through the calculation of formula (2).

[0052] After obtaining the first model parameter and the second model parameter , the prediction model can be constructed. Specifically, based on and , assuming that the second image component is predicted according to the first image component, the constructed prediction model is shown in formula (3), (3) wherein, denotes the position coordinate of a pixel point in the current block, denotes the horizontal direction, denotes the vertical direction, denotes the predicted value of the second image component corresponding to the pixel point with the position coordinate in the current block, denotes the reconstructed value of the first image component corresponding to the pixel point with the (down-sampled) position coordinate in the same current block.

[0053] Further, in some embodiments, for S403, after the prediction model is constructed, the method can further include: performing cross-component prediction on the second image component of the current block according to the prediction model to obtain the predicted value of the second image component of the current block.

[0054] It should be noted that according to the prediction model shown in formula (3), the luminance component can be used to predict the chrominance component, so that the predicted value of the chrominance component can be obtained.

[0055] Specifically, for the current block, after the prediction model is constructed, the prediction of the image component can be performed according to the prediction model; on the one hand, the first image component can be used to predict the second image component, such as using the luminance component to predict the chroma component, to obtain the predicted value of the chroma component; on the other hand, the second image component can also be used to predict the first image component, such as using the chroma component to predict the luminance component, to obtain the predicted value of the luminance component; on the other hand, the second image component can also be used to predict the third image component, such as using the blue chroma component to predict the red chroma component, to obtain the predicted value of the red chroma component; since the prediction model is constructed before, the embodiments of the present application will preprocess at least one image component of the current block to balance the statistical characteristics of each image component before cross-component prediction, and then use the processed image component to construct the prediction model, so as to achieve the purpose of improving the prediction efficiency.

[0056] The embodiment provides an image prediction method, determining at least one image component of a current block in an image; preprocessing the at least one image component of the current block to obtain at least one preprocessed image component; and constructing a prediction model according to the at least one preprocessed image component, the prediction model being used for cross-component prediction processing of the at least one image component of the current block; in this way, before the at least one image component of the current block is predicted, the at least one image component is preprocessed first, so as to balance the statistical characteristics of each image component before cross-component prediction, and improve the prediction efficiency; in addition, since the predicted value of the image component obtained by using the prediction model is closer to the true value, the prediction residual of the image component is smaller, so that the bit rate transmitted in the coding process is smaller, and the coding efficiency of the video image is also improved.

[0057] Based on the above Figure 2 Or Figure 3 application scenario examples, see Figure 5 which shows the flowchart of another image prediction method provided by the embodiment of the present application, which can include: S501: determining a reference value of a first image component of a current block in an image; wherein the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; S502: filtering the reference value of the first image component of the current block to obtain a filtered reference value; S503: calculating a model parameter of a prediction model by using the filtered reference value, wherein the prediction model is used for mapping the value of the first image component of the current block to the value of a second image component of the current block, and the second image component is different from the first image component.

[0058] It should be noted that the video image can be divided into a plurality of image blocks, and each current image block to be encoded can be referred to as 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 in the video image for which first image component, second image component, or third image component prediction is currently performed.

[0059] It should also be noted that the image prediction method can be applied to a video encoding system, a video decoding system, or both.

[0060] In the embodiment of the present application, the reference value of the first image component of the current block in the image is first determined, and the reference value of the first image component of the current block is the first image component value of the neighboring pixel of the current block. Then, the reference value of the first image component of the current block is filtered to obtain a filtered reference value. The model parameters of the prediction model are calculated using the filtered reference value, wherein the prediction model is used to map the value of the first image component of the current block to the value of the second image component of the current block (i.e., the predicted value), and the second image component is different from the first image component. In this way, before predicting at least one image component of the current block, the at least one image component is first filtered, which can balance the statistical characteristics of each image component before cross-component prediction, thereby not only improving the prediction efficiency, but also improving the encoding and decoding efficiency of the video image.

[0061] Further, in some embodiments, for S503, calculating the model parameters of the component prediction model using the filtered reference value can include: performing characteristic statistics on at least one image component of the image or at least one image component of the current block, wherein the at least one image component includes the first image component and / or the second image component; obtaining a reference value of the second image component of the current block according to the results of the characteristic statistics, wherein the reference value of the second image component of the current block is the second image component value of the neighboring pixel of the current block; calculating the model parameters of the prediction model using the filtered reference value and the reference value of the second image component of the current block.

[0062] It should be noted that, since different image components have different statistical characteristics, and the statistical characteristics of each image component differ, for example, the luminance component has rich texture characteristics, while the chrominance component tends to be uniform and flat. The embodiment of the present application considers the difference in statistical characteristics between image components, thereby achieving the purpose of balancing the statistical characteristics of each image component.

[0063] It should be further noted that, after considering the difference of the statistical characteristics between the image components, the reference value of the second image component of the current block is obtained, then the model parameters of the prediction model are calculated according to the filtered reference value and the reference value of the second image component of the current block, and the prediction model is constructed according to the calculated model parameters, and the prediction value of the image component predicted by the prediction model is closer to the true value, so that the prediction residual of the image component is smaller, so that the bit rate transmitted in the coding process is less, and the coding efficiency of the video image is improved.

[0064] Further, in some embodiments, for S502, the filtering processing on the reference value of the first image component of the current block to obtain the filtered reference value can include: When the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing first adjustment processing on the reference value of the first image component of the current block to update the reference value of the first image component of the current block, wherein the first adjustment processing includes one of downsampling filtering and upsampling filtering. The filtering processing on the reference value of the first image component of the current block to obtain the filtered reference value.

[0065] Further, the method can further include: According to the reference value of the first image component of the current block, filtering processing is performed on the reference value by using a preset processing mode; wherein the preset processing mode at least includes one of filtering processing, grouping processing, value correction processing, quantization processing, dequantization processing, low-pass filtering and adaptive filtering.

[0066] Further, in some embodiments, for S502, the filtering processing on the reference value of the first image component of the current block to obtain the filtered reference value can include: When the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing second adjustment processing on the reference value of the second image component of the current block to update the first reference value of the first image component of the current block, wherein the second adjustment processing includes downsampling and smoothing filtering, or upsampling and smoothing filtering.

[0067] It should be noted that the resolutions of the image components are not the same, and in order to facilitate the construction of the prediction model, the resolutions of the image components also need to be adjusted (including up-sampling the image components or down-sampling the image components) to achieve a target resolution. Specifically, the resolution adjustment, i.e., the resolution mapping, maps the resolution of the first image component to the resolution of the adjusted first image component. Here, the resolution adjustment or the resolution mapping can be achieved by up-sampling adjustment or down-sampling adjustment.

[0068] It should also be noted that the filtering processing and the resolution adjustment of the first image component can be processed in cascade, such as performing the resolution adjustment before the filtering processing of the first image component, or performing the resolution adjustment after the filtering processing of the first image component; in addition, the filtering processing and the resolution adjustment of the first image component can also be jointly processed (i.e., the first adjustment processing).

[0069] Further, in some embodiments, for S503, the calculating the model parameters of the component prediction model by using the filtered reference value can include: determining a reference value of a second image component of the current block; wherein the reference value of the second image component of the current block is a second image component value of a neighboring pixel of the current block; calculating the model parameters of the component prediction model by using the filtered reference value and the reference value of the second image component of the current block.

[0070] Further, in some embodiments, after S503, the method can further include: mapping the value of the first image component of the current block according to the prediction model to obtain a predicted value of the second image component of the current block.

[0071] It should be noted that the reference value of the second image component of the current block can be a second image component value of a neighboring pixel of the current block; in this way, after the reference value of the second image component is determined, the model parameters of the prediction model are calculated according to the filtered reference value and the determined reference value of the second image component, and the prediction model is constructed according to the calculated model parameters, and the predicted value of the image component predicted by the prediction model is closer to the true value, so that the prediction residual of the image component is smaller, which reduces the bit rate transmitted in the coding process, and also improves the coding efficiency of the video image.

[0072] Exemplarily, referring to Figure 6 which shows a component structure diagram of an improved cross-component prediction architecture provided by an embodiment of the present application. As shown in Figure 6 , in Figure 1Based on the conventional cross-component prediction architecture 10 shown, the improved cross-component prediction architecture 60 may further include a processing unit 610, which is mainly used to perform correlation processing on at least one image component before the cross-component prediction unit 160. The processing unit 610 may be located before or after the resolution adjustment unit 120; for example, in... Figure 6 In this process, the processing unit 610 is located after the resolution adjustment unit 120. By performing relevant processing on the Y component, such as filtering, grouping, value correction, quantization and dequantization, a more accurate prediction model can be constructed, making the predicted U component value closer to the true value.

[0073] based on Figure 6 The improved cross-component prediction architecture 60 shown assumes that the U component is predicted using the Y component. Since the current block 110 of the Y component and the current block 140 of the U component have different resolutions, the resolution adjustment unit 120 is needed to adjust the resolution of the Y component to obtain a Y component with the same resolution as the current block 140 of the U component. 1 The current component is block 130; prior to this, the Y component can be further processed by processing unit 610 to obtain Y. 1 Component current block 130; then use Y 1 The adjacent reference value of the current block 130 The adjacent reference value of the U component in the current block 140 A prediction model 150 can be constructed based on Y. 1 The pixel values ​​of the Y component of the current block 130 are reconstructed and the prediction model 150 is used to predict the image components through the cross-component prediction unit 160 to obtain the predicted value of the U component. Since the Y component has been processed before the cross-component prediction, the predicted value of the U component obtained by the prediction model 150 based on the processed luminance component is closer to the true value, thereby improving the prediction efficiency and also improving the encoding and decoding efficiency of the video image.

[0074] In this embodiment, the resolution adjustment unit 120 and the processing unit 610 can perform cascaded processing of image components (e.g., first perform resolution adjustment through the resolution adjustment unit 120, then perform related processing through the processing unit 610; or first perform related processing through the processing unit 610, then perform resolution adjustment through the resolution adjustment unit 120), and can also perform joint processing of image components (e.g., combine the resolution adjustment unit 120 and the processing unit 610 for processing). Figure 7 As shown, it illustrates a schematic diagram of the composition structure of another improved cross-component prediction architecture provided in an embodiment of this application. Figure 6The improved cross-component prediction architecture 60 shown in the figure is based on Figure 7 The improved cross-component prediction architecture shown in the figure can also include a joint unit 710, but the resolution adjustment unit 120 and the processing unit 610 can be omitted; that is, the joint unit 710 includes the functions of the resolution adjustment unit 120 and the processing unit 610, and can not only realize resolution adjustment of at least one image component, but also realize related processing of at least one image component, such as filtering processing, grouping processing, value correction processing, quantization processing, and inverse quantization processing, etc., so that a more accurate prediction model 150 can be constructed, and the predicted U component value obtained by using the prediction model 150 is closer to the true value, thereby improving the prediction efficiency, and also improving the coding and decoding efficiency of the video image.

[0075] In addition, in the embodiment of the present application, when the image prediction method is applied to the encoder side, the model parameters of the prediction model can be calculated according to the reference value of the to-be-predicted image component of the current block and the reference value of the to-be-referenced image component of the current block, and then the calculated model parameters are written into a code stream; the code stream is transmitted from the encoder side to the decoder side; correspondingly, when the image prediction method is applied to the decoder side, the model parameters of the prediction model can be obtained by parsing the code stream, so as to construct the prediction model, and the prediction model is used for cross-component prediction processing of at least one image component of the current block.

[0076] The embodiment provides an image prediction method, determines a reference value of a first image component of a current block in an image, the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; performs filtering processing on the reference value of the first image component of the current block to obtain a filtered reference value; and calculates model parameters of a prediction model by using the filtered reference value, the prediction model is used for mapping a value of the first image component of the current block to a value of a second image component of the current block, the second image component is different from the first image component; in this way, before predicting at least one image component of the current block, the at least one image component is first preprocessed, the statistical characteristics of the image components before cross-component prediction can be balanced, and the prediction efficiency is improved; in addition, since the predicted value of the image component predicted by using the prediction model is closer to the true value, the prediction residual of the image component is smaller, so that the bit rate transmitted in the coding and decoding process is smaller, and the coding and decoding efficiency of the video image is also improved.

[0077] Based on the same inventive concept as the foregoing embodiments, see Figure 8 which shows a constituent structure schematic diagram of an encoder 80 provided by an embodiment of the present application. The encoder 80 can include a first determination unit 801, a first processing unit 802, and a first construction unit 803, wherein, The first determining unit 801 is configured to determine at least one image component of a current block in an image. The first processing unit 802 is configured to pre-process the at least one image component of the current block to obtain at least one pre-processed image component. The first constructing unit 803 is configured to construct a prediction model according to the at least one pre-processed image component; wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0078] In the above solution, referring to Figure 8 The encoder 80 can further include a first statistical unit 804 and a first obtaining unit 805, wherein The first statistical unit 804 is configured to perform characteristic statistics on the at least one image component of the current block; wherein the at least one image component includes a first image component and / or a second image component. The first obtaining unit 805 is configured to obtain a reference value of the first image component of the current block and / or a reference value of the second image component of the current block according to a result of the characteristic statistics; wherein the first image component is a component used for prediction when the prediction model is constructed, and the second image component is a component predicted when the prediction model is constructed.

[0079] In the above solution, the first processing unit 802 is further configured to perform first processing on the first image component by using a preset processing mode based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block; wherein the preset processing mode at least includes one of the following: filtering processing, grouping processing, value correction processing, quantization processing, and dequantization processing. The first obtaining unit 805 is further configured to obtain a processing value of the first image component of the current block according to a result of the first processing.

[0080] In the above solution, referring to Figure 8 The encoder 80 can further include a first adjusting unit 806 and a first updating unit 807, wherein The first adjusting unit 806 is configured to perform resolution adjustment on a resolution of the first image component when the resolution of the first image component of the current block is different from a resolution of the second image component of the current block; wherein the resolution adjustment includes up-sampling adjustment or down-sampling adjustment. The first updating unit 807 is configured to update the reference value of the first image component of the current block based on the adjusted resolution of the first image component; wherein the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0081] In the above scheme, the first adjusting unit 806 is further configured to perform resolution adjustment on the first image component when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block; and the resolution adjustment comprises up-sampling adjustment or down-sampling adjustment. The first updating unit 807 is further configured to update the processing value of the first image component of the current block based on the adjusted resolution of the first image component; and the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0082] In the above scheme, the first adjusting unit 806 is further configured to perform second processing on the first image component based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block; and the second processing comprises up-sampling and related processing of a preset processing mode or down-sampling and related processing of a preset processing mode. The first obtaining unit 805 is further configured to obtain the processing value of the first image component of the current block according to the result of the second processing; and the resolution of the processed first image component of the current block is the same as the resolution of the second image component of the current block.

[0083] In the above scheme, the first determining unit 801 is further configured to determine the model parameter of the prediction model according to the processing value of the first image component and the reference value of the second image component. The first constructing unit 803 is configured to construct the prediction model according to the model parameter.

[0084] In the above scheme, referring to Figure 8 The encoder 80 can further include a first prediction unit 808 configured to perform cross-component prediction on the second image component of the current block according to the prediction model to obtain the prediction value of the second image component of the current block.

[0085] It can be understood that, in the embodiments of the present application, the "unit" can be part of a circuit, part of a processor, part of a program or software, etc., and of course can also be a module, and can also be non-modular. Moreover, the constituent parts in the embodiments can be integrated in one processing unit, or can be physically present as individual units, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.

[0086] The integrated unit, if implemented in the form of a software function module and not sold or used as an independent product, can be stored in a computer readable storage medium based on such understanding. The technical solutions of the embodiments essentially or the part that contributes to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the method described in the embodiments. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0087] Therefore, the embodiments of the present application provide a computer storage medium, which stores an image prediction program. The image prediction program is executed by at least one processor to implement the steps of the method described in the foregoing embodiments.

[0088] Based on the composition of the encoder 80 and the computer storage medium, referring to Figure 9 which shows the specific hardware structure of the encoder 80 provided by the embodiments of the present application, can include: a first communication interface 901, a first memory 902 and a first processor 903; each component is coupled together through a first bus system 904. It can be understood that the first bus system 904 is used to realize the connection communication between the components. The first bus system 904 includes not only a data bus, but also a power bus, a control bus and a status signal bus. However, for the purpose of clear illustration, all kinds of buses are marked as the first bus system 904 in Figure 9 . Among them, The first communication interface 901 is used for receiving and sending signals in the process of transceiving information with other external network elements; The first memory 902 is used for storing computer programs capable of running on the first processor 903; The first processor 903 is used for executing the following steps when running the computer programs: determining at least one image component of a current block in an image; preprocessing at least one image component of the current block to obtain a preprocessed at least one image component; constructing a prediction model according to the preprocessed at least one image component; wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0089] It is to be appreciated that the first memory 902 in embodiments of the application can be volatile or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of illustration, and not limitation, nonvolatile memory can be read only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically EPROM (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which acts as external cache. By way of illustration and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM). The first memory 902 of the system and method described herein are intended to include, without being limited to, these and any other suitable types of memory.

[0090] The first processor 903 can be an integrated circuit chip that has the processing capability of signals. In the implementation process, each step of the above method can be completed by the integrated logic circuit of hardware or the instruction in the form of software in the first processor 903. The first processor 903 described above can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application specific integrated circuit (Application Specific Integrated Circuit, ASIC), a ready programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. The disclosed methods, steps and logic block diagrams in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as hardware code processor execution, or executed by hardware and software module combination in the code processor. The software module can be located in the random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, register or other mature storage medium in the art. The storage medium is located in the first memory 902, and the first processor 903 reads the information in the first memory 902, and combines the hardware to complete the steps of the above method.

[0091] It can be understood that the embodiments described in the present application can be realized by hardware, software, firmware, middleware, microcode or combination thereof. For hardware implementation, the processing unit can be realized in one or more application specific integrated circuits (Application Specific Integrated Circuits, ASIC), digital signal processors (Digital Signal Processing, DSP), digital signal processing devices (DSP Device, DSPD), programmable logic devices (Programmable Logic Device, PLD), field programmable gate arrays (Field-Programmable Gate Array, FPGA), general processors, controllers, microcontrollers, microprocessors, other electronic units for executing functions described in the present application or combination thereof. For software implementation, the technology described in the present application can be realized by modules (such as processes, functions, etc.) for executing functions described in the present application. The software code can be stored in the memory and executed by the processor. The memory can be implemented in the processor or outside the processor.

[0092] Optionally, as another embodiment, the first processor 903 is further configured to execute the method in any one of the preceding embodiments when running the computer program.

[0093] The embodiment provides an encoder, which can comprise a first determining unit, a first processing unit and a first constructing unit, wherein the first determining unit is configured to determine at least one image component of a current block in an image; the first processing unit is configured to pre-process the at least one image component of the current block to obtain pre-processed at least one image component; and the first constructing unit is configured to construct a prediction model according to the pre-processed at least one image component, the prediction model being used for cross-component prediction processing of the at least one image component of the current block. In this way, the at least one image component of the current block is pre-processed before being predicted, so that the statistical characteristics of the image components before cross-component prediction can be balanced, thereby improving the prediction efficiency and the coding and decoding efficiency of the video image.

[0094] Based on the same inventive concept as the preceding embodiments, refer to Figure 10 which shows a component structure schematic diagram of a decoder 100 provided by the embodiment. The decoder 100 can comprise a second determining unit 1001, a second processing unit 1002 and a second constructing unit 1003, wherein, The second determining unit 1001 is configured to determine at least one image component of a current block in an image. The second processing unit 1002 is configured to pre-process the at least one image component of the current block to obtain pre-processed at least one image component. The second constructing unit 1003 is configured to construct a prediction model according to the pre-processed at least one image component, wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0095] In the above scheme, refer to Figure 10 The decoder 100 can further comprise a second statistical unit 1004 and a second acquisition unit 1005, wherein, The second statistical unit 1004 is configured to perform characteristic statistics on the at least one image component of the current block, wherein the at least one image component comprises a first image component and / or a second image component. The second acquisition unit 1005 is configured to acquire a reference value of the first image component of the current block and / or a reference value of the second image component of the current block according to the result of the characteristic statistics, wherein the first image component is a component used for prediction when the prediction model is constructed, and the second image component is a component predicted when the prediction model is constructed.

[0096] In the above solution, the second processing unit 1002 is further configured to perform first processing on the first image component of the current block based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block, by using a preset processing mode; wherein the preset processing mode at least includes one of the following: filtering processing, grouping processing, value correction processing, quantization processing and dequantization processing. The second obtaining unit 1005 is further configured to obtain the processing value of the first image component of the current block according to the result of the first processing.

[0097] In the above solution, referring to Figure 10 , the decoder 100 can further include a second adjusting unit 1006 and a second updating unit 1007, wherein The second adjusting unit 1006 is configured to perform resolution adjustment on the resolution of the first image component when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block; wherein the resolution adjustment includes up-sampling adjustment or down-sampling adjustment. The second updating unit 1007 is configured to update the reference value of the first image component of the current block based on the adjusted resolution of the first image component; wherein the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0098] In the above solution, the second adjusting unit 1006 is further configured to perform resolution adjustment on the resolution of the first image component when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block; wherein the resolution adjustment includes up-sampling adjustment or down-sampling adjustment. The second updating unit 1007 is further configured to update the processing value of the first image component of the current block based on the adjusted resolution of the first image component; wherein the adjusted resolution of the first image component is the same as the resolution of the second image component.

[0099] In the above solution, the second adjusting unit 1006 is further configured to perform second processing on the first image component based on the reference value of the first image component of the current block and / or the reference value of the second image component of the current block when the resolution of the first image component of the current block is different from the resolution of the second image component of the current block; wherein the second processing includes up-sampling and related processing of the preset processing mode, or down-sampling and related processing of the preset processing mode. The second obtaining unit 1005 is further configured to obtain a processed value of the first image component of the current block according to a result of the second processing, wherein a resolution of the processed first image component of the current block is the same as a resolution of the second image component of the current block.

[0100] In the foregoing solution, the second constructing unit 1003 is configured to parse a code stream, and construct the prediction model according to model parameters parsed.

[0101] In the foregoing solution, referring to Figure 10 , the decoder 100 can further include a second prediction unit 1008 configured to perform cross-component prediction on the second image component of the current block according to the prediction model to obtain a prediction value of the second image component of the current block.

[0102] It can be understood that, in this embodiment, the "unit" can be a part of circuit, a part of processor, a part of program or software, and the like, and of course can also be a module, and can also be non-modular. Moreover, the components in this embodiment can be integrated in a processing unit, or can be physically present individually, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function module.

[0103] When the integrated unit is realized in the form of a software function module and is not sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the embodiment provides a computer storage medium storing an image prediction program, which is executed by a second processor to implement the method in any one of the foregoing embodiments.

[0104] Based on the components of the decoder 100 and the computer storage medium, referring to Figure 11 , a specific hardware structure of the decoder 100 provided by the embodiment of the present application is shown, which can include a second communication interface 1101, a second memory 1102 and a second processor 1103; and the components are coupled together through a second bus system 1104. It can be understood that the second bus system 1104 is used to realize the connection and communication between the components. The second bus system 1104 includes a data bus, a power supply bus, a control bus and a state signal bus. However, for the purpose of clear illustration, all kinds of buses are marked as the second bus system 1104 in Figure 11 . Among them, The second communication interface 1101 is used for receiving and sending signals in the process of transceiving information with other external network elements; a second memory 1102, configured to store a computer program capable of running on the second processor 1103; a second processor 1103, configured to, when running the computer program, perform the following steps: determining at least one image component of a current block in an image; preprocessing the at least one image component of the current block to obtain a preprocessed at least one image component; constructing a prediction model according to the preprocessed at least one image component; wherein the prediction model is used for cross-component prediction processing of the at least one image component of the current block.

[0105] Optionally, as another embodiment, the second processor 1103 is further configured to, when running the computer program, perform the method in any one of the preceding embodiments.

[0106] It can be understood that the second memory 1102 has similar hardware functions as the first memory 902, and the second processor 1103 has similar hardware functions as the first processor 903; and details are not described here.

[0107] The embodiment provides a decoder, which can include a second determining unit, a second processing unit and a second constructing unit, wherein the second determining unit is configured to determine at least one image component of a current block in an image; the second processing unit is configured to preprocess the at least one image component of the current block to obtain a preprocessed at least one image component; and the second constructing unit is configured to construct a prediction model according to the preprocessed at least one image component, the prediction model being used for cross-component prediction processing of the at least one image component of the current block; in this way, the at least one image component of the current block is preprocessed before prediction, which can balance the statistical characteristics of the image components before cross-component prediction, thereby improving the prediction efficiency and also improving the coding efficiency of the video image.

[0108] It should be noted that, in the present application, the terms "comprising", "including", or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or other elements inherent to such a process, method, article or device. Without more limitations, the element defined by the statement "including a" does not exclude the presence of another identical element in the process, method, article or device including the element.

[0109] The serial numbers of the embodiments of the present application described above are only for description, and do not represent the advantages and disadvantages of the embodiments.

[0110] The methods disclosed in the several method embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments.

[0111] The features disclosed in the several product embodiments provided by the present application can be combined arbitrarily without conflict to obtain new product embodiments.

[0112] The features disclosed in the several method or device embodiments provided by the present application can be combined arbitrarily without conflict to obtain new method embodiments or device embodiments.

[0113] The above merely illustrates the specific embodiments of the present application, but the protection scope of the present application is not limited thereto, any person skilled in the art can easily think of the changes or replacements within the technical range disclosed by the present application, which should be covered in the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

[0114] Industrial applicability In the embodiments of the present application, at least one image component of a current block in an image is determined first; then the at least one image component of the current block is preprocessed to obtain at least one preprocessed image component; and then a prediction model is constructed according to the at least one preprocessed image component, which is used to perform cross-component prediction processing on the at least one image component of the current block. In this way, the at least one image component is preprocessed before prediction, which can balance the statistical characteristics of the image components before cross-component prediction, thereby improving the prediction efficiency. In addition, the predicted value of the image component obtained by using the prediction model is closer to the true value, so that the prediction residual of the image component is smaller, which reduces the bit rate transmitted in the encoding and decoding process, and also improves the encoding and decoding efficiency of the video image.

Claims

1. A method of storing a bitstream, comprising: The method comprises the following steps: determining a reference value of a first image component of a current block in an image; wherein the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; filtering the reference value of the first image component of the current block to obtain a filtered reference value; calculating a model parameter of a prediction model by using the filtered reference value, wherein the prediction model is used to map a value of the first image component of the current block to a predicted value of a second image component of the current block, and the second image component is different from the first image component.

2. The method of claim 1, wherein, The method further comprises: filtering the first image component of the current block.

3. The method of claim 1, wherein, The step of calculating the model parameter of the prediction model by using the filtered reference value comprises: obtaining a reference value of the second image component of the current block; wherein the reference value of the second image component of the current block is a second image component value of the neighboring pixel of the current block; calculating the model parameter of the prediction model by using the filtered reference value and the reference value of the second image component of the current block.

4. The method of claim 1, wherein, The step of filtering the reference value of the first image component of the current block to obtain the filtered reference value comprises: when the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing first adjustment processing on the reference value of the first image component of the current block to update the reference value of the first image component of the current block, wherein the first adjustment processing comprises one of the following: down-sampling filtering; filtering the reference value of the first image component of the current block to obtain the filtered reference value.

5. The method of claim 1 or 4, wherein, The method further comprises: filtering the reference value of the first image component of the current block according to a preset processing mode; wherein the preset processing mode at least comprises one of the following: filtering processing, grouping processing.

6. The method of claim 1, wherein, The step of filtering the reference value of the first image component of the current block to obtain the filtered reference value comprises: when the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing second adjustment processing on the reference value of the second image component of the current block to update the reference value of the second image component of the current block, wherein the second adjustment processing comprises: down-sampling.

7. The method of claim 1, wherein, The method further comprises: mapping the value of the first image component of the current block according to the prediction model to obtain the predicted value of the second image component of the current block.

8. A method of reading a code stream, characterized by, reading a code stream, and decoding the code stream to generate a video or an image by using an image prediction method, wherein the image prediction method comprises: determining a reference value of a first image component of a current block in an image; wherein the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; filtering the reference value of the first image component of the current block to obtain a filtered reference value; calculating a model parameter of a prediction model by using the filtered reference value, wherein the prediction model is used to map a value of the first image component of the current block to a predicted value of a second image component of the current block, and the second image component is different from the first image component. Calculate model parameters of a prediction model by using the filtered reference value, wherein the prediction model is used to map a value of the first image component of the current block to a prediction value of a second image component of the current block, and the second image component is different from the first image component.

9. The method of claim 8, wherein, The method further comprises: performing filtering processing on the reference value of the first image component of the current block.

10. The method of claim 8, wherein, The calculating of the model parameters of the prediction model by using the filtered reference value comprises: obtaining a reference value of a second image component of the current block; wherein the reference value of the second image component of the current block is a second image component value of a neighboring pixel of the current block; calculating the model parameters of the prediction model by using the filtered reference value and the reference value of the second image component of the current block.

11. The method of claim 8, wherein, The filtering processing on the reference value of the first image component of the current block comprises: performing first adjustment processing on the reference value of the first image component of the current block to update the reference value of the first image component of the current block, when the resolution of the second image component of the image is different from the resolution of the first image component of the image, wherein the first adjustment processing comprises one of downsampling filtering. The filtering processing on the reference value of the first image component of the current block comprises:

12. The method of claim 8 or 11, wherein, performing the filtering processing on the reference value of the first image component of the current block to obtain the filtered reference value. The method further comprises:

13. The method of claim 8, wherein, performing filtering processing on the reference value of the first image component of the current block according to a preset processing mode; wherein the preset processing mode comprises at least one of filtering processing and grouping processing. The filtering processing on the reference value of the first image component of the current block comprises:

14. The method of claim 8, wherein, performing second adjustment processing on the reference value of the second image component of the current block to update the reference value of the second image component of the current block, when the resolution of the second image component of the image is different from the resolution of the first image component of the image, wherein the second adjustment processing comprises downsampling. The method further comprises:

15. A computer storage medium, wherein, mapping the value of the first image component of the current block according to the prediction model to obtain the prediction value of the second image component of the current block. The computer storage medium stores an image prediction program and a code stream, and the image prediction program is executed by a first processor to implement an image prediction method to generate the code stream, wherein the image prediction method comprises: determining a reference value of a first image component of a current block in an image; wherein the reference value of the first image component of the current block is a first image component value of a neighboring pixel of the current block; performing filtering processing on the reference value of the first image component of the current block to obtain a filtered reference value; 16. The method of claim 15, wherein, calculating model parameters of a prediction model by using the filtered reference value, wherein the prediction model is used to map a value of the first image component of the current block to a prediction value of a second image component of the current block, and the second image component is different from the first image component. The method further comprises: Filtering the reference value of the first image component of the current block.

17. The method of claim 15, wherein, The model parameter of the prediction model is calculated by using the filtered reference value. Obtaining a reference value of a second image component of the current block, wherein the reference value of the second image component of the current block is a second image component value of a neighboring pixel of the current block; The model parameter of the prediction model is calculated by using the filtered reference value and the reference value of the second image component of the current block.

18. The method of claim 15, wherein, The filtering of the reference value of the first image component of the current block comprises: When the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing a first adjustment processing on the reference value of the first image component of the current block to update the reference value of the first image component of the current block, wherein the first adjustment processing comprises one of downsampling filtering. The filtering of the reference value of the first image component of the current block comprises:

19. The method of claim 15 or 18, wherein, The method further comprises: According to the reference value of the first image component of the current block, filtering the reference value by using a preset processing mode; wherein the preset processing mode at least comprises one of filtering processing and grouping processing.

20. The method of claim 15, wherein, The filtering of the reference value of the first image component of the current block comprises: When the resolution of the second image component of the image is different from the resolution of the first image component of the image, performing a second adjustment processing on the reference value of the second image component of the current block to update the reference value of the second image component of the current block, wherein the second adjustment processing comprises downsampling.

21. The method of claim 15, wherein, The method further comprises: According to the prediction model, mapping the value of the first image component of the current block to obtain a prediction value of the second image component of the current block.