The application relates to an electronic device and to a method of processing user actuation of an input surface. The application relates in particular to electronic devices which have a proximity-sensitive touch sensor array to detect an actuation location.
Touch screens are used in a wide variety of electronic devices. Handheld electronic devices, such as handheld mobile communication terminals, are frequently provided with a proximity-sensitive touch sensor array. The electronic device performs a function in response to an input action, which depends on the actuation position at which the user touches an input surface of the electronic device, e.g. a window overlaid onto a display.
One general problem with this kind of user input interface is that there may be a discrepancy or offset between where a user thinks he has pressed onto the input surface and the actuation position at which the user has actually pressed onto the input surface. With increasing processing capabilities and functionalities provided in electronic devices such as mobile communication terminals, the offset problem may cause the electronic device to perform an operation which is different from the operation intended by the user.
There is a continued need in the art for an electronic device and for a method of processing user actuation of an input surface which address some of the above shortcomings. In particular, there is a continued need in the art for an electronic device and for a method of processing user actuation of an input surface in which the user input is processed so as to mitigate the risk that an operation other than the one intended by the user is performed.
According to embodiments, a finger angle at which the finger is directed towards an input surface of the electronic device is determined. An offset-correction is performed which depends on the finger angle. For illustration, an offset having a magnitude which is set based on the finger angle may be added to a detected actuation position on the input surface. Since the discrepancy between where a user thinks he has pressed onto the input surface and the actuation position at which the user has actually pressed onto or otherwise actuated the input surface depends on how the finger is directed towards the input surface, this technique allows the electronic device to at least partially correct for this offset.
According to embodiments, both the actuation location and the finger angle are determined from data captured using a proximity-sensitive touch sensor array. This allows an improved input accuracy to be attained using commodity hardware, such as a capacitive touch sensor array, which is at any rate provided to detect the actuation position.
According to an embodiment, an electronic device is provided. The electronic device comprises a proximity-sensitive touch sensor array which extends along an input surface of the electronic device. The electronic device comprises a processing device coupled to the touch sensor array and configured to process data captured by the touch sensor array. The processing device is configured to process the data captured by the touch sensor array to determine a finger angle at which a finger is directed towards the input surface and an actuation position on the input surface. The processing device is configured to establish an offset-corrected actuation position as a function of the actuation position and the finger angle.
The processing device may be configured to determine a variation in distance of the finger from the input surface in a spatially resolved manner and to derive the finger angle from the variation in distance. The variation in distance can be determined from the data captured using the touch sensor array.
The touch sensor array may comprise a conductive pattern for capacitive touch and proximity sensing. The conductive pattern may be formed from a translucent material, e.g. from Indium Tin Oxide (ITO), graphene, or other suitable materials. The conductive pattern may be attached to a window or a separate panel member. The conductive pattern may be overlaid onto a display. The processing device may process data which represent self-capacitances or mutual capacitances of the conductive pattern to determine the finger angle.
The conductive pattern may comprise a plurality of rows and a plurality of columns. The processing device may be configured to determine the finger angle based on self-capacitance measurements of the plurality of rows and self-capacitance measurements of the plurality of columns. The processing device may be configured to determine the finger angle based on both mutual capacitance measurements and self-capacitance measurements.
Alternatively or additionally to capacitive sensing, the touch sensor array may be configured to use sensing techniques other than capacitive touch and proximity sensing. For illustration, the touch sensor array may comprise an optic touch sensor. The touch sensor array may comprise an Infrared (IR) sensing sensor array. The touch sensor array may use electrical fields for proximity and touch sensing.
The touch sensor array may use sonar, ultra sound and/or Doppler measurements for proximity and touch sensing.
The processing device may be configured to determine the actuation position based on mutual capacitance measurements between rows and columns of the conductive pattern.
The processing device may be configured to determine the actuation position based on the self-capacitance measurements of the plurality of rows and of the plurality of columns.
The processing device may be configured to carry out a row scan to perform the self-capacitance measurements for the plurality of rows and a column scan to perform the self-capacitance measurements for the plurality of columns, and to derive the finger angle from data obtained in the row scan and data obtained in the column scan.
The processing device may be configured to derive the finger angle from a spatial gradient of self-capacitance data and/or mutual capacitance data. The processing device may be configured to compare the data captured in the row scan to a first plurality of spatially-dependent data sets and to compare the data captured in the column scan to a second plurality of spatially-dependent data sets, and to determine the finger angle from both comparisons. Each one of the data sets may be associated with respectively one of plural pre-defined finger angles. An interpolation between the different pre-defined finger angles may be performed. Both the finger angle and a direction of a projection of the finger onto the input surface may be derived from the data captured using the touch sensor array. The finger angle may be computed as weighted average of the pre-defined finger angles, with the weighting factors depending on self-capacitance data and/or mutual capacitance data.
The processing device may be a controller coupled to the conductive pattern. The controller may be configured to provide the offset-corrected actuation position to an application processor of the electronic device. The controller may be an application-specific integrated circuit. By integrating the finger angle dependent offset-correction into the controller of the touch sensor panel, no modifications have to be made to the application processor(s) of the electronic device.
The processing device may be configured to add or subtract an offset to the actuation position on the input surface to establish the offset-corrected actuation position.
The processing device may be configured to establish a magnitude of the offset as a function of the finger angle. The magnitude of the offset may be independent on the actuation position at which the finger was pressed against the input surface. The magnitude of the offset may be a decreasing function of finger angle.
The processing device may be configured to derive a finger orientation from the data captured by the touch sensor array, the finger orientation defining a direction of a projection of the finger onto the input surface. I.e., the finger orientation defines how the finger is oriented relative to the in-plane coordinate axes of the input surface. The finger angle defines how the finger is oriented relative to the plane of the input surface. The processing device may be configured to establish a direction of the offset as a function of the finger orientation. The processing device may be configured to establish the direction of the offset as a function of the finger orientation and independently from the finger angle. The processing device may be configured to establish the magnitude of the offset as a function of the finger angle and independently from the finger orientation.
The touch sensor array may further comprise a force sensor configured to determine a force with which the finger is pressed or multiple fingers are pressed against the input surface. The processing device may be configured to derive an offset-corrected force value from an output of the force sensor and the finger angle. In this way, offset problems may be compensated at least in part also for the force which is applied by the user. Performing offset-correction for force sensor values may be useful in particular when the force is used as an input coordinate, sometimes also referred to as z-coordinate, in addition to or alternatively to the x and y coordinates on the input surface.
The processing device may be configured to determine finger angles for plural fingers which perform a multi-touch operation on the input surface. An offset-corrected actuation position may be determined for each one of the plural fingers. Thereby, offset correction may be performed also for multi-touch operations.
The electronic device may further comprise an application processor coupled to the processing device to receive the offset-corrected actuation position. The application processor may be configured to perform an operation which is selected in dependence on the offset-corrected actuation position.
The electronic device may be a handheld wireless communication terminal. The electronic device may be a handheld portable telephone, a personal digital assistant, or a handheld computer.
Look-up tables and/or functions which are used to determine an offset in dependence on the determined finger angle may be stored in the electronic device. The look-up tables and/or functions may be pre-defined data, which may be generated by sampling offsets for various users as a function of finger angle and processing the sampled data to generate tables and/or functions that can be queried to determine an offset as a function of finger angle. Alternatively or additionally, the look-up table(s) and/or function(s) may be generated by the electronic device in a training phase in which the electronic device automatically determines the offsets between intended and actual actuation positions for various finger angles. The electronic device may share the look-up tables and/or functions with other devices used by the same user. For illustration, the electronic device may have a communication interface to transfer the look-up tables and/or functions to other electronic terminals and/or to a server.
The processing device may perform an offset-correction which depends on the finger which touches the input surface and/or which depends on an orientation of the electronic device. For illustration, one of several different tables may be queried to determine the offset for a given finger angle, depending on which finger touches the input surface and/or depending on device orientation. Alternatively or additionally, one of several different functions may be evaluated to determine the offset for a given finger angle, depending on which finger touches the input surface and/or depending on device orientation.
According to an embodiment, a method of processing user actuation of an input surface of an electronic device is provided. Data are captured using a proximity-sensitive touch sensor array which extends along the input surface of the electronic device. The data captured by the touch sensor array are processed to determine a finger angle at which a finger is directed towards the input surface and an actuation position on the input surface. An offset-corrected actuation position is established as a function of the actuation position and the finger angle.
Further features of the method according to embodiments and the effects attained thereby correspond to the features of the electronic devices according to embodiments.
The method may be performed by the electronic device of any one aspect or embodiment.
It is to be understood that the features mentioned above and features yet to be explained below can be used not only in the respective combinations indicated, but also in other combinations or in isolation, without departing from the scope of the present invention. Features of the above-mentioned aspects and embodiments may be combined with each other in other embodiments.
The foregoing and additional features and advantages of the invention will become apparent from the following detailed description when read in conjunction with the accompanying drawings, in which like reference numerals refer to like elements.
In the following, embodiments of the invention will be described in detail with reference to the accompanying drawings. It is to be understood that the following description of embodiments is not to be taken in a limiting sense. The scope of the invention is not intended to be limited by the embodiments described hereinafter or by the drawings, which are taken to be illustrative for embodiments. The features of the various embodiments may be combined with each other, unless specifically noted otherwise.
The drawings are to be regarded as being schematic representations, and elements illustrated in the drawings are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose become apparent to a person skilled in the art. Any connection or coupling between functional blocks, devices, components or other physical or functional units shown in the drawings or described herein may also be implemented by an indirect connection or coupling. Functional blocks may be implemented in hardware, firmware, software or a combination thereof. While electronic devices of an embodiment may be wireless communication devices such as cellular telephones, personal digital assistants, or other handheld devices having communication capabilities, the input interface is not limited to being used in such handheld communication devices.
Electronic devices having an input interface will be described. The input interface comprises a proximity-sensitive touch sensor array. A processing device is coupled to the proximity-sensitive touch sensor array and is configured to determine not only an actuation position, e.g. a touch position, but also a finger angle from data captured by the touch sensor array. The finger angle defines at which angle the finger is directed towards an input surface. The finger angle may be defined as the angle between a longitudinal axis of the finger and the input surface or as the angle between a lower side of the finger and the input surface. The processing device performs an offset correction which depends on the finger angle. An offset may be added to the actuation position to establish an offset-corrected actuation location, with the magnitude of the offset being determined as a function of the finger angle. The magnitude of the offset may decrease with increasing finger angle.
The handheld electronic device 1 may be operative as a handheld communication device, e.g. a cellular telephone, a personal digital assistant, a handheld computer or similar. The handheld electronic device 1 may include components for voice communication, which may include a microphone 6, a speaker 7, and a wireless communication interface 9 for communication with a wireless communication network. In addition to the input interface, the handheld electronic device 1 may have separate hard keys 8, such as function and/or control keys, which may be supported on a housing 10 of the electronic device 1. The application processor 11 may perform an operation which depends on the offset-corrected actuation location, such as by retrieving data from a memory 5, determining an alphanumerical input, or performing one of plural voice or data communication operations which is selected as a function of the offset-corrected actuation location.
The electronic device may also comprise a force sensor 13. The force sensor 13 may be operative to determine a force with which a finger or multiple fingers is/are pressed against the input surface 3. The application processor 11 may be operative to perform different functions depending on the force that is sensed. The force thus acts as an additional input coordinate, sometimes also referred to as “z-coordinate” for actuation operations. An offset correction which depends on finger angle may be performed for this z-coordinate, i.e., the force.
With reference to
A finger 22 acts as an input member. The procedure of determining an offset-corrected actuation position may be triggered when a contact between the finger 22 and the input surface 21 is detected. When the user pushes the finger 22 against the input surface 21, the finger 22 has a generally straight axis 24. The axis 24 extends at an angle 23 relative to the input surface 21. This angle 23 is the “finger angle” 23 which quantifies how the finger 22 is directed towards the input surface 23. The finger angle 23 may also be determined as 90° minus the angle between the axis 24 and the normal 26 of the input surface. With the lower surface of the finger 22 extending generally parallel to the axis 24, the finger angle 23 may also be determined as the angle between a lower surface of the finger 22 and the input surface 21.
It has been found that the discrepancy between where a user thinks he has pressed onto the input surface 21 and the sensed actuation position varies with finger angle. Electronic devices of embodiments at least partially compensate for this discrepancy by adding an offset to the sensed actuation position. The offset depends on the finger angle. As will be described in more detail below, the finger angle is determined using the proximity-sensitive touch sensor array.
The direction of the offset 34 depends on the line 25 along which the projection of the finger onto the input surface 21 extends. The processing device may determine an x-shift 35 and a y-shift 36 to compute the offset-corrected actuation position. For illustration rather than limitation, an angle 37 between the line 25 and one of the coordinate axes of the input surface may be determined. The x-shift 35 may be computed by multiplying the magnitude of the offset 34 by the cosine of the angle 37. The y-shift 36 may be computed by multiplying the magnitude of the offset 34 by the sine of the angle 37. A wide variety of other techniques may be used to derive the magnitude and direction of the offset 34 from the data captured using the touch sensor array. For illustration, data captured using a capacitive touch sensor array may be directly compared to a plurality of data sets to derive both the magnitude of the offset 34 and the direction of the offset 34.
The finger angle may also be used for additional processing steps. For illustration, an expected fingerprint may be predicted using the finger angle. The expected fingerprint may be matched to the sensed fingerprint 31. The finger angle may in particular be used to account for finger angle dependent changes in the fingerprint. This may be useful when determining a force magnitude from the fingerprint, for example, because the fingerprint generally depends on the finger angle and the force with which the finger is pressed against the input surface.
The processing device of the electronic device of an embodiment determines the finger angle from the data captured using a touch sensor array. As will be explained in more detail with reference to
At 51, data is captured using a proximity-sensitive touch sensor array. The proximity-sensitive touch sensor array may be a capacitive touch sensor array. The capacitive touch sensor array may comprise a conductive pattern which has a plurality of rows and a plurality of columns. Self-capacitance measurements and/or mutual capacitance measurements may be performed to determine the finger angle. Alternatively or additionally, other sensing techniques may be used to capture the data from which the finger angle and actuation position are determined. For illustration, the proximity-sensitive touch sensor array may be an optic touch sensor, an IR sensing sensor array, an electrical field sensor array, a sonar sensor array, an ultra sound sensor array and/or Doppler sensor array configured for proximity and touch sensing.
At 52, the finger angle is determined. The data captured using the proximity-sensitive touch sensor array indicate a distance variation between finger and input surface as a function of position, i.e. in a spatially resolved manner. This information may be used to establish the finger angle. A spatial gradient of self-capacitances and/or mutual capacitances may be determined to derive the finger angle. Alternatively or additionally, the data captured using the proximity sensitive touch sensor array may be compared to a plurality of pre-defined data sets, which are respectively associated with a pre-defined finger angle. Matching of the captured data to the pre-defined data sets may be performed to determine the finger angle. To determine the finger angle with even higher resolution, an interpolation between the pre-defined finger angles may be performed, depending on how well the captured data matches the various pre-defined data sets.
At 53, the offset may be determined. The position offset may be determined by performing a look-up operation. The respective look-up table may specify pre-defined offset magnitudes as a function of finger angle for plural pre-defined finger angles. Interpolation techniques may be used to determine the offset magnitude for the finger angle determined at 52, using a finite set of pre-defined offset magnitudes stored in a look-up table. Alternatively or additionally, the processing device may evaluate a function which depends on the finger angle, using the finger angle determined at 52.
The data captured at 51 may comprise self-capacitances of rows and columns of a capacitive touch sensor array. Self-capacitance measurements offer the advantage of having a large detection range for proximity sensing. This facilitates a reliable determination of the finger angle.
The processing device may perform any one of various processing techniques to determine the finger angle from data captured using the touch sensor array.
In one implementation, the processing device may match the data captured with the touch sensor array to pre-defined data sets which are stored in the electronic device and which correspond to various pre-defined finger angles.
Alternatively or additionally, characteristics of the data captured using the touch sensor array as a function of location may be used to determine the finger angle. For illustration, the gradient in capacitance and/or the length over which the capacitance varies significantly may be used to determine the finger angle.
Based on the data captured using the capacitive touch sensor array, the finger angle may be determined. A look-up operation may be performed and/or a function may be evaluated which depends on the finger angle, to thereby determine the offset which is added to the sensed actuation position. For illustration, for a finger angle of 15°, the offset which is added to the sensed actuation position may have a first magnitude, such as 10 pixels. For a greater finger angle, e.g. a finger angle of 25°, the offset which is added to the sensed actuation position may have a second magnitude which is less than the first magnitude, such as 7 pixels. For even greater finger angle, e.g. a finger angle of 45°, the offset which is added to the sensed actuation position may have a third magnitude which is less than the second magnitude, such as 4 pixels. Generally, the offset which is added to the sensed actuation position to at least partially compensate for finger-angle dependent offset effects may have a magnitude which is a decreasing function of finger angle.
An offset correction which depends on finger angle may be performed not only for the x and y coordinates of the actuation position, but may additionally or alternatively for a z coordinate of an input action. The z coordinate may correspond to a force applied onto the input surface by a finger or by multiple fingers.
The controller 75 may perform row scans to determine self-capacitances of the various rows 86-88 of the conductive pattern. The controller 75 may perform columns scans to determine self-capacitances of the various columns 81-85 of the conductive pattern. The controller 75 may determine the finger angle based on the data obtained in the row scans and column scans, as explained with reference to
The controller 75 may also be operative to measure mutual capacitances between rows and columns. For illustrations, the mutual capacitances between various pairs of rows and columns of the conductive pattern may be measured to determine the finger angle. The mutual capacitances may be measured to determine the actuation position.
The determination of the finger angle may be triggered by an input action. For illustration, the processing device may be triggered to determine the finger angle and to establish the offset-corrected actuation position when a contact between finger and input surface is detected. The offset-corrected actuation position may be used by the electronic device to determine which one of plural different operations is to be performed.
At 91, it is determined whether a touch is detected. This determination may be made based on data captured by the touch sensor array. Alternatively or additionally, other sensors may be used to detect a touch. For illustration, the electronic device may have a force sensor which facilitates discrimination of touch and non-touch events.
When a touch is detected, at 92 the coordinates of the actuation position are determined. The actuation position may be determined from data captured in self-capacitance and/or mutual capacitance measurements. The actuation position may also be determined using a finger angle. At 93, the finger angle is determined while the finger contacts the input surface. The finger angle may be derived from data acquired in self-capacitance measurements, e.g. in row scans and column scans.
At 94, the offset-corrected actuation position is determined. An offset may be added to the actuation position. The offset may have a magnitude which depends on the finger angle. The offset may have a magnitude which is a decreasing function as the finger angle increases from a minimum angle to a maximum angle.
At 95, the electronic device performs an operation which depends on the offset-corrected actuation location. For illustration, when a keypad is displayed to allow the user to input alphanumerical data, a key actuated by the user may be selected as a function of the offset-corrected actuation location. For further illustration, when different call-related actions are offered to the user, the action which is executed may be selected as a function of the offset-corrected actuation location.
For a multi-touch input operation, steps 92-94 may be performed for each one of the various fingers which touches the input surface.
At 101, data are captured. The data may comprise proximity data that allows the finger angle to be determined. The data comprise a z-coordinate of an actuation position. The z-coordinate may correspond to a force sensor value provided by a force sensor. The z-coordinate may quantify the force with which the finger(s) is or are pressed against the input surface.
At 102, the finger angle is determined. The finger angle may be determined using any one of the techniques described with reference to
At 103, an offset-corrected z-coordinate value is determined. The processing device may determine an offset for the z-coordinate as a function of finger angle and may add the offset to the sensed z-coordinate. An application processor of the electronic device may perform an operation which depends on the offset-corrected z-coordinate value. Thereby, offset problems may be mitigated also for force sensing. As described with reference to
Various techniques may be used to establish an offset that is added to a sensed coordinate using the finger angle. In some implementations, look-up tables may be used. Alternatively or additionally, a mathematical function may be evaluated which depends on finger angle. Still further, interpolation techniques may be used in either case to compensate offset problems with even greater precision. The tables and/or functions which are used to determine the offset when the finger angle is known may be pre-defined data, which may be generated by sampling a large number of input operations performed by various users, for example. Alternatively or additionally, the electronic device of any embodiment may also be configured to perform a procedure in which the table(s) and/or function(s) used for offset correction may be determined for a specific user.
At 112, the offsets and associated finger angles determined at 111 are used to generate a table and/or function which may subsequently be used for determining an offset when the finger angle is known. When table(s) are used by the processing device to determine an offset for a given finger angle, the data captured at 111 may be written into the table(s). When function(s) are evaluated by the processing device to determine an offset for a given finger angle, parameters of the functions (e.g. coefficients of a polynomial) may be set so as to fit the data captured at 111. These steps may be performed automatically by a processor of the electronic device.
The table(s) and/or function(s) determined at 112 may be stored in the electronic device for subsequent use in performing offset-correction.
At 113, the table(s) and/or function(s) determined at 112 may optionally be shared with at least one further electronic device according to an embodiment. This may be beneficial in particular when one user uses different electronic devices or starts using a new electronic device after having trained another electronic device in accordance with steps 111 and 112. The table(s) and/or function(s) determined at 112 may be transferred to the other electronic device, e.g. using a near field communication technique or via a wireless communication networks.
The data structures which are used for offset correction, e.g. table(s) and/or functions which allow an offset to be determined as a function of finger angle, may have various formats. For illustration, offsets may be specified in units of pixels. Alternatively, offsets may be specified in terms of relative magnitudes measured with respect to dimensions of the input surface. For illustration, a table may store numerical values which quantify offsets in units of pixels or in units of a given percentile (e.g. 1%) of a display width or display height.
While handheld electronic devices and methods of processing user actuation of an input interface have been described with reference to the drawings, modifications and alterations may be implemented in further embodiments. For illustration, input interfaces configured as described herein may not only be used in handheld communication devices, but may also be used in a wide variety of other electronic devices having a proximity-sensitive touch sensor array.
The techniques described herein may be applied to mitigate offset problems in multi-touch input operations. In this case, the finger angles for multiple fingers may be determined. An offset-corrected actuation position may be determined for each one of the multiple fingers touching the input surface, which is respectively determined using the finger angle for the respective finger. The techniques described herein may not only be used to mitigate finger angle dependent offsets for touch actions, but may also be used to mitigate such offset problems for non-touch actuation of a user interface.
While certain techniques for determining the finger angle and/or for determining a magnitude of a position offset have been described, other techniques may be also be used. For illustration, the finger angle may be determined using self-capacitance measurements, mutual-capacitance measurements or a combination thereof. For further illustration, the magnitude of the offset which is added to the sensed actuation position may be determined using look-up tables, by interpolating between pre-defined finger angle values in dependence on the measured data, by evaluating a function which depends on the finger angle, or by using a combination of such techniques.
The touch sensor array of each embodiment may be used in combination with a display to thereby provide a graphical user interface. The graphical user interface may comprise a conventional display, a stereoscopic display or an autostereoscopic display, for example.
In each one of the embodiments, additional processing may be performed to compensate offset problems. For illustration, the processing device may be configured to at least partially compensate fat finger offsets, in addition to determining the offset which is caused by the different finger angles, or the “fly in” directions, of the finger.
Although the invention has been shown and described with respect to certain preferred embodiments, equivalents and modifications will occur to others skilled in the art upon reading and understanding the specification. The present invention includes all such equivalents and modifications and is limited only by the scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
12008644.2 | Dec 2012 | EP | regional |
This application is a Continuation of U.S. patent application Ser. No. 14/099,011, filed on Dec. 6, 2013, which is herein incorporated by reference.
Number | Date | Country | |
---|---|---|---|
Parent | 14099011 | Dec 2013 | US |
Child | 15137515 | US |