1460713909-a0ced342-f761-4b9a-bb85-ae7d9f721bdd

1. A method for correcting a defective pixel in an image processor, the image sensor having an array of pixels disposed in a plurality of rows, the method comprising:
selecting a row of pixels from among the plurality of rows, wherein the row includes a plurality of pixels having a first color and a plurality of pixels having a second color;
estimating intensity values for pixels having the second color as if the pixels having the second color were pixels having the first color;
using the estimated intensity values for pixels having the second color, determining whether at least one target pixel in the row is defective; and
if the target pixel is defective, converting the estimated intensity values for the target pixel from the second color to an estimated intensity value for the first color and replacing an actual intensity value for the target pixel with a recovery intensity value for the target pixel, the recovery intensity value being the estimated intensity value for the first color.
2. The method of claim 1, wherein the estimating intensity values includes extrapolating intensity values for the target pixel using intensity values of a group of neighboring pixels.
3. The method of claim 2, wherein the estimating intensity values further includes calculating, for each pair of adjacent pixels in the group of neighboring pixels, color differences between individual pixels in the pairs of adjacent pixels.
4. The method of claim 3, wherein the estimating intensity values further includes selecting a median intensity value from among the calculated color differences.
5. The method of claim 1, wherein the estimating intensity values further includes performing linear interpolation of estimated intensity values for the group of neighboring pixels to arrive at an average estimated intensity value for the group of neighboring pixels.
6. The method of claim 5, further comprising characterizing the target pixel as a defective \u201cwhite\u201d pixel if:
an estimated intensity value for the target pixel is greater than the average estimated intensity value for the group of neighboring pixels plus a predetermined threshold value; and
the estimated intensity value for the target pixel is greater than or equal to a maximal estimated intensity value for any one pixel in the group of neighboring pixels.
7. The method of claim 5, further comprising characterizing the target pixel as a defective \u201cblack\u201d pixel if:
an estimated intensity value for the target pixel is less than the average estimated intensity value for the group of neighboring pixels minus a predetermined threshold value; and
the estimated intensity value for the target pixel is smaller than or equal to a minimal estimated intensity value for any one pixel in the group of neighboring pixels.
8. The method of claim 1, further comprising determining a pixel from the group of neighboring pixels whose estimated intensity value is closest to the an estimated intensity value of the target pixel.
9. The method of claim 8, further comprising selecting a pixel from the group of neighboring pixels having estimated intensity value is closest to the an estimated intensity value of the target pixel and having a second derivative that is greater than or equal to the estimated intensity value of the target pixel.
10. The method of claim 9, further comprising using as a first candidate for a recovery intensity value for the target pixel the estimated intensity value of the pixel selected from the group of neighboring pixels having the estimated intensity value that is closest to the estimated intensity value of the target pixel and that has the second derivative that is greater than or equal to the estimated intensity value of the target pixel.
11. The method of claim 10, further comprising:
determining a maximum estimated intensity value of a pixel selected from a first portion the group of neighboring pixels;
determining a maximum estimated intensity value of a pixel selected from a second portion the group of neighboring pixels; and
selecting a minimum estimated intensity value between the maximum estimated intensity value of the pixel selected from a first portion and the maximum estimated intensity value of the pixel selected from the second portion as a second candidate for an estimated recovery intensity value.
12. The method of claim 11, further comprising:
determining a maximum estimated intensity value of a pixel selected from a third portion the group of neighboring pixels;
determining a maximum estimated intensity value of a pixel selected from a fourth portion the group of neighboring pixels;
determining a maximum estimated intensity value of a pixel selected from the group of neighboring pixels; and
selecting as a third candidate for the estimated recovery intensity value a first maximum estimated intensity value from among:
the maximum estimated intensity value of the pixel selected from the third portion;
the maximum estimated intensity value of the pixel selected from the group of neighboring pixels; and
the maximum estimated intensity value of a pixel selected from the group of neighboring pixels.
13. The method of claim 12, further comprising selecting a maximum estimated intensity value from between the first candidate and the second candidate as the estimated recovery intensity value.
14. The method of claim 13, wherein converting the estimated intensity values for the target pixel to the intensity value for the first color comprises:
calculating for a pair of adjacent pixels in the group of neighboring pixels a variance in color between individual pixels in the pair of adjacent pixels in the group of neighboring pixels; and
applying the variance in color to remaining pairs of pixels in the group of pixels;
determining that the estimated intensity value for the target pixel is greater than or equal to an average estimated intensity value for a pair of pixels adjacent to the target pixel and having the first color.
15. The method of claim 1, wherein the first color comprises green.
16. The method of claim 1, wherein the array of pixels is arranged in a Bayer pattern.
17. An image processor having an array of pixels disposed in a plurality of rows, the image processor comprising:
first logic configured to select a row of pixels from among the plurality of rows, wherein the row includes a plurality of pixels having a first color and a plurality of pixels having a second color;
second logic configured to:
estimate intensity values for pixels having the second color as if the pixels having the second color were pixels having the first color;
determine whether at least one target pixel in the row is defective using the estimated intensity values for pixels having the second color, and
if the target pixel is defective, convert the estimated intensity values for the target pixel from the second color to an estimated intensity value for the first color and replace an actual intensity value for the target pixel with a recovery intensity value for the target pixel, the recovery intensity value being the estimated intensity value for the first color.
18. The image processor of claim 17, wherein the second logic is further configured to estimate intensity values by extrapolating intensity values for the target pixel using intensity values of a group of neighboring pixels.
19. The image processor of claim 18, wherein the second logic is further configured to estimate intensity values by calculating, for each pair of adjacent pixels in the group of neighboring pixels, color differences between individual pixels in the pairs of adjacent pixels.
20. The image processor of claim 19, wherein the second logic is further configured to estimate intensity values by selecting a median intensity value from among the calculated color differences.
21. The image processor of claim 17, wherein the second logic is further configured to estimate intensity values by performing linear interpolation of estimated intensity values for the group of neighboring pixels to arrive at an average estimated intensity value for the group of neighboring pixels.
22. The image processor of claim 21, wherein the second logic is further configured to characterize the target pixel as a defective \u201cwhite\u201d pixel if:
an estimated intensity value for the target pixel is greater than the average estimated intensity value for the group of neighboring pixels plus a predetermined threshold value; and
the estimated intensity value for the target pixel is greater than or equal to a maximal estimated intensity value for any one pixel in the group of neighboring pixels.
23. The image processor of claim 21, wherein the second logic is further configured to characterize the target pixel as a defective \u201cblack\u201d pixel if:
an estimated intensity value for the target pixel is less than the average estimated intensity value for the group of neighboring pixels minus a predetermined threshold value; and
the estimated intensity value for the target pixel is smaller than or equal to a minimal estimated intensity value for any one pixel in the group of neighboring pixels.
24. The image processor of claim 17, wherein the second logic is further configured to determine a pixel from the group of neighboring pixels whose estimated intensity value is closest to the an estimated intensity value of the target pixel.
25. The image processor of claim 24, wherein the second logic is further configured to select a pixel from the group of neighboring pixels having estimated intensity value is closest to the an estimated intensity value of the target pixel and having a second derivative that is greater than or equal to the estimated intensity value of the target pixel.
26. The image processor of claim 25, wherein the second logic is further configured to use as a first candidate for a recovery intensity value for the target pixel the estimated intensity value of the pixel selected from the group of neighboring pixels having the estimated intensity value that is closest to the estimated intensity value of the target pixel and that has the second derivative that is greater than or equal to the estimated intensity value of the target pixel.
27. The image processor of claim 26, wherein the second logic is further configured to:
determine a maximum estimated intensity value of a pixel selected from a first portion the group of neighboring pixels;
determine a maximum estimated intensity value of a pixel selected from a second portion the group of neighboring pixels; and
select a minimum estimated intensity value between the maximum estimated intensity value of the pixel selected from a first portion and the maximum estimated intensity value of the pixel selected from the second portion as a second candidate for an estimated recovery intensity value.
28. The image processor of claim 27, wherein the second logic is further configured to:
determine a maximum estimated intensity value of a pixel selected from a third portion the group of neighboring pixels;
determine a maximum estimated intensity value of a pixel selected from a fourth portion the group of neighboring pixels;
determine a maximum estimated intensity value of a pixel selected from the group of neighboring pixels; and
select as a third candidate for the estimated recovery intensity value a first maximum estimated intensity value from among:
the maximum estimated intensity value of the pixel selected from the third portion;
the maximum estimated intensity value of the pixel selected from the group of neighboring pixels; and
the maximum estimated intensity value of a pixel selected from the group of neighboring pixels.
29. The image processor of claim 28, wherein the second logic is further configured to select a maximum estimated intensity value from between the first candidate and the second candidate as the estimated recovery intensity value.
30. The image processor of claim 29, wherein the second logic is further configured to
calculate for a pair of adjacent pixels in the group of neighboring pixels a variance in color between individual pixels in the pair of adjacent pixels in the group of neighboring pixels; and
apply the variance in color to remaining pairs of pixels in the group of pixels;
determine that the estimated intensity value for the target pixel is greater than or equal to an average estimated intensity value for a pair of pixels adjacent to the target pixel and having the first color.
31. The image processor of claim 17, wherein the first color comprises green.
32. The image processor of claim 17, wherein the array of pixels is arranged in a Bayer pattern.

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 of generating a timing vector for use in a user authentication system based on keystroke dynamics, comprising the steps of:
presenting timing cues to a user;
receiving keystrokes typed by the user according to the timing cues; and
generating a timing vector based on the received keystrokes.
2. The method of claim 1, wherein the timing cues include at least one auditory cue, visual cue and audiovisual cue.
3. The method of claim 2, wherein the auditory cue includes a repetitive sound played in a certain fixed tempo.
4. The method of claim 2, wherein the visual cue includes a repetitive movement shown in a certain fixed tempo.
5. The method of claim 2, wherein the audiovisual cue includes sound and movement rendered in a certain fixed tempo.
6. The method of claim 1, further comprising the step of:
presenting a list of exemplary artificial rhythms to the user,
wherein the user selects at least one of the artificial rhythms as keystroke dynamics.
7. The method of claim 6, wherein the artificial rhythms include at least one pause, musical rhythm, staccato, legato and slow tempo.
8. A computer-readable medium storing computer-executable instructions for performing the method as described in any one of claims 1 to 7.
9. A user authentication system based on keystroke dynamics, comprising:
a timing cue generation module for generating and presenting timing cues to a user; and
a timing vector generation module for receiving keystrokes typed by the user according to the timing cues and generating a timing vector based on the received keystrokes.
10. The system of claim 9, wherein the timing cues include at least one auditory cue, visual cue and audiovisual cue.
11. The system of claim 10, wherein the auditory cue includes a repetitive sound played in a certain fixed tempo.
12. The system of claim 10, wherein the visual cue includes a repetitive movement shown in a certain fixed tempo.
13. The system of claim 10, wherein the audiovisual cue includes sound and movement rendered in a certain fixed tempo.
14. The system of claim 9, further comprising:
an artificial rhythm generation module for presenting a list of exemplary artificial rhythms to the user,
wherein the user selects at least one of the artificial rhythms as keystroke dynamics.
15. The system of claim 14, wherein the artificial rhythms include at least one pause, musical rhythm, staccato, legato and slow tempo.
16. The system of claim 9, further comprising:
a timing vector database for storing the generated timing vector;
a classifier building module for building a timing vector classifier based on the timing vector stored in the timing vector database; and
a timing vector classifier for performing a user verification based on the generated timing vector.
17. A method of performing a user authentication based on keystroke dynamics, comprising the steps of:
presenting timing cues to a user;
receiving keystrokes typed by the user according to the timing cues;
generating a timing vector based on the received keystrokes;
if in a user enrollment stage, then enrolling the generated timing vector for the user; and
if in a user authentication stage, then performing a user verification process based on the generated timing vector.
18. The method of claim 17, wherein the timing cues include at least one auditory cue, visual cue and audiovisual cue.
19. The method of claim 18, wherein the auditory cue includes a repetitive sound played in a certain fixed tempo.
20. The method of claim 18, wherein the visual cue includes a repetitive movement shown in a certain fixed tempo.
21. The method of claim 18, wherein the audiovisual cue include sound and movement rendered in a certain fixed tempo.
22. The method of claim 17, further comprising the step of:
presenting a list of exemplary artificial rhythms to the user,
wherein the user selects at least one of the artificial rhythms as keystroke dynamics.
23. The method of claim 22, wherein the artificial rhythms include at least one pause, musical rhythm, staccato, legato and slow tempo.
24. A computer-readable medium storing computer-executable instructions for performing the method as described in any one of claims 17 to 23.