IP Library Granted Patent US 8,731,282
Granted Patent B1
US 8,731,282 · App. 13/797,829 · Granted May 20, 2014

Systems and methods for region of interest background smoothing and compression enhancement

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,731,282
App. No.
13/797,829
Granted
May 20, 2014
Kind
B1
Abstract

Systems and methods for region of interest background smoothing & compression enhancement in accordance with embodiments of the invention are disclosed. In one embodiment, preprocessing video with a smoothing filter includes identifying a region of interest in a frame of video, determining an importance value for the region of interest, when the importance value satisfies a criterion, applying an intra frame smoothing filter to pixels within the region of interest, which includes dividing the specified region of interest into pairs of pixel groupings, where the pixel groupings in each pair are the same size and are adjacent to each other, calculating the difference between the average luminance of the pixels within each pixel grouping, when the calculated difference is less than a predetermined amount: calculating the average luminance for all pixels in the pixel groupings, and assigning the calculated average luminance to all pixels within the pixel groupings.

Claims (86)

1. A method of preprocessing video with a smoothing filter, the method comprising:

identifying a first region of interest in a first frame of video using a source encoder;

determining an importance value for the identified first region of interest using the source encoder;

when the importance value for the identified first region of interest satisfies a predetermined criterion, applying an intra frame smoothing filter to pixels within the region of interest using the source encoder;

wherein applying an intra frame smoothing filter to pixels within a specified region of interest, comprises:

dividing the specified region of interest into pairs of pixel groupings, where the pixel groupings in each pair are the same size and are adjacent to each other;

calculating the difference between the average luminance component value of the pixels within each pixel grouping in a pair of pixel groupings;

when the calculated difference is less than a predetermined amount:

calculating the average luminance component value for all pixels in the pair of pixel groupings; and

assigning the calculated average luminance component value to all pixels within the pixel groupings that form the pair of pixel groupings.

2. The method of claim 1 , wherein applying an intra frame smoothing filter to pixels within a specified region of interest, further comprises:

calculating the difference between the average of a chrominance component value of the pixels within each pixel grouping in a pair of pixel groupings;

when the calculated difference with respect to the chrominance component value is less than a predetermined amount:

calculating the average chrominance component value for all pixels in the pair of pixel groupings; and

assigning the calculated average chrominance component value to all pixels within the pixel groupings that form the pair of pixel groupings.

3. The method of claim 1 , wherein an intra frame smoothing filter is applied to pixels within a region of interest when the importance value of the region of interest is below a predetermined importance threshold.

4. The method of claim 3 , wherein the size of the pixel groupings utilized by the smoothing filter depend upon the importance value of the specific region of interest to which the smoothing filter is applied.

5. The method of claim 4 , further comprising:

identifying a second region of interest in the frame of video using the source encoder, where the second region of interest is more important than the first region of interest;

determining an importance value of the second region of interest using the source encoder, where the determined importance value is higher than the importance value determined for the first region of interest;

when the importance value for the identified second region of interest is below a predetermined importance threshold, applying a smoothing filter to pixels within the region of interest using the source encoder;

wherein the pixel groupings of the smoothing filter applied to the second region of interest are smaller than the pixel groups of the smoothing filter applied to the first region of interest.

6. The method of claim 1 , wherein:

when the importance value for the identified first region of interest satisfies a predetermined criterion, applying an inter frame smoothing filter to pixels within the region of interest using the source encoder;

wherein applying an inter frame smoothing filter to pixels within a specified region of interest, comprises:

dividing the specified region of interest into pixel groupings;

identifying pixel groupings in a second frame of video, where the pixel groupings in the second frame of video correspond to the pixel groupings in the specified region of interest in the first video frame;

calculating the difference between the average luminance component value of each pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video;

when the calculated difference for a given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video is less than a predetermined amount:

calculating the average luminance component value for the pixels within the given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video; and

assigning the calculated average luminance component value to all pixels within the given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video.

7. The method of claim 6 , wherein applying an inter frame smoothing filter to pixels within a specified region of interest, further comprises:

calculating the difference between the average of a chrominance component value of the pixels within each pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video;

when the calculated difference for the average chrominance component value of a given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video is less than a predetermined amount:

calculating the average chrominance component value for the pixels within the given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video; and

assigning the calculated average chrominance component value to all pixels within the given pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video.

8. The method of claim 1 , wherein:

the first video frame is encoded using macroblocks; and

dividing the region of interest into pairs of pixel groupings further comprises selecting pixel groupings corresponding to at least one macroblock.

9. A source encoder, comprising:

memory containing a source encoder application; and

a processor, wherein the source encoder application configures the processor to:

identify a first region of interest in a first frame of video;

determine an importance value for an identified region of interest;

when the importance value for the identified first region of interest satisfies a predetermined criterion, apply an intra frame smoothing filter to pixels within the region of interest;

wherein applying an intra frame smoothing filter to pixels within a specified region of interest, comprises the encoder application configuring the processor to:

divide the specified region of interest into pairs of pixel groupings, where the pixel groupings in each pair are the same size and are adjacent to each other;

calculate the difference between the average luminance component value of the pixels within each pixel grouping in a pair of pixel groupings;

when the calculated difference is less than a predetermined amount:

calculate the average luminance component value for all pixels in the pair of pixel groupings; and

assign the calculated average luminance component value to all pixels within the pixel groupings that form the pair of pixel groupings.

10. The source encoder of claim 9 , wherein applying an intra frame smoothing filter to pixels within a specified region of interest, further comprises the source encoder application configuring the processor to:

calculate the difference between the average of a chrominance component value of pixels within each pixel grouping in a pair of pixel groupings;

when the calculated difference with respect to the chrominance component value is less than a predetermined amount:

calculating the average chrominance component value for all pixels in the pair of pixel groupings; and

assigning the calculated average chrominance component value to all pixels within the pixel groupings that form the pair of pixel groupings.

11. The source encoder of claim 9 , wherein the source encoder application configures the processor such that an intra frame smoothing filter is applied to pixels within a region of interest when the importance value of the region of interest is below a predetermined importance threshold.

12. The source encoder of claim 11 , wherein dividing the region of interest into pairs of pixel groupings further comprises the source encoder application configuring the processor to select the number of pixels within the pixel groupings based upon the importance value of the region of interest.

13. The source encoder of claim 12 , wherein the source encoder application configures the processor such that the size of the pixel groupings utilized by the smoothing filter depend upon the importance value of the specific region of interest to which the smoothing filter is applied.

14. The source encoder of claim 9 , wherein:

when the importance value for the identified first region of interest satisfies a predetermined criteria, the source encoder application configures the processor to apply an inter frame smoothing filter to pixels within the region of interest using the source encoder;

wherein applying an inter frame smoothing filter to pixels within a specified region of interest, comprises the source encoder application configuring the processor to:

divide the specified region of interest into pixel groupings, where each pixel grouping is the same size;

identify pixel groupings in a second frame of video, where the pixel groupings in the second frame of video correspond to the pixel groupings in the specified region of interest;

calculate the difference between the average luminance component value of each pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video;

when the calculated difference for a given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video is less than a predetermined amount, the source encoder application configures the processor to:

calculate the average luminance component value for the pixels within the given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video; and

assign the calculated average luminance component value to all pixels within the given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video.

15. The source encoder of claim 14 , wherein applying an inter frame smoothing filter to pixels within a specified region of interest, further comprises the source encoder application configuring the processor to:

calculate the difference between the average of a chrominance component value of pixels within each pixel grouping within the specified region of interest within the first frame of video and the corresponding pixel group within the second frame of video;

when the calculated difference for the average chrominance component value of a given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video is less than a predetermined amount, the source encoder application configures the processor to:

calculate the average chrominance component value for the pixels within the given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video; and

assign the calculated average chrominance component value to all pixels within the given pixel grouping within the specified region of interest and the corresponding pixel group within the second frame of video.

16. The source encoder of claim 9 , wherein:

the video frame is encoded using macroblocks; and

dividing the region of interest into pairs of pixel groupings further comprises selecting pixel groupings corresponding to at least one macroblock.

17. A non-transitory machine readable medium containing processor instructions, where execution of the instructions by a processor causes the processor to perform a process comprising:

identifying a first region of interest in a first frame of video;

determining an importance value for the identified first region of interest;

when the importance value for the identified first region of interest satisfies a predetermined criterion, applying an intra frame smoothing filter to pixels within the region of interest;

wherein applying an intra frame smoothing filter to pixels within a specified region of interest, comprises:

dividing the specified region of interest into pairs of pixel groupings, where the pixel groupings in each pair are the same size and are adjacent to each other;

calculating the difference between the average luminance component value of the pixels within each pixel grouping in a pair of pixel groupings;

when the calculated difference is less than a predetermined amount:

calculating the average luminance component value for all pixels in the pair of pixel groupings; and

assigning the calculated average luminance component value to all pixels within the pixel groupings that form the pair of pixel groupings.

Assignments (6)
CHANGE OF PRINCIPAL PLACE OF BUSINESS Recorded Mar 5, 2019
From: DIVX, LLC
To: DIVX, LLC
Reel/Frame 050407/0104 →
CHANGE OF NAME Recorded Mar 5, 2018
From: DIVX CF HOLDINGS LLC
To: DIVX, LLC
Reel/Frame 045498/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2018
From: SONIC IP, INC.; DIVX, LLC
To: DIVX CF HOLDINGS LLC
Reel/Frame 045310/0020 →
RELEASE OF SECURITY INTEREST Recorded Apr 9, 2014
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DIVX, LLC
Reel/Frame 032645/0559 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 22, 2013
From: DIVX, LLC
To: SONIC IP, INC.
Reel/Frame 031713/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2013
From: SCHINK, MARTIN
To: DIVX, LLC
Reel/Frame 031303/0604 →