WO2012097742A1 - Method, module and encoding/decoding device for obtaining reference motion vector - Google Patents

Method, module and encoding/decoding device for obtaining reference motion vector Download PDF

Info

Publication number
WO2012097742A1
WO2012097742A1 PCT/CN2012/070586 CN2012070586W WO2012097742A1 WO 2012097742 A1 WO2012097742 A1 WO 2012097742A1 CN 2012070586 W CN2012070586 W CN 2012070586W WO 2012097742 A1 WO2012097742 A1 WO 2012097742A1
Authority
WO
WIPO (PCT)
Prior art keywords
image block
motion vector
sub
reference motion
candidate reference
Prior art date
Application number
PCT/CN2012/070586
Other languages
French (fr)
Chinese (zh)
Inventor
郑萧桢
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2012097742A1 publication Critical patent/WO2012097742A1/en

Links

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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search

Definitions

  • the present invention relates to the field of information technology, and in particular, to a reference motion vector acquisition method, a module, and a coding and decoding apparatus. Background technique
  • an image is usually divided into several image blocks for encoding and decoding, and one image block can be further divided into a plurality of sub-image blocks.
  • the encoding end usually searches for a neighboring encoded sub-image block that is most similar (ie, matched) to the current image block or sub-image block, and subtracts the pixel value corresponding to the current image block or sub-image block from the matched sub-image block by the residual. Then, the residual is subjected to transform and quantization, entropy coding, and finally the bit stream obtained by entropy coding is written into the coded stream.
  • adjacent coded sub-image blocks are referred to as sub-reference image blocks.
  • the offset between the current image block or sub-image block and the matched sub-image block is called a motion vector
  • the encoding end encodes the motion vector and writes it into the encoded code stream to enable the decoding end to
  • the motion vector knows the location of the matched sub-image block.
  • a reference motion vector Motion Vector Candidate
  • the difference between the motion vector and the reference motion vector is encoded and written into the coded stream.
  • a method for obtaining a reference motion vector the encoding end and the decoding end follow the same candidate reference motion vector table, where the candidate reference motion vector table includes motion vectors of several sub-image blocks adjacent to the current image block or the sub-image block. (as a candidate reference motion vector) and its corresponding number.
  • the encoding end selects one of the candidate reference motion vector tables as the candidate reference motion vector, encodes the difference between the offset and the reference motion vector by using variable length coding, and numbers the reference motion vector by using variable length coding. Encoding is performed so that the decoding end knows which candidate reference motion vector is selected by the encoding end.
  • the existing method of obtaining a reference motion vector does not consider the current image block or sub-image block. The degree of correlation with adjacent sub-image blocks, therefore, affects the coding efficiency of the motion vectors. Summary of the invention
  • the embodiment of the invention provides a reference motion vector acquisition method, a module, and a coding and decoding device, so as to solve the problem that the correlation between the current image block or the sub-image block and the adjacent sub-image block is not considered in the prior art, and the motion vector is affected.
  • the problem of coding efficiency is not considered in the prior art, and the motion vector is affected.
  • An embodiment of the present invention provides a reference motion vector acquisition method, including:
  • Each candidate reference motion vector is numbered according to the first candidate reference motion vector; a reference motion vector is selected from each of the numbered candidate reference motion vectors.
  • An embodiment of the present invention further provides a reference motion vector acquisition module, including:
  • a identifying unit configured to obtain a dividing manner of the sub image block in the current image block
  • An analyzing unit configured to determine, in the partitioning manner, a first candidate reference motion vector among each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an image block adjacent to the current image block or a motion vector of the sub-image block, or a motion vector obtained by the motion vector of the adjacent image block or the sub-image block;
  • a numbering unit configured to number each candidate reference motion vector according to the first candidate reference motion vector
  • An embodiment of the present invention further provides an encoding apparatus, including: a prediction module, a transform module, a quantization module, an entropy encoding module, and a reference motion vector acquiring module;
  • the reference motion vector acquisition module is configured to obtain a division manner of the sub image block in the current image block; Determining, in the dividing manner, a first candidate reference motion vector in each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an motion of an image block or a sub-image block adjacent to the current image block. a vector, or a motion vector obtained by the motion vector of the adjacent image block or sub-image block; and each candidate reference motion vector is numbered according to the first candidate reference motion vector; Selecting a reference motion vector in the motion vector;
  • the prediction module is configured to acquire a pixel residual between the sub-image block and the predicted image block, and obtain a difference between a motion vector of the predicted image block and the reference motion vector;
  • the transform module is configured to transform the residual obtained by the prediction module
  • the quantization module is configured to quantize the residual obtained by the prediction module transformed by the transform module;
  • the entropy encoding module is configured to entropy encode the residual quantized by the quantization module, and perform variable length entropy coding on a difference between a motion vector of the predicted image block and the reference motion vector, where The number corresponding to the reference motion vector is variable length entropy encoded.
  • An embodiment of the present invention further provides a decoding apparatus, including: an entropy decoding module, an inverse quantization module, an inverse transform module, a prediction compensation module, and a reference motion vector acquisition module;
  • the entropy decoding module is configured to perform entropy decoding on the received encoded code stream, obtain a pixel residual between each sub-image block and the predicted image block in the current image block, and obtain a motion vector of the predicted image block and the reference The difference between the motion vectors and the number corresponding to the reference motion vector;
  • the inverse quantization module is configured to perform inverse quantization on the residual
  • the inverse transform module is configured to perform inverse transform on a residual that is inversely quantized by the inverse quantization module, where the reference motion vector acquisition module is configured to obtain a partition mode of the sub image block in the current image block; And determining, in each candidate reference motion vector of the sub-image block, a first candidate reference motion vector, where the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained by calculating a motion vector of an adjacent image block or a sub-image block; calculating each candidate reference motion vector according to the first candidate reference motion vector; selecting from each of the numbered candidate reference motion vectors Reference motion vector.
  • the prediction compensation module is configured to acquire a corresponding reference motion vector according to the number, obtain the motion vector according to a difference between the motion vector and the reference motion vector, and determine the predicted image block according to the motion vector, And acquiring the current image block according to the predicted image block and the residual.
  • the reference motion vector obtaining method, the module, and the encoding and decoding apparatus determine the first candidate reference motion vector of the sub-image block according to the division manner of the sub-image block in the current image block, and according to the first reference motion vector Each candidate reference motion vector is numbered so that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding, the coding efficiency of the number can be improved, thereby improving the video coding and decoding efficiency. .
  • FIG. 1 is a flowchart of a first embodiment of a reference motion vector acquisition method provided by the present invention
  • FIG. 2a is a schematic diagram of asymmetrically dividing a current image block into two left and right sub-image blocks
  • FIG. 2b is a schematic diagram of dividing a current image block into left and right. a schematic diagram of two sub-image blocks;
  • FIG. 3a is a schematic diagram of asymmetrically dividing a current image block into upper and lower sub-image blocks
  • FIG. 3b is a schematic diagram of symmetrically dividing a current image block into upper and lower sub-image blocks
  • FIG. 4 is a schematic diagram of a sub-image block adjacent to a current image block
  • FIG. 5 is a schematic diagram of identifying a sub-image block in a current image block by a ratio of a dividing line in a current image block to a distance of a boundary line of a current image block or a boundary line extension line to an end point of the image block;
  • FIG. 7 is a schematic structural diagram of a reference motion vector acquisition module according to a first embodiment of the present invention
  • FIG. 8 is a schematic structural diagram of a reference motion vector acquisition module according to a second embodiment of the present invention
  • FIG. 9 is a schematic structural diagram of a first embodiment of an encoding apparatus according to an embodiment of the present invention
  • FIG. 10 is a schematic structural diagram of a first embodiment of a decoding apparatus according to an embodiment of the present invention.
  • FIG. 1 is a flowchart of a first embodiment of a method for acquiring a reference motion vector according to the present invention. As shown in FIG. 1, the method includes:
  • the first candidate reference motion vector is determined in each candidate reference motion vector of the sub-image block according to the dividing manner, where the candidate reference motion vector is an image block or a sub-image block adjacent to the current image block.
  • Motion vector or a motion vector obtained by the motion vector of the adjacent image block or sub-image block after the operation;
  • each candidate reference motion vector is numbered according to the first candidate reference motion vector
  • An image usually contains texture information in various directions. These textures are often not a rectangular area.
  • An image usually contains multiple objects, and there is a clear boundary between the object and the image background.
  • it is usually necessary to divide an image into a plurality of image blocks, which are M*N rectangular blocks, where M and N are integers greater than 0, and there is a multiple between M and N. relationship. Since an image block is a basic unit for video encoding and decoding, its area is small.
  • an image block contains one or more objects, or includes an object and an image background, according to which the encoding end can be
  • the boundary between the object and the object, or the boundary between the object and the background of the image the current image block is divided into two sub-image blocks, which enables Dividing the boundary of the object between the image blocks, and the division is based on the actual boundary between the object and the object, or between the object and the background of the image. Therefore, the size of the two sub-image blocks obtained after the division It may or may not be the same shape.
  • the positions of the two sub-image blocks may be symmetrical or asymmetric.
  • these adjacent image blocks or sub-image blocks include: Image block or sub-image block AO to ⁇ -1 on the left side of the current module, image block or sub-picture block B0 to BnB-1 above the current image block, image block or sub-image block D on the upper left of the current image block, current image The image block or sub-image block C at the upper right of the block and the image block or sub-image block E at the lower left of the current image block.
  • the current image block is divided into sub-image blocks in different ways, and the correlation degree of each image block or sub-image block adjacent to the current image block is different, and the correlation indicates the sub-image block and phase in the current image block.
  • the current image block is divided into two sub-image blocks as shown in FIGS. 2a and 2b, it can be understood that, in this division mode, since the left sub-image block and the right sub-image block are divided. It is a different object, so the correlation between the left and right sub-image blocks is weak. Normally, the left sub-image block has a higher correlation with its left image block or sub-image block AO to AnA-1, and the right sub-image block is related to its upper right image block or sub-image block C. Higher degrees.
  • the current image block is divided into upper and lower sub-image blocks as shown in FIGS. 3a and 3b, it can be understood that, in this division mode, since the upper sub-image block and the lower sub-image block are different. Therefore, the correlation between the upper and lower sub-image blocks is weak. Normally, the upper sub-image block has a higher correlation with the image block or sub-image blocks B0 to BnB-1 above it, and the right sub-image block and its left image block or sub-image block AO to AnA- The correlation of 1 is higher.
  • each sub-image can be analyzed according to the division manner of the sub-image blocks in the current image block.
  • the encoding end and the decoding end need to follow the same set of candidate reference motion vectors when encoding and decoding, and the candidate reference motion vectors may be motion vectors of several image blocks or sub-image blocks adjacent to the current image block, and may also include The motion vector obtained by the motion vector of several adjacent image blocks or sub-image blocks is calculated, and each candidate motion vector has its corresponding number.
  • the encoding end performs encoding, one of the candidate reference motion vectors is selected as the final reference motion vector by a certain preset rule, and the difference between the motion vector and the reference motion vector is encoded by the variable length coding method, and the variation is adopted.
  • the long coding mode encodes the number corresponding to the reference motion vector, so that the decoding end knows which candidate reference motion vector is selected by the coding end.
  • the reference motion vector number is encoded by using a variable length coding method, and different coding numbers are used to encode different numbers.
  • the coding symbol "1" can be used for coding; for the number 1, the coding symbol "01” can be used for coding; for the number 2, the coding symbol "10” can be used for coding: ... and so on, it can be known that the larger the number, the more symbols are included in the encoded symbol string.
  • the set of candidate reference motion vectors may include:
  • the motion vector of the image block or sub-image block on the left side of the current image block/sub-image block that is, the first motion vector available from AO to AnA-1 shown in Fig. 4; wherein the available meaning is encoded.
  • the motion vector of the image block or sub-image block on the current image block/sub-image block that is, the first one of B0 to BnA-1 shown in Fig. 4 can obtain the motion vector;
  • the motion vector of the image block or sub-image block on the upper left side of the current image block/sub-image block that is, the motion vector of C shown in FIG. 4;
  • the motion vector of the image block or the sub-image block in the upper right side of the current image block/sub-image block that is, the motion vector of D shown in FIG. 4
  • the motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block that is, the motion vector of E shown in FIG. 4;
  • the image block or sub-image block corresponding to the candidate reference motion vector must be an already encoded image block or sub-image block, that is, the candidate reference motion vector must be available.
  • the motion vector obtained by the median prediction method specifically obtains: an image block or a sub-image block motion vector adjacent to the current sub-image block, and according to the motion vectors, a specific rule, such as obtaining the median value and the average value of the motion vectors. Or acquiring the nearest neighbor image block or sub-picture block motion vector according to the current image block division manner to obtain a reference motion vector. This method is often referred to as Median Prediction.
  • the motion vector of the sub-image block on the left side of the current image block/sub-image block needs to determine whether the AO to AnA-1 is encoded according to the number of the lower right corner of the AO to AnA-1, and the first encoded motion will be encoded.
  • the vector is used as the corresponding candidate motion vector; likewise, the motion vector of the sub-image block on the current image block/sub-image block needs to determine whether B0 to BnA-1 are encoded according to the number from the bottom right corner of B0 to BnA-1.
  • the first encoded motion vector is used as the corresponding candidate motion vector.
  • the coding end Since the encoding end encodes the difference between the motion vector and the reference motion vector by using variable length coding, in order to improve the coding efficiency, the coding end usually selects the reference motion vector closest to the motion vector value, that is, the reference motion vector and motion. The smaller the difference between the vectors, the shorter the code string used and the higher the coding efficiency. Therefore, the closer the adjacent image block or sub-image block corresponding to the reference motion vector is to the sub-image block in the current image block, the higher the coding efficiency.
  • the corresponding number of the selected reference motion vector is also encoded, so that the decoding end knows which candidate reference motion vector is selected by the encoding end. Since the encoding of the number is also a variable length encoding method, it is preferred to determine a first candidate reference motion vector from each candidate reference motion vector, and the adjacent image block or sub-image block corresponding to the first candidate reference motion vector Has a higher or highest correlation with the current image block. And then, according to the first candidate reference motion vector, each candidate reference motion vector is numbered, so that the first candidate parameter The number corresponding to the motion vector is as small as possible, for example: number 1, or the number corresponding to the smallest candidate reference motion vector, for example: number 0.
  • the probability that the adjacent image block or the sub-image block is finally selected as the reference motion vector is the largest, and the adjacent image block or sub-image block corresponding to the first candidate reference motion vector has the current image block and the current image block.
  • the number corresponding to the first candidate reference motion vector is as small as possible, for example: number 0 or number 1, so that encoding number 0 or number 1 only requires encoding symbol "1" or " 01 " , therefore, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
  • variable length coding method After numbering each candidate reference motion vector according to the first candidate reference motion vector, selecting one reference motion vector from each of the numbered candidate reference motion vectors as the final reference motion vector, using the variable length coding method for the motion vector and the reference The difference of the motion vector is encoded, and the number corresponding to the reference motion vector is encoded by variable length coding.
  • the reference motion vector acquiring method determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and performs each candidate reference motion vector according to the first reference motion vector.
  • the numbering is such that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding for the numbering, the coding efficiency of the number can be improved, thereby improving the video encoding and decoding efficiency.
  • the present invention provides several preferred embodiments for identifying a division manner of a sub-image block in a current image block, including:
  • the manner of dividing the sub-image blocks in the current image block may be identified according to the encoding mode identifier. For example, if the coding mode identifier is SIZE_2NxN or SIZE_Nx2N, it is usually indicated that the division mode is upper-left symmetric division or left-right symmetric division; if the coding mode identifier is SIZE_2NxnU or SIZE_2NxnD, etc., it usually indicates that the division mode is upper and lower asymmetric division; SIZE_nLx2N or SIZE_nRx2N, etc., usually means that the division mode is left and right asymmetric division.
  • the sub-image block in the current image block may be identified according to a ratio of the dividing line in the current image block to the distance between the two boundary lines of the current image block or the distance from the focus of the boundary line extension line to the end point of the image block.
  • the split mode for example: As shown in Figure 5, the division mode can be identified by the proportional relationship between BO and AO.
  • the division manner of the sub-image block in the current image block may be identified according to the angle and distance of the dividing line in the current image block. As shown in FIG. 6, the division method is identified by identifying the angle ⁇ of the dividing line by the geometric partitioning method (Geometric Partition).
  • the embodiment further provides a method for determining a first candidate reference motion vector of the sub-image block in each candidate reference motion vector according to the dividing manner, including:
  • the motion vector of the image block or the sub-image block adjacent to the left side of the current image block is the first candidate reference motion vector of the left sub-image block in the current image block.
  • the motion vector of the image block or the sub-image block adjacent to the upper right of the current image block is the first candidate reference motion vector of the right sub-image block in the current image block;
  • the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block.
  • the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
  • each candidate reference motion vector is numbered according to the first candidate reference motion vector, which may be :
  • each candidate reference motion vector is numbered according to a setting rule
  • the numbered candidate reference motion vectors are then reordered according to the first candidate reference motion vector.
  • the reordering of the numbered candidate reference motion vectors according to the first candidate reference motion vector may be:
  • the first candidate reference motion vector may be interchanged with the number of the candidate motion vector having the smallest number.
  • the group of candidate reference motion vectors is numbered according to an existing rule, and the following is obtained:
  • No. 0 The motion vector obtained by the median prediction method
  • No. 1 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first available motion vector in AO to AnA-1 shown in FIG. 4;
  • No. 2 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 3 Current image block / motion vector of the image block or sub-image block in the upper left of the sub-image block, that is, the motion vector of C shown in Fig. 4;
  • No. 4 The motion vector of the image block or sub-image block in the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 5 Current image block / The motion vector of the image block or sub-image block at the lower right of the sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the motion vector obtained by the first candidate reference motion vector and the median prediction method may be used. The number is reversed.
  • the motion vector corresponding to the image block or the sub-image block of the upper right side that is, the image block or the sub-image block of the upper right side is the highest.
  • the first candidate reference motion vector therefore, is reordered to get:
  • No. 0 The motion vector of the image block or sub-image block in the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 1 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
  • No. 2 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 3 the motion vector of the image block or sub-image block in the upper left side of the current image block/sub-image block, that is, the motion vector of C shown in FIG. 4;
  • No. 4 The motion vector obtained by the median prediction method;
  • No. 5 Current image block / The motion vector of the image block or sub-image block at the lower right of the sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the motion vector corresponding to the upper image block or the sub-image block is the first candidate because the upper image block or the sub-image block is the most relevant.
  • the reference motion vector therefore, the reordered candidate reference motion vector table can be:
  • No. 0 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 1 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
  • No. 2 The motion vector obtained by the median prediction method
  • No. 3 Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
  • No. 4 The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 5 The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the vector table can be:
  • No. 0 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, ie Figure 4 The first available motion vector from AO to AnA-1;
  • No. 1 The motion vector obtained by the median prediction method
  • No. 2 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 3 Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
  • No. 4 The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 5 The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • Another reordering mode is also provided in this embodiment: the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one.
  • the number of the first candidate reference motion vector that will need to be given a smaller numbered value is assigned a smaller value, such as 0, and the number after the value is shifted back.
  • the reordered candidate reference motion vector table For the partitioning method of the left and right partitions, for the right sub-image block obtained after the partitioning, since the highest correlation is the upper right image block or the sub-image block, the reordered candidate reference motion vector table may be:
  • No. 0 Current image block / The motion vector of the image block or sub-image block on the upper right side of the sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 1 The motion vector obtained by the median prediction method
  • No. 2 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
  • No. 3 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in FIG. 4;
  • No. 4 the motion vector of the image block or sub-image block on the upper left side of the current image block/sub-image block, that is, the motion vector of C shown in FIG. 4;
  • No. 5 The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the reordered candidate reference motion vector table may be:
  • No. 0 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 1 The motion vector obtained by the median prediction method
  • No. 2 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
  • No. 3 Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
  • No. 4 The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 5 The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the candidate reference motion vector table can be:
  • No. 0 The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, ie Figure 4 The first available motion vector from AO to AnA-1;
  • No. 1 The motion vector obtained by the median prediction method
  • No. 2 The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
  • No. 3 Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
  • No. 4 The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
  • No. 5 The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
  • No. 6 The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
  • FIG. 7 is a schematic structural diagram of a first embodiment of a reference motion vector obtaining module according to the present invention. As shown in FIG. 7, the module includes: an identifying unit 11, an analyzing unit 12, a numbering unit 13, and a selecting unit 14;
  • the identifying unit 11 is configured to obtain a dividing manner of the sub-image block in the current image block
  • the analyzing unit 12 is configured to determine, in the dividing manner, the first candidate reference motion in each candidate reference motion vector of the sub-image block.
  • the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained after the motion vector of the adjacent image block or sub-image block is operated.
  • a numbering unit 13 configured to select each candidate reference motion vector according to the first candidate reference motion vector Numbering
  • the selecting unit 14 is configured to select a reference motion vector from each of the candidate reference motion vectors after the numbering.
  • the reference motion vector acquisition module determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and performs, for each candidate reference motion vector, according to the first reference motion vector.
  • the numbering is such that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding for the numbering, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
  • the numbering unit 13 includes:
  • a number sub-unit 131 configured to number each candidate reference motion vector according to a setting rule
  • a reordering sub-unit 132 configured to perform weighting on each of the numbered candidate reference motion vectors according to the first candidate reference motion vector Sort.
  • the reordering subunit 132 may be specifically configured to:
  • the first candidate reference motion vector is interchanged with the number of the candidate motion vector with the smallest number; or, the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one.
  • identification unit 11 can be specifically configured to:
  • the manner of dividing the sub-image block in the current image block is identified according to the angle and distance of the dividing line in the current image block.
  • the analyzing unit 12 can be specifically used for:
  • the motion vector of the block or sub-image block is the first candidate reference motion vector of the left sub-image block in the current image block, and the motion vector of the adjacent upper right image block or sub-image block of the current image block is the current image.
  • the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block.
  • the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
  • the reference motion vector acquisition module provided by the embodiment of the present invention is a function device for performing the reference motion vector acquisition method provided by the embodiment of the present invention.
  • the specific implementation process refer to the embodiment of the reference motion vector acquisition method, and details are not described herein again.
  • FIG. 9 is a schematic structural diagram of a first embodiment of an encoding apparatus according to an embodiment of the present invention.
  • the apparatus includes: a prediction module 1, a transform module 2, a quantization module 3, an entropy encoding module 4, and a reference motion vector acquisition.
  • the reference motion vector acquisition block 5 is configured to obtain a division manner of the sub image block in the current image block, and determine a first candidate reference motion vector in each candidate reference motion vector of the sub image block according to the division manner.
  • the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained after the motion vector of the adjacent image block or sub-image block is operated;
  • Each candidate reference motion vector is numbered according to the first candidate reference motion vector; a reference motion vector is selected from each of the numbered candidate reference motion vectors;
  • a prediction module 1 configured to acquire a pixel residual between the sub image block and the predicted image block, and obtain a difference between the motion vector of the predicted image block and the reference motion vector;
  • a transform module 2 configured to separately transform the residual obtained by the prediction module 1;
  • a quantization module 3 configured to quantize the residuals obtained by the prediction module transformed by the transform module 2, respectively;
  • the entropy coding module 4 is configured to entropy encode the residual quantized by the quantization module 3, and entropy encode the difference between the motion vector of the predicted image block and the reference motion vector.
  • the encoding apparatus provided by the embodiment of the present invention firstly subtracts the pixel value corresponding to the current image block or the sub-image block and the matched sub-image block by the prediction module 1 to obtain a residual, and then sequentially passes the transformation module 2 and the quantization module 3 to the residual. The difference is transformed and quantized. Finally, the transformed and quantized residual is entropy encoded by the entropy encoding module 4, and the entropy encoded bit stream is written into the encoded code stream.
  • the encoding end of the prediction module 1 also obtains the difference between the motion vector of the predicted image block and the reference motion vector according to the reference motion vector acquired by the reference motion vector obtaining module 5, and then sends the difference between the motion vector and the reference motion vector, and then sends the entropy coding module 4, the entropy coding module. 4 encoding the difference between the motion vector and the reference motion vector, and performing variable length entropy encoding on the corresponding number of the reference motion vector in the candidate reference motion vector table, and then writing the entropy encoded bit stream into the encoded code stream.
  • the encoding apparatus determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and numbers each candidate reference motion vector according to the first reference motion vector, so that The first candidate reference motion vector corresponds to a smaller number as much as possible. Since the encoding end uses variable length coding for the number, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
  • FIG. 10 is a schematic structural diagram of a first embodiment of a decoding apparatus according to an embodiment of the present invention.
  • the apparatus includes: an entropy decoding module 1 ', an inverse quantization module 2, an inverse transform module 3', and a prediction compensation module. 4, and a reference motion vector acquisition module 5';
  • An entropy decoding module 1 ′ configured to perform entropy decoding on the received encoded code stream, obtain a pixel residual between each sub image block and the predicted image block in the current image block, and obtain a motion vector of the predicted image block and the reference The difference between the motion vectors and the number corresponding to the reference motion vector;
  • An inverse quantization module 2' configured to inverse quantize the residual
  • the inverse transform module 3' is configured to perform inverse transform on the residual inversely quantized by the inverse quantization module;
  • the reference motion vector obtaining module 5' is configured to obtain a partition mode of the sub image block in the current image block; Means determining a first candidate reference among each candidate reference motion vector of the sub-image block a motion vector, where the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion obtained by the motion vector of the adjacent image block or sub-image block Vector; numbering each candidate reference motion vector according to the first candidate reference motion vector; selecting a reference motion vector from each of the numbered candidate reference motion vectors.
  • a prediction compensation module 4' configured to acquire a corresponding reference motion vector according to the number, obtain the motion vector according to a difference between the motion vector and the reference motion vector; and determine the predicted image block according to the motion vector, And acquiring the current image block according to the predicted image block and the residual.
  • the decoding apparatus determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and numbers each candidate reference motion vector according to the first reference motion vector, The smaller number of the first candidate reference motion vector is matched as much as possible. Since the encoding end uses variable length coding for the number, the decoding efficiency of the number can be improved, and the video decoding efficiency is improved.
  • DSP Digital Signal Processing
  • FPGA Field-Programmable Gate Array

Abstract

Provided are a method, a module and an encoding/decoding device for obtaining a reference motion vector. The method includes: obtaining a division mode of a sub-image block in a current image block; determining a first candidate reference motion vector from candidate reference motion vectors of the sub-image block according to the division mode, wherein the candidate reference motion vector is a motion vector of an image block or sub-image block adjacent to the current image block or a motion vector obtained after performing an operation on the motion vector of the image block or the sub-image block adjacent to the current image block; numbering each candidate reference motion vector according to the first candidate reference motion vector; and selecting the reference motion vector from the numbered candidate reference motion vectors. The method, module and encoding/decoding device for obtaining a reference motion vector provided by the embodiments of the present invention can improve the number encoding efficiency and can further improve the video encoding/decoding efficiency since the encoding end carries out variable length encoding on the number.

Description

参考运动矢量获取方法、 模块及编、 解码装置 技术领域  Reference motion vector acquisition method, module, and coding and decoding device
本发明涉及信息技术领域, 特别涉及一种参考运动矢量获取方法、 模块及 编、 解码装置。 背景技术  The present invention relates to the field of information technology, and in particular, to a reference motion vector acquisition method, a module, and a coding and decoding apparatus. Background technique
在现有的视频编解码标准中, 一幅图像通常被划分为若干个图像块进行编 码和解码, 一个图像块又可以进一步划分为多个子图像块。 编码端通常搜索与 当前图像块或子图像块最相似(即匹配) 的邻近的已编码子图像块, 将当前图 像块或子图像块与匹配的子图像块对应的像素值相减得残差, 然后将残差经过 变换与量化后进行熵编码, 最后将熵编码得到的比特流写入编码码流中。 其中, 邻近的已编码子图像块被称为子参考图像块。 当前图像块或子图像块与匹配的 子图像块之间的偏移量称为运动矢量, 编码端在进行编码时还要对运动矢量编 码并写入编码码流中, 以使解码端能够根据该运动矢量获知匹配的子图像块的 位置。 为了减少运动矢量信息在码流中占用的字节长度, 通常采用一个参考运 动矢量( Motion Vector Candidate ), 将运动矢量与参考运动矢量的差值进行编 码并写入编码码流中。 现有技术中获取参考运动矢量的方法, 编码端和解码端遵循同一候选参考 运动矢量表, 该候选参考运动矢量表中包括与当前图像块或子图像块相邻的若 干个子图像块的运动矢量 (作为候选参考运动矢量)及其对应的编号。 编码端 从该候选参考运动矢量表中选择一个作为候选参考运动矢量, 采用变长编码方 式对偏移量与参考运动矢量的差值进行编码, 并采用变长编码方式对该参考运 动矢量的编号进行编码, 以使解码端获知编码端所选择的是哪一候选参考运动 矢量。 然而, 现有的获取参考运动矢量的方法, 没有考虑当前图像块或子图像块 与相邻子图像块的相关度, 因此, 会影响运动矢量的编码效率。 发明内容 In the existing video codec standard, an image is usually divided into several image blocks for encoding and decoding, and one image block can be further divided into a plurality of sub-image blocks. The encoding end usually searches for a neighboring encoded sub-image block that is most similar (ie, matched) to the current image block or sub-image block, and subtracts the pixel value corresponding to the current image block or sub-image block from the matched sub-image block by the residual. Then, the residual is subjected to transform and quantization, entropy coding, and finally the bit stream obtained by entropy coding is written into the coded stream. Among them, adjacent coded sub-image blocks are referred to as sub-reference image blocks. The offset between the current image block or sub-image block and the matched sub-image block is called a motion vector, and the encoding end encodes the motion vector and writes it into the encoded code stream to enable the decoding end to The motion vector knows the location of the matched sub-image block. In order to reduce the length of the byte occupied by the motion vector information in the code stream, a reference motion vector (Motion Vector Candidate) is usually used, and the difference between the motion vector and the reference motion vector is encoded and written into the coded stream. In the prior art, a method for obtaining a reference motion vector, the encoding end and the decoding end follow the same candidate reference motion vector table, where the candidate reference motion vector table includes motion vectors of several sub-image blocks adjacent to the current image block or the sub-image block. (as a candidate reference motion vector) and its corresponding number. The encoding end selects one of the candidate reference motion vector tables as the candidate reference motion vector, encodes the difference between the offset and the reference motion vector by using variable length coding, and numbers the reference motion vector by using variable length coding. Encoding is performed so that the decoding end knows which candidate reference motion vector is selected by the encoding end. However, the existing method of obtaining a reference motion vector does not consider the current image block or sub-image block. The degree of correlation with adjacent sub-image blocks, therefore, affects the coding efficiency of the motion vectors. Summary of the invention
本发明实施例提供了一种参考运动矢量获取方法、 模块及编、 解码装置, 以解决现有技术没有考虑当前图像块或子图像块与相邻子图像块的相关度, 会 影响运动矢量的编码效率的问题。  The embodiment of the invention provides a reference motion vector acquisition method, a module, and a coding and decoding device, so as to solve the problem that the correlation between the current image block or the sub-image block and the adjacent sub-image block is not considered in the prior art, and the motion vector is affected. The problem of coding efficiency.
本发明实施例提供一种参考运动矢量获取方法, 包括:  An embodiment of the present invention provides a reference motion vector acquisition method, including:
获得当前图像块中子图像块的划分方式;  Obtaining a division manner of the sub image block in the current image block;
根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选 参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子 图像块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获 得的运动矢量;  Determining, in the dividing manner, a first candidate reference motion vector in each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an motion of an image block or a sub-image block adjacent to the current image block. a vector, or a motion vector obtained by the motion vector of the adjacent image block or sub-image block;
根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量。  Each candidate reference motion vector is numbered according to the first candidate reference motion vector; a reference motion vector is selected from each of the numbered candidate reference motion vectors.
本发明实施例还提供一种参考运动矢量获取模块, 包括:  An embodiment of the present invention further provides a reference motion vector acquisition module, including:
识别单元, 用于获得当前图像块中子图像块的划分方式;  a identifying unit, configured to obtain a dividing manner of the sub image block in the current image block;
分析单元, 用于根据所述划分方式在所述子图像块的各候选参考运动矢量 中确定第一候选参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相 邻的图像块或子图像块的运动矢量, 或所述相邻的图像块或子图像块的运动矢 量经过运算后获得的运动矢量;  An analyzing unit, configured to determine, in the partitioning manner, a first candidate reference motion vector among each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an image block adjacent to the current image block or a motion vector of the sub-image block, or a motion vector obtained by the motion vector of the adjacent image block or the sub-image block;
编号单元, 用于根据所述第一候选参考运动矢量对各候选参考运动矢量进 行编号;  a numbering unit, configured to number each candidate reference motion vector according to the first candidate reference motion vector;
选择单元, 用于根据从编号后的各候选参考运动矢量中选择参考运动矢量。 本发明实施例还提供一种编码装置, 包括: 预测模块、 变换模块、 量化模 块、 熵编码模块和参考运动矢量获取模块;  And a selecting unit, configured to select a reference motion vector according to each of the candidate reference motion vectors after the numbering. An embodiment of the present invention further provides an encoding apparatus, including: a prediction module, a transform module, a quantization module, an entropy encoding module, and a reference motion vector acquiring module;
所述参考运动矢量获取模块, 用于获得当前图像块中子图像块的划分方式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选参考 运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子图像 块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获得的 运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量; The reference motion vector acquisition module is configured to obtain a division manner of the sub image block in the current image block; Determining, in the dividing manner, a first candidate reference motion vector in each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an motion of an image block or a sub-image block adjacent to the current image block. a vector, or a motion vector obtained by the motion vector of the adjacent image block or sub-image block; and each candidate reference motion vector is numbered according to the first candidate reference motion vector; Selecting a reference motion vector in the motion vector;
所述预测模块, 用于获取所述子图像块与预测图像块之间的像素残差, 以 及获取预测图像块的运动矢量与所述参考运动矢量之差;  The prediction module is configured to acquire a pixel residual between the sub-image block and the predicted image block, and obtain a difference between a motion vector of the predicted image block and the reference motion vector;
所述变换模块, 用于对所述预测模块获取的所述残差进行变换;  The transform module is configured to transform the residual obtained by the prediction module;
所述量化模块, 用于将经过所述变换模块变换的所述预测模块获取的所述 残差进行量化;  The quantization module is configured to quantize the residual obtained by the prediction module transformed by the transform module;
所述熵编码模块, 用于对经过所述量化模块量化的所述残差进行熵编码, 并用于对所述预测图像块的运动矢量与所述参考运动矢量之差进行变长熵编 码, 对所述参考运动矢量对应的编号进行变长熵编码。  The entropy encoding module is configured to entropy encode the residual quantized by the quantization module, and perform variable length entropy coding on a difference between a motion vector of the predicted image block and the reference motion vector, where The number corresponding to the reference motion vector is variable length entropy encoded.
本发明实施例还提供一种解码装置, 包括: 熵解码模块、 反量化模块、 反 变换模块、 预测补偿模块和参考运动矢量获取模块;  An embodiment of the present invention further provides a decoding apparatus, including: an entropy decoding module, an inverse quantization module, an inverse transform module, a prediction compensation module, and a reference motion vector acquisition module;
所述熵解码模块, 用于对接收到的编码码流进行熵解码, 获得当前图像块 中各子图像块与预测图像块之间的像素残差, 获取预测图像块的运动矢量与所 述参考运动矢量之差以及参考运动矢量对应的编号;  The entropy decoding module is configured to perform entropy decoding on the received encoded code stream, obtain a pixel residual between each sub-image block and the predicted image block in the current image block, and obtain a motion vector of the predicted image block and the reference The difference between the motion vectors and the number corresponding to the reference motion vector;
所述反量化模块, 用于对所述残差进行反量化;  The inverse quantization module is configured to perform inverse quantization on the residual;
所述反变换模块, 用于对经过所述反量化模块反量化的残差进行反变换; 所述参考运动矢量获取模块, 用于获得当前图像块中子图像块的划分方式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选参考 运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子图像 块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获得的 运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量。 所述预测补偿模块, 用于根据所述编号获取对应的参考运动矢量, 根据所 述运动矢量与所述参考运动矢量之差获取所述运动矢量; 根据所述运动矢量确 定所述预测图像块, 再根据所述预测图像块和所述残差获取所述当前图像块。 The inverse transform module is configured to perform inverse transform on a residual that is inversely quantized by the inverse quantization module, where the reference motion vector acquisition module is configured to obtain a partition mode of the sub image block in the current image block; And determining, in each candidate reference motion vector of the sub-image block, a first candidate reference motion vector, where the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained by calculating a motion vector of an adjacent image block or a sub-image block; calculating each candidate reference motion vector according to the first candidate reference motion vector; selecting from each of the numbered candidate reference motion vectors Reference motion vector. The prediction compensation module is configured to acquire a corresponding reference motion vector according to the number, obtain the motion vector according to a difference between the motion vector and the reference motion vector, and determine the predicted image block according to the motion vector, And acquiring the current image block according to the predicted image block and the residual.
本发明实施例提供的参考运动矢量获取方法、 模块及编、 解码装置, 根据 当前图像块中子图像块的划分方式, 确定子图像块的第一候选参考运动矢量, 并根据第一参考运动矢量对各候选参考运动矢量进行编号, 以使第一候选参考 运动矢量尽量对应的较小的编号, 由于编码端对编号采用变长编码, 因此, 能 够提高编号的编码效率, 进而提高视频编解码效率。  The reference motion vector obtaining method, the module, and the encoding and decoding apparatus provided by the embodiment of the present invention determine the first candidate reference motion vector of the sub-image block according to the division manner of the sub-image block in the current image block, and according to the first reference motion vector Each candidate reference motion vector is numbered so that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding, the coding efficiency of the number can be improved, thereby improving the video coding and decoding efficiency. .
附图说明 DRAWINGS
为了更清楚地说明本发明实施例的技术方案, 下面将对实施例中所需要使 用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明的一些 实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可 以根据这些附图获得其他的附图。  In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the embodiments will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the present invention. One of ordinary skill in the art can also obtain other drawings based on these drawings without undue creative effort.
图 1为本发明提供的参考运动矢量获取方法第一实施例的流程图; 图 2a为将当前图像块非对称划分成左右两个子图像块的示意图; 图 2b为将当前图像块对称划分成左右两个子图像块的示意图;  1 is a flowchart of a first embodiment of a reference motion vector acquisition method provided by the present invention; FIG. 2a is a schematic diagram of asymmetrically dividing a current image block into two left and right sub-image blocks; FIG. 2b is a schematic diagram of dividing a current image block into left and right. a schematic diagram of two sub-image blocks;
图 3a为将当前图像块非对称划分成上下两个子图像块的示意图; 图 3b为将当前图像块对称划分成上下两个子图像块的示意图;  3a is a schematic diagram of asymmetrically dividing a current image block into upper and lower sub-image blocks; FIG. 3b is a schematic diagram of symmetrically dividing a current image block into upper and lower sub-image blocks;
图 4为与当前图像块相邻的子图像块的示意图;  4 is a schematic diagram of a sub-image block adjacent to a current image block;
图 5为通过当前图像块中的划分线与当前图像块的两条边界线或边界线延 长线的焦点到图像块端点的距离的比值识别当前图像块中子图像块的示意图; 图 6为通过当前图像块中划分线的角度和距离识别当前图像块中子图像块 的划分方式的示意图;  5 is a schematic diagram of identifying a sub-image block in a current image block by a ratio of a dividing line in a current image block to a distance of a boundary line of a current image block or a boundary line extension line to an end point of the image block; FIG. A schematic diagram of the division of the sub-image block in the current image block by the angle and distance of the dividing line in the current image block;
图 7为本发明提供的参考运动矢量获取模块第一实施例的结构示意图; 图 8为本发明提供的参考运动矢量获取模块第二实施例的结构示意图; 图 9为本发明实施例提供的编码装置第一实施例的结构示意图; 图 10为本发明实施例提供的解码装置第一实施例的结构示意图。 FIG. 7 is a schematic structural diagram of a reference motion vector acquisition module according to a first embodiment of the present invention; FIG. 8 is a schematic structural diagram of a reference motion vector acquisition module according to a second embodiment of the present invention; FIG. 9 is a schematic structural diagram of a first embodiment of an encoding apparatus according to an embodiment of the present invention; FIG. 10 is a schematic structural diagram of a first embodiment of a decoding apparatus according to an embodiment of the present invention.
具体实施方式 detailed description
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发明 实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明中 的实施例, 本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其 他实施例, 都属于本发明保护的范围。  The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is a partial embodiment of the invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
图 1 为本发明提供的参考运动矢量获取方法第一实施例的流程图, 如图 1 所示, 该方法包括:  FIG. 1 is a flowchart of a first embodiment of a method for acquiring a reference motion vector according to the present invention. As shown in FIG. 1, the method includes:
5101、 获得当前图像块中子图像块的划分方式;  5101. Obtain a division manner of the sub image block in the current image block.
5102、 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第 一候选参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像 块或子图像块的运动矢量, 或者所述相邻的图像块或子图像块的运动矢量经过 运算后获得的运动矢量;  The first candidate reference motion vector is determined in each candidate reference motion vector of the sub-image block according to the dividing manner, where the candidate reference motion vector is an image block or a sub-image block adjacent to the current image block. Motion vector, or a motion vector obtained by the motion vector of the adjacent image block or sub-image block after the operation;
5103、 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 5103. No., each candidate reference motion vector is numbered according to the first candidate reference motion vector;
5104、 从编号后的各候选参考运动矢量中选择参考运动矢量。 5104. Select a reference motion vector from each of the candidate reference motion vectors after the numbering.
一幅图像通常包含了各种方向的纹理信息, 这些纹理对应的往往不是一个 矩形区域, 一幅图像中一般包含多个物体, 物体与物体间, 或者物体与图像背 景间会出现明显的边界。 在进行视频编码时, 通常需要将一幅图像划分成若干 个图像块, 这些图像块为 M*N的矩形块, 其中, M和 N均为大于 0的整数, 并 且 M和 N之间具有倍数关系。 由于图像块为进行视频编解码的基本单位, 其面 积很小, 因此, 通常情况下, 一个图像块包含一至两个以上物体, 或者包括一 个物体与图像背景的信息, 据此, 编码端可以根据物体和物体之间的边界, 或 者是物体与图像背景的边界, 将当前图像块划分为两个子图像块, 便能够实现 对该图像块之间的物体边界进行划分, 而这种划分是基于物体与物体之间, 或 者物体与图像背景之间的实际边界进行划分的, 因此, 划分之后得到的两个子 图像块的大小和形状可能相同, 也可能不同。 两个子图像块在的位置可能对称 的, 也可能不对称的。 An image usually contains texture information in various directions. These textures are often not a rectangular area. An image usually contains multiple objects, and there is a clear boundary between the object and the image background. When performing video encoding, it is usually necessary to divide an image into a plurality of image blocks, which are M*N rectangular blocks, where M and N are integers greater than 0, and there is a multiple between M and N. relationship. Since an image block is a basic unit for video encoding and decoding, its area is small. Therefore, usually, an image block contains one or more objects, or includes an object and an image background, according to which the encoding end can be The boundary between the object and the object, or the boundary between the object and the background of the image, the current image block is divided into two sub-image blocks, which enables Dividing the boundary of the object between the image blocks, and the division is based on the actual boundary between the object and the object, or between the object and the background of the image. Therefore, the size of the two sub-image blocks obtained after the division It may or may not be the same shape. The positions of the two sub-image blocks may be symmetrical or asymmetric.
由于一个图像块的面积很小, 因此, 一个图像块划分为两个子图像块的划 分方式通常有左右划分, 如图 2a和图 2b所示, 或者上下划分, 如图 3a和图 3b所示。  Since the area of an image block is small, the division of an image block into two sub-image blocks is usually divided into left and right, as shown in Fig. 2a and Fig. 2b, or divided up and down, as shown in Fig. 3a and Fig. 3b.
基于视频图像的连续性, 可以获知, 与当前图像块相关联的图像块或子图 像块与当前图像块是相邻的, 这些相邻的图像块或子图像块如图 4所示, 包括: 当前模块左侧的图像块或子图像块 AO至 ΑηΑ-1 ,当前图像块上方的图像块或子 图像块 B0至 BnB-1 , 当前图像块左上方的图像块或子图像块 D, 当前图像块右 上方的图像块或子图像块 C和当前图像块左下方的图像块或子图像块 E。  Based on the continuity of the video image, it can be known that the image block or sub-image block associated with the current image block is adjacent to the current image block. As shown in FIG. 4, these adjacent image blocks or sub-image blocks include: Image block or sub-image block AO to ΑηΑ-1 on the left side of the current module, image block or sub-picture block B0 to BnB-1 above the current image block, image block or sub-image block D on the upper left of the current image block, current image The image block or sub-image block C at the upper right of the block and the image block or sub-image block E at the lower left of the current image block.
当前图像块采用不同的方式划分出的子图像块, 其与当前图像块相邻的各 图像块或子图像块的相关度是不同的, 相关度表明了当前图像块中的子图像块 与相邻的图像块或子图像块中包含的图像信息的相关程度。  The current image block is divided into sub-image blocks in different ways, and the correlation degree of each image block or sub-image block adjacent to the current image block is different, and the correlation indicates the sub-image block and phase in the current image block. The degree of correlation of image information contained in adjacent image blocks or sub-image blocks.
例如:如果当前图像块被划分成如图 2a和图 2b所示的左右两个子图像块, 则可以理解的是, 在这种划分方式下, 由于左边的子图像块与右边的子图像块 分属不同的物体, 因此, 左右两个子图像块的相关度较弱。 而通常情况下, 左 边的子图像块与其左侧的图像块或子图像块 AO至 AnA-1 的相关度较高, 而右 边的子图像块与其右上方的图像块或子图像块 C的相关度较高。  For example, if the current image block is divided into two sub-image blocks as shown in FIGS. 2a and 2b, it can be understood that, in this division mode, since the left sub-image block and the right sub-image block are divided. It is a different object, so the correlation between the left and right sub-image blocks is weak. Normally, the left sub-image block has a higher correlation with its left image block or sub-image block AO to AnA-1, and the right sub-image block is related to its upper right image block or sub-image block C. Higher degrees.
如果当前图像块被划分成如图 3a和图 3b所示的上下两个子图像块, 则可 以理解的是, 在这种划分方式下, 由于上边的子图像块与下边的子图像块分属 不同的物体, 因此, 上下两个子图像块的相关度较弱。 而通常情况下, 上边的 子图像块与其上方的图像块或子图像块 B0至 BnB-1 的相关度较高, 而右边的 子图像块与其左侧的图像块或子图像块 AO至 AnA-1的相关度较高。  If the current image block is divided into upper and lower sub-image blocks as shown in FIGS. 3a and 3b, it can be understood that, in this division mode, since the upper sub-image block and the lower sub-image block are different. Therefore, the correlation between the upper and lower sub-image blocks is weak. Normally, the upper sub-image block has a higher correlation with the image block or sub-image blocks B0 to BnB-1 above it, and the right sub-image block and its left image block or sub-image block AO to AnA- The correlation of 1 is higher.
由此可见, 根据当前图像块中子图像块的划分方式, 可以分析出各子图像 块与当前图像块相邻的图像块或子图像块的相关度。 It can be seen that each sub-image can be analyzed according to the division manner of the sub-image blocks in the current image block. The degree to which a block is adjacent to an image block or sub-image block adjacent to the current image block.
编码端和解码端在进行编码和解码时, 需要遵循同一组候选参考运动矢量, 这些候选参考运动矢量可以为与当前图像块相邻的若干个图像块或子图像块的 运动矢量, 还可以包括相邻的若干个图像块或子图像块的运动矢量经过运算后 获得的运算矢量, 每个候选运动矢量都有其对应的编号。 编码端在进行编码时, 通过一定的预设规则从这些候选参考运动矢量中选择一个作为最终的参考运动 矢量, 采用变长编码方式对运动矢量与参考运动矢量的差值进行编码, 并采用 变长编码方式对该参考运动矢量对应的编号进行编码, 以使解码端获知编码端 所选择的是哪一个候选参考运动矢量。  The encoding end and the decoding end need to follow the same set of candidate reference motion vectors when encoding and decoding, and the candidate reference motion vectors may be motion vectors of several image blocks or sub-image blocks adjacent to the current image block, and may also include The motion vector obtained by the motion vector of several adjacent image blocks or sub-image blocks is calculated, and each candidate motion vector has its corresponding number. When the encoding end performs encoding, one of the candidate reference motion vectors is selected as the final reference motion vector by a certain preset rule, and the difference between the motion vector and the reference motion vector is encoded by the variable length coding method, and the variation is adopted. The long coding mode encodes the number corresponding to the reference motion vector, so that the decoding end knows which candidate reference motion vector is selected by the coding end.
其中, 采用变长编码方式对该参考运动矢量的编号进行编码, 是对不同的 编号采用不同的编码符号串进行编码。 通常可以为: 对于编号 0, 则可采用编码 符号 "1 " 进行编码; 对于编号 1 , 则可采用编码符号 "01 " 进行编码; 对于编 号 2, 则可采用编码符号 "10" 进行编码 ... ...依次类推, 可以获知, 编号越大, 采用的编码符号串中包含的符号个数越多。  Wherein, the reference motion vector number is encoded by using a variable length coding method, and different coding numbers are used to encode different numbers. Generally it can be: For the number 0, the coding symbol "1" can be used for coding; for the number 1, the coding symbol "01" can be used for coding; for the number 2, the coding symbol "10" can be used for coding: ... and so on, it can be known that the larger the number, the more symbols are included in the encoded symbol string.
本实施例以以下一组候选参考运动矢量为例进行说明, 但实际上还可以有 其他各种类型的运动矢量作为参考运动矢量, 并不以此作为对本发明实施例的 限制。 该组候选参考运动矢量可以包括:  This embodiment is described by taking the following set of candidate reference motion vectors as an example, but in fact, other types of motion vectors may be used as reference motion vectors, and this is not a limitation on the embodiments of the present invention. The set of candidate reference motion vectors may include:
中值预测法得到的运动矢量;  The motion vector obtained by the median prediction method;
当前图像块 /子图像块左侧图像块或子图像块的运动矢量, 即图 4所示 AO 至 AnA-1中第一个可获得的运动矢量; 其中, 可获得的含义为已编码。  The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available from AO to AnA-1 shown in Fig. 4; wherein the available meaning is encoded.
当前图像块 /子图像块上边图像块或子图像块的运动矢量, 即图 4所示 B0 至 BnA-1中第一个可获得运动矢量;  The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first one of B0 to BnA-1 shown in Fig. 4 can obtain the motion vector;
当前图像块 /子图像块左上边图像块或子图像块的运动矢量, 即图 4所示 C 的运动矢量;  The motion vector of the image block or sub-image block on the upper left side of the current image block/sub-image block, that is, the motion vector of C shown in FIG. 4;
当前图像块 /子图像块右上边图像块或子图像块的运动矢量, 即图 4所示 D 的运动矢量; 当前图像块 /子图像块右下边图像块或子图像块的运动矢量, 即图 4所示 E 的运动矢量; The motion vector of the image block or the sub-image block in the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in FIG. 4; The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in FIG. 4;
当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的运动矢 量。  The motion vector of the previous coded image or the next coded image whose current image block/sub-image block position is the same.
需要说明的是, 候选参考运动矢量对应的图像块或子图像块, 必须是已经 编码的图像块或子图像块, 即候选参考运动矢量必须是可获得的。 其中, 中值 预测法得到的运动矢量具体通过: 获取与当前子图像块相邻的图像块或子图像 块运动矢量, 根据这些运动矢量通过特定规则, 如求取这些运动矢量中值、 平 均值, 或根据当前图像块划分方式获取最邻近的图像块或子图像块运动矢量, 获得参考运动矢量。 这种方法通常称之为中值预测法( Median Prediction )。  It should be noted that the image block or sub-image block corresponding to the candidate reference motion vector must be an already encoded image block or sub-image block, that is, the candidate reference motion vector must be available. The motion vector obtained by the median prediction method specifically obtains: an image block or a sub-image block motion vector adjacent to the current sub-image block, and according to the motion vectors, a specific rule, such as obtaining the median value and the average value of the motion vectors. Or acquiring the nearest neighbor image block or sub-picture block motion vector according to the current image block division manner to obtain a reference motion vector. This method is often referred to as Median Prediction.
其中,当前图像块 /子图像块左侧子图像块的运动矢量需要根据 AO至 AnA-1 右下角编号数值从小至大依次判断 AO至 AnA-1是否已编码, 将第一个已编码 的运动矢量作为对应的候选运动矢量; 同样, 当前图像块 /子图像块上边子图像 块的运动矢量需要根据 B0至 BnA-1右下角编号数值从小至大依次判断 B0至 BnA-1是否已编码, 将第一个已编码的运动矢量作为对应的候选运动矢量。  The motion vector of the sub-image block on the left side of the current image block/sub-image block needs to determine whether the AO to AnA-1 is encoded according to the number of the lower right corner of the AO to AnA-1, and the first encoded motion will be encoded. The vector is used as the corresponding candidate motion vector; likewise, the motion vector of the sub-image block on the current image block/sub-image block needs to determine whether B0 to BnA-1 are encoded according to the number from the bottom right corner of B0 to BnA-1. The first encoded motion vector is used as the corresponding candidate motion vector.
由于编码端采用变长编码的方式对运动矢量和参考运动矢量的差值进行编 码, 因此, 为了提高编码效率, 编码端通常选择与运动矢量值最接近的参考运 动矢量, 即参考运动矢量与运动矢量之间的差值越小, 所采用的编码串越短, 相应的编码效率越高。 因此, 参考运动矢量对应的相邻图像块或子图像块与当 前图像块中的子图像块越接近, 编码效率越高。  Since the encoding end encodes the difference between the motion vector and the reference motion vector by using variable length coding, in order to improve the coding efficiency, the coding end usually selects the reference motion vector closest to the motion vector value, that is, the reference motion vector and motion. The smaller the difference between the vectors, the shorter the code string used and the higher the coding efficiency. Therefore, the closer the adjacent image block or sub-image block corresponding to the reference motion vector is to the sub-image block in the current image block, the higher the coding efficiency.
而在对运动矢量与参考运动矢量差值进行编码的同时, 还要对选定的参考 运动矢量的对应编号进行编码, 以使解码端获知编码端所选择的是哪一候选参 考运动矢量。 由于对编号进行编码采用的也是变长编码方法, 因此, 首选需要 从各候选参考运动矢量中确定第一候选参考运动矢量, 该第一候选参考运动矢 量对应的相邻的图像块或子图像块与当前图像块具有较高或最高的相关度。 再 根据第一候选参考运动矢量, 对各候选参考运动矢量进行编号, 使第一候选参 考运动矢量对应的编号尽量小, 例如: 编号 1 , 或者是使第一候选参考运动矢量 对应最小的编号, 例如: 编号 0。 While encoding the motion vector and the reference motion vector difference, the corresponding number of the selected reference motion vector is also encoded, so that the decoding end knows which candidate reference motion vector is selected by the encoding end. Since the encoding of the number is also a variable length encoding method, it is preferred to determine a first candidate reference motion vector from each candidate reference motion vector, and the adjacent image block or sub-image block corresponding to the first candidate reference motion vector Has a higher or highest correlation with the current image block. And then, according to the first candidate reference motion vector, each candidate reference motion vector is numbered, so that the first candidate parameter The number corresponding to the motion vector is as small as possible, for example: number 1, or the number corresponding to the smallest candidate reference motion vector, for example: number 0.
由于相关度越高的相邻图像块或子图像块最终被选为参考运动矢量的概率 最大, 因此, 而第一候选参考运动矢量对应的相邻的图像块或子图像块与当前 图像块具有较高或最高的相关度, 因此使第一候选参考运动矢量对应的编号尽 量小, 例如: 为编号 0或编号 1 , 这样, 对编号 0或编号 1进行编码仅需要编 码符号 "1 " 或 "01 " , 因此, 能够提高编号的编码效率, 从而提高视频编码效 率。  Since the higher the degree of correlation, the probability that the adjacent image block or the sub-image block is finally selected as the reference motion vector is the largest, and the adjacent image block or sub-image block corresponding to the first candidate reference motion vector has the current image block and the current image block. Higher or highest correlation, so the number corresponding to the first candidate reference motion vector is as small as possible, for example: number 0 or number 1, so that encoding number 0 or number 1 only requires encoding symbol "1" or " 01 " , therefore, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
在根据第一候选参考运动矢量对各候选参考运动矢量进行编号后, 从编号 后的各候选参考运动矢量中选择一个参考运动矢量作为最终的参考运动矢量, 采用变长编码方式对运动矢量与参考运动矢量的差值进行编码, 并采用变长编 码方式对该参考运动矢量对应的编号进行编码  After numbering each candidate reference motion vector according to the first candidate reference motion vector, selecting one reference motion vector from each of the numbered candidate reference motion vectors as the final reference motion vector, using the variable length coding method for the motion vector and the reference The difference of the motion vector is encoded, and the number corresponding to the reference motion vector is encoded by variable length coding.
本发明实施例提供的参考运动矢量获取方法, 根据当前图像块中子图像块 的划分方式, 确定子图像块的第一候选参考运动矢量, 并根据第一参考运动矢 量对各候选参考运动矢量进行编号, 以使第一候选参考运动矢量尽量对应的较 小的编号, 由于编码端对编号采用变长编码, 因此, 能够提高编号的编码效率, 进而提高视频编解码效率。  The reference motion vector acquiring method provided by the embodiment of the present invention determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and performs each candidate reference motion vector according to the first reference motion vector. The numbering is such that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding for the numbering, the coding efficiency of the number can be improved, thereby improving the video encoding and decoding efficiency.
在参考运动矢量获取方法第一实施例的基础上, 本发明提供几种识别当前 图像块中子图像块的划分方式的较佳实施方式, 包括:  On the basis of the first embodiment of the reference motion vector acquisition method, the present invention provides several preferred embodiments for identifying a division manner of a sub-image block in a current image block, including:
可以根据编码模式标识识别当前图像块中子图像块的划分方式。 例如: 如 果编码模式标识为 SIZE_2NxN或 SIZE_Nx2N等, 通常表示划分方式为上下对 称划分或左右对称划分;如果编码模式标识为 SIZE_2NxnU或 SIZE_2NxnD等, 通常表示划分方式为上下非对称划分; 如果编码模式标识为 SIZE_nLx2N 或 SIZE_nRx2N等, 通常表示划分方式为左右非对称划分。  The manner of dividing the sub-image blocks in the current image block may be identified according to the encoding mode identifier. For example, if the coding mode identifier is SIZE_2NxN or SIZE_Nx2N, it is usually indicated that the division mode is upper-left symmetric division or left-right symmetric division; if the coding mode identifier is SIZE_2NxnU or SIZE_2NxnD, etc., it usually indicates that the division mode is upper and lower asymmetric division; SIZE_nLx2N or SIZE_nRx2N, etc., usually means that the division mode is left and right asymmetric division.
或者, 还可以根据当前图像块中的划分线与当前图像块的两条边界线或边 界线延长线的焦点到图像块端点的距离的比值识别当前图像块中子图像块的划 分方式, 例如: 如图 5所示, 可以通过 BO与 AO的比例关系来标识划分方式。 或者, 还可以根据当前图像块中划分线的角度和距离识别当前图像块中子 图像块的划分方式。如图 6所示,通过几何划分标识方法( Geometric Partition ), 通过识别划分线的角度 Θ来标识划分方式。 Alternatively, the sub-image block in the current image block may be identified according to a ratio of the dividing line in the current image block to the distance between the two boundary lines of the current image block or the distance from the focus of the boundary line extension line to the end point of the image block. The split mode, for example: As shown in Figure 5, the division mode can be identified by the proportional relationship between BO and AO. Alternatively, the division manner of the sub-image block in the current image block may be identified according to the angle and distance of the dividing line in the current image block. As shown in FIG. 6, the division method is identified by identifying the angle Θ of the dividing line by the geometric partitioning method (Geometric Partition).
进一步的, 本实施例还提供了根据所述划分方式在各候选参考运动矢量中 确定所述子图像块的第一候选参考运动矢量的方法, 包括:  Further, the embodiment further provides a method for determining a first candidate reference motion vector of the sub-image block in each candidate reference motion vector according to the dividing manner, including:
若当前图像块被划分为左右两个子图像块, 则当前图像块左侧相邻的图像 块或子图像块的运动矢量为所述当前图像块中左边子图像块的第一候选参考运 动矢量, 所述当前图像块的右上方相邻的图像块或子图像块的运动矢量为所述 当前图像块中右边子图像块的第一候选参考运动矢量;  If the current image block is divided into two sub-image blocks, the motion vector of the image block or the sub-image block adjacent to the left side of the current image block is the first candidate reference motion vector of the left sub-image block in the current image block. The motion vector of the image block or the sub-image block adjacent to the upper right of the current image block is the first candidate reference motion vector of the right sub-image block in the current image block;
若当前图像块被划分为上下两个子图像块, 则所述当前图像块的上方相邻 的图像块或子图像块的运动矢量为所述当前图像块中上边子图像块的第一候选 参考运动矢量, 所述当前图像块的左侧相邻的图像块或子图像块的运动矢量为 所述当前图像块中下边子图像块第一候选参考运动矢量。  If the current image block is divided into upper and lower sub-image blocks, the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block. Vector, the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
由于现有技术中已存多种对各候选参考运动矢量进行编号的规则, 因此, 作为一种可行的实施方式, 根据所述第一候选参考运动矢量对各候选参考运动 矢量进行编号, 可以为:  Since a plurality of rules for numbering each candidate reference motion vector are stored in the prior art, as a possible implementation manner, each candidate reference motion vector is numbered according to the first candidate reference motion vector, which may be :
首先根据设定规则对各候选参考运动矢量进行编号;  First, each candidate reference motion vector is numbered according to a setting rule;
再根据第一候选参考运动矢量对编号后的各候选参考运动矢量进行重排 序。  The numbered candidate reference motion vectors are then reordered according to the first candidate reference motion vector.
其中, 根据第一候选参考运动矢量对编号后的各候选参考运动矢量进行重 排序可以为:  The reordering of the numbered candidate reference motion vectors according to the first candidate reference motion vector may be:
可以将第一候选参考运动矢量与编号最小的候选参考运动矢量的编号互 换。 以参考运动矢量获取方法第一实施例中提供的一组候选参考运动矢量为例, 根据现有的一种规则对该组候选参考运动矢量进行编号, 得到:  The first candidate reference motion vector may be interchanged with the number of the candidate motion vector having the smallest number. Taking a set of candidate reference motion vectors provided in the first embodiment of the reference motion vector acquisition method as an example, the group of candidate reference motion vectors is numbered according to an existing rule, and the following is obtained:
编号 0: 中值预测法得到的运动矢量; 编号 1 : 当前图像块 /子图像块左侧图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量; No. 0: The motion vector obtained by the median prediction method; No. 1: The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first available motion vector in AO to AnA-1 shown in FIG. 4;
编号 2: 当前图像块 /子图像块上边图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 3: 当前图像块 /子图像块左上边图像块或子图像块的运动矢量, 即图 4 所示 C的运动矢量;  No. 3: Current image block / motion vector of the image block or sub-image block in the upper left of the sub-image block, that is, the motion vector of C shown in Fig. 4;
编号 4: 当前图像块 /子图像块右上边图像块或子图像块的运动矢量, 即图 4 所示 D的运动矢量;  No. 4: The motion vector of the image block or sub-image block in the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 5: 当前图像块 /子图像块右下边图像块或子图像块的运动矢量, 即图 4 所示 E的运动矢量;  No. 5: Current image block / The motion vector of the image block or sub-image block at the lower right of the sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
由于该组候选参考运动矢量中的最小编号为编号 0,而该编号 0对应的为中 值预测法得到的运动矢量, 因此, 可以将第一候选参考运动矢量与中值预测法 得到的运动矢量的编号对调。 对于左右划分的划分方式, 对于划分后得到的右 边的子图像块, 由于与其相关度最高的为右上边的图像块或子图像块, 即右上 边的图像块或子图像块对应的运动矢量为第一候选参考运动矢量, 因此, 重排 序后得到:  Since the smallest number in the set of candidate reference motion vectors is number 0, and the number 0 corresponds to the motion vector obtained by the median prediction method, the motion vector obtained by the first candidate reference motion vector and the median prediction method may be used. The number is reversed. For the partitioning method of the left and right division, for the sub-image block obtained on the right side, the motion vector corresponding to the image block or the sub-image block of the upper right side, that is, the image block or the sub-image block of the upper right side is the highest. The first candidate reference motion vector, therefore, is reordered to get:
编号 0: 当前图像块 /子图像块右上边图像块或子图像块的运动矢量, 即图 4 所示 D的运动矢量;  No. 0: The motion vector of the image block or sub-image block in the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 1 : 当前图像块 /子图像块左侧图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量;  No. 1 : The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
编号 2: 当前图像块 /子图像块上边图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 3: 当前图像块 /子图像块左上边图像块或子图像块的运动矢量, 即图 4 所示 C的运动矢量; 编号 4: 中值预测法得到的运动矢量; No. 3: the motion vector of the image block or sub-image block in the upper left side of the current image block/sub-image block, that is, the motion vector of C shown in FIG. 4; No. 4: The motion vector obtained by the median prediction method;
编号 5: 当前图像块 /子图像块右下边图像块或子图像块的运动矢量, 即图 4 所示 E的运动矢量;  No. 5: Current image block / The motion vector of the image block or sub-image block at the lower right of the sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
对于上下划分的划分方式, 对于划分后得到的上边的子图像块, 由于与其 相关度最高的为上方图像块或子图像块, 即上方的图像块或子图像块对应的运 动矢量为第一候选参考运动矢量, 因此, 重排序后的候选参考运动矢量表可以 为:  For the partitioning method of the upper and lower divisions, for the upper sub-image block obtained after the division, the motion vector corresponding to the upper image block or the sub-image block is the first candidate because the upper image block or the sub-image block is the most relevant. The reference motion vector, therefore, the reordered candidate reference motion vector table can be:
编号 0: 当前图像块 /子图像块上边的图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 0: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 1 : 当前图像块 /子图像块左侧的图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量;  No. 1 : The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
编号 2: 中值预测法得到的运动矢量;  No. 2: The motion vector obtained by the median prediction method;
编号 3: 当前图像块 /子图像块左上边的图像块或子图像块的运动矢量, 即 图 4所示 C的运动矢量;  No. 3: Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
编号 4: 当前图像块 /子图像块右上边的图像块或子图像块的运动矢量, 即 图 4所示 D的运动矢量;  No. 4: The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 5: 当前图像块 /子图像块右下边的图像块或子图像块的运动矢量, 即 图 4所示 E的运动矢量;  No. 5: The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
而对于左右划分方式后得到的左边的子图像块, 以及上下划分的划分方式 后得到的下边的子图像块, 由于与其相关度最高的为左边子图像块, 因此, 重 排序后的候选参考运动矢量表可以为:  For the left sub-image block obtained after the left and right division mode, and the lower sub-image block obtained by dividing the upper and lower divisions, since the most relevant one is the left sub-image block, the reordered candidate reference motion The vector table can be:
编号 0: 当前图像块 /子图像块左侧的图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量; No. 0: The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, ie Figure 4 The first available motion vector from AO to AnA-1;
编号 1 : 中值预测法得到的运动矢量;  No. 1 : The motion vector obtained by the median prediction method;
编号 2: 当前图像块 /子图像块上边的图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 3: 当前图像块 /子图像块左上边的图像块或子图像块的运动矢量, 即 图 4所示 C的运动矢量;  No. 3: Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
编号 4: 当前图像块 /子图像块右上边的图像块或子图像块的运动矢量, 即 图 4所示 D的运动矢量;  No. 4: The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 5: 当前图像块 /子图像块右下边的图像块或子图像块的运动矢量, 即 图 4所示 E的运动矢量;  No. 5: The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
本实施例中还提供了另一种重排序方式: 第一候选参考运动矢量对应的编 号调整为最小的编号, 其余的候选参考运动矢量对应的编号依次加 1。 即将需要 给予较小编号值的第一候选参考运动矢量的编号赋予一个较小值,如 0,该数值 之后的编号依次后移。  Another reordering mode is also provided in this embodiment: the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one. The number of the first candidate reference motion vector that will need to be given a smaller numbered value is assigned a smaller value, such as 0, and the number after the value is shifted back.
对于左右划分的划分方式, 对于划分后得到的右边的子图像块, 由于与其 相关度最高的为右上边的图像块或子图像块, 因此, 重排序后的候选参考运动 矢量表可以为:  For the partitioning method of the left and right partitions, for the right sub-image block obtained after the partitioning, since the highest correlation is the upper right image block or the sub-image block, the reordered candidate reference motion vector table may be:
编号 0: 当前图像块 /子图像块右上边的图像块或子图像块的运动矢量, 即 图 4所示 D的运动矢量;  No. 0: Current image block / The motion vector of the image block or sub-image block on the upper right side of the sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 1 : 中值预测法得到的运动矢量;  No. 1 : The motion vector obtained by the median prediction method;
编号 2: 当前图像块 /子图像块左侧的图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
编号 3: 当前图像块 /子图像块上边的图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量; 编号 4: 当前图像块 /子图像块左上边的图像块或子图像块的运动矢量, 即 图 4所示 C的运动矢量; No. 3: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in FIG. 4; No. 4: the motion vector of the image block or sub-image block on the upper left side of the current image block/sub-image block, that is, the motion vector of C shown in FIG. 4;
编号 5: 当前图像块 /子图像块右下边的图像块或子图像块的运动矢量, 即 图 4所示 E的运动矢量;  No. 5: The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
对于上下划分的划分方式, 对于划分后得到的上边的子图像块, 由于与其 相关度最高的为上边的图像块或子图像块, 因此, 重排序后的候选参考运动矢 量表可以为:  For the partitioning method of the upper and lower divisions, for the upper sub-image block obtained after the division, since the uppermost image block or sub-image block is the most correlated, the reordered candidate reference motion vector table may be:
编号 0: 当前图像块 /子图像块上边的图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 0: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 1 : 中值预测法得到的运动矢量;  No. 1 : The motion vector obtained by the median prediction method;
编号 2: 当前图像块 /子图像块左侧的图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, that is, the first motion vector available in AO to AnA-1 as shown in Fig. 4;
编号 3: 当前图像块 /子图像块左上边的图像块或子图像块的运动矢量, 即 图 4所示 C的运动矢量;  No. 3: Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
编号 4: 当前图像块 /子图像块右上边的图像块或子图像块的运动矢量, 即 图 4所示 D的运动矢量;  No. 4: The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 5: 当前图像块 /子图像块右下边的图像块或子图像块的运动矢量, 即 图 4所示 E的运动矢量;  No. 5: The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
而对于左右划分方式后得到的左边的子图像块, 以及上下划分的划分方式 后得到的下边的子图像块, 由于与其相关度最高的为左边的图像块或子图像块, 因此, 重排序后的候选参考运动矢量表可以为:  For the left sub-image block obtained after the left and right division mode, and the lower sub-image block obtained by dividing the upper and lower divisions, since the image element or the sub-image block having the highest correlation is the left, the reordering is performed. The candidate reference motion vector table can be:
编号 0: 当前图像块 /子图像块左侧的图像块或子图像块的运动矢量, 即图 4 所示 AO至 AnA-1中第一个可获得的运动矢量; No. 0: The motion vector of the image block or sub-image block on the left side of the current image block/sub-image block, ie Figure 4 The first available motion vector from AO to AnA-1;
编号 1 : 中值预测法得到的运动矢量;  No. 1 : The motion vector obtained by the median prediction method;
编号 2: 当前图像块 /子图像块上边的图像块或子图像块的运动矢量, 即图 4 所示 B0至 BnA-1中第一个可获得的运动矢量;  No. 2: The motion vector of the image block or sub-image block on the current image block/sub-image block, that is, the first motion vector available in B0 to BnA-1 shown in Fig. 4;
编号 3: 当前图像块 /子图像块左上边的图像块或子图像块的运动矢量, 即 图 4所示 C的运动矢量;  No. 3: Current image block / The motion vector of the image block or sub-image block on the upper left side of the sub-image block, that is, the motion vector of C shown in Fig. 4;
编号 4: 当前图像块 /子图像块右上边的图像块或子图像块的运动矢量, 即 图 4所示 D的运动矢量;  No. 4: The motion vector of the image block or sub-image block on the upper right side of the current image block/sub-image block, that is, the motion vector of D shown in Fig. 4;
编号 5: 当前图像块 /子图像块右下边的图像块或子图像块的运动矢量, 即 图 4所示 E的运动矢量;  No. 5: The motion vector of the image block or sub-image block at the lower right of the current image block/sub-image block, that is, the motion vector of E shown in Fig. 4;
编号 6: 当前图像块 /子图像块位置相同的前一编码图像或后一编码图像的 运动矢量。  No. 6: The motion vector of the previous coded image or the next coded image with the same position of the current image block/sub-image block.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成, 的程序可存储于一计算机可 读取存储介质中, 该程序在执行时, 可包括如上述各方法的实施例的流程。 其 中, 的存储介质可为磁碟、光盘、只读存储记忆体( Read-Only Memory, ROM ) 或随机存储记忆体( Random Access Memory, RAM )等。  A person skilled in the art can understand that all or part of the process of implementing the above embodiment method can be completed by a computer program to instruct related hardware, and the program can be stored in a computer readable storage medium, and the program is executed. At the time, the flow of the embodiment of each method as described above may be included. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
图 7为本发明提供的参考运动矢量获取模块第一实施例的结构示意图, 如 图 7所示, 该模块包括: 识别单元 11、 分析单元 12、 编号单元 13和选择单元 14;  FIG. 7 is a schematic structural diagram of a first embodiment of a reference motion vector obtaining module according to the present invention. As shown in FIG. 7, the module includes: an identifying unit 11, an analyzing unit 12, a numbering unit 13, and a selecting unit 14;
其中, 识别单元 11 , 用于获得当前图像块中子图像块的划分方式; 分析单元 12, 用于根据所述划分方式在所述子图像块的各候选参考运动矢 量中确定第一候选参考运动矢量 , 所述候选参考运动矢量为与所述当前图像块 相邻的图像块或子图像块的运动矢量, 或所述相邻的图像块或子图像块的运动 矢量经过运算后获得的运动矢量;  The identifying unit 11 is configured to obtain a dividing manner of the sub-image block in the current image block, and the analyzing unit 12 is configured to determine, in the dividing manner, the first candidate reference motion in each candidate reference motion vector of the sub-image block. Vector, the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained after the motion vector of the adjacent image block or sub-image block is operated. ;
编号单元 13, 用于根据所述第一候选参考运动矢量对各候选参考运动矢量 进行编号; a numbering unit 13, configured to select each candidate reference motion vector according to the first candidate reference motion vector Numbering;
选择单元 14, 用于根据从编号后的各候选参考运动矢量中选择参考运动矢 量。  The selecting unit 14 is configured to select a reference motion vector from each of the candidate reference motion vectors after the numbering.
本发明实施例提供的参考运动矢量获取模块, 根据当前图像块中子图像块 的划分方式, 确定子图像块的第一候选参考运动矢量, 并根据第一参考运动矢 量对各候选参考运动矢量进行编号, 以使第一候选参考运动矢量尽量对应的较 小的编号, 由于编码端对编号采用变长编码, 因此, 能够提高编号的编码效率, 进而提高视频编码效率。  The reference motion vector acquisition module provided by the embodiment of the present invention determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and performs, for each candidate reference motion vector, according to the first reference motion vector. The numbering is such that the first candidate reference motion vector corresponds to a smaller number. Since the encoding end uses variable length coding for the numbering, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
在参考运动矢量获取模块第一实施例的基础上, 参见图 8, 进一步的, 编号 单元 13包括:  Based on the first embodiment of the reference motion vector acquisition module, referring to FIG. 8, further, the numbering unit 13 includes:
编号子单元 131 , 用于根据设定规则对所述各候选参考运动矢量进行编号; 重排序子单元 132, 用于根据所述第一候选参考运动矢量对编号后的各候 选参考运动矢量进行重排序。  a number sub-unit 131, configured to number each candidate reference motion vector according to a setting rule; a reordering sub-unit 132, configured to perform weighting on each of the numbered candidate reference motion vectors according to the first candidate reference motion vector Sort.
其中, 重排序子单元 132可以具体用于:  The reordering subunit 132 may be specifically configured to:
将第一候选参考运动矢量与编号最小的候选参考运动矢量的编号互换; 或者, 第一候选参考运动矢量对应的编号调整为最小的编号, 其余的候选 参考运动矢量对应的编号依次加 1。  The first candidate reference motion vector is interchanged with the number of the candidate motion vector with the smallest number; or, the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one.
进一步的, 识别单元 11可以具体用于:  Further, the identification unit 11 can be specifically configured to:
根据编码模式标识识别当前图像块中子图像块的划分方式;  Identifying a division manner of the sub-image block in the current image block according to the coding mode identifier;
或者, 根据当前图像块中的划分线与当前图像块的两条边界线或边界线延 长线的焦点到图像块端点的距离的比值识别当前图像块中子图像块的划分方 式;  Or identifying a division mode of the sub-image block in the current image block according to a ratio of a dividing line in the current image block to a distance between a boundary of the current image block or a focus of the boundary line extension line to an end point of the image block;
或者, 根据当前图像块中划分线的角度和距离识别当前图像块中子图像块 的划分方式。  Or, the manner of dividing the sub-image block in the current image block is identified according to the angle and distance of the dividing line in the current image block.
进一步的, 分析单元 12可以具体用于:  Further, the analyzing unit 12 can be specifically used for:
若当前图像块被划分为左右两个子图像块, 则当前图像块左侧相邻的图像 块或子图像块的运动矢量为所述当前图像块中左边子图像块的第一候选参考运 动矢量, 所述当前图像块的右上方相邻的图像块或子图像块的运动矢量为所述 当前图像块中右边子图像块的第一候选参考运动矢量; If the current image block is divided into two sub-image blocks, the image adjacent to the left side of the current image block The motion vector of the block or sub-image block is the first candidate reference motion vector of the left sub-image block in the current image block, and the motion vector of the adjacent upper right image block or sub-image block of the current image block is the current image. a first candidate reference motion vector of the right sub-image block in the block;
若当前图像块被划分为上下两个子图像块, 则所述当前图像块的上方相邻 的图像块或子图像块的运动矢量为所述当前图像块中上边子图像块的第一候选 参考运动矢量, 所述当前图像块的左侧相邻的图像块或子图像块的运动矢量为 所述当前图像块中下边子图像块第一候选参考运动矢量。  If the current image block is divided into upper and lower sub-image blocks, the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block. Vector, the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
本发明实施例提供的参考运动矢量获取模块, 为执行本发明实施例提供的 参考运动矢量获取方法的功能设备, 其具体执行过程可参见参考运动矢量获取 方法的实施例, 在此不再赘述。  The reference motion vector acquisition module provided by the embodiment of the present invention is a function device for performing the reference motion vector acquisition method provided by the embodiment of the present invention. For the specific implementation process, refer to the embodiment of the reference motion vector acquisition method, and details are not described herein again.
图 9为本发明实施例提供的编码装置第一实施例的结构示意图, 如图 9所 示, 该装置包括: 预测模块 1、 变换模块 2、 量化模块 3、 熵编码模块 4和参考 运动矢量获取模块 5;  FIG. 9 is a schematic structural diagram of a first embodiment of an encoding apparatus according to an embodiment of the present invention. As shown in FIG. 9, the apparatus includes: a prediction module 1, a transform module 2, a quantization module 3, an entropy encoding module 4, and a reference motion vector acquisition. Module 5;
其中, 参考运动矢量获耳 莫块 5, 用于获得当前图像块中子图像块的划分方 式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选 参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子 图像块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获 得的运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编 号; 从编号后的各候选参考运动矢量中选择参考运动矢量;  The reference motion vector acquisition block 5 is configured to obtain a division manner of the sub image block in the current image block, and determine a first candidate reference motion vector in each candidate reference motion vector of the sub image block according to the division manner. And the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained after the motion vector of the adjacent image block or sub-image block is operated; Each candidate reference motion vector is numbered according to the first candidate reference motion vector; a reference motion vector is selected from each of the numbered candidate reference motion vectors;
预测模块 1 , 用于获取子图像块与预测图像块之间的像素残差, 以及获取预 测图像块的运动矢量与参考运动矢量之差;  a prediction module 1 , configured to acquire a pixel residual between the sub image block and the predicted image block, and obtain a difference between the motion vector of the predicted image block and the reference motion vector;
变换模块 2, 用于分别将预测模块 1获取的残差进行变换;  a transform module 2, configured to separately transform the residual obtained by the prediction module 1;
量化模块 3,用于分别将经过变换模块 2变换的预测模块获取的残差进行量 化;  a quantization module 3, configured to quantize the residuals obtained by the prediction module transformed by the transform module 2, respectively;
熵编码模块 4,用于分别将经过量化模块 3量化的残差进行熵编码, 并对预 测图像块的运动矢量与参考运动矢量之差进行熵编码。 本发明实施例提供的编码装置, 首先通过预测模块 1 将当前图像块或子图 像块与匹配的子图像块对应的像素值相减得残差, 然后依次通过变换模块 2和 量化模块 3对残差进行变换与量化, 最后通过熵编码模块 4对经过变换和量化 的残差进行熵编码, 并将熵编码得到的比特流写入编码码流中。 The entropy coding module 4 is configured to entropy encode the residual quantized by the quantization module 3, and entropy encode the difference between the motion vector of the predicted image block and the reference motion vector. The encoding apparatus provided by the embodiment of the present invention firstly subtracts the pixel value corresponding to the current image block or the sub-image block and the matched sub-image block by the prediction module 1 to obtain a residual, and then sequentially passes the transformation module 2 and the quantization module 3 to the residual. The difference is transformed and quantized. Finally, the transformed and quantized residual is entropy encoded by the entropy encoding module 4, and the entropy encoded bit stream is written into the encoded code stream.
同时, 预测模块 1编码端在进行编码时还根据参考运动矢量获取模块 5获 取的参考运动矢量, 获取预测图像块的运动矢量与参考运动矢量之差, 然后送 入熵编码模块 4, 熵编码模块 4对运动矢量与参考运动矢量之差进行编码,并且 对参考运动矢量在候选参考运动矢量表中对应的编号进行变长熵编码, 然后将 熵编码得到的比特流写入编码码流中。  At the same time, the encoding end of the prediction module 1 also obtains the difference between the motion vector of the predicted image block and the reference motion vector according to the reference motion vector acquired by the reference motion vector obtaining module 5, and then sends the difference between the motion vector and the reference motion vector, and then sends the entropy coding module 4, the entropy coding module. 4 encoding the difference between the motion vector and the reference motion vector, and performing variable length entropy encoding on the corresponding number of the reference motion vector in the candidate reference motion vector table, and then writing the entropy encoded bit stream into the encoded code stream.
其中, 参考运动矢量的获取过程参见参考运动矢量获取方法实施例, 在此 不再赘述。  For the process of obtaining the reference motion vector, refer to the reference motion vector acquisition method embodiment, and details are not described herein again.
本实施例提供的编码装置, 根据当前图像块中子图像块的划分方式, 确定 子图像块的第一候选参考运动矢量, 并根据第一参考运动矢量对各候选参考运 动矢量进行编号, 以使第一候选参考运动矢量尽量对应的较小的编号, 由于编 码端对编号采用变长编码, 因此, 能够提高编号的编码效率, 进而提高视频编 码效率。  The encoding apparatus provided in this embodiment determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and numbers each candidate reference motion vector according to the first reference motion vector, so that The first candidate reference motion vector corresponds to a smaller number as much as possible. Since the encoding end uses variable length coding for the number, the coding efficiency of the number can be improved, thereby improving the video coding efficiency.
图 10为本发明实施例提供的解码装置第一实施例的结构示意图, 如图 10 所示, 该装置包括: 熵解码模块 1 '、 反量化模块 2,、 反变换模块 3'、 预测补偿 模块 4, 和参考运动矢量获取模块 5';  FIG. 10 is a schematic structural diagram of a first embodiment of a decoding apparatus according to an embodiment of the present invention. As shown in FIG. 10, the apparatus includes: an entropy decoding module 1 ', an inverse quantization module 2, an inverse transform module 3', and a prediction compensation module. 4, and a reference motion vector acquisition module 5';
熵解码模块 1 ', 用于对接收到的编码码流进行熵解码, 获得当前图像块中 各子图像块与预测图像块之间的像素残差, 获取预测图像块的运动矢量与所述 参考运动矢量之差以及参考运动矢量对应的编号;  An entropy decoding module 1 ′, configured to perform entropy decoding on the received encoded code stream, obtain a pixel residual between each sub image block and the predicted image block in the current image block, and obtain a motion vector of the predicted image block and the reference The difference between the motion vectors and the number corresponding to the reference motion vector;
反量化模块 2', 用于对所述残差进行反量化;  An inverse quantization module 2', configured to inverse quantize the residual;
反变换模块 3', 用于对经过所述反量化模块反量化的残差进行反变换; 参考运动矢量获取模块 5', 用于获得当前图像块中子图像块的划分方式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选参考 运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子图像 块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获得的 运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量。 The inverse transform module 3' is configured to perform inverse transform on the residual inversely quantized by the inverse quantization module; the reference motion vector obtaining module 5' is configured to obtain a partition mode of the sub image block in the current image block; Means determining a first candidate reference among each candidate reference motion vector of the sub-image block a motion vector, where the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion obtained by the motion vector of the adjacent image block or sub-image block Vector; numbering each candidate reference motion vector according to the first candidate reference motion vector; selecting a reference motion vector from each of the numbered candidate reference motion vectors.
预测补偿模块 4', 用于根据所述编号获取对应的参考运动矢量, 根据所述 运动矢量与所述参考运动矢量之差获取所述运动矢量; 根据所述运动矢量确定 所述预测图像块, 再根据所述预测图像块和所述残差获取所述当前图像块。  a prediction compensation module 4', configured to acquire a corresponding reference motion vector according to the number, obtain the motion vector according to a difference between the motion vector and the reference motion vector; and determine the predicted image block according to the motion vector, And acquiring the current image block according to the predicted image block and the residual.
本发明实施例提供的解码装置, 根据当前图像块中子图像块的划分方式, 确定子图像块的第一候选参考运动矢量, 并根据第一参考运动矢量对各候选参 考运动矢量进行编号, 以使第一候选参考运动矢量尽量对应的较小的编号, 由 于编码端对编号采用变长编码, 因此, 能够提高编号的解码效率, 进而提高视 频解码效率。  The decoding apparatus provided by the embodiment of the present invention determines a first candidate reference motion vector of the sub-image block according to a division manner of the sub-image block in the current image block, and numbers each candidate reference motion vector according to the first reference motion vector, The smaller number of the first candidate reference motion vector is matched as much as possible. Since the encoding end uses variable length coding for the number, the decoding efficiency of the number can be improved, and the video decoding efficiency is improved.
本发明实施例提供的编码和解码装置, 其功能可以集成到数字信号处理 The encoding and decoding apparatus provided by the embodiment of the present invention can be integrated into digital signal processing
( Digital Signal Processing; 简称: DSP ) 芯片或现场可编程门阵列 ( Field-Programmable Gate Array;简称: FPGA )芯片上进行软件开发来实现, 也可以通过专用集成电路( Application Specific Integrated Circuit; 简称: ASIC ) 的方式固化实现。 (Digital Signal Processing; abbreviated as: DSP) chip or Field-Programmable Gate Array (FPGA) chip for software development, or through Application Specific Integrated Circuit (ASIC) The way to cure is achieved.
最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限 制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员 应当理解: 其依然可以对前述各实施例所记载的技术方案进行修改, 或者对其 中部分技术特征进行等同替换; 而这些修改或者替换, 并不使相应技术方案的 本质脱离本发明各实施例技术方案的精神和范围。  It should be noted that the above embodiments are only for explaining the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those skilled in the art that: The technical solutions described in the foregoing embodiments are modified, or some of the technical features are equivalently replaced. The modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

权 利 要 求 书 Claim
1、 一种参考运动矢量获取方法, 其特征在于, 包括: A reference motion vector acquisition method, comprising:
获得当前图像块中子图像块的划分方式;  Obtaining a division manner of the sub image block in the current image block;
根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选 参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子 图像块的运动矢量, 或者所述相邻的图像块或子图像块的运动矢量经过运算后 获得的运动矢量;  Determining, in the dividing manner, a first candidate reference motion vector in each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an motion of an image block or a sub-image block adjacent to the current image block. a vector, or a motion vector obtained by the motion vector of the adjacent image block or the sub-image block;
根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量。  Each candidate reference motion vector is numbered according to the first candidate reference motion vector; a reference motion vector is selected from each of the numbered candidate reference motion vectors.
2、 根据权利要求 1所述的方法, 其特征在于, 所述根据所述第一候选参考 运动矢量对各候选参考运动矢量进行编号, 包括:  The method according to claim 1, wherein the numbering each candidate reference motion vector according to the first candidate reference motion vector comprises:
根据设定规则对所述各候选参考运动矢量进行编号;  The candidate reference motion vectors are numbered according to a setting rule;
根据所述第一候选参考运动矢量对编号后的各候选参考运动矢量进行重排 序。  The numbered candidate reference motion vectors are reordered according to the first candidate reference motion vector.
3、 根据权利要求 2所述的方法, 其特征在于, 所述根据所述第一候选参考 运动矢量对编号后的各候选参考运动矢量进行重排序, 包括:  The method according to claim 2, wherein the reordering the numbered candidate reference motion vectors according to the first candidate reference motion vector comprises:
将第一候选参考运动矢量与编号最小的候选参考运动矢量的编号互换; 或者, 第一候选参考运动矢量对应的编号调整为最小的编号, 其余的候选 参考运动矢量对应的编号依次加 1。  The first candidate reference motion vector is interchanged with the number of the candidate motion vector with the smallest number; or, the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one.
4、 根据权利要求 1-3任一项所述的方法, 其特征在于, 所述获得当前图像 块中子图像块的划分方式, 包括:  The method according to any one of claims 1 to 3, wherein the obtaining the division manner of the sub-image block in the current image block comprises:
根据编码模式标识识别当前图像块中子图像块的划分方式;  Identifying a division manner of the sub-image block in the current image block according to the coding mode identifier;
或者, 根据当前图像块中的划分线与当前图像块的两条边界线或边界线延 长线的焦点到图像块端点的距离的比值识别当前图像块中子图像块的划分方 式; 或者, 根据当前图像块中划分线的角度和距离识别当前图像块中子图像块 的划分方式。 Or identifying a division manner of the sub-image block in the current image block according to a ratio of a dividing line in the current image block to a distance between a boundary of the current image block or a focus of the boundary line extension line to an end point of the image block; Or, the division manner of the sub-image block in the current image block is identified according to the angle and the distance of the dividing line in the current image block.
5、 根据权利要求 1-3任一项所述的方法, 其特征在于, 所述根据所述划分 方式在各候选参考运动矢量中确定所述子图像块的第一候选参考运动矢量, 包 括:  The method according to any one of claims 1-3, wherein the determining the first candidate reference motion vector of the sub-image block in each candidate reference motion vector according to the dividing manner comprises:
若当前图像块被划分为左右两个子图像块, 则当前图像块左侧相邻的图像 块或子图像块的运动矢量为所述当前图像块中左边子图像块的第一候选参考运 动矢量, 所述当前图像块的右上方相邻的图像块或子图像块的运动矢量为所述 当前图像块中右边子图像块的第一候选参考运动矢量;  If the current image block is divided into two sub-image blocks, the motion vector of the image block or the sub-image block adjacent to the left side of the current image block is the first candidate reference motion vector of the left sub-image block in the current image block. The motion vector of the image block or the sub-image block adjacent to the upper right of the current image block is the first candidate reference motion vector of the right sub-image block in the current image block;
若当前图像块被划分为上下两个子图像块, 则所述当前图像块的上方相邻 的图像块或子图像块的运动矢量为所述当前图像块中上边子图像块的第一候选 参考运动矢量, 所述当前图像块的左侧相邻的图像块或子图像块的运动矢量为 所述当前图像块中下边子图像块第一候选参考运动矢量。  If the current image block is divided into upper and lower sub-image blocks, the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block. Vector, the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
6、 一种参考运动矢量获取模块, 其特征在于, 包括:  6. A reference motion vector acquisition module, comprising:
识别单元, 用于获得当前图像块中子图像块的划分方式;  a identifying unit, configured to obtain a dividing manner of the sub image block in the current image block;
分析单元, 用于根据所述划分方式在所述子图像块的各候选参考运动矢量 中确定第一候选参考运动矢量, 所述候选参考运动矢量为与所述当前图像块相 邻的图像块或子图像块的运动矢量, 或所述相邻的图像块或子图像块的运动矢 量经过运算后获得的运动矢量;  An analyzing unit, configured to determine, in the partitioning manner, a first candidate reference motion vector among each candidate reference motion vector of the sub-image block, where the candidate reference motion vector is an image block adjacent to the current image block or a motion vector of the sub-image block, or a motion vector obtained by the motion vector of the adjacent image block or the sub-image block;
编号单元, 用于根据所述第一候选参考运动矢量对各候选参考运动矢量进 行编号;  a numbering unit, configured to number each candidate reference motion vector according to the first candidate reference motion vector;
选择单元, 用于根据从编号后的各候选参考运动矢量中选择参考运动矢量。 And a selecting unit, configured to select a reference motion vector according to each of the candidate reference motion vectors after the numbering.
7、 根据权利要求 6所述的参考运动矢量获取模块, 其特征在于, 所述编号 单元包括: The reference motion vector acquisition module according to claim 6, wherein the numbering unit comprises:
编号子单元, 用于根据设定规则对所述各候选参考运动矢量进行编号; 重排序子单元, 用于根据所述第一候选参考运动矢量对编号后的各候选参 考运动矢量进行重排序。 a numbering subunit, configured to number each candidate reference motion vector according to a setting rule; a reordering subunit, configured to use each of the candidate parameters after the first candidate reference motion vector pair The motion vector is reordered.
8、 根据权利要求 7所述的参考运动矢量获取模块, 其特征在于, 所述重排 序子单元具体用于:  The reference motion vector acquisition module according to claim 7, wherein the reordering subunit is specifically configured to:
将第一候选参考运动矢量与编号最小的候选参考运动矢量的编号互换; 或者, 第一候选参考运动矢量对应的编号调整为最小的编号, 其余的候选 参考运动矢量对应的编号依次加 1。  The first candidate reference motion vector is interchanged with the number of the candidate motion vector with the smallest number; or, the number corresponding to the first candidate reference motion vector is adjusted to the smallest number, and the numbers corresponding to the remaining candidate reference motion vectors are sequentially incremented by one.
9、 根据权利要求 6中所述的参考运动矢量获取模块, 其特征在于, 所述识 别单元用于:  9. The reference motion vector acquisition module according to claim 6, wherein the identification unit is configured to:
根据编码模式标识识别当前图像块中子图像块的划分方式;  Identifying a division manner of the sub-image block in the current image block according to the coding mode identifier;
或者, 根据当前图像块中的划分线与当前图像块的两条边界线或边界线延 长线的焦点到图像块端点的距离的比值识别当前图像块中子图像块的划分方 式;  Or identifying a division mode of the sub-image block in the current image block according to a ratio of a dividing line in the current image block to a distance between a boundary of the current image block or a focus of the boundary line extension line to an end point of the image block;
或者, 根据当前图像块中划分线的角度和距离识别当前图像块中子图像块 的划分方式。  Or, the manner of dividing the sub-image block in the current image block is identified according to the angle and distance of the dividing line in the current image block.
10、 根据权利要求 6中所述的参考运动矢量获取模块, 其特征在于, 所述分 析单元用于:  10. The reference motion vector acquisition module according to claim 6, wherein the analysis unit is configured to:
若当前图像块被划分为左右两个子图像块, 则当前图像块左侧相邻的图像 块或子图像块的运动矢量为所述当前图像块中左边子图像块的第一候选参考运 动矢量, 所述当前图像块的右上方相邻的图像块或子图像块的运动矢量为所述 当前图像块中右边子图像块的第一候选参考运动矢量;  If the current image block is divided into two sub-image blocks, the motion vector of the image block or the sub-image block adjacent to the left side of the current image block is the first candidate reference motion vector of the left sub-image block in the current image block. The motion vector of the image block or the sub-image block adjacent to the upper right of the current image block is the first candidate reference motion vector of the right sub-image block in the current image block;
若当前图像块被划分为上下两个子图像块, 则所述当前图像块的上方相邻 的图像块或子图像块的运动矢量为所述当前图像块中上边子图像块的第一候选 参考运动矢量, 所述当前图像块的左侧相邻的图像块或子图像块的运动矢量为 所述当前图像块中下边子图像块第一候选参考运动矢量。  If the current image block is divided into upper and lower sub-image blocks, the motion vector of the adjacent image block or sub-image block of the current image block is the first candidate reference motion of the upper sub-image block in the current image block. Vector, the motion vector of the adjacent image block or sub-image block of the left side of the current image block is the first candidate reference motion vector of the lower sub-image block in the current image block.
1 1、 一种编码装置, 其特征在于, 包括: 预测模块、 变换模块、 量化模块、 熵编码模块和如权利要求 6-10任一项所述的参考运动矢量获取模块, 其中, 所述参考运动矢量获取模块, 用于获得当前图像块中子图像块的划分方式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选参考 运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子图像 块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获得的 运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量; An encoding device, comprising: a prediction module, a transformation module, a quantization module, an entropy coding module, and a reference motion vector acquisition module according to any one of claims 6-10, wherein The reference motion vector acquisition module is configured to obtain a division manner of the sub image block in the current image block, and determine a first candidate reference motion vector in each candidate reference motion vector of the sub image block according to the division manner, a candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained by calculating a motion vector of the adjacent image block or sub-image block; The first candidate reference motion vector numbers each candidate reference motion vector; and selects a reference motion vector from each of the numbered candidate reference motion vectors;
所述预测模块, 用于获取所述子图像块与预测图像块之间的像素残差, 以 及获取预测图像块的运动矢量与所述参考运动矢量之差;  The prediction module is configured to acquire a pixel residual between the sub-image block and the predicted image block, and obtain a difference between a motion vector of the predicted image block and the reference motion vector;
所述变换模块, 用于对所述预测模块获取的所述残差进行变换;  The transform module is configured to transform the residual obtained by the prediction module;
所述量化模块, 用于将经过所述变换模块变换的所述预测模块获取的所述 残差进行量化;  The quantization module is configured to quantize the residual obtained by the prediction module transformed by the transform module;
所述熵编码模块, 用于对经过所述量化模块量化的所述残差进行熵编码, 并用于对所述预测图像块的运动矢量与所述参考运动矢量之差进行变长熵编 码, 对所述参考运动矢量对应的编号进行变长熵编码。  The entropy encoding module is configured to entropy encode the residual quantized by the quantization module, and perform variable length entropy coding on a difference between a motion vector of the predicted image block and the reference motion vector, where The number corresponding to the reference motion vector is variable length entropy encoded.
12、 一种解码装置, 其特征在于, 包括: 熵解码模块、 反量化模块、 反变 换模块、 预测补偿模块和如权利要求 6-10任一项所述的参考运动矢量获取模块; 所述熵解码模块, 用于对接收到的编码码流进行熵解码, 获得当前图像块 中各子图像块与预测图像块之间的像素残差, 获取预测图像块的运动矢量与所 述参考运动矢量之差以及参考运动矢量对应的编号;  12. A decoding apparatus, comprising: an entropy decoding module, an inverse quantization module, an inverse transform module, a prediction compensation module, and a reference motion vector acquisition module according to any one of claims 6-10; a decoding module, configured to perform entropy decoding on the received encoded code stream, obtain a pixel residual between each sub-image block and the predicted image block in the current image block, and obtain a motion vector of the predicted image block and the reference motion vector The difference and the number corresponding to the reference motion vector;
所述反量化模块, 用于对所述残差进行反量化;  The inverse quantization module is configured to perform inverse quantization on the residual;
所述反变换模块, 用于对经过所述反量化模块反量化的残差进行反变换; 所述参考运动矢量获取模块, 用于获得当前图像块中子图像块的划分方式; 根据所述划分方式在所述子图像块的各候选参考运动矢量中确定第一候选参考 运动矢量, 所述候选参考运动矢量为与所述当前图像块相邻的图像块或子图像 块的运动矢量, 或所述相邻的图像块或子图像块的运动矢量经过运算后获得的 运动矢量; 根据所述第一候选参考运动矢量对各候选参考运动矢量进行编号; 从编号后的各候选参考运动矢量中选择参考运动矢量; The inverse transform module is configured to perform inverse transform on a residual that is inversely quantized by the inverse quantization module, where the reference motion vector acquisition module is configured to obtain a partition mode of the sub image block in the current image block; And determining, in each candidate reference motion vector of the sub-image block, a first candidate reference motion vector, where the candidate reference motion vector is a motion vector of an image block or a sub-image block adjacent to the current image block, or a motion vector obtained by calculating a motion vector of an adjacent image block or a sub-image block; and encoding each candidate reference motion vector according to the first candidate reference motion vector; Selecting a reference motion vector from each of the candidate reference motion vectors after the numbering;
所述预测补偿模块, 用于根据所述编号获取对应的参考运动矢量, 根据所 述运动矢量与所述参考运动矢量之差获取所述运动矢量; 根据所述运动矢量确 定所述预测图像块, 再根据所述预测图像块和所述残差获取所述当前图像块。  The prediction compensation module is configured to acquire a corresponding reference motion vector according to the number, obtain the motion vector according to a difference between the motion vector and the reference motion vector, and determine the predicted image block according to the motion vector, And acquiring the current image block according to the predicted image block and the residual.
PCT/CN2012/070586 2011-01-19 2012-01-19 Method, module and encoding/decoding device for obtaining reference motion vector WO2012097742A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110021752.2 2011-01-19
CN201110021752.2A CN102611881B (en) 2011-01-19 2011-01-19 Method and module for obtaining reference motion vector, encoding and decoding device

Publications (1)

Publication Number Publication Date
WO2012097742A1 true WO2012097742A1 (en) 2012-07-26

Family

ID=46515164

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/070586 WO2012097742A1 (en) 2011-01-19 2012-01-19 Method, module and encoding/decoding device for obtaining reference motion vector

Country Status (2)

Country Link
CN (1) CN102611881B (en)
WO (1) WO2012097742A1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103079067B (en) * 2013-01-09 2016-03-09 华为技术有限公司 Motion vector predictor list builder method and video coding-decoding method and device
CN104581186B (en) * 2013-10-14 2019-12-17 北京康吉森技术有限公司 Method for coding and decoding intra-frame motion vector in image compression
WO2018152749A1 (en) * 2017-02-23 2018-08-30 Realnetworks, Inc. Coding block bitstream structure and syntax in video coding systems and methods
EP3780608A4 (en) 2018-04-02 2021-12-01 SZ DJI Technology Co., Ltd. Image processing method and image processing device
WO2020000444A1 (en) * 2018-06-29 2020-01-02 深圳市大疆创新科技有限公司 Method and device for determining motion vector, and machine-readable storage medium
CN110662072B (en) * 2018-06-29 2022-04-26 杭州海康威视数字技术股份有限公司 Motion information candidate list construction method and device and readable storage medium
CN112565785B (en) * 2018-12-28 2022-04-26 杭州海康威视数字技术股份有限公司 Coding and decoding method and equipment thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1194544A (en) * 1997-01-31 1998-09-30 日本胜利株式会社 Coding and decoding device with movement compensation
US20070140345A1 (en) * 2005-12-16 2007-06-21 Akira Osamoto Motion estimation with motion vector penalty
WO2010078212A1 (en) * 2008-12-31 2010-07-08 Advanced Micro Devices, Inc. Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1194544C (en) * 2003-04-25 2005-03-23 北京工业大学 Video encoding method based on prediction time and space domain conerent movement vectors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1194544A (en) * 1997-01-31 1998-09-30 日本胜利株式会社 Coding and decoding device with movement compensation
US20070140345A1 (en) * 2005-12-16 2007-06-21 Akira Osamoto Motion estimation with motion vector penalty
WO2010078212A1 (en) * 2008-12-31 2010-07-08 Advanced Micro Devices, Inc. Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors

Also Published As

Publication number Publication date
CN102611881A (en) 2012-07-25
CN102611881B (en) 2014-06-25

Similar Documents

Publication Publication Date Title
CN110557640B (en) Weighted interleaved prediction
JP6073405B2 (en) Video decoding method and apparatus
WO2012097742A1 (en) Method, module and encoding/decoding device for obtaining reference motion vector
US11363269B2 (en) Encoding sequence encoding method and device thereof, and decoding method and device thereof
TWI692248B (en) Method of decoding image, apparatus and method of encoding an image, and non-transitory computer-readable medium
JP6076414B2 (en) Video encoding method and apparatus, and video decoding method and apparatus
US9088780B2 (en) Method of adaptive intra prediction mode encoding and apparatus for the same, and method of encoding and apparatus for the same
ES2724568A2 (en) Method and apparatus for processing a video signal (Machine-translation by Google Translate, not legally binding)
BR122020013760B1 (en) METHOD TO DECODE A VIDEO THROUGH MESH FILTRATION BASED ON ENCODING UNITS, AND VIDEO DECODING APPARATUS TO DECODE A VIDEO THROUGH MESH FILTRATION BASED ON ENCODING UNITS
WO2011095259A1 (en) Selecting predicted motion vector candidates
JP2011503991A (en) Method and device for motion estimation and compensation
CN113794883B (en) Encoding and decoding method, device and equipment
KR102552556B1 (en) Efficient low-complexity video compression
KR20210075203A (en) Video picture coding method including sub-block merging simplification and related apparatus
RU2776941C1 (en) Video encoding and decoding
CN113709486B (en) Encoding and decoding method, device and equipment
JP2008085674A (en) Motion detecting apparatus and method
CN117859329A (en) Symbol prediction for block-based video coding
CN110691247A (en) Decoding and encoding method and device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12736618

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12736618

Country of ref document: EP

Kind code of ref document: A1