WO2020244425A1 - 一种编解码方法、装置及其设备 - Google Patents
一种编解码方法、装置及其设备 Download PDFInfo
- Publication number
- WO2020244425A1 WO2020244425A1 PCT/CN2020/092406 CN2020092406W WO2020244425A1 WO 2020244425 A1 WO2020244425 A1 WO 2020244425A1 CN 2020092406 W CN2020092406 W CN 2020092406W WO 2020244425 A1 WO2020244425 A1 WO 2020244425A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion information
- block
- prediction mode
- surrounding
- current block
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
Definitions
- This application relates to the field of coding and decoding technologies, and in particular to a coding and decoding method, device and equipment.
- Video encoding can include processes such as prediction, transformation, quantization, entropy encoding, and filtering.
- Prediction includes intra prediction and inter prediction.
- Inter-frame coding uses the correlation of the video time domain to predict the pixels of the current image using pixels adjacent to the coded image to achieve the purpose of effectively removing video time domain redundancy.
- a Motion Vector is used to represent the relative displacement between the current image block of the current frame video image and the reference image block of the reference frame video image.
- the video image A of the current frame and the video image B of the reference frame have a strong time-domain correlation.
- the motion can be performed in the video image B Search to find the image block B1 that best matches the image block A1 (ie, the reference image block), and determine the relative displacement between the image block A1 and the image block B1, which is the motion vector of the image block A1.
- This application provides a coding and decoding method, device and equipment, which can improve coding performance.
- This application provides a coding and decoding method.
- the method includes: acquiring at least one motion information angle prediction mode of a current block; for each motion information angle prediction mode, based on the pre-configured angle of the motion information angle prediction mode, starting from the current Select multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the block; if the motion information of the multiple surrounding matching blocks is not completely the same, add the motion information angle prediction mode to the motion information of the current block In the prediction mode candidate list; encoding or decoding the current block according to the motion information prediction mode candidate list.
- the present application provides a coding and decoding device.
- the device includes: an acquisition module for acquiring at least one motion information angle prediction mode of a current block; a processing module for each motion information angle prediction mode based on the motion information For the pre-configured angle of the angle prediction mode, select multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block; if the motion information of the multiple surrounding matching blocks is not completely the same, then the The motion information angle prediction mode is added to the motion information prediction mode candidate list of the current block; the encoding and decoding module is used to encode or decode the current block according to the motion information prediction mode candidate list.
- the present application provides a decoding end device, including: a processor and a machine-readable storage medium, where the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-readable
- the instruction is executed to implement the following steps: obtain at least one motion information angle prediction mode of the current block; for each motion information angle prediction mode, select from the surrounding blocks of the current block based on the pre-configured angle of the motion information angle prediction mode Multiple surrounding matching blocks pointed to by the pre-configured angle; if the motion information of the multiple surrounding matching blocks is not completely the same, adding the motion information angle prediction mode to the motion information prediction mode candidate list of the current block; The current block is decoded according to the motion information prediction mode candidate list.
- This application provides an encoding end device, including: a processor and a machine-readable storage medium, the machine-readable storage medium stores machine-executable instructions that can be executed by the processor; the processor is used to execute the machine-readable The instruction is executed to implement the following steps: obtain at least one motion information angle prediction mode of the current block; for each motion information angle prediction mode, select from the surrounding blocks of the current block based on the pre-configured angle of the motion information angle prediction mode Multiple surrounding matching blocks pointed to by the pre-configured angle; if the motion information of the multiple surrounding matching blocks is not completely the same, adding the motion information angle prediction mode to the motion information prediction mode candidate list of the current block; Encoding the current block according to the motion information prediction mode candidate list.
- the present application provides a machine-readable storage medium that stores machine-executable instructions that, when executed by a processor, implement the encoding and decoding methods described in the various embodiments of the present application.
- the present application provides a computer program, which includes computer-readable code, which, when executed by a processor, implements the encoding and decoding methods described in the embodiments of the present application.
- the current block does not need to be divided, which can effectively solve the bit overhead caused by sub-block division, that is, on the basis of not sub-blocking the current block, the current block
- Each sub-region of the block provides motion information, and different sub-regions of the current block can correspond to the same or different motion information, which improves coding performance, solves the problem of transmitting a large amount of motion information, and saves a large number of bits.
- Fig. 1 is a schematic diagram of a video coding framework in an embodiment of the present application.
- FIGS. 2A and 2B are schematic diagrams of a division method in an embodiment of the present application.
- 3A-3F are schematic diagrams of application scenarios in an embodiment of the present application.
- Fig. 4 is a flowchart of a coding and decoding method in an embodiment of the present application.
- 5A and 5B are schematic diagrams of the motion information angle prediction mode in the embodiment of the present application.
- Fig. 6 is a flowchart of a coding and decoding method in an embodiment of the present application.
- Fig. 7 is a flowchart of a coding and decoding method in an embodiment of the present application.
- Figures 8A and 8B are schematic diagrams of filling in uncoded blocks and intra-coded blocks.
- 9A-9C are schematic diagrams of surrounding blocks of the current block in an embodiment of the present application.
- 10A-10N are schematic diagrams of surrounding matching blocks in an embodiment of the present application.
- FIG. 11 is a structural diagram of a codec device in an embodiment of the present application.
- FIG. 12 is a hardware structure diagram of a decoding end device in an embodiment of the present application.
- FIG. 13 is a hardware structure diagram of an encoding terminal device in an embodiment of the present application.
- first, second, etc. may be used to describe various information in the embodiments of this application, the information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other.
- first information may be referred to as second information, and similarly, the second information may also be referred to as first information.
- word “if” used can be interpreted as "when” or “when” or "in response to certainty”.
- An encoding and decoding method is proposed in an embodiment of the present application, and the encoding and decoding method may involve the following concepts:
- Motion Vector In inter-frame coding, a motion vector is used to represent the relative displacement between the current image block of the current frame video image and the reference image block of the reference frame video image. For example, the video image A of the current frame and the video image B of the reference frame have a strong temporal correlation.
- the motion search can be performed in the video image B. Find the image block B1 (reference image block) that best matches the image block A1, and determine the relative displacement between the image block A1 and the image block B1, and the relative displacement is the motion vector of the image block A1.
- the motion vector of each image block is encoded and transmitted independently, especially when the image is divided into a large number of image blocks of small size, it consumes a lot of bits.
- the spatial correlation between adjacent image blocks can be used to predict the motion vector of the current image block to be encoded according to the motion vector of the adjacent encoded image block, and then the prediction difference Encoding, which can effectively reduce the number of bits representing the motion vector.
- the "prediction difference” here refers to the difference between the predicted value of the motion vector and the real estimate.
- the motion vector of the adjacent encoded image block may be used to predict the motion vector of the current macroblock, and then the prediction value of the motion vector (MVP, Motion Vector Prediction The difference (MVD, Motion Vector Difference) between) and the true estimation of the motion vector is encoded, thereby effectively reducing the number of coding bits of the motion vector.
- Motion Information Since the motion vector represents the position offset between the current image block and a reference image block, in order to accurately obtain the information pointing to the image block, in addition to the motion vector, the index information of the reference frame image is also needed to indicate which one to use Reference frame image.
- a reference frame image list can usually be established, and the reference frame index indicates which reference frame image in the reference frame image list is used by the current image block.
- Many coding technologies also support multiple reference frame image lists. Therefore, an index value can also be used to indicate which reference frame image list is used, and this index value can be called a reference direction.
- motion-related information such as motion vector, reference frame index, and reference direction can be collectively referred to as motion information.
- Rate-Distortion Optimized There are two major indicators for evaluating coding efficiency: code rate and PSNR (Peak Signal to Noise Ratio). The smaller the bit flow per unit time, the greater the compression rate. The larger the PSNR, the better the quality of the reconstructed image. When selecting the prediction mode, a discriminant formula for comprehensive evaluation of the two indicators can be used.
- D represents Distortion, which can usually be measured by the SSE index, which refers to the difference between the reconstructed image block and the source image
- the mean square sum of values ⁇ is the Lagrangian multiplier
- R is the actual number of bits required for image block coding in this mode, including the sum of bits required for coding mode information, motion information, residuals, etc.
- Intra prediction refers to predicting the pixels of the current image block by using the reconstructed pixel values of the spatially adjacent image blocks of the current image block (that is, in the same frame of image as the current image block).
- Inter prediction refers to predicting the pixels of the current image block by using the reconstructed pixel values of the temporally adjacent image blocks of the current image block (in a different frame of image from the current image block).
- Inter-frame prediction uses the temporal correlation of the video. Because the video sequence contains strong temporal correlation, the pixels of the adjacent encoded image are used to predict the pixels of the current image to effectively remove the video temporal redundancy.
- CTU Coding Tree Unit
- FIG. 1 is a schematic diagram of a video coding framework.
- the video coding framework can be used to implement the coding end processing flow of the embodiment of the present application.
- the schematic diagram of the video decoding framework is similar to Figure 1 and will not be repeated here.
- the video decoding framework can be used Realize the decoding end processing flow of the embodiment of this application.
- an intra prediction unit 101 in the video coding framework and the video decoding framework, an intra prediction unit 101, motion estimation/motion compensation 102, reference image buffer 103, in-loop filtering 104, reconstruction 105, transformation 106, quantization 107, inverse Transform 108, inverse quantization 109, entropy encoder 110 and other modules.
- the encoding end processing flow can be realized, and at the decoding end, through the cooperation between these modules, the decoding end processing flow can be realized.
- a CTU Coding Tree Unit
- CU Coding Unit, coding unit
- PU Prediction Unit
- Unit prediction unit
- the CU may be further divided into multiple TUs (Transform Units) using a quad tree.
- VVC Very Video Coding, general video coding
- the division structure of binary tree/trinomial tree/quaternary tree is mixed, that is, the distinction between the concepts of CU, PU, and TU is cancelled.
- the CU can be divided into a square or a rectangle.
- the CTU first divides the quad tree, and then the leaf nodes of the quad tree divide the binary tree and the tri tree.
- the CU can have five types of partitions, namely, quadtree partition, horizontal binary tree partition, vertical binary tree partition, horizontal ternary tree partition, and vertical ternary tree partition.
- the CU division in the CTU can be any combination of the above five division types.
- the motion information of the current image block is completely multiplexed with the motion information of an adjacent block in the time domain or the space domain. That is, from the motion information sets of multiple image blocks around the current image block, one motion information is selected as the motion information of the current image block. Therefore, in the Merge mode, only the index value indicating which motion information in the motion information set is used by the current image block needs to be encoded, thereby saving encoding overhead.
- AMVP mode is similar to Merge mode. Both spatial and temporal motion information prediction ideas are used. The candidate motion information list is established and the optimal rate-distortion cost is selected. One of the candidates is used as the motion information of the current image block.
- the difference between AMVP mode and Merge mode is reflected in the following: In Merge mode, the MV of the current prediction unit is directly predicted by adjacent prediction units in the spatial or temporal domain. There is no Motion Vector Difference (MVD), while AMVP can Seen as MV prediction technology, the encoder only needs to encode the difference between the actual MV and the predicted MV, so MVD exists. The length of the MV queue of the two candidates is different, and the way of constructing the MV list is also different.
- MVD Motion Vector Difference
- a candidate list is established for the current prediction unit, and there are 5 candidate MVs (and their corresponding reference frame information) in the candidate list. By traversing these 5 candidate MVs and calculating the rate-distortion cost, the candidate MV with the smallest rate-distortion cost is finally selected as the best MV. If the encoding end and the decoding end construct the candidate list in the same way, the encoding end only needs to transmit the index of the optimal MV in the candidate list. In this way, the number of coding bits of the motion information can be greatly saved.
- the candidate list established in the Merge mode includes both the spatial domain and the time domain. For B Slice, it also contains the method of combining the list. The following describes the spatial candidate list, the time domain candidate list, and the combined list.
- the spatial candidate list provides a maximum of 4 candidate MVs, that is, the motion information of the 4 candidate blocks using the above 5 candidate blocks at most.
- the spatial candidate list is established in the order of A1-B1-B0-A0-(B2) , Where B2 is a substitute.
- the time domain candidate list provides at most one candidate MV, which is obtained by scaling the MV of the co-located prediction unit at position H in FIG. 3B. If the H position is not available, the co-located PU at C3 is used for replacement. It should be noted that if the number of candidate MVs in the current candidate list does not reach 5, the default motion information (such as motion information (0, 0), etc.) needs to be filled to reach the specified number.
- the creation of a combination list For the prediction unit in B Slice, since there are two MVs, its candidate list also needs to provide two prediction MVs. According to the HEVC standard, the first 4 candidate MVs in the MV candidate list are combined in pairs to generate a combined list of B slices.
- the establishment of the candidate list of the AMVP mode uses the correlation of the motion vectors in the spatial and temporal domains to establish a candidate list for the current prediction unit.
- the encoding end selects the optimal MV from the candidate list and differentially encodes the MV.
- the decoding end establishes the same candidate list, and only needs the motion vector residual (MVD) and the index value of the predicted MV in the candidate list.
- the MV of the current prediction unit can be calculated.
- one candidate MV is generated on the left and above of the current prediction unit.
- the selection order on the left is A0-A1-scaled A0-scaled A1
- the selection order above is B0-B1-B2(scaled B0- scaled B1-scaled B2).
- the MV scaling can only be performed when the left two PUs are unavailable or both are intra prediction modes.
- the MV is used as the candidate MV of the current prediction unit, and the remaining steps are not performed. At most one candidate among A0, A1, scaled A0, and scaled A1, and at most one candidate among B0, B1, B2, scaled B0, scaled B1, and scaled B2.
- the candidate MV can be marked as "available"; otherwise, the candidate MV needs to be scaled accordingly.
- the establishment of the time domain candidate list is the same as that of Merge's time domain candidate list. When there are less than two candidates in the airspace and time domain, use (0,0) to complete.
- the current coding unit has only one motion information, that is, all sub-blocks in the current coding unit share one Sports information.
- the current coding unit has only one motion information, and the prediction accuracy is not very high.
- region C, region G, and region H are regions in the current coding unit, not sub-image blocks divided in the current coding unit. Assuming that the current coding unit uses the motion information of the image block F, each area in the current coding unit uses the motion information of the image block F.
- the area H in the current coding unit is far away from the image block F, if the area H also uses the motion information of the image block F, the prediction accuracy of the motion information of the area H is not very high.
- sub-image block C is sub-image block G, sub-image block H, and sub-image block I are sub-image blocks divided in the current coding unit. Since the current coding unit is divided into multiple sub-image blocks, each sub-image block in the current coding unit can use motion information separately. However, since the current coding unit is divided by the division method shown in FIG. 2A or FIG. 2B, additional bits need to be consumed to transmit the division method, which brings a certain bit overhead.
- sub-image block I in the current coding unit can only use the motion information of sub-image block C, sub-image block G, and sub-image block H, but cannot use image block A, image block B, image block F, image block D.
- an encoding and decoding method is proposed in the embodiment of the present application.
- On the basis of not dividing the current image block that is, without increasing the overhead caused by sub-block division, it can make the current image block correspond to multiple Motion information, thereby improving the prediction accuracy of the motion information of the current image block. Since the current image block is not divided, it is possible to avoid consuming extra bits to transmit the division mode, saving this part of bit overhead.
- For each area of the current image block (note that here is any area in the current image block, the size of this area is smaller than the size of the current image block, not the sub-image block obtained by dividing the current image block), you can use
- the encoded motion information around the current image block is used to obtain the motion information of each area of the current image block. In other words, different regions of the current image block can correspond to the same or different motion information, and the current image block may have multiple different motion information, so as to provide more motion information for the region inside the coding unit and improve the performance of the motion information. Accuracy.
- C is a sub-region within the current image block (that is, the current coding unit)
- A, B, D, E, and F are coded blocks around the current image block
- the motion information of the current sub-region C can be
- the angle prediction method is used to obtain directly, and other sub-regions (such as G, H, etc.) within the current coding unit are also obtained using the same method. In this way, for the current coding unit, without performing block division on the current coding unit, different motion information can be obtained, saving a part of the bit overhead of block division.
- the current image block in the embodiment of the present application (hereinafter referred to as the current block for short) is any image unit in the encoding and decoding process, and encoding and decoding processing is performed in the unit of the current block, such as the CU in the foregoing embodiment.
- the current block includes 9 regions (hereinafter referred to as subregions in the current block), such as subregion f1-subregion f9, these are subregions in the current block, not after dividing the current block Sub-image block.
- sub-region f1-sub-region f9 can correspond to the same or different motion information. Therefore, without dividing the current block, the current block can also correspond to multiple motion information, such as sub-region f1 Corresponding to motion information 1, sub-region f2 corresponds to motion information 2, and so on.
- the motion information of image block A1, image block A2, image block A3, image block E, image block B1, image block B2, and image block B3 can be used, that is, the current The motion information of the coded blocks around the block, thereby providing more motion information for the sub-region f5.
- the motion information of image block A1, image block A2, image block A3, image block E, image block B1, image block B2, and image block B3 can also be used.
- Embodiment 1 Refer to FIG. 4, which is a schematic flowchart of the coding and decoding method in the embodiment of this application. The method can be applied to the decoding end or the coding end, and the method may include the following steps.
- Step 401 Obtain at least one motion information angle prediction mode of the current block.
- the motion information angle prediction mode is used to indicate a pre-configured angle, and according to the pre-configured angle, a surrounding matching block is selected from surrounding blocks of the current block for a sub-region of the current block, and determined according to the motion information of the surrounding matching block One or more motion information of the current block. That is, for each sub-region of the current block, the motion information of the sub-region is determined according to the motion information of the surrounding matching blocks.
- the peripheral matching block is a block at a specified position determined from the peripheral blocks according to the pre-configured angle.
- the surrounding blocks include blocks adjacent to the current block; or, the surrounding blocks include blocks adjacent to the current block and non-adjacent blocks.
- the surrounding blocks may also include other blocks, which is not limited.
- the motion information angle prediction mode may include but is not limited to one or any combination of the following: horizontal prediction mode, vertical prediction mode, horizontal upward prediction mode, horizontal downward prediction mode, and vertical right prediction mode.
- the motion information angle prediction mode is related to the pre-configured angle.
- the pre-configured angle can also be 10 degrees or 20 degrees. Wait.
- FIG. 5A it is a schematic diagram of a horizontal prediction mode, a vertical prediction mode, a horizontal upward prediction mode, a horizontal downward prediction mode, and a vertical right prediction mode. Different motion information angle prediction modes correspond to different pre-configured angles.
- Step 402 For each motion information angle prediction mode, based on the pre-configured angle of the motion information angle prediction mode, select multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block.
- Step 403 If the motion information of the multiple surrounding matching blocks pointed to by the pre-configured angle is not completely the same, add the motion information angle prediction mode to the motion information prediction mode candidate list of the current block.
- the motion information prediction mode candidate list may also include other types of motion information prediction modes.
- the surrounding matching blocks pointed to by the pre-configured angle are selected from the surrounding blocks of the current block, such as surrounding matching block A1, surrounding matching block A2 and surrounding matching block A3. If the motion information of the surrounding matching block A1, the surrounding matching block A2, and the surrounding matching block A3 are not completely the same, the horizontal prediction mode is added to the motion information prediction mode candidate list. If the motion information of the surrounding matching block A1, the surrounding matching block A2, and the surrounding matching block A3 are completely the same, the horizontal prediction mode is prohibited from being added to the motion information prediction mode candidate list.
- At least one first surrounding matching block may be selected from the plurality of surrounding matching blocks. For each first surrounding matching block, select the second surrounding matching block corresponding to the first surrounding matching block from the plurality of surrounding matching blocks, that is, the second surrounding matching block whose motion information is to be compared with the first surrounding matching block Piece.
- the motion information of the first surrounding matching block is different from the motion information of the second surrounding matching block, it is determined that the comparison result of the first surrounding matching block is different in motion information; if the motion information of the first surrounding matching block is different from the second surrounding matching block If the motion information is the same, it is determined that the comparison result of the first surrounding matching block is that the motion information is the same. Then, if the comparison result of any first surrounding matching block is that the motion information is different, it is determined that the motion information of the multiple surrounding matching blocks is not completely the same; if the comparison result of all the first surrounding matching blocks is the same as the motion information, it is determined The motion information of multiple surrounding matching blocks is completely the same.
- selecting at least one first surrounding matching block from the plurality of surrounding matching blocks may include but is not limited to: taking any one or more of the plurality of surrounding matching blocks as the first surrounding matching block; Alternatively, one or more of the designated peripheral matching blocks are used as the first peripheral matching block.
- selecting the second surrounding matching block corresponding to the first surrounding matching block from the plurality of surrounding matching blocks may include but is not limited to: according to the traversal step and the position of the first surrounding matching block, The second surrounding matching block corresponding to the first surrounding matching block is selected from the surrounding matching blocks; wherein the traversal step may be the block interval between the first surrounding matching block and the second surrounding matching block.
- the surrounding matching block A1 corresponds to The second surrounding matching block is the surrounding matching block A3. Based on this, if the motion information of the surrounding matching block A1 is different from the motion information of the surrounding matching block A3, it can be determined that the comparison result of the surrounding matching block A1 is that the motion information is different; if the motion information of the surrounding matching block A1 is different from that of the surrounding matching block A3 If the motion information is the same, it is determined that the comparison result of the surrounding matching blocks A1 is the same.
- the surrounding matching block A1 the surrounding matching block A2, and the surrounding matching block A3 arranged in order, assuming that the surrounding matching block A1 and the surrounding matching block A2 are used as the first surrounding matching blocks, and the traversal step is 1, then
- the second surrounding matching block corresponding to the surrounding matching block A1 is the surrounding matching block A2, and the second surrounding matching block corresponding to the surrounding matching block A2 is the surrounding matching block A3.
- the motion information of the surrounding matching block A1 is different from the motion information of the surrounding matching block A2, it can be determined that the comparison result of the surrounding matching block A1 is that the motion information is different; if the motion information of the surrounding matching block A1 is different from that of the surrounding matching block A2 If the motion information is the same, it is determined that the comparison result of the surrounding matching blocks A1 is the same.
- the motion information of the surrounding matching block A2 is different from the motion information of the surrounding matching block A3, it can be determined that the comparison result of the surrounding matching block A2 is different in motion information; if the motion information of the surrounding matching block A2 is the same as the motion information of the surrounding matching block A3 , It is determined that the comparison result of the surrounding matching block A2 is the same as the motion information.
- the traversal step length may also be determined based on the size of the current block. The number of comparisons of motion information is controlled by the traversal step length.
- the current block corresponds to 4 surrounding matching blocks, which are the first surrounding matching block and the second in order.
- the traversal step size can be 2 or 3. If the traversal step is 2, the first surrounding matching block is the first surrounding matching block, and the second surrounding matching block is the third surrounding matching block Matching block; or, the first surrounding matching block is the second surrounding matching block, and the second surrounding matching block is the fourth surrounding matching block.
- the first surrounding matching block is the first surrounding matching block
- the second surrounding matching block is the fourth surrounding matching block.
- the traversal step size can be 1, the first surrounding matching block is the first surrounding matching block and the third surrounding matching block, and the first surrounding matching block corresponds to the second The surrounding matching block is the second surrounding matching block, and the second surrounding matching block corresponding to the third surrounding matching block is the fourth surrounding matching block.
- the above is only an example for the horizontal prediction mode, and other methods can also be used to determine the traversal step length, which is not limited.
- other motion information angle prediction modes other than the horizontal prediction mode, refer to the horizontal prediction mode for the method of determining the traversal step size, and the details are not repeated here.
- Step 404 Encode or decode the current block according to the motion information prediction mode candidate list.
- the current block is encoded according to the motion information prediction mode candidate list.
- the current block is decoded according to the motion information prediction mode candidate list.
- the current block does not need to be divided, and the division information of the sub-region of the current block can be determined based on the motion information angle prediction mode, which can effectively solve the bit overhead caused by the sub-block division.
- motion information is provided for each sub-region of the current block, and different sub-regions of the current block can correspond to the same or different motion information, thereby improving the coding performance. , It solves the problem of transmitting a large amount of motion information and can save a lot of coding bit overhead.
- the motion information angle prediction mode with only a single motion information is removed, and the motion information angle prediction in the motion information prediction mode candidate list is reduced.
- the number of modes reduces the number of bits for encoding multiple motion information, and further improves the encoding performance.
- FIG. 5B is a schematic diagram of a horizontal prediction mode, a vertical prediction mode, a horizontal upward prediction mode, a horizontal downward prediction mode, and a vertical right prediction mode.
- some motion information angle prediction modes will make the motion information of each sub-region within the current block the same, for example, horizontal prediction mode, vertical prediction mode, horizontal upward prediction mode, such motion information angle prediction mode Need to be eliminated.
- Some motion information angle prediction modes will make the motion information of each sub-region within the current block different, such as horizontal downward prediction mode and vertical right prediction mode. Such motion information angle prediction modes need to be retained and can be added to the motion Information prediction mode candidate list.
- the horizontal prediction mode, vertical prediction mode, horizontal upward prediction mode, horizontal downward prediction mode, and vertical right prediction mode are all added to the motion information prediction mode candidate list, when coding the index of the horizontal downward prediction mode. Since there are horizontal prediction modes, vertical prediction modes, and horizontal upward prediction modes (the order of each motion information angle prediction mode is not fixed, this is just an example), it may need to be coded 0001 to represent. However, in the embodiment of the present application, only the horizontal downward prediction mode and the vertical right prediction mode are added to the motion information prediction mode candidate list, and the horizontal prediction mode, vertical prediction mode, and horizontal upward prediction mode are prohibited from being added to the motion information.
- the prediction mode candidate list that is, the horizontal prediction mode, the vertical prediction mode, and the horizontal upward prediction mode do not exist before the horizontal downward prediction mode. Therefore, when coding the index of the horizontal downward prediction mode, it may only need to be coded to represent it. To sum up, reduce the bit overhead caused by coding motion information angle prediction mode index information, save bit overhead while reducing hardware complexity, and avoid the low performance gain caused by the motion information angle prediction mode of a single motion information. Reduce the number of bits for encoding multiple motion information angle prediction modes.
- Embodiment 2 Based on the pre-configured angle of the motion information angle prediction mode, after selecting multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block, if there are uncoded and uncoded blocks in the multiple surrounding matching blocks / Or intra-frame coded block, the motion information of the uncoded block and/or intra-coded block is filled.
- the available motion information of the uncoded block and/or the adjacent block of the intra-coded block is filled with the motion information of the uncoded block and/or the intra-coded block; or, the uncoded block and/or the intra-coded block
- the available motion information of the corresponding reference block in the time domain reference frame is filled with the motion information of the uncoded block and/or intra-coded block; or the default motion information is filled with the uncoded block and/or intra-coded block Sports information.
- the time domain reference frame is the adjacent coded frame of the current frame in the time domain.
- the available motion information of the adjacent block of the uncoded block may be filled with the motion information of the uncoded block; or, the uncoded block may be The available motion information of the corresponding reference block in the time domain reference frame is filled with the motion information of the uncoded block; or, the default motion information may be filled with the motion information of the uncoded block.
- the available motion information of the neighboring block of the intra-coded block may be filled with the motion information of the intra-coded block; or, the intra-frame may be The available motion information of the corresponding reference block of the coding block in the time domain reference frame is filled with the motion information of the intra-coding block; or, the default motion information can be filled with the motion information of the intra-coding block.
- the available motion information of adjacent blocks of the uncoded block is filled with the motion information of the uncoded block;
- the available motion information of the neighboring blocks of the coding block is filled with the motion information of the intra-coding block, or the available motion information of the corresponding reference block of the intra-coding block in the time domain reference frame is filled with the intra-coding
- the motion information of the block or the default motion information is filled with the motion information of the intra-coded block.
- the default motion information is filled with the motion information of the uncoded block; the available motion information of the neighboring blocks of the intra-coded block is filled with the motion information of the intra-coded block, or the intra-coded block is referenced in the time domain
- the available motion information of the corresponding reference block in the frame is filled with the motion information of the intra-coded block, or the default motion information is filled with the motion information of the intra-coded block.
- Embodiment 3 When encoding or decoding the current block according to the motion information prediction mode candidate list, select the target motion information prediction mode of the current block from the motion information prediction mode candidate list; if the target motion information prediction mode is the target motion information angle prediction Mode, the motion information of the current block is determined according to the target motion information angle prediction mode; the prediction value of the current block is determined according to the motion information of the current block.
- determining the motion information of the current block according to the target motion information angle prediction mode includes: based on the pre-configured angle corresponding to the target motion information angle prediction mode, selecting a plurality of pre-configured angle points from the surrounding blocks of the current block Surrounding matching blocks; dividing the current block into at least one sub-region; for each sub-region, a surrounding matching block corresponding to the sub-region can be selected from the plurality of surrounding matching blocks, and according to the motion information of the selected surrounding matching block Determine the motion information of the sub-area.
- determining the motion information of the current block according to the target motion information angle prediction mode includes: determining the selection condition of the current block for obtaining motion information and the current block according to the target motion information angle prediction mode and the size of the current block Sub-region division information, the selection condition is the first selection condition or the second selection condition, the first selection condition is that the motion information selected from the motion information of the surrounding matching blocks is not allowed to be bidirectional motion information, and the second selection condition is from the surrounding The motion information selected in the motion information of the matching block is allowed to be bidirectional motion information; based on the pre-configured angle corresponding to the angle prediction mode of the target motion information, select multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block; according to this Selection conditions, sub-region division information and motion information of multiple surrounding matching blocks determine the motion information of the current block.
- determining the motion information of the current block according to the target motion information angle prediction mode includes: according to the pre-configured angle corresponding to the target motion information angle prediction mode, selecting the peripheral matching pointed to by the pre-configured angle from the surrounding blocks of the current block Block; Determine the motion information of the current block according to the motion information of the surrounding matching block; if the width and height of the current block are greater than or equal to 8, then the current block is divided into sub-regions according to 8*8, and the motion of the block is matched from the surrounding
- the movement information selected in the information is allowed to be bidirectional movement information.
- Embodiment 4 Refer to the above embodiment, which involves filling the motion information of surrounding matching blocks (Embodiment 2), and using the motion information of surrounding matching blocks to determine the motion information angle prediction mode that needs to be added to the motion information prediction mode candidate list ( Embodiment 1), using the motion information angle prediction mode for motion compensation (Embodiment 3).
- embodiment 1 and embodiment 2 can be combined to fill in the motion information of surrounding matching blocks, and use the motion information of surrounding matching blocks to determine the motion information angle prediction mode that needs to be added to the motion information prediction mode candidate list .
- Embodiment 1 and Embodiment 3 using the motion information of surrounding matching blocks to determine the motion information angle prediction mode that needs to be added to the motion information prediction mode candidate list, and using the motion information angle prediction mode for motion compensation.
- Embodiment 1, Embodiment 2 and Embodiment 3 to fill in the motion information of surrounding matching blocks, and use the motion information of surrounding matching blocks to determine the motion information angle prediction mode that needs to be added to the motion information prediction mode candidate list , And use the motion information angle prediction mode for motion compensation.
- Embodiment 4 a combination of Embodiment 1, Embodiment 2 and Embodiment 3 is taken as an example to illustrate the implementation process of the encoding and decoding method.
- the implementation process of the encoding and decoding method combining Embodiment 1 and Embodiment 2 and combining Embodiment 1 and Embodiment 3 is similar to the implementation process of Embodiment 4, and will not be repeated here.
- FIG. 6 it is a schematic flowchart of the encoding and decoding method. The method can be applied to the encoding end, and the method may include the following steps.
- Step 601 The encoding end fills the motion information of the surrounding blocks of the current block.
- the available motion information of the neighboring blocks of the uncoded block is filled with the motion information of the uncoded block; or the corresponding uncoded block in the time domain reference frame
- the available motion information of the reference block is filled with the motion information of the uncoded block; or the default motion information is filled with the motion information of the uncoded block.
- the available motion information of the neighboring block of the intra-coded block as the motion information of the intra-coded block; or, place the intra-coded block in the time domain reference frame
- the available motion information of the corresponding reference block is filled with the motion information of the intra-coding block; or the default motion information is filled with the motion information of the intra-coding block.
- Step 602 The encoder creates a motion information prediction mode candidate list corresponding to the current block, and the motion information prediction mode candidate list may include the motion information angle prediction mode.
- the motion information prediction mode candidate list may also include other types of motion information prediction modes, and there is no limitation on this.
- the motion information angle prediction mode is used to indicate a pre-configured angle, and according to the pre-configured angle, a surrounding matching block is selected from surrounding blocks of the current block for a sub-region of the current block, and determined according to the motion information of the surrounding matching block
- One or more motion information of the current block, that is, for each sub-region of the current block, the motion information of the sub-region is determined according to the motion information of the surrounding matching blocks.
- the surrounding matching block is a block at a specified position determined from the surrounding blocks according to the pre-configured angle.
- the surrounding blocks include blocks adjacent to the current block; or, the surrounding blocks include blocks adjacent to the current block and non-adjacent blocks.
- the surrounding blocks may also include other blocks, which is not limited.
- the motion information angle prediction mode includes but is not limited to: a horizontal prediction mode, a vertical prediction mode, a horizontal upward prediction mode, a horizontal downward prediction mode, and a vertical right prediction mode.
- a horizontal prediction mode a vertical prediction mode
- a horizontal upward prediction mode a horizontal downward prediction mode
- a vertical right prediction mode a horizontal right prediction mode
- the encoder and decoder can use the same strategy to create the same candidate list of motion information prediction modes.
- a motion information prediction mode candidate list can be created for the current block, that is, all sub-regions in the current block can correspond to the same motion information prediction mode candidate list; or, multiple motion information prediction modes can be created for the current block Candidate list.
- Different current blocks for example, different blocks to be processed
- a motion information prediction mode candidate list is created for each current block as an example.
- the current block A corresponds to the motion information prediction mode candidate list 1
- the current block B corresponds to the motion information prediction mode candidate list 1, and so on.
- the motion information angle prediction mode in the embodiment of the present application may be an angle prediction mode for predicting motion information, that is, it is used in the inter-frame coding process instead of the intra-frame coding process, and the motion information angle prediction mode
- the mode selects matching blocks, not matching pixels.
- the procedure may include the following steps.
- Step a1 Obtain at least one motion information angle prediction mode of the current block.
- the following motion information angle prediction modes can be sequentially acquired: horizontal prediction mode, vertical prediction mode, horizontal upward prediction mode, horizontal downward prediction mode, and vertical right prediction mode.
- the pre-configured angle can be any angle between 0-360 degrees, and the horizontal direction from the center point of the sub-area to the right can be positioned at 0 degrees. In this way, any angle rotated counterclockwise from 0 degrees can be a pre-configured angle. Alternatively, the center point of the sub-region can be positioned at 0 degrees in other directions. In practical applications, the pre-configured angle can be a fractional angle, such as 22.5 degrees.
- Step a2 For each motion information angle prediction mode, based on the pre-configured angle of the motion information angle prediction mode, select multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block.
- Step a3 if the motion information of multiple surrounding matching blocks is not completely the same, add the motion information angle prediction mode to the motion information prediction mode candidate list. If the motion information of multiple surrounding matching blocks is completely the same, it is forbidden to add the motion information angle prediction mode to the motion information prediction mode candidate list.
- multiple surrounding matching blocks pointed to by the pre-configured angle are selected from all surrounding blocks of the current block according to the pre-configured angle of the horizontal prediction mode. Then, at least one first surrounding matching block (such as all or part of all surrounding matching blocks) is selected from the plurality of surrounding matching blocks.
- a second surrounding matching block corresponding to the first surrounding matching block is selected from the plurality of surrounding matching blocks, and the motion information of the first surrounding matching block is compared with the first surrounding matching block corresponding to the first surrounding matching block. Compare the motion information of the two surrounding matching blocks. If the motion information of the first surrounding matching block is different from the motion information of the second surrounding matching block corresponding to the first surrounding matching block, it is determined that the comparison result of the first surrounding matching block is that the motion information is different. If the motion information of the first surrounding matching block is the same as the motion information of the second surrounding matching block corresponding to the first surrounding matching block, it is determined that the comparison result of the first surrounding matching block is that the motion information is the same.
- the comparison result of any first surrounding matching block is that the motion information is different, it can be determined that the motion information of multiple surrounding matching blocks is not completely the same, and the horizontal prediction mode Added to the motion information prediction mode candidate list.
- the comparison operation of the motion information of the remaining first surrounding matching blocks may be stopped. If the comparison results of all the first surrounding matching blocks are the same in motion information, it can be determined that the motion information of multiple surrounding matching blocks are completely the same, and adding the horizontal prediction mode to the motion information prediction mode candidate list is prohibited.
- the processing procedure is referred to the processing procedure of the horizontal prediction mode, which will not be repeated here.
- the motion information angle prediction mode may be added to the motion information prediction mode candidate list, or the motion information angle prediction mode may not be added to the motion information prediction mode candidate list.
- the horizontal prediction mode, vertical prediction mode, and horizontal upward prediction mode will make the motion information of each sub-region in the current block the same
- the horizontal downward prediction mode and the vertical right prediction mode are added to the motion information prediction The mode candidate list, without adding the horizontal prediction mode, vertical prediction mode, and horizontal upward prediction mode to the motion information prediction mode candidate list.
- a motion information prediction mode candidate list can be created, and the motion information prediction mode candidate list includes a horizontal downward prediction mode and a vertical right prediction mode.
- the candidate list of motion information prediction modes may also include other types of motion information prediction modes, which are not limited.
- Step 603 The encoding end selects the target motion information prediction mode of the current block from the motion information prediction mode candidate list.
- the target motion information prediction mode can be the target motion information angle prediction mode, or other types of motion information prediction modes (ie traditional Way of motion information prediction mode).
- the candidate list of motion information prediction modes includes: a horizontal downward prediction mode, a vertical right prediction mode, and other types of motion information prediction modes R (obtained in a traditional way).
- the pre-configured angle of the horizontal downward prediction mode For the horizontal downward prediction mode, according to the pre-configured angle of the horizontal downward prediction mode, multiple surrounding matching blocks pointed to by the pre-configured angle are selected from all surrounding blocks of the current block. Determine the rate-distortion cost A corresponding to the horizontal downward prediction mode according to the multiple motion information corresponding to the multiple surrounding matching blocks.
- the rate distortion principle can be used to determine the rate distortion cost A corresponding to the horizontal downward prediction mode.
- D stands for Distortion, which can usually be measured by the SSE (Sum of Squared Error) index.
- SSE refers to the sum of the mean squares of the difference between the reconstructed image block and the source image; ⁇ is the Lagrangian product Sub, R is the actual number of bits required for image block coding in this mode, including the sum of bits required for coding mode information, motion information, residuals, etc., and there is no restriction on the determination method.
- the rate distortion cost corresponding to the vertical right prediction mode can be determined.
- the specific determination method refer to the determination method of the horizontal downward prediction mode.
- the vertical right prediction mode corresponds to the rate distortion cost B.
- the rate-distortion principle can be used to determine the rate-distortion cost corresponding to the motion information prediction mode R, and there is no restriction on the determination method.
- the motion information prediction mode R corresponds to the rate-distortion cost C.
- the minimum rate distortion cost is determined from the rate distortion cost A, the rate distortion cost B, and the rate distortion cost C, and the motion information prediction mode corresponding to the minimum rate distortion cost is determined as the target motion information prediction mode. For example, when the rate distortion cost A is the smallest, the target motion information prediction mode is the horizontal downward prediction mode.
- Step 604 If the target motion information prediction mode is the target motion information angle prediction mode, the encoding end encodes the current block according to the target motion information angle prediction mode.
- the encoder may determine the motion information of each sub-region in the current block according to the target motion information angle prediction mode, and use the motion information of each sub-region to perform motion compensation on the sub-region.
- encoding the current block according to the target motion information angle prediction mode may include: determining the motion information of the current block according to the target motion information angle prediction mode; determining the prediction value of the current block according to the motion information of the current block , This process is also the process of motion compensation.
- the determination of the motion information of the current block according to the target motion information angle prediction mode may include the following manners.
- Manner 1 The process of determining the motion information of the current block may include the following steps.
- Step b1 determine the selection condition of the current block for acquiring motion information.
- the selection condition may be a first selection condition or a second selection condition.
- the first selection condition can be: the motion information selected from the motion information of the surrounding matching blocks is not allowed to be bidirectional motion information (that is, unidirectional motion information is allowed, or forward motion information in bidirectional motion information, or forward motion information in bidirectional motion information). Backward movement information).
- the second selection condition can be: the motion information selected from the motion information of the surrounding matching blocks is allowed to be bidirectional motion information (that is, unidirectional motion information, forward motion information in bidirectional motion information, and backward motion in bidirectional motion information are allowed information).
- the width is greater than or equal to the preset size parameter (which can be configured according to experience, such as 8), and the height is greater than or equal to the preset size parameter, for any motion information angle prediction mode, determine all The selection condition is the second selection condition. If the size of the current block satisfies: the width is less than the preset size parameter, and the height is greater than the preset size parameter, when the target motion information angle prediction mode is the vertical prediction mode, the selection condition is determined to be the second selection condition; When the information angle prediction mode is a prediction mode other than the vertical prediction mode, it is determined that the selection condition is the first selection condition.
- the preset size parameter for width and the preset size parameter for height may also be different.
- the selection condition is the second selection condition
- the target motion information angle prediction mode is a prediction mode other than the horizontal prediction mode
- the selection condition is the first selection condition. If the size of the current block satisfies: the height is less than the preset size parameter, and the width is less than the preset size parameter, for any motion information angle prediction mode, the selection condition is determined to be the first selection condition.
- the selection condition is the first selection condition.
- Step b2 Determine the sub-region division information of the current block according to the target motion information angle prediction mode and the size of the current block, where the sub-region division information indicates the manner of dividing the current block into sub-regions.
- the target motion information angle prediction mode is the horizontal upward prediction mode, the horizontal downward prediction mode, or the vertical right prediction mode
- the width of the current block is greater than or equal to the preset size parameter
- the height of the current block is greater than or equal to The preset size parameter
- the size of the sub-region is 8*8; if the width of the current block is smaller than the preset size parameter, or the height of the current block is smaller than the preset size parameter, the size of the sub-region is 4*4 .
- the target motion information angle prediction mode is the horizontal prediction mode
- the size of the sub-region is the width of the current block*4; if the width of the current block is equal to the preset size parameter, And the height of the current block is greater than or equal to the preset size parameter, the size of the sub-region is 8*8; if the width of the current block is less than the preset size parameter, and the height of the current block is greater than the preset size parameter, then the subregion The size of the area is 4*4.
- the target motion information angle prediction mode is the vertical prediction mode
- the size of the sub-region is 4*the height of the current block; if the height of the current block is equal to the preset size parameter, and If the width of the current block is greater than or equal to the preset size parameter, the size of the subregion is 8*8; if the height of the current block is less than the preset size parameter, and the height of the current block is greater than the preset size parameter, then the subregion The size is 4*4.
- the preset size parameter is 8 as an example for description.
- the size of the current block, the motion information angle prediction mode, the size of the sub-region, and the direction of the sub-region one-way indicates the first selection condition, that is, two-way motion information is not allowed, and two-way indicates the second selection condition, namely Allowed is two-way motion information
- one-way indicates the first selection condition, that is, two-way motion information is not allowed
- two-way indicates the second selection condition, namely Allowed is two-way motion information
- the target motion information angle prediction mode when the target motion information angle prediction mode is the horizontal prediction mode, if the width*height of the current block is less than or equal to 32, the size of the sub-region may also be 4*4.
- the target motion information angle prediction mode is the vertical prediction mode, if the width*height of the current block is less than or equal to 32, the size of the sub-region can also be 4*4.
- Step b3 Based on the pre-configured angle corresponding to the target motion information angle prediction mode, the encoding end selects multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block.
- the prediction mode corresponding to the motion information angle prediction mode can be obtained.
- Configuration angle After the pre-configured angle is known, the peripheral matching block pointed to by the pre-configured angle can be selected from the peripheral blocks of the current block, and there is no restriction on this.
- Step b4 Determine the motion information of the current block according to the selection condition, the sub-region division information and the motion information of multiple surrounding matching blocks.
- the current block is divided into at least one sub-region according to the sub-region division information; for each sub-region of the current block, the target motion information angle prediction mode can be selected from the surrounding matching blocks of the current block corresponding to the sub-region.
- the current block is divided into subregion 1 and subregion 2 according to the subregion division information.
- the surrounding matching block 1 corresponding to the sub-region 1 is selected from the surrounding matching blocks of the current block according to the target motion information angle prediction mode.
- the surrounding matching block 1 stores two-way motion information (that is, forward motion information and backward motion information)
- the selection condition of the subregion 1 is the first selection condition
- the motion information is used as the motion information of sub-region 1.
- the selection condition of subarea 1 is the second selection condition
- the bidirectional motion information that is, forward motion information and backward motion information
- the surrounding matching block 2 corresponding to the sub-region 2 is selected from the surrounding matching blocks of the current block according to the target motion information angle prediction mode. Assuming that the surrounding matching block 2 stores unidirectional motion information, the unidirectional motion information corresponding to the surrounding matching block 2 is taken as the motion information of the sub-region 2. Then, both the motion information of the sub-region 1 and the motion information of the sub-region 2 are determined as the motion information of the current block.
- the motion information of the sub-region 1 and the motion information of the sub-region 2 may be stored in a size of 4*4, for example.
- the process of determining the motion information of the current block may include the following steps.
- Step c1 According to the pre-configured angle corresponding to the target motion information angle prediction mode, the encoder selects the peripheral matching block pointed to by the pre-configured angle from the peripheral blocks of the current block.
- the prediction mode corresponding to the motion information angle prediction mode can be obtained.
- Configuration angle After the pre-configured angle is known, the peripheral matching block pointed to by the pre-configured angle can be selected from the peripheral blocks of the current block, and there is no restriction on this.
- Step c2 Determine the motion information of the current block according to the motion information of the surrounding matching blocks.
- the current block is divided into sub-regions according to 8*8, and the motion information selected from the motion information of the surrounding matching blocks is allowed to be bidirectional motion information.
- the current block is divided into at least one sub-areas in an 8*8 manner. For each subregion of the current block, determine the motion information of the subregion according to the motion information of the surrounding matching block corresponding to the subregion.
- the motion information of the surrounding matching block is allowed to be bidirectional motion information (that is, unidirectional motion information and bidirectional motion information are allowed Forward motion information in the, backward motion information in the two-way motion information).
- the motion information of at least one subregion is determined as the motion information of the current block.
- the process of determining the motion information of the current block may include the following steps.
- Step d1 Determine the selection condition for acquiring motion information of the current block according to the size of the current block; the selection condition is a second selection condition, and the second selection condition is that the motion information selected from the motion information of the surrounding matching blocks is allowed to be Two-way motion information (allow one-way motion information, forward motion information in two-way motion information, and backward motion information in two-way motion information).
- the size of the current block satisfies: the width is greater than or equal to the preset size parameter (configured according to experience, such as 8), and the height is greater than or equal to the preset size parameter, then the selection condition is determined to be the second selection condition, and the target motion The information angle prediction mode is irrelevant.
- Step d2 Determine the sub-region division information of the current block according to the size of the current block. For example, if the size of the current block satisfies: the width is greater than or equal to the preset size parameter (configured according to experience, such as 8), and the height is greater than or equal to the preset size parameter, then the size of the sub-region is 8*8, and the target motion The information angle prediction mode is irrelevant.
- the preset size parameter configured according to experience, such as 8
- the height is greater than or equal to the preset size parameter
- Step d3 According to the pre-configured angle corresponding to the target motion information angle prediction mode, a peripheral matching block pointed to by the pre-configured angle is selected from the peripheral blocks of the current block. For example, after the pre-configured angle is known, the peripheral matching block pointed to by the pre-configured angle can be selected from the peripheral blocks of the current block, and there is no restriction on this.
- Step d4 Determine the motion information of the current block according to the selection condition, the subregion division information and the motion information of the surrounding matching block.
- the encoder can divide the current block into at least one sub-region according to the sub-region division information; for each sub-region of the current block, select the corresponding sub-region from the surrounding matching blocks of the current block according to the target motion information angle prediction mode And determine the motion information of the subregion according to the motion information of the surrounding matching block corresponding to the subregion and the selection condition. Then, the motion information of at least one subregion can be determined as the motion information of the current block.
- the process of determining the motion information of the current block may include the following steps.
- Step e1 Based on the pre-configured angle corresponding to the target motion information angle prediction mode, the encoding end selects multiple surrounding matching blocks pointed to by the pre-configured angle from the surrounding blocks of the current block.
- the prediction mode corresponding to the motion information angle prediction mode can be obtained.
- Configuration angle After the pre-configured angle is known, the peripheral matching block pointed to by the pre-configured angle can be selected from the peripheral blocks of the current block, and there is no restriction on this.
- Step e2 The encoding end divides the current block into at least one sub-areas, and there is no restriction on the division method.
- Step e3 For each sub-region, the encoding end selects a surrounding matching block corresponding to the sub-region from a plurality of surrounding matching blocks, and determines the motion information of the sub-region according to the motion information of the selected surrounding matching block.
- a surrounding matching block corresponding to the sub-region is selected from a plurality of surrounding matching blocks, and the motion information of the surrounding matching block is determined as the motion information of the sub-region.
- Step e4 Determine the motion information of the at least one subregion as the motion information of the current block.
- Embodiment 5 Based on the same application concept as the above method, referring to FIG. 7, which is a schematic flowchart of the coding and decoding method according to an embodiment of this application, the method can be applied to the decoding end, and the method can include the following steps.
- Step 701 The decoding end fills the motion information of the surrounding blocks of the current block.
- Step 702 The decoding end creates a motion information prediction mode candidate list corresponding to the current block.
- the motion information prediction mode candidate list may include the motion information angle prediction mode.
- the motion information prediction mode candidate list may also include other types of motion information prediction modes, and there is no limitation on this.
- the motion information prediction mode candidate list at the decoding end is the same as the motion information prediction mode candidate list at the encoding end, that is, the order of the motion information prediction modes of the two is exactly the same.
- step 701-step 702 refer to step 601-step 602, which will not be repeated here.
- Step 703 The decoding end selects the target motion information prediction mode of the current block from the motion information prediction mode candidate list.
- the target motion information prediction mode can be the target motion information angle prediction mode, or other types of motion information prediction modes (ie, traditional Way of motion information prediction mode).
- the procedure may include the following steps:
- Step f1 The decoding end obtains indication information from the encoded bit stream, where the indication information is used to indicate the index information of the target motion information prediction mode in the motion information prediction mode candidate list.
- the encoded bit stream carries indication information
- the indication information is used to indicate index information of the target motion information prediction mode in the motion information prediction mode candidate list.
- the motion information prediction mode candidate list sequentially includes: horizontal downward prediction mode, vertical right prediction mode, and motion information prediction mode R, and the indication information is used to indicate index information 1, and index information 1 indicates the motion information prediction mode candidate list The first motion information prediction mode.
- Step f2 The decoding end selects the motion information prediction mode corresponding to the index information from the motion information prediction mode candidate list, and determines the selected motion information prediction mode as the target motion information prediction mode of the current block. For example, when the indication information is used to indicate index information 1, the decoder can determine the first motion information prediction mode in the motion information prediction mode candidate list as the target motion information prediction mode of the current block, that is, the target The motion information prediction mode is a horizontal downward prediction mode.
- Step 704 If the target motion information prediction mode is the target motion information angle prediction mode, the decoding end decodes the current block according to the target motion information angle prediction mode.
- the decoding end may determine the motion information of each subregion in the current block according to the target motion information angle prediction mode, and use the motion information of each subregion to perform motion compensation on the subregion.
- decoding the current block according to the target motion information angle prediction mode may include: determining the motion information of the current block according to the target motion information angle prediction mode; determining the prediction value of the current block according to the motion information of the current block , This process is also the process of motion compensation.
- step 704 For the implementation process of step 704, refer to step 604, which will not be repeated here.
- Embodiment 6 For step 601 and step 701, it is necessary to fill in the motion information of the surrounding blocks of the current block. If the width and height of the current block are both 16 (pixels), the motion information of the surrounding blocks follows the minimum unit of 4*4 Save it. As shown in Figure 8A, assuming that A14, A15, A16, and A17 are uncoded blocks, these uncoded blocks are filled, and the filling method can be any of the following: use the available motion information of adjacent blocks for filling; use the default The motion information (such as zero motion vector) is filled; the available motion information of the corresponding reference block in the time domain reference frame is used for filling. Of course, the above method is only an example, and there is no restriction on this. If the size of the current block is another size, it can also be filled in the above-mentioned manner, which will not be repeated here.
- Embodiment 7 For step 601 and step 701, the motion information of the surrounding blocks of the current block needs to be filled. If the width and height of the current block are both 16 (pixels), the motion information of the surrounding blocks is based on the minimum unit of 4*4 Save it. As shown in Figure 8B, assuming that A7 is an intra-frame coding block, the motion information of these intra-frame coding blocks needs to be filled.
- the filling method can be any of the following: use the available motion information of neighboring blocks for filling; use the default The motion information (such as zero motion vector) is filled; the available motion information of the corresponding reference block in the time domain reference frame is used for filling. Of course, the above method is only an example, and there is no restriction on this. If the size of the current block is another size, it can also be filled in the above-mentioned manner, which will not be repeated here.
- Embodiment 8 For step 602 and step 702, a motion information prediction mode candidate list corresponding to the current block needs to be created, and the motion information prediction mode candidate list includes the motion information angle prediction mode.
- the peripheral blocks of the current block may include, but are not limited to: peripheral block A1, peripheral block A2,..., peripheral block Am, peripheral block Am+1,..., peripheral block Am+n, peripheral Block Am+n+1, peripheral block Am+n+2,..., peripheral block A2m+n+1, peripheral block A2m+n+2,..., peripheral block A2m+2n+1, or other peripheral Piece.
- the surrounding blocks of the current block may include but are not limited to: blocks adjacent to the current block, non-adjacent blocks to the current block, and even blocks in other adjacent frames, without limitation.
- the width value of the current block is W (pixels), the height value of the current block is H (pixels), and the motion information of the surrounding blocks is stored in a minimum unit of 4*4.
- the traversal step length is an integer, Max(m,n) is the maximum value of m and n, and k is any integer in [2m+n+2,2m+2n+1]. Perform the following comparison process.
- Step g1 judge whether j is greater than k, if it is greater, exit the comparison process, otherwise go to step g2.
- Step g2 Compare the motion information of the surrounding block Ai with the motion information of the surrounding block Aj.
- step g3 is executed.
- the mode value of each motion information angle prediction mode can be obtained. Then, the motion information angle prediction mode with the mode value of 1 is added to the motion information prediction mode candidate list, and the motion information angle prediction with the mode value of 0 is prohibited. The mode is added to the motion information prediction mode candidate list.
- Step h1 judge whether j is greater than 2m+2n+1, if it is to exit the comparison process, otherwise execute step h2.
- Step h2. Compare the motion information of the surrounding block Ai with the motion information of the surrounding block Aj.
- step h3 is executed.
- the mode value of each motion information angle prediction mode can be obtained. Then, the motion information angle prediction mode with the mode value of 1 is added to the motion information prediction mode candidate list, and the motion information angle prediction with the mode value of 0 is prohibited. The mode is added to the motion information prediction mode candidate list.
- Embodiment 10 For step 602 and step 702, the width value of the current block is W (pixels), the height value of the current block is H (pixels), W is 16, H is 16, and the motion information of surrounding blocks is 4*4 The smallest unit is saved.
- the horizontal prediction mode compare whether the motion information of A6 and A8 are the same. If they are not the same, add the horizontal prediction mode to the motion information prediction mode candidate list. If they are the same, prohibit the horizontal The prediction mode is added to the motion information prediction mode candidate list.
- For the vertical prediction mode compare whether the motion information of A10 and A12 are the same. If they are not the same, you can add the vertical prediction mode to the motion information prediction mode candidate list. If they are the same, you can prohibit adding the vertical prediction mode to Motion information prediction mode candidate list.
- the horizontal prediction mode it is possible to compare whether the motion information of A8 and the motion information of A9 are the same, and compare whether the motion information of A9 is the same as the motion information of A10. If the motion information of A8 is the same as the motion information of A9, and the motion information of A9 is the same as the motion information of A10, the horizontal upward prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A8 is different from the motion information of A9, and/or the motion information of A9 is different from the motion information of A10, the horizontal upward prediction mode may be added to the motion information prediction mode candidate list.
- the horizontal downward prediction mode it is possible to compare whether the motion information of A2 and the motion information of A4 are the same, and compare whether the motion information of A4 and the motion information of A6 are the same. If the motion information of A2 is the same as the motion information of A4, and the motion information of A4 is the same as the motion information of A6, the horizontal downward prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A2 is different from the motion information of A4, and/or the motion information of A4 is different from the motion information of A6, the horizontal upward prediction mode may be added to the motion information prediction mode candidate list.
- the vertical right prediction mode you can compare whether the motion information of A12 is the same as the motion information of A14, and compare whether the motion information of A14 is the same as the motion information of A16. If the motion information of A12 is the same as the motion information of A14, and the motion information of A14 is the same as the motion information of A16, the vertical right prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A12 is different from the motion information of A14, and/or the motion information of A14 is different from the motion information of A16, the vertical right prediction mode may be added to the motion information prediction mode candidate list.
- Embodiment 11 For step 602 and step 702, the width value of the current block is W (pixels), the height value of the current block is H (pixels), W is 16, H is 32, and the motion information of surrounding blocks is 4*4 The smallest unit is saved.
- the horizontal prediction mode compare whether the motion information of A8 and A12 are the same. If they are not the same, add the horizontal prediction mode to the motion information prediction mode candidate list. The prediction mode is added to the motion information prediction mode candidate list.
- For vertical prediction modes compare whether the motion information of A14 and A16 are the same. If they are not the same, the vertical prediction mode can be added to the motion information prediction mode candidate list. If they are the same, the vertical prediction mode can be prohibited from being added to the motion information prediction mode candidate list. Motion information prediction mode candidate list.
- the horizontal prediction mode it is possible to compare whether the motion information of A12 and the motion information of A13 are the same, and compare whether the motion information of A13 is the same as the motion information of A14. If the motion information of A12 is the same as the motion information of A13, and the motion information of A13 is the same as the motion information of A14, the horizontal upward prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A12 is different from the motion information of A13, and/or the motion information of A13 is different from the motion information of A14, the horizontal upward prediction mode may be added to the motion information prediction mode candidate list.
- the horizontal downward prediction mode it is possible to compare whether the motion information of A2 and the motion information of A4 are the same, and compare whether the motion information of A4 is the same as the motion information of A8. If the motion information of A2 is the same as the motion information of A4, and the motion information of A4 is the same as the motion information of A8, the horizontal downward prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A2 is different from the motion information of A4, and/or the motion information of A4 is different from the motion information of A8, the horizontal upward prediction mode may be added to the motion information prediction mode candidate list.
- the vertical right prediction mode you can compare whether the motion information of A16 and A18 are the same, and compare whether the motion information of A18 and A22 are the same. If the motion information of A16 is the same as the motion information of A18, and the motion information of A18 is the same as the motion information of A22, the vertical right prediction mode may be prohibited from being added to the motion information prediction mode candidate list. Alternatively, if the motion information of A16 is different from the motion information of A18, and/or the motion information of A18 is different from the motion information of A22, the vertical right prediction mode may be added to the motion information prediction mode candidate list.
- Embodiment 12 For steps 604 and 704, a motion compensation process is required, that is, the current block is encoded or decoded according to the target motion information angle prediction mode.
- the selection condition for acquiring the motion information of the current block can be determined according to the target motion information angle prediction mode and the size of the current block; wherein, the selection condition is the first selection condition or the second selection condition
- the first selection condition is that the motion information selected from the motion information of the surrounding matching blocks is not allowed to be bidirectional motion information
- the second selection condition is that the motion information selected from the motion information of the surrounding matching blocks is allowed to be bidirectional motion information.
- the sub-region division information of the current block is determined.
- a peripheral matching block pointed to by the pre-configured angle is selected from the peripheral blocks of the current block. Determine the motion information of the current block according to the selection condition, the subregion division information and the motion information of the surrounding matching block.
- two-way motion information is not allowed, which may include: if the motion information of the surrounding matching block is unidirectional motion information, then the unidirectional motion information of the surrounding matching block is allowed to be selected as the motion information of the current block or sub-region;
- the motion information of the matching block is bidirectional motion information, and it is allowed to select forward motion information or backward motion information in the bidirectional motion information of surrounding matching blocks as the motion information of the current block or sub-region.
- bidirectional motion information can include: if the motion information of the surrounding matching block is unidirectional motion information, then the unidirectional motion information of the surrounding matching block is allowed to be selected as the motion information of the current block or subregion; if the motion information of the surrounding matching block is If it is bidirectional motion information, it is allowed to select the bidirectional motion information of the surrounding matching block as the motion information of the current block or subregion.
- determining the selection condition for acquiring the motion information of the current block may include but is not limited to: if the size of the current block satisfies: the width is greater than or equal to the preset size parameter, The height is greater than or equal to the preset size parameter, and for any motion information angle prediction mode, it is determined that the selection condition is the second selection condition.
- the selection condition is determined to be the second selection condition; when the motion information angle prediction mode When it is a prediction mode other than the vertical prediction mode, the selection condition is determined to be the first selection condition. If the size of the current block satisfies: the height is less than the preset size parameter, and the width is greater than the preset size parameter, when the motion information angle prediction mode is the horizontal prediction mode, the selection condition is determined to be the second selection condition; when the motion information angle prediction mode When it is a prediction mode other than the horizontal prediction mode, the selection condition is determined to be the first selection condition.
- the selection condition is determined to be the first selection condition. If the size of the current block satisfies: the height is less than the preset size parameter, the width is equal to the preset size parameter, or the height is equal to the preset size parameter, and the width is less than the preset size parameter, determine for any motion information angle prediction mode
- the selection condition is the first selection condition.
- determining the sub-region division information of the current block may include: when the motion information angle prediction mode is a horizontal upward prediction mode, a horizontal downward prediction mode, or a vertical right prediction mode, if The width of the current block is greater than or equal to the preset size parameter, and the height of the current block is greater than or equal to the preset size parameter, the size of the sub-region is 8*8; if the width of the current block is less than the preset size parameter, or the current block If the height of is smaller than the preset size parameter, the size of the sub-region is 4*4.
- the size of the current block is less than the preset size parameter, the size of the sub-region is 4*4, and the height of the current block can be greater than the preset size parameter and can be equal to the preset
- the size parameter can also be smaller than the preset size parameter; if the width of the current block is greater than the preset size parameter, the size of the subregion is the width of the current block*4, or the size of the subregion is 4*4, and the height of the current block Can be greater than the preset size parameter, can be equal to the preset size parameter, or less than the preset size parameter; if the width of the current block is equal to the preset size parameter, the height of the current block is greater than or equal to the preset size parameter, The size of the area is 8*8.
- the motion information angle prediction mode is the vertical prediction mode
- the size of the sub-region is 4*4
- the width of the current block is greater than the preset size parameter, or equal to the preset size Parameter, or smaller than the preset size parameter
- the height of the current block is greater than the preset size parameter
- the size of the subregion is 4*height of the current block, or the size of the subregion is 4*4
- the width of the current block can be Greater than the preset size parameter can be equal to or smaller than the preset size parameter
- the height of the current block is equal to the preset size parameter, and the width of the current block is greater than or equal to the preset size parameter, then The size of the sub-region is 8*8.
- the preset size parameter may be 8 (pixels), or may be other values.
- the preset size parameter is 8 (pixels), or may be other values.
- the sub-region division and selection conditions of the current block can be determined with reference to Table 1.
- determining the motion information of the current block according to the selection condition, the subregion division information and the motion information of the surrounding matching block may include but is not limited to:
- a surrounding matching block corresponding to the sub-region is selected from the surrounding matching blocks of the current block according to the motion information angle prediction mode, and the surrounding matching block corresponding to the sub-region is selected according to the The motion information and the selection condition determine the motion information of the sub-region;
- the motion information of the at least one sub-region is determined as the motion information of the current block.
- determining the motion information of the current block according to the motion information angle prediction mode includes: determining the selection condition of the current block for acquiring the motion information according to the size of the current block; the selection condition is the second selection condition, The second selection condition is that the motion information selected from the motion information of the surrounding matching blocks is allowed to be bidirectional motion information; the subregion division information of the current block is determined according to the size of the current block; The area division information includes: the size of the sub-area of the current block is 8*8.
- the pre-configured angle corresponding to the motion information angle prediction mode select the peripheral matching block pointed to by the pre-configured angle from the peripheral blocks of the current block; according to the selection condition, the sub-region division information, and the peripheral matching
- the motion information of the block determines the motion information of the current block.
- Embodiment 13 referring to FIG. 10A, the width W (4 (pixels)) of the current block multiplied by the height H (8 (pixels)) of the current block is less than or equal to 32, for each 4*4 sub in the current block
- the area is subject to unidirectional motion compensation (Uni) according to a certain angle (pre-configured angle of the motion information angle prediction mode), and bidirectional motion information is not allowed. If the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region.
- the two-way motion information is not determined as the motion information of the sub-region, but the forward motion information or the backward motion information in the two-way motion information is determined as the motion information of the sub-region .
- Embodiment 13 is for the example in Table 1 where width*height is less than or equal to 32.
- the sub-region division size is 4*4, and the selection condition is one-way.
- the size of the current block is 4*8, and when the target motion information prediction mode of the current block is the horizontal mode, two sub-regions of the same size are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block A1, and the motion information of the 4*4 sub-region is determined according to the motion information of A1. If the motion information of the surrounding matching block A1 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block A1 is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the other 4*4 subregion corresponds to the surrounding matching block A2, and the motion information of the 4*4 subregion is determined according to the motion information of A2. If the motion information of the surrounding matching block A2 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block A2 is bidirectional motion information, then the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the size of the current block is 4*8, and when the target motion information prediction mode of the current block is the vertical mode, two sub-regions of the same size are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block B1, and the motion information of the 4*4 sub-region is determined according to the motion information of B1. If the motion information of the surrounding matching block B1 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block B1 is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the other 4*4 subregion corresponds to the surrounding matching block B1, and the motion information of the 4*4 subregion is determined according to the motion information of B1. If the motion information of the surrounding matching block B1 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block B1 is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the size of the current block is 4*8, and the target motion information prediction mode of the current block is the horizontal direction, two sub-regions of the same size are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block E, and the motion information of the 4*4 sub-region is determined according to the motion information of E. If the motion information of the surrounding matching block E is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block E is bidirectional motion information, then the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the other 4*4 subregion corresponds to the surrounding matching block A1, and the motion information of the 4*4 subregion is determined according to the motion information of A1. If the motion information of the surrounding matching block A1 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block A1 is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- FIG. 10A when the size of the current block is 4*8, and the target motion information prediction mode of the current block is horizontal downward, two sub-regions of the same size are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block A2, and the motion information of the 4*4 sub-region is determined according to the motion information of A2.
- the motion information of the surrounding matching block A2 is one-way motion information
- the one-way motion information is determined as the motion information of the sub-region.
- the motion information of the surrounding matching block A2 is bidirectional motion information, then the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the other 4*4 sub-region corresponds to the surrounding matching block A3, and the motion information of the 4*4 sub-region is determined according to the motion information of A3. If the motion information of the surrounding matching block A3 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block A3 is two-way motion information, the forward motion information or the backward motion information in the two-way motion information is determined as the motion information of the sub-region.
- FIG. 10A when the size of the current block is 4*8, and the target motion information prediction mode of the current block is vertical rightward, two sub-regions of the same size are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block B2, and the motion information of the 4*4 sub-region is determined according to the motion information of B2. If the motion information of the surrounding matching block B2 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block B2 is bidirectional motion information, then the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- the other 4*4 sub-region corresponds to the surrounding matching block B3, and the motion information of the 4*4 sub-region is determined according to the motion information of B3. If the motion information of the surrounding matching block B3 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block B3 is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- Embodiment 14 As shown in FIG. 10B, the width W of the current block is less than 8 (pixels), and the height H of the current block is greater than 8 (pixels), the following methods can be used to perform motion compensation on each sub-region in the current block.
- each 4*H sub-region is subjected to motion compensation according to the vertical angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the angular prediction mode is other angular prediction modes (such as horizontal prediction mode, horizontal upward prediction mode, horizontal downward prediction mode, vertical right prediction mode, etc.), for each 4*4 sub-region in the current block, you can One-way motion compensation is performed according to a certain angle (pre-configured angle of the other angle prediction mode), and two-way motion information is not allowed.
- the motion information of the surrounding matching block is one-way motion information
- the one-way motion information is determined as the motion information of the sub-region.
- the motion information of the surrounding matching block is bidirectional motion information
- the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- Embodiment 14 is for the example in Table 1 where the width is less than 8 and the height is greater than 8, that is, for the vertical prediction mode, the sub-region division size is 4*height, and the selection condition is to allow bidirectionality. For other angle prediction modes, the sub-region division size is 4*4, and the selection condition is one-way.
- the size of the current block is 4*16, and when the target motion information prediction mode of the current block is the horizontal mode, 4 sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block A1, and the motion information of the 4*4 subregion is determined according to the motion information of A1.
- the second 4*4 sub-region corresponds to the surrounding matching block A2, and the motion information of the 4*4 sub-region is determined according to the motion information of A2.
- the third 4*4 subregion corresponds to the surrounding matching block A3, and the motion information of the 4*4 subregion is determined according to the motion information of A3.
- the fourth 4*4 subregion corresponds to the surrounding matching block A4, and the motion information of the 4*4 subregion is determined according to the motion information of A4. For any one of A1 to A4, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 4*16, and when the target motion information prediction mode of the current block is the vertical mode, 4 sub-areas of size 4*4 can be divided, and each 4*4 sub-areas corresponds to the surrounding area
- the matching block B1 determines the motion information of each 4*4 sub-region according to the motion information of B1. If the motion information of the surrounding matching block B1 is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block B1 is bidirectional motion information, the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the four sub-regions is the same, so in this embodiment, the current block may not be divided into sub-regions.
- the current block itself as a sub-region corresponds to a surrounding matching block B1. According to the motion information of B1, determine the current block Sports information.
- the size of the current block is 4*16, and when the target motion information prediction mode of the current block is the horizontal upward mode, four sub-regions of size 4*4 are divided.
- One of the 4*4 sub-regions corresponds to the surrounding matching block E, and the motion information of the 4*4 sub-region is determined according to the motion information of E.
- One of the 4*4 sub-regions corresponds to the surrounding matching block A1, and the motion information of the 4*4 sub-region is determined according to the motion information of A1.
- One of the 4*4 sub-regions corresponds to the surrounding matching block A2, and the motion information of the 4*4 sub-region is determined according to the motion information of A2.
- One of the 4*4 sub-regions corresponds to the surrounding matching block A3, and the motion information of the 4*4 sub-region is determined according to the motion information of A3.
- the motion information of the surrounding matching block is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is bidirectional motion information
- the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 4*16, and when the target motion information prediction mode of the current block is the horizontal downward mode, four sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block A2, and the motion information of the 4*4 subregion is determined according to the motion information of A2.
- the second 4*4 sub-region corresponds to the surrounding matching block A3, and the motion information of the 4*4 sub-region is determined according to the motion information of A3.
- the third 4*4 subregion corresponds to the surrounding matching block A4, and the motion information of the 4*4 subregion is determined according to the motion information of A4.
- the fourth 4*4 sub-region corresponds to the surrounding matching block A5, and the motion information of the 4*4 sub-region is determined according to the motion information of A5. For any one of A2 to A5, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 4*16, and when the target motion information prediction mode of the current block is the vertical right mode, 4 sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block B2, and the motion information of the 4*4 subregion is determined according to the motion information of B2.
- the second 4*4 subregion corresponds to the surrounding matching block B3, and the motion information of the 4*4 subregion is determined according to the motion information of B3.
- the third 4*4 subregion corresponds to the surrounding matching block B4, and the motion information of the 4*4 subregion is determined according to the motion information of B4.
- the fourth 4*4 subregion corresponds to the surrounding matching block B5, and the motion information of the 4*4 subregion is determined according to the motion information of B5. For any one of B2 to B5, if the motion information of the surrounding matching block is unidirectional motion information, the unidirectional motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- Embodiment 15 As shown in FIG. 10C, the width W of the current block is greater than 8 (pixels), and the height H of the current block is less than 8 (pixels), the following methods can be used to perform motion compensation for each sub-region in the current block.
- each W*4 sub-region is motion compensated according to the horizontal angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- angle prediction mode is another angle prediction mode
- one-way motion compensation can be performed at a certain angle (the pre-configured angle of the other angle prediction mode), and two-way motion compensation is not allowed Sports information.
- the motion information of the surrounding matching block is one-way motion information
- the one-way motion information is determined as the motion information of the sub-region.
- the motion information of the surrounding matching block is bidirectional motion information
- the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the sub-region.
- Embodiment 15 is directed to the example in Table 1 where the width is greater than 8 and the height is less than 8, that is, for the horizontal prediction mode, the sub-region division size is width*4, and the selection condition is that bidirectionality is allowed. For other angle prediction modes, the sub-region division size is 4*4, and the selection condition is one-way.
- the size of the current block is 16*4, and when the target motion information prediction mode of the current block is the horizontal mode, 4 sub-areas of size 4*4 can be divided, and each 4*4 sub-areas corresponds to the surrounding area
- the matching block A1 determines the motion information of each 4*4 sub-region according to the motion information of A1. If the motion information of the surrounding matching block A1 is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block A1 is bidirectional motion information, the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the four sub-regions is the same, so in this embodiment, the current block may not be divided into sub-regions.
- the current block itself is a sub-region corresponding to a surrounding matching block A1. According to the motion information of A1, determine the current block Sports information.
- the size of the current block is 16*4, and when the target motion information prediction mode of the current block is the vertical mode, 4 sub-regions with a size of 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block B1, and the motion information of the 4*4 subregion is determined according to the motion information of B1.
- the second 4*4 subregion corresponds to the surrounding matching block B2, and the motion information of the 4*4 subregion is determined according to the motion information of B2.
- the third 4*4 subregion corresponds to the surrounding matching block B3, and the motion information of the 4*4 subregion is determined according to the motion information of B3.
- the fourth 4*4 subregion corresponds to the surrounding matching block B4, and the motion information of this 4*4 subregion is determined according to the motion information of B4. For any one of B1 to B4, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 16*4, and when the target motion information prediction mode of the current block is the horizontal upward mode, four sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block E, and the motion information of the 4*4 subregion is determined according to the motion information of E.
- the second 4*4 subregion corresponds to the surrounding matching block B1, and the motion information of the 4*4 subregion is determined according to the motion information of B1.
- the third 4*4 subregion corresponds to the surrounding matching block B2, and the motion information of the 4*4 subregion is determined according to the motion information of B2.
- the fourth 4*4 subregion corresponds to the surrounding matching block B3, and the motion information of the 4*4 subregion is determined according to the motion information of B3. For any one of E to B3, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 16*4, and when the target motion information prediction mode of the current block is the horizontal downward mode, four sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block A2, and the motion information of the 4*4 subregion is determined according to the motion information of A2.
- the second 4*4 sub-region corresponds to the surrounding matching block A3, and the motion information of the 4*4 sub-region is determined according to the motion information of A3.
- the third 4*4 subregion corresponds to the surrounding matching block A4, and the motion information of the 4*4 subregion is determined according to the motion information of A4.
- the fourth 4*4 sub-region corresponds to the surrounding matching block A5, and the motion information of the 4*4 sub-region is determined according to the motion information of A5. For any one of A2 to A5, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 16*4, and when the target motion information prediction mode of the current block is the vertical right mode, 4 sub-regions of size 4*4 are divided.
- the first 4*4 subregion corresponds to the surrounding matching block B2, and the motion information of the 4*4 subregion is determined according to the motion information of B2.
- the second 4*4 subregion corresponds to the surrounding matching block B3, and the motion information of the 4*4 subregion is determined according to the motion information of B3.
- the third 4*4 subregion corresponds to the surrounding matching block B4, and the motion information of the 4*4 subregion is determined according to the motion information of B4.
- the fourth 4*4 subregion corresponds to the surrounding matching block B5, and the motion information of the 4*4 subregion is determined according to the motion information of B5. For any one of B2 to B5, if the motion information of the surrounding matching block is unidirectional motion information, the unidirectional motion information is determined as the motion information of the corresponding sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the forward motion information or the backward motion information in the bidirectional motion information is determined as the motion information of the corresponding sub-region.
- Embodiment 16 The width W of the current block is equal to 8 (pixels), and the height H of the current block is equal to 8 (pixels), then for each 8*8 sub-region in the current block (that is, the sub-region is the current block itself), Perform motion compensation according to a certain angle (pre-configured angle of the motion information angle prediction mode), and allow bidirectional motion information during motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the motion information of any surrounding matching block can be selected from the motion information of the multiple surrounding matching blocks according to the corresponding angle.
- the motion information of the surrounding matching block A1 can be selected, or the motion information of the surrounding matching block A2 can be selected.
- the motion information of the surrounding matching block B1 can be selected, or the motion information of the surrounding matching block B2 can be selected.
- the motion information of the surrounding matching block E may be selected, the motion information of the surrounding matching block B1 may be selected, or the motion information of the surrounding matching block A1 may be selected.
- the motion information of the surrounding matching block A2 can be selected, the motion information of the surrounding matching block A3 can also be selected, or the motion information of the surrounding matching block A4 can be selected.
- the motion information of the surrounding matching block B2 may be selected, the motion information of the surrounding matching block B3 may be selected, or the motion information of the surrounding matching block B4 may be selected.
- Example 16 is for the example in Table 1 where the width is equal to 8 and the height is equal to 8. In other words, for any angle prediction mode, the sub-region division size is 8*8, and the selection condition is to allow bidirectional .
- the size of the current block is 8*8, and when the target motion information prediction mode of the current block is the horizontal mode, a sub-region with a size of 8*8 is divided.
- This sub-region corresponds to the surrounding matching block A1, and the motion information of this sub-region is determined according to the motion information of A1.
- the movement information of A1 is one-way movement information
- the one-way movement information is determined as the movement information of the sub-region.
- the motion information of A1 is two-way motion information
- the two-way motion information is determined as the motion information of the sub-region.
- this sub-region corresponds to the surrounding matching block A2, and the motion information of the sub-region is determined according to the motion information of A2.
- the motion information of A2 is one-way motion information
- the one-way motion information is determined as the motion information of the sub-region. If the motion information of A2 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the size of the current block is 8*8, and when the target motion information prediction mode of the current block is the vertical mode, a sub-region with a size of 8*8 is divided.
- This sub-region corresponds to the surrounding matching block B1, and the motion information of this sub-region is determined according to the motion information of B1. If the motion information of B1 is one-way motion information, then the one-way motion information is determined as the motion information of the sub-region. If the motion information of B1 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, this subregion corresponds to the surrounding matching block B2, and the motion information of this subregion is determined according to the motion information of B2.
- the motion information of B2 is one-way motion information
- the one-way motion information is determined as the motion information of the sub-region. If the motion information of B2 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the size of the current block is 8*8, and when the target motion information prediction mode of the current block is the horizontal upward mode, the subregions are divided into the size of 8*8.
- the sub-region corresponds to the surrounding matching block E, and the motion information of the sub-region is determined according to the motion information of E. If the motion information of E is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of E is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, the subregion corresponds to the surrounding matching block B1, and the motion information of the subregion is determined according to the motion information of B1.
- the one-way motion information is determined as the motion information of the sub-region. If the motion information of B1 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, the sub-region corresponds to the surrounding matching block A1, and the motion information of the sub-region is determined according to the motion information of A1. If the movement information of A1 is one-way movement information, the one-way movement information is determined as the movement information of the sub-region. If the motion information of A1 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the size of the current block is 8*8, and when the target motion information prediction mode of the current block is the horizontal downward mode, the subregions are divided into the size of 8*8.
- the sub-region corresponds to the surrounding matching block A2, and the motion information of the sub-region is determined according to the motion information of A2. If the movement information of A2 is one-way movement information, the one-way movement information is determined as the movement information of the sub-region. If the motion information of A2 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, the sub-region corresponds to the surrounding matching block A3, and the motion information of the sub-region is determined according to the motion information of A3.
- the one-way movement information is determined as the movement information of the sub-region. If the motion information of A3 is two-way motion information, then the two-way motion information is determined as the motion information of the sub-region. Or, the sub-region corresponds to the surrounding matching block A4, and the motion information of the sub-region is determined according to the motion information of A4. If the movement information of A4 is one-way movement information, the one-way movement information is determined as the movement information of the sub-region. If the motion information of A4 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- the size of the current block is 8*8, and when the target motion information prediction mode of the current block is the vertical right mode, the subregions are divided into the size of 8*8.
- the sub-region corresponds to the surrounding matching block B2, and the motion information of the sub-region is determined according to the motion information of B2. If the motion information of B2 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of B2 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, the sub-region corresponds to the surrounding matching block B3, and the motion information of the sub-region is determined according to the motion information of B3.
- the one-way motion information is determined as the motion information of the sub-region. If the motion information of B3 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region. Or, the sub-region corresponds to the surrounding matching block B4, and the motion information of the sub-region is determined according to the motion information of B4. If the motion information of B4 is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of B4 is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- Embodiment 17 The width W of the current block can be greater than or equal to 16 (pixels), and the height H of the current block can be equal to 8 (pixels). Based on this, the following methods can be used to perform motion compensation for each sub-region in the current block.
- each W*4 sub-region is motion compensated according to the horizontal angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- angle prediction mode is another angle prediction mode
- bidirectional motion compensation is performed according to a certain angle (pre-configured angle of the other angle prediction mode). For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the bidirectional motion information is determined as the motion information of the sub-region. For each 8*8 subregion, if the subregion corresponds to multiple surrounding matching blocks, the motion information of any surrounding matching block is selected from the motion information of the multiple surrounding matching blocks as the motion information of the subregion.
- Embodiment 17 is for the example in Table 1 where the width is greater than or equal to 16 and the height is equal to 8.
- the sub-region division size is width*4, and the selection condition is that bidirectionality is allowed.
- the sub-region division size is 8*8, and the selection condition is to allow bidirectionality.
- the size of the current block is 16*8, and when the target motion information prediction mode of the current block is the horizontal mode, two sub-regions with a size of 16*4 are divided.
- One of the 16*4 sub-regions corresponds to the surrounding matching block A1, and the motion information of the 16*4 sub-region is determined according to the motion information of A1.
- Another 16*4 subregion corresponds to the surrounding matching block A2, and the motion information of the 16*4 subregion is determined according to the motion information of A2.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding sub-region.
- the target motion information prediction mode is the vertical mode
- it is divided into 2 sub-regions with a size of 8*8.
- One of the 8*8 subregions corresponds to the surrounding matching block B1 or B2, and the motion information of the 8*8 subregion is determined according to the motion information of B1 or B2.
- the other 8*8 subregion corresponds to the surrounding matching block B3 or B4, and the motion information of the 8*8 subregion is determined according to the motion information of B3 or B4.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding subregion.
- Embodiment 18 The width W of the current block may be equal to 8 (pixels), and the height H of the current block may be greater than or equal to 16 (pixels). Based on this, the following methods can be used to perform motion compensation for each sub-region in the current block.
- each 4*H sub-region is subjected to motion compensation according to the vertical angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- angle prediction mode is another angle prediction mode
- bidirectional motion compensation is performed according to a certain angle (pre-configured angle of the other angle prediction mode). For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the bidirectional motion information is determined as the motion information of the sub-region. For each 8*8 subregion, if the subregion corresponds to multiple surrounding matching blocks, the motion information of any surrounding matching block is selected from the motion information of the multiple surrounding matching blocks as the motion information of the subregion.
- Embodiment 18 is for the example in Table 1 where the height is greater than or equal to 16, and the width is equal to 8.
- the sub-region division size is 4*height, and the selection condition is that bidirectionality is allowed.
- the size of the sub-region is 8*8, and the selection condition is to allow two directions.
- the size of the current block is 8*16, and when the target motion information prediction mode of the current block is the vertical mode, two sub-regions with a size of 4*16 are divided.
- One of the 4*16 sub-regions corresponds to the surrounding matching block B1, and the motion information of the 4*16 sub-region is determined according to the motion information of B1.
- the other 4*16 subregion corresponds to the surrounding matching block B2, and the motion information of the 4*16 subregion is determined according to the motion information of B2.
- the motion information of the surrounding matching block is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding sub-region.
- FIG. 10L when the size of the current block is 16*8, and the target motion information prediction mode is the horizontal mode, two sub-regions of size 8*8 are divided.
- An 8*8 subregion corresponds to the surrounding matching block A1 or A2, and the motion information of the 8*8 subregion is determined according to the motion information of the surrounding matching block A1 or A2.
- the other 8*8 subregion corresponds to the surrounding matching block A1 or A2, and the motion information of the 8*8 subregion is determined according to the motion information of the surrounding matching block A1 or A2.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding subregion.
- Embodiment 19 The width W of the current block can be greater than or equal to 16 (pixels), and the height H of the current block can be greater than or equal to 16 (pixels). Based on this, the following methods can be used to perform motion compensation for each sub-region in the current block.
- each 4*H sub-region is subjected to motion compensation according to the vertical angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- each W*4 sub-region is motion compensated according to the horizontal angle. Allow bidirectional motion information when performing motion compensation. For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the sub-region.
- angle prediction mode is another angle prediction mode
- bidirectional motion compensation is performed according to a certain angle (pre-configured angle of the other angle prediction mode). For example, if the motion information of the surrounding matching block is one-way motion information, the one-way motion information is determined as the motion information of the sub-region. If the motion information of the surrounding matching block is bidirectional motion information, the bidirectional motion information is determined as the motion information of the sub-region. For each 8*8 subregion, if the subregion corresponds to multiple surrounding matching blocks, the motion information of any surrounding matching block is selected from the motion information of the multiple surrounding matching blocks as the motion information of the subregion.
- Embodiment 19 is for the example in Table 1 where the height is greater than or equal to 16 and the width is greater than or equal to 16.
- the sub-region division size is 4*height, and the selection condition is to allow bidirectionality.
- the sub-region division size is width*4, and the selection condition is to allow two directions.
- the sub-region division size is 8*8, and the selection condition is to allow bidirectionality.
- the size of the current block is 16*16, and when the target motion information prediction mode is the vertical mode, 4 sub-regions of size 4*16 are divided.
- a 4*16 subregion corresponds to the surrounding matching block B1, and the motion information of the 4*16 subregion is determined according to the motion information of B1.
- a 4*16 sub-region corresponds to the surrounding matching block B2, and the motion information of the 4*16 sub-region is determined according to the motion information of B2.
- a 4*16 subregion corresponds to the surrounding matching block B3, and the motion information of the 4*16 subregion is determined according to the motion information of B3.
- a 4*16 sub-region corresponds to the surrounding matching block B4, and the motion information of the 4*16 sub-region is determined according to the motion information of B4.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding subregion.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the horizontal mode, 4 sub-regions with a size of 16*4 are divided.
- the first 16*4 subregion corresponds to the surrounding matching block A1, and the motion information of the 16*4 subregion is determined according to the motion information of A1.
- the second 16*4 subregion corresponds to the peripheral matching block A2, and the motion information of the 16*4 subregion is determined according to the motion information of A2.
- the third 16*4 subregion corresponds to the surrounding matching block A3, and the motion information of the 16*4 subregion is determined according to the motion information of A3.
- the fourth 16*4 sub-region corresponds to the surrounding matching block A4, and the motion information of the 16*4 sub-region is determined according to the motion information of A4.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding sub-region.
- Embodiment 20 the width W of the current block may be greater than or equal to 8, and the height H of the current block may be greater than or equal to 8, and then motion compensation is performed on each 8*8 sub-region in the current block.
- the motion information of any surrounding matching block is selected from the motion information of the multiple surrounding matching blocks as the sub-region Sports information.
- the sub-region division size has nothing to do with the motion information angle prediction mode. Regardless of the motion information angle prediction mode, as long as the width of the current block is greater than or equal to 8, the height is greater than or equal to 8, the sub-region partition size can be 8*8 .
- the selection condition has nothing to do with the motion information angle prediction mode. Regardless of the motion information angle prediction mode, as long as the width of the current block is greater than or equal to 8 and the height is greater than or equal to 8, the selection condition is that bidirectionality is allowed.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the horizontal mode, 4 sub-regions with a size of 8*8 are divided.
- the first 8*8 subregion corresponds to the surrounding matching block A1 or A2, and the motion information of the 8*8 subregion is determined according to the motion information of A1 or A2.
- the second 8*8 subregion corresponds to the surrounding matching block A1 or A2, and the motion information of the 8*8 subregion is determined according to the motion information of A1 or A2.
- the third 8*8 sub-region corresponds to the surrounding matching block A3 or A4, and the motion information of the 8*8 sub-region is determined according to the motion information of A3 or A4.
- the fourth 8*8 subregion corresponds to the surrounding matching block A3 or A4, and the motion information of the 8*8 subregion is determined according to the motion information of A3 or A4.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding subregion.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the vertical mode, 4 sub-regions with a size of 8*8 are divided.
- the first 8*8 subregion corresponds to the surrounding matching block B1 or B2, and the motion information of the 8*8 subregion is determined according to the motion information of B1 or B2.
- the second 8*8 subregion corresponds to the surrounding matching block B1 or B2, and the motion information of the 8*8 subregion is determined according to the motion information of B1 or B2.
- the third 8*8 subregion corresponds to the surrounding matching block B3 or B4, and the motion information of the 8*8 subregion is determined according to the motion information of B3 or B4.
- the fourth 8*8 subregion corresponds to the surrounding matching block B3 or B4, and the motion information of the 8*8 subregion is determined according to the motion information of B3 or B4.
- the motion information of the surrounding matching blocks is one-way motion information
- the one-way motion information is determined as the motion information of the corresponding sub-region.
- the motion information of the surrounding matching block is two-way motion information
- the two-way motion information is determined as the motion information of the corresponding subregion.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the horizontal upward mode, 4 sub-regions with a size of 8*8 can be divided. Then, for each 8*8 sub-region, the surrounding matching block (E, B2 or A2) corresponding to the 8*8 sub-region can be determined. There is no restriction on the determination method, and the motion information of the surrounding matching block , Determine the motion information of the 8*8 sub-region. For each 8*8 subregion, if the motion information of the surrounding matching block is unidirectional motion information, the unidirectional motion information is determined as the motion information of the corresponding subregion. If the motion information of the surrounding matching blocks is two-way motion information, the two-way motion information is determined as the motion information of the corresponding sub-region.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the horizontal downward mode, 4 sub-regions with a size of 8*8 are divided. Then, for each 8*8 sub-region, the surrounding matching block (A3, A5, or A7) corresponding to the 8*8 sub-region can be determined. There is no restriction on this, and the determination is made according to the motion information of the surrounding matching block The motion information of the 8*8 sub-region. For each 8*8 subregion, if the motion information of the surrounding matching block is unidirectional motion information, the unidirectional motion information is determined as the motion information of the corresponding subregion. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the corresponding subregion.
- the size of the current block is 16*16, and when the target motion information prediction mode of the current block is the vertical right mode, 4 sub-regions with a size of 8*8 are divided. Then, for each 8*8 sub-region, the surrounding matching block (B3, B5, or B7) corresponding to the 8*8 sub-region can be determined. There is no restriction on this, and the determination is made according to the motion information of the surrounding matching block The motion information of the 8*8 sub-region. For each 8*8 subregion, if the motion information of the surrounding matching block is unidirectional motion information, the unidirectional motion information is determined as the motion information of the corresponding subregion. If the motion information of the surrounding matching block is two-way motion information, the two-way motion information is determined as the motion information of the corresponding subregion.
- Embodiment 21 When the width W of the current block is greater than or equal to 8 and the height H is greater than or equal to 8, then motion compensation is performed on each 8*8 sub-region in the current block, and for each sub-region, the periphery is selected according to the corresponding angle Any one of several motion information of the matching block is shown in FIG. 10N.
- Embodiment 22 Based on the same application concept as the above method, an embodiment of this application proposes a codec device, which is applied to the decoding end or the encoding end. As shown in FIG. 11, it is a structural diagram of the device, including:
- the obtaining module 111 is configured to obtain at least one motion information angle prediction mode of the current block
- the processing module 112 is configured to, for each motion information angle prediction mode, select multiple surrounding matching blocks directed by the preconfigured angle from the surrounding blocks of the current block based on the pre-configured angle of the motion information angle prediction mode If the motion information of the multiple surrounding matching blocks is not completely the same, adding the motion information angle prediction mode to the motion information prediction mode candidate list of the current block;
- the encoding and decoding module 113 is configured to encode or decode the current block according to the motion information prediction mode candidate list.
- the processing module 112 is further configured to prohibit adding the motion information angle prediction mode to the motion information prediction mode candidate list if the motion information of the multiple surrounding matching blocks are completely the same.
- the processing module 112 is further configured to select at least one first peripheral matching block from the plurality of peripheral matching blocks; for each first peripheral matching block, select the first peripheral matching block from the plurality of peripheral matching blocks.
- the second surrounding matching block corresponding to the surrounding matching block; if the motion information of the first surrounding matching block is different from the motion information of the second surrounding matching block, it is determined that the comparison result of the first surrounding matching block is motion information Different; if the motion information of the first surrounding matching block is the same as the motion information of the second surrounding matching block, it is determined that the comparison result of the first surrounding matching block is that the motion information is the same;
- the comparison result of any first surrounding matching block is different in motion information, it is determined that the motion information of the plurality of surrounding matching blocks is not completely the same; if the comparison result of all the first surrounding matching blocks is the same in motion information, it is determined The motion information of the multiple surrounding matching blocks are completely the same.
- the processing module 112 selects at least one first surrounding matching block from the plurality of surrounding matching blocks, it is specifically configured to: use any one or more of the plurality of surrounding matching blocks as the first surrounding matching block ; Or take one or more of the designated surrounding matching blocks as the first surrounding matching block;
- the processing module 112 selects the second surrounding matching block corresponding to the first surrounding matching block from the plurality of surrounding matching blocks, it is specifically configured to: according to the traversal step and the position of the first surrounding matching block, Selecting a second surrounding matching block corresponding to the first surrounding matching block from the plurality of surrounding matching blocks; wherein, the traversal step is the difference between the first surrounding matching block and the second surrounding matching block Block interval.
- the processing module 112 is further configured to determine the traversal step size based on the size of the current block.
- the encoding and decoding device further includes (not shown in the figure):
- the filling module is configured to fill the motion information of the uncoded block and/or the intra-coded block if there is an uncoded block and/or an intra-coded block in the plurality of surrounding matching blocks.
- the filling module fills the motion information of the uncoded block and/or the intra-coded block, it is specifically used to: use the available motion of the uncoded block and/or the adjacent block of the intra-coded block Information, filled with motion information of the uncoded block and/or the intra-coded block; or,
- the default motion information is filled with motion information of the uncoded block and/or the intra-coded block.
- the encoding and decoding module 113 is specifically used to encode or decode the current block according to the motion information prediction mode candidate list:
- the codec module 113 determines the motion information of the current block according to the target motion information angle prediction mode, it is specifically used to: based on the pre-configured angle corresponding to the target motion information angle prediction mode, from the current block Selecting a plurality of peripheral matching blocks directed by the pre-configured angle from the peripheral blocks;
- the motion information of the sub-region is determined according to the motion information of the selected surrounding matching blocks.
- the codec module 113 determines the motion information of the current block according to the target motion information angle prediction mode, it is specifically configured to: determine the current block according to the target motion information angle prediction mode and the size of the current block.
- the selection condition of the block used to obtain the motion information, the sub-region division information of the current block; the selection condition is the first selection condition or the second selection condition, and the first selection condition is the selection from the motion information of the surrounding matching blocks.
- the motion information of is not allowed to be bidirectional motion information, and the second selection condition is that the motion information selected from the motion information of the surrounding matching blocks is allowed to be bidirectional motion information;
- the codec module 113 determines the motion information of the current block according to the target motion information angle prediction mode, it is specifically used to: according to the pre-configured angle corresponding to the target motion information angle prediction mode, from the current block Selecting the peripheral matching block pointed by the pre-configured angle from the peripheral blocks;
- the schematic diagram of the hardware architecture of the device may be specifically shown in FIG. 12. It includes: a processor 121 and a machine-readable storage medium 122, where the machine-readable storage medium 122 stores machine executable instructions that can be executed by the processor 121; the processor 121 is configured to execute machine executable instructions, In order to realize the method disclosed in the above examples of this application.
- processor 121 is configured to execute machine executable instructions to implement the following steps:
- each motion information angle prediction mode based on the pre-configured angle of the motion information angle prediction mode, select multiple surrounding matching blocks directed by the pre-configured angle from the surrounding blocks of the current block;
- the current block is decoded according to the motion information prediction mode candidate list.
- the schematic diagram of the hardware architecture of the device may be specifically shown in FIG. 13. It includes a processor 131 and a machine-readable storage medium 132, where the machine-readable storage medium 132 stores machine executable instructions that can be executed by the processor 131; the processor 131 is used to execute machine executable instructions, In order to realize the method disclosed in the above examples of this application.
- processor 131 is configured to execute machine executable instructions to implement the following steps:
- each motion information angle prediction mode based on the pre-configured angle of the motion information angle prediction mode, select multiple surrounding matching blocks directed by the pre-configured angle from the surrounding blocks of the current block;
- an embodiment of the application also provides a machine-readable storage medium.
- the machine-readable storage medium stores a number of computer instructions.
- the present invention can be realized. Apply for the encoding and decoding method disclosed in the above example.
- the aforementioned machine-readable storage medium may be any electronic, magnetic, optical, or other physical storage device, and may contain or store information, such as executable instructions, data, and so on.
- the machine-readable storage medium may be: RAM (Radom Access Memory), volatile memory, non-volatile memory, flash memory, storage drives (such as hard drives), solid state drives, and any type of storage disk (Such as CD, DVD, etc.), or similar storage media, or a combination of them.
- a typical implementation device is a computer.
- the specific form of the computer can be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email receiving and sending device, and a game control A console, a tablet computer, a wearable device, or a combination of any of these devices.
- the embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
- a computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
- these computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device,
- the instruction device realizes the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
- These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operating steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so that the computer or other programmable equipment is executed
- the instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Claims (16)
- 一种编解码方法,其特征在于,所述方法包括:获取当前块的至少一个运动信息角度预测模式;针对每个运动信息角度预测模式,基于所述运动信息角度预测模式的预配置角度,从当前块的周边块中选择所述预配置角度指向的多个周边匹配块;若所述多个周边匹配块的运动信息不完全相同,则将所述运动信息角度预测模式添加到当前块的运动信息预测模式候选列表中;根据所述运动信息预测模式候选列表对当前块进行编码或解码。
- 根据权利要求1所述的方法,其特征在于,所述从当前块的周边块中选择所述预配置角度指向的多个周边匹配块之后,所述方法还包括:若所述多个周边匹配块的运动信息完全相同,则禁止将所述运动信息角度预测模式添加到所述运动信息预测模式候选列表中。
- 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:从所述多个周边匹配块中选择至少一个第一周边匹配块;针对每个第一周边匹配块,从所述多个周边匹配块中选择所述第一周边匹配块对应的第二周边匹配块;将所述第一周边匹配块的运动信息与所述第二周边匹配块的运动信息进行比较;若所述第一周边匹配块的运动信息与所述第二周边匹配块的运动信息不同,则确定所述第一周边匹配块的比较结果为运动信息不同;若所述第一周边匹配块的运动信息与所述第二周边匹配块的运动信息相同,则确定所述第一周边匹配块的比较结果为运动信息相同;若任一第一周边匹配块的比较结果为运动信息不同,则确定所述多个周边匹配块的运动信息不完全相同;若所有第一周边匹配块的比较结果均为运动信息相同,则确定所述多个周边匹配块的运动信息完全相同。
- 根据权利要求3所述的方法,其特征在于,所述从所述多个周边匹配块中选择至少一个第一周边匹配块,包括:将所述多个周边匹配块中的任意一个或多个作为所述第一周边匹配块;或者,将所述多个周边匹配块中指定的一个或多个作为所述第一周边匹配块;所述从所述多个周边匹配块中选择所述第一周边匹配块对应的第二周边匹配块,包括:根据遍历步长和所述第一周边匹配块的位置,从所述多个周边匹配块中选择所述第一周边匹配块对应的第二周边匹配块;其中,所述遍历步长是所述第一周边匹配块与所述第二周边匹配块之间的块间隔。
- 根据权利要求4所述的方法,其特征在于,所述从所述多个周边匹配块中选择所述第一周边匹配块对应的第二周边匹配块之前,所述方法还包括:基于所述当前块的尺寸,确定所述遍历步长。
- 根据权利要求1所述的方法,其特征在于,所述基于所述运动信息角度预测模式的预配置角度,从当前块的周边块中选择所述预配置角度指向的多个周边匹配块之后,所述方法还包括:若所述多个周边匹配块中存在未编码块和/或帧内编码块,则对所述未编码块和/或所述帧内编码块的运动信息进行填充。
- 根据权利要求6所述的方法,其特征在于,所述对所述未编码块和/或所述帧内编码块的运动信息进行填充,包括:将所述未编码块和/或所述帧内编码块的邻近块的可用运动信息,填充为所述未编码块和/或所述帧内编码块的运动信息;或者,将所述未编码块和/或所述帧内编码块在时域参考帧中的对应参考块的可用运动信息,填充为所述未编码块和/或所述帧内编码块的运动信息;或者,将默认运动信息填充为所述未编码块和/或所述帧内编码块的运动信息。
- 根据权利要求1至7中任一项所述的方法,其特征在于,所述根据所述运动信息预测模式候选列表对当前块进行编码或解码,包括:从所述运动信息预测模式候选列表中选择所述当前块的目标运动信息预测模式;若所述目标运动信息预测模式为目标运动信息角度预测模式,则:根据所述目标运动信息角度预测模式,确定所述当前块的运动信息;根据所述当前块的运动信息,确定所述当前块的预测值。
- 根据权利要求8所述的方法,其特征在于,所述根据所述目标运动信息角度预测模式,确定所述当前块的运动信息,包括:基于所述目标运动信息角度预测模式对应的预配置角度,从所述当前块的周边块中选择所述预配置角度指向的多个周边匹配块;将所述当前块划分为至少一个子区域;针对每个子区域,从所述多个周边匹配块中选择与所述子区域对应的周边匹配块;根据选择的周边匹配块的运动信息确定所述子区域的运动信息。
- 根据权利要求8所述的方法,其特征在于,所述根据所述目标运动信息角度预测模式,确定所述当前块的运动信息,包括:根据所述目标运动信息角度预测模式和所述当前块的尺寸,确定所述当前块的用于获取运动信息的选择条件、所述当前块的子区域划分信息;其中,所述选择条件为第一选择条件或者第二选择条件,所述第一选择条件为从周边匹配块的运动信息中选择的运动信息不允许是双向运动信息,所述第二选择条件为从周边匹配块的运动信息中选择的运动信息允许是双向运动信息;基于所述目标运动信息角度预测模式对应的预配置角度,从所述当前块的周边块中选择所述预配置角度指向的多个周边匹配块;根据所述选择条件、所述子区域划分信息和所述多个周边匹配块的运动信息,确定所述当前块的运动信息。
- 根据权利要求8所述的方法,其特征在于,所述根据所述目标运动信息角度预测模式,确定所述当前块的运动信息,包括:根据所述目标运动信息角度预测模式对应的预配置角度,从所述当前块的周边块中选择所述预配置角度指向的多个周边匹配块;根据所述多个周边匹配块的运动信息,确定所述当前块的运动信息;其中,若所述当前块的宽和高都大于或等于8像素,则所述当前块的子区域划分信息为8像素*8像素,并且从周边匹配块的运动信息中选择的运动信息允许是双向运动信息。
- 一种编解码装置,其特征在于,所述装置包括:获取模块,用于获取当前块的至少一个运动信息角度预测模式;处理模块,用于针对每个运动信息角度预测模式,基于所述运动信息角度预测模式的预配置角度,从所述当前块的周边块中选择所述预配置角度指向的多个周边匹配块;若所述多个周边匹配块的运动信息不完全相同,则将所述运动信息角度预测模式添加到当前块的运动信息预测模式候选列表中;编解码模块,用于根据所述运动信息预测模式候选列表对所述当前块进行编码或解码。
- 一种解码端设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现如下步骤:获取当前块的至少一个运动信息角度预测模式;针对每个运动信息角度预测模式,基于所述运动信息角度预测模式的预配置角度,从当前块的周边块中选择所述预配置角度指向的多个周边匹配块;若所述多个周边匹配块的运动信息不完全相同,则将所述运动信息角度预测模式添 加到当前块的运动信息预测模式候选列表中;根据所述运动信息预测模式候选列表对当前块进行解码。
- 一种编码端设备,其特征在于,包括:处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现如下步骤:获取当前块的至少一个运动信息角度预测模式;针对每个运动信息角度预测模式,基于所述运动信息角度预测模式的预配置角度,从当前块的周边块中选择所述预配置角度指向的多个周边匹配块;若所述多个周边匹配块的运动信息不完全相同,则将所述运动信息角度预测模式添加到当前块的运动信息预测模式候选列表中;根据所述运动信息预测模式候选列表对当前块进行编码。
- 一种机器可读存储介质,其存储有机器可执行指令,其特征在于,所述机器可执行指令被处理器执行时实现如权利要求1至11中任一项所述的方法。
- 一种计算机程序,其包括计算机可读代码,其特征在于,所述计算机可读代码被处理器执行时实现如权利要求1至11中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910487541.4 | 2019-06-05 | ||
CN201910487541.4A CN112055220B (zh) | 2019-06-05 | 2019-06-05 | 一种编解码方法、装置及其设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020244425A1 true WO2020244425A1 (zh) | 2020-12-10 |
Family
ID=73608753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/092406 WO2020244425A1 (zh) | 2019-06-05 | 2020-05-26 | 一种编解码方法、装置及其设备 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN115460424B (zh) |
WO (1) | WO2020244425A1 (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013121167A (ja) * | 2011-12-09 | 2013-06-17 | Jvc Kenwood Corp | 画像符号化装置、画像符号化方法及び画像符号化プログラム |
CN103338373A (zh) * | 2013-06-15 | 2013-10-02 | 浙江大学 | 一种相邻边界长度导出方法及装置 |
CN104811726A (zh) * | 2015-04-24 | 2015-07-29 | 宏祐图像科技(上海)有限公司 | 帧率转换中运动估计的候选运动矢量选择方法 |
CN107257479A (zh) * | 2011-05-31 | 2017-10-17 | Jvc建伍株式会社 | 动图像编码装置、动图像编码方法以及记录介质 |
WO2018131982A1 (ko) * | 2017-01-16 | 2018-07-19 | 세종대학교 산학협력단 | 영상 신호 부호화/복호화 방법 및 장치 |
CN109587479A (zh) * | 2017-09-29 | 2019-04-05 | 华为技术有限公司 | 视频图像的帧间预测方法、装置及编解码器 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998042134A1 (en) * | 1997-03-17 | 1998-09-24 | Mitsubishi Denki Kabushiki Kaisha | Image encoder, image decoder, image encoding method, image decoding method and image encoding/decoding system |
US8675736B2 (en) * | 2009-05-14 | 2014-03-18 | Qualcomm Incorporated | Motion vector processing |
CN102223528B (zh) * | 2010-04-15 | 2014-04-30 | 华为技术有限公司 | 一种参考运动矢量获得方法 |
CN102164278B (zh) * | 2011-02-15 | 2013-05-15 | 杭州海康威视数字技术股份有限公司 | 用于去除i帧闪烁的视频编码方法及其装置 |
JP5678814B2 (ja) * | 2011-06-20 | 2015-03-04 | 株式会社Jvcケンウッド | 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに、送信装置、送信方法及び送信プログラム |
KR101347272B1 (ko) * | 2011-11-04 | 2014-01-10 | 연세대학교 산학협력단 | 인터 예측 방법 및 장치 |
KR20170078672A (ko) * | 2014-10-31 | 2017-07-07 | 삼성전자주식회사 | 고정밀 스킵 부호화를 이용한 비디오 부호화 장치 및 비디오 복호화 장치 및 그 방법 |
WO2017048008A1 (ko) * | 2015-09-17 | 2017-03-23 | 엘지전자 주식회사 | 영상 코딩 시스템에서 인터 예측 방법 및 장치 |
KR20170058837A (ko) * | 2015-11-19 | 2017-05-29 | 한국전자통신연구원 | 화면내 예측모드 부호화/복호화 방법 및 장치 |
US10390021B2 (en) * | 2016-03-18 | 2019-08-20 | Mediatek Inc. | Method and apparatus of video coding |
US10448011B2 (en) * | 2016-03-18 | 2019-10-15 | Mediatek Inc. | Method and apparatus of intra prediction in image and video processing |
US20170347094A1 (en) * | 2016-05-31 | 2017-11-30 | Google Inc. | Block size adaptive directional intra prediction |
CN106454378B (zh) * | 2016-09-07 | 2019-01-29 | 中山大学 | 一种基于变形运动模型的帧率上转换视频编码方法及系统 |
CN109089119B (zh) * | 2017-06-13 | 2021-08-13 | 浙江大学 | 一种运动矢量预测的方法及设备 |
CN112584170B (zh) * | 2018-12-28 | 2022-04-26 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法及其设备 |
-
2019
- 2019-06-05 CN CN202211098101.8A patent/CN115460424B/zh active Active
- 2019-06-05 CN CN201910487541.4A patent/CN112055220B/zh active Active
-
2020
- 2020-05-26 WO PCT/CN2020/092406 patent/WO2020244425A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107257479A (zh) * | 2011-05-31 | 2017-10-17 | Jvc建伍株式会社 | 动图像编码装置、动图像编码方法以及记录介质 |
JP2013121167A (ja) * | 2011-12-09 | 2013-06-17 | Jvc Kenwood Corp | 画像符号化装置、画像符号化方法及び画像符号化プログラム |
CN103338373A (zh) * | 2013-06-15 | 2013-10-02 | 浙江大学 | 一种相邻边界长度导出方法及装置 |
CN104811726A (zh) * | 2015-04-24 | 2015-07-29 | 宏祐图像科技(上海)有限公司 | 帧率转换中运动估计的候选运动矢量选择方法 |
WO2018131982A1 (ko) * | 2017-01-16 | 2018-07-19 | 세종대학교 산학협력단 | 영상 신호 부호화/복호화 방법 및 장치 |
CN109587479A (zh) * | 2017-09-29 | 2019-04-05 | 华为技术有限公司 | 视频图像的帧间预测方法、装置及编解码器 |
Non-Patent Citations (2)
Title |
---|
HAN (QUALCOMM) Y; ZHANG (QUALCOMM) Y; C-H HUANG (QUALCOMM); C-C CHEN (QUALCOMM); W-J CHIEN (QUALCOMM); KARCZEWICZ (QUALCOMM) M: "CE4.2.16: Sub-block merge candidates in BMS and JEM", 123. MPEG MEETING; 20180716 - 20180720; LJUBLJANA; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no. m43275, 18 July 2018 (2018-07-18), pages 1 - 5, XP030195898 * |
YU, RUOYANG ET AL.: "CE4-related: On MVP candidate list generation for AMVP", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 13TH MEETING: MARRAKECH, MA, 9–18 JAN. 2019, 18 January 2019 (2019-01-18), XP030201475 * |
Also Published As
Publication number | Publication date |
---|---|
CN112055220B (zh) | 2022-07-29 |
CN115460424A (zh) | 2022-12-09 |
CN112055220A (zh) | 2020-12-08 |
CN115460424B (zh) | 2024-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812821B2 (en) | Video encoding and decoding | |
WO2020134968A1 (zh) | 一种编解码方法及其设备 | |
US11936896B2 (en) | Video encoding and decoding | |
WO2020259372A1 (zh) | 一种编解码方法、装置及其设备 | |
CN111263144B (zh) | 一种运动信息确定方法及其设备 | |
WO2021244496A1 (zh) | 一种编解码方法、装置及其设备 | |
CN111510726B (zh) | 一种编解码方法及其设备 | |
WO2020244425A1 (zh) | 一种编解码方法、装置及其设备 | |
CN113794884B (zh) | 一种编解码方法、装置及其设备 | |
CN112449180B (zh) | 一种编解码方法、装置及其设备 | |
WO2020177747A1 (zh) | 编解码方法与装置、编码端设备和解码端设备 | |
CN115348442B (zh) | 一种运动信息确定方法、装置及其设备 | |
CN115348443B (zh) | 一种运动信息确定方法、装置及其设备 | |
WO2021052369A1 (zh) | 一种解码、编码方法、装置及其设备 |
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: 20819555 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: 20819555 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20819555 Country of ref document: EP Kind code of ref document: A1 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 16/09/2022) |