Selection and Signaling of Motion Vector (MV) Precisions
AssigneeHuawei Technologies Co., Ltd.
InventorsShan Liu, Wei Wang
Life of this patent
Estimating the term…
Abstract
A decoder including a receiver and a processor is disclosed. The receiver is configured to receive an encoded bitstream containing a motion vector (MV) candidate index for a current block. The processor is coupled to the receiver, and configured to obtain precisions of candidate motion vectors (MVs) corresponding to neighboring blocks of the current block, perform first rounding of the precisions based on a rounding scheme, perform second rounding of the candidate MVs based on the first rounding, perform pruning of the candidate MVs, generate a candidate list based on the second rounding and the pruning, and select one of the candidate MVs from the candidate list for decoding the current block based on the MV candidate index.
Claims20
A decoder comprising:
- a receiver configured to receive an encoded bitstream containing a motion vector (MV) candidate index for a current block;
- and
- a processor coupled to the receiver, the processor configured to:
- obtain candidate motion vectors (MVs) corresponding to neighboring blocks of the current block, the neighboring blocks neighbor the current block;
- obtain precisions of the candidate MVs;
- perform first rounding of the precisions based on a rounding scheme;
- perform second rounding of the candidate MVs based on the first rounding;
- perform pruning of the candidate MVs;
- generate a candidate list based on the second rounding and the pruning;
- and
- select one of the candidate MVs from the candidate list for decoding the current block based on the MV candidate index.
A method implemented in a video decoder, comprising:
- receiving, by a receiver of the video decoder, an encoded bitstream containing a motion vector (MV) candidate index for a current block;
- obtaining, by a processor of the video decoder, candidate motion vectors (MVs) corresponding to neighboring blocks of the current block, the neighboring blocks neighbor the current block;
- obtaining, by the processor, precisions of candidate MVs;
- performing, by the processor, first rounding of the precisions based on a rounding scheme;
- performing, by the processor, second rounding of the candidate MVs based on the first rounding;
- performing, by the processor, pruning of the candidate MVs;
- generating, by the processor, a candidate list based on the second rounding and the pruning;
- and
- selecting, by the processor, one of the candidate MVs from the candidate list for decoding the current block based on the MV candidate index.
A non-transitory computer readable medium comprising a computer program product for use by a video coding device, the computer program product comprising computer executable instructions stored on the non-transitory computer readable medium such that when executed by a processor cause the video coding device to:
- receive an encoded bitstream containing a motion vector (MV) candidate index for a current block;
- obtain candidate motion vectors (MVs) corresponding to neighboring blocks of the current block, the neighboring blocks neighbor the current block;
- obtain precisions of candidate MVs corresponding to neighboring blocks of the current block;
- perform first rounding of the precisions based on a rounding scheme;
- perform second rounding of the candidate MVs based on the first rounding;
- perform pruning of the candidate MVs;
- generate a candidate list based on the second rounding and the pruning;
- and
- select one of the candidate MVs from the candidate list for decoding the current block based on the MV candidate index.
Dependencies are inferred from the claim text.