US2019025977A1PendingUtilityA1

Data processing in relation to a multi-touch sensing apparatus

61
Assignee: FLATFROG LAB ABPriority: Jul 1, 2010Filed: Jun 13, 2018Published: Jan 24, 2019
Est. expiryJul 1, 2030(~4 yrs left)· nominal 20-yr term from priority
G06F 2203/04808G06F 2203/04104G06F 3/041G06F 3/04883G06F 3/044G06F 3/0416G06F 3/0418G06F 3/0446G06F 3/04166G06F 3/04186
61
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A device obtains a signal representative of objects on a touch surface of a multi-touch sensing apparatus and executes a method for extracting touch data from the signal. The method operates in a sequence of detection frames. Each detection frame comprises the steps of: obtaining (300) the signal; processing (301) the signal for identifying touches; determining (302) a set of identified touches and touch data for the set of identified touches; and outputting (303) the touch data. At least one of the steps of processing (301) and determining (302) includes a prioritization that actively favors certain touches to be identified and included in the set of identified touches, respectively. Temporal prioritization favors a touch that corresponds to a previous touch, which is identified in one or more preceding detection frames. Spatial prioritization favors a touch that is located within at least one predefined subarea on the touch surface. The prioritization enables the touch data to be generated in way that is predictable, consistent and in accordance with user expectations within a general or specific context.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for extracting data from a multi-touch sensing apparatus, wherein said method operates in a sequence of detection frames, each detection frame comprising the steps of:
 obtaining ( 300 ) at least one signal representative of objects on a touch surface ( 1 ) of the sensing apparatus;   processing ( 301 ) said at least one signal for identifying touches;   determining ( 302 ) a set of identified touches and touch data for the set of identified touches; and   outputting ( 303 ) the touch data;   wherein each detection frame includes a prioritization based on a previous touch which is identified by the step of processing ( 301 ) in one or more preceding detection frames, wherein the prioritization is included in at least one of the step of processing ( 301 ) and the step of determining ( 302 ), wherein the prioritization in the step of processing ( 301 ) comprises a step of actively favoring that a touch corresponding to the previous touch is identified, and wherein the prioritization in the step of determining ( 302 ) comprises a step of actively favoring that an identified touch corresponding to the previous touch is included in the set of identified touches.   
     
     
         2 . The method of  claim 1 , wherein the step of actively favoring in the step of processing ( 301 ) operates to promote that the touch is identified in said at least one signal. 
     
     
         3 . The method of  claim 1  or  2 , wherein the step of processing ( 301 ) comprises a step of identifying a signal feature in said at least one signal, wherein the step of actively favoring in the step of processing ( 301 ) comprises estimating the location of the touch that corresponds to the previous touch and identifying the signal feature based on the thus-estimated location. 
     
     
         4 . The method of  claim 3 , wherein the signal feature is a local change in signal values in a projection signal (S 1 , S 2 ), in which the signal values corresponds to transmitted energy on a plurality of detection lines (D 1n , D 2n ) across the touch surface ( 1 ). 
     
     
         5 . The method of  claim 3 , wherein the signal feature corresponds to a local change in signal values in a distribution (M) of an energy-related parameter within at least part of the touch surface ( 1 ). 
     
     
         6 . The method of  claim 1  or  2 , wherein the step of processing ( 301 ) comprises a step of comparing a spatial distribution (S 1 , S 2 ; M) of signal values to corresponding threshold values (TH), wherein the step of actively favoring in the step of processing ( 301 ) comprises estimating the location of the touch that corresponds to the previous touch and locally changing the threshold values (TH) based on the thus-estimated location. 
     
     
         7 . The method of  claim 6 , wherein the signal values are included in said at least one signal. 
     
     
         8 . The method of  claim 6  or  7 , wherein the signal values are included in a distribution (M) of an energy-related parameter within at least part of the touch surface ( 1 ), said distribution (M) being obtained based on said at least one signal. 
     
     
         9 . The method of  claim 1  or  2 , wherein the step of processing ( 301 ) comprises:
 obtaining, based on said at least one signal, a distribution (M) of an energy-related parameter within at least part of the touch surface ( 1 ); 
 identifying a set of local extrema in the distribution, and sequentially processing the set of local extrema for determining the touch data ( 1 ), wherein the step of actively favoring in the step of processing ( 301 ) comprises actively favoring one or more local extrema in the set of local extrema. 
 
     
     
         10 . The method of any preceding claim, wherein the step of processing ( 301 ) comprises: identifying a number of touches based on said at least one signal, and wherein the step of actively favoring in the step of determining ( 302 ) comprises actively selecting the set of identified touches as a subset of said number of identified touches. 
     
     
         11 . The method of  claim 10 , wherein the set of identified touches is limited to a predefined maximum number of touches. 
     
     
         12 . The method  claim 10  or  11 , wherein the step of processing ( 301 ) comprises determining age data for each touch, the age data representing a number of preceding detection frames in which the touch is deemed to be identified, and wherein said set of identified touches is selected among the number of touches based on the age data. 
     
     
         13 . The method of any preceding claim, wherein the prioritization comprises: sequentially applying different prioritization criteria to actively determine the set of identified touches. 
     
     
         14 . The method of any preceding claim, wherein the prioritization limits the set of identified touches to identified touches corresponding to previous touches. 
     
     
         15 . The method of any preceding claim, wherein the prioritization further comprises:
 accessing ( 30 ) a history list which contains location data and age data of touch traces, wherein each touch trace represents a previous touch, the location data representing the most recent location(s) of the previous touch on the touch surface ( 1 ), and the age data representing the number of detection frames in which the previous touch has been identified, and wherein the step of actively favoring in the step of processing is based on at least the location data in the history list.   
     
     
         16 . The method of  claim 15 , further comprising the steps of matching ( 402 ) said set of identified touches for a current detection frame to the touch traces in the history list, and updating ( 301 ″) the history list based on the step of matching ( 402 ). 
     
     
         17 . The method of  claim 16 , wherein the step of updating ( 301 ″) comprises, for each touch trace that matches a touch in said set of identified touches, changing ( 403 ) the location data to represent a current location of the touch. 
     
     
         18 . The method of  claim 16  or  17 , wherein the step of updating ( 301 ″) comprises, for each touch trace that fails to match a touch in the set of identified touches, removing ( 405 ) the touch trace from the history list. 
     
     
         19 . The method of  claim 18 , wherein said removing ( 405 ) is effected a given number of detection frames following the current detection frame, unless the touch trace is found to match a touch identified in one of said number of detection frames following the current detection frame. 
     
     
         20 . The method of any one of  claims 16 - 19 , wherein the step of updating ( 301 ″) comprises, for each touch in the set of identified touches that fails to match a touch trace in the history list, adding ( 404 ) a new touch trace to the history list based on the touch. 
     
     
         21 . The method of any preceding claim, wherein said at least one signal is obtained from a plurality of sensors ( 2 ) arranged within and/or around the touch surface ( 1 ). 
     
     
         22 . A computer program product comprising computer code which, when executed on a data-processing system, is adapted to carry out a method of any one of  claims 1 - 21 . 
     
     
         23 . A device for generating touch data in a sequence of detection frames, said device comprising:
 an element ( 31 ) for obtaining, in each detection frame, at least one signal representative of objects on a touch surface ( 1 ) of a multi-touch sensing apparatus; an element ( 32 ) for processing, in each detection frame, said at least one signal for identifying touches;   an element ( 33 ) for determining a set of identified touches and touch data for the set of identified touches; and   an element ( 34 ) for outputting, in each detection frame, said touch data;   wherein the device is configured to effect a prioritization based on a previous touch which is identified by the element ( 32 ) for processing in one or more preceding detection frames, wherein the prioritization is implemented by at least one of the element ( 32 ) for processing and the element ( 33 ) for determining, wherein the element ( 32 ) for processing is configured to effect the prioritization by actively favoring that a touch corresponding to the previous touch is identified, and wherein the element ( 33 ) for determining is configured to effect the prioritization by actively favoring that an identified touch corresponding to the previous touch is included in the set of identified touches.   
     
     
         24 . A device for generating touch data, said device comprising:
 an input ( 30 ); and   a signal processor ( 6 ) connected to said input ( 30 ) and configured to operate in a sequence of detection frames, each detection frame comprising the steps of obtaining ( 300 ) via said input at least one signal representative of objects on a touch surface ( 1 ) of a multi-touch sensing apparatus; processing ( 301 ) said at least one signal for identifying touches;   determining ( 302 ) a set of identified touches and touch data for the set of identified touches; and outputting ( 303 ) said touch data; wherein each detection frame includes a prioritization based on a previous touch which is identified by the step of processing ( 301 ) in one or more preceding detection frames, wherein the prioritization is included in at least one of the step of processing ( 301 ) and the step of determining ( 302 ), wherein the prioritization in the step of processing comprises a step of actively favoring that a touch corresponding to the previous touch is identified, and wherein the prioritization in the step of determining ( 302 ) comprises a step of actively favoring that an identified touch corresponding to the previous touch is included in the set of identified touches.   
     
     
         25 . A multi-touch sensing apparatus, comprising:
 a touch surface ( 1 ), a plurality of sensors ( 2 ) arranged within and/or around the touch surface ( 1 ) and adapted to generate at least one signal representative of objects on the touch surface ( 1 ), and the device of  claim 23  or  24 .   
     
     
         26 . A method for extracting data from a multi-touch sensing apparatus, said method comprising the steps of:
 obtaining ( 900 ) at least one signal representative of objects on a touch surface ( 1 ) of the sensing apparatus;   processing ( 901 ) said at least one signal for identifying touches;   determining ( 902 ) a set of identified touches and touch data for the set of identified touches; and   outputting ( 903 ) the touch data;   wherein each detection frame includes a prioritization based on at least one predefined subarea ( 1001 ,  1002 ,  1003 ) on the touch surface ( 1 ), wherein said at least one predefined subarea ( 1001 ,  1002 ,  1003 ) has a fixed location on touch surface ( 1 ) or is defined in relation to one or more graphical objects that are displayed on the touch surface ( 1 ), wherein the prioritization is included in at least one of the step of processing ( 901 ) and the step of determining ( 902 ), wherein the prioritization in the step of processing ( 901 ) comprises a step of actively favoring that a touch is identified within said at least one predefined subarea ( 1001 , 1002 ,  1003 ), and wherein the prioritization in the step of determining ( 902 ) comprises a step of actively favoring that an identified touch is included in the set of identified touches if the identified touch is located within said at least one predefined subarea ( 1001 ,  1002 ,  1003 ).   
     
     
         27 . The method of  claim 26 , further comprising applying a maximum limit to the number of touches within said at least one predefined subarea ( 1001 ,  1002 ,  1003 ) to be included in the set of identified touches. 
     
     
         28 . The method of  claim 26  or  27 , wherein a plurality of predefined subareas ( 1001 ,  1002 ,  1003 ) are defined on the touch surface ( 1 ), each subarea ( 1001 ,  1002 ,  1003 ) having a priority value, wherein the step of actively favoring in the step of processing ( 901 ) comprises identifying touches within the subareas ( 1001 ,  1002 ,  1003 ) according to an ordering given by the priority value of each subarea ( 1001 ,  1002 ,  1003 ), and wherein the step of actively favoring in the step of determining ( 902 ) comprises selecting, based on the respective priority values of the subareas ( 1001 ,  1002 ,  1003 ), the identified touches to be included in the set of identified touches among the identified touches that are located within the predefined subareas ( 1001 ,  1002 ,  1003 ). 
     
     
         29 . The method of any one of  claims 26 - 28 , wherein the prioritization limits the set of identified touches to touches in said at least one predefined subarea ( 1001 ,  1002 ,  1003 ). 
     
     
         30 . A computer program product comprising computer code which, when executed on a data-processing system, is adapted to carry out a method of any one of  claims 26 - 29 . 
     
     
         31 . A device for generating touch data, said device comprising:
 an element ( 91 ) for obtaining at least one signal representative of objects on a touch surface ( 1 ) of a multi-touch sensing apparatus;   an element ( 92 ) for processing said at least one signal for identifying touches;   an element ( 93 ) for determining a set of identified touches touch data for the set of identified touches; and   an element ( 94 ) for outputting the touch data;   wherein the device is configured to effect a prioritization based on at least one predefined subarea ( 1001 ,  1002 ,  1003 ) on the touch surface ( 1 ), wherein said at least one predefined subarea ( 1001 ,  1002 ,  1003 ) has a fixed location on touch surface ( 1 ) or is defined in relation to one or more graphical objects that are displayed on the touch surface ( 1 ), wherein the prioritization is implemented by at least one of the element ( 92 ) for processing and the element ( 93 ) for determining, wherein the element ( 92 ) for processing is configured to effect the prioritization by actively favoring that a touch is identified within said at least one predefined subarea ( 1001 , 1002 ,  1003 ), and wherein the element ( 93 ) for determining is configured to effect the prioritization by actively favoring that an identified touch is included in the set of identified touches if the identified touch is located within said at least one predefined subarea ( 1001 ,  1002 ,  1003 ).   
     
     
         32 . A device for generating touch data, said device comprising:
 an input ( 90 ); and   a signal processor ( 6 ) connected to said input ( 90 ) and configured to perform the steps of obtaining ( 900 ) via said input at least one signal representative of objects on a touch surface ( 1 ) of a multi-touch sensing apparatus; processing ( 901 ) said at least one signal for identifying touches; determining ( 902 ) a set of identified touches and touch data for the set of identified touches; and outputting ( 903 ) said touch data;   wherein the signal processor ( 6 ) is further configured to include a prioritization in at least one of the step of processing ( 901 ) and the step of determining ( 902 ), the prioritization being based on at least one predefined subarea ( 1001 ,  1002 ,  1003 ) which has a fixed location on touch surface ( 1 ) or is defined in relation to one or more graphical objects that are displayed on the touch surface ( 1 ), wherein the prioritization in the step of processing ( 901 ) comprises a step of actively favoring that a touch is identified within said at least one predefined subarea ( 1001 , 1002 ,  1003 ), wherein the prioritization in the step of determining ( 902 ) comprises a step of actively favoring that an identified touch is included in the set of identified touches if the identified touch is located within said at least one predefined subarea ( 1001 ,  1002 ,  1003 ).   
     
     
         33 . A multi-touch sensing apparatus, comprising: a touch surface, a plurality of sensors arranged within and/or around the touch surface and adapted to generate at least one signal representative of objects on the touch surface, and the device of  claim 31  or  32 .

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.