Fast multi-touch post processing
First Claim
1. A low-latency touch sensitive device, comprising:
- first and second pluralities of conductors, arranged such that;
each of the paths of the conductors of the first plurality of conductors cross each of the paths of the conductors of the second plurality of conductors, and whereinwhen the touch sensitive device is not being touched, a negligible amount of signal is coupled between them, andwhen the touch sensitive device is being touched, a non-negligible amount of signal is coupled between them;
at least one signal processor adapted to process signals present on each of the second plurality of conductors, and for each of the signals present on each of the second plurality of conductors to determine which signals form a non-negligible part thereof, the at least one signal processor being adapted to convert a two-dimensional map representing signal strengths into usable touch events by applying;
a field flattening procedure that subtracts an offset level to remove crosstalk between rows and columns and compensates for differences in amplitude between particular row/column combinations due to attenuation, thereby creating a field-flattened signal;
a touch point detection procedure that computes coarse touch points by finding local maxima in the field-flattened signal;
an interpolation procedure that computes fine touch points from the coarse touch points; and
,a frame matching procedure that matches calculated touch points to each other across frames.
5 Assignments
0 Petitions
Accused Products
Abstract
In a low-latency touch-sensitive device, post-processing is performed to convert a two-dimensional map of signal strengths into usable touch events. Four such post-processing procedures are disclosed: field flattening, touch point detection, interpolation and touch point matching between frames. The field flattening procedure subtracts an offset to remove crosstalk between rows and columns, and compensates for differences in amplitude between particular row/column combinations due to attenuation. The touch point detection procedure computes coarse touch points by finding local maxima in the flattened signal. The interpolation procedure computes fine touch points from the coarse touch points. In an embodiment, such interpolation is done by fitting the coarse touch points to a paraboloid. The frame matching procedure matches the calculated touch points to each other across frames.
-
Citations
37 Claims
-
1. A low-latency touch sensitive device, comprising:
-
first and second pluralities of conductors, arranged such that; each of the paths of the conductors of the first plurality of conductors cross each of the paths of the conductors of the second plurality of conductors, and wherein when the touch sensitive device is not being touched, a negligible amount of signal is coupled between them, and when the touch sensitive device is being touched, a non-negligible amount of signal is coupled between them; at least one signal processor adapted to process signals present on each of the second plurality of conductors, and for each of the signals present on each of the second plurality of conductors to determine which signals form a non-negligible part thereof, the at least one signal processor being adapted to convert a two-dimensional map representing signal strengths into usable touch events by applying; a field flattening procedure that subtracts an offset level to remove crosstalk between rows and columns and compensates for differences in amplitude between particular row/column combinations due to attenuation, thereby creating a field-flattened signal; a touch point detection procedure that computes coarse touch points by finding local maxima in the field-flattened signal; an interpolation procedure that computes fine touch points from the coarse touch points; and
,a frame matching procedure that matches calculated touch points to each other across frames. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for determining one or more touch locations of one or more capacitive objects on a touch sensitive device, the touch sensitive device comprising at least one receiving wire connected to a receiver and a plurality of transmitting wires connected to a orthogonal signal transmitter, each transmitting wire intersecting with the at least one receiving wire, and each of the transmitting wires carrying a signal that is orthogonal to each of the other transmitting wires, and wherein the presence of a capacitive object in proximity to one or more of the intersections causes a non-negligible amount of signal to couple onto the at least one receiving wire, the method comprising the steps of:
-
creating a heat map comprising a row for each transmitting wire and a column for each of the at least one receiving wires, and thus, comprising an element for each row/column intersection; identifying the amount of each of the orthogonal signals present on the at least one receiving wire; populating each heat map elements with a value reflecting the amount of the orthogonal signal coupled at each corresponding intersection; locating the one or more local maxima in the heat map; fitting the heat map data surrounding each local maxima to a model function, the model function having a maximum; and for each fitting to a model function, computing the maximum of the model function and thus one or more touch locations on the touch sensitive device. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method for tracking one or more touch locations of one or more capacitive objects on a touch sensitive device, the touch sensitive device comprising at least one receiving wire connected to a receiver and a plurality of transmitting wires connected to an orthogonal signal transmitter, each transmitting wire intersecting with the at least one receiving wire, and each of the transmitting wires carrying a signal that is orthogonal to each of the other transmitting wires, and wherein the presence of a capacitive object in proximity to one or more of the intersections causes a non-negligible amount of signal to couple onto the at least one receiving wire, the method comprising the steps of:
-
i) creating an array comprising a row for each transmitting wire and a column for each of the at least one receiving wires, and thus, comprising an element for each row/column intersection; ii) creating a frame by; (1) identifying the amount of each of the orthogonal signals present on the at least one receiving wire; (2) populating each element of the array with a value reflecting the amount of the orthogonal signal coupled at each corresponding intersection; iii) processing the frame by; (1) locating the one or more local maxima in the array; (2) fitting the array data surrounding each local maximum to a model function, the model function having a maximum; iv) identifying in the frame one or more touch locations on the touch sensitive device by; (1) for each fitting to a model function, computing the maximum of the model function and thus one or more touch locations on the touch sensitive device; v) storing, in a temporary storage, data corresponding to the frame and at least one of the one or more touch locations on the touch sensitive device identified in the frame; vi) frame matching, using the data in temporary storage, thereby correlating at least one of the one or more touch locations on the touch sensitive device identified in one frame with at least one of the one or more touch locations on the touch sensitive device identified in another frame; vii) outputting the one or more touch locations and information concerning the correlation; viii) repeating steps (ii) through (vii) until no touch locations are being tracked. - View Dependent Claims (32, 33, 34, 35, 36, 37)
-
Specification