IP Library › Granted Patent US 10,375,411
Granted Patent B2
US 10,375,411 · App. 14/773,161 · Granted Aug 6, 2019

Predictor for depth map intra coding

Inventors: Xin Zhao (San Diego, CA); Li Zhang (San Diego, CA); Ying Chen (San Diego, CA)
Assignee: Qualcomm Incorporated
H04N19/50H04N19/11H04N19/119H04N19/124H04N19/176H04N19/182H04N19/597H04N19/61
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 10,375,411
App. No.
14/773,161
Granted
Aug 6, 2019
Kind
B2
Abstract

In an example, a process for coding video data includes determining a partitioning pattern for a block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition. The process also includes determining a predicted value for at least one of the first partition and the second partition based on the determined partition pattern. The process also includes coding the at least one of the first partition and the second partition based on the predicted value.

Claims (106)

1. A method of processing video data, the method comprising:

determining a partitioning pattern for a block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition;

comparing a depth sample of a top row of the block to an N−1 depth sample of the top row of the block to determine whether a first partition boundary is included in the top row of the block, wherein the top row has N depth samples, and the depth sample of the top row is not adjacent to the N−1 depth sample of the top row;

comparing a depth sample of a left column of the block to an N−1 depth sample of the left column of the block to determine whether a second partition boundary is included in the left column of the block, wherein the left column has N depth samples, and the depth sample of the left column is not adjacent to the N−1 depth sample of the left column;

determining a first predicted value and a second predicted value based on whether the first partition boundary is included in the top row and whether the second partition boundary is included in the left column of the block, wherein determining the first predicted value and the second predicted value comprises selecting, to avoid partition boundaries, one or more reference samples that neighbor one or more of the first partition and the second partition; and

coding the at least one of the first partition and the second partition based on one or more of the first predicted value and the second predicted value.

2. The method of claim 1 , wherein determining the first predicted value for the first partition further comprises identifying exactly one reference sample that neighbors the first partition and setting the first predicted value for the first partition to a value of the exactly one reference sample.

3. The method of claim 1 , wherein determining the first predicted value for the first partition further comprises identifying exactly two reference samples that neighbor the first partition and setting the first predicted value for the first partition to an average value of the exactly two reference samples.

4. The method of claim 1 ,

wherein determining the first predicted value for the first partition further comprises identifying a reference sample that neighbors the first partition and setting the predicted value for the first partition to a value of the reference sample, and

wherein determining the predicted value for the second partition further comprises determining a default value and setting the second predicted value for the second partition to the default value.

5. The method of claim 1 , wherein, when the block includes both the first partition boundary and the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, determining the first predicted value and the second predicted value comprises:

setting the first predicted value to a combination of a neighboring reference sample located above an N−1 sample of the top row and a neighboring reference sample located to the left of an N−1 sample of the left column, where the top row and left column have N samples, and

setting the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

6. The method of claim 1 , wherein, when the block does not include the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, determining the first predicted value and the second predicted value comprises:

setting the first predicted value to a predetermined, default value, and

setting the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

7. The method of claim 1 , wherein, when the block includes the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, determining the first predicted value and the second predicted value comprises:

setting the first predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples, and

setting the second predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples.

8. The method of claim 1 , wherein, when the block does not include the first partition boundary and includes the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, determining the first predicted value and the second predicted value comprises:

setting the first predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples, and

setting the second predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples.

9. The method of claim 1 , wherein coding the at least one of the first partition and the second partition comprises decoding the at least one of the first partition and the second partition, and wherein decoding comprises:

parsing one or more residual values from an encoded bitstream, and

combining the one or more residual values with one or more of the first predicted value and the second predicted value for at least one of the first partition and the second partition to reconstruct depth values of the block.

10. The method of claim 1 , wherein coding the at least one of the first partition and the second partition comprises encoding the at least one of the first partition and the second partition, and wherein encoding comprises:

determining one or more residual values based on a difference between depth values of the block and one or more of the first predicted value and the second predicted value for at least one of the first partition and the second partition, and

encoding data representing the one or more residual values to form an encoded bitstream.

11. An apparatus for processing video data, the apparatus comprising:

a memory configured to store a block of depth values; and

one or more processors configured to:

determine a partitioning pattern for the block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition;

compare a depth sample of a top row of the block to an N−1 depth sample of the top row of the block to determine whether a first partition boundary is included in the top row of the block, wherein the top row has N depth samples, and the depth sample of the top row is not adjacent to the N−1 depth sample of the top row;

compare a depth sample of a left column of the block to an N−1 depth sample of the left column of the block to determine whether a second partition boundary is included in the left column of the block, wherein the left column has N depth samples, and the depth sample of the left column is not adjacent to the N−1 depth sample of the left column; and

determine a first predicted value and a second predicted value based on whether the first partition boundary is included in the top row and whether the second partition boundary is included in the left column of the block, including selecting, to avoid partition boundaries, one or more reference samples that neighbor one or more of the first partition and the second partition; and

code the at least one of the first partition and the second partition based on one or more of the first predicted value and the second predicted value.

12. The apparatus of claim 11 , wherein the one or more processors are configured to identify exactly one reference sample that neighbors the first partition and setting the first predicted value for the first partition to a value of the exactly one reference sample.

13. The apparatus of claim 11 , wherein the one or more processors are configured to identify exactly two reference samples that neighbor the first partition and setting the first predicted value for the first partition to an average value of the exactly two reference samples.

14. The apparatus of claim 11 ,

wherein the one or more processors are configured to identify a reference sample that neighbors the first partition and set the predicted value for the first partition to a value of the reference sample, and

wherein to determine the predicted value for the second partition, the one or more processors are further configured to determine a default value and set the second predicted value for the second partition to the default value.

15. The apparatus of claim 11 , wherein, when the block includes both the first partition boundary and the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the one or more processors are configured to:

set the first predicted value to a combination of a neighboring reference sample located above an N−1 sample of the top row and a neighboring reference sample located to the left of an N−1 sample of the left column, where the top row and left column have N samples, and

set the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

16. The apparatus of claim 11 , wherein, when the block does not include the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the one or more processors are configured to:

set the first predicted value to a predetermined, default value, and

set the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

17. The apparatus of claim 11 , wherein, when the block includes the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the one or more processors are configured to:

set the first predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples, and

set the second predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples.

18. The apparatus of claim 11 , wherein, when the block does not include the first partition boundary and includes the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the one or more processors are configured to:

set the first predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples, and

set the second predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples.

19. The apparatus of claim 11 , wherein the one or more processors are configured to decode the at least one of the first partition and the second partition, and wherein to decode, the one or more processors are configured to:

parse one or more residual values from an encoded bitstream, and

combine the one or more residual values with one or more of the first predicted value and the second predicted value for at least one of the first partition and the second partition to reconstruct depth values of the block.

20. The apparatus of claim 11 , wherein the one or more processors are configured to encode the at least one of the first partition and the second partition, and wherein to encode, the one or more processors are configured to:

determine one or more residual values based on a difference between depth values of the block and one or more of the first predicted value and the second predicted value for at least one of the first partition and the second partition, and

encode data representing the one or more residual values to form an encoded bitstream.

21. An apparatus for processing video data, the apparatus comprising:

means for determining a partitioning pattern for a block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition;

means for comparing a depth sample of a top row of the block to an N−1 depth sample of the top row of the block to determine whether a first partition boundary is included in the top row of the block, wherein the top row has N depth samples, and the depth sample of the top row is not adjacent to the N−1 depth sample of the top row;

means for comparing a depth sample of a left column of the block to an N−1 depth sample of the left column of the block to determine whether a second partition boundary is included in the left column of the block, wherein the left column has N depth samples, and the depth sample of the left column is not adjacent to the N−1 depth sample of the left column;

means for determining a first predicted value and a second predicted value based on whether the first partition boundary is included in the top row and whether the second partition boundary is included in the left column of the block, wherein determining the first predicted value and the second predicted value comprises selecting, to avoid partition boundaries, one or more reference samples that neighbor one or more of the first partition and the second partition; and

means for coding the at least one of the first partition and the second partition based on one or more of the first predicted value and the second predicted value.

22. The apparatus of claim 21 , wherein the means for determining the first predicted value for the first partition further comprises means for identifying exactly one reference sample that neighbors the first partition and setting the first predicted value for the first partition to a value of the exactly one reference sample.

23. The apparatus of claim 21 , wherein the means for determining the first predicted value for the first partition further comprises means for identifying exactly two reference samples that neighbor the first partition and setting the first predicted value for the first partition to an average value of the exactly two reference samples.

24. The apparatus of claim 21 ,

wherein the means for determining the first predicted value for the first partition further comprises means for identifying a reference sample that neighbors the first partition and setting the first predicted value for the first partition to a value of the reference sample, and

wherein the means for determining the second predicted value for the second partition further comprises means for determining a default value and setting the second predicted value for the second partition to the default value.

25. The apparatus of claim 21 , wherein, when the block includes both the first partition boundary and the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, the means for determining the first predicted value and the second predicted value comprises:

means for setting the first predicted value to a combination of a neighboring reference sample located above an N−1 sample of the top row and a neighboring reference sample located to the left of an N−1 sample of the left column, where the top row and left column have N samples, and

means for setting the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

26. The apparatus of claim 21 , wherein, when the block does not include the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, the means for determining the first predicted value and the second predicted value comprises:

means for setting the first predicted value to a predetermined, default value, and

means for setting the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

27. The apparatus of claim 21 , wherein, when the block includes the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, the means for determining the first predicted value and the second predicted value comprises:

means for setting the first predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples, and

means for setting the second predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples.

28. The apparatus of claim 21 , wherein, when the block does not include the first partition boundary and includes the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, the means for determining the first predicted value and the second predicted value comprises:

means for setting the first predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples, and

means for setting the second predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples.

29. A non-transitory computer-readable medium comprising instructions stored thereon that, when executed, cause one or more processors to:

determine a partitioning pattern for a block of depth values comprising assigning one or more samples of the block to a first partition and assigning one or more other samples of the block to a second partition;

compare a depth sample of a top row of the block to an N−1 depth sample of the top row of the block to determine whether a first partition boundary is included in the top row of the block, wherein the top row has N depth samples, and the depth sample of the top row is not adjacent to the N−1 depth sample of the top row;

compare a depth sample of a left column of the block to an N−1 depth sample of the left column of the block to determine whether a second partition boundary is included in the left column of the block, wherein the left column has N depth samples, and the depth sample of the left column is not adjacent to the N−1 depth sample of the left column;

determine a first predicted value and a second predicted value based on whether the first partition boundary is included in the top row and whether the second partition boundary is included in the left column of the block, wherein determining the first predicted value and the second predicted value comprises selecting, to avoid partition boundaries, one or more reference samples that neighbor one or more of the first partition and the second partition; and

code the at least one of the first partition and the second partition based on the predicted value.

30. The computer-readable medium of claim 29 , wherein to determine the first predicted value for the first partition, the instructions cause the one or more processors to identify exactly one reference sample that neighbors the first partition and setting the first predicted value for the first partition to a value of the exactly one reference sample.

31. The computer-readable medium of claim 29 , wherein to determine the first predicted value for the first partition, the instructions cause the one or more processors to identify exactly two reference samples that neighbor the first partition and setting the first predicted value for the first partition to an average value of the exactly two reference samples.

32. The computer-readable medium of claim 29 ,

wherein to determine the first predicted value for the first partition, the instructions cause the one or more processors to identify a reference sample that neighbors the first partition and set the first predicted value for the first partition to a value of the reference sample, and

wherein to determine the second predicted value for the second partition, the instructions cause the one or more processors to determine a default value and set the second predicted value for the second partition to the default value.

33. The computer-readable medium of claim 29 , wherein, when the block includes both the first partition boundary and the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the instructions cause the one or more processors to:

set the first predicted value to a combination of a neighboring reference sample located above an N−1 sample of the top row and a neighboring reference sample located to the left of an N−1 sample of the left column, where the top row and left column have N samples, and

set the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

34. The computer-readable medium of claim 29 , wherein, when the block does not include the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the instructions cause the one or more processors to:

set the first predicted value to a predetermined, default value, and

set the second predicted value to a combination of a neighboring reference sample located above a first sample of the top row and a neighboring reference sample located to the left of a first sample of the left column.

35. The computer-readable medium of claim 29 wherein, when the block includes the first partition boundary and does not include the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the instructions cause the one or more processors to:

set the first predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples, and

set the second predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples.

36. The computer-readable medium of claim 29 , wherein, when the block does not include the first partition boundary and includes the second partition boundary and a sample of the top left corner of the block is assigned to the first partition, to determine the first predicted value and the second predicted value, the instructions cause the one or more processors to:

set the first predicted value to a neighboring reference sample located to the left of an N−1 sample of the left column, where the left column has N samples, and

set the second predicted value to a neighboring reference sample located above an N−1 sample of the top row, where the top row has N samples.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 4, 2015
From: ZHAO, XIN; ZHANG, LI; CHEN, YING
To: QUALCOMM INCORPORATED
Reel/Frame 036556/0091 →
Continuity (1)
Related Publication 20160029038A1 · Jan 28, 2016
Cited By (3)
US 12,238,346 US 12,348,759 US 12,739,420