IP Library Granted Patent US 8,472,523
Granted Patent B2
US 8,472,523 · App. 11/203,431 · Granted Jun 25, 2013

Method and apparatus for detecting high level white noise in a sequence of video frames

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 8,472,523
App. No.
11/203,431
Granted
Jun 25, 2013
Kind
B2
Abstract

A system and/or method for detecting white noise in a sequence of video frames, and a computer program product is described to affect the quantization step size. In the method/system the correlation between motion vectors of macroblocks is calculated and compared to a predefined threshold. The correlation between motion vectors is used as an indicator for noise in the frames. The quantization step size is then adapted according to the detected level of noise.

Claims (89)

1. A method for detecting white noise in a sequence of video frames, comprising:

(a) calculating a noise estimate based on a sum of correlation values of motion vectors of adjacent macroblocks in a frame for a plurality of frames in the sequence of video frames;

(b) comparing the noise estimate for each frame in the plurality of frames to a predefined threshold value; and

(c) increasing a size of a quantization step in a quantizer device used to generate the sequence of video frames if the noise estimate for each frame in the plurality of frames is exceeded by the predefined threshold value.

2. The method of claim 1 , wherein step (a) comprises:

(a)(i) calculating a correlation value of a motion vector of a current macroblock and a motion vector of a macroblock adjacent to the current macroblock.

3. The method of claim 2 , wherein step (a)(i) comprises:

(a)(i)(A) calculating the correlation value of the motion vector of the current macroblock and the motion vector of the macroblock adjacent to the current macroblock by adding an absolute difference of x-axis components of the motion vectors and an absolute difference of y-axis components of the motion vectors.

4. The method of claim 1 , wherein step (a) comprises:

(a)(i) calculating a correlation value of a motion vector of a current macroblock and a motion vector of a macroblock adjacent to the current macroblock by evaluating:

AMC

=

n

=

1

N

(

x

n

-

x

n

-

1

)

2

+

(

y

n

-

y

n

-

1

)

2

,

where AMC represents the correlation value, n represents a macroblock index, x represents a horizontal component of a motion vector, and y represents a vertical component of a motion vector.

5. The method of claim 1 , wherein step (a) comprises:

(a)(i) calculating a correlation value of motion vectors of a predefined number of adjacent macroblocks in the frame from the sequence of video frames, the predefined number of adjacent macroblocks being based upon an available processing power of an encoding system.

6. The method of claim 1 , wherein the predefined threshold value is determined according to a heuristic test.

7. An apparatus for detecting white noise in a sequence of video frames, comprising:

an adder configured to calculate a noise estimate based on a sum of correlation values of motion vectors of adjacent macroblocks in a frame for a plurality of frames in the sequence of video frames;

a comparator configured to compare the noise estimate for each frame in the plurality of frames to a predefined threshold value; and

a controller configured to increase a size of a quantization step in a quantizer device if the noise estimate for each frame in the plurality of frames is exceeded by the predefined threshold value.

8. The apparatus of claim 7 , wherein the predefined threshold value is determined according to a heuristic test.

9. A computer program product (CPP) comprising a non-transitory computer useable medium encoded with computer readable program code (CRPC) for enabling a computer processor to process a video frame sequence, the CRPC comprising:

first CRPC for causing the computer processor to calculate a noise estimate based on a sum of correlation values of motion vectors of adjacent macroblocks in a frame for a plurality of frames in the video frame sequence;

second CRPC for causing the computer processor to compare the noise estimate for each frame in the plurality of frames to a predefined threshold value; and

third CRPC for causing the computer processor to increase a size of a quantization step in a quantizer device if the noise estimate for each frame in the plurality of frames is exceeded by the predefined threshold value.

10. The CPP of claim 9 , wherein the first CRPC is further for causing the computer processor to calculate a correlation value of a motion vector of a current macroblock and a motion vector of a macroblock adjacent to the current macroblock.

11. The CPP of claim 10 , wherein the first CRPC is further for causing the computer processor to calculate the correlation value of the motion vector of the current macroblock and the motion vector of the macroblock adjacent to the current macroblock by adding an absolute difference of x-axis components of the motion vectors and an absolute difference of y-axis components of the motion vectors.

12. The CPP of claim 9 , wherein the first CRPC is further for causing the computer processor to calculate a correlation value of a motion vector of a current macroblock and a motion vector of a macroblock adjacent to the current macroblock by evaluating:

AMC

=

n

=

1

N

(

x

n

-

x

n

-

1

)

2

+

(

y

n

-

y

n

-

1

)

2

,

where AMC represents the correlation value, n represents a macroblock index, x represents a horizontal component of a motion vector, and y represents a vertical component of a motion vector.

13. The CPP of claim 9 , wherein the first CRPC is further for causing the computer processor to calculate a correlation value of motion vectors of a predefined number of adjacent macroblocks in the frame from the video frame sequence, the predefined number of adjacent macroblocks being based upon an available processing power of an encoding system.

14. The CPP of claim 9 , wherein the predefined threshold value is determined according to a heuristic test.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER TO 09/05/2018 PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0133. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047630/0456 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0133 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2005
From: DREZNER, DAVID; ULANOVSKY, ALEXANDER
To: BROADCOM CORPORATION
Reel/Frame 016840/0197 →