IP Library Granted Patent US 9,137,540
Granted Patent B2
US 9,137,540 · App. 13/093,799 · Granted Sep 15, 2015

Methods of selecting an encoding mode

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 9,137,540
App. No.
13/093,799
Granted
Sep 15, 2015
Kind
B2
Abstract

Information needed to generate an encoded version of a matrix of j transform coefficients c0 . . . cj−1 representing a block of digital video data is determined by forming a numerical signature σ of the matrix and looking up a value for the information needed in an array employing the signature σ as an index to the array.

Claims (79)

1. A method, comprising:

a) forming, by a computing machine that performs compression coding of video signals, a numerical signature σ of a matrix of j transform coefficients c 0 . . . c j−1 representing a block of digital video data; and

b) looking up, by the computing machine that performs compression coding of video signals, a number of bits R equivalent to a length of an encoded version of the matrix in an array employing the numerical signature σ as an index to the array.

2. The method according to claim 1 , comprising calculating the numerical signature σ, by the computing machine that performs compression coding of video signals, using a group of the coefficients in accordance with a procedure that returns a unique value of the numerical signature a for each unique set of coefficient values.

3. The method according to claim 1 , wherein a) comprises:

a1) linearly ordering the coefficients c 0 , c 1 , . . . , c j−1

a2) selecting a group of m sequentially ordered coefficients cu through c v where u is less than v and v equals u+m−1,

a3) mapping each coefficient c i in the group to an unsigned integer representation r i ,

a4) weighting each integer representation r i to form a weighted representation w i , and

a5) combining the weighted representations w u . . . w v to form the numerical signature σ.

4. The method according to claim 3 , wherein a1) comprises ordering the coefficients according to a zig-zag scan.

5. The method according to claim 3 , wherein a1) comprises ordering the coefficients according to a left-to-right-top-to-bottom scan.

6. The method according to claim 3 , wherein each coefficient c i in the group is limited to a predefined range of possible values and the predefined range of possible values for coefficient c i is greater than the predefined range of possible values for coefficient c i+1 .

7. The method according to claim 3 , wherein coefficients c v+i . . . c j−1 equal zero.

8. The method according to claim 3 , wherein c i is represented by a maximum number of bits b i and a3) comprises:

calculating r i for each coefficient c i in the group according to the equation:

r i =c i +2 bi−1 −1.

9. A method according to claim 3 , wherein a4) comprises:

calculating w i for each coefficient c i in the group according to the equation:

w k =2 tk r k ,

where t k =0 for k=u and

t

k

=

i

=

0

k

-

1

b

i

for

k

>

u

.

10. The method according to claim 3 , wherein a5) comprises summing the weighted representations w u . . . w v to calculate numerical signature σ.

11. The method according to claim 3 , wherein a) further comprises:

receiving an identifier associated with the matrix, and, after a5),

storing the numerical signature σ in a holding table using the matrix's identifier as an index.

12. The method according to claim 11 , wherein the array comprises a plurality of data tables and the method further comprises, between a) and b):

receiving a communication from a requestor indicating a data table, and

receiving the identifier from the requestor, b) further comprises:

using the identifier as an index to the holding table to retrieve the numerical signature σ, and

reading a value of the information needed from the indicated data table, and, after b), the method further comprises:

returning the value of the information needed to the requestor.

13. The method according to claim 1 , wherein the array comprises multiple data tables and b) comprises:

receiving a communication from a requestor indicating a data table,

reading the number of bits R from the indicated table, and

returning the number of bits R to the requestor.

14. The method according to claim 1 , wherein, prior to b), the method comprises calculating the numerical signature σ and the number of bits R for every matrix in which the value of each coefficient falls within a predetermined range.

15. The method according to claim 14 , wherein prior to b), the method comprises creating the array, the array contains the number of bits R indexed by the calculated numerical signature σ values.

16. The method according to claim 1 , comprising performing a) in parallel with calculating transform coefficients c 0 . . . c j−1 .

17. A method, comprising:

a) forming, by a computing machine that performs compression coding of video signals, a numerical signature σof a matrix of j transform coefficients c 0 . . . c j−1 representing a block of digital video data; and

b) looking up, by the computing machine that performs compression coding of video signals, a sequence of bits S equivalent to an encoded version of the matrix of transform coefficients in an array employing the numerical signature σ as an index to the array.

18. A method, comprising:

a) forming, by a computing machine that performs compression coding of video signals, a numerical signature σ of a matrix of transform coefficients c 0 . . . c j− 1 representing a block of digital video data;

b) looking up, by the computing machine that performs compression coding of video signals, at least one value for a parameter R in a coding mode array using the numerical signature σ as an index to the array, the at least one value of the parameter R being equal to a size, in bits, of an encoded version of the matrix encoded with one of a plurality of coding modes;

c) using, by the computing machine, the at least one value of parameter R as an input to a mode selection function J to determine a corresponding value of J;

d) selecting, by the computing machine, a coding mode from the plurality of coding modes corresponding to the smallest value of J; and

e) selecting, by the computing machine, a sequence of bits S equivalent to an encoded version of the matrix of coefficients from a bit stream array, the sequences of bits S being uniquely identified by the numerical signature σand the selected coding mode.

19. The method according to claim 18 , comprising calculating the numerical signature σ, by the computing machine that performs compression coding of video signals, using a group of the coefficients in accordance with a procedure that returns a unique value of the numerical signature σ for each unique set of coefficient values and wherein a) comprises:

a1) linearly ordering the coefficients c 0 , c 1 , . . . , c j−1 ,

a2) selecting a group of m sequentially ordered coefficients c u through c v where u is less than v and v equals u+m−1,

a3) mapping each coefficient c i in the group to an unsigned integer representation r i ,

a4) weighting each integer representation r i to form a weighted representation w i , and

a5) combining the weighted representations w u . . . w v to form the numerical signature σ.

20. The method according to claim 18 , wherein prior to a), the method comprises calculating the numerical signature σ value and a value of the parameter R and the sequence of bits S for each of the plurality of coding modes for every matrix in which the value of each coefficient falls within a predetermined range.

21. The method according to claim 20 , wherein the coding mode array comprises multiple coding mode tables and the method comprises, prior to b), creating said coding mode tables wherein each coding mode table corresponds to a given coding mode and stores the calculated R value for each value of the numerical signature σ for that coding mode.

22. The method according to claim 21 , wherein for every unique combination of the numerical signature σ and coding mode there is a single S value and the method comprises, prior to a), storing each calculated S value in a bit stream table.

23. The method according to claim 18 , comprising performing a) in parallel with calculating the matrix of transform coefficients c 0 . . . c j−1 .

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034301/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT CORPORATION
To: GENERAL INSTRUMENT HOLDINGS, INC.
Reel/Frame 030764/0575 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 9, 2013
From: GENERAL INSTRUMENT HOLDINGS, INC.
To: MOTOROLA MOBILITY LLC
Reel/Frame 030866/0113 →
MERGER Recorded Jun 11, 2013
From: TUT SYSTEMS, INC.
To: GENERAL INSTRUMENT CORPORATION
Reel/Frame 030588/0118 →