Searching based motion candidate derivation for sub-block motion vector prediction
Devices, systems and methods for the simplification of sub-block motion candidate lists for video coding are described. In a representative aspect, a method for video processing includes determining, for a conversion between a current block of a video and a bitstream representation of the video, one or more temporal motion vector prediction candidates for the current block and performing the conversion based on the one or more temporal motion vector prediction candidates. The one or more temporal motion vector prediction candidates are determined by identifying a first temporal adjacent block of the current block based on an initial motion vector, wherein the first temporal adjacent block includes invalid motion information, and examining additional temporal adjacent blocks of the current block to obtain the one or more temporal motion vector prediction candidates.
1. A method for processing video data, comprising:
determining, for a conversion between a current video block of a video and a bitstream of the video, one or more temporal motion vector prediction candidates for the current video block, wherein the one or more temporal motion vector prediction candidates comprise a default temporal motion vector prediction candidate; and
performing the conversion based on the one or more temporal motion vector prediction candidates,
wherein the default temporal motion vector prediction candidate is determined after identifying a first temporal adjacent block of the current video block based on an initial motion vector, wherein the first temporal adjacent block includes invalid motion information,
wherein the default temporal motion vector prediction candidate is derived based a starting point motion vector, wherein the starting point motion vector is associated with a zero motion vector,
wherein the one or more temporal motion vector prediction candidates are further determined by:
examining additional temporal adjacent blocks of the current video block to obtain the one or more temporal motion vector prediction candidates, wherein the additional temporal adjacent blocks and the first temporal adjacent block are in a same reference picture, and the additional temporal adjacent blocks are identified based on a sequential multi-step search of blocks associated with the first temporal adjacent block,
wherein the one or more temporal motion vector prediction candidates include an Alternative Temporal Motion Vector Prediction (ATMVP) candidate, the first temporal adjacent block is intra-coded, and
wherein each of the additional temporal adjacent blocks includes a second starting point positioned adjacent to a bottom-right corner of a first starting point of the first temporal adjacent block such that all the additional temporal adjacent blocks and the first temporal adjacent block are within a same coding tree unit (CTU) or within a same CTU row.
2. The method of claim 1 , wherein the default temporal motion vector prediction candidate is inherited from a spatial neighboring block of the current video block, and wherein the default temporal motion vector prediction candidate is scaled.
3. The method of claim 1 , wherein the starting point motion vector is completely determined based on motion information associated with one or more spatial adjacent blocks of the current video block.
4. The method of claim 1 , wherein the starting point motion vector is associated with a block whose corresponding reference picture is collocated with a reference picture of the current video block, and wherein the block includes a spatial adjacent block of the current video block, a spatial non-adjacent block of the current video block, or a temporal adjacent block of the current video block.
5. The method of claim 1 , wherein, in case a first spatial adjacent block selected from spatial adjacent blocks of the current video block according to a sequential order is inter-coded and a first motion vector of the first spatial adjacent block is directed to a collocated picture of the current video block, the starting point motion vector is determined to be the first motion vector, and wherein the starting point motion vector is determined to be a zero motion vector otherwise.
6. The method of claim 1 , wherein the starting point motion vector is determined to be motion information of a represented block in case motion information of the represented block that is identified by the starting point motion vector and a center position of the represented block is unavailable, wherein the represented block is a block that covers a point corresponding to the starting point motion vector in a collocated picture, and wherein the starting point motion vector is used to derive sub-block motion.
7. The method of claim 1 , wherein the default temporal motion vector prediction candidate is a uni-prediction candidate derived by scaling a motion vector to a reference picture index within a reference picture list X, X being 0 or 1.
8. The method of claim 7 , wherein the reference picture index is 0, or the reference picture index is a smallest reference picture index that corresponds to a short-term reference picture.
9. The method of claim 7 , wherein X is determined based on a slice or a picture associated with the current video block.
10. The method of claim 1 , wherein the default temporal motion vector prediction candidate is a bi-prediction candidate derived by scaling a motion vector to a reference picture index within a reference picture list, and wherein, for each reference picture in the reference picture list, the reference picture index is same as a target reference picture index of a temporal motion vector prediction candidate.
11. The method of claim 7 , wherein whether the default temporal motion vector prediction candidate is a uni-prediction candidate or a bi-prediction candidate is determined based on a picture type of a slice type associated with the current video block or a size of the current video block.
12. The method of claim 1 , wherein the conversion comprises encoding the current video block to generate the bitstream.
13. The method of claim 1 , wherein the conversion comprises decoding the bitstream to generate the current video block.
14. The method of claim 1 , wherein the sequential multi-step search comprises:
examining spatial adjacent blocks of the first temporal adjacent block in an order of left, above, right, and bottom; and
wherein the sequential multi-step search further comprises:
examining spatial non-adjacent blocks that are one step away from the first temporal adjacent block in an order of left, above, right, and bottom.
15. An apparatus for processing video data comprising a processor and a non-transitory memory with instructions thereon, wherein the instructions upon execution by the processor, cause the processor to:
determine, for a conversion between a current video block of a video and a bitstream of the video, one or more temporal motion vector prediction candidates for the current video block, wherein the one or more temporal motion vector prediction candidates comprise a default temporal motion vector prediction candidate; and
perform the conversion based on the one or more temporal motion vector prediction candidates,
wherein the default temporal motion vector prediction candidate is determined after identifying a first temporal adjacent block of the current video block based on an initial motion vector, wherein the first temporal adjacent block includes invalid motion information,
wherein the default temporal motion vector prediction candidate is derived based a starting point motion vector, wherein the starting point motion vector is associated with a zero motion vector,
wherein the one or more temporal motion vector prediction candidates are further determined by:
examining additional temporal adjacent blocks of the current video block to obtain the one or more temporal motion vector prediction candidates, wherein the additional temporal adjacent blocks and the first temporal adjacent block are in a same reference picture, and the additional temporal adjacent blocks are identified based on a sequential multi-step search of blocks associated with the first temporal adjacent block,
wherein the one or more temporal motion vector prediction candidates include an Alternative Temporal Motion Vector Prediction (ATMVP) candidate, the first temporal adjacent block is intra-coded, and
wherein each of the additional temporal adjacent blocks includes a second starting point positioned adjacent to a bottom-right corner of a first starting point of the first temporal adjacent block such that all the additional temporal adjacent blocks and the first temporal adjacent block are within a same coding tree unit (CTU) or within a same CTU row.
16. The apparatus of claim 15 , wherein the default temporal motion vector prediction candidate is inherited from a spatial neighboring block of the current video block, and wherein the default temporal motion vector prediction candidate is scaled.
17. The apparatus of claim 15 , wherein the starting point motion vector is completely determined based on motion information associated with one or more spatial adjacent blocks of the current video block.
18. A non-transitory computer-readable recording medium storing a bitstream of a video which is generated by a method performed by a video processing apparatus, wherein the method comprises:
determining one or more temporal motion vector prediction candidates for a current video block, wherein the one or more temporal motion vector prediction candidates comprise a default temporal motion vector prediction candidate; and
generating the bitstream based on the one or more temporal motion vector prediction candidates,
wherein the default temporal motion vector prediction candidate is determined after identifying a first temporal adjacent block of the current video block based on an initial motion vector, wherein the first temporal adjacent block includes invalid motion information,
wherein the default temporal motion vector prediction candidate is derived based a starting point motion vector, wherein the starting point motion vector is associated with a zero motion vector,
wherein the one or more temporal motion vector prediction candidates are further determined by:
examining additional temporal adjacent blocks of the current video block to obtain the one or more temporal motion vector prediction candidates, wherein the additional temporal adjacent blocks and the first temporal adjacent block are in a same reference picture, and the additional temporal adjacent blocks are identified based on a sequential multi-step search of blocks associated with the first temporal adjacent block,
wherein the one or more temporal motion vector prediction candidates include an Alternative Temporal Motion Vector Prediction (ATMVP) candidate, the first temporal adjacent block is intra-coded, and
wherein the additional temporal adjacent blocks includes a second starting point positioned adjacent to a bottom-right corner of a first starting point of the first temporal adjacent block such that all the additional temporal adjacent blocks and the first temporal adjacent block are within a same coding tree unit (CTU) or within a same CTU row.
19. The non-transitory computer-readable recording medium of claim 18 , wherein the default temporal motion vector prediction candidate is inherited from a spatial neighboring block of the current video block, and wherein the default temporal motion vector prediction candidate is scaled.