CN112004097A - Inter-frame prediction method, image processing apparatus, and computer-readable storage medium - Google Patents

Inter-frame prediction method, image processing apparatus, and computer-readable storage medium Download PDF

Info

Publication number
CN112004097A
CN112004097A CN202010754463.2A CN202010754463A CN112004097A CN 112004097 A CN112004097 A CN 112004097A CN 202010754463 A CN202010754463 A CN 202010754463A CN 112004097 A CN112004097 A CN 112004097A
Authority
CN
China
Prior art keywords
motion vector
candidate list
backward
prediction
vector candidate
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.)
Granted
Application number
CN202010754463.2A
Other languages
Chinese (zh)
Other versions
CN112004097B (en
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 CN202010754463.2A priority Critical patent/CN112004097B/en
Publication of CN112004097A publication Critical patent/CN112004097A/en
Application granted granted Critical
Publication of CN112004097B publication Critical patent/CN112004097B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The application discloses an inter-frame prediction method, an image processing apparatus and a computer readable storage medium, wherein the inter-frame prediction method comprises: constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block. By the mode, the application range of the SMVD technology can be enlarged, and therefore higher coding gain is obtained.

Description

Inter-frame prediction method, image processing apparatus, and computer-readable storage medium
Technical Field
The present application relates to the field of image encoding and decoding technologies, and in particular, to an inter-frame prediction method, an image processing apparatus, and a computer-readable storage medium.
Background
Because the data volume of the video image is large, when the video image interaction is carried out, the video image needs to be coded and decoded, and the video coding mainly has the function of compressing video pixel data (RGB, YUV and the like) into a video code stream, so that the data volume of the video is reduced, and the purposes of reducing the network bandwidth in the transmission process and reducing the storage space are achieved.
The video coding system mainly comprises video acquisition, prediction, transformation quantization and entropy coding, wherein the prediction is divided into an intra-frame prediction part and an inter-frame prediction part, and the intra-frame prediction part and the inter-frame prediction part are respectively used for removing the redundancy of video images in space and time.
In the existing prediction standard, a bidirectional prediction mode needs to transmit Motion information in two directions, in order to further improve coding efficiency and remove Symmetric redundancy, an SMVD (Symmetric Motion Vector Difference) prediction mode is proposed, and the SMVD only needs to transmit forward Motion information and then obtains the forward Motion information through derivation. SMVD has become popular in recent video coding standards, such as: H.266/VVC, AVS3, and the like.
Disclosure of Invention
In order to solve the above problems, the present application provides an inter-frame prediction method, an image processing apparatus, and a computer-readable storage medium, which can increase the application range of the SMVD technique, thereby obtaining a higher coding gain.
The technical scheme adopted by the application is as follows: there is provided an inter prediction method, the method including: constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
Wherein, the method also comprises: acquiring a forward reference frame list and a backward reference frame list of a current coding block; for any image frame in the forward reference frame list, searching whether a matched mirror image frame exists in the backward reference frame list; if yes, performing symmetric motion vector difference prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list.
For any image frame in the forward reference frame list, searching whether a matched mirror image frame exists in the backward reference frame list or not, wherein the method comprises the following steps: acquiring a first playing sequence number of a current coding frame corresponding to a current coding block, a second playing sequence number of any image frame in a forward reference frame list and a third playing sequence number of any image frame in a backward reference frame list; judging whether the difference value between the second playing sequence number and the first playing sequence number is equal to the difference value between the first playing sequence number and the third playing sequence number; if yes, determining that any image frame in the forward reference frame list is matched with the mirror image frame found in the backward reference frame list.
Wherein, using the forward motion vector candidate list and the backward motion vector candidate list to perform the symmetric motion vector difference prediction on the current coding block to obtain at least one prediction result, comprising: determining a base motion vector using the forward motion vector candidate list and the backward motion vector candidate list; the base motion vector is modified to obtain a final motion vector.
Wherein determining the base motion vector using the forward motion vector candidate list and the backward motion vector candidate list comprises: performing bidirectional prediction on the current coding block by utilizing a forward motion vector candidate list and a backward motion vector candidate list; and determining a basic motion vector according to the forward motion vector difference value and the backward motion vector difference value corresponding to the optimal bidirectional prediction result.
Wherein, determining the basic motion vector according to the forward motion vector difference value and the backward motion vector difference value corresponding to the best bidirectional prediction result comprises: determining a motion vector difference mean value according to the forward motion vector difference value and the backward motion vector difference value; determining a forward motion vector according to the forward motion vector predicted value and the motion vector difference mean value, and determining a backward motion vector according to the backward motion vector predicted value and the motion vector difference mean value; based on the forward motion vector and the backward motion vector, a motion vector combination is determined.
Wherein modifying the base motion vector to obtain the final motion vector comprises: performing first motion search by taking the basic motion vector as an initial search point, performing motion compensation when each search point is searched, and updating the basic motion vector for the first time according to a cost value corresponding to each search point; performing second motion search by taking the updated basic motion vector as an initial search point, performing motion compensation when each search point is searched, and performing second update on the basic motion vector according to a cost value corresponding to each search point to obtain a final motion vector; and in the second motion search process, correcting the basic motion vector and/or the pixel predicted value corresponding to the basic motion by using a correction tool.
Wherein the correction tool comprises at least one of a BIO-based correction tool or a BGC correction tool.
Wherein the first motion search is a diamond search and the second motion search is a cross search.
The prediction result comprises a first motion vector and a corresponding first pixel prediction value; selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of a current coding block, wherein the method comprises the following steps: correcting the first motion vector to obtain a second motion vector; correcting the pixel predicted value corresponding to the second motion vector to obtain a second pixel predicted value; respectively calculating the prediction cost values corresponding to the first pixel prediction value and the second pixel prediction value; and selecting a pixel predicted value with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
Wherein modifying the first motion vector to obtain a second motion vector comprises: and correcting the first motion vector by adopting a DMVR tool to obtain a second motion vector.
Wherein, correcting the pixel predicted value corresponding to the second motion vector to obtain a second pixel predicted value comprises: performing motion compensation on the second motion vector by adopting a BIO tool to obtain a forward pixel predicted value, a backward pixel predicted value and a predicted value bias item; determining a bidirectional pixel predicted value according to the forward pixel predicted value, the backward pixel predicted value and a predicted value bias item; and correcting the bidirectional pixel predicted value by adopting a BGC tool to obtain a second pixel predicted value.
Another technical scheme adopted by the application is as follows: provided is an image processing apparatus including: the construction module is used for constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; the prediction module is used for performing symmetric motion vector difference prediction on the current coding block by utilizing the forward motion vector candidate list and the backward motion vector candidate list to obtain at least one prediction result; and the selection module is used for selecting the prediction result with the minimum prediction cost value as the symmetric motion vector difference prediction result of the current coding block.
Another technical scheme adopted by the application is as follows: there is provided an image processing apparatus comprising a processor and a memory interconnected, the memory for storing program data, the processor for executing the program data to implement a method as described above.
Another technical scheme adopted by the application is as follows: a computer-readable storage medium is provided, characterized in that the computer-readable storage medium has stored therein program data for implementing the method as described above when the program data are executed by a processor.
The inter-frame prediction method provided by the application comprises the following steps: constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block. By the mode, when SMVD is carried out, more mvps meeting the conditions can be subjected to SMVD technology, the limitation of the SMVD technology is relaxed, and the SMVD technology-based interframe prediction technology can better exert the advantages, so that higher coding gain is obtained.
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, and it is obvious that the drawings in the following description are only some embodiments of the present application, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts. Wherein:
FIG. 1 is a schematic diagram of a forward reference frame, a current frame, and a backward reference frame provided herein;
FIG. 2 is a flowchart illustrating a first embodiment of an inter-frame prediction method provided herein;
FIG. 3 is a flowchart illustrating a second embodiment of an inter-frame prediction method provided in the present application;
FIG. 4 is a schematic flow chart of an embodiment of step 32;
FIG. 5 is a schematic diagram of a coding block of a diamond search method provided in the present application;
FIG. 6 is a block diagram of a cross search method according to the present application;
FIG. 7 is a flowchart illustrating an embodiment of step 33;
fig. 8 is a schematic structural diagram of a first embodiment of an image processing apparatus provided in the present application;
fig. 9 is a schematic structural diagram of a second embodiment of an image processing apparatus provided in the present application;
FIG. 10 is a schematic structural diagram of an embodiment of a computer-readable storage medium provided in the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. It is to be understood that the specific embodiments described herein are merely illustrative of the application and are not limiting of the application. It should be further noted that, for the convenience of description, only some of the structures related to the present application are shown in the drawings, not all of the structures. 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.
The terms "first", "second", etc. in this application are used to distinguish between different objects and not to describe a particular order. 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.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the application. The appearances of the phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. It is explicitly and implicitly understood by one skilled in the art that the embodiments described herein can be combined with other embodiments.
The commonly used inter-frame prediction modes are classified into a conventional AMVP mode, a conventional Merge mode, a triangle mode, a HASH (HASH) mode, an affine mode, and the like, and these modes all use the correlation between frames to obtain the final prediction value by adopting different prediction modes.
Generally, the luminance and chrominance signal values of the pixels of the temporally adjacent frames are relatively close and have strong correlation. The inter-frame prediction searches for a matching block closest to the current block in the reference frame by using methods such as motion search, and records motion information such as a motion vector (mv) and a reference frame index between the current block and the matching block. And encoding the motion information and transmitting the encoded motion information to a decoding end. At the decoding end, the decoder can find the matching block of the current block as long as the MV of the current block is analyzed through the corresponding syntax element. And copying the pixel value of the matching block to the current block, namely the interframe prediction value of the current block.
In the related art, the SMVD mode is applied only to a bidirectional B frame, and is used in the conventional AMVP mode. When using SMVD mode, the backward motion vector difference MVD1 need not be transmitted in the codestream, and MVD1 is derived from the forward motion vector difference MVD 0.
As shown in fig. 1, fig. 1 is a schematic diagram of a forward reference frame, a current frame and a backward reference frame provided in the present application.
A mirror reference picture of the reference picture in the reference frame list0 is found in the reference frame list1, and the index of the mirror picture in the list1 is used as ref _ idx _ l 1. If there is no mirror image, the index of the reference image closest to the current image (i.e., closest in video playing order) in list1 is referred to as ref _ idx _ l 1. Then the backward MVD1 is derived from the forward MVD 0:
Figure BDA0002611070080000061
wherein, POClist0POC value for forward reference framelist1POC value for backward reference frameCURIs the POC value of the current frame.
Specifically, the SMVD mode mainly includes determination of an SMVD enabling condition, determination of a base MV (motion vector) of the SMVD, modification of the base MV, and an RDO (Rate-distortion optimization) process.
Referring to fig. 2, fig. 2 is a flowchart illustrating a first embodiment of an inter prediction method provided in the present application, the method including:
step 21: and acquiring a forward reference frame list and a backward reference frame list of the current coding block.
In a general encoding process, a current encoding frame is divided into a plurality of encoding blocks, and one encoding block includes at least one pixel, for example, 2 × 2 pixels or 4 × 4 pixels. In bi-directional prediction, one coding block corresponds to one forward reference frame list0 and one backward reference frame list 1.
Step 22: for any image frame in the forward reference frame list, whether a matched mirror image frame exists in the backward reference frame list is searched.
It is to be understood that in the forward reference frame list0 and the backward reference frame list1, the SMVD mode may be determined to be turned on as long as any pair of reference image frames are mirror images. The mirror image frame can be judged in the following way:
step 221: and acquiring a first playing sequence number of a current coding frame corresponding to the current coding block, a second playing sequence number of any image frame in the forward reference frame list and a third playing sequence number of any image frame in the backward reference frame list.
The playing sequence number poc (picture Order count) is used to indicate the playing sequence of the video frames.
Step 222: and judging whether the difference value between the second playing sequence number and the first playing sequence number is equal to the difference value between the first playing sequence number and the third playing sequence number.
Specifically, the image frames in the forward reference frame list0 are used as references (denoted by f (i), i represents the reference frame sequence number in the forward reference frame list0, and f (i) (POC) is the POC value of the frame f (i)), and then each frame is circularly searched in the backward reference frame list1 (denoted by b (j), j represents the reference frame sequence number in the subsequent reference frame list1, and b (j) (POC) is the POC value of b (j)). Let c (POC) be the POC value of the current frame where the current block to be coded is located, then the SMVD technique is turned on as long as the following conditions are met:
F(i)(poc)-C(poc)=C(poc)-B(j)(poc)
step 223: if yes, determining that any image frame in the forward reference frame list is matched with the mirror image frame found in the backward reference frame list.
If the determination result in step 22 is yes, step 23 is executed.
Step 23: and starting an SMVD mode.
It is understood that the general technique is to judge by the following means:
POC of the current frame to be encoded (POC of the 1 st reference frame of the reference frame list 0) } (POC of the 1 st reference frame of the reference frame list1) }
In this way, only the POC value of the 1 st reference frame in the reference frame list is considered, and in this embodiment, not only the first frame in the forward reference frame list0 is searched for a frame satisfying the "POC mirroring" condition in the backward reference frame list1, but all frames in the forward reference frame list0 are sequentially searched for mirror frames satisfying the condition, that is: by the way, (the POC of one of the reference frames in the forward reference frame list 0) -the POC of the current frame to be coded is the POC of the current frame to be coded- (the POC of the other reference frame in the backward reference frame list1), the SMVD technique can be performed on more image frames satisfying the condition, and the condition limit for performing SMVD is relaxed, so that the SMVD-based inter-frame prediction technique can exert its advantages more, thereby obtaining higher coding gain.
Referring to fig. 3, fig. 3 is a flowchart illustrating a second embodiment of an inter prediction method provided in the present application, where the method includes:
step 31: constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and at least historical motion vectors are contained in the forward motion vector candidate list and the backward motion vector candidate list.
Generally, an MVP (motion vector prediction) candidate list is established for a current coding block, a plurality of candidate MVs (each candidate MV includes a forward MV and a backward MV), the MV candidate list is established to include spatial MVs, temporal MVs, HMVPs (historical motion vectors), zero MVs and the like, and priorities are also added into the candidate list from front to back. Wherein HMVP refers to the motion vector of the encoded block.
In this embodiment, the MVP candidate list at least includes HMVP, that is, the HMVP needs to be subjected to a subsequent SMVD technique. By the mode, more HMVPs meeting the conditions can be subjected to the SMVD technology, the limitation of the SMVD technology is relaxed, and the interframe prediction technology based on the SMVD technology can better exert the advantages of the SMVD technology, so that higher coding gain is obtained.
Step 32: and performing symmetric motion vector difference prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list to obtain at least one prediction result.
Referring to fig. 4, fig. 4 is a schematic flowchart of an embodiment of step 32, where step 32 may specifically include:
step 321: a base motion vector is determined using the forward motion vector candidate list and the backward motion vector candidate list.
Here, the forward motion vector candidate list may be a motion vector candidate list of any one frame in the forward reference frame list0, and the backward motion vector candidate list may be a motion vector candidate list of any one frame in the backward reference frame list 1.
Optionally, performing bidirectional prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list; and determining a basic motion vector according to the forward motion vector difference value and the backward motion vector difference value corresponding to the optimal bidirectional prediction result.
Unidirectional prediction and bidirectional prediction are described below:
during unidirectional prediction:
traversing all the reference frames in the reference frame lists (B frames List0 and List1), each reference frame obtaining the best MV, comparing the corresponding cost of the best MV of each reference frame, and obtaining the MV with the smallest cost as the best MV.
During bidirectional prediction:
1) comparing the costs corresponding to the two MVs for the respective best MVs in the two lists List0 and List1 obtained by unidirectional prediction, and recording the List with higher cost as A and the List with lower cost as B;
2) performing motion compensation on the optimal MV corresponding to the List with lower cost to obtain a predicted value pred, and obtaining a ListA direction predicted value org _ bi through the predicted value and the current block original pixel value org to be used as the ListA direction original pixel value for subsequent motion search;
org_bi[i]=((org[i])<<1)-pred[i]
wherein org is an original pixel of the current block, pred is a predicted value pred of the current block in the list direction with low cost, org _ bi is an original pixel of the current block in another list direction in the subsequent motion search process, and carries out cost calculation with a reference pixel corresponding to mv obtained by motion search, and i represents the position of the pixel in the block;
3) traversing all reference frames in ListA, taking the best MV in the list A as a motion search starting point for performing motion search to obtain the MV with the minimum cost, and paying attention to the fact that the initial cost is set as the maximum value, namely the best MV is updated;
4) performing motion compensation on ListA to obtain a predicted value pred, obtaining a ListB direction predicted value through the predicted value and the original pixel value org of the current block, and performing subsequent motion search as the ListB direction original pixel value, wherein the specific calculation mode is the same as the formula in the step 2);
5) traversing all reference frames in ListB, taking the best MV in the list B as a motion search starting point for performing motion search to obtain the MV with the minimum cost, wherein the initial cost is the best value in ListA and the best MV is not necessarily updated;
6) and performing motion compensation on the obtained best MVs of the two Lists to obtain a predicted value.
Wherein, according to the forward motion vector difference and the backward motion vector difference corresponding to the best bidirectional prediction result, determining the basic motion vector, specifically:
determining a motion vector difference mean value according to the forward motion vector difference value and the backward motion vector difference value; determining a forward motion vector according to the forward motion vector predicted value and the motion vector difference mean value, and determining a backward motion vector according to the backward motion vector predicted value and the motion vector difference mean value; based on the forward motion vector and the backward motion vector, a motion vector combination is determined.
Wherein, the mvd obtained by weighting operation of forward mvd0 and backward mvd1 when common bidirectional prediction is optimal is adopted, the forward and backward mvs obtained by the mvd are used as the basic mv of the SMVD, and then the subsequent related operation or technology of the SMVD is carried out based on the basic mv.
For example, after completing the normal bi-directional inter-frame prediction mode, we obtain the forward mvd0 and the backward mvd1 when the normal bi-directional prediction is optimal, then mvd is 0.5 mvd0+0.5 mvd1, then forward mv0 is forward mvp0+ mvd, and backward mv1 is backward mvp1-mvd, that is, the basis mv is formed by mv0 and mv1, and then the refinement operation of mv is performed based on the basis of the basis mv at this time.
Optionally, if the motion vector is corrected without starting a DMVR (decoder-side motion vector correction) in the normal bidirectional inter prediction mode, the DMVR tool is started, so that the finally obtained mvd0 and mvd1 are more accurate.
DMVR is a further modification to bi-directionally predict the best MV by finding the corresponding reference block in the reference frame using MV, then searching the prediction block with the smallest cost (Sum of Absolute Error (SAD)) of the forward and backward reference blocks near the reference block, and then obtaining the best deltaMV to modify the value of the best MV. The method comprises the following steps:
1) firstly, respectively obtaining prediction blocks of front and back integer pixel positions by using front and back MVs;
2) then, respectively acquiring forward and backward predicted values of the current block on the reference frame by using the forward and backward MVs, wherein the corresponding forward and backward predicted blocks are pre1 and pre 2;
3) for each M × N subblock within the current block (if the current block width is less than 16, M is the current block width, otherwise M is 16; if the current block height is less than 16, N is the current block height, otherwise N is 16), each sub-block needs to calculate SADs of 25 groups of forward and backward predicted values, two predicted values with the minimum SAD are selected by comparing the sizes of all SADs, the deviation at this time is the integer pixel deltaMV of the current sub-block, and each sub-block has a deltaMV.
Step 322: the base motion vector is modified to obtain a final motion vector.
The correction of MV, also called MV refinement, is mainly to improve the accuracy thereof, so as to obtain more accurate MVD0 for inter-frame prediction.
Optionally, in an embodiment, step 332 may specifically include the following two ways:
the first method comprises the following steps: and performing first motion search by taking the basic motion vector as an initial search point, performing motion compensation when each search point is searched, and updating the basic motion vector for the first time according to the cost value corresponding to each search point.
And the second method comprises the following steps: and performing second motion search by taking the updated basic motion vector as an initial search point, performing motion compensation when each search point is searched, and updating the basic motion vector for the second time according to the cost value corresponding to each search point to obtain a final motion vector.
And in the second motion search process, correcting the basic motion vector and/or the pixel predicted value corresponding to the basic motion by using a correction tool.
The first mode may specifically adopt a diamond (diamond) search mode, as shown in fig. 5, fig. 5 is a schematic diagram of a coding block of the diamond search mode provided by the present application, where an origin of coordinates represents a search starting point, and other black points represent positions of each search point relative to the starting point, and motion compensation is performed after each point is searched (at this time, a prediction value correction technique based on BIO and a prediction value correction technique based on BGC are turned off), so as to obtain a cost of searching to each point, and compare the cost with the cost of the starting point; the base MV is updated with the MV of the point of least cost.
The second method may specifically adopt a cross search method, as shown in fig. 6, fig. 6 is a schematic diagram of a coding block of the cross search method provided in the present application, where an origin of coordinates represents a search starting point, and other black points represent positions of each search point relative to the starting point, and motion compensation is performed after each point is searched (at this time, a prediction value correction technique based on BIO and a prediction value correction technique based on BGC are started), so as to obtain a cost of searching to each point, and compare the cost with the cost of the starting point; the base MV is updated with the MV of the point of least cost to obtain the final MV.
It should be noted that, in other embodiments, in addition to the above-mentioned prediction value correction technique based on BIO and the prediction value correction technique based on BGC, other prediction value correction techniques or motion vector correction techniques may also be adopted, that is, when a complex motion search and a simple motion search are alternately performed, it is within the scope of the present application to use the prediction value correction technique or the motion vector correction technique in the simple motion search process. By the mode, because the predicted value correction technology or the motion vector correction technology is only used in the simple motion search process, the occupancy rate of resources can be reduced, and the prediction efficiency is improved.
The above-described predicted value correction technique for BIO and the predicted value correction technique for BGC are described below:
BIO (bi-directional optical flow) is sample-point level motion optimization, bi-directional meaning used only in bi-directionally predicted luminance block motion compensation. Here, the bidirectional frame refers to the frames before and after the time axis of the current frame. The bidirectional optical flow firstly uses the forward predicted value, the backward predicted value and the gradient information of the current block to deduce the motion displacement of each 4 x 4 block in the current block, and then combines the gradient value to obtain the predicted value of the current block. The optical flow in the bidirectional optical flow means that a correction value is obtained by multiplying a motion vector and a gradient.
BGC (Bi-directional Gradient Correction, Bi-directional Gradient value Correction) is only used for Bi-directional prediction of a CU, and if the unidirectional prediction values obtained in two directions are Pred0 and Pred1, respectively, and the bidirectional prediction value before Correction is predBI, the bidirectional prediction value Pred after BGC Correction is adopted as:
Figure BDA0002611070080000121
wherein pred0 represents the predicted value of List0 direction, pred1 represents the predicted value of List1 direction, predBI represents the average value of predicted values of List0 and List1 direction, the calculation formula is (pred0+ pred1) > >1, k represents the correction intensity, and is generally set as a fixed value of 3; an IbgFlag of 0 indicates that no gradient correction is performed, and an IbgFlag of 1 indicates that gradient correction is performed; IbgIdx is 0 to represent forward gradient correction, and is 1 to represent backward gradient correction; pred is the predicted value after correction.
Step 33: and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
Wherein, the forward mvd0 corresponding to the final mv in the prediction result is the final forward mvd 0. Based on the final forward mvd0, then: forward mv0 is forward mvd0+ forward mvp0, backward mv1 is (-forward mvd0) + backward mvp1, and based on the forward mv0 and backward mv1 at this time, an RDO process based on SSE (sum of square error) is performed, thereby obtaining a final rate-distortion cost.
After the above steps are completed, the obtained final rate distortion cost is compared with the rate distortion costs of other inter-frame prediction modes, and the prediction mode with the minimum rate distortion cost is finally selected as the final inter-frame prediction mode for coding transmission.
Alternatively, as shown in fig. 7, fig. 7 is a flowchart illustrating an embodiment of step 33, where the prediction result in the setting step 32 includes a first motion vector, and the step 33 may include:
step 331: and correcting the first motion vector to obtain a second motion vector.
Optionally, in this step, the DMVR tool may be used to modify the first motion vector to obtain a second motion vector.
Specifically, based on the final forward mvd0, then: forward mv0 is forward mvd0+ forward mvp0, backward mv1 is (-forward mvd0) + backward mvp 1; at this time, the DMVR tool is turned on to obtain deltaMV, and then forward mv0 'is mv0+ deltaMV, and backward mv 1' is mv 1-deltaMV.
Step 332: and correcting the pixel predicted value corresponding to the second motion vector to obtain a second pixel predicted value.
Performing motion compensation based on mv0 'and mv 1' obtained in the above steps to obtain a forward predicted value pred0 and a backward predicted value pred1, and starting BIO when obtaining the predicted values to obtain a predicted value bias term b, so as to obtain a bidirectional predicted value pred ═ 1 (pred0+ pred1+ b + 1); and starting a BGC tool, correcting the predBuI, and taking the predicted value after the predBuI correction as a second pixel predicted value.
Step 333: and respectively calculating the prediction cost values corresponding to the first pixel prediction value and the second pixel prediction value.
Step 334: and selecting a pixel predicted value with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
Different from the prior art, an inter-frame prediction method provided in an embodiment of the present application includes: constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block. By the mode, when SMVD is carried out, more mvps meeting the conditions can be subjected to SMVD technology, the limitation of the SMVD technology is relaxed, and the SMVD technology-based interframe prediction technology can better exert the advantages, so that higher coding gain is obtained.
Referring to fig. 8, fig. 8 is a schematic structural diagram of a first embodiment of the image processing apparatus provided in the present application, and the image processing apparatus 80 includes a construction module 81, a prediction module 82, and a selection module 83.
Wherein, the constructing module 81 is configured to construct a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; the prediction module 82 is configured to perform symmetric motion vector difference prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list to obtain at least one prediction result; the selecting module 83 is configured to select a prediction result with the smallest prediction cost value as the symmetric motion vector difference prediction result of the current coding block.
Referring to fig. 9, fig. 9 is a schematic structural diagram of a second embodiment of the image processing apparatus provided in the present application, and the image processing apparatus 90 includes a processor 91 and a memory 92.
The memory 92 is used for storing program data, and the processor 91 is used for executing the program data to realize the following method:
constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
Referring to fig. 10, fig. 10 is a schematic structural diagram of an embodiment of a computer-readable storage medium 100 provided in the present application, in which program data 101 is stored, and when the program data is executed by a processor, the program data is used to implement the following methods:
constructing a motion vector candidate list of a current coding block; the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors; performing symmetric motion vector difference prediction on a current coding block by using a forward motion vector candidate list and a backward motion vector candidate list to obtain at least one prediction result; and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
In the several embodiments provided in the present application, it should be understood that the disclosed method and apparatus may be implemented in other manners. For example, the above-described device embodiments are merely illustrative, and for example, the division of the modules or units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated units in the other embodiments described above may be stored in a computer-readable storage medium if they are implemented in the form of software functional units and sold or used as separate products. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, a network device, or the like) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above description is only for the purpose of illustrating embodiments 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 according to the content of the present specification and the accompanying drawings, or which are directly or indirectly applied to other related technical fields, are also included in the scope of the present application.

Claims (15)

1. A method of inter-prediction, the method comprising:
constructing a motion vector candidate list of a current coding block; wherein the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors;
performing symmetric motion vector difference prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list to obtain at least one prediction result;
and selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
2. The method of claim 1,
the method further comprises the following steps:
acquiring a forward reference frame list and a backward reference frame list of the current coding block;
for any image frame in the forward reference frame list, searching whether a matched mirror image frame exists in the backward reference frame list;
if yes, executing the forward motion vector candidate list and the backward motion vector candidate list to carry out symmetric motion vector difference prediction on the current coding block.
3. The method of claim 2,
the searching whether there is a matched mirror image frame in the backward reference frame list for any image frame in the forward reference frame list comprises:
acquiring a first playing sequence number of a current coding frame corresponding to the current coding block, a second playing sequence number of any image frame in the forward reference frame list and a third playing sequence number of any image frame in the backward reference frame list;
judging whether the difference value between the second playing sequence number and the first playing sequence number is equal to the difference value between the first playing sequence number and the third playing sequence number;
if yes, determining that a matched mirror image frame is found in the backward reference frame list for any image frame in the forward reference frame list.
4. The method of claim 1,
said performing symmetric motion vector difference prediction on said current coding block using said forward motion vector candidate list and said backward motion vector candidate list to obtain at least one prediction result, comprising:
determining a base motion vector using the list of forward motion vector candidates and the list of backward motion vector candidates;
and correcting the basic motion vector to obtain a final motion vector.
5. The method of claim 4,
determining a base motion vector using the forward motion vector candidate list and the backward motion vector candidate list, comprising:
performing bidirectional prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list;
and determining a basic motion vector according to the forward motion vector difference value and the backward motion vector difference value corresponding to the optimal bidirectional prediction result.
6. The method of claim 5,
the determining a basic motion vector according to the forward motion vector difference value and the backward motion vector difference value corresponding to the best bidirectional prediction result comprises:
determining a motion vector difference mean value according to the forward motion vector difference value and the backward motion vector difference value;
determining a forward motion vector according to the forward motion vector predicted value and the motion vector difference mean value, and determining a backward motion vector according to the backward motion vector predicted value and the motion vector difference mean value;
determining a motion vector combination based on the forward motion vector and the backward motion vector.
7. The method of claim 4,
the modifying the base motion vector to obtain a final motion vector includes:
performing a first motion search by taking the basic motion vector as an initial search point, performing motion compensation when each search point is searched, and updating the basic motion vector for the first time according to a cost value corresponding to each search point;
performing second motion search by taking the updated basic motion vector as an initial search point, performing motion compensation when each search point is searched, and performing second update on the basic motion vector according to a cost value corresponding to each search point to obtain a final motion vector;
and in the second motion search process, correcting the basic motion vector and/or the pixel predicted value corresponding to the basic motion vector by using a correction tool.
8. The method of claim 7,
the rework tool includes at least one of a BIO based rework tool or a BGC rework tool.
9. The method of claim 7,
the first motion search is a diamond search and the second motion search is a cross search.
10. The method of claim 1,
the prediction result comprises a first motion vector and a corresponding first pixel prediction value;
the selecting a prediction result with the smallest prediction cost value as the symmetric motion vector difference prediction result of the current coding block includes:
correcting the first motion vector to obtain a second motion vector;
correcting the pixel predicted value corresponding to the second motion vector to obtain a second pixel predicted value;
respectively calculating the prediction cost values corresponding to the first pixel prediction value and the second pixel prediction value;
and selecting a pixel predicted value with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
11. The method of claim 10,
the modifying the first motion vector to obtain a second motion vector includes:
and correcting the first motion vector by adopting a DMVR tool to obtain a second motion vector.
12. The method of claim 10,
the modifying the pixel prediction value corresponding to the second motion vector to obtain a second pixel prediction value includes:
performing motion compensation on the second motion vector by adopting a BIO tool to obtain a forward pixel predicted value, a backward pixel predicted value and a predicted value bias item;
determining a bidirectional pixel predicted value according to the forward pixel predicted value, the backward pixel predicted value and the predicted value bias item;
and correcting the bidirectional pixel predicted value by adopting a BGC tool to obtain the second pixel predicted value.
13. An image processing apparatus characterized by comprising:
the construction module is used for constructing a motion vector candidate list of a current coding block; wherein the motion vector candidate list comprises a forward motion vector candidate list and a backward motion vector candidate list, and the forward motion vector candidate list and the backward motion vector candidate list at least comprise historical motion vectors;
a prediction module, configured to perform symmetric motion vector difference prediction on the current coding block by using the forward motion vector candidate list and the backward motion vector candidate list to obtain at least one prediction result;
and the selection module is used for selecting a prediction result with the minimum prediction cost value as a symmetric motion vector difference prediction result of the current coding block.
14. An image processing apparatus, characterized in that the image processing apparatus comprises a processor and a memory connected to each other, the memory being adapted to store program data, the processor being adapted to execute the program data to implement the method according to any of claims 1-12.
15. A computer-readable storage medium, in which program data are stored which, when being executed by a processor, are adapted to carry out the method according to any one of claims 1-12.
CN202010754463.2A 2020-07-30 2020-07-30 Inter-frame prediction method, image processing apparatus, and computer-readable storage medium Active CN112004097B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010754463.2A CN112004097B (en) 2020-07-30 2020-07-30 Inter-frame prediction method, image processing apparatus, and computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010754463.2A CN112004097B (en) 2020-07-30 2020-07-30 Inter-frame prediction method, image processing apparatus, and computer-readable storage medium

Publications (2)

Publication Number Publication Date
CN112004097A true CN112004097A (en) 2020-11-27
CN112004097B CN112004097B (en) 2021-09-14

Family

ID=73463335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010754463.2A Active CN112004097B (en) 2020-07-30 2020-07-30 Inter-frame prediction method, image processing apparatus, and computer-readable storage medium

Country Status (1)

Country Link
CN (1) CN112004097B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565768A (en) * 2020-12-02 2021-03-26 浙江大华技术股份有限公司 Inter-frame prediction method, encoding and decoding system and computer readable storage medium
CN113938690A (en) * 2021-12-03 2022-01-14 北京达佳互联信息技术有限公司 Video coding method and device, electronic equipment and storage medium
CN114640856A (en) * 2021-03-19 2022-06-17 杭州海康威视数字技术股份有限公司 Decoding method, encoding method, device and equipment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110545425A (en) * 2019-08-21 2019-12-06 浙江大华技术股份有限公司 Inter-frame prediction method, terminal equipment and computer storage medium
CN110691253A (en) * 2019-10-17 2020-01-14 北京大学深圳研究生院 Encoding and decoding method and device based on inter-frame prediction
CN110740332A (en) * 2018-07-20 2020-01-31 北京字节跳动网络技术有限公司 Motion prediction based on updated motion vectors
CN111279701A (en) * 2019-03-13 2020-06-12 北京大学 Video processing method and device
WO2020147772A1 (en) * 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidates derivation
WO2020184964A1 (en) * 2019-03-11 2020-09-17 엘지전자 주식회사 Method and apparatus for video signal processing for inter prediction
WO2020221258A1 (en) * 2019-04-28 2020-11-05 Beijing Bytedance Network Technology Co., Ltd. Symmetric motion vector difference coding

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110740332A (en) * 2018-07-20 2020-01-31 北京字节跳动网络技术有限公司 Motion prediction based on updated motion vectors
WO2020147772A1 (en) * 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidates derivation
WO2020184964A1 (en) * 2019-03-11 2020-09-17 엘지전자 주식회사 Method and apparatus for video signal processing for inter prediction
CN111279701A (en) * 2019-03-13 2020-06-12 北京大学 Video processing method and device
WO2020221258A1 (en) * 2019-04-28 2020-11-05 Beijing Bytedance Network Technology Co., Ltd. Symmetric motion vector difference coding
CN110545425A (en) * 2019-08-21 2019-12-06 浙江大华技术股份有限公司 Inter-frame prediction method, terminal equipment and computer storage medium
CN110691253A (en) * 2019-10-17 2020-01-14 北京大学深圳研究生院 Encoding and decoding method and device based on inter-frame prediction

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
RU-LING LIAO等: "Non-CE4: DMVR on SMVD and AMVP mode,JVET-O0631", 《JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING: GOTHENBURG, SE, 3-12 JULY 2019》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565768A (en) * 2020-12-02 2021-03-26 浙江大华技术股份有限公司 Inter-frame prediction method, encoding and decoding system and computer readable storage medium
CN112565768B (en) * 2020-12-02 2023-02-28 浙江大华技术股份有限公司 Inter-frame prediction method, encoding and decoding system and computer readable storage medium
CN114640856A (en) * 2021-03-19 2022-06-17 杭州海康威视数字技术股份有限公司 Decoding method, encoding method, device and equipment
CN114640856B (en) * 2021-03-19 2022-12-23 杭州海康威视数字技术股份有限公司 Decoding method, encoding method, device and equipment
CN113938690A (en) * 2021-12-03 2022-01-14 北京达佳互联信息技术有限公司 Video coding method and device, electronic equipment and storage medium
CN113938690B (en) * 2021-12-03 2023-10-31 北京达佳互联信息技术有限公司 Video encoding method, video encoding device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN112004097B (en) 2021-09-14

Similar Documents

Publication Publication Date Title
CN110809887B (en) Method and apparatus for motion vector modification for multi-reference prediction
US9369731B2 (en) Method and apparatus for estimating motion vector using plurality of motion vector predictors, encoder, decoder, and decoding method
CN110419217B (en) Method for image processing and image processing apparatus
US9661343B2 (en) Moving picture coding device, moving picture coding method, moving picture coding program, transmitting device, transmission method and transmission program, and moving picture decoding device, moving picture decoding method, moving picture decoding program, receiving device, reception method and reception program
US9635381B2 (en) Moving picture coding apparatus, moving picture coding method, and moving picture coding program, and moving picture decoding apparatus, moving picture decoding method, and moving picture decoding program
CN112004097B (en) Inter-frame prediction method, image processing apparatus, and computer-readable storage medium
US11889099B2 (en) Methods and apparatuses of video processing for bi-directional prediction with motion refinement in video coding systems
US8462849B2 (en) Reference picture selection for sub-pixel motion estimation
JP2011501542A (en) Method and apparatus for interframe predictive coding
CN111818342B (en) Inter-frame prediction method and prediction device
CN113965753B (en) Inter-frame image motion estimation method and system based on code rate control
CN113891089B (en) Method, device and equipment for constructing motion information candidate list
KR101650056B1 (en) Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference
KR101590875B1 (en) Method and appratus for encoding images using motion prediction by multiple reference, and method and apparatus for decoding images using motion prediction by multiple reference

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
GR01 Patent grant
GR01 Patent grant