Overlapped block disparity estimation and compensation is described. Compensating for images with overlapped block disparity compensation (OBDC) involves determining if OBDC is enabled in a video bit stream, and determining if OBDC is enabled for one or more macroblocks that neighbor a first macroblock within the video bit stream. The neighboring macroblocks may be transform coded. If OBDC is enabled in the video bit stream and for the one or more neighboring macroblocks, predictions may be made for a region of the first macroblock that has an edge adjacent with the neighboring macroblocks. OBDC can be causally applied. Disparity compensation parameters or modes may be shared amongst views or layers. A variety of predictions may be used with causally-applied OBDC.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A non-transitory computer-readable medium for storing data representing a block motion compensated video bit stream written in the non-transitory computer-readable medium, the video bit stream comprising: (i) a first block partition having a prediction type of inter-prediction, (ii) a second block partition having a prediction type of inter-prediction, the second block partition being edge adjacent to the first block partition; (iii) a third block partition; and (iv) an explicit signal, the explicit signal indicating a mode for the first block partition, wherein a first mode identified by the explicit signal identifies the first block partition as being block motion compensated by motion vector information of the second block partition, and a second mode identified by the explicit signal identifies the first block partition as being block motion compensated by motion vector information of the third block partition without motion vector information of the second block partition.
A video processing system decodes a compressed video stream where the stream contains macroblocks (block partitions). Specifically, a first block uses inter-prediction (motion compensation), and a second, edge-adjacent block also uses inter-prediction. A third block is present in the video stream. A special signal in the bitstream specifies how to perform motion compensation on the first block. In one mode, this signal indicates that the motion vector from the *second* (adjacent) block should be used to compensate the first block. In another mode, the signal indicates the motion vector from the *third* block (non-adjacent) should be used, and that the second block's motion vector should be ignored. This allows adaptive selection of motion vector sources. The video stream is stored on a computer-readable storage medium.
2. The non-transitory computer-readable medium of claim 1 , wherein the first block partition and the second block partition are bi-predicted using multiple references.
The video processing system from the previous description is improved such that the first (target) block and the second (adjacent) block are bi-predicted, meaning they use *multiple* reference frames to form a prediction. Instead of just using one previous frame to estimate motion and reconstruct the block, they combine information from several frames to improve the prediction accuracy, especially in cases of complex motion or scene changes. Thus, when the first block's motion is compensated using motion vector information from the second block, both blocks use multiple reference frames to get their motion vectors.
3. The non-transitory computer-readable medium of claim 1 , wherein utilizing the motion vector information of the second block partition further comprises predicting one or more pixels of the first block using the motion vector information of the second block partition.
The video processing system from the initial description is improved such that when the motion vector from the second (adjacent) block is used for motion compensation of the first block, it is done by directly predicting the pixel values of the first block. The motion vector of the second block is used to find corresponding pixels in a reference frame, and these pixel values are then used (perhaps with some weighting or modification) to reconstruct the pixel values of the first block. So, the motion vector information directly influences the pixel values of the first block in the compensated region.
4. The non-transitory computer-readable medium of claim 1 , wherein the inter-prediction comprises bipredictive or multi-hypothesis inter-prediction.
The video processing system from the initial description is improved such that the inter-prediction used in the blocks involves bipredictive or multi-hypothesis prediction. This means that instead of using motion vectors from a single reference frame, the system combines motion vectors and pixel data from multiple reference frames to generate a more accurate prediction for a block. The system may combine predictions from two (bipredictive) or more (multi-hypothesis) reference frames, improving coding efficiency especially in scenes with complex motion or occlusions.
5. The non-transitory computer-readable medium of claim 1 , wherein the explicit signal is header information that includes the mode for the first block.
The video processing system from the initial description is improved such that the explicit signal, which controls whether the first block is compensated using motion vectors from the second (adjacent) or third block, is located within the header information of the video bitstream. The header contains metadata and control information for decoding the video, and the mode indicating which motion vector source to use for the first block is included as part of this header information, allowing the decoder to quickly determine the correct compensation method.
6. The non-transitory computer-readable medium of claim 1 , wherein the second block partition is ordered before the first block partition in the video bit stream.
The video processing system from the initial description is improved such that the second (adjacent) block partition appears *before* the first block partition (the target block being compensated) in the order of the video bitstream. This ordering is important because it allows the decoder to have already processed the motion vector information of the second block by the time it needs to decode the first block. This causal dependency enables the first block to directly reuse or adapt the motion vector information available from the already decoded adjacent block.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
May 25, 2016
May 30, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.