Search

KR-102964140-B1 - Generating a list of motion vector predictors for intra-block copy mode in video coding

KR102964140B1KR 102964140 B1KR102964140 B1KR 102964140B1KR-102964140-B1

Abstract

In one example, a method for coding video data comprises the steps of: generating a list of motion vector (MV) candidates for the current block in response to a decision to predict the current block of the current picture of the video data using an intra-block copy (IBC)—the step of generating the list of MV candidates comprises: determining one or more history-based motion vector prediction (HMVP) candidates; and including one HMVP candidate among one or more HMVP candidates as the last candidate in the list of MV candidates—; selecting a specific MV candidate from the list of MV candidates that identifies the predictor block in the current picture; and reconstructing the pixels of the current block based on the pixels of the predictor block.

Inventors

  • 한 유
  • 치엔 웨이-정
  • 카르체비츠 마르타

Assignees

  • 퀄컴 인코포레이티드

Dates

Publication Date
20260512
Application Date
20200206
Priority Date
20200205

Claims (20)

  1. As a method of coding video data, In response to deciding to predict a first block of a current picture of video data using an intra block copy (IBC), the step of generating a first motion vector (MV) candidate list for said first block, wherein the step of generating said first MV candidate list is: A step of determining one or more history-based motion vector prediction (HMVP) candidates; and Step of including one HMVP candidate among the one or more HMVP candidates as the last candidate in the first MV candidate list above. A step of generating the first MV candidate list including; A step of selecting a specific MV candidate that identifies a predictor block in the current picture from the first MV candidate list; A step of reconstructing the pixels of the first block based on the pixels of the predictor block; In response to deciding to predict a second block of the current picture of the video data using inter-prediction, the step of generating a second MV candidate list for the second block, wherein the step of generating the second MV candidate list for the second block comprises: A step of determining the maximum number of candidates to be included in the second MV candidate list for the second block; and In response to determining that the amount of candidates in the second MV candidate list for the second block is equal to the value obtained by subtracting 1 from the maximum number of candidates to be included in the second MV candidate list for the second block, the step of not including additional HMVP candidates for the second block in the second MV candidate list for the second block such that the last candidate in the second MV candidate list for the second block is not an HMVP candidate. A step of generating the second MV candidate list including; A step of selecting a specific MV candidate from a second MV candidate list for the second block that identifies a predictor block for the second block in a picture of video data that is not identical to the current picture; and A method for coding video data, comprising the step of reconstructing the pixels of the second block based on the pixels of the predictor block for the second block.
  2. delete
  3. In Article 1, A method for coding video data, wherein the step of generating a first MV candidate list for the first block includes the step of not evaluating any pairwise candidates to be included in the first MV candidate list for the first block.
  4. In Paragraph 3, A method for coding video data, wherein the step of generating a second MV candidate list for the second block comprises the step of evaluating one or more pairwise candidates to be included in the second MV candidate list for the second block.
  5. In Article 4, The step of generating a first MV candidate list for the first block above is: A method for coding video data, further comprising the step of evaluating a top-left neighbor candidate B2 to be included in the first MV candidate list for the first block when the current number of candidates included in the first MV candidate list for the first block is 4 or more.
  6. In Article 4, A method for coding video data, wherein the first MV candidate list for the first block above includes an IBC merge/skip list.
  7. As a device for coding video data, The above device is: A memory configured to store the above video data; and It includes one or more processors implemented as circuits, and The above one or more processors are: In response to deciding to predict a first block of the current picture of video data using an intra-block copy (IBC), the one or more processors generate a first motion vector (MV) candidate list for said first block, and to generate said first MV candidate list, said one or more processors: Determine one or more history-based motion vector prediction (HMVP) candidates; and As the last candidate in the above first MV candidate list, to include one HMVP candidate among the above one or more HMVP candidates. Generate the first MV candidate list configured above; From the first MV candidate list above, select a specific MV candidate that identifies a predictor block in the first picture; and It is configured to reconstruct the pixels of the first block based on the pixels of the predictor block, and The above one or more processors are, In response to deciding to predict a second block of the current picture of video data using inter-prediction, to generate a second MV candidate list for the second block, the one or more processors to generate a second MV candidate list for the second block: Determine the maximum number of candidates to be included in the second MV candidate list for the above second block; and In response to determining that the number of candidates in the second MV candidate list for the second block is equal to the value obtained by subtracting 1 from the maximum number of candidates to be included in the second MV candidate list for the second block, so as not to include additional HMVP candidates for the second block in the second MV candidate list for the second block, such that the last candidate in the second MV candidate list for the second block is not an HMVP candidate. Generate the second MV candidate list configured above; From the second MV candidate list for the second block, select a specific MV candidate that identifies a predictor block for the second block in a picture of video data that is not identical to the current picture; and A device for coding video data configured to reconstruct the pixels of the second block based on the pixels of the predictor block for the second block.
  8. delete
  9. In Article 7, A device for coding video data, wherein, in order to generate the first MV candidate list for the first block, the one or more processors are configured not to evaluate any pairwise candidates to be included in the first MV candidate list for the first block.
  10. In Article 9, A device for coding video data, wherein, in order to generate a second MV candidate list for the second block, the one or more processors are configured to evaluate one or more pairwise candidates to be included in the second MV candidate list for the second block.
  11. In Article 10, To generate the first MV candidate list for the first block, the one or more processors: A device for coding video data configured to evaluate a B2 candidate to be included in the first MV candidate list for the first block when the current number of candidates included in the first MV candidate list for the first block is 4 or more.
  12. In Article 10, A device for coding video data, wherein the first MV candidate list for the first block above includes an IBC merge/skip list.
  13. In Article 7, A video coder is a device for encoding video data that includes a video decoder.
  14. In Article 13, A device for coding video data, further comprising a display configured to display decoded video data.
  15. In Article 13, The above device is a device for encoding video data, comprising one or more of a camera, a computer, a mobile device, a broadcast receiver device, or a set-top box.
  16. In Article 7, The above device is a device for encoding video data, comprising a video encoder.
  17. As a computer-readable storage medium for storing instructions, The above commands, when executed, cause one or more processors of the video coder: In response to a decision to predict a first block of the current picture of video data using an intra-block copy (IBC), the instructions causing the one or more processors to generate a first motion vector (MV) candidate list for said first block, wherein the instructions causing the one or more processors to generate the first MV candidate list cause said one or more processors, Determine one or more history-based motion vector prediction (HMVP) candidates; and As the last candidate in the above first MV candidate list, including one HMVP candidate among the above one or more HMVP candidates Generating the first MV candidate list including commands; Selecting a specific MV candidate that identifies a predictor block in the current picture from the above first MV candidate list; and Reconstructing the pixels of the first block based on the pixels of the predictor block, and The above one or more processors: In response to a decision to predict a second block of the current picture of video data using inter-prediction, the instructions causing the one or more processors to generate a second MV candidate list for said second block, wherein the instructions causing the one or more processors to generate a second MV candidate list for said second block cause the one or more processors, Determine the maximum number of candidates to be included in the second MV candidate list for the above second block; and In response to determining that the number of candidates in the second MV candidate list for the second block is equal to the maximum number of candidates to be included in the second MV candidate list for the second block minus 1, the second MV candidate list for the second block does not include additional HMVP candidates for the second block such that the last candidate in the second MV candidate list for the second block is not an HMVP candidate. Generating the second MV candidate list containing commands; Selecting a specific MV candidate from a second MV candidate list for the second block that identifies a predictor block for the second block in a picture of video data that is not identical to the current picture; and A computer-readable storage medium storing instructions that reconstruct the pixels of the second block based on the pixels of the predictor block for the second block.
  18. delete
  19. In Article 17, A computer-readable storage medium storing instructions, wherein the instructions causing one or more processors to generate the first MV candidate list for the first block include instructions causing the one or more processors not to evaluate any pairwise candidates to be included in the first MV candidate list for the first block.
  20. In Article 19, A computer-readable storage medium storing instructions, wherein the instructions for causing one or more processors to generate the second MV candidate list for the second block include instructions for causing one or more processors to evaluate one or more pairwise candidates to be included in the second MV candidate list for the second block.

Description

Generating a list of motion vector predictors for intra-block copy mode in video coding This application claims priority to U.S. Application No. 16/782,735 filed on February 5, 2020, which in turn claims priority to U.S. Provisional Application No. 62/802,573 filed on February 7, 2019, the entire contents of which are incorporated herein by reference. Technology field The present disclosure relates to video encoding and video decoding. Digital video capabilities may be included in a wide range of devices, including digital televisions, digital direct broadcast systems, wireless broadcast systems, personal digital assistants (PDAs), laptop or desktop computers, tablet computers, e-book readers, digital cameras, digital recording devices, digital media players, video gaming devices, video game consoles, cellular or satellite wireless phones, so-called "smartphones," remote video conferencing devices, video streaming devices, etc. Digital video devices implement video coding techniques such as those described in standards defined by MPEG-2, MPEG-4, ITU-T H.263, ITU-T H.264/MPEG-4, Part 10, Advanced Video Coding (AVC), High Efficiency Video Coding (HEVC) standards, ITU-T H.265/High Efficiency Video Coding (HEVC), and extensions of these standards. Video devices may also transmit, receive, encode, decode, and/or store digital video information more efficiently by implementing such video coding techniques. Video coding techniques include spatial (intra-picture) prediction and/or temporal (inter-picture) prediction to reduce or eliminate redundancy inherent in video sequences. For block-based video coding, a video slice (i.e., a video picture or a part of a video picture) may be divided into video blocks, which may also be referred to as coding tree units (CTUs), coding units (CUs), and/or coding nodes. Video blocks in an intra-coded (I) slice of a picture are encoded using spatial prediction for reference samples in neighboring blocks within the same picture. Video blocks in an inter-coded (P or B) slice of a picture may use spatial prediction for reference samples in neighboring blocks within the same picture, or temporal prediction for reference samples in other reference pictures. Pictures may be referred to as frames, and reference pictures may be referred to as reference frames. In one example, a method for coding video data comprises the steps of: generating a list of motion vector (MV) candidates for the current block in response to a decision to predict the current block of the current picture of the video data using an intra-block copy (IBC)—the step of generating the list of MV candidates comprises: determining one or more history-based motion vector prediction (HMVP) candidates; and including one HMVP candidate among one or more HMVP candidates as the last candidate in the list of MV candidates—; selecting a specific MV that identifies the predictor block in the current picture from the list of MV candidates; and reconstructing the pixels of the current block based on the pixels of the predictor block. In another example, a device for coding video data comprises: a memory configured to store video data; and one or more processors implemented in a circuit, wherein the one or more processors: generate an MV candidate list for the current block in response to a decision to predict the current block of the current picture of the video data using an IBC; and to generate the MV candidate list, the one or more processors: determine one or more HMVP candidates; and are configured to include one HMVP candidate among the one or more HMVP candidates as the last candidate in the MV candidate list; select a specific MV candidate from the MV candidate list that identifies the predictor block in the current picture; and are configured to reconstruct the pixels of the current block based on the pixels of the predictor block. In another example, a computer-readable storage medium stores instructions, and the instructions, when executed, cause one or more processors of a video coder to: generate an MV candidate list for said current block in response to a decision to predict a current block of a current picture of video data using an IBC; the instructions causing one or more processors to generate an MV candidate list include one or more processors to: determine one or more HMVP candidates; and include one HMVP candidate among one or more HMVP candidates as the last candidate in the MV candidate list; select a specific MV candidate from the MV candidate list that identifies a predictor block in the current picture; and reconstruct the pixels of the current block based on the pixels of the predictor block. Details of one or more embodiments of the present disclosure are described in the accompanying drawings and the description below. Other features, objects, and advantages of the technology described in the present disclosure will be apparent from the description and drawings and from the claims. Figures 1a and 1b are c