1. A method for correcting image data for a captured image for lens shading artifacts, the method comprising:
determining a plurality of one dimensional correction curves that can be applied to the image data to correct for lens shading artifacts therein; and
correcting the image data for lens shading artifacts based on the one dimensional curves.
2. The method of claim 1, wherein determining the plurality of one dimensional correction curves comprises determining a first set of correction curves comprising correction curves for each y coordinate in the image data; and determining a second set of correction curves comprising correction curves for each x coordinate in the image data.
3. The method of claim 2, wherein determining the first set of correction curves comprises determining an exact correction curve Lyi(x) for a y coordinate y=y0; and for each y coordinate yi\u2260y0 determining an approximated correction curve Lyi(x) based on the exact correction curve.
4. The method of claim 3, wherein determining an approximated correction curve Lyi(x) based on the exact correction curve comprises selecting at least two segments in the exact correction curve; and determining scaling parameters to morph each segment into a corresponding segment in the approximated curve.
5. The method of claim 4, further comprising storing scaling parameters for a top and a bottom row in the image data and determining the scaling parameters for the intermediate rows by interpolation.
6. The method of claim 2, wherein determining the second set of correction curves comprises determining an exact correction curve LXi(y) for an x coordinate x=x0; and for each x coordinate xi\u2260x0 determining an approximated correction curve Lxi(y) based on the exact correction curve.
7. The method of claim 6, wherein determining an approximated correction curve Lxi(y) based on the exact correction curve comprises selecting at least two segments in the exact correction curve; and determining scaling parameters to morph each segment into a corresponding segment in the approximated curve.
8. The method of claim 7, further comprising storing scaling parameters for a leftmost and a rightmost column in the image data and determining the scaling parameters for the intermediate columns by interpolation.
9. The method of claim 3, wherein the coordinate y=y0 runs through a brightest spot in the image data.
10. The method of claim 6, wherein the coordinate x=x0 runs through a brightest spot in the image data.
11. An image processor, comprising:
an image buffer to store image data for a captured image; and
lens shading correction logic to perform a method for correcting image data for lens shading artifacts, the method comprising:
determining a plurality of one dimensional correction curves that can be applied to the image data to correct for lens shading artifacts therein; and
correcting the image data for lens shading artifacts based on the one dimensional curves.
12. The image processor of claim 11, wherein the plurality of one dimensional correction curves is determined by determining a first set of correction curves comprising correction curves for each y coordinate in the image data; and determining a second set of correction curves comprising correction curves for each x coordinate in the image data.
13. The image processor of claim 12, wherein determining the first set of correction curves comprises determining an exact correction curve Lyi(x) for a y coordinate y=y0; and for each y coordinate yi\u2260y0 determining an approximated correction curve Lyi(x) based on the exact correction curve.
14. The image processor of claim 13, wherein determining an approximated correction curve Lyi(x) based on the exact correction curve comprises selecting at least two segments in the exact correction curve; and determining scaling parameters to morph each segment into a corresponding segment in the approximated curve.
15. The image processor of claim 14, the method for correcting the image data further comprises storing scaling parameters for a top and a bottom row in the image data and determining the scaling parameters for the intermediate rows by interpolation.
16. A camera system, comprising:
camera optics;
an image sensor positioned so that light passing through the camera optics impinges on the image sensor; and
an image processor coupled to the image sensor to receive image data for a captured image therefrom, wherein the image processor comprises lens shading correction logic to perform a method for correcting the image data for lens shading artifacts, the method comprising:
determining a plurality of one dimensional correction curves that can be applied to the image data to correct for lens shading artifacts therein; and
correcting the image data for lens shading artifacts based on the one dimensional curves.
17. The camera system of claim 16, wherein determining the plurality of one dimensional correction curves comprises determining a first set of correction curves comprising correction curves for each y coordinate in the image data; and determining a second set of correction curves comprising correction curves for each x coordinate in the image data.
18. The camera system of claim 17, wherein determining the first set of correction curves comprises determining an exact correction curve Lyi(x) for a y coordinate y=y0; and for each y coordinate yi\u2260y0 determining an approximated correction curve Lyi(x) based on the exact correction curve.
19. The camera system of claim 18, wherein determining an approximated correction curve Lyi(x) based on the exact correction curve comprises selecting at least two segments in the exact correction curve; and determining scaling parameters to morph each segment into a corresponding segment in the approximated curve.
20. The camera system of claim 19, wherein the method for correcting the image data further comprises storing scaling parameters for a top and a bottom row in the image data and determining the scaling parameters for the intermediate rows by interpolation.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method implemented by a computer system, the method for detecting digital image compositing, said method comprising the steps of:
finding an uncompressed digital image as a portion of a larger digital image having a higher likelihood of exhibiting forgery as compared to other portions of the larger digital image, the portion being found using a region-of-interest detector;
detecting a first artifact in the uncompressed digital image, said first artifact being characteristic of an earlier compression of said uncompressed digital image with a predetermined compression algorithm;
evaluating an interpolation marker in said uncompressed digital image to provide interpolation results;
during said evaluating, counteracting a second artifact of said compression algorithm;
classifying said larger digital image responsive to said interpolation results; and
storing results of the classifying in a computer-readable memory device.
2. The method of claim 1 wherein said second artifact and said interpolation marker are different periodicities in said image.
3. The method of claim 2 wherein said first artifact is a blocking artifact.
4. The method of claim 1 wherein said first artifact is a blocking artifact.
5. The method of claim 1 wherein said method further comprises decompressing said portion of the larger digital image to generate the uncompressed digital image.
6. The method of claim 1 wherein said region of interest detector is selected from the group consisting of: face detectors, main subject detectors, skin region detectors, sky detectors, other object detectors, and combinations of two of more of said detectors of said group.
7. The method of claim 1 further comprising repeating said finding, detecting, evaluating, and counteracting steps with an additional digital image.
8. The method of claim 7 wherein said uncompressed digital image and said additional digital image are each different parts of the larger digital image; and wherein said classifying further comprises classifying said larger digital image responsive to said interpolation results.
9. The method of claim 8 further comprising accepting user input designating at least said uncompressed digital image or said additional digital image.
10. The method of claim 7 wherein said uncompressed digital image and said additional digital image are each a frame, or a portion of a frame, of a video sequence.
11. The method of claim 1 wherein said evaluating further comprises:
generating a one-dimensional periodicity signal from the uncompressed digital image;
computing a Discrete Fourier Transform of said periodicity signal; and
detecting a first set of peaks in the said Discrete Fourier transform; and
wherein said counteracting further comprises excluding from said detecting a second set of peaks in said Discrete Fourier Transform.
12. A computer program product for detecting digital image compositing, the computer program product comprising computer readable storage medium having a computer program stored thereon for performing the steps of claim 1.
13. A system for detecting digital image compositing, said method comprising the steps of:
means for finding an uncompressed digital image as a portion of a larger digital image having a higher likelihood of exhibiting forgery as compared to other portions of the larger digital image;
means for detecting a first artifact in said uncompressed digital image, said first artifact being characteristic of an earlier compression of said uncompressed digital image with a predetermined compression algorithm;
means for evaluating an interpolation marker in said uncompressed digital image to provide interpolation results;
means for counteracting a second artifact of said compression algorithm during said evaluating; and
means for classifying said larger digital image responsive to said interpolation results.
14. A method implemented by a computer system, the method for detecting digital image compositing, said method comprising the steps of:
detecting the presence of a first artifact in said an uncompressed digital image, said first artifact being characteristic of an earlier compression of said digital image with a predetermined compression algorithm;
finding a plurality of different regions of said uncompressed digital image, at least one of the plurality of different regions having a higher likelihood of exhibiting forgery as compared to another of the plurality of different regions of the uncompressed digital image, at least some of the plurality of different regions being found using a region-of-interest detector;
evaluating an interpolation marker in the different regions to provide interpolation results of each of said regions;
when said first artifact is present in said digital image, counteracting a second artifact of said compression algorithm during said evaluating;
classifying said image responsive to said interpolation results; and
storing results of the classifying in a computer-readable memory device.
15. The method of claim 14 wherein said first artifact is a blocking artifact and said second artifact and said interpolation marker are different periodicities in said image.
16. The method of claim 14 wherein said classifying further comprises comparing interpolation results of at least some of said regions.
17. The method of claim 14 wherein said evaluating of each of said regions further comprises:
generating a one-dimensional periodicity signal from the corresponding region;
computing a Discrete Fourier Transform of said periodicity signal; and
detecting a first set of peaks in the said Discrete Fourier transform; and
wherein said counteracting further comprises excluding from said detecting a second set of peaks in said Discrete Fourier Transform.
18. A method implemented by a computer system, the method for detecting digital image compositing, said method comprising the steps of:
finding an uncompressed digital image as a portion of a larger digital image having a higher likelihood of exhibiting forgery as compared to other portions of the larger digital image, the portion being found using a region-of-interest detector;
detecting a blocking artifact in the uncompressed digital image;
identifying a compression-induced periodicity artifact associated with said blocking artifact;
evaluating periodicity in said uncompressed digital image to provide interpolation results;
during said evaluating, counteracting said compression-induced periodicity artifact;
classifying said larger digital image responsive to said interpolation results; and
storing results of the classifying in a computer-readable memory device.
19. The method of claim 8, wherein said classifying further comprises comparing interpolation results of said uncompressed digital image and said additional digital image.
20. The method of claim 19, wherein said additional digital image has a lower likelihood of exhibiting forgery as compared to the uncompressed digital image portion of the larger digital image.
21. The system of claim 13, wherein the finding, detecting, evaluating, and counteracting are performed for an additional portion of the larger digital image, and wherein the classifying further comprises comparing interpolation results of each of the uncompressed digital image and the additional portion of the larger digital image.
22. The method of claim 18 wherein the finding, detecting, evaluating, and counteracting steps are performed for an additional portion of the larger digital image, and wherein the classifying further comprises comparing interpolation results of each of the uncompressed digital image and the additional portion of the larger digital image.