EP1173823A1 - Kodierung und erkennung von handschrift - Google Patents

Kodierung und erkennung von handschrift

Info

Publication number
EP1173823A1
EP1173823A1 EP00919036A EP00919036A EP1173823A1 EP 1173823 A1 EP1173823 A1 EP 1173823A1 EP 00919036 A EP00919036 A EP 00919036A EP 00919036 A EP00919036 A EP 00919036A EP 1173823 A1 EP1173823 A1 EP 1173823A1
Authority
EP
European Patent Office
Prior art keywords
intervals
handwriting
input parameter
input
recording
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.)
Withdrawn
Application number
EP00919036A
Other languages
English (en)
French (fr)
Inventor
Ross Walker
Sean Kavanagh
Charalampos Ferekidis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NVF Tech Ltd
Original Assignee
New Transducers Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New Transducers Ltd filed Critical New Transducers Ltd
Publication of EP1173823A1 publication Critical patent/EP1173823A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/30Writer recognition; Reading and verifying signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/142Image acquisition using hand-held instruments; Constructional details of the instruments
    • G06V30/1423Image acquisition using hand-held instruments; Constructional details of the instruments the instrument generating sequences of position coordinates corresponding to handwriting

Definitions

  • This invention relates to handwriting coding and recognition, and in particular for a system that uses a coding method to generate data for recognition.
  • Handwriting recognition can be divided- up into distinct types of recognition problem.
  • the main distinction is between continuous writing, where there are no gaps between letters and script where the characters are discrete. Since there are always gaps between words in continuous writing it is logical for a recognition system to recognise whole words which are easier to isolate and probably easier to recognise.
  • TSPAR Time Encoded Signal Processing and Recognition
  • a coding method for handwriting comprising the steps of recording the variation of an input parameter, identifying the intervals between the occurrences of the input parameter crossing a given value, and quantising the lengths of the intervals, identifying the number of complex zeroes of the input parameter, up to a predetermined rank, in the said intervals, and recording the quantised lengths of the intervals and a measure of the said number complex zeroes up to a predetermined rank as a representation of the variation of the input parameter.
  • a predetermined rank of 1 has been found to give good results.
  • the method records the number of first rank zeroes, i.e. positive minima or negative maxima. This information may provide sufficient detail for useful characterisation without requiring excessive calculation.
  • the method thus parametrics the shape of the input parameter function. If the parameter rises smoothly to a maximum and then falls smoothly to the next zero, there will be no positive minimal so said number will be zero. If the function has an "M" shape, rising to a maximum, falling to a minimum and then rising to another maximum before passing through zero, then there will be one positive minimum so the said number will be one.
  • the number parameter ises the number of oscillations of the input parameter between zeroes.
  • the reason that the positive minima or negative maxima are known as complex zeroes of a function is that they correspond to zeroes of the function for complex number inputs to the function.
  • the first rank zeroes occur at real values being the real values of the complex numbers for which the function has a value zero.
  • the coding method may be a TESPAR method.
  • the method may further comprise the ⁇ step of generating a code number taking one of a set of predetermined values representing the duration of the interval and number of maxima and minima for at least some of the said intervals.
  • the code numbers may be further parameterised.
  • an S matrix may be calculated.
  • the S matrix records the number of instances of each code number in the recorded variation of the input parameter.
  • an A matrix recording the number of instances of a first code number following a second code number with a predetermined lag may be calculated.
  • a further alternative is to calculate a DZ matrix recording the number of instances of amplitude, length of interval and number of maxima and minima increasing, decreasing or staying the same in the next epoch.
  • the S, A and/or DZ matrices may be stored or evaluated.
  • the above approach may be used to record at least two input parameters.
  • the input parameters may be selected from x and y coordinates, speed, one or more coordinates of velocity (e.g. speed and angle, or x coordinate and y coordinate), angular velocity, or radius of curvature.
  • the lengths of the intervals may be measured in time, i.e. the recorded length represents the time between successive crossings of the given value.
  • the recorded length is a distance.
  • the said given value is preferably a predetermined value.
  • the value may be a zero value, particularly for a coordinate such as the vertical (y) component of velocity which passes through zero.
  • the given value may also be a value corresponding to a median value of the handwriting.
  • This approach can be used to parameterise the y- coordinate position, for example, in which case the value can be the centre line of the handwriting, i.e. the median y-coordinate assuming that the handwriting is written in the x direction.
  • a writing tablet for capturing the input parameter or parameters.
  • the writing tablet may also output position data which can be converted into other parameters using a computer.
  • the method may be used on handwriting that is already written, by scanning the handwriting, and then generating the input parameters. This may be done by using known techniques for vectorising bitmap data.
  • the first aspect of the invention also envisages a method of handwriting recognition, including the steps of coding the handwriting as described above, comparing the coded representations with representations corresponding to a number of different characters to find the bet match and outputting the character corresponding to the best match.
  • the comparing step may be carried out using a matrix method in which the correlations between matrices representing the coded data and matrices representing each of the said plurality of different characters are compared.
  • a neural network approach to the comparison could be used. Either approach may require a training period to generate suitable matrices.
  • a handwriting coding apparatus comprising a data input means for measuring the variation of an input parameter, an identifying means for identifying the intervals between the occurrences of the input parameter crossing a given value, and quantising the intervals, identifying the number of maxima and minima of the input parameter in said intervals, and a recording means for recording the quantised intervals and the said number of maxima and minima as a representation of the variation of the input parameter.
  • the above approach is used to record at least two input parameters.
  • the input parameters may be selected from x and y coordinates, speed, one or more coordinates of velocity (e.g. speed and angle, or x coordinate and y coordinate) , angular velocity, or radius of curvature.
  • a writing tablet is provided for capturing the input parameters.
  • the writing tablet may be of a conventional form.
  • the method may be used on handwriting that is already written, by providing a scanner for scanning the handwriting, and then generating the input parameters in the data input means by using known techniques, such as those used for vectorising bitmap data.
  • the second aspect of the invention may also provide a handwriting recognition apparatus, including a handwriting coding apparatus as described above, wherein the apparatus further comprises a processing means adapted to compare the coded representations of the characters with representations corresponding to a number of different characters to find the best match and outputting the character corresponding to the best match.
  • the identifying means and the processing means are both the central processing unit of a computer.
  • a computer program recorded on a data carrier operable to control a computer having a data store, an input device and a processor, the computer program operable to cause the said computer to carry out in cooperation with the input device a method for coding handwriting comprising the steps of recording the variation of an input parameter, identifying the intervals between the occurrences of the input parameter crossing a given value, and quantising the intervals, identifying the number of first rank zeroes of the input parameter in said intervals, and recording the quantised intervals and the said number of first rank zeroes as a representation of the variation of the input parameter.
  • the input device may be a writing tablet or a scanner, for example.
  • the computer program recorded on a data carrier preferably also causes the computer to carry out the step of comparing the coded representation with representations corresponding to a number of different characters to find the best match and outputting the character corresponding to the best match.
  • FIG. 1 shows a schematic diagram of an apparatus according to the invention
  • Figure 2 shows a flow diagram of a coding method in accordance with the invention
  • Figure 3 shows a handwriting recognition scheme in accordance with the invention for recognising static text
  • Figure 4 shows a handwriting recognition scheme in accordance with the invention for recognising dynamic text .
  • a writing tablet (1) records the x- and y- coordinates of a stylus (2) used to write thereupon.
  • the tablet is connected to a computer (3) having a display (5), a processor (9) and a data store (11) .
  • the computer is connected to the tablet by a connector (13) .
  • a program is stored in the data store (11) to cause the system to carry out a data coding method, schematically shown in Fig.2.
  • data corresponding to input coordinates is captured by the tablet (1) which records the position of the stylus as a user writes with the stylus (2) on the tablet (1) .
  • the tablet (1) outputs the x- and y- coordinates of the stylus (2) .
  • the x and y components of the velocity are then calculated by the computer.
  • the method then continues using the y- coordinate of position and the x- and y- coordinates of velocity as the three input parameters. These input parameters are not exclusive, and for some arrangements other sets of input parameters may be more suitable.
  • the computer then calculates the centre line of the writing, and uses that as the special value for the y- coordinate input parameter.
  • the zero value of the x and y components of the velocity is used for those components. For convenience, all these given values will be referred to as "zero values" hereinafter.
  • the data is parameterised by quantising the time interval between zero crossings, i.e. the time between the consecutive occasions that the input data parameter crosses the zero value. Then, the number of first rank zeroes in each time interval is recorded. The - number of first rank zeroes is the number of negative maxima or positive minima. The interval and number of zeroes is then coded using a single integer between 1 and 28.
  • the integer 1 for example corresponds to an interval of length up to a predetermined time and no first rank zeroes.
  • Each range of intervals and number of zeroes is assigned to a predetermined integer, as set out in GB 2162024.
  • the complete writing sample is then parameterised using an "S" matrix, as used in the TESPAR method.
  • the "S" matrix records the number of instances of each code number in the data sample .
  • the method compares the recorded values with values for each possible character of the alphabet and numerals 1 to 9, to record which character has been written.
  • the character that gives the best match for each of the three input parameters is output, and the computer then goes on to evaluate the next character.
  • the method includes the so-called "TESPAR" method.
  • a speech encoder known as TESPAR is known from GB2162024.
  • the method of the invention may carry out the coding using the TESPAR method and specific hardware adapted to implement the method. A brief summary of TESPAR will now be given.
  • Any band limited signal can be represented exactly in terms of its real and complex zeros, such that
  • ⁇ _ are the zeros of the function.
  • Real zeros correspond to times where the function f(t) crosses the zero line.
  • Complex zeros occur in conjugate pairs for a real function and can be classified by considering the effect of differentiation with respect to time.
  • the rank of a complex zero is defined as the number of differentiations required to produce a real zero at the same time ordinate as the complex zero.
  • positive minima (minima at positive values) and negative maxima (maxima at negative values) of the waveform correspond to first rank complex zeros because these stationary points become zero crossings when the waveform is differentiated once.
  • the waveform in TESPAR may be divided up into sections using the real zeros as the boundary points between sections. Each interval between two real zeros is then referred to as an epoch. This is not the only method available, but it is simple and usually effective.
  • the epochs have been defined some relevant information needs to be recorded about them. This conventionally includes the length of the interval (duration) of the epoch; its maximum amplitude and the number of first rank zeros. At this point the duration is usually represented as the nearest integer number of samples of the waveform rather than the exact time duration. The result is a matrix of values of size (3 x number of epochs) containing some of the information contained in the waveform.
  • the time encoding can be done.
  • schemes for encoding a signal once it has been stored in epoch form as described above called the natural TESPAR stream.
  • the general idea however is to take each epoch in turn, or several epochs at a time, and produce a code number depending upon the information stored in the epoch (s).
  • a common encoding scheme considers the duration and number of first rank zeroes and returns a single code number, dependent upon these values, ranging between 1 and 28.
  • the matrix is actually a vector of length equal to the number of TESPAR codes used to describe all the different types of epoch. Each element of the vector contains the number of times that an epoch with that code occurred in the signal. The resulting vector contains information about the content of the signal but no information about the ordering of the epochs, which means the signal cannot be regenerated without extra information.
  • the ⁇ S' matrix can be further refined. Rather than incrementing an element of the vector by one for each epoch with the appropriate code the element can be incremented by an amount that depends upon some characteristic of the epoch. This leads to the duration weighted S' matrix, where the elements are incremented by an amount dependent on the duration of the epoch and the amplitude weighted S' matrix where the maximum epoch amplitude is used as weighting.
  • the final matrix itself can be modified. For example the number in each element of the S' matrix can be doubled to produce a matrix that is more heavily weighted by the number of epochs that occur in the waveform.
  • the A' matrix is a two dimensional matrix that is generated by considering pairs of epochs in turn. These can be adjacent epochs or they can have a specified separation (called the lag). Each epoch in the pair will have a TESPAR code associated with it which gives two ordinates that specify the element of the matrix that is to be incremented.
  • the ⁇ A' matrix is similar to the ⁇ S' matrix but some information as to the ordering of the epochs is retained. An example of this matrix is shown in figure 2. As with the S' matrix the elements of the ⁇ A' matrix can be weighted according to some combination of epoch parameters.
  • the X DZ' matrix is generated by considering pairs of epochs and looking at how they change. Specifically the maximum amplitude, duration and number of complex first rank zeros are examined in each epoch. Each of these parameters may increase, decrease or stay the same which gives 27 possible combinations and hence a 27 element vector.
  • the ⁇ DZ' matrix looks similar to an y S' matrix. Since duration and amplitude are nearly continuous it is usual to specify a range of changes for these values that are taken to be the same for the purposes of encoding the X DZ' matrix.
  • an archetypal matrix can be generated by simply adding the matrices together and dividing by the number of matrices used. To test to see if a signal is the same as the one represented by the archetype the signal needs to be encoded in the same matrix format as the archetype and then compared, usually by finding the correlation score. In this way many archetypes can be included and ranked as to which are most likely to be the same as the signal.
  • a neural -net may be used. Since a signal of any length will always produce a matrix of the same size when it is time encoded (assuming the same matrix is used, of course) a neural net can be designed with a fixed number of inputs corresponding to the number of elements in the matrix. With sufficient training examples the neural net can be trained to recognise a number of standard signals.
  • the (x,y) co-ordinates provide two waveforms that vary with time and are orthogonal. These can be encoded separately to provide two separate matrices or they can be used to derive other parameters. An example would be differentiating x(t) and y(t) once to produce the velocities. In each case the waveform chosen has to have a "zero" value that the waveform crosses so that the epochs can be defined. In the case of the velocities this could be the actual zero value whereas for the y ordinate a line through the middle of the text would be required.
  • Figure 3 illustrates one possible implementation of a system to recognise text as it is being written.
  • data of the position and velocity of the pen on a writing tablet is obtained.
  • the y coordinate of the writing implement about a mean level and the velocity of the implement in the x direction as a function of time are then extracted from the data in the next step 33.
  • These two waveforms are then time encoded 35 using the TESPAR encoding scheme and compared with a store of previous examples. The closest match between the known examples and the input data is then output.
  • a specific application of the above recognition example is signature recognition.
  • the person in question signs their name on a tablet that records the position as a function of time. This signal can then be time-encoded and compared to known time-encoded signatures to verify the identity of that person.
  • the recognition method may also be applied to static text.
  • the text to be recognised has already been written the information as to how it was written is not available.
  • this case provides • a subset of the information available in the dynamic, case where the text is analysed as it is written.
  • One representation of written script is as a bitmap in which the pixels are either black (foreground colour) or white (background colour) .
  • this waveform can be encoded.
  • One method is to encode each column (or row) into matrix form and then use the resulting set of matrices as the input for a neural net.
  • the array could be turned into a one- dimensional vector by writing each row (or column) sequentially.
  • the resulting vector could then be encoded to produce a single matrix that could be used to characterise the image.
  • This example describes one method of implementing a system to recognise scanned images of static text.
  • the flow diagram for this system is shown in Figure 4.
  • an image of the text to be classified is scanned (41) to render it in electronic form and stored as a two dimensional bitmap (43) .
  • This image is then read (45) both one row after another and one column after another to produce two long waveforms corresponding to the row and column scans.
  • a pixel that is clear is represented by minus 1 and a filled pixel by plus 1. This produces a rectangular waveform with well defined zero crossing points.
  • the resulting encoded waveforms are then compared (47) with previously determined examples to assign probabilities to each.
  • the most likely is then returned (49) as the recognised text.
EP00919036A 1999-04-14 2000-04-14 Kodierung und erkennung von handschrift Withdrawn EP1173823A1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB9908462.6A GB9908462D0 (en) 1999-04-14 1999-04-14 Handwriting coding and recognition
GB9908462 1999-04-14
PCT/GB2000/001340 WO2000062244A1 (en) 1999-04-14 2000-04-14 Handwriting coding and recognition

Publications (1)

Publication Number Publication Date
EP1173823A1 true EP1173823A1 (de) 2002-01-23

Family

ID=10851464

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00919036A Withdrawn EP1173823A1 (de) 1999-04-14 2000-04-14 Kodierung und erkennung von handschrift

Country Status (6)

Country Link
EP (1) EP1173823A1 (de)
JP (1) JP2002541597A (de)
CN (1) CN1347534A (de)
AU (1) AU3979300A (de)
GB (1) GB9908462D0 (de)
WO (1) WO2000062244A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100518824B1 (ko) * 2003-03-17 2005-10-05 삼성전자주식회사 필기 모션 획 구분 인식 시스템 및 그 인식방법
DE102004057157A1 (de) * 2004-08-21 2006-04-27 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren und Vorrichtung zum Erfassen einer eigenhändig ausgeführten Unterschrift oder Signatur und zum Erkennen der Echtheit der Unterschrift oder Signatur

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3818443A (en) * 1972-04-28 1974-06-18 Burroughs Corp Signature verification by zero-crossing characterization
GB2062323B (en) * 1979-10-26 1983-04-07 Nat Res Dev Apparatus for recognising handwritten signs
GB9603553D0 (en) * 1996-02-20 1996-04-17 Domain Dynamics Ltd Signal processing arrangments

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO0062244A1 *

Also Published As

Publication number Publication date
JP2002541597A (ja) 2002-12-03
AU3979300A (en) 2000-11-14
WO2000062244A1 (en) 2000-10-19
GB9908462D0 (en) 1999-06-09
CN1347534A (zh) 2002-05-01

Similar Documents

Publication Publication Date Title
US5841902A (en) System and method for unconstrained on-line alpha-numerical handwriting recognition
Azmi et al. Biometric signature verification system based on freeman chain code and k-nearest neighbor
US20060050962A1 (en) System, process and software arrangement for recognizing handwritten characters
CN108664975B (zh) 一种维吾尔文手写字母识别方法、系统及电子设备
KR102111858B1 (ko) 기계학습을 이용한 획 기반 수기 서명 인증 방법 및 시스템
Wu et al. On-line signature verification based on logarithmic spectrum
Khan Online Urdu handwritten character recognition: Initial half form single stroke characters
Manke et al. A connectionist recognizer for on-line cursive handwriting recognition
CN114419174A (zh) 在线手写文本合成方法、装置和存储介质
WO2000062244A1 (en) Handwriting coding and recognition
Soldek et al. Image analysis and pattern recognition in biometric technologies
JPS60153574A (ja) 文字読取方法
Bania et al. Handwritten Assamese character recognition using texture and diagonal orientation features with artificial neural network
Assaleh et al. Recognition of handwritten Arabic alphabet via hand motion tracking
Safdar et al. A novel similar character discrimination method for online handwritten Urdu character recognition in half forms
KR20090111202A (ko) 한글의 기본 구성요소인 수평선, 수직선, 사선, 원의개수와 특성치를 이용한 한글인식 방법 및 장치
US5940533A (en) Method for analyzing cursive writing
Chahi et al. Effective feature descriptor-based new framework for off-line text-independent writer identification
Ye et al. Off-line handwritten signature verification with inflections feature
Magrina Recognition of ancient Tamil characters from epigraphical inscriptions using Raspberry Pi based tesseract OCR
Jain Unconstrained Arabic & Urdu text recognition using deep CNN-RNN hybrid networks
Sharif et al. Sign Language Recognition
JPH10162102A (ja) 文字認識装置
Konstantakis et al. A writer identification system of greek historical documents using matlab
Annanurov et al. Feature selection for Khmer handwritten text recognition

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20011029

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

17Q First examination report despatched

Effective date: 20020205

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20020618

RBV Designated contracting states (corrected)

Designated state(s): DE FR GB IT