Systems and methods of detecting and correcting redeye in an image suitable for embedded applications
First Claim
1. A method of processing an input image, comprising:
- sub-sampling the input image to generate a thumbnail image comprising a reduced-size version of the input image in its entirety;
detecting redeye pixel areas in the thumbnail image, wherein detecting redeye pixel areas comprises determining measures of pixel redness in the thumbnail image, and identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures;
correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image; and
producing an output image from the corrected version of the input image.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods of detecting and correcting redeye in an image are described. In one aspect, the input image is sub-sampled to generate a thumbnail image, redeye pixel areas are detected in the thumbnail image. In another aspect, an input image having lines of pixels with original color values is processed. One or more redeye pixel areas corresponding to respective areas in the input image are detected. Each pixel in the input image corresponding to the detected redeye pixel areas is classified as a redeye pixel or a non-redeye pixel on a line-by-line basis without reference to pixels in adjacent lines. The original color values of pixels in the input image classified as redeye pixels are corrected.
-
Citations
64 Claims
-
1. A method of processing an input image, comprising:
-
sub-sampling the input image to generate a thumbnail image comprising a reduced-size version of the input image in its entirety; detecting redeye pixel areas in the thumbnail image, wherein detecting redeye pixel areas comprises determining measures of pixel redness in the thumbnail image, and identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures; correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image; and producing an output image from the corrected version of the input image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
8. A method of processing an input image, comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image, wherein detecting redeye pixel areas comprises determining measures of pixel redness in the thumbnail image, and identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures, wherein identifying the first set of candidate redeye pixel areas comprises enlarging a given candidate redeye pixel area having a dimension below a threshold size to generate an enlarged pixel area; correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image; and producing an output image from the corrected version of the input image. - View Dependent Claims (9)
-
-
29. A method of processing an input image, comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image, wherein detecting redeye pixel areas comprises determining measures of pixel redness in the thumbnail image, identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures, pairing candidate redeye pixel areas in the first set, wherein pairing candidate redeye pixel areas comprises comparing a candidate texture pattern determined for a candidate pair of candidate redeye pixel areas in the first set with a reference texture pattern, wherein comparing the candidate texture pattern with the reference texture pattern comprises generating a feature vector representative of the candidate texture pattern and comparing the generated feature vector with a statistical model of the reference texture pattern, and filtering unpaired candidate redeye pixels areas from the first set; correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image; and producing an output image from the connected version of the input image. - View Dependent Claims (30, 31, 32, 33)
-
-
34. A method of processing an input image, comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image; correcting redeye in a version of the input image based on redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image, wherein correcting redeye comprises identifying discrete redeye pixel areas separated from eyelid regions; and producing an output image from the corrected version of the input image. - View Dependent Claims (35, 36, 37)
-
-
38. A method of processing an input image, comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image; correcting redeye in a version of the input image based on redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image, wherein correcting redeye comprises classifying pixels between concentric inner and outer bounding regions based on a grayscale threshold; and producing an output image from the corrected version of the input image. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. A method of processing an input image having lines of pixels with original color values, comprising:
-
detecting one or more redeye pixel areas corresponding to respective areas in the input image; in a version of the input image, classifying each pixel corresponding to the detected redeye pixel areas as a redeye pixel or a non-redeye pixel on a line-by-line basis without reference to pixels in adjacent lines; correcting the original color values of pixels classified as redeye pixels in the version of the input image to produce a corrected version of the input image; and producing an output image from tire corrected version of the input image. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55)
-
-
56. A system for processing an input image, comprising computing hardware operable to perform operations comprising:
-
sub-sampling the input image to generate a thumbnail image comprising reduced-size versions of all regions of the input image; detecting redeye pixel areas in the thumbnail image, wherein in the detecting the computing hardware is operable to perform operations comprising determining measures of pixel redness in the thumbnail image, and identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures; correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image. - View Dependent Claims (57, 58, 59, 60)
-
-
61. A system for processing an input image, comprising computing hardware operable to perform operations comprising
sub-sampling the input image to generate a thumbnail image; -
detecting redeye pixel areas in the thumbnail image, wherein in the detecting the computing hardware is operable to perform operations comprising determining measures of pixel redness in the thumbnail image, identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures, and enlarging a given candidate redeye pixel area having a dimension below a threshold size to generate an enlarged pixel area; and correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image.
-
-
62. A system for processing an input image, comprising computing hardware operable to perform operations comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image, wherein in the detecting the computing hardware is operable to perform operations comprising determining measures of pixel redness in the thumbnail image, identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures, and filtering from the first set each candidate redeye pixel area located in an area of the digital image having a determined grayscale contrast relative to at least one respective neighboring pixel area less than a prescribed grayscale contrast threshold; correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image.
-
-
63. A system for processing an input image, comprising computing hardware operable to perform operations comprising:
-
sub-sampling the input image to generate a thumbnail image; detecting redeye pixel areas in the thumbnail image, wherein in the detecting the computing hardware is operable to perform operations comprising determining measures of pixel redness in the thumbnail image, identifying a first set of candidate redeye pixel areas based on the determined pixel redness measures, identifying a pixel boundary of a pixel region surrounding a given candidate redeye pixel area; classifying pixels within the pixel boundary as red pixels and non-red pixels by applying a threshold to the determined pixel redness measures, and filtering the given candidate redeye pixel area from the first set when a set of contiguous red pixels extends from the given candidate redeye pixel area to the pixel boundary; and correcting redeye in a version of the input image based on the redeye pixel areas detected in the thumbnail image to produce a corrected version of the input image.
-
-
64. A system for processing an input image having lines of pixels with original color values, comprising computing hardware operable to perform operations comprising:
-
detecting one or more redeye pixel areas corresponding to respective areas in the input image; classifying each pixel in the input image corresponding to the detected redeye pixel areas as a redeye pixel or a non-redeye pixel on a line-by-line basis without reference to pixels in adjacent lines; and correcting the original color values of pixels in the input image classified as redeye pixels to produce a corrected version of the input image.
-
Specification