Techniques of multi-hypothesis motion compensation
Abstract
The present disclosure describes techniques for coding and decoding video in which a plurality of coding hypotheses are developed for an input pixel block of frame content. Each coding hypothesis may include generation of prediction data for the input pixel block according to a respective prediction search. The input pixel block may be coded with reference to a prediction block formed from prediction data derived according to plurality of hypotheses. Data of the coded pixel block may be transmitted to a decoder along with data identifying a number of the hypotheses used during the coding to a channel. At a decoder, an inverse process may be performed, which may include generation of a counterpart prediction block from prediction data derived according to the hypothesis identified with the coded pixel block data, then decoding of the coded pixel block according to the prediction data.
Claims
exact text as granted — not AI-modifiedWe claim:
1 . A video coding method, comprising:
developing a plurality of coding hypotheses for an input pixel block of frame content, each coding hypothesis including generating prediction data for the input pixel block according to a respective prediction search, coding the input pixel block with reference to a prediction block formed from prediction data of the plurality of hypotheses, and transmitting data of the coded pixel block and data identifying a number of the hypotheses used during the coding to a channel.
2 . The method of claim 1 , wherein the number of hypotheses is greater than 2.
3 . The method of claim 1 , further comprising transmitting data representing a size of partitions used to generate the prediction data of a hypothesis for the input pixel block.
4 . The method of claim 1 , further comprising transmitting data representing ranges of allowable partition sizes used to generate the prediction data of a hypothesis for the input pixel block.
5 . The method of claim 1 , further comprising, for a coding hypothesis, transmitting index data identifying an element from a list of prediction references identifying a reference frame that was selected according to the prediction search of the hypothesis.
6 . The method of claim 1 , further comprising, providing an idc_pred_idc value that identifies a prediction mode for the pixel block.
7 . The method of claim 6 , wherein the idc_pred_idc value is provided in a syntax element corresponding to the pixel block.
8 . The method of claim 6 , wherein the idc_pred_idc value is provided in a syntax element higher than the pixel block in a coded data stream, and it applies to multiple coded pixel blocks in the coded data stream.
9 . The method of claim 1 , further comprising, providing an identification of a prediction list of a hypothesis in a coded data stream, the identified provided in a syntax element that is higher than a syntax element of the coded pixel block data.
10 . The method of claim 1 , further comprising, providing a motion vector for one of the hypotheses that is a prediction from a motion vector of another one of the hypotheses.
11 . Coded video data, stored in a computer readable medium, representing frame content, the coded video data comprising:
coded video data of a plurality of pixel blocks, each represented by a plurality of coding hypotheses, each coding hypothesis representing prediction data for the pixel block according to a respective prediction search, a parameter identifying an element from a list of prediction references identifying a reference frame, the parameter applying to hypotheses of multiple coded pixel blocks.
12 . An encoder that generates the coded video data of claim 11 from input video.
13 . A decoder that generates reconstructed video from the coded video data of claim 11 .
14 . The coded video data of claim 11 , further comprising data representing a size of partitions used to generate the prediction data of a hypothesis for the input pixel block.
15 . The coded video data of claim 11 , further comprising data representing ranges of allowable partition sizes used to generate the prediction data of a hypothesis for the input pixel block.
16 . The coded video data of claim 11 , further comprising, for a coding hypothesis, index data identifying an element from a list of prediction references identifying a reference frame that was selected according to the prediction search of the hypothesis.
17 . The coded video data of claim 11 , further comprising an idc_pred_idc value that identifies a prediction mode for the pixel block.
18 . The coded video data of claim 17 , wherein the idc_pred_idc value is placed in a syntax element of the pixel block.
19 . The coded video data of claim 17 , wherein the idc_pred_idc value is placed in a syntax element higher than the pixel block, and it applies to multiple coded pixel blocks in the coded data stream.
20 . The coded video data of claim 11 , further comprising data identifying a prediction list of a hypothesis in a coded data stream, the identified provided in a syntax element that is higher than a syntax element of the coded pixel block data.
21 . The coded video data of claim 11 , further comprising data representing a motion vector for one of the hypotheses that is a prediction from a motion vectors of another one of the hypotheses.
22 . A video decoding method, comprising:
responsive to data provided from a channel identifying a number of the coding hypotheses applied to a pixel block to be decoded, developing a prediction block for the pixel block from coding data representing the hypotheses, each coding hypothesis identifying a respective prediction source, and decoding the pixel block with reference to the prediction block.
23 . The method of claim 22 , wherein the number of hypotheses is greater than 2.
24 . The method of claim 22 , further comprising responsive to channel data identifying a size of partitions used to generate the prediction data of a respective hypothesis, developing the prediction data for the respective hypothesis by extracting data from a reference frame at a size corresponding to the partition size.
25 . The method of claim 22 , further comprising, responsive to channel data identifying an idc_pred_idc value that identifies a prediction mode for a pixel block, decoding coded subpartitions of the pixel block according to the identified prediction mode.
26 . The method of claim 25 , wherein the idc_pred_idc value is provided in a syntax element corresponding to the pixel block.
27 . The method of claim 25 , wherein the idc_pred_idc value is provided in a syntax element higher than the pixel block in a coded data stream, and it applies to multiple coded pixel blocks in the coded data stream.
28 . The method of claim 25 , further comprising, responsive to an identification of a prediction list of a hypothesis in a coded data stream, developing prediction data for a corresponding hypothesis according to a reference frame identified by the identification.
29 . The method of claim 28 , wherein the identification is occurs in a syntactic element of the coded data stream that is at a higher level than a syntactic element of the coded pixel block.
30 . The method of claim 25 , further comprising, predicting a motion vector for one of the hypotheses from a motion vector of another one of the hypotheses.
31 . A video coding method, comprising:
developing a first coding hypothesis for an input pixel block of frame content, the first coding hypothesis including prediction data selected using a first partition size, developing a second coding hypothesis for the input pixel block, the second coding hypothesis including prediction data selected using a second partition size different from the first partition size, coding the input pixel block with reference to a prediction block formed from the prediction data of the first coding hypothesis and the prediction data of the second coding hypothesis.
32 . A video decoding method, comprising:
developing first prediction data from coded video data representing a first coding hypothesis of a pixel block to be decoded, the coded video data identifying a first partition size associated with the first prediction data, developing second prediction data from coded video data representing a second coding hypothesis of a pixel block to be decoded, the coded video data identifying a second partition size associated with the second prediction data, the second partition size different from the first partition size decoding coded video data of the pixel block to be decoded with reference to a prediction block formed from the first prediction data and the second prediction data.
33 . Coded video data, stored in a computer readable medium, representing a pixel block of frame content having been predictively coded, the coded video data comprising:
data representing a first coding hypothesis for the pixel block of frame content, the first coding hypothesis identifying a first partition size of the first coding hypothesis, data representing a second coding hypothesis for the pixel block of frame content, the second coding hypothesis identifying a second partition size for the second coding hypothesis, the second partition size different from the first partition size; data representing content of the pixel block having been coded with reference to a prediction block formed from the prediction data of the first coding hypothesis and the prediction data of the second coding hypothesis.Join the waitlist — get patent alerts
Track US2019246114A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.