Patent US5023918A successfully refreshed from Google Patents.
US5023918A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Cross-product filter
Assignee: International Business Machines Corp
•
Filing: 1989-10-03
•
Granted: 1991-06-11
•
Expires: 2009-10-03
Abstract
Abstract Method and apparatus for filtering a sequence of digital values representative of endpoints of vectors which represent the stroke of a writing instrument on a writing tablet. The cross-product and dot-product of the vectors comprising the stroke are computed to produce a sample of points which are close together where the stroke curves sharply, and which are further apart where the stroke is substantially straight.
Inventors
- 👤 James S. Lipscomb
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 16:06
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/01; G06F3/03; G06F3/041; G06V; G06V30/00; G06V30/10; G06V30/32; G06V30/333; G06V30/347
Claims Analysis
Total Claims: 14
Claim 1
Independent Claim
82 words
A method of filtering a first series of indicia comprised of n indicium representing a stroke of a writing instrument on a writing surface, said method comprising the steps of: detecting said first series of indicia generated by said writing instrument on said writing surface; and taking the cross-product of successive vectors formed between successive indicium in said first series of indicia comprising said stroke, to provide a filtered stroke having a second series of indicia comprised of m indicia where m<n.
Claim 2
Independent Claim
82 words
A method of filtering a first series of indicia comprised of n indicium representing a stroke of a writing instrument on a writing surface, said method comprising the steps of: detecting said first series of indicia generated by said writing instrument on said writing surface; and taking the cross-product of successive vectors formed between successive indicium in said first series of indicia comprising said stroke, to provide a filtered stroke having a second series of indicia comprised of m indicia where m<n.
Claim 3
Dependent Claim
17 words
The method of claim 1, including the step of displaying said filtered stroke on said writing surface.
Claim 4
Independent Claim
77 words
A method of filtering a first series of n digital signals representing n points on a stroke of a stylus on a tablet, said method comprising the steps of: detecting said first series of n digital signals generated by said stylus on said tablet; and taking the cross-product and the dot product of successive vectors defined by successive points on said stroke to provide a filtered stroke formed of a second series of m points, where m<n.
Claim 5
Independent Claim
77 words
A method of filtering a first series of n digital signals representing n points on a stroke of a stylus on a tablet, said method comprising the steps of: detecting said first series of n digital signals generated by said stylus on said tablet; and taking the cross-product and the dot product of successive vectors defined by successive points on said stroke to provide a filtered stroke formed of a second series of m points, where m<n.
Claim 6
Independent Claim
136 words
A method of filtering a first series of indicia comprised of n indicia representing a stroke of a writing instrument on a writing surface, to produce a second series of indicia comprised of m indicia, where m<n, said method comprising the steps of: collecting said first series of indicia by said writing instrument on said writing surface; determining a cross-product threshold value for a cross-product of successive vectors formed between successive ones of said n indicia of said first series of indicia comprising said stroke; and computing the cross-product of successive vectors formed between successive ones of said n indicia of said first series of indicia comprising said stroke, to produce a given one of said m indicia in said second series of indicia whenever said cross-product has a predetermined relationship to said cross-product threshold value.
Claim 7
Independent Claim
136 words
A method of filtering a first series of indicia comprised of n indicia representing a stroke of a writing instrument on a writing surface, to produce a second series of indicia comprised of m indicia, where m<n, said method comprising the steps of: collecting said first series of indicia by said writing instrument on said writing surface; determining a cross-product threshold value for a cross-product of successive vectors formed between successive ones of said n indicia of said first series of indicia comprising said stroke; and computing the cross-product of successive vectors formed between successive ones of said n indicia of said first series of indicia comprising said stroke, to produce a given one of said m indicia in said second series of indicia whenever said cross-product has a predetermined relationship to said cross-product threshold value.
Claim 8
Dependent Claim
87 words
The method of claim 4, including the steps of: computing the dot-product of successive vectors formed between successive ones of said n indicium of said first series of indicia comprising said stroke; determining a dot-product threshold value for said dot-product of successive vectors formed between successive ones of said n indicia of said first series of indicia comprising said stroke; producing said given one of said m indicia in said second series of indicia only when said dot-product has a predetermined relationship to said dot-product threshold value.
Claim 9
Independent Claim
224 words
A method of filtering a series of signals representative of n points, where n is an integer, on an input stroke produced by a writing instrument on a writing surface, for producing an output stroke comprised of m points, where m is an integer, and m<n, said method comprising the steps of: (a) collecting said series of signals representing said n points on said input stroke; (b) outputing the first of said n points as the first of said m points of said output stroke; (c) inspecting at least points a, b and c of said n points on said input stroke starting with the first of said n points; (d) determining the cross product of vectors ab and bc; (e) setting b=b+1 and c=c+2 if the cross product of ab and bc are below a predetermined threshold, and repeat step (d); (f) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said predetermined threshold; (g) restarting the inspection of points a, b and c at the point b output in step (f), with a=restart point b=restart point +1 c=restart point +2; (h) repeating steps (d) through (g) until c is greater than n; and (i) outputing n as the last point of said m points in said output stroke.
Claim 10
Independent Claim
224 words
A method of filtering a series of signals representative of n points, where n is an integer, on an input stroke produced by a writing instrument on a writing surface, for producing an output stroke comprised of m points, where m is an integer, and m<n, said method comprising the steps of: (a) collecting said series of signals representing said n points on said input stroke; (b) outputing the first of said n points as the first of said m points of said output stroke; (c) inspecting at least points a, b and c of said n points on said input stroke starting with the first of said n points; (d) determining the cross product of vectors ab and bc; (e) setting b=b+1 and c=c+2 if the cross product of ab and bc are below a predetermined threshold, and repeat step (d); (f) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said predetermined threshold; (g) restarting the inspection of points a, b and c at the point b output in step (f), with a=restart point b=restart point +1 c=restart point +2; (h) repeating steps (d) through (g) until c is greater than n; and (i) outputing n as the last point of said m points in said output stroke.
Claim 11
Dependent Claim
93 words
The method of claim 6, including the steps of: (j) restarting the inspection of points a, b and c at the last b output in step (f), if c>n, with: a=n-1 b=n-2 c=n-3; (k) determining the cross product of vectors ab and bc; (l) setting b=b-1 and c=c-2 if the cross product of ab and bc are below a predetermined threshold, and repeat step (k); and (m) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said predetermined threshold.
Claim 12
Independent Claim
328 words
A method of filtering a series of signals representative of n points Po. . . Pn-1, where n is an integer, on an input stroke produced by a writing instrument on a writing surface, for producing an output stroke comprised of m points, where m is an integer, and m<n, said method comprising the steps of: (a) collecting said series of signals representing said n points Po. . . Pn-1 on said input stroke; (b) calculating the size of said input stroke; (c) calculating a cross product threshold and a dot product threshold based on the size of said input stroke; (d) outputing Po as the first of said m points of said output stroke; (e) inspecting at least points a, b and c of said n points on said input stroke starting with Po, with: a=0 b=1 c=2; (f) determining if c>n; (g) determining the cross product and dot product of vectors ab and bc; (h) setting b=b+1 and c=c+2 if the cross product of ab and bc are below said cross product threshold and the dot product of ab and bc are greater than said dot product threshold, and repeat steps (f) and (g); (i) determining if point b or c is wild; (j) setting b=b+1 and c=c+2 if b or c is wild, and repeat steps (f) and (g); (k) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said cross product threshold, and the dot product of ab and bc are not above said dot product threshold, and b and c are not wild points; (1) restarting the inspection of points a, b and c at the point b output in step (k), with: a=restart point b=restart point +1 c=restart point +2; (m) repeating steps (f) through (m) until c is greater than n; and (n) outputing Pn-1 as the last point of said m points in said output stroke;
Claim 13
Independent Claim
328 words
A method of filtering a series of signals representative of n points Po. . . Pn-1, where n is an integer, on an input stroke produced by a writing instrument on a writing surface, for producing an output stroke comprised of m points, where m is an integer, and m<n, said method comprising the steps of: (a) collecting said series of signals representing said n points Po. . . Pn-1 on said input stroke; (b) calculating the size of said input stroke; (c) calculating a cross product threshold and a dot product threshold based on the size of said input stroke; (d) outputing Po as the first of said m points of said output stroke; (e) inspecting at least points a, b and c of said n points on said input stroke starting with Po, with: a=0 b=1 c=2; (f) determining if c>n; (g) determining the cross product and dot product of vectors ab and bc; (h) setting b=b+1 and c=c+2 if the cross product of ab and bc are below said cross product threshold and the dot product of ab and bc are greater than said dot product threshold, and repeat steps (f) and (g); (i) determining if point b or c is wild; (j) setting b=b+1 and c=c+2 if b or c is wild, and repeat steps (f) and (g); (k) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said cross product threshold, and the dot product of ab and bc are not above said dot product threshold, and b and c are not wild points; (1) restarting the inspection of points a, b and c at the point b output in step (k), with: a=restart point b=restart point +1 c=restart point +2; (m) repeating steps (f) through (m) until c is greater than n; and (n) outputing Pn-1 as the last point of said m points in said output stroke;
Claim 14
Dependent Claim
170 words
The method of claim 8, including the steps of: (o) restarting the inspection of points a, b and at the last b output in step (k), if c>n in step (f), with: a=n-1 b=n-2 c=n-3; (p) determining if c<last b; (q) determining the cross product and dot product of vectors ab and bc; (r) setting b=b-1 and c=c-2 if the cross product of ab and bc are below said cross product threshold, and the dot product of ab and bc is above said dot product threshold, and repeat steps (p) and (q); (s) determining if points b or c are wild; (t) setting b=b-1 and c=c-2 if b or c is wild, and repeat steps (p) through (r); and (u) outputing b as one of said m points of said output stroke if the cross product of ab and bc are not below said cross product threshold, and the dot product of ab and bc are not above said dot product threshold, and b and c are not wild points.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1994-06-10 | 1994-12-10 | 1995-06-11 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1998-06-10 | 1998-12-10 | 1999-06-11 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2002-06-10 | 2002-12-10 | 2003-06-11 | $7700.00 | Window Closed / Lapsed |