Skin Tone and Feature Detection for Video Conferencing Compression
First Claim
1. A processor programmed to perform a video compression method, the method comprising:
- receiving video data at the processor, the video data having a frame with a plurality of regions, each of the regions having a plurality of pixels;
determining with the processor any first pixels in each region having a predetermined tone;
determining with the processor any second pixels in each region that are part of at least one feature;
scoring with the processor each of the regions of the video frame based on the determination of any first and second pixels in the region; and
compressing with the processor the regions of the video frame based on the scoring.
1 Assignment
0 Petitions
Accused Products
Abstract
In many videoconferencing applications, bandwidth is at a premium, and thus, it is important to encode a given video frame intelligently. It is often desirable that a larger amount of information be spent encoding the more important parts of the video frame, e.g., human facial features, whereas the less important parts of the video frame can be compressed at higher rates. Thus, there is need for an apparatus, computer readable medium, processor, and method for intelligent skin tone and facial feature aware videoconferencing compression that can “suggest” intelligent macroblock compression ratios to a video encoder. The suggestion of compression rates can be based at least in part on a determination of which macroblocks in a given video frame are likely to contain skin tones, likely to contain features (e.g., edges), likely to contain features in or near skin tone regions, or likely to contain neither skin tones nor features.
-
Citations
25 Claims
-
1. A processor programmed to perform a video compression method, the method comprising:
-
receiving video data at the processor, the video data having a frame with a plurality of regions, each of the regions having a plurality of pixels; determining with the processor any first pixels in each region having a predetermined tone; determining with the processor any second pixels in each region that are part of at least one feature; scoring with the processor each of the regions of the video frame based on the determination of any first and second pixels in the region; and compressing with the processor the regions of the video frame based on the scoring. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 25)
-
-
17. A video compression method, comprising:
-
receiving video data, the video data having a frame with a plurality of regions, each of the regions having a plurality of pixels; determining any first pixels in each region having a color value within a predetermined tone region; determining any second pixels in each region that are part of at least one feature; for each pixel in each region; assigning the pixel a first value if the pixel is a first pixel but not a second pixel; assigning the pixel a second value if the pixel is a second pixel but not a first pixel; assigning the pixel a third value if the pixel is neither a first pixel nor a second pixel; and assigning the pixel a fourth value if the pixel is both a second pixel and either a first pixel or within a threshold distance of a first pixel; scoring each of the regions of the video frame based on the average assigned value of the pixels in the region; and compressing each of the regions of the video frame based on the region'"'"'s score. - View Dependent Claims (18, 19)
-
-
20. A video compression method, comprising:
-
receiving video data, the video data having a frame with a plurality of regions, each of the regions having a plurality of pixels; determining any first pixels in each region having a color value within a predetermined tone region; determining any second pixels in each region that are part of at least one feature; scoring each of the regions based on the determination of any first and second pixels in the region; correcting the score for each region having a score that differs from the score of one or more neighboring regions by more than a threshold value to be equal to the average score of the neighboring regions; and compressing each of the regions of the video frame based on the region'"'"'s score. - View Dependent Claims (21, 22)
-
-
23. An apparatus, comprising:
-
an image sensor for obtaining video data; memory operatively coupled to the image sensor; and a processor operatively coupled to the memory and the image sensor and programmed to encode the video data, the processor configured to; receive video data, the video data having a frame with a plurality of regions, each of the regions having a plurality of pixels; determine any first pixels in each region having a predetermined tone; determine any second pixels in each region that are part of at least one feature; score each of the regions of the video frame based at least in part on the determination of any first and second pixels in the region; and compress the regions of the video frame based at least in part on the scoring. - View Dependent Claims (24)
-
Specification