WO1994003853A1 - Procede et appareil de compression d'encre electronique - Google Patents

Procede et appareil de compression d'encre electronique Download PDF

Info

Publication number
WO1994003853A1
WO1994003853A1 PCT/US1993/006883 US9306883W WO9403853A1 WO 1994003853 A1 WO1994003853 A1 WO 1994003853A1 US 9306883 W US9306883 W US 9306883W WO 9403853 A1 WO9403853 A1 WO 9403853A1
Authority
WO
WIPO (PCT)
Prior art keywords
nsamps
points
stroke
data points
data
Prior art date
Application number
PCT/US1993/006883
Other languages
English (en)
Inventor
John S. Ostrem
Original Assignee
Communication Intelligence Corporation
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 Communication Intelligence Corporation filed Critical Communication Intelligence Corporation
Publication of WO1994003853A1 publication Critical patent/WO1994003853A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/20Contour coding, e.g. using detection of edges
    • 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/32Digital ink
    • G06V30/333Preprocessing; Feature extraction
    • G06V30/347Sampling; Contour coding; Stroke extraction

Definitions

  • the present invention relates generally to data capture applications, and more specifically, to the compression of data generated on a digitizer tablet.
  • the output is a parametric representation of the writing
  • a typical digitizer tablet samples the position of the writing pen 100 times per second, at fixed intervals of 0.01 seconds. The tablet continuously transmits the resulting data to the
  • the tablet samples the pen position and transmits an x-coordinate value, a y-coordinate value, and an additional value which indicates whether the pen is up or down.
  • the data generated in this manner is commonly referred to as electronic ink.
  • Huffman coding A further enhancement of Huffman coding is called adaptive Huffman coding.
  • a basic problem with standard Huffman coding is that the decoding program must have access to the Huffman coding statistics. Hence, trying to increase
  • Huffman coding requires that an integral number of bits be used to code symbols. Arithmetic coding improves compression by using a fractional number of bits per code.
  • Dictionary coding is another class of data compression. In general, these techniques create a dictionary of symbol sequences or combinations which are then accessed by indexing into the dictionary. These techniques have become the standard for compression on small computers because they combine good compression with modest memory requirements.
  • Examples of codes using these techniques which are applicable to MS-DOS include PKZIP, ARC, ARJ , and Lharc.
  • compression techniques that apply primarily to specialized domains. An example is compression of two dimensional images using the discrete cosine transform and its many derivatives.
  • a method and apparatus for compressing electronic ink which achieves high compression while requiring minimal memory and CPU power is needed.
  • a method and apparatus are provided for compressing data based on the characteristics of each
  • the digitizer tablet samples the position of the writing pen a pre-determined number of times per second and at fixed intervals. This data is continuously transmitted to a computer in the form of x and y coordinates plus an indicator of whether or not the pen is touching the surface of the tablet.
  • the incoming data from the digitizer tablet is preprocessed.
  • This preprocessing which is application and/or system specific, is not part of the compression. Examples of preprocessing include smoothing for noise reduction, endpoint filtering, discarding duplicate data points, median filtering, Hanning filtering, spatial sampling, and size normalization.
  • the first stage of compression a determination is made of which points along the stroke contour are essential to the reconstruction of a quality facsimile of the original writing from the sampled points.
  • the method proceeds by calculating descriptors and finding essential features of the stroke contour.
  • the descriptors are local curvature, local extrema, and the endpoints of the stroke.
  • the actual algorithm is somewhat detailed, in general the idea is that the extrema are saved, the points about which the local curvature is above a threshold are saved, and the endpoints of the stroke are saved.
  • any number of standard compression techniques can be applied including
  • Fig. 1 is a flow chart of the general compression method according to the invention.
  • Fig. 2 is a flow chart of the extrema determination step.
  • Fig. 3 is a flow chart of the stroke endpoint determination step.
  • Fig. 4 illustrates the local curvature calculations.
  • Fig. 5 is a flow chart of the duplicate data points preprocessing step.
  • Fig. 6 illustrates the endpoint filtering
  • Fig. 7 is a flow chart of the endpoint filtering preprocessing step.
  • Fig. 8 is a flow chart of the median filtering preprocessing step.
  • Fig. 9 is a flow chart of the Hanning filtering preprocessing step.
  • Figs. 10A-C illustrate the reconstruction of an electronically written signature without applying this
  • Figs. 11A-C illustrate the reconstruction of an electronically written signature after applying this
  • Figs. 12A-C illustrate the reconstruction of a sequence of lower case letters after applying this invention's compression technique.
  • Figs. 13A-C illustrate the reconstruction of a simple line after applying this invention's compression technique.
  • Figs. 14A-E illustrate the trade off between
  • Fig. 15 illustrate the apparatus to accomplish the disclosed method.
  • FIG. 1 illustrates the compression method described by this invention.
  • Data is input by writing on a digitizer tablet (step 100).
  • the tablet represents the writing as a series of x and y coordinate values as a function of time (step 110).
  • This stream of x,y position coordinates along with a pen up/pen down indicator for each coordinate pair is continuously sent to the computer (step 120).
  • the data is preprocessed (step 130).
  • the exact form of preprocessing will vary according to the application and system. Preprocessing is generally used to remove noise. The details are unimportant as long as a good representation of the written input data is maintained.
  • Another optional step which is dependent upon the application and system is the removal of duplicate or close points (step 140). This step is generally necessary when the digitizer tablet's user writes slowly. Slow writing causes oversampling resulting in duplicate or close points which are redundant and do not carry
  • the first stage of compression is based on the characteristics of each individual stroke contour (step 150).
  • step 160 mathematical compression techniques can be applied (step 160). Although this stage of compression is not required by the invention, it is employed in the preferred embodiment as a potential means of further compressing the data.
  • stage one compression After the completion of the second stage, a comparison is made between the first stage and the second stage compression (step 170). If the compression was not improved after applying stage two, then the stage one compression data is saved (step 180). If the data was further compressed by stage two, then this compression data is saved (step 190).
  • the computer program modules used to compress the electronic data are given in the appendix. Significant program modules and their specific functions are as follows: Stage one compression:
  • curvature.c Function to calculate the local curvature at a point along the contour.
  • cmpsig2.c Function to compress an array of stage 1 data with characteristics of the signature
  • set_4_bits Function to pack values into the upper or
  • Figs. 2-4 are detailed illustrations of the stage one compression methods.
  • Fig. 2 shows a flow chart of the first step of compression in which extrema are determined and saved.
  • the digitizer data is in the form of a sequence of coordinate values, X i and y i , as a function of time (step 210).
  • the subroutine is initialized by setting i equal to 1 (step 220).
  • Minima and maxima are determined by comparing the value of each data point to the values of the data points directly adjacent to it (step 230). To be a maxima, the value of either the x coordinate or the y coordinate must be larger then the values of the corresponding coordinate of the data points on both sides of the data point under review (step 230). To be a minima, the value of either the x coordinate or the y coordinate must be smaller then the values of the corresponding coordinate of the data points on both sides of the data point under review (step 230).
  • step 240 If any of the four relationships defined by step 230 are met (step 240), then that data point will be saved (step 250), otherwise the data point is not saved. After determining whether or not to save a data point, the value of i is
  • step 260 increased by one (step 260) and a determination is made as to whether or not all data points have been reviewed (step 270) . If all data points have been reviewed then this subroutine ends (step 280), otherwise the subroutine loops back to the
  • step 230 comparison step (step 230), continuing until all data points have been reviewed.
  • Fig. 3 shows a flow chart of the second step of compression in which stroke endpoints are determined and saved.
  • the digitizer data is in the form of a sequence of coordinate values, x i and y i , as a function of time (step 310).
  • the subroutine is initialized by setting i equal to 0 (step 315).
  • This subroutine first determines whether or not the x and y coordinates of the data point indicate that it is the first data point of the stroke (step 320). If it is the first data point, then it is saved (step 330). Next the subroutine determines whether or not the x and y coordinates of the data point indicate that it is the last data point of the stroke (step 340). If it is the last data point of the stroke, then it is saved (step 350). After determining whether or not to save the data point, a comparison is made to determine if all data points have been tested (step 360). If they have been then this subroutine ends (step 370), otherwise the value of i is increased by one (step 380) and endpoint determination continues.
  • Fig. 4 illustrates the calculations used to determine the curvature at each data point between the stroke endpoints. The stroke contour is represented by line 410 while the
  • Point 430 is data point i, the data point of interest in this illustration.
  • the coordinates of 430 are x i and y ⁇ .
  • line 440 is defined as the line segment connecting point 430 with point 425.
  • the coordinates of point 425 are x i-d and y i-d , where d is equivalent to 3.
  • Line 450 is defined as the line segment connecting point 430 to pbint 435 where point 435 has coordinates y i+d and y i+d .
  • Curvature angle 460 is the angle defined by lines 440 and 450.
  • the curvature angle for each data point is calculated. If the calculated curvature angle is within a certain range of angles, the data point is saved. If the angle does not fall within the pre-selected range of angles, the data point is discarded.
  • the choice of the variable "d" as well as the range of threshold angles is determined by the application's requirements. In the preferred embodiment, the value of d is 2; data points which have a curvature angle between 5 degrees and 25 degrees are retained for applications requiring high fidelity, low compression
  • Figs. 5-8 are detailed illustrations of optional data preprocessing methods.
  • Fig. 5 is a flow chart of the method by which duplicate data points are discarded.
  • the digitizer data is in the form of a sequence of coordinate values, x i and y i , as a function of time (step 510) .
  • the subroutine is initialized by setting i equal to 1, x sav equal to x 0 and y sav equal to y 0 (step 520).
  • the current data point represented by x i and y i
  • the previous data point represented by x sav and y sav (step 530). If the values for the x and y coordinates are identical, then the current point is discarded (step 540) and the next point is compared to x sav and y sav . This process continues until either all of the data points have been
  • step 560 or until x i and y i do not equal x sav and y sav , respectively.
  • x sav is set equal to x i
  • y sav is set equal to y i (step 545).
  • the value of i is then increased by one (step 550) and the new value of i is compared to the total number of data points (step 560).
  • the subroutine continues until all data points have been reviewed at which time the subroutine ends (step 570).
  • Fig. 6 illustrates the preprocessing method of endpoint filtering which can be used to remove these artifacts.
  • Stroke contour 610 is made up of a series of data points 620. Circle 630, centered at the stroke's first data point 635, and circle 640, centered at the stroke's last data point 645, are used to define the threshold by which points are either discarded or saved. In the preferred embodiment, the physical radius of this circle is set at 0.5 millimeters. The number of data points contained within these circles is
  • the resolution of a typical tablet is 10 points per millimeter.
  • the threshold, t, given in tablet units is obtained by multiplying the desired physical distance (0.5 millimeters) by the tablet's resolution (10 points/millimeter).
  • Fig. 7 is a flow chart for the endpoint filtering preprocessing method.
  • the digitizer data is in the form of a sequence of coordinate values, x i and y i , as a function of time (step 710).
  • the subroutine is initialized by setting i equal to 0 (step 715) and setting j equal to 1 (step 720).
  • variable d is calculated (step 730) and compared to the pre-selected threshold, t (step 740). If d is less than t, indicating that this point is within circle 630, the point corresponding to x j , y j is discarded (step 750). The value of j is then increased by one (step 760) and the calculation for d (step 730) is repeated. This process continues until d is not less then the threshold value, at which time that value of x j , y j is saved as the second data point (step 770). This
  • the endpoint filtering method used for the last point of a stroke is identical to that used for the first point except that to initialize the subroutine i is set equal to nsamps-1 (step 715) and j is set equal to nsamps-2 (step 720).
  • Fig. 8 is a flow chart illustrating this method.
  • the digitizer data is in the form of a sequence of coordinate values, x i and y i , as a function of time (step 810).
  • the subroutine is initialized by setting i equal to 1 (step 820).
  • a new value for each coordinate is calculated based on the median value of three successive data points (steps 830 and 840).
  • the value of i is then increased by one (step 850) and the subroutine continues until the value of i is equal to the total number of samples minus two (step 860) at which time the subroutine is complete (step 870).
  • the digitizer data is in the form of a sequence of coordinate values, x i and y i , as a function of time (step 910).
  • the subroutine is initialized by setting i equal to 1 (step 920).
  • a linear process is applied to reduce noise and smooth the stroke contour.
  • a new value for each x and y coordinate is calculated based on the initial values of three successive data points (step 930).
  • the value of i is then increased by one (step 940) and the subroutine continues until the value of i is equal to the total number of samples minus two (step 950) at which time the subroutine is complete (step 960).
  • Fig. 10A is an original signature.
  • Fig. 10B shows the actual points received from the digitizer tablet.
  • Fig. 10C is a reconstruction of the signature based upon the points shown in Fig. 10B.
  • Fig. 11A is another original signature.
  • Fig. 11B shows the actual points received from the
  • stage one compression reduced the 1088 bytes to 584 bytes, which was further reduced to 219 bytes by applying a stage two compression technique.
  • Fig. 12A is the original of a sequence of lower case letters. As in Fig. 11B, Fig. 12B shows both actual points 1210 received from the digitizing tablet and points 1220 determined to be critical to the reconstruction fidelity.
  • Fig. 12C is the reconstruction based upon circled points 1220. The original required 2072 bytes, the reconstruction based upon stage one compression only required 800 bytes (39 percent of the original), and the reconstruction shown in 12C in which both stage one and stage two compression was applied required 301 bytes (15 percent).
  • Fig. 13A-C illustrates that the algorithm
  • Fig. 13A is the original of a straight line which contains little structure.
  • Fig. 13B shows both actual points 1310 received from the digitizing tablet and points 1320 determined to be critical to the reconstruction fidelity.
  • Fig. 13C is the reconstruction based upon circled points 1320 in which only stage one compression has been applied. The reconstruction required only 6 bytes and represented a compression to 2 percent of the original. In this case stage two compression was not applied because it increased the number of bytes to 14.
  • Figs. 14A-E illustrates the trade between compression ratio and the fidelity of the reconstruction.
  • Fig. 14A is the original of a printed address which required a total of 1808 bytes.
  • Fig. 14B shows the first level of compression which employed a compression ratio similar to that used in Figs, lie and 12C. After both stage one and stage two compression, this reconstruction is 13 percent of the original.
  • Figs. 14C-E show gradually increasing levels of compression. The reconstruction shown in Fig. 14C, requiring only 9 percent of the original, appears quite similar to the original.
  • Figs. 14D-E although quite readable, show definite differences from the original.
  • Figs. 14D and 14E require 8 percent and 7 percent of the original storage space, respectively.
  • Fig. 15 shows an embodiment of the apparatus to accomplish the method described in this invention.
  • the computer 1550 is an IBM/PC/AT compatible with an IBM compatible monitor 1540 and keyboard 1510.
  • Computer 1550 employs the methods disclosed by this invention to compress the electronic ink. Handwritten
  • digitizer tablet 1520 or via a portable digitizer tablet 1530.
  • Portable digitizer tablets are in common use in many
  • cmpsig2.c Function to compress an array of stage 1 data with characteristics of the signature
  • set_4_bits Function to pack values into the upper or
  • cur_comp returns: 1 (i.e. YES or TRUE) for successful
  • BOOL curvature() BOOL curvature(); /* function to calculate */
  • value2 (valuel + lower_limit) / 2;
  • COUNT plus_point /* stores "index + lghseg”*/ COUNT minus_point; /* stores "index - lghseg”*/ COUNT plus_angle; /* stores calc direction */
  • minus_angle cic_atan2 (x[index] - x[minus_point],
  • *dir_angleP (*dir_angleP + 5) / 10;
  • cmpsig2 returns: i.e. YES or TRUE) for successful * compression
  • COUNT maxout /* max number of pts for */
  • BOOL pack_halfbytes (); /* implements main packing */
  • * byte is the upper 8 bits of the 16 bit COUNT value for
  • BOOL pack_halfbytes (value, byte_partP, byte_maskUCP,
  • COUNT value /* value to be compressed */ COUNT *byte_partP; /* 1 if upper 4 bits of byte, */
  • BOOL get_4_bits() /* function to unpack values */
  • BOOL set 4 bits() /* function to pack values */
  • **comp_arrayUCPP *byte_maskUCP
  • **comp_arrayUCPP *byte_maskUCP
  • **comp_arrayUCPP *byte_maskUCP
  • **comp_arrayUCPP *byte_maskUCP
  • **comp_arrayUCPP *byte_maskUCP
  • comp_arrayUCP comp_arrayUC
  • * byte is the upper 8 bits of the 16 bit COUNT value for
  • sign_change[i] sign_change[i - 1] + value
  • sign_changeP sign_change;/* pointer to sign change */
  • array[i] array [i - 1] + current_sign * value
  • pack_halfbytes returns: 1 (i.e. YES or TRUE) for
  • BOOL unpack_halfbytes(valueP, byte_partP, byte_maskUCP,
  • BOOL get_4_bits(valueUCP, position, byte_maskUC)
  • /* selection 2 specifies the */ /* lower 4 bits */

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

L'invention se rapporte à un procédé et à un appareil permettant de comprimer des données reçues à partir d'une tablette graphique en fonction des caractéristiques du profil de chaque trait individuel (150, 160). La tablette graphique échantillonne la position du traceur, tout en transmettant de manière continue des données sous forme de coordonnées x et y à un ordinateur, ainsi qu'un signal indiquant si le traceur est en contact avec la surface de la tablette ou non (100, 110). Après un prétraitement, une identification des points, situés sur le profil du trait, essentiels à la reconstitution d'une reproduction de bonne qualité de l'écriture originale à partir des points échantillonnés (140) est effectuée. Cette identification est basée sur la courbure locale, les extrémités locales ainsi que les points terminaux du trait. Au cours d'un second stade de compression facultatif, une technique de compression mathématique standard (160) est appliquée.
PCT/US1993/006883 1992-07-29 1993-07-22 Procede et appareil de compression d'encre electronique WO1994003853A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US92183192A 1992-07-29 1992-07-29
US07/921,831 1992-07-29

Publications (1)

Publication Number Publication Date
WO1994003853A1 true WO1994003853A1 (fr) 1994-02-17

Family

ID=25446041

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1993/006883 WO1994003853A1 (fr) 1992-07-29 1993-07-22 Procede et appareil de compression d'encre electronique

Country Status (1)

Country Link
WO (1) WO1994003853A1 (fr)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997048077A1 (fr) * 1996-06-12 1997-12-18 Citrix Systems, Inc. Compression de ligne sans perte
US6018591A (en) * 1994-07-04 2000-01-25 Hewlett-Packard Company Scribble matching
US6101280A (en) * 1994-07-04 2000-08-08 Hewlett-Packard Company Method and apparatus for compression of electronic ink
US6118899A (en) * 1995-10-11 2000-09-12 Citrix Systems, Inc. Method for lossless bandwidth compression of a series of glyphs
US6141737A (en) * 1995-10-11 2000-10-31 Citrix Systems, Inc. Method for dynamically and efficiently caching objects received from an application server by a client computer by subdividing cache memory blocks into equally-sized sub-blocks
WO2003014963A1 (fr) * 2001-08-06 2003-02-20 Micron Technology, Inc. Minimisation d'erreur d'interpolation destinee a la reduction de donnees
WO2003044723A1 (fr) * 2001-11-16 2003-05-30 Silverbrook Research Pty Ltd Procede pour comprimer de l'encre numerique
WO2003056419A1 (fr) * 2001-12-28 2003-07-10 Anoto Ab Procede et appareil d'enregistrement d'ecrite manuelle electronique
EP0848350B1 (fr) * 1996-12-11 2004-02-11 Hewlett-Packard Company, A Delaware Corporation Appareil et procédé pour la compression d'écriture manuscrite
US7162087B2 (en) 2001-12-28 2007-01-09 Anoto Ab Method and apparatus for recording of electronic handwriting
US7969440B1 (en) 2007-05-02 2011-06-28 Evernote Corporation Method and system for curve fitting using digital filtering
US8014630B1 (en) 2007-05-02 2011-09-06 Evernote Corporation Method and apparatus for representing image data using digital filtering and adaptive parameterization
US9325759B2 (en) 2002-03-14 2016-04-26 Citrix Systems, Inc. Methods and apparatus for generating graphical and media displays at a client

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4524456A (en) * 1981-11-11 1985-06-18 Dainippon Screen Seizo Kabushiki Kaisha Method for compressing data of two-value picture image
US4807143A (en) * 1986-07-07 1989-02-21 Asahi Kasei Kogyo Kabushiki Kaisha System for forming design pattern data
US5023918A (en) * 1989-10-03 1991-06-11 International Business Machines Corporation Cross-product filter
US5126948A (en) * 1989-11-08 1992-06-30 Ltv Aerospace And Defense Company Digital position encoder and data optimizer

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4524456A (en) * 1981-11-11 1985-06-18 Dainippon Screen Seizo Kabushiki Kaisha Method for compressing data of two-value picture image
US4807143A (en) * 1986-07-07 1989-02-21 Asahi Kasei Kogyo Kabushiki Kaisha System for forming design pattern data
US5023918A (en) * 1989-10-03 1991-06-11 International Business Machines Corporation Cross-product filter
US5126948A (en) * 1989-11-08 1992-06-30 Ltv Aerospace And Defense Company Digital position encoder and data optimizer

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6018591A (en) * 1994-07-04 2000-01-25 Hewlett-Packard Company Scribble matching
US6101280A (en) * 1994-07-04 2000-08-08 Hewlett-Packard Company Method and apparatus for compression of electronic ink
US6118899A (en) * 1995-10-11 2000-09-12 Citrix Systems, Inc. Method for lossless bandwidth compression of a series of glyphs
US6141737A (en) * 1995-10-11 2000-10-31 Citrix Systems, Inc. Method for dynamically and efficiently caching objects received from an application server by a client computer by subdividing cache memory blocks into equally-sized sub-blocks
AU714722B2 (en) * 1996-06-12 2000-01-06 Citrix Systems, Inc. Lossless line compression
US6057857A (en) * 1996-06-12 2000-05-02 Citrix Systems, Inc. Method for the lossless compression of lines in a distributed computer system
US6172683B1 (en) 1996-06-12 2001-01-09 Citrix Systems, Inc. Method for the lossless compression of lines in a distributed computer system
WO1997048077A1 (fr) * 1996-06-12 1997-12-18 Citrix Systems, Inc. Compression de ligne sans perte
EP0848350B1 (fr) * 1996-12-11 2004-02-11 Hewlett-Packard Company, A Delaware Corporation Appareil et procédé pour la compression d'écriture manuscrite
WO2003014963A1 (fr) * 2001-08-06 2003-02-20 Micron Technology, Inc. Minimisation d'erreur d'interpolation destinee a la reduction de donnees
US7072812B2 (en) 2001-08-06 2006-07-04 Micron Technology, Inc. Interpolation error minimization for data reduction
EP1444641A1 (fr) * 2001-11-16 2004-08-11 Silverbrook Research Pty. Limited Procede pour comprimer de l'encre numerique
EP1444641A4 (fr) * 2001-11-16 2006-03-22 Silverbrook Res Pty Ltd Procede pour comprimer de l'encre numerique
WO2003044723A1 (fr) * 2001-11-16 2003-05-30 Silverbrook Research Pty Ltd Procede pour comprimer de l'encre numerique
US7308148B2 (en) 2001-11-16 2007-12-11 Silverbrook Research Pty Ltd Method of compressing digital ink
US7463779B2 (en) 2001-11-16 2008-12-09 Silverbrook Research Pty Ltd Method of compressing digital ink using linear prediction
US7650033B2 (en) 2001-11-16 2010-01-19 Silverbrook Research Pty Ltd Method of compressing digital ink
US8121426B2 (en) 2001-11-16 2012-02-21 Silverbrook Research Pty Ltd Method of compressing input stroke sequence
US8345997B2 (en) 2001-11-16 2013-01-01 Silverbrook Research Pty Ltd Method of compressing sequence of strokes
WO2003056419A1 (fr) * 2001-12-28 2003-07-10 Anoto Ab Procede et appareil d'enregistrement d'ecrite manuelle electronique
US7162087B2 (en) 2001-12-28 2007-01-09 Anoto Ab Method and apparatus for recording of electronic handwriting
US9325759B2 (en) 2002-03-14 2016-04-26 Citrix Systems, Inc. Methods and apparatus for generating graphical and media displays at a client
US7969440B1 (en) 2007-05-02 2011-06-28 Evernote Corporation Method and system for curve fitting using digital filtering
US8014630B1 (en) 2007-05-02 2011-09-06 Evernote Corporation Method and apparatus for representing image data using digital filtering and adaptive parameterization

Similar Documents

Publication Publication Date Title
US6101280A (en) Method and apparatus for compression of electronic ink
WO1994003853A1 (fr) Procede et appareil de compression d'encre electronique
JP3309031B2 (ja) 短ブロックのデータを圧縮、伸長するための方法、及び装置
KR100484467B1 (ko) 디지털 잉크의 압축
US4653107A (en) On-line recognition method and apparatus for a handwritten pattern
CA2270472A1 (fr) Systeme informatique de tri pour la compression de donnees
JP2004177965A (ja) データを符号化するためのシステム及び方法
CA2022071A1 (fr) Controleur multi-echelles en graphologie
CN101019325A (zh) 压缩和解压缩数字序列的方法
US7302106B2 (en) System and method for ink or handwriting compression
US20200294629A1 (en) Gene sequencing data compression method and decompression method, system and computer-readable medium
US5023918A (en) Cross-product filter
KR100612759B1 (ko) 디지털 잉크를 압축하는 방법
US5757960A (en) Method and system for extracting features from handwritten text
CN114640354A (zh) 数据压缩方法、装置、电子设备及计算机可读存储介质
EP0848350B1 (fr) Appareil et procédé pour la compression d'écriture manuscrite
KR100295715B1 (ko) 핸드프린트인식가속기시스템 및 방법
Li et al. Efficient and accuracy-ensured waveform compression for transient circuit simulation
JPH0695727B2 (ja) 画像データ圧縮装置
Chye et al. The basic principles of increasing in efficiency of data compressing in information-measuring systems
JP3210183B2 (ja) データ圧縮方法及び装置
Un et al. Data transformation by segments with fixed length for compression tasks
JPH081660B2 (ja) オンライン手書き図形認識装置
CN114970456A (zh) 一种中文词向量压缩方法、系统和存储介质
CN111737388A (zh) 一种地质图件数据存储处理方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA DE GB JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

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

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA