CN115988212A - Encoding method, encoder, and computer-readable storage medium - Google Patents

Encoding method, encoder, and computer-readable storage medium Download PDF

Info

Publication number
CN115988212A
CN115988212A CN202211463044.9A CN202211463044A CN115988212A CN 115988212 A CN115988212 A CN 115988212A CN 202211463044 A CN202211463044 A CN 202211463044A CN 115988212 A CN115988212 A CN 115988212A
Authority
CN
China
Prior art keywords
pixel
value
target
pixel point
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211463044.9A
Other languages
Chinese (zh)
Inventor
张雪
江东
林聚财
殷俊
方诚
彭双
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202211463044.9A priority Critical patent/CN115988212A/en
Publication of CN115988212A publication Critical patent/CN115988212A/en
Priority to PCT/CN2023/107408 priority patent/WO2024012559A1/en
Pending legal-status Critical Current

Links

Images

Abstract

The application discloses an encoding method, an encoding device and a computer readable storage medium, wherein the encoding method comprises the following steps: acquiring a current template and a reference template of a current block, wherein the current template comprises a plurality of reconstructed first pixel points in a current frame, the reference template comprises a plurality of reconstructed second pixel points in a reference frame, the current frame comprises the current block, and the reference frame corresponds to the current frame; constructing a first target prediction model according to a first reconstruction pixel value of a first pixel point and a plurality of corresponding second reconstruction pixel values, wherein the plurality of second reconstruction pixel values comprise a plurality of values in the reconstruction pixel values of pixel points around a first reference pixel point and the reconstruction pixel value of the first reference pixel point, and the first reference pixel point is a pixel point corresponding to the first pixel point in a reference template; and predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first prediction value of the pixel point to be encoded. The method provided by the application can optimize the visual effect of the image.

Description

Encoding method, encoder, and computer-readable storage medium
Technical Field
The present application relates to the field of video coding, and more particularly, to a coding method, a coder and a computer-readable storage medium.
Background
Because the amount of video image data is large, it is usually necessary to encode and compress the video image data before transmitting or storing the video image data, and the encoded data is called a video code stream.
At present, when video image data is coded, a linear prediction mode is generally adopted for coding. The linear prediction refers to constructing a linear model between a reference block and a current coding block, and then enabling reconstructed pixels of the reference block to predict a pixel value of the current coding block through the linear model, wherein parameters of the linear model are obtained by calculation by using reconstructed pixel values of the current coding block and adjacent reconstructed pixels of the reference block.
The inventors of the present application have found that the above prediction process has certain limitations, and the prediction process is yet to be further optimized.
Disclosure of Invention
The present application provides an encoding method, an encoder, and a computer-readable storage medium capable of optimizing a visual effect of an image.
A first aspect of an embodiment of the present application provides an encoding method, where the method includes: acquiring a current template and a reference template of a current block, wherein the current template comprises a plurality of reconstructed first pixel points in a current frame, the reference template comprises a plurality of reconstructed second pixel points in a reference frame, the current frame comprises the current block, and the reference frame corresponds to the current frame; constructing a first target prediction model according to a first reconstruction pixel value of the first pixel point and a plurality of corresponding second reconstruction pixel values, wherein the plurality of second reconstruction pixel values comprise reconstruction pixel values of pixel points around a first reference pixel point and a plurality of values in the reconstruction pixel values of the first reference pixel point, and the first reference pixel point is a pixel point corresponding to the first pixel point in the reference template; and predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first prediction value of the pixel point to be encoded.
A second aspect of the embodiments of the present application provides a decoding method, including: receiving coded data sent by a coder; decoding the coded data to obtain a predicted value of a current pixel point in a current decoding block; and the predicted value of the current pixel point in the current decoding block is obtained by adopting any one of the coding methods.
A third aspect of the embodiments of the present application provides an encoder, where the encoder includes a processor, a memory, and a communication circuit, where the processor is respectively coupled to the memory and the communication circuit, the memory stores program data, and the processor implements the steps in the encoding method by executing the program data in the memory.
A fourth aspect of the embodiments of the present application provides a decoder, where the decoder includes a processor, a memory, and a communication circuit, the processor is respectively coupled to the memory and the communication circuit, the memory stores program data, and the processor implements the steps in the decoding method by executing the program data in the memory.
A fifth aspect of embodiments of the present application provides a computer-readable storage medium, which stores a computer program, the computer program being executable by a processor to implement the steps in the above method.
The beneficial effects are that: when the prediction model is built, the first reference pixel point is not considered any more, but the reconstructed pixel values of the pixels around the first reference pixel point and a plurality of values in the reconstructed pixel values of the first reference pixel point are combined at the same time, so that the accuracy of the built first target prediction model can be improved, the accuracy of the final prediction of the pixel point to be coded can be improved, and the effect of final image transmission is ensured.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, it is obvious that the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without inventive efforts, wherein:
FIG. 1 is a schematic diagram of a simple structure for linear prediction in the prior art;
FIG. 2 is a schematic flow chart diagram of an embodiment of the encoding method of the present application;
FIG. 3 is a schematic diagram of a current block and a current template;
FIG. 4 is a schematic diagram of a reference block and a reference template;
FIG. 5 is a diagram of a second pixel point and surrounding pixel points;
FIG. 6 is a partial flow chart of the encoding method of the present application in a first application scenario;
fig. 7 is a schematic flowchart of the encoding method in the second application scenario in step S120;
fig. 8 is a schematic flowchart of the encoding method in the second application scenario in step S130;
fig. 9 is a schematic flowchart of the encoding method in the third application scenario in step S110;
FIG. 10 is a schematic diagram of a current block and a target region outside the current block;
FIG. 11 is a schematic flow chart of step S112 in FIG. 9;
FIG. 12 is a schematic illustration of determining a current template and a reference template corresponding to FIG. 11;
FIG. 13 is a partial flow chart of the encoding method of the present application in a fourth application scenario;
FIG. 14 is a partial flow chart of the coding method in a fifth application scenario;
FIG. 15 is a schematic flow chart diagram of another embodiment of the encoding method of the present application;
FIG. 16 is a schematic diagram of an encoded block of three color components with respective reference blocks, current templates, reference templates;
FIG. 17 is a schematic flow chart diagram of another embodiment of the encoding method of the present application;
FIG. 18 is a process diagram corresponding to FIG. 17 in an application scenario;
FIG. 19 is a schematic flow chart diagram of another embodiment of the encoding method of the present application;
FIG. 20 is a process diagram corresponding to FIG. 19 in an application scenario;
FIG. 21 is a flowchart illustrating an embodiment of a decoding method according to the present application;
FIG. 22 is a schematic block diagram of an embodiment of an encoder of the present application;
FIG. 23 is a schematic block diagram of another embodiment of an encoder of the present application;
FIG. 24 is a block diagram of an embodiment of a decoder of the present application;
FIG. 25 is a block diagram of another embodiment of a decoder of the present application;
FIG. 26 is a block diagram of an embodiment of a computer-readable storage medium of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be described clearly and completely with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only some embodiments of the present application, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
It should be noted that the terms "first" and "second" in the present application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "plurality" means at least two, e.g., two, three, etc., unless explicitly specified otherwise. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements but may alternatively include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that the terms "first" and "second" in the present application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "plurality" means at least two, e.g., two, three, etc., unless explicitly specified otherwise. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
It should be noted that the terms "first" and "second" in this application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or to imply that the number of indicated technical features is significant. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "plurality" means at least two, e.g., two, three, etc., unless explicitly specifically limited otherwise. Furthermore, the terms "include" and "have," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those steps or elements listed, but may alternatively include other steps or elements not listed, or inherent to such process, method, article, or apparatus.
For better understanding of the scheme of the present application, a brief introduction will first be made to the background of coding:
in video coding and decoding, in order to improve compression rate and reduce code words required to be transmitted, an encoder does not directly carry out coding transmission on pixel values, but adopts an intra-frame or inter-frame prediction mode, namely, a reconstructed pixel point of a coded block of a current frame or a reference frame is adopted to predict the pixel values of a current block. The pixel value obtained by prediction in a certain prediction mode is called a predicted pixel value, and the difference between the predicted pixel value and the original pixel value is called a residual error. The encoder only needs to encode a certain prediction mode and a residual error generated when the prediction mode is adopted, and the decoding end can decode corresponding pixel values according to the code stream information, so that code words required by encoding are greatly reduced.
When a certain image frame is encoded, the encoding blocks in the image frame are usually encoded in a certain order, for example, the encoding blocks in the image frame are sequentially encoded in the order from left to right and from top to bottom, or the encoding blocks may be sequentially encoded in the order from right to left and from bottom to top. It can be understood that, when coding each coding block in the image frame in sequence from left to right and from top to bottom, for any coding block, the reconstruction pixel points (predicted pixel points) adjacent to the coding block are distributed above and to the left of the coding block, and when coding each coding block in sequence from right to left and from bottom to top, for any coding block, the reconstruction pixel points adjacent to the coding block are distributed below and to the right of the coding block, wherein for convenience of description, the coding of each coding block in the image frame is described in sequence from left to right and from top to bottom.
For convenience of explanation, an encoding block being encoded at the current time is defined as a current block, wherein when encoding is performed by using inter-frame prediction, a reference block closest to the current block needs to be found in a reference frame (which may be any image frame that has already been encoded) by using a method such as motion search, and motion information such as a motion vector MV (motion vector) between the current block and the reference block is recorded.
Referring to fig. 1, in fig. 1, a current block is a diagonal filling part, which is denoted by reference numeral 1, and a current template of the current block is a dot filling part, wherein the current template includes at least one reconstructed pixel around the current block; the reference block of the current block is a horizontal line filling part and is denoted by reference numeral 2, the reference template of the reference block is a grid filling part, wherein the reference template comprises at least one reconstructed pixel point around the reference block, and the current block becomes a prediction block after prediction and is denoted by reference numeral 3.
When the coding is performed by using a LIC (local illumination compensation) mode, the coding process is as follows:
the method comprises the steps of constructing a linear model by utilizing illumination changes between all pixel points in a current template of a current block and all pixel points in a reference template of a reference block of the current block, wherein the linear model represents a local illumination relation between the current block and the reference block, parameters of the linear model comprise a scaling factor alpha and an offset beta, and then compensating the difference of the current block and the reference block in brightness by utilizing the linear model, namely determining a predicted pixel value of the pixel point in the current block by utilizing the following formula:
qi = α × pi + β, where pi is an initial predicted pixel value of a pixel i in the current block, qi is a predicted pixel value of the pixel i, where pi is obtained by performing motion compensation according to a motion vector MV between the current block and the reference block, and a determination process regarding pi is not specifically described here.
It can be seen from the above process that, in the existing encoding process using the LIC mode, only the reference point corresponding to the current pixel point in the reference block is considered, but in the actual image, the current pixel point may not only be affected by the reference point corresponding to the current pixel point, but also be affected by other pixel points, so the existing encoding process is inconsistent with the implementation situation, and therefore, in order to overcome the defects in the prior art, the following scheme is proposed in the present application:
referring to fig. 2, fig. 2 is a schematic flowchart of an embodiment of an encoding method of the present application, where the encoding method includes:
s110: the method comprises the steps of obtaining a current template and a reference template of a current block, wherein the current template comprises a plurality of reconstructed first pixel points in a current frame, the reference template comprises a plurality of reconstructed second pixel points in a reference frame, the current frame comprises the current block, and the reference frame corresponds to the current frame.
Specifically, the current block refers to an encoding block to be currently encoded in the current frame, and may also be referred to as a current encoding block. The current block may be a prediction block or a sub-block within a prediction block. Meanwhile, the current block may be a luminance block or a chrominance block, which is not limited herein.
After the current block is obtained, the coding block matched with the current block is searched in the reference frame, and the coding block is defined as the reference block. The process of determining the reference block in the reference frame may be determining by any method in the prior art, for example, determining the encoding block closest to the current block in the reference frame by a motion search or the like.
The current template and the reference template can be determined by methods known in the art, and see also the description below.
S120: and constructing a first target prediction model according to the first reconstruction pixel value of the first pixel point and a plurality of corresponding second reconstruction pixel values, wherein the plurality of second reconstruction pixel values comprise a plurality of values in the reconstruction pixel values of the pixel points around the first reference pixel point and the reconstruction pixel value of the first reference pixel point, and the first reference pixel point is a pixel point corresponding to the first pixel point in the reference template.
Specifically, a first pixel point in the current template corresponds to a second pixel point in the reference template one to one, and the position of the first pixel point in the current template is the same as the position of the corresponding second pixel point in the reference template, which is described herein with reference to an example for better understanding:
with reference to fig. 3 and 4, in fig. 3, the current block is denoted by 10, the pixel points filled with dots around the current block are first pixel points in the current template, the reference block is denoted by 20 in fig. 4, and the pixel points filled with dots around the reference block are second pixel points in the reference template, then the second pixel points corresponding to the first pixel points denoted by 11 in fig. 3 are the pixel points denoted by 13 in fig. 4, and the second pixel points corresponding to the first pixel points denoted by 12 in fig. 3 are the pixel points denoted by 14 in fig. 4.
Meanwhile, the plurality of second reconstructed pixel values corresponding to the first pixel point comprise the reconstructed pixel value of the first reference pixel point and the reconstructed pixel value of at least one pixel point around the first reference pixel point, or the plurality of second reconstructed pixel values comprise the reconstructed pixel values of the plurality of pixel points around the first reference pixel point, or the plurality of second reconstructed pixel values comprise the reconstructed pixel value of the first reference pixel point and the reconstructed pixel value of the pixel point around the first reference pixel point.
For a better understanding, this is explained here in connection with fig. 5:
in the application scenario of fig. 5, all surrounding pixels of the second pixel and the second pixel form a "nine-square grid", in the application scenario, the pixel a is a first reference pixel corresponding to the first pixel, and at least one of the surrounding pixels of the first reference pixel includes at least one of the pixel B, the pixel C, the pixel D, the pixel E, the pixel F, the pixel G, the pixel H, and the pixel I, that is, at this time, the multiple second reconstructed pixel values corresponding to the first pixel include the reconstructed pixel values of the plurality of pixels of the pixel a, the pixel B, the pixel C, the pixel D, the pixel E, the pixel F, the pixel G, the pixel H, and the pixel I.
Meanwhile, in this embodiment, the first target prediction model may be constructed according to the first reconstructed pixel values of all the first pixel points and the plurality of second reconstructed pixel values corresponding to each first pixel point, or the first target prediction model may be constructed according to the first reconstructed pixel values of a part of the first pixel points and the plurality of second reconstructed pixel values corresponding to the part of the first pixel points.
Specifically, which pixel point is the reconstructed pixel value of the plurality of second reconstructed pixel values corresponding to the first pixel point may be predetermined by a designer, or may be determined according to parameters such as a texture and a size of the current block, for example, when the texture of the current block is determined to be a horizontal texture, in the application scenario of fig. 5, the plurality of second reconstructed pixel values corresponding to the first pixel point may be set to include the reconstructed pixel values of the pixel points E, a, and C.
In the prior art, the prediction model is constructed only according to the first reconstructed pixel value of the first pixel point and the reconstructed pixel value of the first reference pixel point. In the construction process, only the relation between the first pixel point and the first reference pixel point is considered, so that limitation exists, the prediction result is inaccurate, and the visual effect of the transmitted image is influenced.
When the prediction model is built, the first reference pixel point is not considered any more, but the reconstructed pixel values of the pixels around the first reference pixel point and a plurality of values in the reconstructed pixel values of the first reference pixel point are combined at the same time, so that the accuracy of the built first target prediction model can be improved, the accuracy of the final prediction of the pixel point to be coded can be improved, and the effect of final image transmission is ensured.
S130: and predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first predicted value of the pixel point to be encoded.
Specifically, after the first target prediction model is obtained, the model is used for predicting the pixel point to be encoded in the current block to obtain a corresponding first prediction value.
The first target prediction model may be used to predict all pixels to be encoded in the current block to obtain a corresponding first prediction value, or predict matched pixels to be encoded to obtain a corresponding first prediction value, where reference may be made to the following description.
From the above content, the first target prediction model is constructed according to the first reconstruction pixel value of the first pixel point and the corresponding plurality of second reconstruction pixel values. For ease of explanation, the method employed in the present application will be referred to as the modified LIC method.
In this embodiment, step S120 specifically includes:
s121: and determining a plurality of model parameters according to the first reconstruction pixel values of the first pixel points and the corresponding plurality of second reconstruction pixel values.
Meanwhile, step S130 specifically includes:
s131: and determining a first predicted value of the pixel point to be encoded according to the target values and the model parameters, wherein the target values correspond to the model parameters one to one.
The target values comprise a plurality of first target reconstruction pixel values corresponding to pixel points to be coded and a plurality of values in operation values, the operation values are obtained by operating the first target reconstruction pixel values, the first target reconstruction pixel values comprise the reconstruction pixel values of the first target pixel points and the reconstruction pixel values of pixel points around the first target pixel points, and the first target pixel points are pixel points corresponding to the pixel points to be coded in the reference block.
Specifically, the plurality of target values correspond to the plurality of model parameters one-to-one, that is, which of the target value parameter calculations is specifically used is determined by the plurality of model parameters, and the model parameters are determined by the process of constructing the first target prediction model, that is, step S1301 is related to the process of constructing the first target prediction model.
The position of the first target pixel point in the reference block is the same as the position of the pixel point to be encoded in the current block, and the plurality of first target reconstruction pixel values include the reconstruction pixel value of the first target pixel point and the reconstruction pixel values of the pixel points around the first target pixel point, for example, in the application scenario of fig. 5, if the pixel point a is the first target pixel point, the reconstruction pixel values of the pixel points around the first target pixel point include the reconstruction pixel values of the pixel point B, the pixel point C, the pixel point D, the pixel point E, the pixel point F, the pixel point G, the pixel point H and the pixel point I.
Meanwhile, the operation value is obtained by operating the first target reconstruction pixel value, specifically, the first target reconstruction pixel value may be substituted into a preset function to obtain the operation value, where the preset function may be an identity function, a square function, an absolute value function, or the like, and is not limited herein.
In an application scenario, the following model formula may be used to determine the first prediction value y of the pixel point to be encoded:
y=p 1 X 1 +p 2 X 2 +…+p i X i +……p n X n
wherein p is 1 、p 2 、……p i ……p n Respectively representing a plurality of model parameters, X 1 、X 2 、…X i 、……X n Respectively representing a plurality of target values, model parameters p i And a target value X i And (4) corresponding to each other.
That is, at this time, the plurality of target values are multiplied by the corresponding model parameters to obtain a plurality of first products; and then determining the sum of all the first products as a first predicted value of the pixel point to be coded.
Of course, the present application is not limited to this, and in other embodiments, after the sum of all the first products is obtained, a series of calculations may be performed on the sum, so as to obtain the first prediction value of the pixel point to be encoded.
Or in other embodiments, other model formulas can be adopted to calculate the first predicted value of the pixel point to be encoded.
In the application scenario of fig. 5, if the pixel point a is the first target pixel point, the model formula may be set as several types:
the model formula I is as follows: a = p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 c;
The model formula II is as follows: a = p 1 A+p 2 B 2 +p 3 c;
The model formula III is as follows: a = p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 c+p 7 A 2
Model (model)The formula four is as follows: a = p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 F+p 7 G+p 8 H+p 9 I+p 10 c;
Wherein, a is a first predicted value of a pixel point to be coded, A, B, C, D, E, F, G, H, I are respectively the reconstructed pixel values of the pixel points A, B, C, D, E, F, G, H, I, and C is a preset constant value.
That is to say, in the application scenario of fig. 5, any one of the above model formulas may be used to determine the first prediction value of the pixel to be encoded, and certainly, other model formulas may also be used to determine the first prediction value of the pixel to be encoded, which is not illustrated herein.
From the above, it can be seen that the essence of the prediction using the first object prediction model is to perform calculation using a model formula, and the purpose of constructing the first object prediction model is to determine a plurality of model parameters in the model formula.
For convenience of explanation, the following description is made with reference to examples:
when the first predicted value of the pixel point to be coded is determined, if the first predicted value of the pixel point to be coded is determined by using the first model formula, the process of constructing the first target prediction model is to determine that y = p 1 X 1 +p 2 X 2 +p 3 X 3 +p 4 X 4 +p 5 X 5 +p 6 In c is p 1 ~p 6 Specifically, assuming that the pixel point a in fig. 5 is a first reference pixel point corresponding to the first pixel point, the 6 model parameters substitute the first reconstructed pixel value of the first pixel point into y, X in the above formula for a plurality of first pixel points 1 Substituted is the reconstructed pixel value, X, of pixel point A 2 Substituted is the reconstructed pixel value, X, of pixel B 3 Substituted is the reconstructed pixel value, X, of pixel point C 4 Substituted is the reconstructed pixel value, X, of pixel D 5 Substituting the reconstructed pixel value of the pixel point E so as to obtain a plurality of equations, and then obtaining p through a fitting process 1 ~p 6 The value of (c) can be used finally in predictionAnd predicting the pixel point to be encoded by the model formula I.
In a first application scenario, referring to fig. 6, the method of this embodiment further includes:
s210: after the first target prediction model is sequentially constructed into a plurality of different candidate prediction models, first predicted values of all pixel points to be coded under each candidate prediction model are respectively determined.
The steps S120 to S130 are executed multiple times, and each time the step S120 is executed, the first target prediction model is constructed into different models, and the first prediction value of each pixel to be encoded under different models is obtained, that is, for any pixel to be encoded in the current block, the first prediction value of each pixel to be encoded under different models can be obtained.
For example, when the step S120 to the step S130 are executed for the first time, a plurality of model parameters in the first model formula are fitted, then the model formula with known model parameters is used to predict each pixel to be encoded, so as to obtain a first predicted value of each pixel to be encoded, the step S120 to the step S130 is executed for the second time, a plurality of model parameters in the second model formula are fitted, then each pixel to be encoded is predicted by using the third model formula, the step S120 to the step S130 is executed for the third time, a plurality of model parameters in the third model formula are fitted, then each pixel to be encoded is predicted by using the third model formula, the step S120 to the step S130 is executed for the fourth time, a plurality of model parameters in the fourth model formula are fitted, and then each pixel to be encoded is predicted by using the fourth model formula.
S220: and respectively determining a cost value corresponding to each candidate prediction model according to the first prediction value of all the pixel points to be coded under each candidate prediction model.
Specifically, for each candidate prediction model, according to first predicted values of all to-be-encoded pixel points in the current block under the candidate prediction model, a cost value corresponding to the candidate prediction model is determined. The cost value is specifically a rate distortion cost value, and when determining the cost value, besides the first predicted values of all the pixels to be encoded need to be utilized, other parameters such as quantization parameters and the like can be combined, but the process of determining the cost value belongs to the prior art, and is not described in detail herein.
S230: and determining the candidate prediction model with the minimum cost value as a final prediction model.
S240: and respectively determining the first predicted value of each pixel point to be coded under the final prediction model as the final predicted value of each pixel point to be coded.
Specifically, the cost value corresponding to each candidate prediction model may be obtained through step S220, and then the candidate prediction model with the smallest cost value may be searched.
The candidate prediction model is determined as a final prediction model, and a first prediction value of the pixel point to be coded in the model is determined as a final prediction value.
That is, in this application scenario, a plurality of candidate prediction models are used to compete, and one of them is finally selected.
In this application scenario, in order to indicate the final prediction model to the decoding side, a first syntax element is generated, and steps S210-S240 are performed in response to the first syntax element indication, and a second syntax element is generated, the second syntax element indicating the final prediction model.
Specifically, in the LIC method, a syntax element indicating that the LIC method is used is LIC _ enable _ flag, when LIC _ enable _ flag =1 is set, the LIC method is used, when LIC _ enable _ flag =0 is set, the LIC method is not used, when LIC _ enable _ flag =1 is set, a first syntax element LIC _ mode _ flag is generated, when LIC _ mode _ flag =1 is set, an improved LIC method is used, and when the improved LIC method is set, a plurality of candidate prediction models are used for competition, when LIC _ mode _ flag =0 is set, a conventional LIC method is used, when LIC _ mode _ flag =1 is set, a second syntax element LIC _ mode _ flag is also generated, assuming that 4 candidate prediction models are used for competition, the four candidate prediction models are respectively represented by 0, 1, 2, and 3, wherein when a candidate prediction model with a reference number of 0 is set, when a final prediction model is set, a prediction model is set as a final prediction model, when a prediction model =3 is set, and when a final prediction model is determined, a prediction model is set as a final prediction model, a prediction model =3, and when a prediction model is set as a final prediction model =3, a prediction model.
Wherein the second syntax element lic _ mode _ type _ flag need not be generated when competing without using multiple candidate prediction models.
In a second application scenario, referring to fig. 7, step S120 specifically includes:
s1201: and classifying the second pixel points based on the reconstructed pixel values of the second pixel points to obtain a plurality of second pixel classes.
Specifically, after classification, two second pixel points with relatively close reconstruction pixel values are generally classified into the same second pixel class, and two second pixel points with relatively large difference in reconstruction pixel values are generally classified into different second pixel classes.
Wherein, can classify the second pixel according to the pixel threshold, this process includes: from the pixel thresholds, four classification intervals, namely (∞, A1), [ A1, A2), [ A2, A3) and [ A3, + ∞ ], can be constructed, for example if the number of pixel thresholds is three. Assuming that only one pixel threshold is included, the pixel threshold is B1, two classification intervals, namely (∞, B1) and [ B1, + ∞ ], can be constructed, and after the classification intervals are constructed, second pixel points of the reconstructed pixel values in the same classification interval are classified into one pixel class, so that the second pixel points are classified.
Or the second pixel points can be classified by using a clustering algorithm, wherein the clustering algorithm can be any one of the clustering algorithms in the prior art, such as a k-means clustering algorithm, a dbss clustering algorithm or a CLARANS clustering algorithm, and the application does not limit the type of the clustering algorithm.
For convenience of description, the second pixel points are classified according to a pixel threshold, wherein the pixel threshold is an average value of reconstructed pixel values of the second pixel points, the second pixel points are classified according to the average value, two second pixel classes are obtained, one second pixel class comprises the second pixel points of which the reconstructed pixel values do not exceed the average value, and the other second pixel class comprises the second pixel points of which the reconstructed pixel values exceed the average value.
S1202: and respectively determining a first pixel class corresponding to each second pixel class in the current template, wherein a first pixel point in the first pixel class corresponds to a second pixel point in the corresponding second pixel class one by one, and the first pixel point corresponding to the second pixel class is a pixel point in the current template, which has the same position as the second pixel point.
Specifically, for each second pixel class, a corresponding first pixel class is determined, wherein the process of determining the corresponding first pixel class includes: and aiming at each second pixel point in the second pixel class, searching a first pixel point with the same position in the current template, and adding the first pixel point into the first pixel class corresponding to the second pixel class. That is to say, a first pixel point in the first pixel class corresponds to a second pixel point in the corresponding second pixel class one to one, and the first pixel point corresponding to the second pixel point is a pixel point in the current template, the position of which is the same as that of the second pixel point.
S1203: and respectively constructing a first target prediction model corresponding to each first pixel class according to the first reconstruction pixel value of the first pixel point in each first pixel class and the corresponding plurality of second reconstruction pixel values.
Specifically, for each first pixel class, a corresponding first target prediction model is constructed, and the process includes: and constructing a first target prediction model according to the first reconstruction pixel value of the first pixel point in the first pixel class and the corresponding at least one second reconstruction pixel value. The specific process of constructing the first target prediction model has been introduced above, and is not described herein again.
Referring to fig. 8, step S130 includes:
s1301: and classifying the third pixel points based on the reconstructed pixel values of the third pixel points in the reference block to obtain a plurality of third pixel classes, wherein the rule for classifying the third pixel points is the same as the rule for classifying the second pixel points.
Specifically, after step S132, two third pixel points with relatively close reconstructed pixel values are generally classified into the same third pixel class, and two third pixel points with relatively larger difference reconstructed pixel values are generally classified into different third pixel classes.
The rule for classifying the second pixel points is the same as the rule for classifying the third pixel points, that is, when the second pixel points are classified, the two second pixel points are classified into the same second pixel class, and when the second pixel points are classified, the two third pixel points are classified into the same third pixel class.
For example, when the second pixel points are classified by the average value of the reconstructed pixel values of the second pixel points, the third pixel points are also classified by the average value at this time, and two third pixel classes are obtained, where one third pixel class includes third pixel points whose reconstructed pixel values do not exceed the average value, and the other third pixel class includes third pixel points whose reconstructed pixel values exceed the average value.
S1302: and predicting the pixel point to be encoded by using a first target prediction model corresponding to the pixel point to be encoded to obtain a first predicted value of the pixel point to be encoded.
The first target prediction model corresponding to the pixel to be coded is a first target prediction model corresponding to a target first pixel class in a plurality of first pixel classes, the target first pixel class corresponds to a target second pixel class in a plurality of second pixel classes, the target second pixel class is the same as a target third pixel class in a plurality of third pixel classes, and the target third pixel class comprises pixel points corresponding to the pixel to be coded in the reference block.
Specifically, the process of determining the first target prediction model corresponding to the pixel point to be encoded includes: the method comprises the steps of firstly determining a third pixel point corresponding to a pixel point to be coded in a reference block, then judging a third pixel class where the third pixel point is located, then searching a second pixel class the same as the third pixel class, then searching a first pixel class corresponding to the second pixel class, and finally, determining that a first target prediction model corresponding to the first pixel class is a first target prediction model corresponding to the pixel point to be coded.
After a first target prediction model corresponding to the pixel point to be coded is determined, the pixel point to be coded is predicted by using the model, and a first predicted value of the pixel point to be coded is obtained.
It can be understood that, if two to-be-encoded pixel points respectively correspond to third pixel points and belong to the same third pixel class, the first target prediction models corresponding to the two to-be-encoded pixel points are the same model.
In the scheme, the prediction can be realized by using a plurality of first target prediction models, and the change of pixel contents can be well adapted.
It should be noted that, in other application scenarios, the second pixel points may not be classified, at this time, a first target prediction model is constructed by using the first reconstructed pixel value of each first pixel point and the corresponding at least one second reconstructed pixel value, and then the first prediction value of each pixel point to be encoded is obtained by using the model prediction, or a first target prediction model is constructed by using the first reconstructed pixel values of a part of the first pixel points and the corresponding at least one second reconstructed pixel value, and then the first prediction value of each pixel point to be encoded is obtained by using the model prediction.
In a third application scenario, referring to fig. 9, the step S110 of obtaining the current template and the reference template of the current block includes:
s111: a reference block is determined in the reference frame.
S112: and respectively determining the current template and the reference template according to the reconstructed pixel points in the same target region outside the current block and outside the reference block.
The target area outside the current block comprises at least one of a first subregion, a second subregion, a third subregion, a fourth subregion and a fifth subregion outside the current block, wherein the first subregion is positioned on the first side of the current block, two ends of the first subregion are respectively flush with two ends of the current block, the second subregion is positioned on the second side of the current block, two ends of the second subregion are respectively flush with two ends of the current block, the third subregion is connected with the first subregion and the second subregion, the fourth subregion is positioned on one side, deviating from the third subregion, of the first subregion, and the fifth subregion is positioned on one side, deviating from the third subregion, of the second subregion.
Specifically, the current template and the reference template are determined according to reconstructed pixel points in the same region outside the current block and the reference block respectively.
With reference to fig. 10, taking the current block as an example, the target region outside the current block includes at least one of the first sub-region, the second sub-region, the third sub-region, the fourth sub-region and the fifth sub-region, and the target region may be preset by a designer or determined according to parameters such as texture and size of the current block.
The widths of the first sub-region and the fourth sub-region may be equal to the width of the current block, the heights of the second sub-region and the fifth sub-region may be equal to the height of the current block, the heights of the first sub-region and the fourth sub-region are equal, the widths of the second sub-region and the fifth sub-region are equal, the heights of the first sub-region and the fourth sub-region may be set according to actual requirements, and the widths of the second sub-region and the fifth sub-region may also be set according to actual requirements. For example, the first sub-region and the fourth sub-region are arranged to include 6 rows of pixels, and the second sub-region and the fifth sub-region are arranged to include 6 columns of pixels.
After the target area is determined, the reconstruction pixel points in the target area outside the current block are determined as the pixel points in the current template, and the reconstruction pixel points in the target area outside the reference block are determined as the pixel points in the reference template.
With reference to fig. 1, in the prior art, it is equivalent to set the target region to include a first sub-region and a second sub-region, where the first sub-region includes only one row of pixels and the second sub-region includes only one column of pixels, and thus, more spatial information cannot be utilized.
Meanwhile, in the application scenario, it is considered that all the reconstruction pixel points in the target regions outside the current block and the reference block may not be obtained, for example, if the target regions outside the current block and the reference block exceed the boundary, only part of the reconstruction pixel points in the target regions outside the current block and the reference block may be obtained at this time, so that the reconstruction pixel points that can be obtained in the target region outside the current block cannot correspond to the reconstruction pixel points that can be obtained in the target region outside the reference block one to one. To avoid this phenomenon, referring to fig. 11, step S112 specifically includes:
s1121: determining a first effective region outside the current block, wherein the first effective region is in a target region outside the current block, and the first effective region comprises reconstruction pixel points which can be acquired outside the current block.
S1122: and determining a second effective region outside the reference block, wherein the second effective region is in a target region outside the reference block, and the second effective region comprises reconstruction pixel points which can be acquired outside the reference block.
S1123: a common area of the first active area and the second active area is determined.
S1124: and respectively determining the current template and the reference template according to the reconstructed pixel points in the public areas outside the current block and the reference block.
Specifically, the first effective region is located in a target region outside the current block, the first effective region includes all reconstruction pixels that can be acquired, the second effective region is located in the target region outside the reference block, and the second effective region also includes all reconstruction pixels that can be acquired.
For better understanding, the description is made herein in connection with the example of fig. 12:
in the figure, the diagonal filling area outside the current block is a first effective area outside the current block, and the dot filling area outside the reference block is a second effective area outside the reference block, for example, in the figure, it is assumed that the reconstructed pixel points in the area of 6 lines of 1 time block width can be obtained at most above the current block, the reconstructed pixel points in the area of 6 columns of 2 times width and height can be obtained at most on the left side, and the reconstructed pixel points in the area of 4 lines of 2 times block width and 0 line on the left side above the reference block can be obtained at most, so as to obtain the common area of the first effective area and the second effective area: and finally, determining reconstructed pixel points in public areas at the outer sides of the current block and the reference block as pixel points in the current template and pixel points in the reference template respectively in an area which is 4 lines of the upper part and is 1 time wide, and finally constructing a model by utilizing the reconstructed pixel points.
In a fourth application scenario, referring to fig. 13, the method of the present application further includes:
s310: and sequentially taking the target area as a plurality of different candidate areas, and determining a first predicted value of each pixel point to be coded in each candidate area.
Specifically, steps S110 to S130 are executed multiple times, and each time step S110 is executed, the target region is set as a different candidate region, and a first predicted value of each pixel point to be encoded in the different candidate regions is obtained.
For example, the candidate regions include different sub-regions, for example, one candidate region includes a first sub-region, a third sub-region, and a fourth sub-region, another candidate region includes a second sub-region, a third sub-region, and a fifth sub-region, and yet another candidate region includes a first sub-region, a second sub-region, a third sub-region, a fourth sub-region, and a fifth sub-region.
S320: and respectively determining a cost value corresponding to each candidate region according to the first predicted value of each pixel point to be coded in each candidate region.
Specifically, for each candidate region, a cost value corresponding to the candidate region is determined according to first predicted values of all pixel points to be coded in the candidate region. The cost value is specifically a rate distortion cost value, and the process of determining the cost value belongs to the prior art and is not described in detail herein.
S330: and determining the candidate area with the minimum cost value as a final area.
S340: and determining the first predicted value of each pixel point to be coded in the final region as the final predicted value of each pixel point to be coded.
Specifically, after obtaining the cost value corresponding to each candidate region, the candidate region with the smallest cost value may be searched.
The cost value corresponding to the candidate region is the minimum, which means that the final prediction result is more accurate after the target region is determined as the candidate region, so that the candidate region is determined as the final region, and the first prediction value of the pixel point to be coded in the final region is determined as the final prediction value.
That is, in this application scenario, a plurality of candidate regions are used for competition, and one of them is finally selected.
Meanwhile, in the application scenario, in order to indicate the final region to the decoding side, a first generation first syntax element is also generated, and steps S310 to S340 are performed in response to the first syntax element indication, and a second syntax element is generated, the second syntax element indicating the final region.
Specifically, in the LIC method, a syntax element indicating that the LIC method is used is LIC _ enable _ flag, when LIC _ enable _ flag =1 is set, the LIC method is used, when LIC _ enable _ flag =0 is set, the LIC method is not used, when LIC _ enable _ flag =1 is set, a first syntax element LIC _ mode _ flag is generated, when LIC _ mode _ flag =1 is set, an improved LIC method is used, and in the improved LIC method, a plurality of candidate regions are used for competition, when LIC _ mode _ flag =0 is set, a conventional LIC method is used, when LIC _ mode _ flag =1 is set, a second syntax element LIC _ flag is also generated, and, assuming that 3 candidate regions are used for competition, the 3 candidate regions are respectively represented by 0, 1, and 2, wherein, when a candidate region with the number of 0 is determined as the final region, a region TL _ flag is set, TL _ flag is set as the final region =0, and when TL _ flag =2 is determined as the final region, the candidate region TL _ flag is set as TL _ 1, and when TL _ flag =0 is determined as the final region, TL _ flag is set as the final region of the candidate region.
Wherein the second syntax element does not need to be generated when the plurality of candidate regions are not used for competition.
In a fifth application scenario, referring to fig. 14, the method of the present embodiment further includes:
s410: and constructing a second target prediction model according to the first reconstruction pixel value of the first pixel point and the reconstruction pixel value of the first reference pixel point.
S420: and respectively predicting each pixel point to be encoded in the current block by using a second target prediction model to obtain a second prediction value of each pixel point to be encoded.
Specifically, in steps S410 to S420, the pixels to be encoded are predicted by using a conventional LIC method, so as to obtain a second predicted value of each pixel to be encoded.
S430: and determining a first generation value according to the first predicted values of all the pixels to be coded in the current block.
S440: and determining a second cost value according to the second predicted values of all the pixels to be coded in the current block.
S450: and respectively determining the first predicted value of each pixel point to be coded as the respective final predicted value of the pixel point to be coded in response to the fact that the first generation value is smaller than the second generation value, and otherwise respectively determining the second predicted value of each pixel point to be coded as the respective final predicted value of the pixel point to be coded.
Specifically, if the first generation value is smaller than the second generation value, it is indicated that the accuracy of prediction by using the improved LIC method of the present application is higher than the accuracy of prediction by using the conventional LIC method, and therefore, the result of prediction by using the improved LIC method of the present application is taken as the final result, otherwise, the result of prediction by using the conventional LIC is taken as the final result.
That is, the above-mentioned result predicted by the existing scheme and the result predicted by the LIC method improved in the present application compete, and finally one of them is selected.
When the result of prediction by using the existing scheme and the result of prediction by using the steps S110 to S130 of the present application compete, in order to inform the decoder of the final competition result, a first syntax element is generated, and the steps S410 to S450 are performed in response to the first syntax element, a second syntax element is generated, wherein when the first cost is lower than the second cost, it is indicated that prediction is better by using the improved LIC method, the first cost is set to a first value, for example, 1, and otherwise, it is indicated that prediction is better by using the conventional LIC method, the second syntax element is set to a second value, for example, 0.
Specifically, in the LIC method, a syntax element indicating that the LIC method is used is LIC _ enable _ flag, and at this time, it is set that the LIC method is used when LIC _ enable _ flag =1, it is indicated that the LIC method is not used when LIC _ enable _ flag =0, and when LIC _ enable _ flag =1, a first syntax element LIC _ mode _ flag is generated, and when LIC _ mode _ flag =0 is set, it is indicated that the conventional LIC method is used, and when LIC _ mode _ flag =1, it is indicated that the improved LIC method is used.
For better understanding of the arrangement of the syntax elements, the following is described in detail:
in a first example, when a plurality of candidate prediction models and a plurality of candidate regions are not adopted for competition, if the improved LIC of the present application is directly used, no new syntax element needs to be added at this time, the original syntax element LIC _ enable _ flag in the LIC technology is directly used, when LIC _ enable _ flag =1 is set, the improved LIC method is used, and if a calculation-free phenomenon occurs in the prediction process, the traditional LIC method is used for prediction, and when LIC _ enable _ flag =0 is set, the improved LIC method and the traditional LIC method are neither adopted, and neither illumination compensation is performed.
In the second embodiment, when the improved LIC and the conventional LIC are used instead of the multiple candidate prediction models and the multiple candidate regions for competition, the original syntax element LIC _ enable _ flag in the LIC technology is used, when LIC _ enable _ flag =1 is set, the LIC method is used, and when LIC _ enable _ flag =0 is set, the LIC method is not used, that is, illumination compensation is not performed.
And when the LIC _ enable _ flag =1 is set, adding a syntax element LIC _ mode _ flag, when the LIC _ mode _ flag =0 is set, indicating that the conventional LIC method is used, and when the LIC _ mode _ flag =1 is set, indicating that the improved LIC method is used.
In a third embodiment, a plurality of candidate prediction models are used for competition, with the first target prediction model or with a plurality of candidate regions.
Firstly, an original syntax element LIC _ enable _ flag in the LIC technology is used, when the LIC _ enable _ flag =1, the LIC method is used, and when the LIC _ enable _ flag =0, the LIC method is not used, that is, the illumination compensation is not performed.
Meanwhile, when the LIC _ enable _ flag =1 is set, the newly added syntax element LIC _ mode _ flag indicates that the conventional LIC method is used when the LIC _ mode _ flag =0 is set, and indicates that the improved LIC method is used when the LIC _ mode _ flag =1 is set.
When the lic _ mode _ flag =1 is set, a newly added syntax element lic _ mode _ type _ flag is used to indicate a final prediction model, or a newly added syntax element lic _ TL _ flag is used to indicate a final region, which may be specifically referred to as the above related description.
It can be seen from the above that, a plurality of candidate prediction models are used for competition in a first application scenario, a plurality of first target prediction models are constructed in a second application scenario, a common region is used for a first effective region outside a current block and a second effective region outside a reference block in a third application scenario, and a plurality of candidate regions are used for competition in a fourth application scenario.
In other application scenarios, the schemes of the first application scenario, the second application scenario, the third application scenario, and the fourth application scenario may be combined arbitrarily, for example, a plurality of target nonlinear predictions are used for competition, a plurality of candidate regions are used for competition, or a plurality of first target prediction models are constructed, a plurality of candidate prediction models are used for competition, and the like.
For ease of understanding, the following description is made with reference to examples:
in a first example:
there are 3 candidate regions: one candidate region includes a first sub-region, a third sub-region and a fourth sub-region, the other candidate region includes a second sub-region, a third sub-region and a fifth sub-region, and a second target region includes a first sub-region, a second sub-region, a third sub-region, a fourth sub-region and a fifth sub-region.
There are 4 candidate prediction models, corresponding to the model equations one through four, respectively.
By combining any of the 3 candidate regions with any of the 4 candidate prediction models, 12 combinations can be obtained.
In this embodiment, the second pixel points are not classified, the first prediction values of the pixel points to be coded in each combination are determined at this time, and the cost values corresponding to the combinations are determined according to the first prediction values of all the pixel points to be coded in the combination, so that the cost values corresponding to the 12 combinations can be obtained. And finally, determining the combination with the minimum cost value as a final combination, and determining a first predicted value of the pixel point to be coded under the final combination as a final predicted value of the pixel point.
In the second example, one first target prediction model is constructed for each first pixel class, a plurality of first target prediction models are used for competition, a plurality of candidate regions are used for competition, and the number of the first pixel classes is assumed to be two, that is, two first target prediction models are constructed, 4 candidate prediction models are used for competition, and 3 candidate regions (candidate region 1, candidate region 2 and candidate region 3) are used for competition.
It can be understood that, firstly, the number of the first pixel classes is two, that is, two first target prediction models are constructed, so that during prediction, a pixel point to be coded in a current block can be divided into two fourth pixel classes, and for a point in the same fourth pixel class, the corresponding first target prediction models are the same, and for points belonging to different fourth pixel classes, the corresponding first target prediction models are different. For convenience of explanation, the two first target prediction models constructed are simply referred to as model 1 and model 2, and a fourth pixel class 1 is defined to correspond to model 1, and a fourth pixel class 2 is defined to correspond to model 2.
During encoding, firstly, a target area is set as a candidate area 1, model 1 is sequentially constructed as 4 candidate prediction models in the candidate area, model 2 is sequentially constructed as 4 candidate prediction models, model 1 and model 2 can be constructed as different models, so that candidate prediction models corresponding to model 1 and model 2 are combined at the moment, 4 × 4=16 combinations can be obtained, and a cost value corresponding to the combination is determined according to a first predicted value of all pixel points to be encoded in each combination, so that respective corresponding cost values of the 16 combinations in the candidate area 1 can be obtained.
Then, the target area is set as a candidate area 2, and the above steps are repeated to obtain respective corresponding cost values of the 16 combinations in the candidate area 2.
Then, the target area is set as a candidate area 3, and the above steps are repeated to obtain respective corresponding cost values of the 16 combinations in the candidate area 3.
And then finding the minimum cost value from all the obtained cost values, then determining a combination and a candidate area corresponding to the minimum cost value, and finally determining a first predicted value of the current block under the combination and the candidate area as a final predicted value.
Referring to fig. 15, in another embodiment of the present application, the decoding method further includes:
s510: the method comprises the steps of obtaining a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, taking the first coding block or at least one subblock in the first coding block as a current block, obtaining a first predicted value of each pixel point in the current block, and taking the first predicted value as the target predicted value of the pixel point.
Specifically, the target pixel value of the pixel point in the first coding block may be the target predicted value or a reconstructed pixel value obtained according to the target predicted value, but for convenience of description, the target pixel value is taken as the target predicted value in the following description.
The target prediction value of at least one sub-block in the first coding block is obtained through steps S110 to S130, and the detailed process can refer to the above related contents, which is not described herein again.
Or, the first coding block is used as the current block, so that the first prediction value of each pixel point in the first coding block is obtained.
S520: and constructing a first prediction model according to the reconstructed pixel value of the pixel point in the current template of the first coding block and the reconstructed pixel value of the pixel point in the current template of the second coding block, wherein the first coding block corresponds to the second coding block.
S530: and obtaining the predicted value of each pixel point in the second coding block according to the first prediction model and the first coding block.
The first coding block is a luminance block and the second coding block is a chrominance block corresponding to the first coding block, or the first coding block is a chrominance block and the second coding block is a luminance block or a chrominance block corresponding to the first coding block.
Specifically, referring to fig. 16, a coding block that is a luminance block is denoted by Y, two coding blocks that are chrominance blocks are denoted by C1 and C2, respectively, and a reference block, a reference template, and a current template corresponding to each coding block are denoted by symbols in fig. 15, respectively.
In this embodiment, if Y is used as the first coding block, rY predicts the process of rC1 to construct a model, and then applies the model to Y to obtain the predicted value of each pixel in C1, and meanwhile, rY predicts the process of rC2 to construct a model, and then applies the model to Y to obtain the predicted value of each pixel in C2.
Or taking the C1 as a first coding block, using the rC1 rC2 prediction process to construct a model, and then applying the model to the C1 predicted C2 to obtain the predicted value of each pixel point in the C2; or the C2 is used as a first coding block, the rC2 prediction rC1 process is used for constructing a model, and then the model is applied to the C2 prediction C1 to obtain the prediction value of each pixel point in the C1.
Or taking the C1 as a first coding block, the process of rC1 for predicting the rY is used for constructing a model, and then the model is applied to the C1 for predicting the Y to obtain the predicted value of each pixel point in the Y.
Or taking C2 as a first coding block, the process of rC2 for predicting rY is used for constructing a model, and then the model is applied to C2 for predicting Y to obtain the predicted value of each pixel point in Y.
If Y is used as the second coding block, in order to improve the accuracy of prediction, C1 is used as the first coding block to obtain the predicted value of each pixel point in Y, then C2 is used as the first coding block to obtain the predicted value of each pixel point in Y, and then the two prediction results are synthesized to obtain the final prediction result.
For example, when the model is constructed, in combination with fig. 5, the model may be constructed according to the following model formula:
a=p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 A 2 +p 7 F。
referring to fig. 17, in another embodiment of the present application, the encoding method further includes:
s610: the method comprises the steps of obtaining a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, taking the first coding block or at least one subblock in the first coding block as a current block to obtain a first predicted value of each pixel point in the current block, and taking the first predicted value as the target predicted value of the pixel point.
Specifically, the step is the same as step S510, and reference may be made to the above related contents, which is not described herein again.
S620: and constructing a second prediction model according to the reconstructed pixel value of the pixel point in the first target reference block and the target pixel value of the pixel point in the first coding block, wherein the first target reference block corresponds to the first coding block.
S630: and obtaining a predicted value of each pixel point in the second coding block according to the second prediction model and a second target reference block, wherein the second target reference block corresponds to the second coding block.
The first coding block is a luminance block and the second coding block is a chrominance block corresponding to the first coding block, or the first coding block is a chrominance block and the second coding block is a luminance block or a chrominance block corresponding to the first coding block.
In conjunction with fig. 16, in the present embodiment, if Y is taken as the first coding block, the process of Y ' predicting Y is used to construct a model, which is then applied to C1' predicting C1, while the model is applied to C2' predicting C2. This process can now be represented by figure 18.
If C1 is taken as the first coding block, the process of C1 'predicting C1 is used to build a model, which is then applied to C2' predicting C2.
If C2 is taken as the first coding block, the process of C2 'predicting C2 is used to build a model, which is then applied to C1' predicting C1.
If C1 is taken as the first coding block, the process of C1 'predicting C1 is used to build a model, which is then applied to Y' predicting Y.
If C2 is taken as the first coding block, the process of C2 'predicting C2 is used to build a model, which is then applied to Y' predicting Y.
If Y is used as the second coding block, in order to improve the accuracy of prediction, C1 is used as the first coding block to obtain the predicted value of each pixel point in Y, then C2 is used as the first coding block to obtain the predicted value of each pixel point in Y, and then the two prediction results are synthesized to obtain the final prediction result.
For example, when constructing the model, with reference to fig. 5, the model may be constructed according to the following model formula:
a=p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 A 2 +p 7 F。
referring to fig. 19, in another embodiment of the present application, the encoding method further includes:
s710: the method comprises the steps of obtaining a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, taking the first coding block or at least one subblock in the first coding block as a current block, obtaining a first predicted value of each pixel point in the current block, and taking the first predicted value as the target predicted value of the pixel point.
Specifically, the step is the same as step S510, and reference may be made to the above related contents, which are not described herein again.
S720: and constructing a third prediction model according to the reconstructed pixel values of the pixels in the first target reference block and the reconstructed pixel values of the pixels in the second target reference block, wherein the first target reference block corresponds to the first coding block, and the second target reference block corresponds to the second coding block.
S730: and obtaining the predicted value of each pixel point in the second coding block according to the third prediction model and the first coding block.
The first coding block is a luminance block and the second coding block is a chrominance block corresponding to the first coding block, or the first coding block is a chrominance block and the second coding block is a luminance block or a chrominance block corresponding to the first coding block.
Specifically, in the present embodiment, in conjunction with fig. 16, if the process of Y 'prediction C1' is used to construct a model with Y as the first coding block, the model is applied to Y prediction C1; while the process of Y 'predicting C2' is used to construct a model, the model is applied to Y predicting C2. Specifically, the process can be seen in fig. 20.
If C1 is taken as the first coding block, the process of C1 'predicting C2' is used to build a model, which is then applied to C1 predicting C2.
Or if C2 is the first coding block, the process of C2 'predicting C1' is used to build a model and then apply the model to C2 predicting C1.
Alternatively, if C1 is taken as the first coding block, the process of C1 'predicting Y' is used to build a model, which is then applied to C1 predicting Y.
Or if C2 is the first coding block, the process of C2' predicting Y ' is used to build a model and then apply the model to C2 predicting Y '.
If Y is used as the second coding block, in order to improve the accuracy of prediction, C1 is used as the first coding block to obtain the predicted value of each pixel point in Y, then C2 is used as the first coding block to obtain the predicted value of each pixel point in Y, and then the two prediction results are synthesized to obtain the final prediction result.
For example, when constructing the model, with reference to fig. 5, the model may be constructed according to the following model formula:
a=p 1 A+p 2 B+p 3 C+p 4 D+p 5 E+p 6 F+p 7 G+p 8 H+p 9 I。
referring to fig. 21, fig. 21 is a schematic flowchart of an embodiment of a decoding method of the present application, including:
s810: and receiving the coded data sent by the coder.
S820: and decoding the encoded data to obtain a predicted value of the current pixel point in the current decoding block.
The final predicted value of the current pixel point in the current decoding block is obtained by using the encoding method in any one of the above embodiments, and the detailed steps can refer to related contents, which are not described herein again.
Referring to fig. 22, fig. 22 is a schematic structural diagram of an embodiment of an encoder according to the present application. The encoder 300 includes a processor 310, a memory 320, and a communication circuit 330, wherein the processor 310 is coupled to the memory 320 and the communication circuit 330, respectively, the memory 320 stores program data, and the processor 310 executes the program data in the memory 320 to implement the steps of the encoding method in any of the above embodiments, and the detailed steps may refer to the above embodiments and are not described herein again.
The encoder 300 may be any device with algorithm processing capability, such as a computer and a mobile phone, and is not limited herein.
Referring to fig. 23, fig. 23 is a schematic structural diagram of another embodiment of the encoder of the present application. The encoder 400 includes an acquisition module 410, a construction module 420, and a prediction module 430 connected in series.
The obtaining module 410 is configured to obtain a current template and a reference template of a current block, where the current template includes a plurality of reconstructed first pixel points in a current frame, the reference template includes a plurality of reconstructed second pixel points in a reference frame, the current frame includes the current block, and the reference frame corresponds to the current frame.
The building module 420 is configured to build a first target prediction model according to a first reconstructed pixel value of a first pixel and a plurality of corresponding second reconstructed pixel values, where the plurality of second reconstructed pixel values include multiple values of reconstructed pixel values of pixels around a first reference pixel and reconstructed pixel values of the first reference pixel, and the first reference pixel is a pixel in the reference template corresponding to the first pixel.
The prediction module 430 is configured to predict, by using the first target prediction model, a pixel to be encoded in the current block to obtain a first prediction value of the pixel to be encoded.
The encoder 400 executes the steps of the encoding method in any of the above embodiments when operating, and the detailed steps can refer to the above related contents, which are not described herein again.
The encoder 400 may be any device with algorithm processing capability, such as a computer and a mobile phone, and is not limited herein.
Referring to fig. 24, fig. 24 is a schematic structural diagram of an embodiment of the decoder of the present application. The decoder 500 includes a processor 510, a memory 520, and a communication circuit 530, wherein the processor 510 is coupled to the memory 520 and the communication circuit 530, respectively, the memory 520 stores program data, and the processor 510 executes the program data in the memory 520 to implement the steps of the decoding method in any of the above embodiments, wherein the detailed steps can refer to the above embodiments and are not described herein again.
The decoder 500 may be any device with algorithm processing capability, such as a computer and a mobile phone, and is not limited herein.
Referring to fig. 25, fig. 25 is a schematic structural diagram of another embodiment of the decoder of the present application. The decoder 600 includes an acquisition module 610 and a decoding module 620.
The obtaining module 610 is configured to receive encoded data sent by an encoder.
The decoding module 620 is connected to the obtaining module 610, and configured to decode the encoded data to obtain a predicted value of a current pixel point in a current decoded block.
The prediction value of the current pixel point in the current decoding block is obtained by processing with the encoding method in any one of the above embodiments, and the specific process can be referred to above, which is not described herein again.
The decoder 600 performs the steps of the decoding method in any of the above embodiments when operating, and the detailed steps can refer to the above related contents, which are not described herein again.
The decoder 600 may be any device with algorithm processing capability, such as a computer and a mobile phone, without limitation.
Referring to fig. 26, fig. 26 is a schematic structural diagram of an embodiment of a computer-readable storage medium of the present application. The computer-readable storage medium 700 stores a computer program 710, the computer program 710 being executable by a processor to implement the steps of any of the methods described above.
The computer-readable storage medium 700 may be a device that can store the computer program 710, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk, or may be a server that stores the computer program 710, and the server may send the stored computer program 710 to another device for operation, or may run the stored computer program 710 by itself.
The above description is only an example of the present application and is not intended to limit the scope of the present application, and all modifications of equivalent structures and equivalent processes, which are made by the contents of the specification and the drawings, or which are directly or indirectly applied to other related technical fields, are intended to be included within the scope of the present application.

Claims (20)

1. A method of encoding, the method comprising:
acquiring a current template and a reference template of a current block, wherein the current template comprises a plurality of reconstructed first pixel points in a current frame, the reference template comprises a plurality of reconstructed second pixel points in a reference frame, the current frame comprises the current block, and the reference frame corresponds to the current frame;
constructing a first target prediction model according to a first reconstruction pixel value of the first pixel point and a plurality of corresponding second reconstruction pixel values, wherein the plurality of second reconstruction pixel values comprise reconstruction pixel values of pixel points around a first reference pixel point and a plurality of values in the reconstruction pixel values of the first reference pixel point, and the first reference pixel point is a pixel point corresponding to the first pixel point in the reference template;
and predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first predicted value of the pixel point to be encoded.
2. The method of claim 1, wherein the step of constructing the first target prediction model according to the first reconstructed pixel value of the first pixel point and the corresponding plurality of second reconstructed pixel values comprises:
determining a plurality of model parameters according to the first reconstruction pixel values of the first pixel points and the corresponding second reconstruction pixel values;
the step of predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first predicted value of the pixel point to be encoded includes:
determining the first predicted value of the pixel point to be coded according to a plurality of target values and the plurality of model parameters, wherein the plurality of target values correspond to the plurality of model parameters one to one;
the target values comprise a plurality of first target reconstruction pixel values corresponding to the pixel point to be encoded and a plurality of values in operation values, the operation values are obtained by operating the first target reconstruction pixel values, the first target reconstruction pixel values comprise reconstruction pixel values of a first target pixel point and reconstruction pixel values of pixel points around the first target pixel point, and the first target pixel point is a pixel point corresponding to the pixel point to be encoded in a reference block.
3. The method according to claim 2, wherein the step of determining the first predicted value of the pixel point to be encoded according to a plurality of target values and the plurality of model parameters comprises:
multiplying the plurality of target values by the corresponding model parameters respectively to obtain a plurality of first products;
and obtaining the first predicted value of the pixel point to be coded according to the sum of all the first products.
4. The method of claim 1, further comprising:
after the first target prediction model is sequentially constructed into a plurality of different candidate prediction models, the first prediction values of all the pixel points to be coded under each candidate prediction model are respectively determined;
respectively determining a cost value corresponding to each candidate prediction model according to the first prediction value of all the pixel points to be coded under each candidate prediction model;
determining the candidate prediction model with the minimum cost value as a final prediction model;
and respectively determining the first predicted value of each pixel point to be coded under the final prediction model as the final predicted value of each pixel point to be coded.
5. The method according to claim 4, wherein after said determining the first prediction value of each pixel point to be encoded under the final prediction model as a final prediction value of each pixel point to be encoded, further comprising:
generating a first syntax element;
and responding to the first syntax element indication, executing the step of respectively determining the first predicted value of each pixel point to be coded under each candidate prediction model after the first target prediction model is sequentially built into a plurality of different candidate prediction models, and generating a second syntax element by the step of respectively determining the first predicted value of each pixel point to be coded under the final prediction model as a final predicted value of each pixel point to be coded, wherein the second syntax element is used for indicating the final prediction model.
6. The method of claim 1, wherein the step of constructing the first target prediction model according to the first reconstructed pixel value of the first pixel point and the corresponding plurality of second reconstructed pixel values comprises:
classifying the second pixel points based on the reconstructed pixel values of the second pixel points to obtain a plurality of second pixel classes;
respectively determining a first pixel class corresponding to each second pixel class in the current template, wherein the first pixel points in the first pixel classes are in one-to-one correspondence with the second pixel points in the corresponding second pixel classes, and the first pixel points corresponding to the second pixel points are pixel points in the current template, which have the same positions as the second pixel points;
respectively constructing the first target prediction model corresponding to each first pixel class according to the first reconstruction pixel value of the first pixel point in each first pixel class and the corresponding second reconstruction pixel values;
the step of predicting the pixel point to be encoded in the current block by using the first target prediction model to obtain a first predicted value of the pixel point to be encoded includes:
classifying third pixel points based on the reconstructed pixel values of the third pixel points in the reference block to obtain a plurality of third pixel classes, wherein the rule for classifying the third pixel points is the same as the rule for classifying the second pixel points;
predicting the pixel point to be encoded by using the first target prediction model corresponding to the pixel point to be encoded to obtain the first predicted value of the pixel point to be encoded;
the first target prediction model corresponding to the pixel to be encoded is the first target prediction model corresponding to a target first pixel class in the plurality of first pixel classes, the target first pixel class corresponds to a target second pixel class in the plurality of second pixel classes, the target second pixel class is the same as a target third pixel class in the plurality of third pixel classes, and the target third pixel class comprises pixel points corresponding to the pixel to be encoded in the reference block.
7. The method of claim 6, wherein the step of classifying the second pixel based on the reconstructed pixel value of the second pixel to obtain a plurality of second pixel classes comprises:
determining the average value of the reconstructed pixel values of the second pixel points;
classifying the second pixel points according to the average value to obtain two second pixel classes, wherein one second pixel class comprises the second pixel points of which the reconstructed pixel values do not exceed the average value, and the other second pixel class comprises the second pixel points of which the reconstructed pixel values exceed the average value;
the step of classifying the third pixel points based on the reconstructed pixel values of the third pixel points in the reference block to obtain a plurality of third pixel classes includes:
and classifying the third pixel points according to the average value to obtain two third pixel classes, wherein one third pixel class comprises the third pixel points of which the reconstructed pixel values do not exceed the average value, and the other third pixel class comprises the third pixel points of which the reconstructed pixel values exceed the average value.
8. The method of claim 1, wherein the step of obtaining the current template and the reference template of the current block comprises:
determining a reference block in the reference frame;
determining the current template and the reference template according to reconstructed pixel points in the same target region outside the current block and outside the reference block respectively;
the target area outside the current block comprises at least one of a first sub-area, a second sub-area, a third sub-area, a fourth sub-area and a fifth sub-area outside the current block, the first sub-area is located on the first side of the current block, two ends of the first sub-area are flush with two ends of the current block respectively, the second sub-area is located on the second side of the current block, two ends of the second sub-area are flush with two ends of the current block respectively, the third sub-area is connected with the first sub-area and the second sub-area, the fourth sub-area is located on the side, away from the third sub-area, of the first sub-area, and the fifth sub-area is located on the side, away from the third sub-area, of the second sub-area.
9. The method of claim 8, wherein the step of determining the current template and the reference template according to reconstructed pixel points in a same target region outside the current block and outside the reference block respectively comprises:
determining a first effective region outside the current block, wherein the first effective region is in the target region outside the current block, and the first effective region comprises reconstruction pixel points which can be acquired outside the current block;
determining a second effective region outside the reference block, wherein the second effective region is in the target region outside the reference block, and the second effective region comprises reconstruction pixel points which can be acquired outside the reference block;
determining a common area of the first and second effective areas;
and determining the current template and the reference template according to the reconstruction pixel points in the public areas outside the current block and the reference block respectively.
10. The method of claim 8, further comprising:
sequentially taking the target area as a plurality of different candidate areas, and determining the first predicted value of each pixel point to be coded in each candidate area;
determining a cost value corresponding to each candidate region according to the first predicted value of each pixel point to be coded in each candidate region;
determining the candidate region with the minimum cost value as a final region;
and determining the first predicted value of each pixel point to be coded in the final region as the final predicted value of each pixel point to be coded.
11. The method according to claim 10, wherein after the determining the first prediction value of each pixel to be encoded in the final region as a final prediction value of each pixel to be encoded, the method further comprises:
generating a first syntax element;
and responding to the indication of the first syntax element, executing the step of respectively determining the first predicted value of each pixel point to be coded under each candidate prediction model after the first target prediction model is sequentially built into a plurality of different candidate prediction models, and generating a second syntax element by the step of respectively determining the first predicted value of each pixel point to be coded under the final prediction model as the final predicted value of each pixel point to be coded, wherein the second syntax element is used for indicating the final region.
12. The method of claim 1, further comprising:
constructing a second target prediction model according to the first reconstruction pixel value of the first pixel point and the reconstruction pixel value of the first reference pixel point;
predicting each pixel point to be encoded in the current block by using the second target prediction model to obtain a second predicted value of each pixel point to be encoded;
determining a first generation value according to the first predicted values of all the pixels to be coded in the current block;
determining a second cost value according to the second predicted values of all the pixels to be coded in the current block;
and responding to the fact that the first generation value is smaller than the second generation value, respectively determining the first predicted value of each pixel point to be coded as the respective final predicted value of the pixel point to be coded, and otherwise, respectively determining the second predicted value of each pixel point to be coded as the respective final predicted value of the pixel point to be coded.
13. The method according to claim 12, wherein after the responding that the first cost value is smaller than the second cost value, respectively determining the first prediction value of each pixel point to be encoded as a respective final prediction value of the pixel point to be encoded, and otherwise, respectively determining the second prediction value of each pixel point to be encoded as a respective final prediction value of the pixel point to be encoded, further comprising:
generating a first syntax element;
in response to the first syntax element indicating that the execution of the step of constructing a second target prediction model according to the first reconstructed pixel value of the first pixel point and the reconstructed pixel value of the first reference pixel point is performed, to the step of determining the first predicted value of each pixel point to be encoded as the respective final predicted value of the pixel point to be encoded respectively in response to the first cost value being less than the second cost value, and otherwise, determining the second predicted value of each pixel point to be encoded as the respective final predicted value of the pixel point to be encoded respectively, generating a second syntax element, wherein in response to the first cost value being less than the second cost value, the second syntax element is a first numerical value, and otherwise, the second syntax element is a second numerical value.
14. The method of claim 1, further comprising:
acquiring a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, at least one sub-block in the first coding block or the first coding block is taken as the current block to obtain the first predicted value of each pixel point in the current block, and the first predicted value is taken as the target predicted value of the pixel point;
constructing a first prediction model according to the reconstructed pixel value of the pixel point in the current template of the first coding block and the reconstructed pixel value of the pixel point in the current template of the second coding block;
obtaining a predicted value of each pixel point in the second coding block according to the first prediction model and the first coding block;
wherein the first coding block is a luma block and the second coding block is a chroma block corresponding to the first coding block, or the first coding block is a chroma block and the second coding block is a luma block or a chroma block corresponding to the first coding block.
15. The method of claim 1, further comprising:
acquiring a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, the first coding block or at least one subblock in the first coding block is taken as the current block to obtain the first predicted value of each pixel point in the current block, and the first predicted value is taken as the target predicted value of the pixel point;
constructing a second prediction model according to the reconstructed pixel value of the pixel point in the first target reference block and the target pixel value of the pixel point in the first coding block, wherein the first target reference block corresponds to the first coding block;
obtaining a predicted value of each pixel point in the second coding block according to the second prediction model and a second target reference block, wherein the second target reference block corresponds to the second coding block;
wherein the first coding block is a luma block and the second coding block is a chroma block corresponding to the first coding block, or the first coding block is a chroma block and the second coding block is a luma block or a chroma block corresponding to the first coding block.
16. The method of claim 1, further comprising:
obtaining a target pixel value of each pixel point in a first coding block, wherein the target pixel value is a target predicted value of the pixel point or a reconstructed pixel value obtained according to the target predicted value, and taking the first coding block or at least one subblock in the first coding block as the current block to obtain the first predicted value of each pixel point in the current block, and taking the first predicted value as the target predicted value of the pixel point;
constructing a third prediction model according to the reconstructed pixel values of the pixels in the first target reference block and the reconstructed pixel values of the pixels in the second target reference block, wherein the first target reference block corresponds to the first coding block, and the second target reference block corresponds to the second coding block;
obtaining a predicted value of each pixel point in the second coding block according to the third prediction model and the first coding block;
wherein the first coding block is a luma block and the second coding block is a chroma block corresponding to the first coding block, or the first coding block is a chroma block and the second coding block is a luma block or a chroma block corresponding to the first coding block.
17. A method of decoding, the method comprising:
receiving coded data sent by a coder;
decoding the coded data to obtain a predicted value of a current pixel point in a current decoding block;
wherein the prediction value of the current pixel point in the current decoding block is obtained by processing the prediction value by using the encoding method according to any one of claims 1 to 16.
18. An encoder, comprising a processor, a memory and a communication circuit, wherein the processor is coupled to the memory and the communication circuit, respectively, and the memory stores program data, and the processor implements the steps of the method according to any one of claims 1-16 by executing the program data in the memory.
19. A decoder comprising a processor, a memory and a communication circuit, wherein the processor is coupled to the memory and the communication circuit, respectively, and the memory stores program data therein, and the processor implements the steps of the method as claimed in claim 17 by executing the program data in the memory.
20. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program which is executable by a processor to implement the steps in the method according to any of claims 1-17.
CN202211463044.9A 2022-07-14 2022-11-21 Encoding method, encoder, and computer-readable storage medium Pending CN115988212A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211463044.9A CN115988212A (en) 2022-11-21 2022-11-21 Encoding method, encoder, and computer-readable storage medium
PCT/CN2023/107408 WO2024012559A1 (en) 2022-07-14 2023-07-14 Methods, systems, and storage mediums for video encoding and decoding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211463044.9A CN115988212A (en) 2022-11-21 2022-11-21 Encoding method, encoder, and computer-readable storage medium

Publications (1)

Publication Number Publication Date
CN115988212A true CN115988212A (en) 2023-04-18

Family

ID=85963643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211463044.9A Pending CN115988212A (en) 2022-07-14 2022-11-21 Encoding method, encoder, and computer-readable storage medium

Country Status (1)

Country Link
CN (1) CN115988212A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024012559A1 (en) * 2022-07-14 2024-01-18 Zhejiang Dahua Technology Co., Ltd. Methods, systems, and storage mediums for video encoding and decoding

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024012559A1 (en) * 2022-07-14 2024-01-18 Zhejiang Dahua Technology Co., Ltd. Methods, systems, and storage mediums for video encoding and decoding

Similar Documents

Publication Publication Date Title
US20170085892A1 (en) Visual perception characteristics-combining hierarchical video coding method
TWI565307B (en) Moving image encoding device, moving image decoding device, moving image encoding method, moving image decoding method, and memory storage
RU2551207C2 (en) Method and device for encoding video
US9667986B2 (en) Moving picture coding device, moving picture coding method, and moving picture coding program, and moving picture decoding device, moving picture decoding method, and moving picture decoding program
TWI552572B (en) Method of decoding video data
US8204136B2 (en) Image encoding apparatus
CN103888762B (en) Video coding framework based on HEVC standard
MX2011000261A (en) Image encoding device, image decoding device, image encoding method, and image decoding method.
CN111031319B (en) Local illumination compensation prediction method, terminal equipment and computer storage medium
CN114900691B (en) Encoding method, encoder, and computer-readable storage medium
CN107040785A (en) The method and apparatus of image decoding and Image Coding
CN110226327A (en) Video encoding method/device, image decoding method/device and the recording medium for preserving bit stream
CN104618724A (en) Method and Apparatus for Simplified Depth Coding with Extended Prediction Modes
CN104601992B (en) SKIP mode quick selecting methods based on Bayesian Smallest Risk decision
CN101572818A (en) Intra-frame prediction mode prediction method
CN115988212A (en) Encoding method, encoder, and computer-readable storage medium
CN111741297A (en) Inter-frame prediction method, video coding method and related devices thereof
CN111447452A (en) Data coding method and system
CN106031173A (en) Flicker detection and mitigation in video coding
KR20110067539A (en) Method and apparatus for video coding and decoding using intra prediction
CN115134600B (en) Encoding method, encoder, and computer-readable storage medium
CN113422959A (en) Video encoding and decoding method and device, electronic equipment and storage medium
CN109547798B (en) Rapid HEVC inter-frame mode selection method
CN114143536B (en) Video coding method of SHVC (scalable video coding) spatial scalable frame
CN114793282B (en) Neural network-based video compression with bit allocation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination