Method and apparatus for contextual data enhancement
First Claim
1. A method for enhancing data contained in data elements of an N×
- M matrix of data elements, each data element containing data representative of an intensity within a range of intensities, the method comprising;
(a) selecting a Y×
Y direction estimate scan window of data elements, from within the N×
M matrix, with Y<
N, Y<
M, and wherein said window has a center data element;
(b) taking the cumulative sum of the differences in the intensity values for each of a plurality of pairs of data elements which are spaced apart by a selected number of data elements, and each comprising one of the data elements in a respective one of a plurality of different slits, wherein each different slit represents a different slit direction and wherein the respective one of a plurality of different slits contains the center data element and is within the direction estimate scan window; and
(c) assigning a direction estimate to the center data element based upon a comparison of the cumulative sum of such differences for the respective slits.
5 Assignments
0 Petitions
Accused Products
Abstract
A fingerprint image enhancement and identification system, wherein image data in digital form, is analyzed in three basic scan windows which are clocked through a matrix array of data elements each containing either intensity data, direction data or both. Using a least summed contrast method, the first window estimates data element directions by analyzing the intensity data in selected direction slits in the window to provide a preliminary direction estimate of a slit direction or "no direction". Thereafter, the second window passes through the matrix to process the preliminary direction estimates, and enhance the direction estimates to identify a slit direction which, along with the directions adjacent to it, are the directions of the predominate number of data elements in the window, or which is the average of the two slit directions which comprise the largest and second largest number of data elements, if they are sufficiently close in direction. The final window examines data elements having enhanced directions and enhances the intensity data of a center data element in the third window, by analysis of the center data element and the neighboring slit data elements in the slit with the direction of the enhanced direction of the center data element.
-
Citations
109 Claims
-
1. A method for enhancing data contained in data elements of an N×
- M matrix of data elements, each data element containing data representative of an intensity within a range of intensities, the method comprising;
(a) selecting a Y×
Y direction estimate scan window of data elements, from within the N×
M matrix, with Y<
N, Y<
M, and wherein said window has a center data element;(b) taking the cumulative sum of the differences in the intensity values for each of a plurality of pairs of data elements which are spaced apart by a selected number of data elements, and each comprising one of the data elements in a respective one of a plurality of different slits, wherein each different slit represents a different slit direction and wherein the respective one of a plurality of different slits contains the center data element and is within the direction estimate scan window; and (c) assigning a direction estimate to the center data element based upon a comparison of the cumulative sum of such differences for the respective slits. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 72, 73, 74, 75, 77, 89, 90, 91, 92, 93, 94, 104, 105)
- M matrix of data elements, each data element containing data representative of an intensity within a range of intensities, the method comprising;
-
34. The method of 33, further comprising the steps of:
-
for each of the data elements in the direction slit having the direction represented by the direction in the center data element, where the center data element has other than "no direction" as its direction data, comparing the intensity data to an augmented mean, proportional to the mean of the intensity data of all the data elements in the intensity enhancement scan window, and comparing the direction represented by the direction data of the center data element to the direction represented by the direction data of each respective direction slit data element; generating an intensity correction with a magnitude dependent upon the absolute difference between the intensity data of the respective direction slit data element and the augmented means and, when the direction represented by the direction data of the respective direction slit data element is within a selected number of degrees from the direction represented by the direction data of the center data element, having a sign to decrease the value of the intensity data of the center data element when the intensity of the respective direction slit data element exceeds the augmented mean, and having a sign to increase the intensity of the center data element when the intensity of the respective direction slit data element is less than the augmented mean, and when the direction represented by the direction data of the respective direction slit data element is not within a selected number of degrees from the direction represented by the direction data of the center data element;
having a sign to increase the value of the intensity data of the center data element when the intensity of the respective direction slit data element exceeds the augmented mean, and having a sign to decrease the intensity of the center data element when the value of the intensity of the respective direction slit data elements is less than the augmented mean. - View Dependent Claims (35, 95)
-
-
59. A data enhancement filter for enhancing data contained in data elements of an N×
- M matrix of data elements, each containing data representative of an intensity within a range of intensities, comprising;
scanning means for selecting a Y×
Y direction estimate scan window of data elements, from within the N×
M matrix, with Y<
N, Y<
M, and having a center data element;slit summing means for determining the cumulative sum of the differences in the intensity value for each of a plurality of pairs of data elements, spaced apart by a selected number of data elements, and each comprising one of the data elements in a respective one of a plurality of slits, containing the center data element, and generally equally separated within the window; direction estimate means for assigning a direction estimate to the center data element based upon a comparison of the cumulative sum of such differences for each of the respective slits. - View Dependent Claims (60, 61, 62, 63, 78, 81, 83, 86, 87, 96, 97, 98, 106, 108, 109)
- M matrix of data elements, each containing data representative of an intensity within a range of intensities, comprising;
-
64. A data enhancement filter for enhancing intensity data for each of a plurality of data elements in an N×
- M matrix of data elements each including data representative of an intensity within a range of intensities and data representative of a feature flow direction or "no direction," comprising;
scanning means for selecting an I×
I intensity enhancement window of data elements within the N×
M matrix, with I<
N, I<
M, and having a center data element;averaging means for determining the mean of the intensity values for the data elements within the scan window; slit selection means for selecting a plurality of data elements within the intensity enhancement scan window defining a direction slit having the direction represented by the feature flow direction data of the center data element; intensity enhancement means for modifying the intensity value of the intensity data of the center data element according to the relationship of the intensity data of each data element in the direction slit to the mean, and the relationship of the direction represented by the direction data in each data element in the direction slit to the direction represented by the direction data of the center data element. - View Dependent Claims (65, 67, 69, 71, 76, 80, 82, 84, 85, 88, 99, 100, 101, 103, 107)
- M matrix of data elements each including data representative of an intensity within a range of intensities and data representative of a feature flow direction or "no direction," comprising;
-
70. An apparatus for computing slit sums, defined as the sum of the differences in magnitude of data values of selected data elements within a window of data elements positioned generally along one of a plurality of generally equally spaced apart slit directions through the center data element of the window of data elements, which selected data elements are each spaced apart by a specified number of one or more data elements within the respective slit, the computing of slit sums being accomplished while incrementing the window in a given direction for a specified number of incrementation periods through a matrix of data elements arranged in columns, comprising:
-
a plurality of slit sum circuits each associated with a slit corresponding to one of the plurality of slit directions; a column scanning means for selecting a particular one or more data elements from within a column of data elements adjacent the window of data elements in a direction of incrementation of the window of data elements to form a selected input of data from one or more data elements into each of the plurality of slit sum circuits; delay means within each slit sum circuit for holding the input from the column scanning means for the specified number of incrementation periods; comparator means within each slit sum circuit for comparing the delayed input from the column scanning means to a current selected input from the column scanning means to form a magnitude subtraction between spaced-apart data elements; a first grouping means within each slit sum circuit for forming the sum of groups of magnitude subtractions output from the comparator means to form the sum of the magnitude subtractions for a first side of the respective slit on one side of the center data element for a selected center data element position; a second grouping means within each slit sum circuit for forming the sum of groups of magnitude subtractions output from the comparator means to form the sum of the magnitude subtractions for groups of magnitude subtractions of the data elements for the second side of the respective slit on the other side of the center data element; storage means within each slit sum circuit for storing the sum of the magnitude subtractions for the first side of the slit until the output of the second grouping means represents the sum of the magnitude subtractions for groups of data elements comprising the second side of the respective slit for the selected center data element position; adder means within each slit sum circuit for adding the output of first and second grouping means to form the slit sum for the selected center data element position. - View Dependent Claims (102)
-
-
79. A data enhancement filter for enhancing data contained in data elements in an N×
- M matrix of data elements, each containing data representative of a direction from within one of a plurality of directions, generally equally spaced apart in direction, comprising;
scanning means for selecting a Z×
Z enhanced direction scan window of data elements from within the N×
M matrix, with Z<
N, Z<
M, and having a center data element;compilation and comparison means for determining the number of data elements within the enhanced direction scan window which have each of the plurality of directions; direction enhancement logic means for assigning to the center data element of the Z×
Z scan window the direction had by the largest number of data elements when the sum of the number of data elements which have the direction of the largest number of data elements and the number of data elements having directions generally aligned with the direction of the largest number of data elements equals or exceeds a selected percentage of the number of data elements in the Z×
Z direction enhancement scan window,means for estimating the dynamic range of intensity values for a matrix of data elements each having its own intensity value represented by n bits of digital data, within the range of Imin to Imax, wherein the dynamic range is defined as the difference between the intensity value above which lie a first percentile of the number of data elements and the intensity value below which lie a second percentile of the number of data elements, comprising; scanning means for scanning the data elements and determining the s most significant bits of the n digital data bits for each data element; histogram formation means for forming a histogram containing s groups of bins formed according to a hierachy of most significant bits, and each group containing the possible combinations of the s, s-1, s-2 . . . , s-(s-1) most significant bits for the representative groups of bins, with 0 in the least significant bit location of the combination corresponding to each bin of the respective group, comparator means for comparing the number contained in the bin of the first group, corresponding to the number of data elements which have the most significant bit in their intensity value set to 0, i.e., which are less than (Imax -Imin)/2, with the number of data elements constituting the first percentile, to determine if the number in the bin of the first group is equal to or greater than the number constituting the first percentile, and for comparing the number contained in the bin of the first group with the number of data elements constituting the second percentile, to determine if the number in the bin of the first group is equal to or greater than the number constituting the second percentile, logic means for selecting a first percentile selected bin and a second percentile selected bin from the second group of bins, based upon the output of the comparator means, such that if the number in the bin in the first group is equal to or greater than the respective percentile a most significant bit of 0 is retained and the bin in the second group having a 0 for the most significant bit is selected for comparison, and if the number in the bin in the first group is less than the respective percentile a most significant bit of 1 is retained, and the bin in the second group having a 1 in the most significant bit is selected for comparison; comparator and logic means for comparing the number in the first percentile selected bin in the second group with the first percentile, to determine if the number in the first percentile selected bin is equal to or greater than the first percentile, and, if so, retaining an 0 as the next most significant bit, and selecting for comparison the bin in the third group having the retained value for the most significant bits and 0 as the next most significant, and, if not, retaining 1 as the next most significant bit, and selecting the bin in the third group having the retained value for the most significant bit and a 1 as the next most significant bit, and for comparing the number in the second percentile selected bin in the second group with the second percentile to determine if the number in the second percentile selected bin in the second group is equal to or greater than the second percentile and, if so, retaining a 0 as the next most significant bit and selecting for comparison the bin in the third group having the retained value for the most significant bit and 0 in the second most significant bit, and, if not, retaining a 1 as the next most significant bit, and selecting the bin in the third group having the retained value for the immediately more significant bit and a 1 in the next most significant bit, and for repeating such comparison and selection for each successive group of the s groups respecting the lesser significant bits to determine the state of s bits of data representative of the s most significant bits of the estimated intensity of the first and of the second percentiles.
- M matrix of data elements, each containing data representative of a direction from within one of a plurality of directions, generally equally spaced apart in direction, comprising;
Specification