Method and apparatus for the removal of flash artifacts
First Claim
1. A method for removing flash artifacts comprising the steps of:
- a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating a difference image of said first and second digital images;
d) applying a threshold to said difference image to create an artifact image; and
e) subtracting said artifact image from said second digital image, resulting in a final digital image.
3 Assignments
0 Petitions
Accused Products
Abstract
An image without use of a flash is taken, along with an image using a flash. A difference image is generated by subtracting the flash-less image from the flash image. A threshold is applied to the difference image such that only large differences in intensity remain in the difference image. This artifact image is then subtracted from the flash image, thereby removing flash artifacts such as specular reflections and red-eye. The threshold used may be automatically calculated or may be set by the user. For some applications it may be desirable to set separate thresholds for each dimension of the color space (such as red, green, and blue) used. Once again these separate thresholds may be automatically calculated or may be set by the user.
-
Citations
91 Claims
-
1. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating a difference image of said first and second digital images;
d) applying a threshold to said difference image to create an artifact image; and
e) subtracting said artifact image from said second digital image, resulting in a final digital image. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating at least three difference images of said first and second digital images, including a red difference image, a green difference image, and a blue difference image;
d) applying a red threshold, a green threshold, and a blue threshold to said red, green, and blue difference images to create at least three artifact images, including a red artifact image, a green artifact image, and a blue artifact image; and
e) subtracting said red, green, and blue artifact images from said second digital image, resulting in a final digital image. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 23)
-
-
17. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating at least three difference images of said first and second digital images, including a yellow difference image, a cyan difference image, and a magenta difference image;
d) applying a yellow threshold, a cyan threshold, and a magenta threshold to said yellow, cyan, and magenta difference images to create at least three artifact images, including a yellow artifact image, a cyan artifact image, and a magenta artifact image; and
e) subtracting said yellow, cyan, and magenta artifact images from said second digital image, resulting in a final digital image. - View Dependent Claims (18, 19, 20, 21, 22, 24, 25)
-
-
26. A device for removing flash artifacts comprising:
-
a first subtract block with inputs comprising flash-less digital image data and flash digital image data, wherein said flash-less digital image data is subtracted from said flash digital image data producing difference data;
a threshold block connected to said first subtract block, that determines a threshold from said difference data;
a clipping block connected to said threshold block, that receives said difference data and said threshold and outputs artifact data, wherein said artifact data contains said difference data for said pixels with a value greater than said threshold; and
a second subtract block connected to said clipping block, wherein said second subtract block subtracts said artifact data from said flash digital image data, resulting in a final digital image. - View Dependent Claims (27, 28, 29)
-
-
30. A device for removing flash artifacts comprising:
-
a first subtract block with inputs comprising flash-less digital image data and flash digital image data, wherein said flash-less digital image data is subtracted from said flash digital image data producing difference data;
a threshold block connected to said first subtract block, that determines a threshold from said difference data;
a clipping block connected to said threshold block, that receives said difference data and said threshold and outputs artifact data, wherein said artifact data contains said difference data for said pixels with a value greater than said threshold;
a factor block connected to said clipping block that modifies said artifact data by a factor and outputs factored artifact data; and
a second subtract block connected to said factor block, wherein said second subtract block subtracts said factored artifact data from said flash digital image data, resulting in a final digital image. - View Dependent Claims (31, 32, 33, 34, 35)
-
-
36. A device for removing flash artifacts comprising:
-
a first subtract block with inputs comprising flash-less digital image data and flash digital image data, wherein said flash-less digital image data is subtracted from said flash digital image data producing difference data;
a threshold block connected to said first subtract block, that determines a threshold from said difference data;
a clipping block connected to said threshold block, that receives said difference data and said threshold and outputs artifact data, wherein said artifact data contains said difference data for said pixels with a value greater than or equal to said threshold; and
a second subtract block connected to said clipping block, wherein said second subtract block subtracts said artifact data from said flash digital image data, resulting in a final digital image. - View Dependent Claims (37, 38, 39)
-
-
40. A device for removing flash artifacts comprising:
-
a first subtract block with inputs comprising flash-less digital image data and flash digital image data, wherein said flash-less digital image data is subtracted from said flash digital image data producing difference data;
a threshold block connected to said first subtract block, that determines a threshold from said difference data;
a clipping block connected to said threshold block, that receives said difference data and said threshold and outputs artifact data, wherein said artifact data contains said difference data for said pixels with a value greater than or equal to said threshold;
a factor block connected to said clipping block that modifies said artifact data by a factor and outputs factored artifact data; and
a second subtract block connected to said factor block, wherein said second subtract block subtracts said factored artifact data from said flash digital image data, resulting in a final digital image. - View Dependent Claims (41, 42, 43, 44, 45)
-
-
46. A device for removing flash artifacts comprising:
-
at least three first primary color subtraction blocks that subtract at least three primary color flash-less digital image data from at least three primary color flash digital image data producing at least three primary color difference data, wherein a first primary color subtraction block subtracts a first primary color flash-less digital image data from a first primary color flash digital image data producing a first primary color difference data, and a second primary color subtraction block subtracts a second primary color flash-less digital image data from a second primary color flash digital image data producing a second primary color difference data, and a third primary color subtraction block subtracts a third primary color flash-less digital image data from a third primary color flash digital image data producing a third primary color difference data;
at least three primary color threshold blocks connected to said at least three primary color subtraction blocks, that determine at least three primary color thresholds from said at least three primary color difference data, wherein a first primary color threshold block connected to said first primary color subtraction block determines a first primary color threshold from said first primary color difference data, and a second primary color threshold block connected to said second primary color subtraction block determines a second primary color threshold from said second primary color difference data, and a third primary color threshold block connected to said third primary color subtraction block determines a third primary color threshold from said third primary color difference data;
at least three clipping blocks connected to said at least three threshold blocks, that receive said difference data and said threshold and output at least three primary color artifact data, wherein said primary color artifact data contains said difference data for said pixels with a primary color value greater than said primary color thresholds, also wherein a first clipping block is connected to said first threshold block and receives said first difference data and said first threshold and outputs a first primary color artifact data, and a second clipping block is connected to said second threshold block and receives said second difference data and said second threshold and outputs a second primary color artifact data, and a third clipping block is connected to said third threshold block and receives said third difference data and said third threshold and outputs a third primary color artifact data;
a merge block connected to said clipping blocks, that merges said at least three primary color artifact data into full-color artifact data; and
a second subtract block connected to said merge block, that subtracts said artifact data from said flash digital image data, resulting in a final digital image. - View Dependent Claims (47, 48)
-
-
49. A device for removing flash artifacts comprising:
-
at least three first primary color subtraction blocks that subtract at least three primary color flash-less digital image data from at least three primary color flash digital image data producing at least three primary color difference data, wherein a first primary color subtraction block subtracts a first primary color flash-less digital image data from a first primary color flash digital image data producing a first primary color difference data, and a second primary color subtraction block subtracts a second primary color flash-less digital image data from a second primary color flash digital image data producing a second primary color difference data, and a third primary color subtraction block subtracts a third primary color flash-less digital image data from a third primary color flash digital image data producing a third primary color difference data;
at least three primary color threshold blocks connected to said at least three primary color subtraction blocks, that determine at least three primary color thresholds from said at least three primary color difference data, wherein a first primary color threshold block connected to said first primary color subtraction block determines a first primary color threshold from said first primary color difference data, and a second primary color threshold block connected to said second primary color subtraction block determines a second primary color threshold from said second primary color difference data, and a third primary color threshold block connected to said third primary color subtraction block determines a third primary color threshold from said third primary color difference data;
at least three clipping blocks connected to said at least three threshold blocks, that receive said difference data and said threshold and output at least three primary color artifact data, wherein said primary color artifact data contains said difference data for said pixels with a primary color value greater than said primary color thresholds, also wherein a first clipping block is connected to said first threshold block and receives said first difference data and said first threshold and outputs a first primary color artifact data, and a second clipping block is connected to said second threshold block and receives said second difference data and said second threshold and outputs a second primary color artifact data, and a third clipping block is connected to said third threshold block and receives said third difference data and said third threshold and outputs a third primary color artifact data;
at least three second subtract blocks connected to said clipping block, that subtract said artifact data from said flash digital image data producing at least three primary color final image data; and
a merge block connected to said second subtract blocks, that merges said at least three primary color final image data into full-color final digital image data. - View Dependent Claims (50, 51)
-
-
52. A computer program storage medium readable by a computer, tangibly embodying a computer program of instructions executable by the computer to perform method steps for removing flash artifacts from digital image data, the steps comprising:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating a difference image of said first and second digital images;
d) applying a threshold to said difference image to create an artifact image; and
e) subtracting said artifact image from said second digital image, resulting in a final digital image. - View Dependent Claims (53, 54, 55, 56, 58, 59, 60, 61)
-
-
57. A computer program storage medium readable by a computer, tangibly embodying a computer program of instructions executable by the computer to perform method steps for removing flash artifacts from digital image data, the steps comprising:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating at least three difference images of said first and second digital images, including a red difference image, a green difference image, and a blue difference image;
d) applying a red threshold, a green threshold, and a blue threshold to said red, green and blue difference images to create at least three artifact images, including a red artifact image, a green artifact image, and a blue artifact image; and
e) subtracting said artifact image from said second digital image, resulting in a final digital image.
-
-
62. A computer program storage medium readable by a computer, tangibly embodying a computer program of instructions executable by the computer to perform method steps for removing flash artifacts from digital image data, the steps comprising:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) creating at least three difference images of said first and second digital images, including a yellow difference image, a cyan difference image, and a magenta difference image;
d) applying a yellow threshold, a cyan threshold, and a magenta threshold to said yellow difference image, cyan difference image, and magenta difference image to create at least three artifact images including a yellow artifact image, a cyan artifact image, and a magenta artifact image; and
e) subtracting said artifact images from said second digital image, resulting in a final digital image. - View Dependent Claims (63, 64, 65)
-
-
66. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting an intensity threshold; and
d) for each pixel to be processed performing the sub-steps of;
i) subtracting intensity of current pixel in said first digital image from intensity of current pixel in said second digital image resulting in a pixel difference; and
ii) replacing current pixel in said second digital image with current pixel from said first digital image when said pixel difference is greater than said intensity threshold. - View Dependent Claims (67, 68, 70, 71)
-
-
69. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting an intensity threshold; and
d) for each pixel to be processed performing the sub-steps of;
i) subtracting intensity of current pixel in said first digital image from intensity of current pixel in said second digital image resulting in a pixel difference; and
ii) replacing current pixel in said second digital image with current pixel from said first digital image when said pixel difference is greater than or equal to said intensity threshold.
-
-
72. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting at least three primary color thresholds; and
d) for each primary color of each pixel to be processed performing the sub-steps of;
i) subtracting primary color value of current pixel in said first digital image from primary color value of current pixel in said second digital image resulting in a primary color pixel difference for the current primary color of the current pixel; and
ii) replacing primary color value of current pixel in said second digital image with primary color value of current pixel from said first digital image when said primary color pixel difference for the current primary color of the current pixel is greater than said primary color threshold for said current primary color. - View Dependent Claims (73, 74, 75, 76)
-
-
77. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting at least three primary color thresholds; and
d) for each primary color of each pixel to be processed performing the sub-steps of;
i) subtracting primary color value of current pixel in said first digital image from primary color value of current pixel in said second digital image resulting in a primary color pixel difference for the current primary color of the current pixel; and
ii) replacing primary color value of current pixel in said second digital image with primary color value of current pixel from said first digital image when said primary color pixel difference for the current primary color of the current pixel is greater than or equal to said primary color threshold for said current primary color. - View Dependent Claims (78, 79, 80, 81)
-
-
82. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting at least three primary color thresholds; and
d) for each primary color of each pixel to be processed performing the sub-steps of;
i) subtracting primary color value of current pixel in said first digital image from primary color value of current pixel in said second digital image resulting in a primary color pixel difference for the current primary color of the current pixel; and
ii) replacing primary color value of current pixel in said second digital image with a color value calculated from said primary color value of current pixel in said first digital image, and said primary color value of current pixel in said second digital image, when said primary color pixel difference for the current primary color of the current pixel is greater than said primary color threshold for said current primary color. - View Dependent Claims (83, 84, 85, 86)
-
-
87. A method for removing flash artifacts comprising the steps of:
-
a) capturing a first digital image of a subject;
b) capturing a second digital image of said subject with the use of a flash;
c) selecting at least three primary color thresholds; and
d) for each primary color of each pixel to be processed performing the sub-steps of;
i) subtracting primary color value of current pixel in said first digital image from primary color value of current pixel in said second digital image resulting in a primary color pixel difference for the current primary color of the current pixel; and
ii) replacing primary color value of current pixel in said second digital image with a color value calculated from said primary color value of current pixel in said first digital image, and said primary color value of current pixel in said second digital image, when said primary color pixel difference for the current primary color of the current pixel is greater than or equal to said primary color threshold for said current primary color. - View Dependent Claims (88, 89, 90, 91)
-
Specification