IP Library › Granted Patent US 12,047,581
Granted Patent B2
US 12,047,581 · App. 17/958,161 · Granted Jul 23, 2024

Template-matching based adaptive motion vector resolution (AMVR)

Inventors: Lien-Fei Chen (Hsinchu, TW); Xiang Li (Saratoga, CA); Shan Liu (San Jose, CA)
Assignee: Tencent America LLC
H04N19/136H04N19/105H04N19/176H04N19/88
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,047,581
App. No.
17/958,161
Granted
Jul 23, 2024
Kind
B2
Abstract

Aspects of the disclosure provide a method and an apparatus for video decoding. The apparatus includes processing circuitry that decodes prediction information of a current block in a current picture from a coded video bitstream. The prediction information indicates (i) an adaptive motion vector prediction (AMVP) mode with an adaptive motion vector resolution (AMVR) mode being applied to the current block and (ii) motion information. The processing circuitry performs template matching (TM) on a plurality of MV resolutions by determining respective TM costs corresponding to each of the plurality of MV resolutions based on the plurality of MV resolutions and the motion information, reordering the plurality of MV resolutions based on the determined TM costs respectively corresponding to each of the plurality of MV resolutions, and selecting an MV resolution from the reordered plurality of MV resolutions. The processing circuitry reconstructs the current block based on the selected MV resolution.

Claims (95)

1. A method for video decoding in a video decoder, comprising:

decoding prediction information of a current block in a current picture from a coded video bitstream, the prediction information indicating (i) an adaptive motion vector prediction (AMVP) mode with an adaptive motion vector resolution (AMVR) mode being applied to the current block and (ii) motion information, a set of motion vector (MV) resolutions in the AMVR mode being available for the current block;

performing template matching (TM) on a plurality of MV resolutions in the set of MV resolutions by

determining respective TM costs corresponding to each of the plurality of MV resolutions based on the plurality of MV resolutions and the motion information;

reordering the plurality of MV resolutions based on the determined TM costs respectively corresponding to each of the plurality of MV resolutions; and

selecting an MV resolution from the reordered plurality of MV resolutions; and

reconstructing the current block based on the selected MV resolution.

2. The method of claim 1 , wherein the determining the TM costs comprises:

for each of the plurality of MV resolutions in the set of MV resolutions,

determining a first reference block in a first reference picture based on the current block in the current picture, the motion information, and the respective MV resolution; and

determining a TM cost based on a first reference template of the first reference block in the first reference picture and a current template of the current block in the current picture.

3. The method of claim 1 , wherein

the plurality of MV resolutions is the set of MV resolutions;

the prediction information indicates whether to apply a first MV resolution to the current block, the first MV resolution corresponding to the smallest TM cost among the determined TM costs respectively;

in response to an indication that the first MV resolution is applied to the current block,

the selecting the MV resolution includes selecting the first MV resolution to be the MV resolution; and

the reconstructing the current block includes reconstructing the current block based on the first MV resolution; and

in response to an indication that the first MV resolution is not applied to the current block,

the selecting the MV resolution includes selecting the MV resolution from remaining MV resolutions in the reordered plurality of MV resolutions, the remaining MV resolutions excluding the first MV resolution; and

the reconstructing the current block includes reconstructing the current block based on the selected MV resolution.

4. The method of claim 3 , wherein

the plurality of MV resolutions includes ¼ luma samples, ½ luma samples, 1 luma sample, and 4 luma samples.

5. The method of claim 3 , wherein

the first MV resolution is not applied to the current block;

the decoding the prediction information includes decoding an index in the coded video bitstream;

the selecting the MV resolution includes selecting a second MV resolution from the remaining MV resolutions in the reordered plurality of MV resolutions based on the index, the remaining MV resolutions excluding the first MV resolution; and

the reconstructing the current block includes reconstructing the current block based on the second MV resolution.

6. The method of claim 1 , wherein

the set of MV resolutions includes a third MV resolution that is not in the plurality of MV resolutions;

the prediction information indicates that the third MV resolution is not applied to the current block;

the decoding the prediction information includes decoding an index in the coded video bitstream;

the selecting the MV resolution includes selecting a fourth MV resolution from the reordered plurality of MV resolutions based on the index; and

the reconstructing the current block includes reconstructing the current block based on the fourth MV resolution.

7. The method of claim 6 , wherein

the set of MV resolutions consists of ¼ luma samples, ½ luma samples, 1 luma sample, and 4 luma samples;

the third MV resolution is ¼ luma samples; and

the plurality of MV resolutions consists of ½ luma samples, 1 luma sample, and 4 luma samples.

8. The method of claim 1 , wherein

the prediction information indicates that the current block is coded with bi-prediction; and

determining the TM costs corresponding to the plurality of MV resolutions includes:

for each of the plurality of MV resolutions in the set of MV resolutions, determining a TM cost based on a first TM cost and a second TM cost, the first TM cost being determined based on a first reference template of a first reference block in a first reference picture and based on a current template of the current block in the current picture, the second TM cost being determined based on a second reference template of a second reference block in a second reference picture and based on the current template of the current block in the current picture.

9. The method of claim 8 , wherein for each of the plurality of MV resolutions in the set of MV resolutions, the TM cost is a weighted sum of the first TM cost and the second first TM cost.

10. The method of claim 8 , wherein for each of the plurality of MV resolutions in the set of MV resolutions, the TM cost is a minimum or a maximum of the first TM cost and the second TM cost.

11. An apparatus for video decoding, comprising:

processing circuitry configured to:

decode prediction information of a current block in a current picture from a coded video bitstream, the prediction information indicating (i) an adaptive motion vector prediction (AMVP) mode with an adaptive motion vector resolution (AMVR) mode being applied to the current block and (ii) motion information, a set of motion vector (MV) resolutions in the AMVR mode being available for the current block;

perform template matching (TM) on a plurality of MV resolutions in the set of MV resolutions by

determining respective TM costs corresponding to each of the plurality of MV resolutions based on the plurality of MV resolutions and the motion information;

reordering the plurality of MV resolutions based on the determined TM costs respectively corresponding to each of the plurality of MV resolutions; and

selecting an MV resolution from the reordered plurality of MV resolutions; and

reconstruct the current block based on the selected MV resolution.

12. The apparatus of claim 11 , wherein the processing circuitry is configured to:

for each of the plurality of MV resolutions in the set of MV resolutions,

determine a first reference block in a first reference picture based on the current block in the current picture, the motion information, and the respective MV resolution; and

determine a TM cost based on a first reference template of the first reference block in the first reference picture and a current template of the current block in the current picture.

13. The apparatus of claim 11 , wherein

the plurality of MV resolutions is the set of MV resolutions;

the prediction information indicates whether to apply a first MV resolution to the current block, the first MV resolution corresponding to the smallest TM cost among the determined TM costs respectively;

in response to an indication that the first MV resolution is applied to the current block, the processing circuitry is configured to:

select the first MV resolution to be the MV resolution; and

reconstruct the current block based on the first MV resolution; and

in response to an indication that the first MV resolution is not applied to the current block, the processing circuitry is configured to:

select the MV resolution from remaining MV resolutions in the reordered plurality of MV resolutions, the remaining MV resolutions excluding the first MV resolution; and

reconstruct the current block based on the selected MV resolution.

14. The apparatus of claim 13 , wherein

the plurality of MV resolutions includes ¼ luma samples, ½ luma samples, 1 luma sample, and 4 luma samples.

15. The apparatus of claim 13 , wherein

the first MV resolution is not applied to the current block; and

the processing circuitry is configured to:

decode an index in the coded video bitstream;

select a second MV resolution from the remaining MV resolutions in the reordered plurality of MV resolutions based on the index, the remaining MV resolutions excluding the first MV resolution; and

reconstruct the current block based on the second MV resolution.

16. The apparatus of claim 11 , wherein

the set of MV resolutions includes a third MV resolution that is not in the plurality of MV resolutions;

the prediction information indicates that the third MV resolution is not applied to the current block; and

the processing circuitry is configured to:

decode an index in the coded video bitstream;

select a fourth MV resolution from the reordered plurality of MV resolutions based on the index; and

reconstruct the current block based on the fourth MV resolution.

17. The apparatus of claim 16 , wherein

the set of MV resolutions consists of ¼ luma samples, ½ luma samples, 1 luma sample, and 4 luma samples;

the third MV resolution is ¼ luma samples; and

the plurality of MV resolutions consists of ½ luma samples, 1 luma sample, and 4 luma samples.

18. The apparatus of claim 11 , wherein

the prediction information indicates that the current block is coded with bi-prediction; and

the processing circuitry is configured to:

for each of the plurality of MV resolutions in the set of MV resolutions, determine a TM cost based on a first TM cost and a second TM cost, the first TM cost being determined based on a first reference template of a first reference block in a first reference picture and based on a current template of the current block in the current picture, the second TM cost being determined based on a second reference template of a second reference block in a second reference picture and based on the current template of the current block in the current picture.

19. The apparatus of claim 18 , wherein for each of the plurality of MV resolutions in the set of MV resolutions, the TM cost is a weighted sum of the first TM cost and the second first TM cost.

20. A non-transitory computer-readable storage medium storing a program executable by at least one processor to perform:

decoding prediction information of a current block in a current picture from a coded video bitstream, the prediction information indicating (i) an adaptive motion vector prediction (AMVP) mode with an adaptive motion vector resolution (AMVR) mode being applied to the current block and (ii) motion information, a set of motion vector (MV) resolutions in the AMVR mode being available for the current block;

performing template matching (TM) on a plurality of MV resolutions in the set of MV resolutions by

determining respective TM costs corresponding to each of the plurality of MV resolutions based on the plurality of MV resolutions and the motion information;

reordering the plurality of MV resolutions based on the determined TM costs respectively corresponding to each of the plurality of MV resolutions; and

selecting an MV resolution from the reordered plurality of MV resolutions; and

reconstructing the current block based on the selected MV resolution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2022
From: CHEN, LIEN-FEI; LI, XIANG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 061277/0983 →
Continuity (3)
Provisional Application 63289128 · Dec 13, 2021
Provisional Application 63273070 · Oct 28, 2021
Related Publication 20230139186A1 · May 4, 2023
Cited By (4)
US 12,284,375 US 12,348,747 US 12,477,122 US 12,568,242