Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
OPTICAL MULTI-TOUCH SENSOR
Document Type and Number:
WIPO Patent Application WO/2017/044316
Kind Code:
A1
Abstract:
A method for detecting locations of multiple objects simultaneously touching a screen, for use by a processor of a light-based touch screen system including a display, a plurality of activatable light pulse emitters that, when activated, transmit light over and across the display, and a plurality of activatable light pulse receivers that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received, wherein each emitter transmits light that arrives at a plurality of receivers, the method including activating a plurality of emitter-receiver pairs and storing the respective output values of the activated receivers, detecting candidate objects based on stored receiver output values that differ from their corresponding expected receiver output values, for each candidate object, deriving a detection density thereof based on the stored receiver output values, and identifying candidate objects having low detection densities as being ghosted touch locations.

Inventors:
PETTERSSON ROBERT (SE)
HOLMGREN STEFAN (SE)
ROSENGREN ERIK (SE)
SPARF LARS (SE)
Application Number:
PCT/US2016/048641
Publication Date:
March 16, 2017
Filing Date:
August 25, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
NEONODE INC (US)
International Classes:
G06F3/041; G06F3/042; G06F3/14
Foreign References:
US20140071094A12014-03-13
US20140320459A12014-10-30
US20140168162A12014-06-19
US20130135259A12013-05-30
US20150042582A12015-02-12
Attorney, Agent or Firm:
BERGER, Marc A. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is :

1. A method for detecting locations of multiple objects simultaneously touching a screen, for use by a processor of a light-based touch screen system comprising

a display,

a plurality of activatable light pulse emitters, denoted E, that, when activated, transmit light over and across the display, and

a plurality of activatable light pulse receivers, denoted R, that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received,

wherein each emitter transmits light that arrives at a plurality of receivers, and

wherein for each emitter-receiver pair (E, R), there is a parallelogram-like area Area(E, R) of the display corresponding to the section of light emitted by emitter E that arrives at receiver R, and a corresponding expected output value for receiver R when that section of light is not blocked by an object touching the display, the method comprising :

activating a plurality of emitter-receiver pairs (E, R) and storing the respective output values of the activated receivers R;

designating different trapezoidal-like unions, U, of areas Area(E, R), for detecting candidate objects therewithin, the unions U being formed from areas corresponding to a common emitter and multiple receivers, and also from areas corresponding to a common receiver and multiple emitters;

for each union U, detecting candidate objects, CO, therewithin based on stored receiver output values that differ from their corresponding expected receiver output values; for each candidate object CO detected by any of the unions U, deriving a detection density of CO based on the stored receiver output values; and

identifying candidate objects CO having a low detection density as being ghosted touch locations.

2. The method of claim 1, wherein, for each candidate object CO, said deriving a detection density comprises :

for each union U, determining a respective area of the display shadowed by CO;

combining the various thus-determined respective areas of the display shadowed by CO, to form an area of the display occupied by CO;

for each union U, further determining the percentage of the area of the display occupied by CO that intersects the area of the display shadowed by CO as determined from U; and

deriving the detection density of CO based on the thus-further determined percentages.

3. A touch screen comprising :

a display;

a plurality of activatable light pulse emitters, denoted E, that, when activated, transmit light over and across said display;

a plurality of activatable light pulse receivers, denoted R, that, when activated, receive light transmitted by said emitters and output values representing the amounts of light received,

wherein each emitter transmits light that arrives at a plurality of receivers, and

wherein for each emitter-receiver pair (E, R), there is a parallelogram-like area Area(E, R) of said display corresponding to the section of light emitted by emitter E that arrives at receiver R, and a corresponding expected output value for receiver R when that section of light is not blocked by an object touching said display;

a volatile memory for storing output values of activated receivers R;

a processor connected to said emitters E, to said receivers R, and to said volatile memory, activating a plurality of emitter-receiver pairs (E, R) and storing the output values of the activated receivers R in said volatile memory; and

a non-transitory computer-readable medium connected to said processor and storing a computer program with computer program code which, when read by said processor, causes the processor to:

(i) designate different trapezoidal-like unions, U, of areas Area(E, R), for detecting candidate objects therewithin, the unions U being formed from areas corresponding to a common emitter and multiple receivers, and also from areas corresponding to a common receiver and multiple emitters,

(ii) for each union U, detect candidate objects, CO, therewithin based on the stored receiver output values that differ from their corresponding expected receiver output values,

(iii) for each candidate object CO detected by any of the unions U, derive a detection density of CO based on the stored receiver output values, and

(iv) identify candidate objects CO having a low detection density as being ghosted touch locations.

4. The touch screen of claim 3, wherein, the stored computer program further causes said processor to derive a detection density for each candidate object CO by: (a) determining a respective area of said display shadowed by CO for each union U,

(b) combining the various thus-determined respective areas of said display shadowed by CO, to form an area of said display occupied by CO,

(c) for each union U, further determining the percentage of the area of said display occupied by CO that intersects the area of said display shadowed by CO as determined from U, and

(d) deriving the detection density of CO based on the thus- further determined percentages.

5. A method for detecting locations of multiple objects simultaneously touching a screen, for use by a processor of a light-based touch screen system comprising

a display,

a plurality of activatable light pulse emitters that, when activated, transmit light over and across the display, and

a plurality of activatable light pulse receivers that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received,

wherein each emitter transmits light that arrives at a plurality of receivers, the method comprising :

activating a plurality of emitter-receiver pairs and storing the respective output values of the activated receivers;

detecting candidate objects based on stored receiver output values that differ from their corresponding expected receiver output values;

for each candidate object, deriving a detection density thereof based on the stored receiver output values; and identifying candidate objects having low detection densities as being ghosted touch locations.

6. A touch screen comprising :

a display;

a plurality of activatable light pulse emitters that, when activated, transmit light over and across said display;

a plurality of activatable light pulse receivers that, when activated, receive light transmitted by said emitters and output values representing the amounts of light received,

wherein each emitter transmits light that arrives at a plurality of receivers;

a volatile memory for storing output values of activated receivers;

a processor connected to said emitters, to said receivers and to said volatile memory, activating a plurality of emitter-receiver pairs and storing the output values of the activated receivers in said volatile memory; and

a non-transitory computer-readable medium connected to said processor and storing a computer program with computer program code which, when read by said processor, causes the processor to:

detect candidate objects based on the stored receiver output values that differ from their corresponding expected receiver output values,

for each candidate object detected, derive a detection density thereof based on the stored receiver output values, and

identify candidate objects having a low detection density as being ghosted touch locations.

Description:
OPTICAL MULTI-TOUCH SENSOR

PRIORITY REFERENCE

[0001] This application claims benefit of and hereby incorporates by reference US Provisional Application No. 62/215, 170, entitled OPTICAL MULTI-TOUCH SENSOR and filed on September 8, 2015 by inventors Robert Pettersson, Stefan Holmgren, Erik Rosengren and Lars Sparf.

FIELD OF THE INVENTION

[0002] The field of the present invention is light-based touch screens and proximity sensors operable to detect multiple objects simultaneously. In many applications the detected objects are fingers and the number of simultaneously tracked objects is often five or more.

BACKGROUND OF THE INVENTION

[0003] Prior art light based touch screens project light beams in perpendicular directions, across and parallel to the screen surface. Such prior art touch screens often cannot unambiguously determine the two- dimensional locations of multiple objects touching the screen when those objects are not aligned along one of the light beam directions. This problem is known as "ghosting". Ghosting occurs when multiple touch coordinates along each axis are detected, but no indication is provided as to how to combine these coordinates into pairs. For example, four coordinates, XI, X2, Yl , and Y2 are detected, but no indication is provided whether two objects are situated at (XI, Yl) and (X2, Y2) or at (XI, Y2) and (X2, Yl), or whether there are actually three objects touching the screen at three of these locations, or whether there is an object at each of these four locations. A "ghosted" location is a combination of detected coordinates at which an object is not located. In the example given above, when two objects are present at (XI, Yl) and (X2, Y2) but not at (XI, Y2) and (X2, Yl), then (XI, Y2) and (X2, Yl) are ghosted locations.

SUMMARY

[0004] There is thus provided in accordance with an embodiment of the present invention a method for detecting locations of multiple objects simultaneously touching a screen, for use by a processor of a light-based touch screen system including a display, a plurality of activatable light pulse emitters, denoted E, that, when activated, transmit light over and across the display, and a plurality of activatable light pulse receivers, denoted R, that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received, wherein each emitter transmits light that arrives at a plurality of receivers, and wherein for each emitter-receiver pair (E, R), there is a parallelogram-like area Area(E, R) of the display corresponding to the section of light emitted by emitter E that arrives at receiver R, and a corresponding expected output value for receiver R when that section of light is not blocked by an object touching the display, the method including activating a plurality of emitter-receiver pairs (E, R) and storing the respective output values of the activated receivers R, designating different trapezoidal-like unions, U, of areas Area(E, R), for detecting candidate objects therewithin, the unions U being formed from areas corresponding to a common emitter and multiple receivers, and also from areas corresponding to a common receiver and multiple emitters, for each union U, detecting candidate objects, CO, therewithin based on stored receiver output values that differ from their corresponding expected receiver output values, for each candidate object CO detected by any of the unions U, deriving a detection density of CO based on the stored receiver output values, and identifying candidate objects CO having a low detection density as being ghosted touch locations.

[0005] Additionally for each candidate object CO, the deriving a detection density includes for each union U, determining a respective area of the display shadowed by CO, combining the various thus-determined respective areas of the display shadowed by CO, to form an area of the display occupied by CO, for each union U, further determining the percentage of the area of the display occupied by CO that intersects the area of the display shadowed by CO as determined from U, and deriving the detection density of CO based on the thus-further determined percentages.

[0006] There is further provided, in accordance with an embodiment of the present invention, a touch screen including a display, a plurality of activatable light pulse emitters, denoted E, that, when activated, transmit light over and across the display, a plurality of activatable light pulse receivers, denoted R, that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received, wherein each emitter transmits light that arrives at a plurality of receivers, and wherein for each emitter-receiver pair (E, R), there is a parallelogram-like area Area(E, R) of the display corresponding to the section of light emitted by emitter E that arrives at receiver R, and a corresponding expected output value for receiver R when that section of light is not blocked by an object touching the display, a volatile memory for storing output values of activated receivers R, a processor connected to the emitters E, to the receivers R, and to the volatile memory, activating a plurality of emitter-receiver pairs (E, R) and storing the output values of the activated receivers R in the volatile memory, and a non-transitory computer-readable medium connected to the processor and storing a computer program with computer program code which, when read by the processor, causes the processor to (i) designate different trapezoidal-like unions, U, of areas Area(E, R), for detecting candidate objects therewithin, the unions U being formed from areas corresponding to a common emitter and multiple receivers, and also from areas corresponding to a common receiver and multiple emitters, (ii) for each union U, detect candidate objects, CO, therewithin based on the stored receiver output values that differ from their corresponding expected receiver output values, (iii) for each candidate object CO detected by any of the unions U, derive a detection density of CO based on the stored receiver output values, and (iv) identify candidate objects CO having a low detection density as being ghosted touch locations.

[0007] Yet further, for each candidate object CO, the stored computer program with computer program code further causes the processor to derive a detection density for each candidate object CO by: (a) determining a respective area of the display shadowed by CO for each union U, (b) combining the various thus-determined respective areas of the display shadowed by CO, to form an area of the display occupied by CO, (c) for each union U, further determining the percentage of the area of the display occupied by CO that intersects the area of the display shadowed by CO as determined from U, and (d) deriving the detection density of CO based on the thus-further determined percentages.

[0008] There is moreover provided in accordance with an embodiment of the present invention a method for detecting locations of multiple objects simultaneously touching a screen, for use by a processor of a light-based touch screen system including a display, a plurality of activatable light pulse emitters that, when activated, transmit light over and across the display, and a plurality of activatable light pulse receivers that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received, wherein each emitter transmits light that arrives at a plurality of receivers, the method including activating a plurality of emitter-receiver pairs and storing the respective output values of the activated receivers, detecting candidate objects based on stored receiver output values that differ from their corresponding expected receiver output values, for each candidate object, deriving a detection density thereof based on the stored receiver output values, and identifying candidate objects having low detection densities as being ghosted touch locations.

[0009] There is additionally provided in accordance with an embodiment of the present invention a touch screen including a display, a plurality of activatable light pulse emitters that, when activated, transmit light over and across the display, a plurality of activatable light pulse receivers that, when activated, receive light transmitted by the emitters and output values representing the amounts of light received, wherein each emitter transmits light that arrives at a plurality of receivers, a volatile memory for storing output values of activated receivers, a processor connected to the emitters, to the receivers and to the volatile memory, activating a plurality of emitter-receiver pairs and storing the output values of the activated receivers in the volatile memory, and a non-transitory computer-readable medium connected to the processor and storing a computer program with computer program code which, when read by the processor, causes the processor to: detect candidate objects based on the stored receiver output values that differ from their corresponding expected receiver output values, for each candidate object detected, derive a detection density thereof based on the stored receiver output values, and identify candidate objects having a low detection density as being ghosted touch locations. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] The present invention will be more fully understood and appreciated from the following detailed description, taken in conjunction with the drawings in which :

[0011] FIG. 1 is a simplified illustration of an optical touch screen with four candidate touch locations, in accordance with an embodiment of the present invention;

[0012] FIG. 2 is a simplified flowchart for a method of distinguishing actual touch locations from ghosted locations, in accordance with an embodiment of the present invention;

[0013] FIG. 3 is a simplified illustration of a light pulse emitted by one emitter, portions of which arrive at multiple receivers, in accordance with an embodiment of the present invention;

[0014] FIGS. 4 - 6 are simplified illustrations of portions of the light pulse of FIG. 3 arriving at different receivers, in accordance with an embodiment of the present invention;

[0015] FIGS. 7 and 8 are simplified illustrations of unions of parallelogram-shaped areas corresponding to portions of light emitted by an emitter that arrive at different receivers, in accordance with an embodiment of the present invention;

[0016] FIGS. 9 - 13 are simplified illustrations of detection shadows for different sets of beams, in accordance with an embodiment of the present invention;

[0017] FIG. 14 is a graph of detections from two sets of beams that are combined to identify touch objects, in accordance with an embodiment of the present invention;

[0018] FIG. 15 is a simplified illustration of a trapezoid-shaped detection area used for calculating the location and width of a touch object along the x axis, in accordance with an embodiment of the present invention; [0019] FIG. 16 is a simplified illustration of detection area centerlines, in accorda nce with an embodiment of the present invention ;

[0020] FIG. 17 is a simplified illustration of the principle of detection density, in accorda nce with a n embod iment of the present invention ;

[0021] FIG. 18 is a simplified illustration of four candidate touch objects, each ca ndidate object having three sets of data respectively derived from outputs of three beam sets, in accorda nce with a n embod iment of the present invention ;

[0022] FIG. 19 is a simplified illustration of four expected candidate touch objects ca lculated by averaging the ca nd idate locations and sizes of FIG. 18 for each object, in accordance with a n embod iment of the present invention;

[0023] FIG. 20 is a simplified illustration of degrees of overla p, or intersection, between the expected objects illustrated in FIG. 19 a nd one set of the candidate objects illustrated in FIG. 18, in accordance with an embod iment of the present invention ;

[0024] FIG. 21 is a simplified illustration of detection centerlines for multiple sets of beams in a touch screen, in accordance with a n embod iment of the present invention ;

[0025] FIG. 22 is a simplified illustration of a subset of the detection centerlines shown in FIG. 21, in accorda nce with an embod iment of the present invention;

[0026] FIG. 23 is a simplified illustration of a case in which two objects nea r each other are not sepa rated on one axis by any of the beam sets utilized by a n optica l touch screen, in accorda nce with an embodiment of the present invention ;

[0027] FIG. 24 is a simplified illustration of centerlines ca lculated based on detections generated by five touches, in accordance with a n embod iment of the present invention ; [0028] FIG. 25 is a simplified illustration of a shadow generated by three touch objects, in accordance with an embodiment of the present invention; and

[0029] FIG. 26 is a simplified illustration of a shadow generated by two touch objects, in accordance with an embodiment of the present invention.

[0030] The following table catalogs the numbered elements and lists the figures in which each numbered element appears. Similarly numbered elements represent elements of the same type, but they need not be identical elements.

DETAILED DESCRIPTION

[0031] Throughout this description, the terms 'light source" and "light pulse emitter" are used to indicate the same light emitting elements, inter alia LEDs and semiconductor laser diodes such as vertical-cavity surface- emitting lasers (VCSELs), and the terms 'light pulse receiver," 'light sensor" and 'light detector" are used to indicate the same light detecting elements, inter alia photo diodes.

[0032] Reference is made to FIG. 1, which is a simplified illustration of an optical touch screen with four candidate touch locations, in accordance with an embodiment of the present invention. FIG. 1 shows touch screen 601, arrays 201 and 202 of light pulse emitters along the screen's bottom and left edges, respectively, and arrays 301 and 302 of light pulse receivers along the screen's top and right edges, respectively. Light pulses from each emitter expand as they cross over the touch screen 601, and thereby arrive at multiple ones of the receivers in arrays 301 and 302. This provides multiple emitter-receiver pairs whose light is blocked by an object touching screen 601. The location of the touch object is determined based on the intersections between blocked, or at least partially blocked, beams.

[0033] FIG. 1 shows the light paths of the numerous light beams, collectively labeled 101 and 102, between different emitter-receiver pairs from among the emitters in array 202 and the receivers in array 302, that are blocked by two objects touching screen 601. As discussed hereinabove, blocked emitter-receiver pairs, formed by pairing emitters in array 201 with receivers 301, indicate two /-axis coordinates at which the touch objects are located; and blocked emitter-receiver pairs, formed by pairing emitters in array 202 with receivers 302 indicate two x-axis coordinates at which the touch objects are located . The combinations of these four coordinates form four candidate touch locations 901 - 904. The present invention distinguishes between the actual touch locations and the ghosted touch locations. As seen in FIG. 1, the density of blocked light beam paths is higher at candidate locations 902 and 903 than at candidate locations 901 and 904. This principle is applied in the present invention to distinguish actual touch locations at 902 and 903 from ghosted locations at 901 and 904.

[0034] Reference is made to FIG. 2, which is a simplified flowchart of a method of distinguishing actual touch locations from ghosted locations, in accordance with an embodiment of the present invention. Operations in the flowchart are explained below in conjunction with the drawings.

Operation 1001 - Activate Emitter-Receiver Pairs

[0035] At operation 1001 each emitter is activated with many of the receivers, and the receiver outputs for each emitter-receiver pair are stored. Reference is made to FIG. 3, which is a simplified illustration of a light pulse emitted by one emitter, portions of which arrive at multiple receivers, in accordance with an embodiment of the present invention. FIG. 3 shows touch screen 601 surrounded by light pulse emitters El - E9 and light pulse receivers Rl - Rll. A single light pulse 103 emitted by emitter E3 is shown, and portions of light pulse 103 arrive at receivers Rl - R7.

[0036] Reference is made to FIGS. 4 - 6, which are simplified illustrations of portions of light pulse 103 of FIG. 3 arriving at different receivers, in accordance with an embodiment of the present invention. FIGS. 4 - 6 show portions 110 - 112 of light pulse 103 emitted by E3 that arrive at receivers R3 - R5, respectively. In other words, light beams 110 - 112 correspond to emitter-receiver pairs (E3, R3), (E3, R4) and (E3, R5), respectively. Thus, the amounts of light from E3 detected at each receiver Rl - R7 are stored, and at operation 1001 such measurements are done for many such emitter-receiver pairs.

Operation 1005 - Designate and Combine Sets of Light Beams

[0037] Each detected portion of light 110 - 112, corresponding to an emitter-receiver pair, covers a parallelogram-shaped portion of display 601. This is arranged by having concatenated wide lenses in front of the receivers direct light onto each receiver, as discussed in US Publication No. 2012/0188206 Al, incorporated herein in its entirety by reference. Thus, for each emitter-receiver pair (E, R), there is a parallelogram-like area Area(E, R) of the display corresponding to the section of light emitted by emitter E that arrives at receiver R, and a corresponding expected output value for receiver R when that section of light is not blocked by an object touching the display. In FIGS. 4 - 6, portion 110 of light covers area Area(E3, R3), portion 111 of light covers area Area(E3, R4) and portion 112 of light covers area Area(E3, R5). For clarity of exposition, at times an area is referred to by its corresponding portion of light. E.g ., Area(E3, R3) may also be referred to as area 110.

[0038] Each parallelogram-shaped area is skewed at a corresponding angle with respect to an edge of the screen, e.g ., angles 61, 62 and 63 shown in FIGS. 4 - 6. It is clear from FIGS. 4 - 6 that the set of similarly skewed areas for multiple emitter-receiver pairs forms a sheet of light that covers most of the display. For example, the set of parallelograms corresponding to the series (El, Rl), (E2, R2), ... (En, Rn) covers most of the display; the set of parallelograms corresponding to the series (El, R2), (E2, R3), ... (En, Rn+1) also covers most of the display; and the set of parallelograms corresponding to the series (El, R3), (E2, R4), ... (En-1, Rn+1) also covers most of the display. At operation 1005, these sets of light beams are designated, and combined as described in what follows.

[0039] U.S. Publication No. 2012/0188206 Al, incorporated hereinabove, discusses calculating touch coordinates based on detections for two skewed sets of parallelogram-shaped areas, such as the two series (El, Rl), (E2, R2), ... (En, Rn) and (El, R2), (E2 r R3), ... (En, Rn+1). In the present invention, different trapezoidal-shaped unions are formed of the parallelogram-shaped areas, and the touch locations and touch object sizes are calculated separately for each such union.

[0040] Reference is made to FIGS. 7 and 8, which are simplified illustrations of unions of parallelogram-shaped areas corresponding to portions of light emitted by an emitter that arrive at different receivers, in accordance with an embodiment of the present invention. FIG. 7 shows the union of Area(E3, R3) and Area(R3, R4J, i.e., areas 110 and 111. In an embodiment of the current invention, multiple touch object locations are determined based on the two sets of parallelogram-shaped areas covering the screen skewed at angles Θ1 and Θ2.

[0041] FIG. 8 shows the union of Area(E3, R4j and Area(E3, R5), i.e., areas 111 and 112. The multiple touch object locations are again determined, this time based on the two sets of parallelogram-shaped areas covering the screen skewed at angles Θ2 and Θ3. In this manner, the multiple touch object locations are repeatedly determined based on two sets of parallelogram-shaped areas covering the screen. Within the two sets used at each determination stage, the union of two areas, one from each set, that share a common emitter or a common receiver, forms a trapezoidal-shaped area, as shown in FIGS. 7 and 8. In certain embodiments, each set of beams is used for two different determination stages. Thus, the set of beams skewed at Θ2 is used in determining the touch locations based on parallelogram-shaped areas covering the screen skewed at angles 61 and 62, as illustrated in FIG. 7, and also in determining the touch locations based on parallelogram-shaped areas covering the screen skewed at angles 62 and 63, as illustrated in FIG. 8.

[0042] In certain embodiments of the present invention, each set of beams includes three differently angled sets of beam, instead of two sets. For example, the three sets of beams represented in FIGS. 4 - 6 are combined to calculate touch locations based on parallelogram-shaped areas covering the screen skewed at angles 61, 62 and 63.

[0043] In certain embodiments, the combined differently angled beams from the emitters along a single edge of the screen, do not bisect each other. E.g., beams for (E3, R3) and (E2, R4) bisect each other, and therefore would not be combined in these embodiments. One reason to avoid such combinations is that when one of the beams is blocked, and that beam is bisected by another beam, it becomes necessary to keep track of whether the object is on one side of the bisecting beam or the other, and this adds complexity to the calculation. In contrast, when the beams originating from emitters along a common edge, used in the combination do not bisect one another, as in the combinations illustrated in FIGS. 7 and 8, when the object is detected by one beam and not by its partially overlapping neighbor, the object's location with respect to the unblocked beam is known.

[0044] In certain embodiments, the location and size of each touch object is calculated separately for each differently angled set of beams from emitters along a single edge of the screen. In these embodiments pairs of differently angled beams from the emitters along a single edge of the screen are not combined when calculating the location and size of each touch object. Operations 1006 - 1009 - Calculate Object Coordinates and Size

[0045] For each combination of designated sets of beams at operation 1005, the number of objects detected touching the screen is determined, and for each object, the object's coordinates are calculated, as discussed hereinabove and in U.S. Publication No. 2012/0188206 Al. Also, for each object, the dimensions of the shadow at the object's coordinates are calculated. As mentioned above, in some embodiments the number of objects detected touching the screen is determined, and for each object, the object's coordinates and the dimensions of the shadow at the object's coordinates are calculated, for each designated set of beams at operation 1005, without combining sets of differently angled beams along a common axis.

[0046] The number of objects detected touching the screen may differ for different sets of beams, or combinations of beam sets. Reference is made to FIGS. 9 - 13, which are simplified illustrations of detection shadows for different sets of beams, in accordance with an embodiment of the present invention. FIGS. 9 - 12 show how three objects, 905 - 907, are detected as two objects by sets of beams skewed at certain angles (FIGS. 9, 11 and 12), and as three objects by sets of beams skewed at other angles (FIG. 10).

[0047] FIGS. 9 - 12 show detection shadows 121 - 129 for different sets of beams. Thus, each shadowed parallelogram-shaped area 121 - 129 is not a single blocked skewed beam from one emitter to one receiver, but rather an area of blocked light within the set of similarly skewed beams. Each area 121 - 129 may span less than the width of a beam from one emitter to one receiver, and it may straddle two or more such beams within the set. FIG. 13 shows all of the shadowed areas 121 - 129. The complexity of extracting information from all of these shadowed areas in a single process is apparent from the intersecting shadowed areas shown this figure.

[0048] When two objects form a single detection shadow, such as shadowed area 126 in FIG. 11 formed by objects 905 and 906, it is often possible to identify that two objects are causing the detected shadow based on the relative intensities of neighboring beams that are being shadowed by the objects.

[0049] Reference is made to FIG. 14, which is a graph of detections from two sets of beams that are combined to identify touch objects, in accordance with an embodiment of the present invention. FIG. 14 shows a first set of beams (E n , R n ) and a second set of beams (E n+ i, R n )- In FIG. 14, the detections for beams belonging to the first and second sets are filled with diagonal lines and horizontal lines, respectively. As explained hereinabove, in two skewed sets of beams such as these, the beams do not bisect each other. The beams are ordered in the graph according to the areas of the screen that each beam covers. Thus, the parallelogram-shaped area covered by beam (E 2 , Ri) overlaps the area covered by beam (E lf R^ near receiver R l t and is located to the right of the area covered by beam (E lf R^ near emitters Ei and E 2 . Similarly, the parallelogram-shaped area covered by beam (E 2 , Ri) overlaps the area covered by beam (E 2 , R 2 ) near emitter E 2l and is located to the left of the area covered by beam (E 2/ R 2 ) near receivers Ri and R 2 .

[0050] In FIG. 14, the detection signal for beam (E 2/ R 2 ) is situated between two higher detection signals for beams (E 2/ R^ and (E 3 , R 2 ). This indicates that there is a space between two objects along the width of the area covered by the three beams (E 2/ R^ - (E 3 , R 2 ) through which some light passes, causing a lower detection at middle beam (E 2 , R 2 ). In other words, two different objects are being detected by the three beams (E 2/ Ri) - (E 3 , R 2 ). Similarly, the detection signal for beam (E 4 , R 3 ) situated between two higher detection signals for beams (E 3 , R 3 ) and (E 4 , R 4 ) indicates that two different objects are being detected by the three beams (E 3 , R 3 ) - (E 4 , R 4 ). Thus, based on the detections illustrated in FIG. 14, it is evident that at least three objects are touching the screen.

[0051] Next, for each set of beams, or for each combination of sets of beams as discussed above, the size and location of each object are calculated. The size of the object is determined by the area of intersection between that object's detection signals along the x and y axes for the beams being considered, and the object's location is deemed to be at the center of that area .

[0052] In FIGS. 9 - 13 detection signals 121 - 129 are illustrated as parallelogram-shaped areas having a fixed width. In some instances however, the detection signal area is trapezoidal. Reference is made to FIG. 15, which is a simplified illustration of a trapezoid-shaped detection area used for calculating the location and width of a touch object along the x axis, in accordance with an embodiment of the present invention. FIG. 15 shows trapezoid-shaped detection area 131 used for calculating the location and width of an object along the x-axis. The calculated size of the object will depend on where detection area 131 is intersected by a respective detection area for calculating the location and length of the object along the /-axis. FIG. 15 illustrates that the width of the object is Wl or W2, where Wl < W2, depending on whether the intersection is at /-axis coordinate 910 or 911. When multiple objects are touching the screen there may be two or more candidate locations within detection area 131, each candidate having a different width.

[0053] As the object's location is at the center of the intersection between that object's detection signals along the x- and y- axes, the object's location along one axis lies along the centerline of that axis's detection signal. Reference is made to FIG. 16, which is a simplified illustration of detection area centerlines, in accordance with an embodiment of the present invention. FIG. 16 shows centerlines 912 and 913 of detection areas 126 and 127 of FIG. 11.

[0054] This process is repeated for each set of beams, to generate a database of candidate objects in which each object is assigned multiple sizes and multiple locations -- one size and one location for each set of beams.

Operations 1010 and 1015 - Derive Detection Density for Each Candidate Object and Identify Ghost Touch Locations

[0055] This process is repeated for each set of beams, to generate a database of candidate objects in which each object is assigned multiple sizes and multiple locations -- one size and one location for each set of beams. Methods according to the present invention distinguish actual touch locations from ghosted locations based on the density of detections at each candidate location. Reference is made to FIG. 17, which is a simplified illustration of the principle of detection density, in accordance with an embodiment of the present invention. FIG. 17 shows the centerlines calculated for detections from many sets of beams. It is clear that the centerlines converge upon the two candidate touch locations 919 and 920. Thus, there is a high detection density at these two locations, whereas at the other candidate locations 921 and 922 there is a lower density of detections.

[0056] FIG. 17 illustrates the concept of detection density in an intuitive manner. Various methods can be employed to calculate a detection density metric. One set of methods uses both the candidate location and a calculated size of the touch object at the candidate location. This corresponds to operations 1021, 1022, 1031 and 1032 in the flowchart of FIG. 2. As mentioned above, for each set of beams both the size and the location of the object are calculated at each candidate location. This generates a table of data for each candidate location. The exemplary table below uses seven sets of differently angled beams, each beam set being skewed at a respective angle θι - θ 7 - The range of angles may vary in different embodiments, depending on requirements such as maximum number of touches that need to be resolved and the available processing and memory resources. Thus, for example, in some embodiments the angles θι - θ η are in the range of 90° +/-8°, and in others the angles θι - θ η are in the range of 90° +/-20 0 . In the table below, the object location and size are not calculated for each angled set separately, but rather each "beam set' is a pair of differently angled beam sets :

[0057] In this example an average location is derived from all of the five locations, and an average width and length of the object are calculated from all of the five sizes. The average location, width and height form an expected candidate object. A degree of overlap between the expected candidate object and a corresponding candidate object derived from one of the five beam sets is calculated . This is operation 1022 in the flowchart of FIG. 2. A degree of overlap is thus calculated between the expected candidate object and the corresponding candidate object in each of the five beam sets. The average of all five degrees of overlap indicates the density of detections for that object. This process is now explained with reference to FIGS. 18 - 20. [0058] Reference is made to FIG. 18, which is a simplified illustration of four candidate touch objects, each candidate object having three sets of data respectively derived from outputs of three beam sets, in accordance with an embodiment of the present invention. FIG. 18 shows four candidate touch objects 930 - 933 calculated separately for three beam sets, a - c. In this context the term "candidate touch object" includes a location and a size for each object, as determined by a set of light beams. Results for only three beam sets, a - c, are illustrated in order to keep the figures clear.

[0059] Reference is made to FIG. 19, which is a simplified illustration of four expected candidate touch objects calculated by averaging the candidate locations and sizes of FIG. 18 for each object, in accordance with an embodiment of the present invention. FIG. 19 shows expected candidate touch objects 930 - 933 calculated by averaging the candidate locations and sizes derived from beam sets a - c for each object. Measures other than the average, such as maximum, minimum and median values, may be used to derive an expected location or an expected size.

[0060] Reference is made to FIG. 20, which is a simplified illustration of degrees of overlap, or intersection, between the expected objects illustrated in FIG. 19 and one set of the candidate objects illustrated in FIG. 18, in accordance with an embodiment of the present invention. FIG. 20 shows degrees of overlap or intersection between the expected objects 930 - 933 and the candidate objects 930c - 933c derived from beam set c. In some embodiments, the degree of overlap is calculated as that percentage of the expected object covered by the corresponding shadow in one beam set. Thus, the overlap metric is a percentage.

[0061] In an alternative embodiment of the present invention, the number of pixels in the expected object that are covered by the corresponding shadow of one beam set, is calculated and used as the overlap metric. However, when different sized objects touch the screen at the same time, the resulting candidate objects also have different sizes and some of the ghosted objects are larger than the smallest of the actual touch objects. When evaluating two candidate objects having different sizes, this pixel-based metric is biased toward larger objects because they tend to have a larger number of pixels covered by the corresponding shadow than the smaller candidate object. For this reason, a percentage-based metric is preferred.

[0062] Regardless of which metric is used, this process is repeated for each of the remaining beam sets, a and b, and an average degree of overlap is calculated for each object. The average degree of overlap indicates a detection density for that object. Candidate locations with the highest detection densities are identified as most likely corresponding to actual touch objects, whereas candidate locations with the lowest detection densities are identified as ghost touch locations. This is operation 1015 in the flowchart of FIG. 2.

[0063] In some instances, two or more objects are detected as a single object by some beam sets, but not by others, as illustrated by FIGS. 9 - 12 and discussed above. Reference is made to FIG. 21, which is a simplified illustration of detection centerlines for multiple sets of beams in a touch screen, in accordance with an embodiment of the present invention. Reference is also made to FIG. 22, which is a simplified illustration of a subset of the detection centerlines shown in FIG. 21, in accordance with an embodiment of the present invention. FIGS. 21 and 22 illustrate a case in which two objects are placed near each other on the screen, resulting in detections from some sets of beams indicating only one object, whereas detections from other sets of beams indicate that there are two separate touches. FIG. 21 shows groups of centerlines 935 and 936. These are the centerlines of all beam sets, including those beam sets that detect only a single object. FIG. 22 shows groups of centerlines 937 and 938, which are centerlines from only those beam sets that detect two objects. In such instances, only those centerlines from beam sets that detect two objects are used to calculate the expected object locations, and the widths and heights derived only from corresponding beams from which these centerlines are derived are used for calculating the expected object width and height. Nonetheless, the operation of calculating a degree of overlap between the expected object and each of the different candidate objects includes the candidate objects derived from all beam sets.

[0064] In other instances, e.g ., when all the sets of different beams are all within +/- 8 degrees of a central beam on a 34" screen, two objects near each other are not separated on one axis by any of the beam sets. Such a case is illustrated in FIG. 23. Reference is made to FIG. 23, which is a simplified illustration of a case in which two objects near each other are not separated on one axis by any of the beam sets utilized by an optical touch screen, in accordance with an embodiment of the present invention. FIG. 23 shows two actual touch objects 908, 909 and the centerlines 950 - 952 of the different beam sets that detect these objects. None of the horizontally oriented centerlines 952 indicate two objects. In cases like these, the expected object location is at the center of the densest intersection of centerlines from those beam sets that detect two objects. In these cases, the intersections of centerlines oriented in only one direction are used. E.g ., in FIG. 23, the densest intersections of centerlines 950 and 951 are used as the location of the expected touch candidates. These intersections are indicated as numbered elements 953 and 954. This intersection location is more sensitive to noise than when both vertical and horizontal centerlines are used.

[0065] The same principles for discriminating actual touch locations from ghosted locations discussed hereinabove with reference to two touch objects are applied in instances of more than two touch objects. Reference is made to FIG. 24, which is a simplified illustration of centerlines calculated based on detections generated by five touches, in accordance with an embodiment of the present invention. FIG. 24 shows an instance of five touches along dashed line 960, from candidate location 955 to candidate location 959, and the multitude of centerlines 953 and 954 that are calculated. Such a situation typically results in 25 candidate touch objects. Systems according to the present invention identify the five actual locations because they have the highest detection densities.

[0066] In situations where more than the minimum number of touches required to explain the blocked light pattern exist, systems according to the present invention successfully identify all actual touch locations because each actual touch location has a substantially higher detection density than the ghosted locations. For example, referring back to FIG. 1, when actual objects touch the screen at locations 901 - 903, there will be a higher detection density at candidate locations 901 - 903 than at candidate location 904. This enables the system to distinguish all three actual touch locations from ghosted location 904, even though the light detection pattern could be explained with fewer actual touches, namely assuming touches at locations 902 and 903 alone. Similarly, when actual objects touch the screen at locations 901 - 904, there are similar detection densities at all four of the candidate locations 901 - 904 indicating that four objects are touching the screen. [0067] An alternative method of determining if more objects than the minimum number of objects necessary to explain the pattern of shadows are in fact touching the screen, uses the expected size or shape of the touch objects. Reference is made to FIG. 25, which is a simplified illustration of a shadow generated by three touch objects, in accordance with an embodiment of the present invention. Reference is also made to FIG. 26, which is a simplified illustration of a shadow generated by two touch objects, in accordance with an embodiment of the present invention. FIG. 25 shows four candidate objects 961 - 964 and a shadowed portion 133 of a set of light beams having a height h2. Based on other sets of light beams (not shown in FIG. 25), it is determined that at least candidate objects 961 and 964 are actual touch objects. However, square object 964 would have resulted in a narrower shadow 132 having a height hi, as shown in FIG. 26. Square object 964 is not sufficient to explain height h2 of shadow 133. Height h2 can be explained if one were to assume an elongated object 965 illustrated with dashed lines in FIG. 25. However, generally touch objects do not have the dimensions of object 965, e.g., because they are roughly square or circular objects. Thus, one assumes that a third object 963 is present, hiding behind objects 961 and 964.

[0068] In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will, however, be evident that various modifications and changes may be made to the specific exemplary embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.