Motion Vector Determining Method and Apparatus
Abstract
A motion vector determining method includes a first matched distortion value between a forward prediction block and a backward prediction block of a current block is calculated. A matched distortion value between a first prediction block and a fifth prediction block, a matched distortion value between a second prediction block and a sixth prediction block, a matched distortion value between a third prediction block and a seventh prediction block, and a matched distortion value between a fourth prediction block and an eighth prediction block are calculated. A target forward prediction block and a target backward prediction block are determined based on a value relationship between the matched distortion values. A target motion vector of the current block is determined based on the target forward prediction block and the target backward prediction block.
Claims
exact text as granted — not AI-modified1 . A method comprising:
calculating a first matched distortion value between a forward prediction block of a current block and a backward prediction block of the current block; calculating a second matched distortion value between a first prediction block and a fifth prediction block, a third matched distortion value between a second prediction block and a sixth prediction block, a fourth matched distortion value between a third prediction block and a seventh prediction block, and a fifth matched distortion value between a fourth prediction block and an eighth prediction block, wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward; and determining a target motion vector of the current block based on the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, and the fifth matched distortion value.
2 . The method of claim 1 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward in a forward reference frame, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward in a backward reference frame.
3 . The method of claim 1 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward based on a first sample accuracy, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward based on the first sample accuracy.
4 . The method of claim 1 , wherein one of the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, or the fifth matched distortion value comprises a sum of absolute differences (SAD) between two prediction blocks, wherein the SAD is calculated according to the following formula:
SAD=Σ n=0 n=L−1 [abs( p 0[ n ]− P 1[ n ])],
wherein p0[n] is a first sample value of a first sample in the forward prediction block, the first prediction block, the second prediction block, the third prediction block, or the fourth prediction block, wherein P1 [n] is a second sample value of a second sample in the backward prediction block, the fifth prediction block, the sixth prediction block, the seventh prediction block, or the eighth prediction block, and wherein L is a quantity of samples in a sampled prediction block.
5 . The method of claim 3 , wherein the first sample accuracy is an integer sample accuracy.
6 . An apparatus comprising:
a processor, and a memory coupled to the processor and configured to store instructions that, when executed by the processor, cause the apparatus to be configured to:
calculate a first matched distortion value between a forward prediction block of a current block and a backward prediction block of the current block;
calculate only a second matched distortion value between a first prediction block and a fifth prediction block, a third matched distortion value between a second prediction block and a sixth prediction block, a fourth matched distortion value between a third prediction block and a seventh prediction block, and a fifth matched distortion value between a fourth prediction block and an eighth prediction block, wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward; and
determine a target motion vector of the current block based on the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, and the fifth matched distortion value.
7 . The apparatus of claim 6 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward in a forward reference frame, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward in a backward reference frame.
8 . The apparatus of claim 6 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward based on a first sample accuracy, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward based on the first sample accuracy.
9 . The apparatus of claim 6 , wherein one of the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, and the fifth matched distortion value comprises a sum of absolute differences (SAD) between two prediction blocks, wherein the SAD is calculated according to the following formula:
SAD=Σ n=0 n=L−1 [abs( p 0[ n ]− P 1[ n ])],
wherein p0[n] is a first sample value of a first sample in the forward prediction block, the first prediction block, the second prediction block, the third prediction block, or the fourth prediction block, wherein P1[n] is a second sample value of a second sample in the backward prediction block, the fifth prediction block, the sixth prediction block, the seventh prediction block, or the eighth prediction block, wherein positions of p0[n] and P1[n] in the two prediction blocks are the same, and wherein L is a quantity of samples in a sampled prediction block.
10 . The apparatus of claim 8 , wherein the first sample accuracy is an integer sample accuracy.
11 . A computer program product comprising computer-executable instructions that are stored on a non-transitory computer-readable storage medium and that, when executed by a processor, cause an apparatus to:
calculate a first matched distortion value between a forward prediction block and a backward prediction block of a current block; calculate a second matched distortion value between a first prediction block and a fifth prediction block, a third matched distortion value between a second prediction block and a sixth prediction block, a fourth matched distortion value between a third prediction block and a seventh prediction block, and a fifth matched distortion value between a fourth prediction block and an eighth prediction block, wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward, and wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward; and determine a target motion vector of the current block based on the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, and the fifth matched distortion value.
12 . The computer program product of claim 11 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward in a forward reference frame.
13 . The computer program product of claim 11 , wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward in a backward reference frame.
14 . The computer program product of claim 11 , wherein the first prediction block, the second prediction block, the third prediction block, and the fourth prediction block are respectively based on shifting the forward prediction block upward, downward, leftward, and rightward based on a first sample accuracy.
15 . The computer program product of claim 14 , wherein the fifth prediction block, the sixth prediction block, the seventh prediction block, and the eighth prediction block are respectively based on shifting the backward prediction block downward, upward, rightward, and leftward based on the first sample accuracy.
16 . The computer program product of claim 11 , wherein one of the first matched distortion value, the second matched distortion value, the third matched distortion value, the fourth matched distortion value, or the fifth matched distortion value comprises a sum of absolute differences (SAD) between two prediction blocks.
17 . The computer program product of claim 16 , wherein the SAD is calculated according to the following formula:
SAD=Σ n=0 n=L−1 [abs( p 0[ n ]− P 1[ n ])],
wherein p0[n] is a first sample value of a first sample in the forward prediction block, the first prediction block, the second prediction block, the third prediction block, or the fourth prediction block, and wherein P1[n] is a second sample value of a second sample in the backward prediction block, the fifth prediction block, the sixth prediction block, the seventh prediction block, or the eighth prediction block.
18 . The computer program product of claim 17 , wherein L is a quantity of samples in a sampled prediction block.
19 . The computer program product of claim 14 , wherein the first sample accuracy is an integer sample accuracy.
20 . The computer program product of claim 14 , wherein the first sample accuracy is a non-integer sample accuracy.Join the waitlist — get patent alerts
Track US2022141482A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.