US20150261992A1 - Hand-based biometric analysis - Google Patents
Hand-based biometric analysis Download PDFInfo
- Publication number
- US20150261992A1 US20150261992A1 US14/673,593 US201514673593A US2015261992A1 US 20150261992 A1 US20150261992 A1 US 20150261992A1 US 201514673593 A US201514673593 A US 201514673593A US 2015261992 A1 US2015261992 A1 US 2015261992A1
- Authority
- US
- United States
- Prior art keywords
- hand
- image
- plural
- feature parameters
- biometric analysis
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1347—Preprocessing; Feature extraction
-
- G06K9/00067—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
-
- G06K9/00087—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1365—Matching; Classification
Definitions
- biometrics-based authentication systems include methods that employ recognition of various biometric tokens including, for example, fingerprint, face, hand, and iris recognition.
- biometric choices have strengths and weaknesses depending on their systems' applications and requirements.
- the present discussion focuses on hand-based biometric analysis.
- the geometry of the hand contains relatively invariant features of an individual.
- hand-based authentication is sometimes employed in small-scale person authentication applications due to the fact that geometric features of the hand (e.g., finger length/width, area/size of the palm) are not as distinctive as fingerprint or iris features.
- this biometric analysis is performed for identification of a person based on analysis of the person's hand. In another aspect this biometric analysis is performed for verification of a person's identity based on analysis of the person's hand.
- an orientation-independent analysis of an image of a hand is described.
- this orientation-independent analysis includes computation of Zernike moments.
- Certain embodiments acquire an image of a hand without need to extract landmark points, use pegs or require other orientation restrictions.
- the use of Zernike moments for analysis provides for rotation-invariant analysis, lessening the need for restrictions on hand placement and orientation.
- hand images are acquired through the use of a lighting table and a camera.
- images are acquired without the use of equipment which is particular to hand verification and identification.
- images are made into silhouettes before analysis.
- an order value for Zernike moments is chosen to increase accuracy while allowing for efficient computation. In one aspect, this order is chosen through experimental analysis of known images.
- efficient computation of Zernike moments may re-use stored common terms during computation, which can reduce computation time in certain implementations.
- efficient computation of Zernike moments may employ the use of a pre-determined lookup table of computed terms used in Zernike moment calculations.
- the use of arbitrary-precision arithmetic for computation of Zernike moments can increase analysis accuracy.
- Hybrid computations may be used by, for example, combining arbitrary-precision arithmetic with arithmetic of another precision, such as double-precision. Doing so can increase computational efficiencies in some applications.
- segmentation of a hand image can increase computational efficiency and analysis accuracy.
- an image of a forearm can be segmented and removed from an image of a hand.
- an image of a hand may be segmented into separate palm and finger images. Each of the palm and finger images may be separately analyzed using Zernike moments to increase recognition accuracy.
- finger segments are cleaned before analysis to avoid artifacts from segmentation.
- feature parameters including Zernike descriptors, of different parts of the hand are algebraically fused into a feature vector for storage and comparison (a process also known as feature-level fusion).
- a metric can be chosen to be used in comparing feature vectors.
- a simple Euclidian distance may be utilized as such a metric.
- matching scores can be obtained by comparing corresponding feature parameters, including Zernike descriptors, of different parts of a hand to stored feature parameters for known hands.
- these scores can be algebraically fused for comparison (a process also known as score-level fusion).
- score-level fusion can be performed through the use of a weighted summation.
- a statistical classifier may be used to fuse the scores.
- a support vector machine is used to map scores into positive or negative identifiers.
- the outputs of several comparisons between different segments can be considered as votes in a majority-vote score generation process.
- a system for biometric analysis comprises modules for image acquisition and segmentation, for image analysis, for storing feature parameters for hand images which have previously been received by the system, and for comparing stored feature parameters to parameters gained from newly-entered hand images.
- feature parameters of hand images which are submitted for identification or verification can be stored if, for example, they are identified as belonging to a person who had feature parameters already stored in the system.
- FIG. 1 is a diagram illustrating an overview of the hand-based biometric analysis techniques described herein.
- FIG. 2 is a flowchart illustrating an example process for performing hand-based biometric analysis.
- FIG. 3 is a block diagram illustrating an example system for performing hand-based biometric analysis.
- FIG. 4 is a flowchart illustrating an example process for acquiring and processing an image in the hand-based biometric analysis techniques described herein.
- FIGS. 5( a )-( c ) are pictorial examples of image acquisition for the hand-based biometric analysis techniques described herein.
- FIG. 6 is a flowchart illustrating an example process for segmenting an image of a hand and forearm according to the hand-based biometric analysis techniques described herein.
- FIGS. 7( a )-( c ) are examples of the segmentation process of FIG. 6 .
- FIGS. 8( a )-( d ) are examples of finger movement observed in acquired hand images.
- FIG. 9 is a flowchart illustrating an example process for segmenting an image of fingers and a palm according to the hand-based biometric analysis techniques described herein.
- FIGS. 10( a )-( d ) are examples of the segmentation process of FIG. 9 .
- FIG. 11 is an example of points on a hand where smoothing of finger image segments is desirable.
- FIGS. 12( a )-( b ) are example of finger image segments before and after being smoothed.
- FIG. 13 is an example of common terms in a calculation of Zernike moments.
- FIG. 14 is a flowchart illustrating an example process for calculating Zernike moments according to the hand-based biometric analysis techniques described herein.
- FIG. 15 is an example of reconstruction of an image using Zernike moments of different orders.
- FIG. 16( a ) is a graph of example errors for reconstructing finger images using Zernike moments of different orders.
- FIG. 16( b ) is an example of reconstruction of a finger image using Zernike moments of different orders.
- FIG. 17( a ) is a graph of example errors for reconstructing entire hand images using Zernike moments of different orders.
- FIG. 17( b ) is an example of reconstruction of an entire hand image using Zernike moments of different orders.
- FIG. 18 is a flowchart illustrating an example process for fusing feature parameters using feature-level fusion according to the hand-based biometric analysis techniques described herein.
- FIG. 19 is a flowchart illustrating an example process for fusing feature parameters using score-level fusion according to the hand-based biometric analysis techniques described herein.
- FIG. 20 is a flowchart illustrating an example process for fusing feature parameters using decision-level fusion according to the hand-based biometric analysis techniques described herein.
- FIG. 21 is a block diagram illustrating an example computing environment for performing the biometric analysis techniques described herein.
- the following description relates to examples of systems and methods for performing hand-based biometric analysis. While, however, much of the description herein is directed to performing image processing and analysis for images of hands, this should not be read as a limitation on the techniques and systems described herein. Similarly, although many of the descriptions herein are directed toward verification and/or identification of a person based on an acquired image of a hand, this should not be read as a requirement of all implementations of the systems and techniques described herein. Many of the processes and modules described herein may operate on other types of images, or even arbitrary images, as well as being used for purposes other than biometric analysis.
- FIG. 1 shows a block diagram illustrating, at a general level, the steps of one implementation of a biometric analysis systems according to the techniques described here, with specificity to hand-based verification.
- an image of a hand is acquired.
- the image undergoes preprocessing before feature analysis is performed.
- the image is binarized to produce a black and white silhouette, followed by a segmentation to separate the hand and arm segments of the image at block 130 .
- each of these segments undergo a feature extraction to create Zernike descriptors for each image segment.
- the extracted feature data is fused according to techniques described herein, and a verification decision is made at block 170 , utilizing input data from a database of feature data 180 .
- the analysis and decision-making can be performed by computing Zernike descriptors for each segmented image, and then fusing the descriptors into a feature vector which can then be compared to a database of known trusted feature vectors.
- each part of the hand can be compared separately to one or more known hand segments to obtain a matching score for that part of the hand; after comparison the matching scores can be fused together to obtain an overall matching score.
- a majority-vote process can be used for to make comparisons of different image segments for verification or identification.
- the term “verification” for an image of a hand generally refers to the determination, given a subject identifying him or herself as a particular identity and supplying an image of their hand, that the subject is believed by the system to be the particular identity.
- identity generally refers to the system itself choosing a likely identity for a person given an image of their hand. Because no concrete claim of identity is made, identification frequently means comparing an image of a hand to multiple identity records. As such processes of identification are generally more complex and take more time than verification, and can be thought of as specializations of verification processes. In various implementations, the degree of belief or trust required to achieve a verification or identification may change or be modified by an administrator.
- biometric refers only to the usage of parameters that represent a biological specimen.
- the term is not intended to be limited to specific measurements, such as length or width of physical hand features. Instead, the term incorporates parameters, such a Zernike moment parameters representing hand shape, which indirectly represent the shape of biological features.
- certain of the systems and techniques described herein can operate on 2D images acquired without reference to a particular orientation.
- hand images are obtained by placing a hand on a planar lighting table without requiring guidance pegs, which have traditionally been used to orient a hand during image collection to increase identification accuracy. This can improve convenience for the user by allowing a greater degree of freedom in hand orientation during image capture, both saving acquisition time and allowing providing the user with a more comfortable experience.
- certain of the described systems and techniques are able to perform biometric analysis without requiring direct measurement of the hand image.
- these systems and techniques can operate without extracting landmarks on the fingers (e.g., finding finger joints or tips or looking for lines on a palm), a process which can be prone to error.
- Zemike moments have been employed in a wide range of applications in image analysis and object recognition. They can be, on the surface, quite attractive for representing hand shape information due to having minimal redundancy (i.e., orthogonal basis functions), and being relatively invariant with respect to translation, rotation, and scale, as well as robust to noise.
- their use in biometric analysis has been limited to low-orders only or small low-resolution images. This is because high-order Zemike moments traditionally come with high computational requirements and can lack accuracy due to numerical errors. Unfortunately, these low-order moments are frequently insufficient to capture shape details accurately.
- FIG. 2 shows an exemplary block diagram of a procedure for performing hand-based biometric analysis according to the systems and techniques described herein.
- the FIG. 2 is a flowchart of an example process 200 for acquiring and analyzing an image of a hand.
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the processes of FIG. 2 are performed by the Hand-Based Biometric Analysis Module 300 of FIG. 3 .
- Various processes of FIG. 2 may be performed by software or hardware modules; examples of such modules are found as sub-modules of module 300 .
- various processes described herein may be shared by modules illustrated in FIG. 3 or may be performed by modules which are not illustrated.
- the process begins at block 210 , at which an image of a hand is acquired and processed. In one implementation, this process is performed by the image acquisition system 310 of FIG. 3 . Additional detail about the processes of block 210 can be found below.
- the process continues to blocks 220 and 230 where the input image goes through a segmentation process.
- the image of the combined arm and hand are segmented to isolate the hand image at block 220 , while the hand image is further segmented at block 230 into separate finger and palm segments.
- the arm image is discarded after the process of block 220 .
- the processes of blocks 210 - 230 are performed by the image segmentation module 320 of FIG. 3 . Further detail about the processes of blocks 220 and 230 can be found below.
- the finger-palm segmentation procedure of block 230 is not performed.
- Zernike moments can tolerate certain finger movement (e.g., 6 degrees rotation about the axis being perpendicular to the joint of the finger with the palm)
- Zernike moments become more sensitive when the fingers move close to each other.
- Zernike moments generally cannot tolerate very well situations where the hand is bent at the wrist.
- the finger segmentation process of block 230 can aid in improving both the accuracy and the processing speed of the systems shown here.
- the system performs feature extraction of the images by computing the Zernike moments of each image segment independently to obtain feature parameters.
- the processes of block 240 are performed by the image analysis module 340 of FIG. 3 .
- feature parameters typically in the form of Zernike descriptors obtained by computation of Zernike moments at block 240 are compared to known hand image data to determine if the currently-analyzed hand image is similar to previously-analyzed images. Further detail about the processes of blocks 240 and 250 can be found below.
- the processes of block 250 are performed by the decision module 360 of FIG. 3 and utilize stored feature parameters kept in the data storage 380 .
- the data storage may also contain additional biometric or identity data, such that identify records can be kept, and/or may contain repeated terms used in Zernike moment computation, as will be explained in detail below.
- the data storage 380 comprises more-structured storage implementations, such as a database (as in the earlier example) or alternatively may comprise less-structured storage implementations, such as a drive or a disk array.
- FIG. 4 shows an exemplary block diagram of a procedure for performing hand-based biometric analysis according to the systems and techniques described herein, and in particular, the processes performed by the image acquisition system 310 when performing the processes of block 210 .
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the process begins at block 410 , where the image of a hand is captured.
- An example of an image acquisition system according to the techniques described herein consists of a VGA resolution CCD camera and a planar lighting table, which provides the surface on which a hand may be placed. An example of such a system can be found in FIG. 5 a , in which the direction of the camera is perpendicular to the lighting table.
- the camera has been calibrated to remove lens distortion.
- the image obtained by the camera is of the back of the hand being analyzed.
- biometric analysis can be performed on such an image without the need to acquire an image of the front of the hand, or of any particular lines or features of the palm or fingers.
- the biometric analysis may be augmented through additional image (or other biometric) analysis techniques, such as the analysis of finger or hand prints.
- both the camera and the lighting table can be placed inside a box to more effectively eliminate light interferences from a surrounding environment.
- the depicted implementation especially when utilized alongside the biometric analysis techniques described herein, provides images of high-enough quality without much effort to control the environment that they can be used in biometric anlaysis.
- an almost binary, shadow, and noise free silhouette of the hand is obtained (e.g., the examples shown in FIGS. 5 b and 5 c .
- Another alternative implementation uses a flatbed scanner tuned to capture the hand silhouette.
- Yet another implementation processes the image through a threshold or filter to create a silhouette with a more stark contrast to facilitate later analysis.
- the images can be captured using a gray scale camera; in another implementation, however a color CCD camera can be used if available.
- a grayscale image if the image is taken in color, it is modified to create a grayscale image.
- the grayscale image is binarized to create a binary image (e.g. an image containing only black and white pixels), in order to facilitate later analysis.
- the binary value B i,j of a pixel can be calculated as
- T is a constant threshold.
- the resulting silhouette is accurate and consistent due to the design of the image acquisition system. This is useful for the use of high order Zernike moments as Zernike moments can be sensitive to small changes in silhouette shape.
- the image segmentation module performs the segmentation of the hand, forearm and fingers.
- One example segmentation process is summarized as follows.
- the palm is detected by finding the largest circle inside the hand/arm silhouette. Then the intersection of the forearm with the circle's boundary and image boundary is found to segment the hand.
- the fingers are filtered out first using morphological closing; next, the palm is subtracted from the whole silhouette to segment fingers. The fingers image segments are then processed to remove artifacts of the previous segmentation which could affect analysis. Details of these processes follow.
- the binary silhouette provided by the acquisition module is the union of the hand and the forearm.
- the forearm does not have as many distinctive features, and its silhouette at different acquisition sessions is not expected to be the same due to clothing and freedom in hand placement.
- the present embodiment removes the forearm segment before continuing image processing.
- one implementation utilizes an assumption that a user providing a hand image is not wearing very loose clothing on the arm. Under this assumption, the palm can be identified as becomes a thicker region of the silhouette, which enables the palm's detection through the finding of the largest circle inside the silhouette.
- FIG. 6 is a flowchart of an example process 600 for segmenting an acquired arm/hand image to remove the forearm segment.
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the process begins at block 610 , where the image segmentation module 320 initializes a circular structuring element D with a very large radius R.
- the module 320 applies a closing operator on the image using D.
- the resulting image from the closing operator should be the largest circle inside the silhouette.
- FIG. 7 b One example of an output of this procedure on a sample image is illustrated in FIG. 7 b .
- the arm is segmented by detecting its intersection with the circle and the boundary of the image; the arm portion of the image can then be removed at block 650 .
- FIG. 7 c shows the resulting silhouette after discarding the arm region.
- Segmentation of finger and palm portions can also be useful to obtain an accurate hand analysis.
- users are instructed to stretch their hands in order to avoid touching fingers.
- finger motion is often unavoidable.
- FIGS. 8( a )- 8 ( d ) An example of samples collected from the same user, shown in FIGS. 8( a )- 8 ( d ), illustrates this.
- the angles between fingers can change significantly between different samples.
- Zernike moments can tolerate finger motion to some degree, however, in order to deal with the potential for large finger motion
- the present embodiment segments the fingers and palm to be processed separately. This segmentation, by providing multiple groups of feature parameters can allow for more focused optimization (such as by selecting different orders for Zernike moments for different segments), thus increasing potential accuracy.
- FIG. 9 One example of such segmentation processing is shown in FIG. 9 .
- a morphological closing operation based on a circular disk is applied on the input image, as shown in FIG. 10( a ).
- the radius of the structuring element was experimentally set to 25 pixels (i.e., making it thicker than a typical widest finger found in an exemplary database of examples).
- This closing operation filters out the fingers from the silhouette, as shown in FIGS. 7( b ) and 7 ( c ).
- the remaining part of the silhouette corresponds to the palm, which is then subtracted from the input image to obtain the finger segments, as shown in FIG. 7( d ).
- fingers are segmented from a palm by detecting landmark points on the hand, such as fingertips and valleys, such as is performed in some traditional hand-based verification techniques.
- landmark points on the hand such as fingertips and valleys
- these techniques tend to be prone to errors due to inaccuracies in landmark detection and thus are not used in the exemplary implementations.
- finger regions are individually identified using connected components analysis.
- FIG. 10( d ) illustrates, however, due to the segmentation process the segmented fingers often have sharp tails at the locations where they meet the palm.
- the curvature of the hand contour at these locations is less severe for the little, point, and thumb fingers, as shown in FIG. 11 .
- FIG. 12( a ) shows different samples from the same subject are shown.
- FIG. 12( a ) shows different samples from the same subject.
- FIG. 9 continues at block 930 , where finger segments are smoothed out by applying an extra morphological closing step.
- this closing step is performed with a simple 4 by 4 square with values set to one. The benefit of such processing can be observed by comparing the finger image segments of FIG. 12( a ) to FIG. 12( b ). The circles in the Figures illustrate circles which can enclose each finger. Thus, by applying this closing processing, the amount of tail reduction can easily be seen. Additional benefits of this smoothing step can be seen in the following Table, which illustrates the effect of this process by showing the normalized distances between the circles surrounding pairs of corresponding fingers shown in FIGS. 12( a ) and 12 ( b ):
- the application of a smoothing processing step has the potential to improve matching scores considerably by reducing the difference between successive scans of the same finger.
- Zernike moments are computed for each of the various segments in order to arrive at a set of Zemike descriptors (such as in block 240 of FIG. 2 ). It is these descriptors that are used, either as they are created or in a fused form, as feature parameters, which can be stored for future hand-based biometric analysis or compared against previously-stored feature parameters to determine if the hand is the same as a known hand.
- Zernike moments are based on a set of complex polynomials that form a complete orthogonal set over the interior of the unit circle.
- a Zernike moment for an image is defined as the projection of the image on these orthogonal basis functions.
- the basis functions V n,m (x, y) are given by:
- n is a nonnegative integer known as the “order” of the Zernike moment resulting from these functions.
- j ⁇ square root over ( ⁇ 1) ⁇
- m is a nonzero integer subject to the constraints that n ⁇ m is even and m ⁇ n
- ⁇ is the length of the vector from origin to (x,y)
- ⁇ is the angle between the vector and the x axis in a counter clockwise direction
- R n,m ( ⁇ ) is what is known as a Zernike radial polynomial.
- R n,m ( ⁇ ) is defined as follows:
- V* n,m (x, y) is the complex conjugate of V* n,m (x, y).
- the digital image function f(x, y) need only describe, for each (x, y) pair, whether the pixel at that point in the binary image is on or off. In alternative implementations, more complex digital image functions may be used.
- the center of mass of the object is taken to be the origin.
- Equation 7 shows, because the radial polynomial is symmetric, the magnitude of the Zernike moments are rotation invariant.
- the moments are, barring subtle changes in images, essentially translation-invariant as well.
- their Zernike moments will be substantially similar, even if one is rotated or moved around.
- the systems and techniques scaled images inside a unit circle to provide scale invariance.
- the image can be reconstructed. This reconstruction is not necessary for every implementation of creating and comparing a database of hand-based verification data, however. This can be done using the following truncated expansion:
- N is the maximum order of Zernike moments being used
- C n,m and S n,m denote, respectively, the real and complex parts of the Zernike moment terms Z n,m .
- This reconstruction may be used, for example, to illustrate a hand image chosen from a database of images upon analysis; this could provide additional feedback to a user or operator of a biometric analysis apparatus.
- one method used in existing systems to improve the speed of Zernike moments computation involves using a quantized polar coordinate system.
- a square to a circle transformation was employed for this purpose.
- angles were quantized to 4M levels and radii were quantized to M levels.
- Quantization techniques such as these suffer from a side effect, however, as errors are introduced in the computation of high order Zernike moments.
- the described procedures that follow employ improved techniques that avoid using quantization, providing computation of the moments with comparable accuracy to traditional approaches (e.g., no approximations). To save computation time, these techniques find terms which occur repeatedly in various orders. Once these terms are computed, they are stored to avoid re-computing the terms later, and are available to be linearly combined with other pre-computed terms. These other terms are stored in a lookup table (such as in the data storage 380 ) and do not depend on any underlying image for which Zernike moments are being computed. Additionally, in one implementation, arbitrary precision arithmetic is used to increase accuracy.
- Equation 7 The terms that can be isolated for repeat usage can be found through substitution of Equations 4 and 2 into Equation 7, which results in the following equation:
- Equation 9 can be rewritten to clarify the repeating term:
- Equation 10 can be re-used as common terms in future computation of moments.
- FIG. 7 shows, computing ⁇ m,k once and recording these for future use is enough for computing Zernike moments of any order and any repetition by simply taking linear combinations as shown in Equation 10.
- the coefficients ⁇ n,m,k do not depend on an image function or coordinates; therefore, they can be stored ahead of time in a small lookup table to save computation.
- FIG. 14 is a flowchart of an example process 1400 performed by the Image Analysis Module 340 for computing Zernike moments for an image using stored and re-used terms.
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the process begins at block 1410 , where the ⁇ n,m,k terms, as defined above, are computed and stored in a lookup table for later use. In various implementations, this process may be performed before any image acquisition is performed, as the ⁇ n,m,k terms do not rely on an image; alternatively the computation may be performed during image acquisition or analysis.
- the various terms which are needed for computation of the Zernike moment for the image being analyzed are determined.
- the process then continues to a loop at block 1430 , where a sub-process is performed for each term in the linear combination of Equation 10 used to compute a Zernike moment for the image.
- the module 340 determines if the necessary ⁇ m,k term in question at this point in the loop has been computed already. If not, at block 1440 the module computes the term using the image function and stores the term for later use. If, instead the ⁇ m,k term has been computed, then at block 1450 the term is recovered from storage.
- the ⁇ m,k and ⁇ n,m,k are combined in the linear combination of equation 10, and the loop continues at block 1470 .
- Some implementations of the systems and methods described herein also may take advantage of adjustments in numerical precision in calculating Zernike moments to increase accuracy and/or efficiency.
- double precision arithmetic may not provide enough precision; serious numerical errors can be introduced in the computation of moments under these conditions.
- the use of arbitrary precision arithmetic can overcome some of these limitations of double precision arithmetic and avoid undesired errors.
- FIG. 16( a ) shows the reconstruction error of fingers for different orders. As it can be observed, the error almost saturates for orders higher than 40.
- FIG. 16( b ) the reconstructions of a finger for different orders are shown.
- the first image is the original image, while, from left to right, top to bottom, reconstructed images of original image are shown up to order 2, 5, 10, 20, 30, 40, 50, 60 and 70, respectively.
- the saturation observed in FIG. 16( a ) is visually evident in FIG. 16( b ).
- FIGS. 17( a ) and 17 ( b ) show a similar reconstruction error graph and reconstructed images for an image of an entire hand.
- the reconstructed images of FIG. 17( b ) are for the same orders as in the images of FIG. 16( b ).
- FIGS. 17( a ) and 17 ( b ) show, a higher order is necessary for good precision when attempting to precisely analyze an entire hand.
- various implementations utilize some form of data fusion and comparison to determine if the hand image being analyzed matches any known hands.
- Various implementations may employ score-level fusion, feature-level fusion, or decision-level fusion (or some combination thereof) to make comparisons between the hand images which are being analyzed and known images. The methods differ in order and way in which they fuse and compare data.
- Zernike descriptors are compared segment-by-segment with known descriptors to obtain scores for each segment. These scores are then fused to arrive at an overall score for the hand image.
- Zernike descriptors are fused together into a single descriptor for the hand, possibly along with dimensionality reduction or feature selection. This descriptor is then compared to previously-stored hand descriptors to obtain a matching score. In alternative implementations, other methods of comparing data obtained by computing Zernike moments may be employed.
- fusion, comparison, and decision processes described below describe the use of storage feature parameter records, in particular comparisons to them. While the processes described below are not made with reference to a particular number of records, in various implementations, the processes described herein may utilize one or more feature parameter records per person or per segment. Thus, in one implementation, a comparison between parameters for a just-acquired image may only involve comparison with a single stored set of parameters for that image. In an alternative implementation, multiple sets of enrollment templates, each a set of feature parameters, may be kept for each image or image segment. In such an implementation, comparison can take the form of comparing parameters for an acquired segment with multiple enrollment templates.
- the score can be calculated as the smallest such score found from the comparisons.
- a mathematical manipulation may be performed on the various scores to arrive at a combined score for that segment.
- FIG. 18 is a flowchart of an example process 1800 performed by the decision module 360 for fusing data associated with Zernike descriptors using feature-level fusion and comparing data to known hand samples.
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- Principal Components Analysis is used in the implementation of the procedure.
- the process begins at block 1820 , where the module 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands.
- Zernike descriptors of the fingers and the palm are fused into a feature vector which represents the overall geometry of the hand.
- the resulting representation in certain implementations, is invariant to various transformations, including translation, rotation and scaling transformations.
- the fused data is used to compare the present hand which is being analyzed to previously-collected data.
- the Euclidean distance between the query and the templates provides a similarity score for verification purposes.
- multiple enrollment templates are employed per subject and the smallest distance between the query and a subject's templates indicates the similarity of the query to that subject.
- the comparison may be performed with reference to a single stored feature vector (for example if a particular identity is being verified) or multiple comparisons may be made with a plurality of stored feature vectors, in order to identify the owner of a hand.
- the difference, or differences, in the scores is compared to a identification threshold.
- the value chosen for the threshold can affect the level of security provided by the biometric analysis. Thus, a higher threshold value could result in false positive identifications (or verifications), while too low a value could result in false negatives.
- a threshold is pre-determined experimentally or according to operational requirements, such as security level, or the identity of the person being compared.
- the system either reports a positive decision (for verification or identification) at block 1870 or a negative decision at block 1880 . The process then ends.
- FIG. 19 is a flowchart of an example process 1900 performed by the decision module 360 for fusing data associated with Zernike descriptors using score-level fusion and comparing data to known hand samples.
- the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the process begins at block 1920 , where the module 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands.
- the feature parameter descriptors for each segment e.g. the palm and each finger
- this may be done with reference to a particular stored set of descriptors, or with a plurality of stored descriptors.
- the score-level fusion procedure may make a decision based on a weighted sum analysis or using support vector machines. If the implementation is using weighed-sum, then at block 1940 , these scores are fused into an overall score using weighted summation.
- S denotes the similarity measure (e.g. Euclidean distance) between the query Q and the template T.
- Q i and T i represent the i-th part of the hand.
- the first five parts correspond to the little, ring, middle, point, and thumb fingers while the sixth party corresponds to the back of the palm.
- the parameters ⁇ i are the weights associated with the i-th part of the hand. In one implementation, they satisfy the following constraint:
- a similar weighed scheme may be used to determine the fused vectors.
- weights are determined experimentally through a search over an empirically determined set of weights to maximize accuracy over a small database of 80 samples from 40 subjects.
- Feature vectors are fully invariant to translations and rotations.
- any type of distance metric can be used for computing similarities by the decision module 360 .
- the score is compared to a identification threshold, similarly to the feature-level fusion described above, to determine if it is below the threshold.
- the system either reports a positive decision (for verification or identification) at block 1970 or a negative decision at block 1980 . The process then ends.
- a support vector machine is a binary classifier that maps input patterns X to output labels y ⁇ 1,1.
- SVM has the following form:
- ⁇ i Lagrange multipliers
- ⁇ corresponds to the indices of the support vectors for which ⁇ i ⁇ 0,b is a bias term
- X is an input vector
- K(X,X i ) is a kernel function.
- Classification decisions are based on whether the value f(X) is above or below a threshold, and thus can be adjusted for greater or lesser security similarly to the processes above by adjusting the threshold.
- the input vector X is composed of the scores between corresponding parts of the hand. Assigning the input vector to the class “1” implies that both hands come from the same subject while assigning it to the class “ ⁇ 1” implies that they come from different subjects.
- FIG. 20 is a flowchart of an example process 2000 performed by the decision module 360 for fusing data associated with Zernike descriptors using a decision-level fusion process and comparing data to known hand samples.
- the illustrated implementation depicts a process for “majority voting.” Majority voting is among the most straightforward decision-level fusion strategies. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted.
- the process begins at block 2020 , where the module 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands.
- the feature parameter descriptors for each segment e.g. the palm and each finger
- this may be done with reference to a particular stored set of descriptors, or with a plurality of stored descriptors.
- the decision module 360 determines if a majority of the scores are below one or more preset thresholds. Thus, different thresholds may be set for each type of segment, although in some implementations thresholds could be repeated. Then, if a majority of the segments have scores below the threshold, at block 2070 a positive decision is reported. If not, at block 2080 a negative decision is reported. The process then ends.
- the above hand-based biometric analysis techniques and systems can be performed on any of a variety of computing devices.
- the techniques can be implemented in hardware circuitry, as well as in software executing within a computer or other computing environment, such as shown in FIG. 21 .
- FIG. 21 illustrates a generalized example of a suitable computing environment 2100 in which described embodiments may be implemented.
- the computing environment 2100 is not intended to suggest any limitation as to scope of use or functionality of the invention, as the present invention may be implemented in diverse general-purpose or special-purpose computing environments.
- the computing environment 2100 includes at least one processing unit 2110 and memory 2120 .
- the processing unit 2110 executes computer-executable instructions and may be a real or a virtual processor. In a multi-processing system, multiple processing units execute computer-executable instructions to increase processing power.
- the memory 2120 may be volatile memory (e.g., registers, cache, RAM), non-volatile memory (e.g., ROM, EEPROM, flash memory, etc.), or some combination of the two.
- the memory 2120 stores software 2180 implementing the described techniques.
- a computing environment may have additional features.
- the computing environment 2100 includes storage 2140 , one or more input devices 2150 , one or more output devices 2160 , and one or more communication connections 2170 .
- An interconnection mechanism such as a bus, controller, or network interconnects the components of the computing environment 2100 .
- operating system software provides an operating environment for other software executing in the computing environment 2100 , and coordinates activities of the components of the computing environment 2100 .
- the storage 2140 may be removable or non-removable, and includes magnetic disks, magnetic tapes or cassettes, CD-ROMs, CD-RWs, DVDs, or any other medium which can be used to store information and which can be accessed within the computing environment 2100 .
- the storage 2140 stores instructions for the software 2180 implementing the described techniques.
- the input device(s) 2150 may be a touch input device such as a keyboard, mouse, pen, or trackball, a voice input device, a scanning device, or another device that provides input to the computing environment 2100 .
- the input device(s) 2150 may be a sound card or similar device that accepts audio input in analog or digital form, or a CD-ROM reader that provides audio samples to the computing environment.
- the output device(s) 2160 may be a display, printer, speaker, CD-writer, or another device that provides output from the computing environment 2100 .
- the communication connection(s) 2170 enable communication over a communication medium to another computing entity.
- the communication medium conveys information such as computer-executable instructions, compressed audio or video information, or other data in a modulated data signal.
- a modulated data signal is a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- communication media include wired or wireless techniques implemented with an electrical, optical, RF, infrared, acoustic, or other carrier.
- Computer-readable media are any available media that can be accessed within a computing environment.
- Computer-readable media include memory 2120 , storage 2140 , communication media, and combinations of any of the above.
- program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
- the functionality of the program modules may be combined or split between program modules as desired in various embodiments.
- Computer-executable instructions for program modules may be executed within a local or distributed computing environment.
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Collating Specific Patterns (AREA)
Abstract
Hand-based biometric analysis systems and techniques are described which provide robust hand-based identification and verification. An image of a hand is obtained, which is then segmented into a palm region and separate finger regions. Acquisition of the image is performed without requiring particular orientation or placement restrictions. Segmentation is performed without the use of reference points on the images. Each segment is analyzed by calculating a set of Zernike moment descriptors for the segment. The feature parameters thus obtained are then fused and compared to stored sets of descriptors in enrollment templates to arrive at an identity decision. By using Zernike moments, and through additional manipulation, the biometric analysis is invariant to rotation, scale, or translation or an in put image. Additionally, the analysis utilizes re-use of commonly-seen terms in Zernike calculations to achieve additional efficiencies over traditional Zernike moment calculation.
Description
- This application claims the benefit of U.S. Provisional Application No. 60/814,163, filed Jun. 16, 2006, the disclosure of which is hereby incorporated by reference.
- The invention described in this patent application was made in part by government support under NASA Grant #NCC5-583. The United States Government may have rights in this invention.
- Existing techniques for biometrics-based authentication systems include methods that employ recognition of various biometric tokens including, for example, fingerprint, face, hand, and iris recognition. Various biometric choices have strengths and weaknesses depending on their systems' applications and requirements. The present discussion focuses on hand-based biometric analysis. The geometry of the hand contains relatively invariant features of an individual. In existing systems, hand-based authentication is sometimes employed in small-scale person authentication applications due to the fact that geometric features of the hand (e.g., finger length/width, area/size of the palm) are not as distinctive as fingerprint or iris features.
- However, existing techniques and systems rely on outmoded or inconvenient processes in order to increase identification accuracy. Among these include strict requirements about hand orientation. Existing systems go as far as to require the use physical pegs or guides to direct hand orientation during image capture in order to allow assumptions to be made during analysis which simplify computational requirements. Such requirements are undesirable from a user's perspective, however, because they make use of such a system cumbersome and potentially uncomfortable. Additionally, adding physical restrictions to a system increases the likelihood that the system will require special, costly equipment.
- Another strict requirement in existing techniques is the method by which they perform recognition of an image of a hand. Many existing systems and techniques focus on extraction of several landmark points on the surface or silhouette of the hand in order to identify the shape. This point extraction is not performed easily and is frequently prone to localization errors. Such errors can, by altering the very shape and borders of the segments created, substantially increase the difficulty of performing verification or identification. Additionally, existing systems and techniques require the recognition of lines or prints on the hand or fingers in order to perform analysis. Such identification is more prone to error, both from acquisition mistakes and from inconsistencies in hand appearance from day to day.
- What is needed is a system that can perform biometric analysis for identification and/or verification which does not require restrictions on hand placement to the extensive degree used in existing systems. Additionally, what is needed are techniques for performing such biometric analysis that are robust with regard to changes in placement and changes in points and lines on the hand itself.
- Techniques and systems for performing hand-based biometric analysis are described. In various implementations the techniques and systems will comprise one or more of the following features, either separately or in combination.
- The applicants have invented systems and methods for performing hand-based biometric analysis. The systems and methods have a variety of different aspects and these aspects are exhibited in various implementations. In one aspect this biometric analysis is performed for identification of a person based on analysis of the person's hand. In another aspect this biometric analysis is performed for verification of a person's identity based on analysis of the person's hand.
- In some embodiments, an orientation-independent analysis of an image of a hand is described. In another aspect, this orientation-independent analysis includes computation of Zernike moments.
- Certain embodiments acquire an image of a hand without need to extract landmark points, use pegs or require other orientation restrictions. In one aspect, the use of Zernike moments for analysis provides for rotation-invariant analysis, lessening the need for restrictions on hand placement and orientation.
- In some embodiments, hand images are acquired through the use of a lighting table and a camera. In one aspect, images are acquired without the use of equipment which is particular to hand verification and identification. In another aspect, images are made into silhouettes before analysis.
- In some embodiments, an order value for Zernike moments is chosen to increase accuracy while allowing for efficient computation. In one aspect, this order is chosen through experimental analysis of known images.
- In some embodiments, efficient computation of Zernike moments may re-use stored common terms during computation, which can reduce computation time in certain implementations. In another aspect, efficient computation of Zernike moments may employ the use of a pre-determined lookup table of computed terms used in Zernike moment calculations.
- In some embodiments, the use of arbitrary-precision arithmetic for computation of Zernike moments can increase analysis accuracy. Hybrid computations may be used by, for example, combining arbitrary-precision arithmetic with arithmetic of another precision, such as double-precision. Doing so can increase computational efficiencies in some applications.
- In some embodiments, segmentation of a hand image can increase computational efficiency and analysis accuracy. In some implementations, an image of a forearm can be segmented and removed from an image of a hand. In certain embodiments, an image of a hand may be segmented into separate palm and finger images. Each of the palm and finger images may be separately analyzed using Zernike moments to increase recognition accuracy. In some applications, finger segments are cleaned before analysis to avoid artifacts from segmentation.
- In some embodiments, feature parameters, including Zernike descriptors, of different parts of the hand are algebraically fused into a feature vector for storage and comparison (a process also known as feature-level fusion).
- In certain implementations, a metric can be chosen to be used in comparing feature vectors. In some implementations, a simple Euclidian distance may be utilized as such a metric.
- In some embodiments, matching scores can be obtained by comparing corresponding feature parameters, including Zernike descriptors, of different parts of a hand to stored feature parameters for known hands. In some embodiments, these scores can be algebraically fused for comparison (a process also known as score-level fusion). In some embodiments, such a fusion can be performed through the use of a weighted summation. In some embodiments, a statistical classifier may be used to fuse the scores. In yet another aspect, a support vector machine is used to map scores into positive or negative identifiers.
- In some embodiments, the outputs of several comparisons between different segments can be considered as votes in a majority-vote score generation process.
- In certain applications a system for biometric analysis comprises modules for image acquisition and segmentation, for image analysis, for storing feature parameters for hand images which have previously been received by the system, and for comparing stored feature parameters to parameters gained from newly-entered hand images. In some applications feature parameters of hand images which are submitted for identification or verification can be stored if, for example, they are identified as belonging to a person who had feature parameters already stored in the system.
- This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
- In addition, the foregoing is a brief explanation of background and examples or features of the invention or certain embodiments of the invention. It is to be understood that all embodiments of the invention do not necessarily address all issues noted in the examples above or include all features or advantages noted in the summary and detailed description.
- Additional features and advantages will be made apparent from the following detailed description of embodiments that proceeds with reference to the accompanying drawings.
-
FIG. 1 is a diagram illustrating an overview of the hand-based biometric analysis techniques described herein. -
FIG. 2 is a flowchart illustrating an example process for performing hand-based biometric analysis. -
FIG. 3 is a block diagram illustrating an example system for performing hand-based biometric analysis. -
FIG. 4 is a flowchart illustrating an example process for acquiring and processing an image in the hand-based biometric analysis techniques described herein. -
FIGS. 5( a)-(c) are pictorial examples of image acquisition for the hand-based biometric analysis techniques described herein. -
FIG. 6 is a flowchart illustrating an example process for segmenting an image of a hand and forearm according to the hand-based biometric analysis techniques described herein. -
FIGS. 7( a)-(c) are examples of the segmentation process ofFIG. 6 . -
FIGS. 8( a)-(d) are examples of finger movement observed in acquired hand images. -
FIG. 9 is a flowchart illustrating an example process for segmenting an image of fingers and a palm according to the hand-based biometric analysis techniques described herein. -
FIGS. 10( a)-(d) are examples of the segmentation process ofFIG. 9 . -
FIG. 11 is an example of points on a hand where smoothing of finger image segments is desirable. -
FIGS. 12( a)-(b) are example of finger image segments before and after being smoothed. -
FIG. 13 is an example of common terms in a calculation of Zernike moments. -
FIG. 14 is a flowchart illustrating an example process for calculating Zernike moments according to the hand-based biometric analysis techniques described herein. -
FIG. 15 is an example of reconstruction of an image using Zernike moments of different orders. -
FIG. 16( a) is a graph of example errors for reconstructing finger images using Zernike moments of different orders. -
FIG. 16( b) is an example of reconstruction of a finger image using Zernike moments of different orders. -
FIG. 17( a) is a graph of example errors for reconstructing entire hand images using Zernike moments of different orders. -
FIG. 17( b) is an example of reconstruction of an entire hand image using Zernike moments of different orders. -
FIG. 18 is a flowchart illustrating an example process for fusing feature parameters using feature-level fusion according to the hand-based biometric analysis techniques described herein. -
FIG. 19 is a flowchart illustrating an example process for fusing feature parameters using score-level fusion according to the hand-based biometric analysis techniques described herein. -
FIG. 20 is a flowchart illustrating an example process for fusing feature parameters using decision-level fusion according to the hand-based biometric analysis techniques described herein. -
FIG. 21 is a block diagram illustrating an example computing environment for performing the biometric analysis techniques described herein. - The following description relates to examples of systems and methods for performing hand-based biometric analysis. While, however, much of the description herein is directed to performing image processing and analysis for images of hands, this should not be read as a limitation on the techniques and systems described herein. Similarly, although many of the descriptions herein are directed toward verification and/or identification of a person based on an acquired image of a hand, this should not be read as a requirement of all implementations of the systems and techniques described herein. Many of the processes and modules described herein may operate on other types of images, or even arbitrary images, as well as being used for purposes other than biometric analysis.
- 1. Examples of Hand-Based Biometric Analysis Techniques
- The present application presents design and implementation examples for a hand-based biometric analysis system using high-order Zernike moments. In some implementations, the biometric analysis takes the form of hand-based verification or identification.
FIG. 1 shows a block diagram illustrating, at a general level, the steps of one implementation of a biometric analysis systems according to the techniques described here, with specificity to hand-based verification. In the example system, atblock 110 an image of a hand is acquired. Next, the image undergoes preprocessing before feature analysis is performed. Thus, atblock 120, the image is binarized to produce a black and white silhouette, followed by a segmentation to separate the hand and arm segments of the image atblock 130. Then, atblock 140, a further segmentation occurs to segment fingers from the palm of the image. Next, atblocks 150, each of these segments undergo a feature extraction to create Zernike descriptors for each image segment. Then, at block, 160 the extracted feature data is fused according to techniques described herein, and a verification decision is made atblock 170, utilizing input data from a database offeature data 180. - In various implementations, the analysis and decision-making can be performed by computing Zernike descriptors for each segmented image, and then fusing the descriptors into a feature vector which can then be compared to a database of known trusted feature vectors. Alternatively, each part of the hand can be compared separately to one or more known hand segments to obtain a matching score for that part of the hand; after comparison the matching scores can be fused together to obtain an overall matching score. In another alternative, a majority-vote process can be used for to make comparisons of different image segments for verification or identification.
- As used herein, the term “verification” for an image of a hand generally refers to the determination, given a subject identifying him or herself as a particular identity and supplying an image of their hand, that the subject is believed by the system to be the particular identity. By contrast “identification” for an image of a hand generally refers to the system itself choosing a likely identity for a person given an image of their hand. Because no concrete claim of identity is made, identification frequently means comparing an image of a hand to multiple identity records. As such processes of identification are generally more complex and take more time than verification, and can be thought of as specializations of verification processes. In various implementations, the degree of belief or trust required to achieve a verification or identification may change or be modified by an administrator. Thus, the systems and techniques provided herein allow for arbitrary strengthening or weakening of the biometric analysis techniques; in various implementations modification of the relative strength of these techniques may provide for greater or fewer positive or negative identifications. Additionally, it should be noted that, while the term “biometric” is used frequently herein, the term refers only to the usage of parameters that represent a biological specimen. The term is not intended to be limited to specific measurements, such as length or width of physical hand features. Instead, the term incorporates parameters, such a Zernike moment parameters representing hand shape, which indirectly represent the shape of biological features.
- In one example of improvement of existing techniques, certain of the systems and techniques described herein can operate on 2D images acquired without reference to a particular orientation. Thus, in one example, hand images are obtained by placing a hand on a planar lighting table without requiring guidance pegs, which have traditionally been used to orient a hand during image collection to increase identification accuracy. This can improve convenience for the user by allowing a greater degree of freedom in hand orientation during image capture, both saving acquisition time and allowing providing the user with a more comfortable experience. Moreover, certain of the described systems and techniques are able to perform biometric analysis without requiring direct measurement of the hand image. Thus, these systems and techniques can operate without extracting landmarks on the fingers (e.g., finding finger joints or tips or looking for lines on a palm), a process which can be prone to error.
- In another example, the use of Zernike moments has been improved in certain implementations. Zemike moments have been employed in a wide range of applications in image analysis and object recognition. They can be, on the surface, quite attractive for representing hand shape information due to having minimal redundancy (i.e., orthogonal basis functions), and being relatively invariant with respect to translation, rotation, and scale, as well as robust to noise. In many existing applications, however, their use in biometric analysis has been limited to low-orders only or small low-resolution images. This is because high-order Zemike moments traditionally come with high computational requirements and can lack accuracy due to numerical errors. Unfortunately, these low-order moments are frequently insufficient to capture shape details accurately. Although there exist some techniques that rely on approximate polar coordinate transformations, it is difficult to obtain satisfactory results in the context of hand-based verification using these techniques because the approximations involved can negatively affect accuracy.
- These difficulties are addressed in certain implementations of the present systems and techniques by computation of Zernike descriptors which uses a modified technique which recognizes terms which show up repeatedly during computation and which performs the evaluation of these repeated terms separately. Additionally, certain terms, which can be recomputed, are stored before analysis using a lookup table to save computations. Through these implementations, present systems and techniques can, if desired, reduce computation complexity while avoiding error introduction common to existing Zernike computation techniques. Additionally, these techniques preserve can accuracy, by avoiding any form of coordinate transformations and by using arbitrary precision arithmetic. In some implementations, certain of these techniques can provide the ability to utilize various shape descriptors to provide a more powerful representation of hand shape, replacing the conventional hand-crafted geometric features.
- 2. Further Examples of Hand-Based Biometric Analysis Techniques
-
FIG. 2 shows an exemplary block diagram of a procedure for performing hand-based biometric analysis according to the systems and techniques described herein. In particular, theFIG. 2 is a flowchart of anexample process 200 for acquiring and analyzing an image of a hand. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. In one implementation, the processes ofFIG. 2 are performed by the Hand-BasedBiometric Analysis Module 300 ofFIG. 3 . Various processes ofFIG. 2 may be performed by software or hardware modules; examples of such modules are found as sub-modules ofmodule 300. Additionally, various processes described herein may be shared by modules illustrated inFIG. 3 or may be performed by modules which are not illustrated. The process begins atblock 210, at which an image of a hand is acquired and processed. In one implementation, this process is performed by theimage acquisition system 310 ofFIG. 3 . Additional detail about the processes ofblock 210 can be found below. - The process continues to
blocks block 220, while the hand image is further segmented atblock 230 into separate finger and palm segments. In one implementation the arm image is discarded after the process ofblock 220. In one implementation, the processes of blocks 210-230 are performed by theimage segmentation module 320 ofFIG. 3 . Further detail about the processes ofblocks - In an alternative implementation, the finger-palm segmentation procedure of
block 230 is not performed. However, although Zernike moments can tolerate certain finger movement (e.g., 6 degrees rotation about the axis being perpendicular to the joint of the finger with the palm), Zernike moments become more sensitive when the fingers move close to each other. Moreover, Zernike moments generally cannot tolerate very well situations where the hand is bent at the wrist. Thus, the finger segmentation process ofblock 230 can aid in improving both the accuracy and the processing speed of the systems shown here. - Next, at
block 240, the system performs feature extraction of the images by computing the Zernike moments of each image segment independently to obtain feature parameters. In one implementation, the processes ofblock 240 are performed by theimage analysis module 340 ofFIG. 3 . Finally, atblock 250, feature parameters, typically in the form of Zernike descriptors obtained by computation of Zernike moments atblock 240 are compared to known hand image data to determine if the currently-analyzed hand image is similar to previously-analyzed images. Further detail about the processes ofblocks block 250 are performed by thedecision module 360 ofFIG. 3 and utilize stored feature parameters kept in thedata storage 380. In various implementations, the data storage may also contain additional biometric or identity data, such that identify records can be kept, and/or may contain repeated terms used in Zernike moment computation, as will be explained in detail below. In various implementations thedata storage 380 comprises more-structured storage implementations, such as a database (as in the earlier example) or alternatively may comprise less-structured storage implementations, such as a drive or a disk array. - 3. Examples of Image Acquisition
-
FIG. 4 shows an exemplary block diagram of a procedure for performing hand-based biometric analysis according to the systems and techniques described herein, and in particular, the processes performed by theimage acquisition system 310 when performing the processes ofblock 210. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. The process begins atblock 410, where the image of a hand is captured. One example of an image acquisition system according to the techniques described herein consists of a VGA resolution CCD camera and a planar lighting table, which provides the surface on which a hand may be placed. An example of such a system can be found inFIG. 5 a, in which the direction of the camera is perpendicular to the lighting table. In the example, the camera has been calibrated to remove lens distortion. In the illustrated implementation, the image obtained by the camera is of the back of the hand being analyzed. In some applications, biometric analysis can be performed on such an image without the need to acquire an image of the front of the hand, or of any particular lines or features of the palm or fingers. However, in alternative implementations, the biometric analysis may be augmented through additional image (or other biometric) analysis techniques, such as the analysis of finger or hand prints. - In alternative implementations both the camera and the lighting table can be placed inside a box to more effectively eliminate light interferences from a surrounding environment. However, the depicted implementation, especially when utilized alongside the biometric analysis techniques described herein, provides images of high-enough quality without much effort to control the environment that they can be used in biometric anlaysis. When the user places his/her hand on the surface of the lighting table, an almost binary, shadow, and noise free silhouette of the hand is obtained (e.g., the examples shown in
FIGS. 5 b and 5 c. Another alternative implementation uses a flatbed scanner tuned to capture the hand silhouette. Yet another implementation processes the image through a threshold or filter to create a silhouette with a more stark contrast to facilitate later analysis. - In one implementation, during the acquisition process users are asked to stretch their hand and place it inside a large rectangular region marked on the surface of the table. This facilitates visibility of the whole hand and avoids perspective distortions. However, while various implementations may utilize broad directions in order to facilitate analysis. In the illustrated implementation, there are no limitations on the orientation of the hand. This can provide an advantage over previous implementations, which typically require the use of pegs or other strict orientation guides.
- The images can be captured using a gray scale camera; in another implementation, however a color CCD camera can be used if available. Thus, in
block 420, if the image is taken in color, it is modified to create a grayscale image. One implementation of such a process uses the luminance values of pixels to obtain a grayscale image. For instance, luminance Yi,j of a pixel (i,j) can be given by Yi,=0.299Ri,+0.587Gi,+0.114Bi, (6) where Ri,,Gi,,Bi, denote the RGB values of a pixel. Next, atblock 430, the grayscale image is binarized to create a binary image (e.g. an image containing only black and white pixels), in order to facilitate later analysis. The binary value Bi,j of a pixel can be calculated as -
- where T is a constant threshold. In one implementation, this threshold is determined experimentally; one exemplary value for the threshold is T=0.5. The resulting silhouette is accurate and consistent due to the design of the image acquisition system. This is useful for the use of high order Zernike moments as Zernike moments can be sensitive to small changes in silhouette shape.
- 4. Examples of Image Segmentation
- As discussed above, after processing of an image, the image segmentation module performs the segmentation of the hand, forearm and fingers. One example segmentation process is summarized as follows. In one implementation, for separating the forearm from the hand, first the palm is detected by finding the largest circle inside the hand/arm silhouette. Then the intersection of the forearm with the circle's boundary and image boundary is found to segment the hand. In one implementation, in order to segment the fingers and the palm, the fingers are filtered out first using morphological closing; next, the palm is subtracted from the whole silhouette to segment fingers. The fingers image segments are then processed to remove artifacts of the previous segmentation which could affect analysis. Details of these processes follow.
- In the examples discussed above, the binary silhouette provided by the acquisition module is the union of the hand and the forearm. The forearm, however, does not have as many distinctive features, and its silhouette at different acquisition sessions is not expected to be the same due to clothing and freedom in hand placement. Thus, the present embodiment removes the forearm segment before continuing image processing.
- To segment the forearm, one implementation utilizes an assumption that a user providing a hand image is not wearing very loose clothing on the arm. Under this assumption, the palm can be identified as becomes a thicker region of the silhouette, which enables the palm's detection through the finding of the largest circle inside the silhouette.
-
FIG. 6 is a flowchart of anexample process 600 for segmenting an acquired arm/hand image to remove the forearm segment. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. The process begins atblock 610, where theimage segmentation module 320 initializes a circular structuring element D with a very large radius R. Next, atblock 620, themodule 320 applies a closing operator on the image using D. Then, atdecision block 625, the module determines if the output is an empty image. If the output is empty, then atblock 630 the size of the circle element is reduced (e.g. by setting R:=R−1) and the process returns to block 620. If the circle is not empty, then the resulting image from the closing operator should be the largest circle inside the silhouette. One example of an output of this procedure on a sample image is illustrated inFIG. 7 b. Thus, atblock 640, once the largest circle is found, the arm is segmented by detecting its intersection with the circle and the boundary of the image; the arm portion of the image can then be removed atblock 650.FIG. 7 c shows the resulting silhouette after discarding the arm region. - Segmentation of finger and palm portions can also be useful to obtain an accurate hand analysis. In one implementation, to support accurate image capture and analysis, users are instructed to stretch their hands in order to avoid touching fingers. However, finger motion is often unavoidable. An example of samples collected from the same user, shown in
FIGS. 8( a)-8(d), illustrates this. As can be seen, the angles between fingers can change significantly between different samples. And while Zernike moments can tolerate finger motion to some degree, however, in order to deal with the potential for large finger motion, the present embodiment segments the fingers and palm to be processed separately. This segmentation, by providing multiple groups of feature parameters can allow for more focused optimization (such as by selecting different orders for Zernike moments for different segments), thus increasing potential accuracy. - One example of such segmentation processing is shown in
FIG. 9 . To perform this segmentation, first, a morphological closing operation based on a circular disk is applied on the input image, as shown inFIG. 10( a). In one implementation of the operation, the radius of the structuring element was experimentally set to 25 pixels (i.e., making it thicker than a typical widest finger found in an exemplary database of examples). This closing operation filters out the fingers from the silhouette, as shown inFIGS. 7( b) and 7(c). The remaining part of the silhouette (e.g.FIG. 7( c)) corresponds to the palm, which is then subtracted from the input image to obtain the finger segments, as shown inFIG. 7( d). In another technique, fingers are segmented from a palm by detecting landmark points on the hand, such as fingertips and valleys, such as is performed in some traditional hand-based verification techniques. However, these techniques tend to be prone to errors due to inaccuracies in landmark detection and thus are not used in the exemplary implementations. In one implementation, finger regions are individually identified using connected components analysis. - As
FIG. 10( d) illustrates, however, due to the segmentation process the segmented fingers often have sharp tails at the locations where they meet the palm. The curvature of the hand contour at these locations is less severe for the little, point, and thumb fingers, as shown inFIG. 11 . As a result, because these fingers are not as easily cut off by finger segmentation, for a given segmentation there may be significant differences in the length of the tails corresponding to these fingers. Examples of these differences are shown as shown inFIG. 12( a), where different samples from the same subject are shown. In some cases, especially when the hand is small, there are significant differences in the length of the tails, which can make accurate and efficient computation of Zernike moments difficult. - To remove these tails, thus facilitating later analysis, the process of
FIG. 9 continues atblock 930, where finger segments are smoothed out by applying an extra morphological closing step. In one implementation, this closing step is performed with a simple 4 by 4 square with values set to one. The benefit of such processing can be observed by comparing the finger image segments ofFIG. 12( a) toFIG. 12( b). The circles in the Figures illustrate circles which can enclose each finger. Thus, by applying this closing processing, the amount of tail reduction can easily be seen. Additional benefits of this smoothing step can be seen in the following Table, which illustrates the effect of this process by showing the normalized distances between the circles surrounding pairs of corresponding fingers shown inFIGS. 12( a) and 12(b): -
Pair of Fingers dbefore dafter Little 0.5904 0.0901 Point 0.7881 0.1135 Thumb 0.7424 0.1253 - As the table shows, the application of a smoothing processing step has the potential to improve matching scores considerably by reducing the difference between successive scans of the same finger.
- 5. Examples of Zernike Moment Computation
- In various implementations, once various segments have been identified for a hand silhouette, Zernike moments are computed for each of the various segments in order to arrive at a set of Zemike descriptors (such as in
block 240 ofFIG. 2 ). It is these descriptors that are used, either as they are created or in a fused form, as feature parameters, which can be stored for future hand-based biometric analysis or compared against previously-stored feature parameters to determine if the hand is the same as a known hand. - Generally, Zernike moments are based on a set of complex polynomials that form a complete orthogonal set over the interior of the unit circle. A Zernike moment for an image is defined as the projection of the image on these orthogonal basis functions. Specifically, the basis functions Vn,m(x, y) are given by:
-
V n,m(x,y)=V n,m(ρ,θ)=R n,m(ρ)e jmθ 2 - where n is a nonnegative integer known as the “order” of the Zernike moment resulting from these functions. Additionally, in the implementation given as equation 2, j=√{square root over (−1)}, m is a nonzero integer subject to the constraints that n−m is even and m<n, ρ is the length of the vector from origin to (x,y), θ is the angle between the vector and the x axis in a counter clockwise direction, and Rn,m(ρ) is what is known as a Zernike radial polynomial. Rn,m(ρ) is defined as follows:
-
- which is denoted, for the sake of simplicity of terminology, as:
-
- From this definition, it follows that Rn,m(ρ)=Rn,−m(ρ), and from the orthogonality of the basis functions Vn,m(x, y), the following holds:
-
- It is this orthogonality that, in part, allows the Zernike functions to provide a useful basis for an image function.
- For a digital image defined by a digital image function f(x, y), then, the Zernike moment of order n with repetition is given by:
-
- where V*n,m(x, y) is the complex conjugate of V*n,m(x, y). In some of the examples described herein, the digital image function f(x, y) need only describe, for each (x, y) pair, whether the pixel at that point in the binary image is on or off. In alternative implementations, more complex digital image functions may be used.
- To compute the Zernike moments of a given image, in one implementation the center of mass of the object is taken to be the origin. As Equation 7 shows, because the radial polynomial is symmetric, the magnitude of the Zernike moments are rotation invariant. By taking the center of mass to be the origin before computing a Zernike moment, the moments are, barring subtle changes in images, essentially translation-invariant as well. Thus, for substantially-similar images, their Zernike moments will be substantially similar, even if one is rotated or moved around. Similarly, in some implementations the systems and techniques scaled images inside a unit circle to provide scale invariance.
- In some implementations, once Zernike moments have been determined for an image (such as that of a hand), the image can be reconstructed. This reconstruction is not necessary for every implementation of creating and comparing a database of hand-based verification data, however. This can be done using the following truncated expansion:
-
- where N is the maximum order of Zernike moments being used, and Cn,m and Sn,m denote, respectively, the real and complex parts of the Zernike moment terms Zn,m. This reconstruction may be used, for example, to illustrate a hand image chosen from a database of images upon analysis; this could provide additional feedback to a user or operator of a biometric analysis apparatus.
- As mentioned above, one method used in existing systems to improve the speed of Zernike moments computation involves using a quantized polar coordinate system. In one such technique, a square to a circle transformation was employed for this purpose. In another, for an M×M image, angles were quantized to 4M levels and radii were quantized to M levels. Quantization techniques such as these suffer from a side effect, however, as errors are introduced in the computation of high order Zernike moments.
- The described procedures that follow employ improved techniques that avoid using quantization, providing computation of the moments with comparable accuracy to traditional approaches (e.g., no approximations). To save computation time, these techniques find terms which occur repeatedly in various orders. Once these terms are computed, they are stored to avoid re-computing the terms later, and are available to be linearly combined with other pre-computed terms. These other terms are stored in a lookup table (such as in the data storage 380) and do not depend on any underlying image for which Zernike moments are being computed. Additionally, in one implementation, arbitrary precision arithmetic is used to increase accuracy.
- The terms that can be isolated for repeat usage can be found through substitution of Equations 4 and 2 into Equation 7, which results in the following equation:
-
- It is this final summation (shown in parenthesis at the end) that can be isolated to determine repeating terms. For the sake of simplicity of terminology then, Equation 9 can be rewritten to clarify the repeating term:
-
- Because these χm,k terms do not rely on order number for their computation, once an image function is defined, the χm,k terms defined in
Equation 10 can be re-used as common terms in future computation of moments. In some implementations, it would be possible, while computing Zernike moments up to order N, for a process to compute χm,k for each repetition. However, asFIG. 7 shows, computing χm,k once and recording these for future use is enough for computing Zernike moments of any order and any repetition by simply taking linear combinations as shown inEquation 10.FIG. 13 illustrates one example of common terms for Zernike moments up toorder 10 for repetition m=0. Moreover, the coefficients βn,m,k (detailed in Equations 3 and 4) do not depend on an image function or coordinates; therefore, they can be stored ahead of time in a small lookup table to save computation. -
FIG. 14 is a flowchart of anexample process 1400 performed by theImage Analysis Module 340 for computing Zernike moments for an image using stored and re-used terms. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. The process begins atblock 1410, where the βn,m,k terms, as defined above, are computed and stored in a lookup table for later use. In various implementations, this process may be performed before any image acquisition is performed, as the βn,m,k terms do not rely on an image; alternatively the computation may be performed during image acquisition or analysis. Next, atblock 1420, the various terms which are needed for computation of the Zernike moment for the image being analyzed are determined. As discussed above, this will change to some degree based on the chosen order of the Zernike moments and the repetition. The process then continues to a loop atblock 1430, where a sub-process is performed for each term in the linear combination ofEquation 10 used to compute a Zernike moment for the image. Thus, atdecision block 1435, themodule 340 determines if the necessary χm,k term in question at this point in the loop has been computed already. If not, atblock 1440 the module computes the term using the image function and stores the term for later use. If, instead the χm,k term has been computed, then atblock 1450 the term is recovered from storage. Next, atblock 1460 the χm,k and βn,m,k are combined in the linear combination ofequation 10, and the loop continues atblock 1470. - Some implementations of the systems and methods described herein also may take advantage of adjustments in numerical precision in calculating Zernike moments to increase accuracy and/or efficiency. Depending on image size and maximum order chosen, double precision arithmetic may not provide enough precision; serious numerical errors can be introduced in the computation of moments under these conditions. The use of arbitrary precision arithmetic can overcome some of these limitations of double precision arithmetic and avoid undesired errors.
- Consideration of the order of the Zernike moments affects both reconstruction accuracy as well as computational efficiency. This effect is demonstrated in
FIG. 15 , where the 300×300 binary input image at the top-left corner is reconstructed using different orders of Zernike moments. Traditionally, capturing the details of the input image usually utilizes high orders. Using high orders is often not practical, however, due to information redundancy and computational complexity issues. Additionally, there is an inherent limitation in the precision of arbitrary high-order Zernike moments due to the circular geometry of their domain. Thus, in some implementations, the minimum order that still provides high verification accuracy is determined. - To determine this minimum order, one implementation uses the average reconstruction error on a large number of hand images to decide the maximum moment order that would be useful in the context of the biometric analysis described herein.
FIG. 16( a) shows the reconstruction error of fingers for different orders. As it can be observed, the error almost saturates for orders higher than 40. InFIG. 16( b), the reconstructions of a finger for different orders are shown. InFIG. 16( b), the first image is the original image, while, from left to right, top to bottom, reconstructed images of original image are shown up toorder FIG. 16( a) is visually evident inFIG. 16( b). By contrast,FIGS. 17( a) and 17(b) show a similar reconstruction error graph and reconstructed images for an image of an entire hand. The reconstructed images ofFIG. 17( b) are for the same orders as in the images ofFIG. 16( b). AsFIGS. 17( a) and 17(b) show, a higher order is necessary for good precision when attempting to precisely analyze an entire hand. - The cost of higher-order Zernike moment computation is very high, especially when precision is a requirement. Using one implementation for computing high order Zernike moments, it takes typically six minutes to compute Zernike moments up to
order 70, while it takes only 35 seconds to compute moments up toorder 30. One reason for low execution speed is the use of arbitrary precision arithmetic. However, experimentation has found that moments of up toorder 30 can be computed with relatively high accuracy even without the use of arbitrary-precision arithmetic. Thus, in an alternative implementation, a hybrid implementation is used, where the use of arbitrary precision arithmetic is restricted to high orders only, increasing system speed. In one such implementation, it was experimentally found that using double precision instead of arbitrary precision arithmetic to compute moments up to order 36 yielded an error of less than 0.5%. Additional alternative hardware implementations using FPGAs can speed up the process as well. - This great increase in speed and reduction in complexity for lower orders supports the segmentation of the hand into finger and palm segments, as described above. As for the chosen order for the image segments, the experimentally-obtained order chosen to represent fingers in one implementation of the system is 20, while the order chosen to represent a palm is 30. In various implementations, a maximum order depends on the resolution of the image. Experimental results justify this implementation decision. To decrease the size of feature parameters, one implementation uses dimensionality reduction based on Principal Components Analysis (PCA).
- 6. Examples of Fusion and Identity Decision-Making
- Following feature extraction, various implementations utilize some form of data fusion and comparison to determine if the hand image being analyzed matches any known hands. Various implementations may employ score-level fusion, feature-level fusion, or decision-level fusion (or some combination thereof) to make comparisons between the hand images which are being analyzed and known images. The methods differ in order and way in which they fuse and compare data. In a score-level fusion implementation, Zernike descriptors are compared segment-by-segment with known descriptors to obtain scores for each segment. These scores are then fused to arrive at an overall score for the hand image. In a feature-level fusion implementation, Zernike descriptors are fused together into a single descriptor for the hand, possibly along with dimensionality reduction or feature selection. This descriptor is then compared to previously-stored hand descriptors to obtain a matching score. In alternative implementations, other methods of comparing data obtained by computing Zernike moments may be employed.
- The fusion, comparison, and decision processes described below describe the use of storage feature parameter records, in particular comparisons to them. While the processes described below are not made with reference to a particular number of records, in various implementations, the processes described herein may utilize one or more feature parameter records per person or per segment. Thus, in one implementation, a comparison between parameters for a just-acquired image may only involve comparison with a single stored set of parameters for that image. In an alternative implementation, multiple sets of enrollment templates, each a set of feature parameters, may be kept for each image or image segment. In such an implementation, comparison can take the form of comparing parameters for an acquired segment with multiple enrollment templates. In one such implementation, if a score, or distance, is being calculated between the just-acquired parameter set and the recorded sets (such as is described herein), the score can be calculated as the smallest such score found from the comparisons. Thus, if feature parameters for a thumb are compared to five thumb enrollment templates for a given identity, the score is taken as the lowest out of the five comparisons. In another implementation, a mathematical manipulation may be performed on the various scores to arrive at a combined score for that segment.
-
FIG. 18 is a flowchart of anexample process 1800 performed by thedecision module 360 for fusing data associated with Zernike descriptors using feature-level fusion and comparing data to known hand samples. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. In one implementation, Principal Components Analysis is used in the implementation of the procedure. The process begins atblock 1820, where themodule 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands. Next, atblock 1830, Zernike descriptors of the fingers and the palm are fused into a feature vector which represents the overall geometry of the hand. The resulting representation, in certain implementations, is invariant to various transformations, including translation, rotation and scaling transformations. - Next, at
block 1840, the fused data is used to compare the present hand which is being analyzed to previously-collected data. During one implementation of the biometric analysis process, the Euclidean distance between the query and the templates provides a similarity score for verification purposes. In one implementation, multiple enrollment templates are employed per subject and the smallest distance between the query and a subject's templates indicates the similarity of the query to that subject. In various implementations, the comparison may be performed with reference to a single stored feature vector (for example if a particular identity is being verified) or multiple comparisons may be made with a plurality of stored feature vectors, in order to identify the owner of a hand. - Next, at
decision block 1855, the difference, or differences, in the scores is compared to a identification threshold. The value chosen for the threshold can affect the level of security provided by the biometric analysis. Thus, a higher threshold value could result in false positive identifications (or verifications), while too low a value could result in false negatives. In one implementation, such a threshold is pre-determined experimentally or according to operational requirements, such as security level, or the identity of the person being compared. Finally, depending on the decision made atdecision block 1855, the system either reports a positive decision (for verification or identification) atblock 1870 or a negative decision atblock 1880. The process then ends. - By comparison,
FIG. 19 is a flowchart of anexample process 1900 performed by thedecision module 360 for fusing data associated with Zernike descriptors using score-level fusion and comparing data to known hand samples. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. The process begins atblock 1920, where themodule 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands. Next, atblock 1930, the feature parameter descriptors for each segment (e.g. the palm and each finger) are compared individually to stored descriptors. Similarly to the implementations discussed above, this may be done with reference to a particular stored set of descriptors, or with a plurality of stored descriptors. - Next, depending on the implementation, the score-level fusion procedure may make a decision based on a weighted sum analysis or using support vector machines. If the implementation is using weighed-sum, then at
block 1940, these scores are fused into an overall score using weighted summation. To verify (or identify) a user, the module compares the input image with the templates stored in the database and picks the template with the minimum distance from the input. Specifically, given the matching scores s, for i=1 . . . 6, the overall score S is obtained as follows: -
- Where S denotes the similarity measure (e.g. Euclidean distance) between the query Q and the template T. Qi and Ti represent the i-th part of the hand. In one implementation, the first five parts correspond to the little, ring, middle, point, and thumb fingers while the sixth party corresponds to the back of the palm. The parameters αi are the weights associated with the i-th part of the hand. In one implementation, they satisfy the following constraint:
-
- In a feature-level fusion implementation, a similar weighed scheme may be used to determine the fused vectors.
- Determining the proper weights to be used in the summation is of importance to obtain good accuracy. In one implementation, weights are determined experimentally through a search over an empirically determined set of weights to maximize accuracy over a small database of 80 samples from 40 subjects. Feature vectors are fully invariant to translations and rotations. As a result, generally any type of distance metric can be used for computing similarities by the
decision module 360. Next, atdecision block 1945, the score is compared to a identification threshold, similarly to the feature-level fusion described above, to determine if it is below the threshold. Finally, depending on the decision made atdecision block 1945, the system either reports a positive decision (for verification or identification) atblock 1970 or a negative decision atblock 1980. The process then ends. - In an alternative implementation, support vector machines are used. A support vector machine (“SVM”) is a binary classifier that maps input patterns X to output labels y∈−1,1. In general, an SVM has the following form:
-
- where αi are Lagrange multipliers, Ω corresponds to the indices of the support vectors for which αi≠0,b is a bias term, X is an input vector, and K(X,Xi) is a kernel function. Classification decisions are based on whether the value f(X) is above or below a threshold, and thus can be adjusted for greater or lesser security similarly to the processes above by adjusting the threshold. Given a pair of hands to be verified, the input vector X is composed of the scores between corresponding parts of the hand. Assigning the input vector to the class “1” implies that both hands come from the same subject while assigning it to the class “−1” implies that they come from different subjects.
- Thus, in implementations utilizing a support vector machine, at
block 1950 the previously-obtained scores are mapped to either a positive or negative decision according to the output of the SVM. At this point, either a positive or negative decision is then reported in eitherblock -
FIG. 20 is a flowchart of anexample process 2000 performed by thedecision module 360 for fusing data associated with Zernike descriptors using a decision-level fusion process and comparing data to known hand samples. The illustrated implementation depicts a process for “majority voting.” Majority voting is among the most straightforward decision-level fusion strategies. In various implementations, the illustrated process blocks may be merged, divided into sub-blocks, or omitted. The process begins atblock 2020, where themodule 360 receives Zernike descriptors obtained by the hand-image analysis for comparison to known hands. Next, atblock 2030, the feature parameter descriptors for each segment (e.g. the palm and each finger) are compared individually to stored descriptors to obtain scores for each segment. Similarly to the implementations discussed above, this may be done with reference to a particular stored set of descriptors, or with a plurality of stored descriptors. - Next, at
decision block 2045, thedecision module 360 determines if a majority of the scores are below one or more preset thresholds. Thus, different thresholds may be set for each type of segment, although in some implementations thresholds could be repeated. Then, if a majority of the segments have scores below the threshold, at block 2070 a positive decision is reported. If not, at block 2080 a negative decision is reported. The process then ends. - 7. Computing Environment
- The above hand-based biometric analysis techniques and systems can be performed on any of a variety of computing devices. The techniques can be implemented in hardware circuitry, as well as in software executing within a computer or other computing environment, such as shown in
FIG. 21 . -
FIG. 21 illustrates a generalized example of asuitable computing environment 2100 in which described embodiments may be implemented. Thecomputing environment 2100 is not intended to suggest any limitation as to scope of use or functionality of the invention, as the present invention may be implemented in diverse general-purpose or special-purpose computing environments. - With reference to
FIG. 21 , thecomputing environment 2100 includes at least oneprocessing unit 2110 andmemory 2120. InFIG. 21 , this mostbasic configuration 2130 is included within a dashed line. Theprocessing unit 2110 executes computer-executable instructions and may be a real or a virtual processor. In a multi-processing system, multiple processing units execute computer-executable instructions to increase processing power. Thememory 2120 may be volatile memory (e.g., registers, cache, RAM), non-volatile memory (e.g., ROM, EEPROM, flash memory, etc.), or some combination of the two. Thememory 2120stores software 2180 implementing the described techniques. - A computing environment may have additional features. For example, the
computing environment 2100 includesstorage 2140, one ormore input devices 2150, one ormore output devices 2160, and one ormore communication connections 2170. An interconnection mechanism (not shown) such as a bus, controller, or network interconnects the components of thecomputing environment 2100. Typically, operating system software (not shown) provides an operating environment for other software executing in thecomputing environment 2100, and coordinates activities of the components of thecomputing environment 2100. - The
storage 2140 may be removable or non-removable, and includes magnetic disks, magnetic tapes or cassettes, CD-ROMs, CD-RWs, DVDs, or any other medium which can be used to store information and which can be accessed within thecomputing environment 2100. Thestorage 2140 stores instructions for thesoftware 2180 implementing the described techniques. - The input device(s) 2150 may be a touch input device such as a keyboard, mouse, pen, or trackball, a voice input device, a scanning device, or another device that provides input to the
computing environment 2100. For audio, the input device(s) 2150 may be a sound card or similar device that accepts audio input in analog or digital form, or a CD-ROM reader that provides audio samples to the computing environment. The output device(s) 2160 may be a display, printer, speaker, CD-writer, or another device that provides output from thecomputing environment 2100. - The communication connection(s) 2170 enable communication over a communication medium to another computing entity. The communication medium conveys information such as computer-executable instructions, compressed audio or video information, or other data in a modulated data signal. A modulated data signal is a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media include wired or wireless techniques implemented with an electrical, optical, RF, infrared, acoustic, or other carrier.
- The techniques described herein can be described in the general context of computer-readable media. Computer-readable media are any available media that can be accessed within a computing environment. By way of example, and not limitation, with the
computing environment 2100, computer-readable media includememory 2120,storage 2140, communication media, and combinations of any of the above. - The techniques herein can be described in the general context of computer-executable instructions, such as those included in program modules, being executed in a computing environment on a target real or virtual processor. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The functionality of the program modules may be combined or split between program modules as desired in various embodiments. Computer-executable instructions for program modules may be executed within a local or distributed computing environment.
- For the sake of presentation, the detailed description uses terms like “determine,” “calculate,” and “compute,” to describe computer operations in a computing environment. These terms are high-level abstractions for operations performed by a computer, and should not be confused with acts performed by a human being. The actual computer operations corresponding to these terms vary depending on implementation.
- In view of the many possible variations of the subject matter described herein, we claim as our invention all such embodiments as may come within the scope of the following claims and equivalents thereto.
Claims (21)
1.-2. (canceled)
3. A method of determining identity using a computing system that implements a biometric analysis tool, the method comprising:
with the computing system that implements the biometric analysis tool, performing biometric analysis on an image of a hand to produce plural feature parameters without requiring a particular orientation of the hand during image capture and without requiring a particular orientation of the hand during the biometric analysis, wherein the biometric analysis includes:
determining a silhouette representation from the image of the hand; and
using the silhouette representation to determine the plural feature parameters, each of the plural feature parameters indicating geometry of a different part among palm and plural fingers of the hand; and
making an identity decision based at least in part on the plural feature parameters and stored descriptors representing one or more previously-analyzed hand images.
4. The method of claim 3 , wherein a different weight is associated with each of the plural feature parameters, respectively.
5. The method of claim 3 , wherein the plural feature parameters resulting from the biometric analysis are invariant to rotation, scale and translation.
6. The method of claim 3 , wherein the image represents a back view of the hand, and wherein determining the silhouette representation comprises, for each pixel value of plural pixel values of the image:
comparing the pixel value to a threshold;
if the pixel value satisfies the threshold, assigning the pixel value a first binary value; and
otherwise, assigning the pixel value a second binary value.
7. The method of claim 3 , wherein the biometric analysis is performed without reference to direct physical measurements of the image of the hand or the silhouette representation, and wherein the biometric analysis is performed without reference to landmark points within the image of the hand or the silhouette representation.
8. The method of claim 3 , wherein the biometric analysis further comprises segmenting the silhouette representation, including:
filtering out the plural fingers from the silhouette representation to identify a segment image for the palm;
removing the palm from the silhouette representation to identify segment images for the plural fingers, respectively.
9. The method of claim 3 , wherein the identity decision is a verification decision, and wherein the making the identity decision comprises:
selecting a particular descriptor among the stored descriptors; and
verifying identity using the plural feature parameters and the particular descriptor.
10. The method of claim 3 , wherein the identity decision is an identification decision, and wherein the making the identity decision comprises:
identifying a matching descriptor among the stored descriptors using the plural feature parameters and each of the stored descriptors, respectively, until the matching descriptor is identified.
11. The method of claim 3 , wherein the making the identity decision uses a threshold, the method further comprising setting the threshold depending on security level.
12. The method of claim 3 , wherein the making the identity decision is further based at least in part on separate fingerprint data, other biometric data and/or other identity data.
13. The method of claim 3 , wherein the making the identity decision uses feature-level fusion and includes:
combining the plural feature parameters into a feature vector, including using a different weight associated with each of the plural feature parameters as part of the combining the plural feature parameters into the feature vector; and
for a given stored descriptor of the stored descriptors, comparing the feature vector with a stored vector for the given stored descriptor, wherein the identity decision is based at least in part on the comparing the feature vector with the stored vector for the given stored descriptor.
14. The method of claim 3 , wherein the making the identity decision uses score-level fusion and includes, for a given stored descriptor of the stored descriptors:
for each feature parameter of the plural feature parameters:
comparing the feature parameter to a corresponding parameter for the given stored descriptor; and
calculating a score value for the feature parameter based at least in part on a different weight associated with the feature parameter and the comparing the feature parameter to the corresponding parameter for the given stored descriptor;
calculating an overall score value based at least in part on the score values for the respective feature parameters; and
comparing the overall score value to a threshold, wherein the identity decision is based at least in part on the comparing the overall score value to the threshold.
15. The method of claim 3 , wherein the making the identity decision uses score-level fusion and includes, for a given stored descriptor of the stored descriptors:
for each feature parameter of the plural feature parameters, comparing the feature parameter to a corresponding parameter for the given stored descriptor; and
using support vector machine classification to map results of the comparing for the plural feature parameters, respectively, to the identity decision.
16. The method of claim 3 , wherein the making the identity decision uses decision-level fusion and includes, for a given stored descriptor of the stored descriptors:
for each feature parameter of the plural feature parameters:
comparing the feature parameter to a corresponding parameter for the given stored descriptor to produce a feature score value; and
determining whether the feature score value satisfies one or more thresholds;
wherein the identity decision is based at least in part on the determination of whether the feature score values for the plural feature parameters satisfy the one or more thresholds.
17. The method of claim 3 , further comprising adjusting a different weight associated with each of the plural feature parameters, a threshold and/or other setting of the biometric analysis tool based at least in part on the identity decision.
18. A computing system that implements a biometric analysis tool, the computing system including:
a processing unit; and
memory storing computer-executable instructions for causing the computing system to perform biometric analysis operations comprising:
performing biometric analysis on an image of a hand to produce plural feature parameters without requiring a particular orientation of the hand during image capture and without requiring a particular orientation of the hand during the biometric analysis, wherein the biometric analysis includes:
determining a silhouette representation from the image of the hand; and
using the silhouette representation to determine the plural feature parameters, each of the plural feature parameters indicating geometry of a different part among palm and plural fingers of the hand; and
making an identity decision based at least in part on the plural feature parameters and stored descriptors representing one or more previously-analyzed hand images.
19. The computing system of claim 18 , wherein the image of the hand is received from an image acquisition device that lacks pegs to guide the orientation of the hand.
20. A memory device storing computer-executable instructions for causing a processor, when programmed thereby, to perform biometric analysis operations comprising:
performing biometric analysis on an image of a hand to produce plural feature parameters without requiring a particular orientation of the hand during image capture and without requiring a particular orientation of the hand during the biometric analysis, wherein the biometric analysis includes:
determining a silhouette representation from the image of the hand; and
using the silhouette representation to determine the plural feature parameters, each of the plural feature parameters indicating geometry of a different part among palm and plural fingers of the hand; and
making an identity decision based at least in part on the plural feature parameters and stored descriptors representing one or more previously-analyzed hand images.
21. The memory device of claim 20 , wherein a different weight is associated with each of the plural feature parameters, respectively.
22. The memory device of claim 20 , wherein the plural feature parameters resulting from the biometric analysis are invariant to rotation, scale and translation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/673,593 US20150261992A1 (en) | 2006-06-16 | 2015-03-30 | Hand-based biometric analysis |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US81416306P | 2006-06-16 | 2006-06-16 | |
US11/820,474 US9042606B2 (en) | 2006-06-16 | 2007-06-18 | Hand-based biometric analysis |
US14/673,593 US20150261992A1 (en) | 2006-06-16 | 2015-03-30 | Hand-based biometric analysis |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/820,474 Continuation US9042606B2 (en) | 2006-06-16 | 2007-06-18 | Hand-based biometric analysis |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150261992A1 true US20150261992A1 (en) | 2015-09-17 |
Family
ID=41568684
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/820,474 Expired - Fee Related US9042606B2 (en) | 2006-06-16 | 2007-06-18 | Hand-based biometric analysis |
US14/673,593 Abandoned US20150261992A1 (en) | 2006-06-16 | 2015-03-30 | Hand-based biometric analysis |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/820,474 Expired - Fee Related US9042606B2 (en) | 2006-06-16 | 2007-06-18 | Hand-based biometric analysis |
Country Status (1)
Country | Link |
---|---|
US (2) | US9042606B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550677A (en) * | 2016-02-02 | 2016-05-04 | 河北大学 | 3D palm print identification method |
US20170090584A1 (en) * | 2015-09-25 | 2017-03-30 | Apple Inc. | Multi Media Computing Or Entertainment System For Responding To User Presence And Activity |
CN106971157A (en) * | 2017-03-22 | 2017-07-21 | 重庆科技学院 | Fingerprint and face coupled identification method based on multiple linear regression associative memory model |
US20200134146A1 (en) * | 2018-10-31 | 2020-04-30 | EMC IP Holding Company LLC | Biometric Authentication Using Selected Manipulation of Biometric Samples |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200907827A (en) * | 2007-08-08 | 2009-02-16 | Acer Inc | System and method for performing objects with bio-characteristics recognition |
CN101382934B (en) * | 2007-09-06 | 2010-08-18 | 华为技术有限公司 | Search method for multimedia model, apparatus and system |
ES2731898T3 (en) * | 2009-03-18 | 2019-11-19 | Fujitsu Ltd | Biometric data acquisition device |
US8655084B2 (en) * | 2009-06-23 | 2014-02-18 | Board Of Regents Of The Nevada System Of Higher Education, On Behalf Of The University Of Nevada, Reno | Hand-based gender classification |
FR2952738B1 (en) * | 2009-11-17 | 2012-01-13 | Advestigo | METHOD AND SYSTEM FOR AUTOMATICALLY CONTROL AND AUTHENTICITY OF IDENTITY DOCUMENT |
KR20110064197A (en) * | 2009-12-07 | 2011-06-15 | 삼성전자주식회사 | Object recognition system and method the same |
TWI489317B (en) * | 2009-12-10 | 2015-06-21 | Tatung Co | Method and system for operating electric apparatus |
WO2011150197A2 (en) | 2010-05-27 | 2011-12-01 | Aware Inc | Biometric feature extraction using multiple image instantiations |
US8548206B2 (en) | 2011-01-20 | 2013-10-01 | Daon Holdings Limited | Methods and systems for capturing biometric data |
CN102136063A (en) * | 2011-03-15 | 2011-07-27 | 西安电子科技大学 | Zernike moment-based rapid image comparison method |
WO2012139268A1 (en) * | 2011-04-11 | 2012-10-18 | Intel Corporation | Gesture recognition using depth images |
WO2013144906A2 (en) | 2012-03-30 | 2013-10-03 | Gokmen Muhittin | System and method for object detection and recognition by local moments representation |
TWI475422B (en) * | 2012-10-31 | 2015-03-01 | Wistron Corp | Method for recognizing gesture and electronic device |
US10126820B1 (en) * | 2012-11-29 | 2018-11-13 | Amazon Technologies, Inc. | Open and closed hand detection |
US10772653B2 (en) * | 2013-03-13 | 2020-09-15 | Ethicon, Inc. | Laproscopic instrument depth stop |
WO2014162388A1 (en) * | 2013-04-01 | 2014-10-09 | 富士通フロンテック株式会社 | Palm vein image capture device |
EP2797030B1 (en) * | 2013-04-24 | 2021-06-16 | Accenture Global Services Limited | Biometric recognition |
KR101526426B1 (en) * | 2013-12-31 | 2015-06-05 | 현대자동차 주식회사 | Gesture recognize apparatus and method |
CN104751112B (en) * | 2013-12-31 | 2018-05-04 | 石丰 | A kind of fingerprint template and fingerprint identification method based on fuzzy characteristics point information |
JP2017526056A (en) | 2014-07-25 | 2017-09-07 | クアルコム,インコーポレイテッド | Registration and authentication on mobile devices |
FR3024791B1 (en) * | 2014-08-06 | 2017-11-10 | Morpho | METHOD FOR DETERMINING, IN AN IMAGE, AT LEAST ONE AREA SUFFICIENT TO REPRESENT AT LEAST ONE FINGER OF AN INDIVIDUAL |
CN105159444B (en) * | 2015-08-07 | 2018-05-25 | 珠海格力电器股份有限公司 | Method and device for determining capture object for gesture recognition |
KR102041965B1 (en) * | 2017-12-26 | 2019-11-27 | 엘지전자 주식회사 | Display device mounted on vehicle |
US10553053B2 (en) * | 2018-06-05 | 2020-02-04 | Jeff Chen | Biometric fusion electronic lock system |
WO2019235773A1 (en) * | 2018-06-08 | 2019-12-12 | Samsung Electronics Co., Ltd. | Proximity based access control in a communication network |
US20200293641A1 (en) * | 2019-03-17 | 2020-09-17 | Hector Hoyos | Using palmar features with a fingertip aggregrate for biometric analysis to conserve resources |
CN112541375A (en) * | 2019-09-20 | 2021-03-23 | 阿里巴巴集团控股有限公司 | Hand key point identification method and device |
US11113588B2 (en) | 2019-10-02 | 2021-09-07 | United States Of America As Represented By The Secretry Of The Navy | Randomization-based hierarchical and associatively assisted vector learning for machine vision |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5559895A (en) * | 1991-11-08 | 1996-09-24 | Cornell Research Foundation, Inc. | Adaptive method and system for real time verification of dynamic human signatures |
US20040151346A1 (en) * | 2001-02-12 | 2004-08-05 | Golan Weiss | System and a method for person's identity authentication |
US20070274574A1 (en) * | 2004-08-20 | 2007-11-29 | Boult Terrance E | Biometric signatures and identification through the use of projective invariants |
US7715600B2 (en) * | 2001-12-04 | 2010-05-11 | Applied Neural Technologies Limited | System for and method of web signature recognition system based on object map |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6029135A (en) | 1983-07-25 | 1985-02-14 | 三菱電機株式会社 | Indivisual discriminator |
US4661913A (en) | 1984-09-11 | 1987-04-28 | Becton, Dickinson And Company | Apparatus and method for the detection and classification of articles using flow cytometry techniques |
US4736203A (en) * | 1985-07-17 | 1988-04-05 | Recognition Systems, Inc. | 3D hand profile identification apparatus |
US4720869A (en) * | 1986-02-18 | 1988-01-19 | International Business Machines Corporation | Hand dimension verification |
US4896363A (en) * | 1987-05-28 | 1990-01-23 | Thumbscan, Inc. | Apparatus and method for matching image characteristics such as fingerprint minutiae |
US5335288A (en) * | 1992-02-10 | 1994-08-02 | Faulkner Keith W | Apparatus and method for biometric identification |
CN1045129C (en) | 1993-03-29 | 1999-09-15 | 松下电器产业株式会社 | Apparatus for identifying person |
IT1277993B1 (en) * | 1994-09-30 | 1997-11-12 | Ist Trentino Di Cultura | PROCEDURE FOR STORING AND RETRIEVING IMAGES OF PEOPLE, FOR EXAMPLE IN PHOTOGRAPHIC ARCHIVES AND FOR THE CONSTRUCTION OF IDENTIKIT AND |
US5642431A (en) | 1995-06-07 | 1997-06-24 | Massachusetts Institute Of Technology | Network-based system and method for detection of faces and the like |
US6047090A (en) * | 1996-07-31 | 2000-04-04 | U.S. Philips Corporation | Method and device for automatic segmentation of a digital image using a plurality of morphological opening operation |
US5828769A (en) * | 1996-10-23 | 1998-10-27 | Autodesk, Inc. | Method and apparatus for recognition of objects via position and orientation consensus of local image encoding |
DE29713202U1 (en) | 1997-07-24 | 1997-12-18 | Siemens AG, 80333 München | Mounting housing for electro-acoustic transducers |
US6188777B1 (en) | 1997-08-01 | 2001-02-13 | Interval Research Corporation | Method and apparatus for personnel detection and tracking |
JP3675629B2 (en) | 1997-08-04 | 2005-07-27 | 株式会社リコー | Pattern recognition method, apparatus and recording medium |
JP2944602B2 (en) | 1998-01-14 | 1999-09-06 | 警察庁長官 | Palm print impression registration / collation method and apparatus |
US6219639B1 (en) * | 1998-04-28 | 2001-04-17 | International Business Machines Corporation | Method and apparatus for recognizing identity of individuals employing synchronized biometrics |
US7475048B2 (en) | 1998-05-01 | 2009-01-06 | Health Discovery Corporation | Pre-processed feature ranking for a support vector machine |
US7318051B2 (en) | 2001-05-18 | 2008-01-08 | Health Discovery Corporation | Methods for feature selection in a learning machine |
US6157731A (en) * | 1998-07-01 | 2000-12-05 | Lucent Technologies Inc. | Signature verification method using hidden markov models |
US6292575B1 (en) * | 1998-07-20 | 2001-09-18 | Lau Technologies | Real-time facial recognition and verification system |
AU2317900A (en) | 1999-02-05 | 2000-08-25 | Yoav Smith | Similarity measurement method for the classification of medical images into predetermined categories |
JP4332649B2 (en) | 1999-06-08 | 2009-09-16 | 独立行政法人情報通信研究機構 | Hand shape and posture recognition device, hand shape and posture recognition method, and recording medium storing a program for executing the method |
JP2001331799A (en) | 2000-03-16 | 2001-11-30 | Toshiba Corp | Image processor and image processing method |
US6920231B1 (en) * | 2000-06-30 | 2005-07-19 | Indentix Incorporated | Method and system of transitive matching for object recognition, in particular for biometric searches |
DE10100616A1 (en) | 2001-01-09 | 2002-07-18 | Siemens Ag | Authentication of a person using hand recognition |
US20020162031A1 (en) | 2001-03-08 | 2002-10-31 | Shmuel Levin | Method and apparatus for automatic control of access |
FR2825814B1 (en) | 2001-06-07 | 2003-09-19 | Commissariat Energie Atomique | PROCESS FOR AUTOMATICALLY CREATING AN IMAGE DATABASE THAT CAN BE INTERVIEWED BY ITS SEMANTIC CONTENT |
US7212671B2 (en) | 2001-06-19 | 2007-05-01 | Whoi-Yul Kim | Method of extracting shape variation descriptor for retrieving image sequence |
DE60214014T2 (en) * | 2001-06-29 | 2007-02-01 | Precise Biometrics Ab | METHOD AND DEVICE FOR CHECKING THE IDENTITY OF A PERSON, WHICH IS A CONSTANT COORDINATE SYSTEM CONSTANT FOR FINGER PRINTING |
JP2003196659A (en) | 2001-12-25 | 2003-07-11 | Nec Corp | Registration method of palmar pattern impression and its device |
CA2371665A1 (en) * | 2002-02-13 | 2003-08-13 | Tactex Controls Inc. | System and method for identifying a person |
US7616784B2 (en) * | 2002-07-29 | 2009-11-10 | Robert William Kocher | Method and apparatus for contactless hand recognition |
US7466846B2 (en) | 2002-09-25 | 2008-12-16 | The Hong Kong Polytechnic University | Method for analyzing a palm print for the identification of an individual using gabor analysis |
US7496214B2 (en) * | 2002-09-25 | 2009-02-24 | The Hong Kong Polytechnic University | Method of palm print identification |
US7912246B1 (en) | 2002-10-28 | 2011-03-22 | Videomining Corporation | Method and system for determining the age category of people based on facial images |
US20060034492A1 (en) | 2002-10-30 | 2006-02-16 | Roy Siegel | Hand recognition system |
US7321671B2 (en) * | 2002-12-06 | 2008-01-22 | Cross Match Technologies, Inc. | System and method for generating a preview display in a print capturing system using a non-planar prism |
SE526678C2 (en) * | 2003-02-24 | 2005-10-25 | Precise Biometrics Ab | Fingerprint representation creation method for checking person's identity using smart card, involves creating unique pairs of minutiae points identified in fingerprint and representing that pairs in predetermined manner |
US7369696B2 (en) | 2003-04-02 | 2008-05-06 | Ge Healthcare Uk Limited | Classification of cells into subpopulations using cell classifying data |
US7975146B2 (en) * | 2003-05-14 | 2011-07-05 | Tbs Holding Ag | Method and apparatus for recognition of biometric data following recording from at least two directions |
US6961450B2 (en) * | 2003-06-25 | 2005-11-01 | Intelligent Biometric Technology, Inc. | Personal identification method, electronic identification system and apparatus for personal biometrical identification by gauging geometry of the person's hand |
KR20050025927A (en) * | 2003-09-08 | 2005-03-14 | 유웅덕 | The pupil detection method and shape descriptor extraction method for a iris recognition, iris feature extraction apparatus and method, and iris recognition system and method using its |
US7211671B2 (en) * | 2003-10-01 | 2007-05-01 | Bristol Myers Squibb Company | Substituted 1,3-dihydro-imidazol-2-one and 1,3-dihydro-imidazol-2-thione derivatives as inhibitors of matrix metalloproteinases and/or TNF-α converting enzyme (TACE) |
US8523572B2 (en) | 2003-11-19 | 2013-09-03 | Raanan Liebermann | Touch language |
US7356168B2 (en) | 2004-04-23 | 2008-04-08 | Hitachi, Ltd. | Biometric verification system and method utilizing a data classifier and fusion model |
US7711174B2 (en) | 2004-05-13 | 2010-05-04 | The Charles Stark Draper Laboratory, Inc. | Methods and systems for imaging cells |
US7508965B2 (en) * | 2004-06-01 | 2009-03-24 | Lumidigm, Inc. | System and method for robust fingerprint acquisition |
JP4601380B2 (en) | 2004-10-08 | 2010-12-22 | 富士通株式会社 | Biometric authentication system registration method, biometric authentication system and program thereof |
US7426301B2 (en) | 2004-06-28 | 2008-09-16 | Mitsubishi Electric Research Laboratories, Inc. | Usual event detection in a video using object and frame features |
CN101023446B (en) * | 2004-09-17 | 2010-06-16 | 三菱电机株式会社 | Face identification device and face identification method |
US20060171571A1 (en) | 2005-02-01 | 2006-08-03 | Chan Michael T | Systems and methods for quality-based fusion of multiple biometrics for authentication |
US20060177113A1 (en) | 2005-02-07 | 2006-08-10 | Liska Biometry Inc. | Method and apparatus for determining a stable repeatable code from biometric information |
US7522773B2 (en) * | 2005-04-28 | 2009-04-21 | Eastman Kodak Company | Using time in recognizing persons in images |
US8275175B2 (en) * | 2005-07-29 | 2012-09-25 | Telecom Italia S.P.A. | Automatic biometric identification based on face recognition and support vector machines |
JP4704185B2 (en) | 2005-10-27 | 2011-06-15 | 富士通株式会社 | Biometric authentication system and biometric authentication method |
KR100722229B1 (en) | 2005-12-02 | 2007-05-29 | 한국전자통신연구원 | Apparatus and method for immediately creating and controlling virtual reality interaction human model for user centric interface |
US20070201727A1 (en) * | 2006-02-13 | 2007-08-30 | Precor Incorporated | User identification for fitness equipment |
US7864987B2 (en) * | 2006-04-18 | 2011-01-04 | Infosys Technologies Ltd. | Methods and systems for secured access to devices and systems |
US8243999B2 (en) | 2006-05-03 | 2012-08-14 | Ut-Battelle, Llc | Method and system for the diagnosis of disease using retinal image content and an archive of diagnosed human patient data |
US7783085B2 (en) * | 2006-05-10 | 2010-08-24 | Aol Inc. | Using relevance feedback in face recognition |
WO2007140609A1 (en) | 2006-06-06 | 2007-12-13 | Moreideas Inc. | Method and system for image and video analysis, enhancement and display for communication |
US7983451B2 (en) * | 2006-06-30 | 2011-07-19 | Motorola Mobility, Inc. | Recognition method using hand biometrics with anti-counterfeiting |
US7660442B2 (en) * | 2006-09-01 | 2010-02-09 | Handshot, Llc | Method and system for capturing fingerprints, palm prints and hand geometry |
US8416981B2 (en) | 2007-07-29 | 2013-04-09 | Google Inc. | System and method for displaying contextual supplemental content based on image content |
US8655084B2 (en) * | 2009-06-23 | 2014-02-18 | Board Of Regents Of The Nevada System Of Higher Education, On Behalf Of The University Of Nevada, Reno | Hand-based gender classification |
-
2007
- 2007-06-18 US US11/820,474 patent/US9042606B2/en not_active Expired - Fee Related
-
2015
- 2015-03-30 US US14/673,593 patent/US20150261992A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5559895A (en) * | 1991-11-08 | 1996-09-24 | Cornell Research Foundation, Inc. | Adaptive method and system for real time verification of dynamic human signatures |
US20040151346A1 (en) * | 2001-02-12 | 2004-08-05 | Golan Weiss | System and a method for person's identity authentication |
US7715600B2 (en) * | 2001-12-04 | 2010-05-11 | Applied Neural Technologies Limited | System for and method of web signature recognition system based on object map |
US20070274574A1 (en) * | 2004-08-20 | 2007-11-29 | Boult Terrance E | Biometric signatures and identification through the use of projective invariants |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170090584A1 (en) * | 2015-09-25 | 2017-03-30 | Apple Inc. | Multi Media Computing Or Entertainment System For Responding To User Presence And Activity |
US10048765B2 (en) * | 2015-09-25 | 2018-08-14 | Apple Inc. | Multi media computing or entertainment system for responding to user presence and activity |
US10444854B2 (en) | 2015-09-25 | 2019-10-15 | Apple Inc. | Multi media computing or entertainment system for responding to user presence and activity |
US11561621B2 (en) | 2015-09-25 | 2023-01-24 | Apple Inc. | Multi media computing or entertainment system for responding to user presence and activity |
CN105550677A (en) * | 2016-02-02 | 2016-05-04 | 河北大学 | 3D palm print identification method |
CN106971157A (en) * | 2017-03-22 | 2017-07-21 | 重庆科技学院 | Fingerprint and face coupled identification method based on multiple linear regression associative memory model |
US20200134146A1 (en) * | 2018-10-31 | 2020-04-30 | EMC IP Holding Company LLC | Biometric Authentication Using Selected Manipulation of Biometric Samples |
US11062005B2 (en) * | 2018-10-31 | 2021-07-13 | Rsa Security Llc | Biometric authentication using selected manipulation of biometric samples |
Also Published As
Publication number | Publication date |
---|---|
US9042606B2 (en) | 2015-05-26 |
US20100021014A1 (en) | 2010-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9042606B2 (en) | Hand-based biometric analysis | |
US10339362B2 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
US20220215686A1 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
EP3552150B1 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
US7142699B2 (en) | Fingerprint matching using ridge feature maps | |
US6819782B1 (en) | Device and method for recognizing hand shape and position, and recording medium having program for carrying out the method recorded thereon | |
Amayeh et al. | Peg-free hand shape verification using high order Zernike moments | |
JP4246154B2 (en) | Biometric authentication method | |
Zhou et al. | Histograms of categorized shapes for 3D ear detection | |
Ambeth Kumar et al. | Exploration of an innovative geometric parameter based on performance enhancement for foot print recognition | |
Diwakar et al. | An extraction and recognition of tongue-print images for biometrics authentication system | |
US8655084B2 (en) | Hand-based gender classification | |
Krishneswari et al. | A review on palm print verification system | |
Gawali et al. | 3d face recognition using geodesic facial curves to handle expression, occlusion and pose variations | |
Bera et al. | Finger contour profile based hand biometric recognition | |
Donida Labati et al. | A scheme for fingerphoto recognition in smartphones | |
Amayeh et al. | Hand-based verification and identification using palm–finger segmentation and fusion | |
Alghamdi et al. | Automated person identification framework based on fingernails and dorsal knuckle patterns | |
Barra et al. | Unconstrained ear processing: What is possible and what must be done | |
EP3702958B1 (en) | Method for verifying the identity of a user by identifying an object within an image that has a biometric characteristic of the user and separating a portion of the image comprising the biometric characteristic from other portions of the image | |
Surmacz et al. | An improved algorithm for feature extraction from a fingerprint fuzzy image | |
Amayeh et al. | A component-based approach to hand verification | |
Smith et al. | Contactless robust 3D palm-print identification using photometric stereo | |
Cadoni et al. | Augmenting SIFT with 3D Joint Differential Invariants for multimodal, hybrid face recognition | |
US11074427B2 (en) | Method for reconstructing an imprint image from image portions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: BOARD OF REGENTS OF THE NEVADA SYSTEM OF HIGHER ED Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BEBIS, GEORGE;AMAYEH, GHOLAMREZA;REEL/FRAME:035975/0534 Effective date: 20120502 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |