WO2020108360A1 - 视频图像编解码中的运动信息确定 - Google Patents
视频图像编解码中的运动信息确定 Download PDFInfo
- Publication number
- WO2020108360A1 WO2020108360A1 PCT/CN2019/119622 CN2019119622W WO2020108360A1 WO 2020108360 A1 WO2020108360 A1 WO 2020108360A1 CN 2019119622 W CN2019119622 W CN 2019119622W WO 2020108360 A1 WO2020108360 A1 WO 2020108360A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion information
- block
- prediction mode
- current image
- image block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
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/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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- 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
Definitions
- the present application relates to the technical field of codec, in particular to a method and device for determining motion information.
- the complete video coding method may include prediction, transformation, quantization, entropy coding, filtering and other processes.
- predictive coding includes intra-frame coding and inter-frame coding.
- Inter-frame coding utilizes the correlation in the video time domain to predict the pixels of the current image using pixels adjacent to the coded image, in order to effectively remove the video time-domain redundancy.
- Motion Vector can be 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, assuming that there is a strong time-domain correlation between the video image A of the current frame and the video image B of the reference frame, when the image block A1 (current image block) of the video image A needs to be transmitted, it can be performed.
- the motion search finds the image block B1 (that is, the reference image block) that best matches the image block A1, and determines the relative displacement between the image block A1 and the image block B1, which is also the motion vector of the image block A1.
- the present application provides a method and device for determining and determining motion information, which can save a large number of bits.
- the present application provides a method for determining motion information, which is applied to a decoding end and includes: creating a motion information prediction mode candidate list for a current image block, wherein the motion information prediction mode candidate list includes at least one motion information prediction mode; The target motion information prediction mode of the current image block is selected in the motion information prediction mode candidate list; the target motion information of the current image block is determined according to the target motion information prediction mode.
- the present application provides a method for determining motion information, which is applied to an encoding end and includes: creating a motion information prediction mode candidate list of a current image block, wherein the motion information prediction mode candidate list includes at least one motion information prediction mode; The target motion information prediction mode of the current image block is selected in the motion information prediction mode candidate list.
- the present application provides a decoding method, which is applied to a decoding end and includes: creating a motion information prediction mode candidate list of a current image block, wherein the motion information prediction mode candidate list includes at least one motion information prediction mode; from the motion information The target motion information prediction mode of the current image block is selected in the prediction mode candidate list; the target motion information of the current image block is determined according to the target motion information prediction mode; the received encoded bit stream is performed according to the target motion information decoding.
- the present application provides an encoding method, which is applied to an encoding end and includes: creating a motion information prediction mode candidate list of a current image block, wherein the motion information prediction mode candidate list includes at least one motion information prediction mode; from the motion information The target motion information prediction mode of the current image block is selected in the prediction mode candidate list; the current image block is encoded according to the target motion information prediction mode to obtain an encoded bitstream.
- 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-executable Instructions to implement the steps of the method for determining motion information described above.
- the present application provides an encoding-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-executable Instructions to implement the steps of the method for determining motion information described above.
- the target motion information prediction mode of the current image block can be determined, and the target motion information of the current image block can be determined according to the target motion information prediction mode, without dividing the current image block, which is effective Solve the bit overhead caused by sub-block division.
- motion information is provided for each designated area of the current image block, and different designated areas of the current image block may correspond to the same or different motion information, thereby bringing coding performance Improvement. In this way, the problem of transmitting a large number of motion vectors is effectively solved, and a large number of bits can be saved.
- FIG. 1 is a schematic diagram of a video encoding framework in an embodiment of this application
- 2A-1 to 2A-6 and 2B are schematic diagrams of a division manner in an embodiment of the present application.
- 3A and 3B are schematic diagrams of processing in the Merge mode and the AMVP mode
- FIG. 4 is a schematic diagram of an application scenario in an implementation manner of this application.
- FIG. 5 is a flowchart of a method for determining sports information in an embodiment of the present application.
- FIG. 6 is a flowchart of a method for determining exercise information in an embodiment of the present application.
- FIG. 7 is a flowchart of a method for determining exercise information in an embodiment of the present application.
- FIGS. 8A-8D are schematic diagrams of matching blocks in an embodiment of the present application.
- FIGS. 9A-9G are schematic diagrams of matching blocks in an embodiment of the present application.
- 10 and 11 are schematic diagrams of the processing flow at the encoding end and the decoding end;
- FIG. 12 is a structural diagram of an apparatus for determining exercise information in an embodiment of the present application.
- FIG. 13 is a structural diagram of a prediction mode determination device in an embodiment of the present application.
- FIG. 14 is a hardware structure diagram of a decoding device in an embodiment of the present application.
- 15 is a hardware configuration diagram of an encoding end device in an embodiment of the present application.
- first, second, third, etc. may be used to describe various information in the embodiments of the present 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 also be referred to as second information, and similarly, the second information may also be referred to as first information.
- word "if” used may be interpreted as "when” or “when” or "in response to a determination”.
- An embodiment of the present application provides a method for determining motion information, which involves the following concepts:
- Motion Vector In inter-frame coding, the 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, assuming that there is a strong time-domain correlation between the video image A of the current frame and the video image B of the reference frame, when transmitting the image block A1 (current image block) of the video image A, a 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, which is also the motion vector of the image block A1. Among them, each divided image block has a corresponding motion vector transmitted to the decoding end.
- the motion vector of each image block is independently encoded and transmitted, especially if it is divided into a large number of small image blocks, it consumes a lot of Bit.
- the spatial correlation between adjacent image blocks can be used to predict the motion vector of the current image block to be encoded based on the motion vectors of adjacent encoded image blocks, and then the prediction difference Encoding, which can effectively reduce the number of bits representing the motion vector.
- the motion vector of the adjacent encoded image block can be used to predict the motion vector of the current image block first, and then the predicted value of the motion vector (MVP, Motion Vector Prediction)
- MVP Motion Vector Prediction
- the difference between the real estimate of the motion vector (MVD, Motion Vector Difference) is encoded to effectively reduce the number of encoded bits of the motion vector.
- Motion Information Since the motion vector indicates the position offset of 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, it is necessary to refer to the index information of the frame image to indicate which one to use Reference frame image.
- a reference frame image list can usually be established, and the reference frame image index information indicates that the current image block adopts the reference frame image in the reference frame image list.
- an index value can also be used to indicate which reference image list is used. This index value can be referred to as a reference direction.
- motion-related information such as motion vectors, reference frame indexes, and reference directions can be collectively referred to as motion information.
- Rate-distortion Optimized There are two major indicators to evaluate coding efficiency: bit rate and PSNR (Peak Signal to Noise Ratio, peak signal to noise ratio). Among them, the smaller the bit stream, the greater the compression ratio, and the larger the PSNR, the better the quality of the reconstructed image. In the mode selection, the discriminant formula is essentially a comprehensive evaluation of the two. For example, the cost corresponding to the pattern:
- D Distortion (distortion)
- SSE refers to the mean square sum of the difference between the reconstructed image block and the source image
- ⁇ is the Lagrangian multiplier
- R is the image in this mode
- SSE refers to the mean square sum of the difference between the reconstructed image block and the source image
- ⁇ is the Lagrangian multiplier
- R is the image in this mode
- the actual number of bits required for block coding including the total number of bits required for coding mode information, motion information, residuals, etc.
- Intra prediction means that the reconstructed pixel values of the spatial neighboring image blocks of the current image block (that is, images in the same frame as the current image block) can be used for predictive coding.
- Inter prediction means that the reconstructed pixel values of the time-domain neighboring image blocks (which are in different frame images from the current image block) of the current image block can be used for predictive coding.
- CTU Coding Tree Unit
- a frame of image can be divided into several disjoint CTUs, and each CTU can be further divided into smaller blocks based on actual conditions.
- FIG. 1 for a schematic diagram of a video encoding framework.
- the encoding end processing flow of the embodiment of the present application may be implemented using a video encoding framework.
- the schematic diagram of the video decoding framework is similar to FIG. 1 and will not be repeated here.
- the video decoding framework may be used to implement the decoding end processing flow of the embodiment of the present application.
- the video encoding framework and the video decoding framework may include modules such as intra prediction, motion estimation/motion compensation, reference image buffer, in-loop filtering, reconstruction, transform, quantization, inverse transform, inverse quantization, and entropy encoder.
- modules such as intra prediction, motion estimation/motion compensation, reference image buffer, in-loop filtering, reconstruction, transform, quantization, inverse transform, inverse quantization, and entropy encoder.
- the encoding end processing flow can be realized.
- 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
- the CU can be further divided into two or four PUs (Prediction Units).
- Prediction Units Prediction Units
- the CU can be further divided into multiple TUs (Transform Units, transmission units).
- VVC Very Video Coding, universal video coding
- the division structure of binary tree/triple tree/quadtree is mixed, that is, the concept of CU, PU, TU is canceled, and CU
- the CU can be a square or rectangular division.
- the CTU first divides the quadtree, and then the leaf nodes of the quadtree divide the binary tree and the trigeminal tree.
- the CU can have five types of division, which are a quadtree division (Figure 2A-2), a horizontal binary tree division (Figure 2A-3), and a vertical binary tree division ( Figure 2A -4), horizontal trigeminal tree division ( Figure 2A-5) and vertical trigeminal tree division ( Figure 2A-6), etc.
- the division of the CU in the CTU may be any combination of the above five division types.
- the motion information of the current image block completely multiplexes the motion information of a neighboring block in the time or space domain, that is, from the motion information set of multiple surrounding image blocks, select one motion information as the current image block Sports information. Therefore, in the Merge mode, only one index value needs to be encoded to indicate which motion information in the motion information set is used by the current image block, thereby saving coding overhead.
- AMVP Advanced Motion Vector Prediction
- the AMVP mode is similar to the Merge mode. Both use the spatial and temporal motion information prediction ideas. By building a list of candidate motion information, the most cost-effective selection The best candidate is used as the motion information of the current image block.
- the main difference between the AMVP mode and the Merge mode is that in the Merge mode, the MV of the current unit is directly predicted by the adjacent prediction unit in the spatial or temporal domain, and there is no motion vector difference (Motion Vector Difference (MVD); AMVP can be seen As an MV prediction technique, the difference between the actual MV and the predicted MV needs to be encoded, so there is MVD. In addition, the MV queue lengths of the two candidates are different, and the way to construct the MV list is also different.
- MVD Motion Vector Difference
- the Merge mode can greatly save the coding overhead of motion information, and the AMVP mode can improve the prediction accuracy of motion information, if the current coding unit is not divided, the current coding unit has only one motion information, and the prediction accuracy is not very high.
- area C, area G, and area H are areas within the current coding unit, and are not divided sub-image blocks. Assuming that the current coding unit uses the motion information of the image block F, each region in the current coding unit uses the motion information of the image block F. Obviously, since the distance between the region H and the image block F in the current coding unit is very long, if the region H also uses the motion information of the image block F, the prediction accuracy of the motion information is not very high.
- sub-picture block C sub-picture block G, sub-picture block H, and sub-picture block I are sub-picture blocks divided in the current coding unit.
- additional bits need to be consumed to transmit the division mode, which brings a certain bit overhead.
- the motion information of some sub-picture blocks in the current coding unit cannot use the coded motion information around the current coding unit, which results in the reduction of the available motion information, and the accuracy of the motion information is not high.
- the sub-image block I in the current coding unit only the motion information of the sub-image block C, sub-image block G, and sub-image block H can be used, but the image block A, image block B, image block F, and image cannot be used.
- Motion information of block D and image block E are examples of motion information of block D and image block E.
- the current image block can 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 additional bits to transmit the division mode and save this part of bit overhead.
- the encoded motion information around the current image block provides more motion information for each area and improves the accuracy of the motion information.
- the current image block in the embodiment of the present application is an arbitrary image unit in the encoding and decoding process, and the encoding and decoding process is performed in units of the current image block.
- the current image block may be the current coding unit, that is, the CU in the foregoing embodiment, and the current image block will be used as an example later.
- the current image block includes 9 areas, such as area f1-area f9. These are areas within the current image block, and are not sub-image blocks obtained by dividing the current image block.
- the current image block can correspond to multiple motion information, for example, the area f1 corresponds to motion information 1, The area f2 corresponds to the motion information 2, and so on.
- the motion information of the image blocks A1, A2, A3, E, B1, B2, B3 can be used, that is, the motion information of the coded image blocks around the current image block can be used to become the area f5 provides more sports information.
- the motion information of the image blocks A1, A2, A3, E, B1, B2, B3 can also be used.
- Embodiment 1 Refer to FIG. 5, which is a schematic flowchart of a method for determining motion information in an embodiment of the present application. The method may be applied to a decoding end. The method may include the following steps:
- Step 501 Create a motion information prediction mode candidate list for the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- the motion information prediction mode may include but is not limited to: a first motion information prediction mode (such as a DC prediction mode) and/or a second motion information prediction mode (such as an angle prediction mode).
- a first motion information prediction mode such as a DC prediction mode
- a second motion information prediction mode such as an angle prediction mode
- the first motion information prediction mode is used to instruct the selection of at least two specified blocks from the surrounding blocks of the current image block as matching blocks, and weighting the motion information of the matching block as the target motion information of the current image block .
- the second motion information prediction mode is used to indicate a pre-configured angle, and select a matching block from a peripheral block of the current image block for a specified area inside the current image block according to the pre-configured angle, and according to the motion information of the matching block of the specified area Determine the target motion information of the specified area.
- the matching block is a block or multiple blocks determined from the peripheral blocks according to the pre-configured angle and the position of the specified area.
- the matching block may be the block pointed to by the pre-configured angle; or, when the pre-configured angle points to the middle of two blocks, the matching block may be one of the blocks, or the two Blocks can also be these two blocks and the blocks around these two blocks.
- the peripheral blocks include blocks adjacent to the current image block; or, the peripheral blocks include blocks adjacent to the current image block and non-adjacent blocks.
- the surrounding blocks may also include other blocks, for example, when the current image block is a boundary block, the configuration block filled for the missing surrounding blocks of the current image block is not limited.
- Step 502 Select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- Step 503 Determine the target motion information of the current image block according to the target motion information prediction mode.
- the matching block corresponding to the current image block may be determined according to the target motion information prediction mode, and the target motion information of the current image block may be determined according to the available motion information of the matching block.
- determining the matching block corresponding to the current image block according to the target motion information prediction mode may include: if the target motion information prediction mode is the first motion information prediction mode, then from the current image according to the first motion information prediction mode At least two blocks among the surrounding blocks of the block are selected as matching blocks of the current image block. In this manner of motion information prediction mode, it is possible to determine motion information that can be shared for the current image block, and these motion information are existing motion information of surrounding blocks.
- the target motion information prediction mode is the second motion information prediction mode
- a block or Multiple blocks serve as matching blocks in the specified area.
- different motion information can be configured for different regions of the current image block, and the motion information is existing motion information of surrounding blocks.
- the matching block corresponding to the current image block is an intra block
- the matching block corresponding to the current image block is an intra block
- the surrounding blocks are inter-frames Block, the weighted calculation of the motion information of the inter block and the motion information of at least one block around the inter block to obtain the adjusted motion information of the inter block; (2) if the surrounding block is an uncoded block , Determine at least one spatial domain available motion information and/or temporal domain available motion information of the uncoded block as the motion information of the uncoded block; or, determine at least two spatial domain available motion information of the uncoded block and /Or the time domain can use motion information to perform weighted calculation to obtain the motion information of the uncoded block; or, generate motion information containing zero motion vectors for the uncoded block; (3) If the surrounding block is an intra block, Then determine the motion information of the intra block according to the motion information of the inter blocks around the intra block (such as adjacent inter blocks, or non-adja
- the target motion information of the current image block is determined according to the available motion information of the matching block, which may include but is not limited to: if the number of matching blocks is one, the available motion information of one matching block is determined as the current motion of the current image block Target motion information; or, if the number of matching blocks is one, transform the available motion information of a matching block, and determine the transformed motion information as the target motion information of the current image block; or, if the number of matching blocks If there are at least two, one matching block is selected from at least two matching blocks, and the available motion information of the selected matching block is determined as the target motion information of the current image block; or, if the number of matching blocks is at least two, Then select one matching block from at least two matching blocks, transform the available motion information of the selected matching block, and determine the transformed motion information as the target motion information of the current image block; or, if the number of matching blocks is At least two, weighting the available motion information of at least two matching blocks, and determining the weighted motion information as the target motion information
- transforming the available motion information of the matching block may include, but is not limited to: scaling the available motion information of the matching block in a specified direction to obtain the transformed motion information.
- selecting the target motion information prediction mode of the current image block from the motion information prediction mode candidate list may include: receiving an encoded bit stream from the encoding end, the encoded bit stream carries first indication information, and the first indication information is used Index information indicating the target motion information prediction mode; based on the first indication information, the motion information prediction mode corresponding to the index information is selected from the motion information prediction mode candidate list as the target motion information prediction mode of the current image block.
- the encoded bit stream from the encoding end may also be received, and the encoded bit stream may carry second indication information that is used to indicate pre-configured motion information; based on the second indication information, based on the current image
- the pre-configured motion information of the block determines the target motion information of the current image block; or, it may receive an encoded bit stream from the encoding end, and the encoded bit stream may carry third indication information, which is used to indicate the pre-configured difference information ,
- the pre-configured difference information is used to indicate the motion vector difference; based on the third indication information, the target motion information of the current image block is determined according to the pre-configured difference information of the current image block.
- the target motion information prediction mode of the current image block can be determined, and the target motion information of the current image block can be determined according to the target motion information prediction mode, without dividing the current image block, which is effective Solve the bit overhead caused by sub-block division.
- motion information is provided for each designated area of the current image block, and different designated areas of the current image block may correspond to the same or different motion information, thereby bringing coding performance Improvement. In this way, the problem of transmitting a large number of motion vectors is effectively solved, and a large number of bits can be saved.
- Embodiment 2 Refer to FIG. 6, which is a schematic flowchart of a method for determining motion information in an embodiment of the present application. The method may be applied to an encoding end. The method may include the following steps:
- Step 601 Create a motion information prediction mode candidate list for the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- the motion information prediction mode may include but is not limited to: a first motion information prediction mode (such as a DC prediction mode) and/or a second motion information prediction mode (such as an angle prediction mode).
- a first motion information prediction mode such as a DC prediction mode
- a second motion information prediction mode such as an angle prediction mode
- the first motion information prediction mode is used to instruct the selection of at least two specified blocks from the surrounding blocks of the current image block as matching blocks, and weighting the motion information of the matching block as the target motion information of the current image block .
- the second motion information prediction mode is used to indicate a pre-configured angle, and select a matching block from a peripheral block of the current image block for a specified area inside the current image block according to the pre-configured angle, and according to the motion information of the matching block of the specified area Determine the target motion information of the specified area.
- the matching block of the specified area is one or more blocks determined from the peripheral blocks according to a pre-configured angle and the position of the specified area.
- the matching block may be the block pointed to by the pre-configured angle; or, when the pre-configured angle points to the middle of two blocks, the matching block may be one of the blocks, or the two Blocks can also be these two blocks and the blocks around these two blocks.
- the peripheral blocks include blocks adjacent to the current image block; or, the peripheral blocks include blocks adjacent to the current image block and non-adjacent blocks.
- the surrounding blocks may also include other blocks, for example, when the current image block is a boundary block, the configuration block filled for the missing surrounding blocks of the current image block is not limited.
- Step 602 Select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- a matching block corresponding to the current image block is determined from peripheral blocks of the current image block according to the motion information prediction mode, and the match is acquired
- the available motion information of the block determines the rate-distortion cost corresponding to the motion information prediction mode at least according to the available motion information of the matching block.
- the target motion information prediction mode of the current image block may be selected from the motion information prediction mode candidate list according to the rate-distortion cost corresponding to each motion information prediction mode in the motion information prediction mode candidate list.
- the matching block corresponding to the current image block is determined according to the motion information prediction mode, which may include, but is not limited to: if the motion information prediction mode is the first motion information prediction mode, then from the current image according to the first motion information prediction mode At least two blocks among the surrounding blocks of the block are selected as matching blocks of the current image block. Or, if the motion information prediction mode is the second motion information prediction mode, one of the surrounding blocks of the current image block is determined according to the position of the designated area inside the current image block and the pre-configured angle indicated by the second motion information prediction mode A block or multiple blocks are used as matching blocks in the specified area.
- the motion information prediction mode may include, but is not limited to: if the motion information prediction mode is the first motion information prediction mode, then from the current image according to the first motion information prediction mode At least two blocks among the surrounding blocks of the block are selected as matching blocks of the current image block. Or, if the motion information prediction mode is the second motion information prediction mode, one of the surrounding blocks of the current image block is determined according to the position of the designated
- the matching block corresponding to the current image block may also: according to the periphery of the intra block
- the motion information of the inter blocks (such as adjacent inter blocks or non-adjacent inter blocks) to generate the motion information of the intra block; or, a block containing zeros can be generated for the intra block Motion information of the motion vector; or, generating motion information for the intra block according to the motion information available in the time domain.
- the available motion information of the peripheral block is acquired: (1) If the peripheral block is an inter block, the The motion information of the inter block and the motion information of at least one block around the inter block are weighted to obtain the adjusted motion information of the inter block; (2) If the surrounding block is an uncoded block, the At least one spatial domain available motion information and/or temporal domain available motion information of the encoded block is determined as the motion information of the uncoded block; or, at least two spatial domain available motion information and/or time domain of the uncoded block are available Perform weighted calculation on the motion information to obtain the motion information of the uncoded block; or, generate motion information containing zero motion vectors for the uncoded block; (3) If the surrounding block is an intra block, then according to the frame Motion information of inter blocks around the inner block (such as adjacent inter blocks or non-adjacent inter blocks) to determine the motion information of the intra block; or, generate one for the intra block Motion information containing
- selecting the motion information prediction mode from the motion information prediction mode candidate list may include but is not limited to: based on each motion information The rate-distortion cost corresponding to the prediction mode, and the motion information prediction mode with the lowest rate-distortion cost is selected from the motion information prediction mode candidate list.
- the first rate distortion cost corresponding to the target motion information prediction mode can also be obtained, and corresponding to the pre-configured motion information or pre-configured difference information of the current image block
- the second rate distortion cost the difference information is used to indicate the motion vector difference. If the first rate-distortion cost is less than the second rate-distortion cost, an encoded bit stream carrying first indication information may be sent to the decoding end, where the first indication information is used to indicate the index information of the target motion information prediction mode.
- the first rate-distortion cost is greater than the second rate-distortion cost, it may: send the encoded bitstream carrying the second indication information to the decoding end, where the second indication information is used to indicate pre-configured motion information; or, send the carrying bit to the decoding end An encoded bit stream of third indication information, where the third indication information is used to indicate pre-configured difference information.
- the target motion information prediction mode of the current image block can be determined, and the target motion information of the current image block can be determined according to the target motion information prediction mode, without dividing the current image block, which is effective Solve the bit overhead caused by sub-block division.
- motion information is provided for each designated area of the current image block, and different designated areas of the current image block may correspond to the same or different motion information, thereby bringing coding performance Improvement. In this way, the problem of transmitting a large number of motion vectors is effectively solved, and a large number of bits can be saved.
- Embodiment 3 Refer to FIG. 7, which is a schematic flowchart of a method for determining motion information. The method includes:
- Step 701 The encoding end creates a candidate list of motion information prediction modes of the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- Step 702 The decoding end creates a candidate list of motion information prediction modes of the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- the motion information prediction mode candidate list at the encoding end is the same as the motion information prediction mode candidate list at the decoding end, that is, the order of the motion information prediction modes of the two is completely the same.
- Step 703 The encoding end selects the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- Step 704 The encoding end sends an encoded bit stream to the decoding end, where the encoded bit stream is used to carry first indication information, and the first indication information is used to indicate index information of the target motion information prediction mode.
- Step 705 The decoding end receives an encoded bit stream from the encoding end, where the encoded bit stream carries first indication information, and the first indication information is used to indicate index information of a target motion information prediction mode.
- Step 706 The decoding end selects the motion information prediction mode corresponding to the index information from the motion information prediction mode candidate list (that is, the motion information prediction mode candidate list acquired in step 702) as the target motion information prediction mode of the current image block .
- the decoding end determines the target motion information of the current image block according to the target motion information prediction mode.
- the matching block corresponding to the current image block may be determined according to the target motion information prediction mode, and the target motion information of the current image block may be determined according to the available motion information of the matching block.
- the target motion information prediction mode of the current image block can be determined, and the target motion information of the current image block can be determined according to the target motion information prediction mode, without dividing the current image block, which is effective Solve the bit overhead caused by sub-block division.
- motion information is provided for each designated area of the current image block, and different designated areas of the current image block may correspond to the same or different motion information, thereby bringing coding performance Improvement. In this way, the problem of transmitting a large number of motion vectors is effectively solved, and a large number of bits can be saved.
- Embodiment 4 In the above embodiment, it involves creating a motion information prediction mode candidate list of the current image block, that is, both the encoding side and the decoding side need to create a motion information prediction mode candidate list of the current image block.
- the candidate list of motion information prediction modes at the encoder and the candidate list of motion information prediction modes at the decoder are the same according to the protocol.
- the encoding end and the decoding end may adopt the same strategy to create the same motion information prediction mode candidate list.
- the above methods are just a few examples, and there is no limitation on the creation method, as long as the encoding end and the decoding end have the same motion information prediction mode candidate list.
- a motion information prediction mode candidate list can be created for the current image block, that is, all regions in the current image block correspond to the same motion information prediction mode candidate list; or, multiple motion information prediction mode candidates can be created for the current image block List.
- different current image blocks may correspond to the same or different motion information prediction mode candidate lists.
- a motion information prediction mode candidate list is created for each current image block.
- the motion information prediction mode candidate list 1 can be created for the current image block A
- the motion information prediction mode candidate list 2 can be created for the current image block B, and so on.
- the motion information prediction mode candidate list may include at least one motion information prediction mode, and the motion information prediction mode may include but is not limited to: a first motion information prediction mode (such as a DC prediction mode) and/or a second motion information Prediction mode (such as angle prediction mode).
- the first motion information prediction mode is a DC prediction mode used to predict the motion information of the current image block
- the second motion information prediction mode is an angle prediction mode used to predict the motion information of the current image block. Instructions.
- the first motion information prediction mode may also be other types of prediction modes
- the second motion information prediction mode may also be other types of prediction modes, which is not limited.
- the motion information prediction mode candidate list may include DC prediction mode 1, DC prediction mode 2, and DC prediction mode 3.
- the motion information prediction mode candidate list may include angle prediction mode 1, angle prediction mode 2, and angle prediction mode 3.
- the motion information prediction mode candidate list may include DC prediction mode 2, angle prediction mode 2, and angle prediction mode 3.
- the following uses DC prediction mode 2, angle prediction mode 2, and angle prediction mode 3 as examples for description.
- the surrounding blocks of the current image block may include, but are not limited to: blocks adjacent to the current image block, or blocks adjacent to the current image block and non-adjacent blocks. Of course, the surrounding blocks may also include other blocks, and there are no restrictions on the surrounding blocks.
- the peripheral blocks of the current image block may include the adjacent image block at the upper left of the current image block (ie, image block E); in the upper peripheral area of the current image block, traverse from the image block E to the right N1 adjacent image blocks, such as image blocks B1, B2, B3, D1, and so on, have been traversing N1 image blocks; in the peripheral area on the left side of the current image block, N2 traversing from image block E down Adjacent image blocks, such as image blocks A1, A2, A3, C1, and so on, have been traversing N2 image blocks.
- the peripheral blocks of the current image block may include, but are not limited to, blocks adjacent to the current image block, blocks that are not adjacent to the current image block, or even image blocks in other adjacent frames, which is not done for this limit.
- the image blocks passing through the dotted lines may all be peripheral blocks of the current image block, which is not limited.
- the image block that has not passed through the dotted line may also be a peripheral block of the current image block, which is not limited.
- DC prediction mode 1 is used to instruct the selection of the specified image blocks A1 and B2 from the surrounding blocks of the current image block as matching blocks, and perform weighted calculation on the motion information of the image blocks A1 and B2, and then use the calculation result as the current The target motion information of the image block.
- DC prediction mode 2 is used to instruct the selected image blocks A2 and B2 to be selected as matching blocks from the peripheral blocks of the current image block, and perform weighted calculation on the motion information of the image blocks A2 and B2, and then use the calculation result as The target motion information of the current image block, and so on.
- the DC prediction mode 1 is used to indicate the position indexes of the image blocks A1 and B2, so that the image blocks A1 and B2 can be used as the matching blocks of the current image block.
- DC prediction mode 2 is used to indicate the position indexes of image blocks A2 and B2, so that image blocks A2 and B2 can be used as matching blocks of the current image block, and so on.
- the weighted calculation of the motion information of the image blocks A1 and B2 includes: averaging the motion vectors of the image blocks A1 and B2; or, setting the weighting factor 1 for the motion vectors of the image block A1 and the motion of the image block B2
- the vector sets the weighting factor 2, and uses the motion vector and weighting factor 1 of the image block A1 and the motion vector and weighting factor 2 of the image block B2 to perform weighted calculation.
- Each angle prediction mode in the motion information prediction mode candidate list indicates a pre-configured angle, and instructs to select a matching block from a peripheral block of the current image block for a specified area inside the current image block according to the pre-configured angle, and according to the matching
- the motion information of the block determines the target motion information of the specified area.
- the matching block may be a block or multiple blocks determined from the peripheral blocks according to the pre-configured angle. For example, when the pre-configured angle points to a block, the matching block may be an angle-pointed block; or, when the pre-configured angle points to the middle of two blocks, the matching block may be one of the blocks, or two blocks, or There are two blocks and surrounding blocks, so there is no restriction on this.
- the peripheral blocks of the current image block may include, but are not limited to: blocks adjacent to the current image block, or blocks adjacent to the current image block and non-adjacent blocks.
- the surrounding blocks may also include other blocks, and there are no restrictions on the surrounding blocks.
- the angle prediction mode 1 is used to indicate that the pre-configured angle is 90 degrees, and the matching block is selected from the peripheral blocks of the current image block for the specified area according to the pre-configured angle of 90 degrees, as shown in FIG. 8B:
- the matching block of the specified area f1 is Image block B1, and the target motion information of the specified area f1 is determined according to the motion information of the image block B1;
- the matching block of the specified area f2 is the image block B2, and the target motion information of the specified area f2 is determined according to the motion information of the image block B2;
- the matching block of the area f3 is the image block B3, and the target motion information of the specified area f3 is determined according to the motion information of the image block B3, and so on.
- the angle prediction mode 2 is used to indicate that the pre-configured angle is 180 degrees, and the matching block is selected from the peripheral blocks of the current image block for the specified area according to the pre-configured angle of 180 degrees, as shown in FIG. 8C: the matching block of the specified area f1 It is the image block A1, and the target motion information of the specified area f1 is determined according to the motion information of the image block A1; the matching block of the specified area f2 is the image block A1, and the target motion information of the specified area f2 is determined according to the motion information of the image block A1; The matching block of the specified area f3 is the image block A1, and the target motion information of the specified area f3 is determined according to the motion information of the image block A1, and so on.
- the angle prediction mode 3 is used to indicate that the pre-configured angle is 45 degrees
- the matching block is selected from the peripheral blocks of the current image block for the specified area according to the pre-configured angle of 45 degrees, as shown in FIG. 8D: the matching block of the specified area f5 It is the image blocks B3 and D1, and the target motion information of the specified area f5 can be determined according to the motion information of the image blocks B3 and D1.
- the specific method refer to the subsequent embodiments.
- pre-configured angles can be any angle between 0-360 degrees.
- the pre-configured angle may be a fractional angle, such as 22.5 degrees, etc., which is not limited.
- the DC prediction mode in the embodiment of the present application may be a DC prediction mode for predicting motion information, that is, it is used in an inter-coding process, not applied in an intra-coding process. Moreover, the DC prediction mode selects the matching block, not the matching pixel.
- the angle prediction mode may be an angle prediction mode that predicts motion information, that is, it is used in the inter-coding process, not in the intra-coding process. Moreover, the angle prediction mode selects the matching block, not the matching pixel.
- both the encoding end and the decoding end can create a motion information prediction mode candidate list.
- the following uses DC prediction mode 2, angle prediction mode 2, and angle prediction mode 3 as examples.
- Embodiment 5 In the above embodiment, the encoding end selects the target motion information prediction mode of the current image block from the motion information prediction mode candidate list. The following describes this process, which may include the following steps:
- Step a1 For each motion information prediction mode in the motion information prediction mode candidate list, determine the matching block corresponding to the current image block according to the motion information prediction mode.
- the step a1 may include, but is not limited to: if the motion information prediction mode is a DC prediction mode (first motion information prediction mode), select at least two of the peripheral blocks of the current image block according to the DC prediction mode Each block serves as the matching block of the current image block. If the motion information prediction mode is an angle prediction mode (second motion information prediction mode), one of the surrounding blocks of the current image block is determined according to the position of the designated area inside the current image block and the pre-configured angle indicated by the angle prediction mode A block or multiple blocks are used as matching blocks in the specified area.
- the motion information prediction mode candidate list may include DC prediction mode 2, angle prediction mode 2, and angle prediction mode 3.
- the DC prediction mode 2 indicates the position indexes of the image blocks A2 and B2, and therefore, the specified image blocks A2 and B2 can be selected as matching blocks from the peripheral blocks of the current image block.
- the angle prediction mode 2 indicates that the pre-configured angle is 180 degrees, so the matching block of the designated area f1 is the image block A1, the matching block of the designated area f2 is the image block A1, and the matching block of the designated area f3 is the image block A1.
- the angle prediction mode 3 indicates that the pre-configured angle is 45 degrees, so the matching blocks of the designated area f5 are the image blocks B3 and D1.
- the above is just taking several designated areas as examples, and other designated areas may also be used, which is not limited.
- Step a2 Determine the rate-distortion cost corresponding to the motion information prediction mode according to the motion information of the matching block.
- the encoding end may determine the rate-distortion cost of DC prediction mode 2 according to the motion information of image blocks A2 and B2. In addition, the encoding end may determine the rate-distortion cost of the angle prediction mode 2 according to the motion information of the image block A1. In addition, the encoding end can determine the rate-distortion cost of the angle prediction mode 3 according to the motion information of the image blocks B3 and D1.
- the rate-distortion principle can be used to determine the rate-distortion cost of DC prediction mode 2 based on the motion information of image blocks A2 and B2.
- the rate-distortion cost can be determined by the following formula:
- D Distortion (distortion)
- SSE refers to the mean square sum of the difference between the reconstructed image block and the source image
- ⁇ is the Lagrangian multiplier
- R is the image in this mode
- the actual number of bits required for block coding including the total number of bits required for coding mode information, motion information, residuals, etc.
- rate-distortion cost There is no restriction on the method of determining the rate-distortion cost.
- the rate-distortion cost of angle prediction mode 2 and the rate-distortion cost of angle prediction mode 3 can also be determined.
- Step a3 Select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list according to the rate-distortion cost corresponding to each motion information prediction mode candidate list in the motion information prediction mode candidate list.
- the motion information prediction mode with the lowest rate-distortion cost may be selected from the motion information prediction mode candidate list.
- the above method is only an example, and there is no restriction on the selection method of the motion information prediction mode.
- DC prediction mode 2 is selected as the target motion information prediction mode.
- Embodiment 6 In the above embodiment, it involves the decoding end to select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list. The following describes this process, which may include the following steps:
- Step b1 The encoding end sends an encoded bit stream to the decoding end, where the encoded bit stream is used to carry first indication information, and the first indication information is used to indicate the index information of the target motion information prediction mode.
- the encoder determines the selected motion information prediction mode as the target motion information prediction mode of the current image block, it can determine the index information of the target motion information prediction mode in the motion information prediction mode candidate list. For example, if the target motion information prediction mode is For the second motion information prediction mode in the motion information prediction mode candidate list, the index information of the target motion information prediction mode may be 10, indicating 2.
- Step b2 The decoding end receives the encoded bit stream from the encoding end, where the encoded bit stream carries first indication information, and the first indication information is used to indicate the index information of the target motion information prediction mode.
- Step b3 The decoding end selects the motion information prediction mode corresponding to the index information from the motion information prediction mode candidate list as the target motion information prediction mode of the current image block. For example, when the first indication information indicates that the index information of the target motion information prediction mode is 2, the decoding end may determine the second motion information prediction mode in the motion information prediction mode candidate list as the target motion information of the current image block Forecast mode.
- the encoding end and the decoding end can fix a motion information prediction mode, so that the decoding end can directly determine the target motion information prediction mode without any syntax analysis.
- a flag may be first encoded to determine whether to adopt the motion information prediction mode to determine target motion information.
- the encoding end may fix a motion information prediction mode. In this way, the encoder does not need any bit overhead, and the decoder does not need to perform any syntax analysis, and can directly determine the target motion information prediction mode.
- Embodiment 7 In the foregoing embodiment, the decoding end determines the target motion information of the current image block according to the target motion information prediction mode.
- the process may include:
- Step c1 Determine the matching block corresponding to the current image block according to the target motion information prediction mode.
- the step c1 may include: if the target motion information prediction mode is a DC prediction mode, at least two blocks may be selected from the peripheral blocks of the current image block as matching blocks of the current image block according to the DC prediction mode. If the target motion information prediction mode is an angle prediction mode, one or more blocks can be determined from the surrounding blocks of the current image block according to the position of the specified area inside the current image block and the pre-configured angle indicated by the angle prediction mode. The matching block of the specified area is described.
- the target motion information prediction mode is DC prediction mode 2
- DC prediction mode 2 indicates the position index of image blocks A2 and B2
- the specified image blocks A2 and B2 are selected as matching blocks from the peripheral blocks of the current image block.
- the target motion information prediction mode is angle prediction mode 2
- the angle prediction mode 2 indicates that the pre-configured angle is 180 degrees
- the matching block of the specified area f1 is the image block A1
- the matching block of the specified area f2 is the image block A1. analogy.
- Step c2 Determine the target motion information of the current image block according to the motion information of the matching block.
- determining the target motion information of the current image block according to the motion information of the matching block may include:
- the motion information of one matching block can be determined as the target motion information of the current image block.
- the motion information of the image block A1 may be determined as the target motion information of the current image block, which will not be repeated here.
- the motion information of one matching block can be transformed, and the motion information obtained after the transformation can be determined as the target motion information of the current image block.
- the matching block is the image block A1
- the motion information of the image block A1 may be transformed, and the motion information obtained by the transformation may be determined as the target motion information of the current image block.
- Manner 3 If the number of matching blocks is at least two, one matching block can be selected from the at least two matching blocks, and the motion information of the selected matching block can be determined as the target motion information of the current image block. For example, if the image blocks A2 and B2 are used as matching blocks, one image block A2 is selected from the image blocks A2 and B2, and the motion information of the image block A2 is determined as the target motion information of the current image block.
- Method 4 If the number of matching blocks is at least two, you can select one matching block from at least two matching blocks, transform the motion information of the selected matching block, and determine the motion information obtained after the transformation as the current image Block target motion information. For example, if image blocks A2 and B2 are used as matching blocks, then image block A2 is selected from image blocks A2 and B2, the motion information of image block A2 is transformed, and the motion information obtained by the transformation is determined as the target of the current image block Sports information.
- the motion information of the at least two matching blocks may be weighted, and the motion information after the weighting operation may be determined as the target motion information of the current image block.
- the motion information of the image blocks A2 and B2 can be weighted.
- the specific weighting operation method is not limited, and the motion information obtained after the weighted operation is determined as the current image block Target sports information.
- the motion information of at least two matching blocks can be transformed, and then the motion information obtained by the transformation can be weighted, and the motion information obtained by the weighted operation can be determined as The target motion information of the current image block.
- the motion information of image block A2 can be transformed to obtain motion information 1
- the motion information of image block B2 can be transformed to obtain motion information 2
- the motion information 1 Perform weighting operation with motion information 2
- the specific weighting operation method is not limited, and the motion information obtained after the weighting operation can be determined as the target motion information of the current image block.
- transforming the motion information of the matching block may include, but is not limited to: scaling the motion information of the matching block in a specified direction.
- the telescopic transformation is only one transformation method, and other transformation methods can also be used, which is not limited.
- the specified direction may be the motion direction of the motion vector of the current image block, or the motion direction of the motion vector of the matching block. Of course, it may also be other directions, which is not limited. Among them, the manner of performing the scaling transformation on the motion information can be implemented in a traditional manner, and will not be repeated here.
- Embodiment 8 In addition to obtaining the target motion information in the above manner, the motion information of the current image block can also be obtained in a conventional manner.
- the motion information obtained in the traditional manner may be referred to as pre-configured motion information.
- the method of the embodiment of the present application may further include:
- the encoder After the encoder determines the target motion information prediction mode of the current image block, it can obtain the first rate distortion cost corresponding to the target motion information prediction mode.
- the rate distortion principle is used to determine the first rate distortion cost corresponding to the target motion information prediction mode and obtain The second rate distortion cost corresponding to the pre-configured motion information of the current image block, for example, the rate distortion principle is used to determine the second rate distortion cost corresponding to the pre-configured motion information.
- the encoding end may send an encoded bitstream carrying first indication information to the decoding end, where the first indication information is used to indicate target motion information prediction For the index information of the mode, refer to the first indication information in Embodiment 6. If the first rate-distortion cost is greater than the second rate-distortion cost, the encoding end may send an encoded bit stream carrying second indication information to the decoding end, where the second indication information is used to indicate pre-configured motion information.
- the decoding end receives the encoded bit stream from the encoding end. If the encoded bit stream carries the first indication information, the first indication information indicates the index information of the target motion information prediction mode. Therefore, based on the first indication information, the decoding end predicts from the motion information
- the motion information prediction mode corresponding to the index information is selected from the mode candidate list as the target motion information prediction mode of the current image block.
- the decoding end may determine the target of the current image block according to the pre-configured motion information of the current image block Sports information.
- the pre-configured motion information of the current image block may be determined as the target motion information of the current image block, and there is no limitation on this determination method.
- the encoding end may obtain the first rate-distortion cost corresponding to the target motion information prediction mode, such as using the rate-distortion principle to determine the first rate-distortion cost corresponding to the target motion information prediction mode Rate distortion cost, and obtain the second rate distortion cost corresponding to the pre-configured difference information of the current image block, for example, the rate distortion principle is used to determine the second rate distortion cost corresponding to the pre-configured difference information.
- the encoding end may send an encoded bitstream carrying first indication information to the decoding end, where the first indication information is used to indicate the index information of the target motion information prediction mode, See the first indication information of Embodiment 6. If the first rate-distortion cost is greater than the second rate-distortion cost, the encoding end may send an encoded bit stream carrying third indication information to the decoding end.
- the third indication information is used to indicate pre-configured difference information.
- the configuration difference information is used to indicate the motion vector difference value.
- the decoding end receives the encoded bit stream from the encoding end. If the encoded bit stream carries the first indication information, the first indication information indicates the index information of the target motion information prediction mode. Therefore, based on the first indication information, the decoding end predicts from the motion information
- the motion information prediction mode corresponding to the index information is selected from the mode candidate list as the target motion information prediction mode of the current image block.
- the third indication information indicates pre-configured difference information
- the pre-configured difference information is used to indicate the motion vector difference value. Therefore, based on the third indication information, the decoding end according to the current
- the pre-configured difference information of the image block determines the target motion information of the current image block. For example, the target motion information of the current image block is determined according to the pre-configured difference information of the current image block and certain specified motion information, for example, if the sum of the pre-configured difference information and the specified motion information is determined as the target motion information, this is determined There are no restrictions.
- the index information in the encoded bit stream may be index information encoded via a unary truncation code, or index information encoded via a fixed-length encoding method.
- index information encoded via a fixed-length encoding method may be used to encode the index information, and there is no restriction on this encoding method.
- the unary truncation code can be used to encode the index information of the target motion information prediction mode.
- the motion information prediction mode candidate list includes five motion information prediction modes, which are the motion information prediction modes ⁇ 0,1,2,3,4 ⁇ . Assuming that the target motion information prediction mode is motion information prediction mode 3, that is, the index information of the target motion information prediction mode is 4, the encoder can encode the index information into 0001, so that the decoder needs to decode to 1, which is the fourth The value is 1, so the decoder learns that the index information of the target motion information prediction mode is 4.
- the index information of the target motion information prediction mode can be encoded using a fixed-length encoding method.
- the motion information prediction mode candidate list includes 5 motion information prediction modes, which are motion information prediction modes ⁇ 0,1,2,3,4 ⁇ , and a total of 3 bits are required for encoding.
- 000 can be used to represent the first motion information prediction mode, namely motion information prediction mode 0,
- 001 can be used to represent the second motion information prediction mode, namely motion information prediction mode 1, and so on.
- the motion information prediction mode candidate list contains at least one of the DC prediction mode and the angle prediction mode.
- the angle in the angle prediction mode may be any angle, such as 22.5 degrees, and the DC prediction mode includes weighting of motion information of at least two matching blocks.
- the image blocks C1-C4 and D1-D4 are not coded, but can be filled with the motion information of the coded blocks in the time domain or the space domain, or can be determined by Fill in the processed motion information. Therefore, the image blocks C1-C4 and D1-D4 may also be used as matching blocks.
- the meaning of padding is to determine at least one spatial domain available motion information and/or time domain available motion information as the motion information of the uncoded block; or, to determine at least two spatial domain available motion information of the uncoded block and /Or time domain may use motion information to perform weighted calculation to obtain motion information of the uncoded block.
- the motion information prediction mode candidate list that is, the order of addition shown in FIG. 9B.
- the motion information prediction mode 1, motion information prediction mode 2, and motion information prediction mode 4 may be added to the motion information prediction mode candidate list in order.
- motion information prediction mode 0, motion information prediction mode 2 and motion information prediction mode 3 may be added to the motion information prediction mode candidate list in order.
- the motion information prediction mode at any angle may not be added to the motion information prediction mode candidate list.
- the motion information prediction mode selects the angle prediction mode, and the motion information of the surrounding 4x4 blocks pointed to is used as the motion information of the 4x4 blocks inside the current image block according to the selected angle, and all 4x4 blocks inside the current image block It is the same operation.
- the motion information of surrounding blocks may or may not be processed. If the motion information of the surrounding blocks is not processed, the foregoing embodiments 4, 5, and 9 are used, and if the motion information of the surrounding blocks is processed, the subsequent embodiment 10 may be used.
- Embodiment 10 In the above embodiment, the motion information of the matching block needs to be used for related processing. In this way, how to use the motion information of the matching block when there is motion information in the matching block, and how to determine the motion information of the matching block when there is no motion information in the matching block, this embodiment also provides the following ways:
- the matching block corresponding to the current image block is an intra block
- this intra block since this intra block does not have motion information, it can be based on the inter blocks around the intra block (such as adjacent inter blocks, Or, the motion information of non-adjacent inter-blocks) generates motion information of the intra block; or, generates motion information containing zero motion vectors for the intra block; or, according to the time domain available motion information is The intra block generates motion information.
- the available motion information of the peripheral blocks can be obtained by performing at least one of the following processing on any peripheral block: (1) If the peripheral block is an inter block, the motion information of the inter block and the inter frame The motion information of at least one block around the block is weighted to obtain the adjusted motion information of the inter-frame; (2) if the surrounding block is an uncoded block, at least one spatial domain of the uncoded block can be used with motion information and/or time domain The available motion information is determined to be the motion information of the uncoded block; or, the motion information of the at least two spatial domains and/or the time domain available motion information of the uncoded block is weighted to obtain the motion information of the uncoded block; or, Generate motion information containing zero motion vectors for the uncoded block; (3) if the surrounding block is an intra block, according to the inter blocks around the intra block (such as adjacent inter blocks, or The motion information of the intra block; or, generate motion information containing zero motion vectors for the intra block; or, based on the time domain available motion
- the motion information of the inter block may be filtered, and the filtered motion information is used as the motion information of the matching block.
- the motion information of the inter block and the motion information of at least one block around the inter block may be weighted to obtain the adjusted motion information of the inter block as the motion information of the matching block.
- the motion information of the uncoded blocks can be filled.
- the motion information in the time or space domain can be directly filled, or the motion information obtained by performing a certain transformation on the motion information in the time or space domain; or,
- the motion information in the time or space domain may be directly filled, or the motion information obtained by performing certain transformation on the motion information in the time or space domain.
- At least one spatial domain available motion information and/or temporal domain available motion information of the uncoded block may be determined as the motion information of the uncoded block; or, at least two spatial domain available motion information of the uncoded block and/or In the time domain, motion information can be used for weighted calculation to obtain motion information of uncoded blocks.
- the motion information of other inter blocks may be used for padding, or zero motion vectors, or other motion information.
- the motion information of the intra block can be determined according to the motion information of inter blocks (such as adjacent inter blocks, or non-adjacent inter blocks) around the intra block; or, it is a frame
- the inner block generates a motion information containing zero motion vectors.
- the configuration block (that is, any preset available block) can be determined as the peripheral block of the current image block, and the motion information of the configuration block can be generated according to the available motion information in the air domain.
- 4x4 blocks of motion information are filled from the lower left to the upper right, where the lower left length is the width of the current image block and the upper right length is the height of the current image block.
- a peripheral block such as a 4x4 block
- intra coding it can be filled with the motion information of the nearest 4x4 inter block next to it. If the distance between the two adjacent inter blocks is equal to the padding block, then Select the upper square or the right block.
- the closest inter blocks to the intra blocks are A1 and A5.
- the motion information of the inter block A1 can be selected to fill the intra block A2, A3 and A4.
- the closest inter block to this intra block A4 is A5, and the motion information of the inter block A5 can be selected to fill this intra block A4.
- the inter blocks closest to the intra block are B1 and B5, and the motion information of the inter block B1 can be selected to fill the intra blocks B2, B3, and B4, respectively.
- the closest inter-block is B5, and the motion information of the inter-block B5 can be selected to fill this intra-block B4.
- the motion information is filtered, and the motion information of the surrounding blocks is weighted.
- each inter-block motion information such as inter-block A4 motion information
- it can be obtained by weighting at least one surrounding inter-block motion information and inter-block A4 motion information.
- it can be obtained by weighting the motion information of the inter block A4 and the motion information of the inter block A5
- the information is obtained by weighting the motion information of the inter blocks A5 and A3, or may be obtained by weighting the motion information of the inter blocks A2, A3, A5 and A6 and the motion information of the inter block A4.
- A3 is an intra block, and the available motion information of the image blocks around the intra block A3 can be used to determine the motion information of the intra block A3; or, one can be generated for the intra block A3
- the motion information containing zero motion vectors is not limited.
- the current image block is the boundary block of the image
- B4, B5, B6, and B7 are the configuration blocks of the current image block outside the boundary.
- Blocks B4, B5, B6, and B7 are filled, or the available motion information in at least two air domains and/or the available motion information in the time domain are weighted, and the available motion information obtained after the weighted calculation is used to configure blocks B4, B5 , B6 and B7 are filled, or the configuration blocks B4, B5, B6 and B7 are filled with motion information of zero motion vectors.
- Embodiment 11 An embodiment of the present application proposes a decoding method, which can be applied to the decoding end, including:
- Step d1 Create a motion information prediction mode candidate list for the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- Step d2 Select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- Step d3 Determine the target motion information of the current image block according to the target motion information prediction mode.
- Step d4 Decode the received encoded bit stream according to the target motion information.
- the decoding end can decode the encoded bit stream according to the target motion information.
- the decoding end can decode the encoded bit stream according to the target motion information.
- Embodiment 12 An embodiment of the present application proposes a coding method, which can be applied to the coding end, including:
- Step e1 Create a motion information prediction mode candidate list for the current image block.
- the motion information prediction mode candidate list may include at least one motion information prediction mode.
- Step e2 Select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- Step e3 Encode the current image block according to the target motion information prediction mode to obtain an encoded bit stream.
- the encoding end After the encoding end obtains the target motion information prediction mode, it can encode the current image block according to the target motion information prediction mode.
- the specific encoding method refer to the traditional method, which will not be repeated here.
- Embodiment 13 As shown in FIG. 10, which is a schematic diagram of a processing flow at the encoding end, the encoding end may construct a motion information prediction mode candidate list (1001) of a current image block, and select a target motion information prediction mode from the motion information prediction mode candidate list (1002). If the motion information determined according to the target motion information prediction mode is used (the judgment result of 1003 is YES), the index information of the target motion information prediction mode in the motion information prediction mode candidate list is carried into the encoded bit stream (1004), if not used The target motion information (the judgment result of 1003 is NO), then other motion information is carried into the encoded bit stream (1005).
- the decoding end can parse the indication information in the encoded bit stream (1101). If the instruction information indicates that the motion information determined according to the target motion information prediction mode is used (the judgment result of 1102 is YES), a motion information prediction mode candidate list of the current image block is constructed (1103), and the motion information prediction mode candidate list is selected from the index information The target motion information prediction mode is selected (1104), and the target motion information of the current image block is derived using the target motion information prediction mode (1105). If the instruction information indicates that target motion information is not to be used (the judgment result of 1102 is NO), other motion information is used (1106).
- a motion information prediction mode candidate list may be constructed, and the candidate list includes at least one of a DC prediction mode and an angle prediction mode.
- the DC prediction mode is a weighting of motion information of peripheral blocks of the current image block.
- Peripheral blocks include blocks adjacent to the current image block, as well as non-adjacent blocks, such as the lower left and upper right lines.
- the angle prediction mode refers to the principle similar to the intra prediction mode, and predicts the motion information of the sub-blocks within the current image block according to a certain angle. There are five angles, such as horizontal, vertical, horizontal upward, horizontal downward, and vertical right, but this solution is not limited to these five angles, and all angles are included in this solution.
- Filling reference motion information to the surrounding blocks of the current image block may include at least one of the following: If the surrounding blocks are in the right column, they can be filled directly by the motion information in the time or space domain, or they can be filled after a certain transformation; if Peripheral blocks are the bottom row, which can be directly filled with motion information in the time or space domain, or can be filled after a certain transformation; if the peripheral block is an intra-coded block, it is filled with the motion information of other inter-coded blocks, or filled Zero motion vectors, other motion information (except motion vectors) can be freely selected; if the adjacent position of the current image block is not available, it is filled with motion information of other available blocks, or filled with zero motion vectors, other motion information (except (Outside the motion vector) can be freely selected.
- the DC prediction mode when the DC prediction mode is selected to assign motion information to each region of the current image block, it includes weighting calculation of at least two different motion information around to obtain the motion information of the current image block.
- the angle when the angle prediction mode is selected to assign motion information to each area of the current image block, the angle may be a horizontal angle mode, for example, the area on the first line uses motion information of the A1 block.
- the angle when the angle prediction mode is selected to assign motion information to each region of the current image block, the angle may be the horizontal angle mode.
- the motion information of the A1 block is used in the area of the first line. For example, a certain scale operation can be performed on the motion information of the A1 block, and then the motion information obtained by the scaling operation can be assigned to each area of the first line. The processing of the remaining lines is similar, and the other angle prediction modes are similar.
- the angle when the angle prediction mode is selected to assign motion information to each region of the current image block, the angle may be the horizontal angle mode.
- the horizontal prediction mode when the horizontal prediction mode is adopted, if the corresponding A1 block has multiple different motion information, any one of the multiple different motion information of the A1 block can be selected, or multiple different motion information of the A1 block can be selected. At least two of the motion information in the are weighted, and then the motion information obtained by the weighting is assigned to each area of the first line, the remaining lines are similar, and the other angle prediction modes are also similar.
- the angle prediction mode when the angle prediction mode is selected to assign motion information to each area of the current image block, if the direction corresponding to the angle is not exactly a sub-block, at least two motion information on the left and right sides of the angle can be weighted Then, the motion information obtained by the weighting process is assigned to the area of the current image block.
- the motion information prediction mode candidate list in the scheme is the same as the prediction mode list of other schemes, only one-ary truncation code is needed to encode the index position information of the technical scheme in the motion information prediction mode candidate list
- the specific encoding method refer to the above embodiment.
- a flag can be encoded first to determine whether to use the motion information prediction mode, if the motion information prediction mode is used, the encoder can fix a motion information prediction mode, so that no bit overhead is required for transmission and motion information Information related to the prediction mode.
- a flag may be decoded first to determine whether to use the motion information prediction mode. If the motion information prediction mode is used, a fixed-length method is used to decode the index information of the specific prediction mode in the candidate list. In an example, if the list of the present technical solution is the same as the list of other technical solutions, the existing solution is used to decode the index information of the specific prediction mode in the candidate list.
- Embodiment 14 Based on the same application concept as the above method, an embodiment of the present application further proposes a device for determining motion information, which is applied to the decoding end.
- FIG. 12 it is a structural diagram of the motion information determining apparatus 1200, including: a creation module 1201 for creating a motion information prediction mode candidate list of a current image block, the motion information prediction mode candidate list including at least one motion Information prediction mode; selection module 1202, used to determine the target motion information prediction mode of the current image block from the motion information prediction mode candidate list; determination module 1203, used to determine the current image block according to the target motion information prediction mode Target sports information.
- FIG. 13 it is a structural diagram of the motion information determination device 1300, including: a creation module 1301 for creating a motion information prediction mode candidate list of a current image block, wherein the motion information prediction mode candidate list includes at least A motion information prediction mode; the selection module 1302 is used to select the target motion information prediction mode of the current image block from the motion information prediction mode candidate list.
- the decoding device 1400 includes a processor 141 and a machine-readable storage medium 142, wherein: the machine-readable storage medium 142 stores machine-executable instructions executable by the processor 141; the processor 141 is used to execute Machine executable instructions to implement the methods disclosed in the above examples of this application.
- the encoding end device 1500 includes a processor 151 and a machine-readable storage medium 152, wherein: the machine-readable storage medium 152 stores machine-executable instructions executable by the processor 151; the processor 151 is used to execute Machine executable instructions to implement the methods disclosed in the above examples of this application.
- embodiments of the present application also provide a machine-readable storage medium, which stores several computer instructions.
- the present invention can be implemented. Apply the method disclosed in the above example.
- the above 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 drive (such as a hard disk drive), solid-state drive, any type of storage disk (Such as optical discs, DVDs, etc.), or similar storage media, or a combination thereof.
- the system, device, module or unit explained in the above embodiments may be implemented by a computer chip or entity, or by a product with a certain function.
- a typical implementation device is a computer, and the specific form of the computer may 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 sending and receiving device, and a game control Desk, tablet computer, wearable device, or any combination of these devices.
- the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present application may take the form of computer program products 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 code.
- computer usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
- these computer program instructions may also be stored in a computer readable memory that can guide the computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture including instruction means,
- the instruction device implements the functions specified in one block or multiple blocks of one flow or multiple blocks of the flowchart and/or block diagram.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operating steps are performed on the computer or other programmable device to produce computer-implemented processing, which is executed on the computer or other programmable device
- the instructions provide steps for implementing the functions specified in one block or multiple blocks of the flowchart one flow or multiple flows and/or block diagrams.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Claims (23)
- 一种运动信息确定方法,应用于解码端,包括:创建当前图像块的运动信息预测模式候选列表,其中,所述运动信息预测模式候选列表包括至少一个运动信息预测模式;从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式;根据所述目标运动信息预测模式确定所述当前图像块的目标运动信息。
- 根据权利要求1所述的方法,其特征在于,所述运动信息预测模式包括以下任意一个或多个:第一运动信息预测模式,用于指示从所述当前图像块的周边块中选择指定的至少两个块作为匹配块,并将对所述匹配块的运动信息进行加权计算得到的运动信息作为所述当前图像块的目标运动信息;第二运动信息预测模式,用于指示预配置角度,以及根据所述预配置角度从所述当前图像块的周边块中为所述当前图像块内部的指定区域选择匹配块,并根据所述指定区域的匹配块的运动信息确定所述指定区域的目标运动信息,所述指定区域的匹配块是按照所述预配置角度和所述指定区域的位置从所述周边块中确定出的一个块或多个块;其中,所述周边块包括与当前图像块相邻的块;或者,所述周边块包括与当前图像块相邻的块和非相邻的块。
- 根据权利要求2所述的方法,其特征在于,所述根据所述目标运动信息预测模式确定所述当前图像块的目标运动信息,包括:根据所述目标运动信息预测模式确定所述当前图像块对应的匹配块;根据所述匹配块的可用运动信息确定所述当前图像块的目标运动信息。
- 根据权利要求3所述的方法,其特征在于,所述根据所述目标运动信息预测模式确定所述当前图像块对应的匹配块,包括:若所述目标运动信息预测模式是所述第一运动信息预测模式,则根据所述第一运动信息预测模式,从所述当前图像块的周边块中选取至少两个块作为所述当前图像块的匹配块;若所述目标运动信息预测模式是所述第二运动信息预测模式,则根据所述当前图像块内部的指定区域的位置和所述第二运动信息预测模式指示的预配置角度,从所述当前图像块的周边块中确定出一个块或多个块作为所述指定区域的匹配块。
- 根据权利要求3所述的方法,其特征在于,若根据所述目标运动信息预测模式确定所述当前图像块对应的所述匹配块为帧内块,则:根据所述帧内块周边的帧间块的运动信息,生成所述帧内块的运动信息;或者,为所述帧内块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述帧内块生成一个运动信息。
- 根据权利要求2所述的方法,其特征在于,在根据所述目标运动信息预测模式确定所述当前图像块的目标运动信息之前,通过对任一周边块进行以下至少一种的处理,获取所述周边块的可用运动信息;若所述周边块为帧间块,将对所述帧间块的运动信息和所述帧间块周边的至少一个块的运动信息进行加权计算得到的运动信息作为所述帧间块调整后的运动信息;若所述周边块为未编码块,将所述未编码块的至少一个空域可用运动信息和/或时域可用运动信息确定为所述未编码块的运动信息;或者,将对所述未编码块的至少两个空域可用运动信息和/或时域可用运动信息进行加权计算得到的运动信息作为所述未编码块的运动信息;或者,为所述未编码块生成一个包含零运动矢量的运动信息;若所述周边块为帧内块,则根据所述帧内块周边的帧间块的运动信息,确定所述帧内块的运动信息;或者,为所述帧内块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述帧内块生成一个运动信息;若所述当前图像块为边界块,所述周边块包括至少一个配置块,则根据空域可用运动信息生成所述配置块的运动信息;或者,为所述配置块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述配置块生成一个运动信息。
- 根据权利要求3所述的方法,其特征在于,所述根据所述匹配块的可用运动信息确定所述当前图像块的目标运动信息,包括:若匹配块的数量为一个,则将一个匹配块的可用运动信息确定为所述当前图像块的目标运动信息;或者,将对一个匹配块的可用运动信息进行变换后得到的运动信息确定为所述当前图像块的目标运动信息;或者,若匹配块的数量为至少两个,则从至少两个匹配块中选择一个匹配块,并将选择的匹配块的可用运动信息确定为所述当前图像块的目标运动信息;或者,从至少两个匹配块中选择一个匹配块,将对选择的匹配块的可用运动信息进行变换后得到的运动信息确定为所述当前图像块的目标运动信息;或者,将对至少两个匹配块的可用运动信息进行加权运算后得到的运动信息确定为所述当前图像块的目标运动信息;将对至少两个匹配块的可用运动信息先进行变换,再进行加权运算后得到的运动信息确定为所述当前图像块的目标运动信息。
- 根据权利要求7所述的方法,其特征在于,所述对所述匹配块的可用运动信息进行变换,包括:在指定方向上对所述匹配块的可用运动信息进行伸缩变换。
- 根据权利要求1所述的方法,其特征在于,所述从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式,包括:接收来自编码端的编码比特流,所述编码比特流携带第一指示信息,所述第一指示信息用于指示所述目标运动信息预测模式的索引信息;基于所述第一指示信息,从所述运动信息预测模式候选列表中选择与所述索引信息所对应的运动信息预测模式,作为所述当前图像块的所述目标运动信息预测模式。
- 根据权利要求1所述的方法,其特征在于,所述方法还包括:若来自编码端的编码比特流携带第二指示信息,所述第二指示信息用于指示预配置 运动信息,则根据所述当前图像块的预配置运动信息确定所述当前图像块的目标运动信息;或者,若所述编码比特流携带第三指示信息,所述第三指示信息用于指示预配置差值信息,所述预配置差值信息用于指示运动矢量差值,则根据所述当前图像块的预配置差值信息确定所述当前图像块的目标运动信息。
- 一种运动信息确定方法,应用于编码端,包括:创建当前图像块的运动信息预测模式候选列表,其中,所述运动信息预测模式候选列表包括至少一个运动信息预测模式;从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式。
- 根据权利要求11所述的方法,其特征在于,所述运动信息预测模式包括以下任意一个或多个:第一运动信息预测模式,用于指示从所述当前图像块的周边块中选择指定的至少两个块作为匹配块,并将对所述匹配块的运动信息进行加权计算得到的运动信息作为所述当前图像块的目标运动信息;第二运动信息预测模式,用于指示预配置角度,以及根据所述预配置角度从所述当前图像块的周边块中为所述当前图像块内部的指定区域选择匹配块,并根据所述指定区域的匹配块的运动信息确定所述指定区域的目标运动信息,所述指定区域的匹配块是按照所述预配置角度和所述指定区域的位置从所述周边块中确定出的一个块或多个块;其中,所述周边块包括与当前图像块相邻的块;或者,所述周边块包括与当前图像块相邻的块和非相邻的块。
- 根据权利要求12所述的方法,其特征在于,所述从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式,包括:针对所述运动信息预测模式候选列表中的每个运动信息预测模式,根据所述运动信息预测模式,从所述当前图像块的周边块中确定所述当前图像块对应的匹配块;获取所述匹配块的可用运动信息;至少根据所述匹配块的可用运动信息,确定所述运动信息预测模式对应的率失真代价;根据所述运动信息预测模式候选列表中的每个运动信息预测模式对应的率失真代价,从所述运动信息预测模式候选列表中选择所述当前图像块的所述目标运动信息预测模式。
- 根据权利要求13所述的方法,其特征在于,所述根据所述运动信息预测模式,确定所述当前图像块对应的匹配块,包括:若所述运动信息预测模式是所述第一运动信息预测模式,则根据所述第一运动信息预测模式,从所述当前图像块的周边块中选取至少两个块作为所述当前图像块的匹配块;若所述运动信息预测模式是所述第二运动信息预测模式,则根据所述当前图像块内部的指定区域的位置和所述第二运动信息预测模式指示的预配置角度,从所述当前图像块的周边块中确定出一个块或多个块作为所述指定区域的匹配块。
- 根据权利要求13所述的方法,其特征在于,若根据所述运动信息预测模式确 定所述当前图像块对应的所述匹配块为帧内块,则:根据所述帧内块周边的帧间块的运动信息,生成所述帧内块的运动信息;或者,为所述帧内块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述帧内块生成一个运动信息。
- 根据权利要求13所述的方法,其特征在于,在所述获取所述匹配块的可用运动信息之前,通过对任一周边块进行以下至少一种的处理,获取所述周边块的可用运动信息;若所述周边块为帧间块,将对所述帧间块的运动信息和所述帧间块周边的至少一个块的运动信息进行加权计算得到的运动信息作为所述帧间块调整后的运动信息;若所述周边块为未编码块,则将所述未编码块的至少一个空域可用运动信息和/或时域可用运动信息确定为所述未编码块的运动信息;或者,将对所述未编码块的至少两个空域可用运动信息和/或时域可用运动信息进行加权计算得到的运动信息作为所述未编码块的运动信息;或者,为所述未编码块生成一个包含零运动矢量的运动信息;若所述周边块为帧内块,则根据所述帧内块周边的帧间块的运动信息,确定所述帧内块的运动信息;或者,为所述帧内块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述帧内块生成一个运动信息;若所述当前图像块为边界块,所述周边块包括至少一个配置块,则根据空域可用运动信息生成所述配置块的运动信息;或者,为所述配置块生成一个包含零运动矢量的运动信息;或者,根据时域可用运动信息为所述配置块生成一个运动信息。
- 根据权利要求13所述的方法,其特征在于,根据所述运动信息预测模式候选列表中的每个运动信息预测模式对应的率失真代价,从所述运动信息预测模式候选列表中选择所述当前图像块的所述目标运动信息预测模式,包括:基于每个运动信息预测模式对应的率失真代价,从所述运动信息预测模式候选列表中选择率失真代价最小的运动信息预测模式,作为所述当前图像块的所述目标运动信息预测模式。
- 根据权利要求11所述的方法,其特征在于,所述从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式之后,还包括:获取所述目标运动信息预测模式对应的第一率失真代价;获取所述当前图像块的预配置运动信息或者预配置差值信息对应的第二率失真代价,所述预配置差值信息用于指示运动矢量差值;若第一率失真代价小于第二率失真代价,向解码端发送携带第一指示信息的编码比特流,所述第一指示信息用于指示目标运动信息预测模式的索引信息。
- 根据权利要求18所述的方法,其特征在于,所述方法还包括:若所述第一率失真代价大于所述第二率失真代价,则向解码端发送携带第二指示信息的编码比特流,所述第二指示信息用于指示所述预配置运动信息;或者,向解码端发送携带第三指示信息的编码比特流,所述第三指示信息用于指示所述预配置差值信息。
- 一种解码方法,应用于解码端,包括:创建当前图像块的运动信息预测模式候选列表,其中,所述运动信息预测模式候选列表包括至少一个运动信息预测模式;从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式;根据所述目标运动信息预测模式确定所述当前图像块的目标运动信息;根据所述目标运动信息对接收的编码比特流进行解码。
- 一种编码方法,应用于编码端,包括:创建当前图像块的运动信息预测模式候选列表,其中,所述运动信息预测模式候选列表包括至少一个运动信息预测模式;从所述运动信息预测模式候选列表中选择所述当前图像块的目标运动信息预测模式;根据所述目标运动信息预测模式对所述当前图像块进行编码得到编码比特流。
- 一种解码端设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现权利要求1-10任一所述的方法步骤,或者,实现权利要求20所述的方法步骤。
- 一种编码端设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执行机器可执行指令,以实现权利要求12-19任一所述的方法步骤,或者,实现权利要求21所述的方法步骤。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201811459061.9A CN111263144B (zh) | 2018-11-30 | 2018-11-30 | 一种运动信息确定方法及其设备 |
| CN201811459061.9 | 2018-11-30 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020108360A1 true WO2020108360A1 (zh) | 2020-06-04 |
Family
ID=70852704
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2019/119622 Ceased WO2020108360A1 (zh) | 2018-11-30 | 2019-11-20 | 视频图像编解码中的运动信息确定 |
Country Status (2)
| Country | Link |
|---|---|
| CN (3) | CN115348443B (zh) |
| WO (1) | WO2020108360A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114125451A (zh) * | 2021-12-01 | 2022-03-01 | 锐宸微(上海)科技有限公司 | 视频编码方法、视频编码装置及影像处理装置 |
| CN116456100A (zh) * | 2023-06-16 | 2023-07-18 | 深流微智能科技(深圳)有限公司 | 一种帧间编码树单元划分方法及装置 |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112004096B (zh) * | 2020-07-20 | 2024-07-12 | 浙江大华技术股份有限公司 | 角度模式帧间预测方法、编码器及存储介质 |
| CN112291565B (zh) * | 2020-09-10 | 2021-09-14 | 浙江大华技术股份有限公司 | 视频编码方法及其相关装置 |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013021617A1 (ja) * | 2011-08-11 | 2013-02-14 | 株式会社Jvcケンウッド | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム |
| JP2013059024A (ja) * | 2011-08-12 | 2013-03-28 | Jvc Kenwood Corp | 画像復号装置、画像復号方法及び画像復号プログラム |
| CN103959775A (zh) * | 2011-11-04 | 2014-07-30 | 高通股份有限公司 | 帧内模式视频译码 |
| CN104205838A (zh) * | 2012-03-22 | 2014-12-10 | 联发科技股份有限公司 | 可伸缩视频编码的方法以及装置 |
| CN104702950A (zh) * | 2011-04-01 | 2015-06-10 | 苗太平洋控股有限公司 | 以帧内预测模式解码图像的方法 |
| CN105791862A (zh) * | 2016-03-21 | 2016-07-20 | 杭州电子科技大学 | 基于边缘复杂度的三维视频编码深度图内部模式选择方法 |
| CN106131547A (zh) * | 2016-07-12 | 2016-11-16 | 北京大学深圳研究生院 | 视频编码中帧内预测模式的快速决策方法 |
| CN106537915A (zh) * | 2014-07-18 | 2017-03-22 | 联发科技(新加坡)私人有限公司 | 用于视频编码的运动向量导出的方法 |
| CN108366256A (zh) * | 2018-01-25 | 2018-08-03 | 西安电子科技大学 | 一种hevc帧内预测模式快速选择系统及方法 |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101365574B1 (ko) * | 2007-01-29 | 2014-02-20 | 삼성전자주식회사 | 영상 부호화 방법 및 장치, 복호화 방법 및 장치 |
| US20090316042A1 (en) * | 2008-06-19 | 2009-12-24 | Chin-Chuan Liang | Video processing methods and related devices for determining target motion vector |
| KR101770662B1 (ko) * | 2010-07-20 | 2017-08-23 | 가부시키가이샤 엔.티.티.도코모 | 화상 예측 복호 장치 및 화상 예측 복호 방법 |
| US8755437B2 (en) * | 2011-03-17 | 2014-06-17 | Mediatek Inc. | Method and apparatus for derivation of spatial motion vector candidate and motion vector prediction candidate |
| WO2013085282A1 (ko) * | 2011-12-05 | 2013-06-13 | 엘지전자 주식회사 | 인트라 예측 방법 및 장치 |
| WO2015124110A1 (en) * | 2014-02-21 | 2015-08-27 | Mediatek Singapore Pte. Ltd. | Method of video coding using prediction based on intra picture block copy |
| CN104869399A (zh) * | 2014-02-24 | 2015-08-26 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
| US9542603B2 (en) * | 2014-11-17 | 2017-01-10 | Polycom, Inc. | System and method for localizing a talker using audio and video information |
| CN108293131B (zh) * | 2015-11-20 | 2021-08-31 | 联发科技股份有限公司 | 基于优先级运动矢量预测子推导的方法及装置 |
| JP6643095B2 (ja) * | 2016-01-15 | 2020-02-12 | キヤノン株式会社 | 像ブレ補正装置及びその制御方法、プログラム、記憶媒体 |
| CN107094260A (zh) * | 2016-02-17 | 2017-08-25 | 浙江大学 | 导出视差矢量和运动矢量的方法和装置 |
| KR102684942B1 (ko) * | 2016-03-17 | 2024-07-12 | 세종대학교산학협력단 | 인트라 예측 기반의 비디오 신호 처리 방법 및 장치 |
-
2018
- 2018-11-30 CN CN202210923870.0A patent/CN115348443B/zh active Active
- 2018-11-30 CN CN201811459061.9A patent/CN111263144B/zh active Active
- 2018-11-30 CN CN202210922647.4A patent/CN115348442B/zh active Active
-
2019
- 2019-11-20 WO PCT/CN2019/119622 patent/WO2020108360A1/zh not_active Ceased
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104702950A (zh) * | 2011-04-01 | 2015-06-10 | 苗太平洋控股有限公司 | 以帧内预测模式解码图像的方法 |
| WO2013021617A1 (ja) * | 2011-08-11 | 2013-02-14 | 株式会社Jvcケンウッド | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム |
| JP2013059024A (ja) * | 2011-08-12 | 2013-03-28 | Jvc Kenwood Corp | 画像復号装置、画像復号方法及び画像復号プログラム |
| CN103959775A (zh) * | 2011-11-04 | 2014-07-30 | 高通股份有限公司 | 帧内模式视频译码 |
| CN104205838A (zh) * | 2012-03-22 | 2014-12-10 | 联发科技股份有限公司 | 可伸缩视频编码的方法以及装置 |
| CN106537915A (zh) * | 2014-07-18 | 2017-03-22 | 联发科技(新加坡)私人有限公司 | 用于视频编码的运动向量导出的方法 |
| CN105791862A (zh) * | 2016-03-21 | 2016-07-20 | 杭州电子科技大学 | 基于边缘复杂度的三维视频编码深度图内部模式选择方法 |
| CN106131547A (zh) * | 2016-07-12 | 2016-11-16 | 北京大学深圳研究生院 | 视频编码中帧内预测模式的快速决策方法 |
| CN108366256A (zh) * | 2018-01-25 | 2018-08-03 | 西安电子科技大学 | 一种hevc帧内预测模式快速选择系统及方法 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114125451A (zh) * | 2021-12-01 | 2022-03-01 | 锐宸微(上海)科技有限公司 | 视频编码方法、视频编码装置及影像处理装置 |
| CN116456100A (zh) * | 2023-06-16 | 2023-07-18 | 深流微智能科技(深圳)有限公司 | 一种帧间编码树单元划分方法及装置 |
| CN116456100B (zh) * | 2023-06-16 | 2023-08-29 | 深流微智能科技(深圳)有限公司 | 一种帧间编码树单元划分方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111263144A (zh) | 2020-06-09 |
| CN115348442A (zh) | 2022-11-15 |
| CN115348443B (zh) | 2024-09-24 |
| CN115348443A (zh) | 2022-11-15 |
| CN111263144B (zh) | 2022-07-01 |
| CN115348442B (zh) | 2024-09-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109819255B (zh) | 一种编解码方法及其设备 | |
| WO2020134969A1 (zh) | 一种编解码方法及其设备 | |
| WO2020108360A1 (zh) | 视频图像编解码中的运动信息确定 | |
| CN112135144B (zh) | 一种编解码方法、装置及其设备 | |
| CN111698500B (zh) | 一种编解码方法、装置及其设备 | |
| WO2020057559A1 (zh) | 一种解码、编码方法及其设备 | |
| WO2021244496A1 (zh) | 一种编解码方法、装置及其设备 | |
| CN112449181B (zh) | 一种编解码方法、装置及其设备 | |
| CN111510726B (zh) | 一种编解码方法及其设备 | |
| CN112565747B (zh) | 一种解码、编码方法、装置及其设备 | |
| CN112543322B (zh) | 一种解码、编码方法、装置及其设备 | |
| CN112291558B (zh) | 一种编解码方法、装置及其设备 | |
| CN112449180B (zh) | 一种编解码方法、装置及其设备 | |
| CN113873257B (zh) | 一种运动信息候选列表的构建方法、装置及其设备 | |
| CN112422971B (zh) | 一种编解码方法、装置及其设备 | |
| CN112055220B (zh) | 一种编解码方法、装置及其设备 | |
| WO2020177747A1 (zh) | 编解码方法与装置、编码端设备和解码端设备 | |
| CN113709486B (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: 19889838 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: 19889838 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19889838 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 08/12/2021) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19889838 Country of ref document: EP Kind code of ref document: A1 |