Electronic handwriting is increasingly important in a variety of contexts. For example, electronic handwriting is now commonly used in place of pen and paper to obtain a credit card holder's affirmation of a credit card transaction. As electronic handwriting has become more common, the ability to verify authenticity of electronic handwriting has also become more important.
U.S. Pat. No. 6,487,310 describes an “elastic matching” method for comparing one signature against another, comprising the operations of creating a mapping between corresponding points in two signatures to be compared measured at different times after the commencement of writing the signatures which maximizes the correlation between the local spatial neighborhood of the measured points and simultaneously minimizes the curvature of the elastic spatial distortion from the mapping, providing quantitative measures of both the degree of the spatial correlations and the degree of the non-uniform spatial distortions in the mapping, thereby providing measures of the similarity between the signatures.
Whatever the benefits of prior handwriting verification techniques, they do not have the advantages of the techniques and tools described below.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key 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 at least one aspect of the present disclosure, a handwriting verification method comprises obtaining a handwriting test sample containing a plurality of available parameters, wherein the plurality of available parameters comprises geometric parameters and one or more non-geometric parameters; extracting the geometric parameters from the plurality of available parameters; based on the geometric parameters, deriving geometric features comprising an x-position value and a y-position value for each of a plurality of evenly distributed feature points in the handwriting test sample; performing first feature matching between geometric features of the handwriting test sample and geometric features of a reference sample; determining a handwriting verification result based at least in part on the feature matching; and outputting the handwriting verification result. The geometric features may further comprise values derived from the geometric parameters, such as direction and curvature values. The determining of the handwriting verification result can be further based on a count of unlinked feature points.
The first feature matching can include finding mappings between one or more of the evenly distributed feature points in the test sample and one or more evenly distributed feature points in the reference sample. The first feature matching can include a simulated annealing process. The simulated annealing process can include selecting a feature point in the reference sample; generating a pseudo-random value; comparing the pseudo-random value with a constant; and based on the comparing, determining whether to remove a link from a selected point in the reference sample or define a new link between the selected feature point in the reference sample and a selected feature point in the test sample. The determining step can be biased towards defining a new link over removing an existing link based on the value of the constant. If a new link is defined, any previously existing links that are crossed by the new link can be removed.
Second feature matching also can be performed, which may include evaluation of a non-geometric parameter (e.g., a time-related parameter, such as speed or acceleration). The handwriting verification result can be further based on the second feature matching.
In another aspect, a handwriting verification method comprises performing feature matching between geometric features of a handwriting test sample and geometric features of a reference sample, wherein the feature matching comprises defining one or more links between one or more evenly distributed feature points in the test sample and one or more evenly distributed feature points in the reference sample; obtaining a count of consecutive unlinked feature points in the test sample; and outputting a handwriting verification result, wherein the handwriting verification result is based at least in part on the feature matching and the count of consecutive unlinked feature points in the test sample.
In another aspect, a user authentication method comprises receiving test signature data and a user device identifier (ID) from a user device; searching for a name ID associated with the test signature data; obtaining the name ID; searching for a reference device ID associated with the name ID; comparing the reference device ID with the user device ID; and providing authentication information (e.g., an authentication result) to the user device based on the comparing. The device IDs may be, for example, pen or stylus IDs associated with a pen or stylus.
In another aspect, a user authentication method comprises receiving test signature data (e.g., encrypted test signature data), a device identifier, and a service identifier from a user device, wherein the service identifier relates to a service executing on the user device; comparing the test signature data with reference signature data; based on a result of the comparing, obtaining authentication information (e.g., a user ID and a password) associated with the service executing on the user device; and providing the authentication information to the user device. If the test signature data is consistent with the reference signature data, the test signature data may be added to the reference signature data (e.g., as supplemental information for future authentications).
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
The present disclosure is generally directed to techniques and tools for verifying electronic signatures or other electronic handwriting.
Determining whether a signature is authentic poses many challenges. One challenge is that authentic signatures made by the same person will always have some degree of variability. Another challenge is that the degree of variability between authentic signatures will vary from person to person. Previously, a determination of the level of variability has been made by combining several reference samples collected at different times into a template that can be used for verification. However, collecting several reference samples at different times does not fit well with many business processes. For example, banks have traditionally stored a single reference signature for comparison purposes. Thus, the ability to improve the accuracy of a verification process while using a single reference would be advantageous.
Accordingly, in described embodiments, a dynamic handwriting verification engine is configured to compare handwriting data associated with a handwriting test sample (e.g., a signature) with handwriting data associated with a reference sample to determine whether the test sample is authentic. Although some embodiments described herein refer to verification of signatures, it should be understood that embodiments described herein can be used to verify handwriting of all kinds, and are not limited to verification of signatures.
In accordance with embodiments described herein, a verification process involves matching geometric features in a test sample and a reference sample while allowing for minor differences resulting from natural inconsistency between samples that are made by the same person. In addition to geometric features, the verification process also can take into account more data that can be generated by current handwriting collection technology (e.g., movement of a pen between strokes, pen pressure, pen angles, and the like), which can improve the quality of verification results. Because different input devices may provide different types of data, the verification process can adapt to the types of data provided by particular devices, in accordance with embodiments described herein. For example, if a test sample includes pressure information and a reference sample does not, the verification process can omit analysis of pressure information and focus instead on comparisons of data that are common to the two samples.
The detailed description set forth below in connection with the appended drawings where like numerals reference like elements is intended as a description of various embodiments of the disclosed subject matter and is not intended to represent the only embodiments. Each embodiment described in this disclosure is provided merely as an example or illustration and should not be construed as preferred or advantageous over other embodiments. The illustrative examples provided herein are not intended to be exhaustive or to limit the claimed subject matter to the precise forms disclosed.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of exemplary embodiments of the present disclosure. It will be apparent to one skilled in the art, however, that many embodiments of the present disclosure may be practiced without some or all of the specific details. In some instances, well-known process steps have not been described in detail in order not to unnecessarily obscure various aspects of the present disclosure. Further, it will be appreciated that embodiments of the present disclosure may employ any combination of features described herein.
When a handwritten signature is made on paper, an ink pen leaves a continuous trail of ink that forms the signature. A digital version of a handwritten signature generally comprises a collection of discrete data points measured at regular time intervals.
Referring again to
Alternatively, other handwriting input technology can be used. For example, an electronic pen may use other wireless technology or may be connected by a wire to a digitizer. As another example, an electronic pen may or may not be detectable away from the surface of a digitizer. As another example, an electronic pen may be powered or unpowered. Powered pens may receive power via a wire connected to an external power source or via an on-board battery. As another example, it is possible to input handwriting data without an electronic pen (e.g., via a stylus on a pressure sensitive digital writing pad, a touchscreen, or some other input device that does not require an electronic pen).
However the handwriting data may be collected, handwriting data provided by the input devices 10, 12, and 14 may include pen event information, device information, and/or contextual information about the context in which the handwriting was made. In described embodiments, pen event information includes the x, y position of the pen-tip on or above the digitizer surface and the time since the start of the handwriting. Further, pen event information may optionally include additional information subject to the capabilities of the input devices 10, 12, and 14, such as pressure (pen force), angles (azimuth, altitude, and/or rotation) and pen-down status. Pen event information is typically collected at regular intervals during a signing process.
Device information may include information needed to convert from digitizer units to real-world units. Contextual information for a signature may include the name of the person signing; the date and time of signature; the reason for signing; the type and version of operating system used on a host device; the type of digitizer; the version of the digitizer device driver; a unique identifier taken from the network interface controller (NIC) address of the a host device; if a cryptographic hash function is used, information about the type of hash function; and/or supplementary data that may be added by a software application at the time of capture. Contextual information also may include information about the document being signed, such as a cryptographic message digest.
Referring again to
The handwriting verification server 700 can verify the authenticity of handwriting input data provided in various forms (e.g., integrated data, streamed data, raw pen event data). For example, as shown in
In the example shown in
In the example shown in
In the example shown in
The arrangements shown in
In accordance with embodiments described herein, a handwriting sample to be verified (or “test sample”) can be a handwritten signature (see
In described embodiments, handwriting data can be represented as a sequence of pen events. Typically, a pen event records the position of the pen tip (e.g., while on the surface of or within a limited range of a digitizer) at a particular time. In addition to x/y-coordinate values, some handwriting input devices also may detect other information such as pen angle, writing speed, writing pressure, etc. Depending on device capabilities, pen data associated with pen events may include additional measurements such as pen pressure and angles. In the example shown in
Referring again to
In the example shown in
An example dynamic handwriting verification process is shown in
In the example shown in
Because the speed of ordinary handwriting varies, the detection of x-coordinate and y-coordinate positions at regular time intervals results in variable spacing between the detected positions. Referring again to the example signature shown in
Referring again to
The particular spacing that is used can vary depending on implementation. For example, the spacing between feature points need not be uniform. According to one alternative approach, feature points can be positioned according to a density normalization process in which the spacing between densely packed pen events is expanded for the corresponding feature points. In such an approach, feature points may or may not be co-located with original pen events. The density normalization process also can include inserting feature points into portions of the handwriting path where pen events are sparse. The density normalization process can be applied to the test sample and to the reference sample to resolve point density differences between the samples while still allowing for some variation in spacing between feature points, which can help to preserve information relating to speed and acceleration of handwriting. The density normalization process can help to provide comparable sets of feature points between samples obtained by devices with different sampling rates.
Referring again to
In the example shown in
In at least one embodiment, feature points are defined for the entire length of a handwriting sample, including pen-up areas in which the pen was not in contact with the tablet surface. In some circumstances, pen-up information will not be available between strokes. This can occur, for example, when a capture device is used that does not support pen-up data, or when a pen is held at a distance from the digitizer such that pen-up data cannot be detected. If pen-up information is not available, feature points can be generated within the limits of pen-down pen events.
Referring again to
In the example shown in
Referring again to
In at least one embodiment, the energy is measured according to the following equation:
ei=kx(Xr−Xt)2+ky(Yr−Yt)2+kd(Dr−Dt)2+kc(Cr−Ct)2,
where ei is the energy of the ith link, connecting a reference sample r with a test sample t; Xr, Yr, Dr, and Cr are the x, y, direction and curvature values for the reference sample; Xt, Yt, Dt, and G are the x, y, direction and curvature values for the test sample; and kx, ky, kd, and kc are weighting factors for the different energy components.
In at least one embodiment, an optimal set of links is one that achieves a minimum total energy (E) of the system, which can be defined according to the following equation:
E=Σei+kunu,
where ei is the energy of the ith link; ku is a constant representing the energy of an unlinked feature; and nu is the number of unlinked features (if any).
In at least one embodiment, numerical annealing is used to minimize the differences between the feature points at the ends of each link, and thereby minimize the energy E. In particular, in at least one embodiment, a method of simulated annealing is used to make pseudo-random changes to the link, which may increase or decrease the overall energy.
In one example annealing process, which is now described with reference to
“Energy” and “temperature” are related terms that can be used to model the annealing process. In at least one embodiment, a goal of the annealing process is to find the best set of links between corresponding features in two signatures. The relative merit of any of the possible linking patterns can be determined by assessing the similarity of the geometric features such as position, line direction and curvature at linked feature points. The energy of a link is a measure of the differences between the two feature points. Zero energy indicates a state of having identical features, and the energy increases as the differences become more substantial.
The annealing process tries to minimize the total energy of the system by adjusting the set of links. However, if individual adjustments that increase the total energy were never permitted, the probability of the annealing process becoming trapped in a local minimum of total energy would increase. To address this situation, the annealing process can be designed to reduce the probability of the process becoming trapped in a local minimum by allowing some changes that result in an increase in energy, thereby allowing for the possibility that subsequent changes may achieve lower total energy.
The temperature of the system can be used to control the likelihood of a change that increases the total energy. In at least one embodiment, the temperature is initially set at a relatively high value that allows increases in energy to occur more frequently. The temperature is reduced as the annealing process proceeds. As the temperature drops, the likelihood of increased energy is reduced until stability in the system is reached.
Referring now to the example annealing process illustrated in
At step S205, the total energy of the changed linkage (E_new) is compared with the total energy of the previous state of the linkage (E_prev). If E_new is less than or equal to E_prev, the change to the linkage is retained at step S207. If E_new is greater than E_prev, a determination is made at step S217 as to whether the change to the linkage can still be accepted.
In at least one embodiment, increases in energy may be accepted depending on a ratio involving the magnitude of the change (dE) and the current temperature. In the example shown in
where U is a uniform deviate value in the range of 0≦U≦1.0, dE is the change in overall energy resulting from the change to the linkage, and T is the current temperature of the system. A uniform deviate is used to generate one or more pseudo-random values U. A single uniform deviate generator is used for the entire comparison between the test sample and the reference sample, and it is always initialized with the same seed. This ensures that the comparison of the test sample and the reference sample always returns the same result.
An example process by which the linkage can be changed (see step S203 in
In at least one embodiment, step S203-2 is performed at each change to the linkage by pseudo-randomly determining to either remove a link or set a new link by comparing the value U with the constant K_RemoveLink. The value of K_RemoveLink can be set to bias the determination towards either removing an existing link or setting a new link. Experiments indicate that it is desirable if about 30% of the changes consist of removing the link, in which case K_RemoveLink would be set to 0.3. The value of constant K_RemoveLink can vary depending on implementation.
If U is less than K_RemoveLink, the link is removed from the selected feature point at step S203-3. (This step allows the annealing process to remove a link without inserting any others to replace it, to ensure that more possible changes to the linkage are achievable.) Otherwise, a feature point in the test sample is selected at step S203-4, and a link is inserted between the selected feature points in the reference sample and the test sample at step S203-5. At step S203-6, any previously existing links that are crossed by the newly inserted link are removed from the linkage. In the example shown in
In general, it is desirable to ensure that enough changes are made to the linkage to allow the minimum energy state to be achieved and to ensure that the temperature is reduced sufficiently to allow the solution to settle in an optimal state. Referring again to
The annealing process can be made more accurate, at the possible expense of processing speed, by using a larger number of cycles and more gradual temperature reductions. In at least one embodiment, annealing parameters (e.g., number of cycles, cooling factor for temperature reductions) are chosen to get adequate accuracy quickly in the majority of cases. However, this can occasionally result in poor linkage between two samples that would otherwise have acceptable linkage if the annealing was adequate.
To help determine whether poor linkage is a result of dissimilarity between samples or an inaccurate initial annealing process, a second annealing process can be performed with a different initial seed. An example process by which annealing can be repeated is illustrated in
If a good match is not found at step S305, a check is performed at step S307 to determine whether another annealing attempt will be made. The check performed at step S307 may involve comparing the number of annealing steps already performed with a maximum value. For example, in at least one embodiment, if 2 annealing attempts have not been made yet, the annealing step S303 is repeated without resetting the uniform deviate generator in order to guarantee that the same random sequence will not be used in the subsequent annealing step. Otherwise, with 2 annealing attempts having been made, a determination is made at step S313 that the samples are inconsistent.
After annealing has been performed, the resulting linkage will include a set of links, each with a known energy. However, not all feature points will be linked unless the samples are identical or nearly identical. The quality of the linkage can be assessed by calculating a proportion (Pl) of the feature points that are linked and the mean link energy (Em) according to the following equations:
where Pl is the proportion of features that are linked, nl is the total number of links, nr is the number of features in the reference sample, and nt is the number of features in the test sample. In embodiments that use the above equations to assess linkage quality, consistent signatures will have high values of Pl and low values of Em. Conversely, dissimilar samples will have low values of Pl and high values of Em.
The expected difference in Pl and Em values for consistent signatures and inconsistent signatures can be measured empirically. In
In the example shown in
Although the Pl and Em values are effective for measuring linkage quality in many scenarios, they may not reflect significant differences between a test sample and a reference sample if a substantial portion of the samples are very similar. It is possible to improve the accuracy of handwriting verification by performing an additional check to determine whether there is a significant section of unlinked feature points between the test sample and the reference sample.
Referring again to
The output produced at step S113 can be any output that is suitable to indicate a result of the verification, such as a Boolean value. Alternatively, a different value that allows for indicating more than just a binary or true/false result can be used. In least one embodiment, the output produced at step S113 comprises a floating point value ranging from 0 (indicating that the test sample and the reference sample are very different) to 1.0 (indicating that the test sample and the reference sample are very similar).
The samples depicted in
Referring again to
In at least one embodiment, determining whether the unlinked feature points are significant includes determining whether the count of consecutive unlinked features points in an unlinked section is greater than a predetermined value NU. Counts that are greater than NU can be added, and the total length of these counts can be represented as a proportion (referred to as “proportion free,” or Pf) of the overall sample length. Counts that are less than or equal to NU can be ignored. The value of NU can vary depending on implementation. Samples with a Pf value exceeding a predetermined value can be deemed inconsistent.
Referring again to
In at least one embodiment, the additional evaluation performed at step S111 comprises non-geometric feature matching, which can include analysis of time-related pen event parameters, such as writing speed. Individuals tend to develop a habitual rhythm in the way they write with a pen, which means that pen speed and acceleration tend to be very similar (though not identical) for handwriting (e.g., signatures) made by the same person. Thus, time-related pen event parameters, which differ from the geometric features that are analyzed in other steps, can be useful in a handwriting verification process (e.g., as a supplement to geometric feature matching). In at least one embodiment, geometric features can be extracted from raw handwriting data along with elapsed time corresponding to the respective features, allowing comparison of elapsed time values.
In the example shown in
Referring again to
Typically, pen pressures are measured as relative values, rather than as absolute force values. Pressure values are device-dependent, with variations in sensitivity occurring even between devices of the same model due to factors such as differences in construction, hysteresis, and aging of pen materials. Thus, it is not generally possible to make reliable comparisons between samples using absolute force values, particularly if the same person may have used different input devices to provide the samples.
As shown in
In the example shown in
Referring again to
In the example shown in
In the example shown in
Referring again to
As shown in
In the example shown in
Referring again to
In practice, any collection of information that allows a user to be reliably authenticated by a signature sign-in service (e.g., signature sign-in service 1920) can be used for user authentication. The particular information that may be used to look up a particular user in a database (e.g., database 1930) can vary depending on factors such as the information that is transmitted to the signature sign-in service, the information that is stored in the database, and the way the database is designed.
For security purposes, any information relating to handwriting verification and related user authentication processes (e.g., handwriting data, device identifiers, service identifiers, authentication information, etc.) may be encrypted (e.g., using symmetric (e.g., shared-secret-key) or asymmetric (e.g., public-key) encryption). Encrypted information may be decrypted before further processing is performed on the underlying information. For example, encrypted test signature data may be decrypted prior to comparing the test signature data with reference signature data.
Unless otherwise specified in the context of specific examples, described techniques and tools may be implemented by any suitable computing devices, including, but not limited to, laptop computers, desktop computers, smart phones, tablet computers, and/or the like. For example, although generation of handwriting data in some examples described herein may require certain hardware features, such as an electronic pen, the raw data generated by an electronic pen may be transmitted to and processed by suitably configured general purpose computing devices, including, but not limited to, laptop computers, desktop computers, smart phones, tablet computers, and/or the like.
Some of the functionality described herein may be implemented in the context of a client-server relationship. In this context, server devices may include suitable computing devices configured to provide information and/or services described herein. Server devices may include any suitable computing devices, such as dedicated server devices. Server functionality provided by server devices may, in some cases, be provided by software (e.g., virtualized computing instances or application objects) executing on a computing device that is not a dedicated server device. The term “client” can be used to refer to a computing device that obtains information and/or accesses services provided by a server over a communication link. However, the designation of a particular device as a client device does not necessarily require the presence of a server. At various times, a single device may act as a server, a client, or both a server and a client, depending on context and configuration. Actual physical locations of clients and servers are not necessarily important, but the locations can be described as “local” for a client and “remote” for a server to illustrate a common usage scenario in which a client is receiving information provided by a server at a remote location.
In its most basic configuration, the computing device 2000 includes at least one processor 2002 and a system memory 2004 connected by a communication bus 2006. Depending on the exact configuration and type of device, the system memory 2004 may be volatile or nonvolatile memory, such as read only memory (“ROM”), random access memory (“RAM”), EEPROM, flash memory, or other memory technology. Those of ordinary skill in the art and others will recognize that system memory 2004 typically stores data and/or program modules that are immediately accessible to and/or currently being operated on by the processor 2002. In this regard, the processor 2002 may serve as a computational center of the computing device 2000 by supporting the execution of instructions.
As further illustrated in
In the exemplary embodiment depicted in
As used herein, the term “computer-readable medium” includes volatile and nonvolatile and removable and non-removable media implemented in any method or technology capable of storing information, such as computer-readable instructions, data structures, program modules, or other data. In this regard, the system memory 2004 and storage medium 2008 depicted in
For ease of illustration and because it is not important for an understanding of the claimed subject matter,
In any of the described examples, data can be captured by input devices and transmitted or stored for future processing. The processing may include encoding data streams, which can be subsequently decoded for presentation by output devices. Media data can be captured by multimedia input devices and stored by saving media data streams as files on a computer-readable storage medium (e.g., in memory or persistent storage on a client device, server, administrator device, or some other device). Input devices can be separate from and communicatively coupled to computing device 2000 (e.g., a client device), or can be integral components of the computing device 2000. In some embodiments, multiple input devices may be combined into a single, multifunction input device (e.g., a video camera with an integrated microphone). Any suitable input device either currently known or developed in the future may be used with described systems described herein.
The computing device 2000 may also include output devices such as a display, speakers, printer, etc. The output devices may include video output devices such as a display or touchscreen. The output devices also may include audio output devices such as external speakers or earphones. The output devices can be separate from and communicatively coupled to the computing device 2000, or can be integral components of the computing device 2000. In some embodiments, multiple output devices may be combined into a single device (e.g., a display with built-in speakers). Any suitable output device either currently known or developed in the future may be used with described systems.
In general, functionality of computing devices described herein may be implemented in computing logic embodied in hardware or software instructions, which can be written in a programming language, such as C, C++, COBOL, JAVA™, PHP, Perl, HTML, CSS, JavaScript, VBScript, ASPX, Microsoft .NET™ languages such as C#, and/or the like. Computing logic may be compiled into executable programs or written in interpreted programming languages. Generally, functionality described herein can be implemented as logic modules that can be duplicated to provide greater processing capability, merged with other modules, or divided into sub-modules. The computing logic can be stored in any type of computer-readable medium (e.g., a non-transitory medium such as a memory or storage medium) or computer storage device and be stored on and executed by one or more general-purpose or special-purpose processors, thus creating a special-purpose computing device configured to provide functionality described herein.
Extensions and Alternatives
Many alternatives to the systems and devices described herein are possible. For example, individual modules or subsystems can be separated into additional modules or subsystems or combined into fewer modules or subsystems. As another example, modules or subsystems can be omitted or supplemented with other modules or subsystems. As another example, functions that are indicated as being performed by a particular device, module, or subsystem may instead be performed by one or more other devices, modules, or subsystems. Although some examples in the present disclosure include descriptions of devices comprising specific hardware components in specific arrangements, techniques and tools described herein can be modified to accommodate different hardware components, combinations, or arrangements. Further, although some examples in the present disclosure include descriptions of specific usage scenarios, techniques and tools described herein can be modified to accommodate different usage scenarios. Functionality that is described as being implemented in software can instead be implemented in hardware, or vice versa.
Many alternatives to the techniques described herein are possible. For example, processing stages in the various techniques can be separated into additional stages or combined into fewer stages. As another example, processing stages in the various techniques can be omitted or supplemented with other techniques or processing stages. As another example, processing stages that are described as occurring in a particular order can instead occur in a different order. As another example, processing stages that are described as being performed in a series of steps may instead be handled in a parallel fashion, with multiple modules or software processes concurrently handling one or more of the illustrated processing stages. As another example, processing stages that are indicated as being performed by a particular device or module may instead be performed by one or more other devices or modules.
The principles, representative embodiments, and modes of operation of the present disclosure have been described in the foregoing description. However, aspects of the present disclosure which are intended to be protected are not to be construed as limited to the particular embodiments disclosed. Further, the embodiments described herein are to be regarded as illustrative rather than restrictive. It will be appreciated that variations and changes may be made by others, and equivalents employed, without departing from the spirit of the present disclosure. Accordingly, it is expressly intended that all such variations, changes, and equivalents fall within the spirit and scope of the claimed subject matter.
This application is a continuation of U.S. application Ser. No. 14/080,723, filed Nov. 14, 2013, which is expressly incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
4453267 | Paganini | Jun 1984 | A |
4495644 | Parks | Jan 1985 | A |
4656662 | Filliman | Apr 1987 | A |
4701960 | Scott | Oct 1987 | A |
4724542 | Williford | Feb 1988 | A |
5027414 | Hilton | Jun 1991 | A |
5038392 | Morris | Aug 1991 | A |
5054088 | Gunderson | Oct 1991 | A |
5091975 | Berger | Feb 1992 | A |
5101437 | Plamondon | Mar 1992 | A |
5109426 | Parks | Apr 1992 | A |
5111512 | Fan | May 1992 | A |
5285506 | Crooks | Feb 1994 | A |
5434928 | Wagner | Jul 1995 | A |
5454046 | Carman, II | Sep 1995 | A |
5528003 | Bodin | Jun 1996 | A |
5528699 | Obata | Jun 1996 | A |
5544255 | Smithies | Aug 1996 | A |
5559897 | Brown | Sep 1996 | A |
5577135 | Grajski | Nov 1996 | A |
5644655 | Windsor | Jul 1997 | A |
5647017 | Smithies | Jul 1997 | A |
5657396 | Rudolph | Aug 1997 | A |
5680470 | Moussa | Oct 1997 | A |
5687254 | Poon | Nov 1997 | A |
5699445 | Wagner | Dec 1997 | A |
5818955 | Smithies | Oct 1998 | A |
5828772 | Kashi | Oct 1998 | A |
5892824 | Beatson | Apr 1999 | A |
5933514 | Ostrem | Aug 1999 | A |
6011873 | Desai | Jan 2000 | A |
6055592 | Smith | Apr 2000 | A |
6064751 | Smithies | May 2000 | A |
6091835 | Smithies | Jul 2000 | A |
6128409 | Lewis | Oct 2000 | A |
6148093 | McConnell | Nov 2000 | A |
6212295 | Ostrem | Apr 2001 | B1 |
6307955 | Zank | Oct 2001 | B1 |
6381344 | Smithies | Apr 2002 | B1 |
6487310 | Bishop | Nov 2002 | B1 |
6512840 | Tognazzini | Jan 2003 | B1 |
6661908 | Suchard | Dec 2003 | B1 |
6694045 | Chung | Feb 2004 | B2 |
6741749 | Herbert, Jr. | May 2004 | B2 |
6970581 | Yoshii | Nov 2005 | B2 |
7106888 | Silverbrook | Sep 2006 | B1 |
7116804 | Murase | Oct 2006 | B2 |
7139431 | Silverbrook | Nov 2006 | B2 |
7190815 | Zank | Mar 2007 | B2 |
7197167 | Chung | Mar 2007 | B2 |
7206436 | Murase | Apr 2007 | B2 |
7239727 | Taylor | Jul 2007 | B2 |
7263211 | Yoshii | Aug 2007 | B2 |
7362901 | Walch | Apr 2008 | B2 |
7391906 | Blake | Jun 2008 | B2 |
7426288 | Sakamoto | Sep 2008 | B2 |
7433499 | Kim | Oct 2008 | B2 |
7436989 | Chung | Oct 2008 | B2 |
7474770 | Beigi | Jan 2009 | B2 |
7506153 | Lapstun | Mar 2009 | B2 |
7529391 | Lin | May 2009 | B2 |
7545959 | Houle | Jun 2009 | B2 |
7609415 | Miki | Oct 2009 | B2 |
7693312 | Zank | Apr 2010 | B2 |
7889889 | Haid | Feb 2011 | B2 |
7916906 | Hicks | Mar 2011 | B2 |
7917761 | Cahill | Mar 2011 | B2 |
7933840 | Zank | Apr 2011 | B2 |
7961175 | Lapstun | Jun 2011 | B2 |
7973775 | Lapstun | Jul 2011 | B2 |
7982722 | Lapstun | Jul 2011 | B2 |
7983455 | Moise | Jul 2011 | B2 |
7986312 | Lapstun | Jul 2011 | B2 |
8090161 | Kaplan | Jan 2012 | B2 |
8370632 | Lehwany | Feb 2013 | B2 |
20020106114 | Yan | Aug 2002 | A1 |
20030182585 | Murase | Sep 2003 | A1 |
20050105781 | Sakamoto | May 2005 | A1 |
20050175222 | Silverbrook | Aug 2005 | A1 |
20060074814 | Lovell | Apr 2006 | A1 |
20060136731 | Hicks | Jun 2006 | A1 |
20060138228 | Sanders | Jun 2006 | A1 |
20070065021 | Delgrosso | Mar 2007 | A1 |
20070154071 | Lin | Jul 2007 | A1 |
20080019575 | Scalise | Jan 2008 | A1 |
20080082426 | Gokturk | Apr 2008 | A1 |
20100283766 | Shieh | Nov 2010 | A1 |
20120206420 | Shieh | Aug 2012 | A1 |
20120212459 | Rusu | Aug 2012 | A1 |
Number | Date | Country |
---|---|---|
1445654 | Oct 2003 | CN |
69231818 | Nov 2001 | DE |
0099476 | Feb 1984 | EP |
0567680 | Mar 1993 | EP |
0 542 557 | May 1993 | EP |
0737342 | Jun 1995 | EP |
1020817 | Jul 2000 | EP |
58-178488 | Oct 1983 | JP |
62-006385 | Jan 1987 | JP |
05-268100 | Oct 1993 | JP |
05-274481 | Oct 1993 | JP |
06-162268 | Jun 1994 | JP |
10-187969 | Jul 1998 | JP |
10-240866 | Sep 1998 | JP |
2000-163514 | Jun 2000 | JP |
2003-271966 | Sep 2003 | JP |
2013093864 | Jun 2013 | WO |
Entry |
---|
Communication Pursuant to Article 94(3) EPC mailed Mar. 14, 2016, issued in corresponding Application No. EP 14193143.6, 4 pages. |
Ismail, M.A., and S. Gad, “Off-Line Arabic Signature Recognition and Verification,” Pattern Recognition 33(10):1727-1740, Oct. 2000. |
Das, M.T., and L.C. Dulgar, “Signature Verification (SV) Toolbox: Application of PSO-NN,” Engineering Applications of Artificial Intelligence 22(4-5):688-694, Jun. 2009. |
Extended European Search Report mailed Apr. 13, 2015, issued in corresponding Application No. EP 14 19 3143.6, 9 pages. |
Fahmy, M.M.M., “Online Handwritten Signature Verification System Based on DWT Features Extraction and Neural Network Classification,” Ain Shams Engineering Journal 1(1):59-70, Sep. 2010. |
Fierrez-Aguilar, J., et al., “An On-Line Signature Verification System Based on Fusion of Local and Global Information,” Lecture Notes in Computer Science, vol. 3546, Audio- and Video-Based Bimetric Person Authentication, 2005, pp. 523-532. |
Impedovo, D., and G. Pirlo, “Automatic Signature Verification: The State of the Art,” IEEE Transactions on Systems, Man, and Cybernetics—Part C: Applications and Reviews 38(5):609-635, Sep. 2008. |
Impedovo, D., et al., “Handwritten Signature Verification by Multiple Reference Sets,” Proceedings of the 11th International Conference on Frontiers in Handwriting Recognition (ICFHR), Montréal, Aug. 19-21, 2008, 5 pages. |
“Ink Serialized Format Specification,” Microsoft Corporation, 2007, 49 pages. |
International Search Report mailed Jan. 20, 2015, issued in corresponding International Application No. PCT/JP2014/005367, filed Oct. 22, 2014, 5 pages. |
Jain, A.K, et al., “On-Line Signature Verification,” Pattern Recognition 35(12):2963-2972, Dec. 2002. |
Li, B., et al., “Minimizing Spatial Deformation Method for Online Signature Matching,” in S.-W. Lee and S.Z. Li (eds.), “Advances in Biometrics: International Conference, ICB 2007, Seoul, Korea, Aug. 27-28, 2007, Proceedings,” Springer, Berlin, Series: Lecture Notes in Computer Science 4642:646-652, Sep. 2007. |
Luan, F., et al., “On-Line Handwritten Signature Verification Algorithm Based on Time Sequence,” International Journal of Information and Systems Sciences 1(3-4):229-236,2005. |
Martínez-Romo, J.C., et al., “On-Line Signature Verification Based on Genetic Optimization and Neural-Network-Driven Fuzzy Reasoning,” in A.H. Aguirre et al. (eds.), “MICAI 2009: Advances in Artificial Intelligence: 8th Mexican International Conference on Artificial Intelligence, Guanajuato, México, Nov. 9-13, 2009, Proceedings,” Springer, Berlin, Series: Lecture Notes in Computer Science/Artificial Intelligence 5845:246-257, Dec. 2009. |
Muramatsu, D., and T. Matsumoto, “Effectiveness of Pen Pressure, Azimuth, and Altitude Features for Online Signature Verification,” Proceedings of the International Conference on Advances in Biometrics (ICB '07), Aug. 2007, pp. 503-512. |
Scattolin, P., “Recognition of Handwritten Numerals Using Elastic Matching,” Thesis, Department of Computer Science, Concordia University, Montréal, Nov. 1995, 22 pages. |
“SDK Feature Comparison,” Wacom Co., Ltd., Tokyo, Japan, <http://gsdt.wacom.eu/product/SDKComparison.pdf>, at least as early as Jun. 2013, 1 page. |
“Signature Components API,” Global Signature Development Team, Wacom Co., Ltd., Tokyo, Japan, <http://gsdt.wacom.eu/download/file/Signature-SDK/1.6/Signature-Components-API.pdf>, at least as early as Sep. 2013, 75 pages. |
Tappert, C.C., et al., “The State of the Art in On-Line Handwriting Recognition,” IEEE Transaction on Pattern Analysis and Machine Intelligence (12)8:786-808, Aug. 1990. |
Thumwarin, P., et al., “On-Line Signature Verification Based on FIR System Characterizing Motion Pressure,” Proceedings of the 10th International ACM SIGGRAPH Conference on Virtual Reality Continuum and Its Applications in Industry (VRCAI 2011), Hong Kong, Dec. 11-12, 2011, pp. 565-568. |
“Wacom SDKs: Integrate Signature Pads Into Your Workflow,” © 2013 Wacom Europe GmbH, <http://signature.wacom.eu/software/software-development-kits-sdks>, at least as early as Dec. 2013, 2 pages. |
Yuen, H., “A Chain Coding Approach for Real-Time Recognition of On-Line Handwritten Characters,” Proceedings of the International Conference on Acoustics, Speech, and Signal Processing (ICASSP '96), Atlanta, Georgia, May 7-10, 1996, vol. 6, pp. 3426-3429. |
Zimmerman, T.G., et al., “Retail Applications of Signature Verification,” vol. 5404, Proceedings of SPIE, Biometric Technology for Human Identification, Aug. 2004, 9 pages. |
Extended European Search Report dated Jun. 30, 2017, issued in corresponding EP Application No. 14856498.2, 11 pages. |
Maiorana, E, et al., “Template Protection for On-Line Signature-Based Recognition Systems,” Biometrics and Identity Management, Springer-Verlag Berlin Heidelberg, pp. 170-180, May 2008. |
Ferri, L.C., et al., “Biometric Authentication for ID Cards with Hologram Watermarks,” SPIE—International Society for Optical Engineering Proceedings, 4675: 629-640, Apr. 2002. |
Number | Date | Country | |
---|---|---|---|
20160070951 A1 | Mar 2016 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14080723 | Nov 2013 | US |
Child | 14940925 | US |