Moving picture variable bit rate coding apparatus, moving picture variable bit rate coding method, and recording medium for moving picture variable bit rate coding program
First Claim
1. A moving picture variable bit rate coding apparatus receiving digitized moving pictures, and subjecting the pictures to a coding processing according to a variable bit rate method, in a real time processing in response to the input of the picture, to generate bit streams, said coding apparatus comprising:
- a blocking means for dividing each picture included in the input moving picture into blocks to generate blocked data;
a picture conversion means for subjecting the blocked data to conversion processing to generate a conversion coefficient;
a quantization means for performing quantization processing to the conversion coefficient using a quantification scale to generate a quantized conversion coefficient;
a bit stream generating means for generating bit stream from the quantized conversion coefficient; and
a code quantity control means for setting a function for control, using a generated code quantity which is a quantity of bit stream generated in a unit time and an average quantization scale obtained as a value indicating an average of the quantization scales per unit time, and, by arithmetic operation using the set function, obtaining a quantization scale to be used for the quantization processing and then outputting the quantization scale to the quantization means.
1 Assignment
0 Petitions
Accused Products
Abstract
A moving picture variable bit rate coding apparatus receives digitized moving pictures and subjects them to coding according to a variable bit rate method using real time processing in response to the input of the pictures. The apparatus performs variable bit rate coding in real time by sequentially performing blocking, conversion processing, quantization processing, and generation of bit streams in response to the input of digitized moving picture data, and setting a quantization scale used for quantization corresponding to a quantity of generated bit streams to perform coding processing and control of quantization in parallel.
81 Citations
31 Claims
-
1. A moving picture variable bit rate coding apparatus receiving digitized moving pictures, and subjecting the pictures to a coding processing according to a variable bit rate method, in a real time processing in response to the input of the picture, to generate bit streams, said coding apparatus comprising:
-
a blocking means for dividing each picture included in the input moving picture into blocks to generate blocked data;
a picture conversion means for subjecting the blocked data to conversion processing to generate a conversion coefficient;
a quantization means for performing quantization processing to the conversion coefficient using a quantification scale to generate a quantized conversion coefficient;
a bit stream generating means for generating bit stream from the quantized conversion coefficient; and
a code quantity control means for setting a function for control, using a generated code quantity which is a quantity of bit stream generated in a unit time and an average quantization scale obtained as a value indicating an average of the quantization scales per unit time, and, by arithmetic operation using the set function, obtaining a quantization scale to be used for the quantization processing and then outputting the quantization scale to the quantization means. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
a code quantity counting means for obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating means;
an average quantization scale calculating means for obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating means for obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1, using the generated code quantity and the average quantization scale;
a first function setting means for setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started;
a second function setting unit for setting a function g;
S=g(Q) which passes through a point (S1, Q1), using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1; and
a quantization scale deciding means for obtaining a value of Q which satisfies the both functions f and g, using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and outputting the value of Q to the quantization means as a quantization scale.
-
-
3. The moving picture variable bit rate coding apparatus defined in claim 1 wherein the code quantity control means comprises:
-
a code quantity counting means for obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating means;
an average quantization scale calculating means for obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating means for obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1, using the generated code quantity and the average quantization scale;
a first function setting means for setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started;
a second function setting means for setting a function g;
S=g(Q) which passes through a point (S1, Q1), using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then setting a function h represented as a tangent being tangent to the function g at the point (S1, Q1); and
a quantization scale deciding means for obtaining a value of Q which satisfies the both functions f and h, from the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and outputting the value of Q to the quantization means as a quantization scale.
-
-
4. The moving picture variable bit rate coding apparatus defined in claim 1 wherein the code quantity control means comprises:
-
a target bit rate setting means for setting a target bit rate which is a bit rate as a target in the coding apparatus, until the coding is started;
a generated bit rate calculating means for obtaining a generated bit rate which is a bit rate for generated bit streams based on the bit streams generated by the bit stream generating means;
a code quantity counting means for obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating means;
an average quantization scale calculating means for obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating means for obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1, using the generated code quantity and the average quantization scale;
a first function setting means for setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started, and then changing the set function corresponding to a difference between the target bit rate and the generated bit rate;
a second function setting means for setting a function g;
S=g(Q) which passes through a point (S1, Q1) from the generated code quantity per unit time S1 and the average quantization scale per unit time Q1 which are both the outputs of the unit time information calculating means; and
a quantization scale deciding means for obtaining a value of Q which satisfies both the function f set by the first function setting means and the function g set by the second function setting means, using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then outputting the value of Q to the quantization means as a quantization scale.
-
-
5. The moving picture variable bit rate coding apparatus defined in claim 1 wherein the code quantity control means sets a function f such that f(Q1)≦
- f(Q2) when Q1<
Q2, as a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- f(Q2) when Q1<
-
6. The moving picture variable bit rate coding apparatus defined in claim 1 wherein the code quantity control means sets a function g such that g(Q1)≦
- g(Q2) when Q1<
Q1, as a function g;
S=g(Q) which passes through a point (S1, Q1) obtained from a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 which are obtained.
- g(Q2) when Q1<
-
7. The moving picture variable bit rate coding apparatus defined in claim 1 wherein the code quantity control means sets a function f(Q)=a×
- Q+b (a is an integral real number, and b is a real number) which is expressed as a straight line, as a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q+b (a is an integral real number, and b is a real number) which is expressed as a straight line, as a function f;
-
8. The moving picture variable bit rate coding apparatus defined in claim 4 wherein the code quantity control means sets a function f(Q)=a×
- Q+b (a is an integral real number and b is a real number), as a function f;
S=f(Q) which indicates a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), and changes the setting of the function f such that the slope of the function f is increased when the target bit rate is larger than the generated bit rate while changing the setting of the function f such that the slope of the function f is decreased when the target bit rate is smaller than the generated bit rate.
- Q+b (a is an integral real number and b is a real number), as a function f;
-
9. The moving picture variable bit rate coding apparatus defined in claim 1 wherein, assuming that a constant Q1 is smaller than a constant Q2, a constant S1 is smaller than a constant S2, and S1=f(Q1) and S2=f(Q2), the code quantity control means sets a function f such that f(Q)=S1 when Q<
- Q1 and f(Q)=(S2−
S1)/(Q2−
Q1)×
Q+(S1×
Q2−
S2×
Q1)/(Q2−
Q1) when Q1≦
Q≦
Q2, as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q1 and f(Q)=(S2−
-
10. The moving picture variable bit rate coding apparatus defined in claim 1 wherein a function g(Q)=Q1×
- S1/Q expressed as a hyperbola is set as a function g;
S=g(Q) passing through a point (S1, Q1) obtained from a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 which are obtained.
- S1/Q expressed as a hyperbola is set as a function g;
-
11. The moving picture variable bit rate coding apparatus defined in claim 1 further comprising a signal input means for inputting signals including moving pictures from the exterior to said apparatus, and an output managing means for controlling the storage of the bit streams into a storage unit.
-
12. A moving picture variable bit rate coding method in which digitized moving pictures are received and subjected to a coding processing according to a variable bit rate method in a real time processing in response to the input of the pictures, said method including:
-
a blocking step of dividing each picture included in the input moving picture into blocks to generate blocked data;
a picture conversion step of performing conversion processing to the blocked data to generate a conversion coefficient;
a quantization step of performing quantization processing to the conversion coefficient using a quantization scale to generate a quantized conversation coefficient;
a bit stream generating step of generating bit stream from the quantized conversion coefficient; and
a code quantity control step of setting a function for control, using a generated code quantity which is a quantity of bit stream generated in a unit time and an average quantization scale obtained as a value indicating an average of the quantization scales per unit time, and by arithmetic operation using the set function, obtaining a quantization scale to be used for the quantization and outputting the scale to the quantization step. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21)
a code quantity counting step of obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scale used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q) before the coding is started;
a second function setting step of setting a function g;
S=g(Q) passing through a point (S1, Q1), using a generated code quantity per unit time S1 and an average quantization scale per unit time Q1; and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and g, using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and outputting the value of Q to the quantization step as a quantization scale.
-
-
14. The moving picture variable bit rate coding method defined in claim 12 wherein the code quantity control step includes:
-
a code quantity counting step of obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started;
a second function setting step of setting a function g;
S=g(Q) which passes through a point (S1, Q1) using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then setting a function h expressed as a tangent which is tangent to the function g at the point (S1, Q1); and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and h using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then outputting the value of Q to the quantization step as a quantization scale.
-
-
15. The moving picture variable bit rate coding method defined in claim 12 wherein the code quantity control step includes:
-
a target bit rate calculating step of setting a target bit rate, which is a bit rate as a target in the coding method, before the coding is started;
a generated bit rate calculating step of obtaining a generated bit rate, which is a bit rate for generated bit stream, from the bit streams generated by the bit stream generating means;
a code quantity calculating step of obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated in the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started, and then changing the set function corresponding to a difference between the target bit rate and the generated bit rate;
a second function setting step of setting a function g;
S=g(Q) passing through a point (S1, Q1), from the generated code quantity per unit time S1 and the average quantization scale per unit time Q1 which are both the outputs of the unit time information calculating step; and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and g using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then outputting the value of Q to the quantization step as a quantization scale.
-
-
16. The moving picture variable bit rate coding method defined in claim 12 wherein, in the code quantity control step, a function f is set such that f(Q1)≦
- f(Q2) when Q1<
Q2, as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- f(Q2) when Q1<
-
17. The moving picture variable bit rate coding method defined in claim 12 wherein, in the code quantity control step, a function g is set such that g(Q1)≦
- g(Q2) when Q1<
Q2, as a function g;
S=g(Q) passing through a point (S1, Q1) obtained from a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 which are obtained.
- g(Q2) when Q1<
-
18. The moving picture variable bit rate coding method defined in any of claim 12 wherein, in the code quantity control step, a function f(Q)=a×
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
-
19. The moving picture variable bit rate coding method defined in claim 15 wherein, in the code quantity control step, a function f(Q)=a×
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), and changes the setting of the function f such that the slope of the function f is increased when the target bit rate is larger than the generated bit rate while changing the setting of function f such that the slope of the function f is decreased when the target bit rate is smaller than the generated bit rate.
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
-
20. The moving picture variable bit rate coding method defined in claim 12 wherein, assuming that a constant Q1 is smaller than a constant Q2, a constant S1 is smaller than a constant S2, and S1=f(Q1) and S2=f(Q2), a function f is set such that f(Q)=S1 when Q<
- Q1 and f(Q)=(S2−
S1)/(Q2−
Q1)×
Q+(S1×
Q2−
S2×
Q1)/(Q2−
Q1) when Q1≦
Q≦
Q2, as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q1 and f(Q)=(S2−
-
21. The moving picture variable bit rate coding method defined in claim 12 wherein, in the code quantity control step, a function g(Q)=Q1×
- S1/Q expressed as a hyperbola is set as a function g;
S=g(Q) which passes through a point (S1, Q1) obtained from a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 which are obtained.
- S1/Q expressed as a hyperbola is set as a function g;
-
22. A recording medium for moving picture variable bit rate coding program used for recording a moving picture variable bit rate coding program which receives digitized moving pictures and subjects the pictures to a coding processing according to a variable bit rate method in a real time processing in response to the input of the pictures to generate bit streams, said program comprises:
-
a blocking step of dividing each picture included in the input moving picture into blocks to generate blocked data;
a picture conversion step of performing conversion processing to the blocked data to generate a conversion coefficient;
a quantization step of performing quantization processing to the conversion coefficient using a quantization scale to generate a quantized conversation coefficient;
a bit stream generating step of generating bit streams from the quantized conversion coefficient; and
a code quantity control step of setting a function for control using a generated code quantity as a quantity of bit stream generated in a unit time and an average quantization scale obtained as a value indicating an average of the quantization scales per unit time, and by arithmetic operation using the set function, obtaining a quantization scale to be used for the quantization processing and outputting the scale to the quantization step. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
a code quantity counting step of obtaining a generated code quantity by counting the quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q) before the coding is started;
a second function setting step of setting a function g;
S=g(Q) passing through a point (S1, Q1), using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1; and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and g, using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and outputting the value of Q to the quantization step as a quantization scale.
-
-
24. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program in which the code quantity control step includes:
-
a code quantity counting step of obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated by the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started;
a second function setting step of setting a function g;
S=g(Q) which passes through a point (S1, Q1) using a generated code quantity per unit time S1 and an average quantization scale per unit time Q1, and then setting a function h expressed as a tangent which is tangent to the function g at the point (S1, Q1); and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and h using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then outputting the value of Q to the quantization step as a quantization scale.
-
-
25. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program in which the code quantity control step includes:
-
a target bit rate calculating step of setting a target bit rate, which is a bit rate as a target in the coding method, before the coding is started;
a generated bit rate calculating step of obtaining a generated bit rate, which is a bit rate for generated bit stream, from the bit streams generated by the bit stream generating means;
a code quantity calculating step of obtaining a generated code quantity by counting a quantity of code generated in each picture included in the moving picture based on the bit streams generated in the bit stream generating step;
an average quantization scale calculating step of obtaining an average quantization scale of each picture from the quantization scales used for the quantization;
a unit time information calculating step of obtaining a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 using the generated code quantity and the average quantization scale;
a first function setting step of setting a function f;
S=f(Q) which indicates a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), before the coding is started, and then changing the set function corresponding to a difference between the target bit rate and the generated bit rate;
a second function setting step of setting a function g;
S=g(Q) passing through a point (S1, Q1), from the generated code quantity per unit time S1 and the average quantization scale per unit time Q1 which are both the outputs of the unit time information calculating step; and
a quantization scale deciding step of obtaining a value of Q which satisfies the both functions f and g using the generated code quantity per unit time S1 and the average quantization scale per unit time Q1, and then outputting the value of Q to the quantization step as a quantization scale.
-
-
26. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program wherein, in the code quantity control step, a function f is set such that f(Q1)≦
- f(Q2) when Q1<
Q2, as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- f(Q2) when Q1<
-
27. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program wherein, in the code quantity control step, a function g is set such that g(Q1)≦
- g(Q2) when Q1<
Q2, as a function g;
S=g(Q) which passes through a point (S1, Q1) obtained from a generated code quantity per unit time S1 and an average quantization scale per unit time Q1 which are obtained.
- g(Q2) when Q1<
-
28. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program wherein, in the code quantity control step, a function f(Q)=a×
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
-
29. The recording medium for moving picture variable bit rate coding program defined in claim 25 being used for recording the moving picture variable bit rate coding program wherein, in the code quantity control step, a function f(Q)=a×
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q), and the setting of the function f is changed such that the slope of the function f if increased when the target bit rate is larger than the generated bit rate while the function f is changed such that the slope of the function f is decreased when the target bit rate is smaller than the generated bit rate.
- Q+b (a is an integral real number, and b is a real number) expressed as a straight line is set as a function f;
-
30. The recording medium for moving picture variable bit rate coding program defined in claim 22 being used for recording the moving picture variable bit rate coding program wherein, in the code quantity control step, assuming that a constant Q1 is smaller than a constant Q2, a constant S1 is smaller than a constant S2, and S1=f(Q1) and S2=f(Q2), a function f is set such that f(Q)=S1 when Q<
- Q1 and f(Q)=(S1−
S1)/(Q2−
Q1)×
Q+(S×
Q2−
S2×
Q1)/(Q2−
Q1) when Q1≦
Q≦
Q2, as a function f;
S=f(Q) indicating a relation between a generated code quantity per unit time (S) and an average quantization scale per unit time (Q).
- Q1 and f(Q)=(S1−
-
31. The recording medium for moving picture variable bit rate coding program defined in claim 22 recording the moving picture variable bit rate coding program wherein, in the code quantity control step, a function g(Q)=Q1×
- S1/Q expressed as a hyperbola is set as a function g;
S=g(Q) which passes through a point (S1, Q1) obtained from the generated code quantity per unit time S1 and the average quantization scale per unit time Q1.
- S1/Q expressed as a hyperbola is set as a function g;
Specification