IP Library Granted Patent US 10,057,576
Granted Patent B2
US 10,057,576 · App. 14/594,507 · Granted Aug 21, 2018

Moving image coding apparatus, moving image coding method, storage medium, and integrated circuit

Inventor: Akira Okamoto (Osaka, JP)
Assignee: Megachips Corporation
H04N19/124H04N19/14H04N19/176H04N19/115
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,057,576
App. No.
14/594,507
Granted
Aug 21, 2018
Kind
B2
Abstract

A moving image coding apparatus performs efficient moving image compression on video with much noise (with a poor S/N ratio), and enables appropriate bit rate control (code amount control). A first orthogonal transform unit performs orthogonal transform of an input moving image. A complexity obtaining unit obtains a complexity of the input moving image based on frequency component data obtained through orthogonal transform by the first orthogonal transform unit. A noise determination unit determines noise in the input moving image based on the frequency component data obtained through orthogonal transform by the first orthogonal transform unit. A code amount adjustment unit generates a code amount adjustment signal based on the complexity obtained by the complexity obtaining unit and the noise determination result obtained by the noise determination unit. A coding unit subjects the input moving image to a coding process including quantization using a quantization parameter value determined based on the code amount adjustment signal generated by the code amount adjustment unit.

Claims (77)

1. A moving image coding apparatus, comprising:

first orthogonal transform circuitry configured to perform orthogonal transform of an input moving image including a plurality of frame images;

complexity obtaining circuitry configured to obtain a complexity of the input moving image based on frequency component data obtained through the orthogonal transform performed by the first orthogonal transform circuitry;

noise determination circuitry configured to determine, prior to quantization, noise contained in the input moving image based on the frequency component data obtained through the orthogonal transform performed by the first orthogonal transform circuitry;

code amount adjustment circuitry configured to generate a code amount adjustment signal based on the complexity obtained by the complexity obtaining circuitry and a result of the noise determination performed by the noise determination circuitry; and

coding circuitry configured to subject the input moving image to a coding process including the quantization, the coding circuitry being configured to perform the quantization using a quantization parameter value determined based on the code amount adjustment signal generated by the code amount adjustment circuitry, wherein the coding circuitry sets a plurality of quantization parameter areas, which are used for determining a quantization parameter value, based on a minimum value of a quantization parameter value, a maximum value of the quantization parameter value, a first threshold value of the quantization parameter value, and a second threshold value of the quantization parameter value.

2. The moving image coding apparatus according to claim 1 , wherein

the complexity obtaining circuitry

sets a low-frequency area including low frequency component data, a medium-frequency area including medium frequency component data, and a high-frequency area including high frequency component data in a frequency domain obtained through the orthogonal transform performed by the first orthogonal transform circuitry,

obtains a low-frequency integrated value by adding up the low frequency component data included in the low-frequency area in a current frame image that is a processing target, a medium-frequency integrated value by adding up the medium frequency component data included in the medium-frequency area in the current frame image, and a high-frequency integrated value by adding up the high frequency component data included in the high-frequency area in the current frame image, and

obtains the complexity of the current frame image based on the low-frequency integrated value, the medium-frequency integrated value, and the high-frequency integrated value.

3. The moving image coding apparatus according to claim 1 , wherein

the noise determination circuitry

sets, for an orthogonal transform block that is a unit in which the orthogonal transform is performed by the first orthogonal transform circuitry, a low-frequency area for noise determination including low frequency component data obtained through the orthogonal transform and a high-frequency area for noise determination including high frequency component data obtained through the orthogonal transform,

obtains, for each orthogonal transform block, a low-frequency integrated value for noise determination by adding up the low frequency component data included in the low-frequency area for the noise determination,

obtains, for each orthogonal transform block, a high-frequency integrated value for noise determination by adding up the high frequency component data included in the high-frequency area,

performs a block-by-block noise determination process for determining whether an image block that is yet to undergo orthogonal transform corresponding to the orthogonal transform block contains noise based on the low-frequency integrated value and the high-frequency integrated value, and

performs an overall image determination process for determining that the current frame image contains noise when a number of orthogonal transform blocks each determined to contain noise in the block-by-block noise determination process performed on the orthogonal transform block included in the current frame image, which is the processing target, is greater than a predetermined value TH1.

4. The moving image coding apparatus according to claim 3 , wherein

the noise determination circuitry determines that the image block that is yet to undergo orthogonal transform corresponding to the orthogonal transform block contains noise when the high-frequency integrated value is greater than a predetermined value in the block-by-block noise determination process.

5. The moving image coding apparatus according to claim 3 , wherein

the noise determination circuitry

performs the block-by-block noise determination process for a split image area that is one of N split image areas into which the current frame image is split, where N is a natural number not less than 2, when determining that the current frame image does not contain noise in the overall image determination process, and performs a split determination process for determining that the split image area contains noise when the number of orthogonal transform blocks each determined to contain noise is greater than a predetermined value TH2, and

determines that the current frame image contains noise when a number of split image areas determined to contain noise in the split determination process performed on each of the N split image areas, where N is a natural number not less than 2, is greater than a predetermined number TH3.

6. The moving image coding apparatus according to claim 1 , wherein

the noise determination circuitry

sets a low-frequency area for noise determination including low frequency component data obtained through the orthogonal transform, and a high-frequency area for noise determination including high frequency component data obtained through the orthogonal transform in a frequency domain obtained through the orthogonal transform performed by the first orthogonal transform circuitry,

obtains a low-frequency integrated value for noise determination by adding up the low frequency component data included in the low-frequency area in a current frame image that is a processing target,

obtains a high-frequency integrated value for noise determination by adding up the high frequency component data included in the high-frequency area in the current frame image, and

performs an overall image determination process for determining whether the current frame image contains noise based on the low-frequency integrated value and the high-frequency integrated value.

7. The moving image coding apparatus according to claim 6 , wherein

the noise determination circuitry determines that the current frame image contains noise when the high-frequency integrated value is greater than a predetermined value in an overall image determination process.

8. The moving image coding apparatus according to claim 6 , wherein

when determining that the current frame image does not contain noise in the overall image determination process, the noise determination circuitry

obtains a low-frequency integrated value for noise determination by adding up the low frequency component data included in the low-frequency area, and a high-frequency integrated value for noise determination by adding up the high frequency component data included in the high-frequency area in a split image area that is one of N split image areas into which the current frame image is split, where N is a natural number not less than 2,

determines whether each split image area contains noise based on the low-frequency integrated value and the high-frequency integrated value, and

determines that the current frame image contains noise when a number of split image areas each determined to contain noise is greater than a predetermined number TH4.

9. The moving image coding apparatus according to claim 1 , wherein

the noise determination circuitry

sets, for an orthogonal transform block that is a unit in which the orthogonal transform is performed by the first orthogonal transform circuitry, a low-frequency area for noise determination including low frequency component data obtained through the orthogonal transform, a horizontal low-frequency area for noise determination including horizontal low frequency component data obtained through the orthogonal transform, a vertical low-frequency area for noise determination including vertical low frequency component data obtained through the orthogonal transform, and a high-frequency area for noise determination including high frequency component data obtained through the orthogonal transform,

obtains, for each orthogonal transform block, a low-frequency integrated value for noise determination by adding up the low frequency component data included in the low-frequency area,

obtains, for each orthogonal transform block, a horizontal low-frequency integrated value for noise determination by adding up the horizontal low frequency component data included in the horizontal low-frequency area for the orthogonal transform block,

obtains, for each orthogonal transform block, a vertical low-frequency integrated value for noise determination by adding up the vertical low frequency component data included in the vertical low-frequency area for the orthogonal transform block,

obtains, for each orthogonal transform block, a high-frequency integrated value for noise determination by adding up the high frequency component data included in the high-frequency area for the orthogonal transform block,

performs a block-by-block noise determination process for determining whether an image block that is yet to undergo orthogonal transform corresponding to the orthogonal transform block contains noise based on the low-frequency integrated value, the horizontal low-frequency integrated value, the vertical low-frequency integrated value, and the high-frequency integrated value, and

performs an overall image determination process for determining that a current frame image that is a processing target contains noise when a number of orthogonal transform blocks each determined to contain noise in the block-by-block noise determination process performed on the orthogonal transform block included in the current frame image is greater than a predetermined value TH5.

10. The moving image coding apparatus according to claim 9 , wherein

when determining that the current frame image does not contain noise in the overall image determination process, the noise determination circuitry

performs the block-by-block noise determination process for a split image area that is one of N split image areas into which the current frame image is split, where N is a natural number not less than 2, and performs a split determination process for determining that the split image area contains noise when a number of orthogonal transform blocks each determined to contain noise is greater than a predetermined value TH6, and

determines that the current frame image contains noise when a number of split image areas each determined to contain noise in the split determination process performed on each of the N split image areas, where N is a natural number not less than 2, is greater than a predetermined number TH7.

11. The moving image coding apparatus according to claim 3 , wherein

in the block-by-block noise determination process, the noise determination circuitry detects, for each orthogonal transform block, a number of pieces of frequency component data each having a level much greater than a level of a neighboring piece of frequency component data as a number of isolated pieces of frequency component data, and determines that an image block that is yet to undergo orthogonal transform corresponding to the orthogonal transform block contains noise when the detected number of isolated pieces of frequency component data is greater than a predetermined value TH8.

12. The moving image coding apparatus according to claim 1 , wherein

the coding circuitry sets a quantization parameter small area QP_S, a quantization parameter medium area QP_M, and a quantization parameter large area QP_L in a manner below:

QP_min≤QP<QP_th1 for the quantization parameter small area QP_S,

QP_th1≤QP<QP_th2 for the quantization parameter medium area QP_M, and

QP_th2≤QP<QP_max for the quantization parameter large area QP_L,

where QP_min is a possible minimum value of a quantization parameter value QP, QP_max is a possible maximum value of the quantization parameter value QP, and QP_th1 and QP_th2 are thresholds, and QP_min<QP_th1<QP_th2<QP_max, and

the code amount adjustment circuitry

(1) generates the code amount adjustment signal instructing the coding circuitry to set the quantization parameter value used in the quantization to a value included in the quantization parameter large area QP_L when a current frame image is determined to be complex based on the complexity of the current frame image obtained by the complexity obtaining circuitry and is determined to contain noise based on the result of the noise determination performed by the noise determination circuitry,

(2) generates the code amount adjustment signal instructing the coding circuitry to set the quantization parameter value used in the quantization to a value included in the quantization parameter medium area QP_M when the current frame image is determined to be complex based on the complexity of the current frame image obtained by the complexity obtaining circuitry and is determined not to contain containing noise based on the result of the noise determination performed by the noise determination circuitry,

(3) generates the code amount adjustment signal instructing the coding circuitry to set the quantization parameter value used in the quantization to a value included in the quantization parameter medium area QP_M when the current frame image is determined not to be complex based on the complexity of the current frame image obtained by the complexity obtaining circuitry and is determined to contain noise based on the result of the noise determination performed by the noise determination circuitry, and

(4) generates the code amount adjustment signal instructing the coding circuitry to set the quantization parameter value used in the quantization to a value included in the quantization parameter small area QP_S when the current frame image is determined not to be complex based on the complexity of the current frame image obtained by the complexity obtaining circuitry and is determined not to contain noise based on the result of the noise determination performed by the noise determination circuitry.

13. A moving image coding method, comprising:

performing orthogonal transform of an input moving image including a plurality of frame images;

obtaining a complexity of the input moving image based on frequency component data obtained through the orthogonal transform performed by the step of performing orthogonal transform of the input moving image;

determining, prior to quantization, noise contained in the input moving image based on the frequency component data obtained through the orthogonal transform performed by the step of performing orthogonal transform of the input moving image;

generating a code amount adjustment signal based on the complexity obtained by the step of obtaining the complexity of the input moving image and a result of the noise determination performed by the step of determining noise contained in the input moving image;

performing a coding process including the quantization on the input moving image, the step of performing the coding process including performing the quantization using a quantization parameter value determined based on the code amount adjustment signal generated by the step of generating the code amount adjustment signal; and

setting a plurality of quantization parameter areas, which are used for determining a quantization parameter value, based on a minimum value of a quantization parameter value, a maximum value of the quantization parameter value, a first threshold value of the quantization parameter value, and a second threshold value of the quantization parameter value.

14. A non-transitory computer readable storage medium storing a program enabling a computer to implement the moving image coding method according to claim 13 .

15. An integrated circuit, comprising:

first orthogonal transform circuitry configured to perform orthogonal transform of an input moving image including a plurality of frame images;

complexity obtaining circuitry configured to obtain a complexity of the input moving image based on frequency component data obtained through the orthogonal transform performed by the first orthogonal transform circuitry;

noise determination circuitry configured to determine, prior to quantization, noise contained in the input moving image based on the frequency component data obtained through the orthogonal transform performed by the first orthogonal transform circuitry,

code amount adjustment circuitry configured to generate a code amount adjustment signal based on the complexity obtained by the complexity obtaining circuitry and a result of the noise determination performed by the noise determination circuitry; and

coding circuitry configured to subject the input moving image to a coding process including the quantization, the coding circuitry being configured to perform the quantization using a quantization parameter value determined based on the code amount adjustment signal generated by the code amount adjustment circuitry, wherein the coding circuitry sets a plurality of quantization parameter areas, which are used for determining a quantization parameter value, based on a minimum value of a quantization parameter value, a maximum value of the quantization parameter value, a first threshold value of the quantization parameter value, and a second threshold value of the quantization parameter value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2015
From: OKAMOTO, AKIRA
To: MEGACHIPS CORPORATION
Reel/Frame 034683/0147 →
Priority Claims (1)
JP 2014-029686 · Feb 19, 2014 · national
Continuity (1)
Related Publication 20150237375A1 · Aug 20, 2015