This application claims the priority benefit of Taiwan Patent Application Serial Number 101130735, filed on Aug. 23, 2012, the full disclosure of which is incorporated herein by reference.
1. Field of the Disclosure
This disclosure generally relates to a touch sensing device and, more particularly, to a multipoint positioning method for a touchpad capable of detecting the multi-touch operation.
2. Description of the Related Art
As the touch control can be performed easily and without using conventional extra peripheral devices, such as the mouse or keyboard, it has gradually been applied to various portable electronic products, wherein single-touch technology has become mature but multi-touch technology still has the problem of unable to distinguish multiple fingers in some specific conditions in both capacitive touch panels or optical touch panels, especially in the condition that more than two fingers are very close to each other.
U.S. Pat. No. 5,825,352, entitled “Multiple Fingers Contact Sensing Method for Emulating Mouse Buttons and Mouse Operations on a Touch Sensor Pad”, discloses a sensing method for identifying multiple fingers according to one-dimensional information. The sensing method retrieves one-dimensional information at first as shown in
As shown in
Accordingly, the present disclosure further provides a multipoint positioning method for a touchpad that may simplify and increase the accuracy of the multipoint positioning procedure.
The present disclosure provides a multipoint positioning method for a touchpad that may perform the multipoint positioning only according to the local maxima of two-dimensional data so as to simplify the multipoint positioning procedure.
The present disclosure further provides a multipoint positioning method for a touchpad that may distinguish two-dimensional object area using image grouping technique and perform the multipoint positioning according the local maxima in the two-dimensional object area.
The present disclosure further provides a multipoint positioning method for a touchpad that may recognize the multipoint operation according to current two-dimensional data as well as previous two-dimensional data so as to increase the positioning accuracy.
The present disclosure provides a multipoint positioning method for a touchpad including the steps of: scanning a touchpad to retrieve two-dimensional data; calculating an object area and a number of maxima of local maxima in the two-dimensional data; comparing the object area with an area threshold when the number of maxima is larger than 1; and identifying positions of the local maxima as a plurality of contact positions when the object area is larger than or equal to the area threshold.
The present disclosure further provides a multipoint positioning method for a touchpad including the steps of: scanning a touchpad to retrieve two-dimensional data; identifying a plurality of matrix cells in the two-dimensional data having a data value larger than or equal to a data threshold as an object area; calculating a number of maxima of local maxima in the object area; comparing the object area with an area threshold when the number of maxima is larger than 1; and identifying positions of the local maxima as a plurality of contact positions when the object area is larger than or equal to the area threshold.
The present disclosure further provides a multipoint positioning method for a touchpad including the steps of: scanning a touchpad to sequentially retrieve first two-dimensional data and second two-dimensional data; calculating a first object number of the first two-dimensional data and a second object number of the second two-dimensional data; calculating a number of maxima of local maxima in the second two-dimensional data when the second object number is smaller than the first object number; and recording positions of the local maxima when the number of maxima is larger than 1.
In one aspect, the two-dimensional data is intensity data or voltage variation data; and the data threshold is an intensity threshold or a voltage variation threshold associated with the two-dimensional data.
In one aspect, the positions of the local maxima are identified as a plurality of contact positions when the object area is larger than or equal to an area threshold; and a single object is identified when the object area is smaller than the area threshold. In this manner, the identification accuracy can be improved.
In one aspect, the positions of the local maxima are identified as a plurality of contact positions when the distance between the local maxima is larger than or equal to a distance threshold; and a single object is identified when the distance between the local maxima is smaller than the distance threshold. In this manner, the identification accuracy can be improved.
In one aspect, the local maxima are matrix cells in the two-dimensional data having a data value larger than or equal to data values of 8 adjacent matrix cells thereof, 5 adjacent matrix cells thereof or 3 adjacent matrix cells thereof.
The multipoint positioning method for a touchpad of the present disclosure is to identify the local maximum in the two-dimensional data as the contact position so as to simplify the identification procedure. In addition, the object area and the distance between local maxima may further be confirmed so as to further improve the identification accuracy.
Other objects, advantages, and novel features of the present disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
It should be noted that, wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
Referring to
The touch system 1 according to the embodiment of the present disclosure is configured to detect at least one contact position of at least one object, e.g. a finger or a touch pen, on the touchpad 11, particularly configured to detect a plurality of contact positions in coupled detection data generated by a plurality of objects, which are close to each other, in contact with the touchpad 11. In this embodiment, the touchpad 11 may be a capacitive touch panel or an optical touch panel without any limitation as long as the touchpad is able to output two-dimensional matrix data. The touchpad 11 includes a sensing matrix formed by arranging a plurality of matrix cells 110 in a matrix, which may be a rectangle matrix or a square matrix. In addition, the touch system 1 may further have denoising function so as to avoid the interference from noise having specific frequencies; for example, the input unit 121 may input different driving frequencies according to environmental noises.
The input unit 121 may sequentially input electrical signals having a predetermined waveform or a predetermined frequency to every column/row of matrix cells 110 of the touchpad 11, and the read unit 122 may sequentially read data values of every column/row of matrix cells 110 of the touchpad 11 corresponding to the operation of the input unit 121, wherein the matrix cell 110 is referred to every sensing unit of the touchpad 11. For example, when the touchpad 11 is an optical touch panel, the matrix cell 110 may be each pixel of the sensing matrix; and when the touchpad 11 is a capacitive touch panel, the matrix cell 110 may be the crossing area of two conductive lines. In one embodiment, the input unit 121 and the read unit 122 may be a multiplexer, but not limited thereto, as long as they are the electronic devices capable of inputting driving signals and reading data values in a scanning manner. It is appreciated that the input unit 121 may not be implemented according to different embodiments of the touchpad 11.
The detection unit 13 is configured to sequentially detect data values through the read unit 122 for being transmitted to the A/D converter 14. The A/D converter 14 is configured to convert the analog data to the digital data and output two-dimensional matrix data I11. It is appreciated that when the touchpad 11 is an optical touch panel, the two-dimensional matrix data I11 is intensity data; whereas when the touchpad 11 is a capacitive touch panel, the two-dimensional matrix data I11 is voltage variation data. In other words, according to different embodiments of the touchpad 11, the two-dimensional matrix data I11 received by the processing unit 15 may have different physical meaning.
The processing unit 15 may be a digital signal processor (DSP) and is configured to calculate a contact position of at least one object in the two-dimensional matrix data I11, and particularly configured to calculate a plurality of contact positions associated with a plurality of objects. For example in
The memory unit 16 is configured to store various reference information needed in the positioning procedure performed by the processing unit 15, e.g. an area threshold, a distance threshold and data threshold (including an intensity threshold and a voltage variation threshold). Of course, if the processing unit 15 is further able to perform the gesture recognition according to the variation of contact positions between a plurality of two-dimensional matrix data I11, the memory unit 16 may further store the information associated with predetermined gestures. The method of performing the gesture recognition according to the variation between different data is well known, and this disclosure is to distinguish the coupled contact information.
Referring to
Referring to
Step S21: At first, the input unit 121 and the read unit 122 scan the touchpad 11 so as to retrieve two-dimensional matrix data I11 as shown in
Step S22: The processing unit 15 calculates an object area RO and a number of maxima of local maxima in the two-dimensional matrix data I11 at the time receiving the two-dimensional matrix data I11 (e.g. at the same time sequentially receiving data of every matrix cell 110) or after receiving the two-dimensional matrix data I11 (e.g. after the two-dimensional matrix data I11 is completely received), e.g. two local maxima LM1 and LM2 are shown in
In this embodiment, the local maxima LM1 and LM2 may be the matrix cell in the two-dimensional matrix data I11 having a data value larger than data values of 8 adjacent matrix cells, 5 adjacent matrix cells or 3 adjacent matrix cells thereof. For example referring to
Step S23: The purpose of identifying whether the number of maxima is larger than 1 is to determine whether to enter multipoint positioning procedure or not. When the number of maxima is equal to 0, it means that there is no object existing whereas when the umber of maxima is equal to 1, it means that only a single object exists (Step S231), and thus the condition of unable to distinguish multiple points does not occur. Therefore, the object positioning and post-processing may be performed using conventional methods for positioning a single object, e.g. calculating a gravity center of the object. When the number of maxima is larger than 1, the process enters the Step S24.
Step S24: In this step it is able to further confirm whether the calculated plurality of local maxima, e.g. LM1 and LM2 shown in
Step S25: When the object area RO is larger than or equal to the area threshold and/or the distance between local maxima D is larger than or equal to the distance threshold, the processing unit 15 identifies positions of the local maxima LM1 and LM2 as a plurality of contact positions such that the multipoint positioning is accomplished.
Referring to
Referring to
Step S31: The processing unit 15 identifies a plurality of matrix cells 110 in the two-dimensional matrix data I11 having a data value larger than a data threshold TH as an object area RO at the same time or after receiving the two-dimensional matrix data I11. As mentioned above, corresponding to different embodiments of the touchpad 11, the two-dimensional matrix data I11 may be intensity data or voltage variation data, and the data threshold TH may be an intensity threshold or a voltage variation threshold. As mentioned above, the processing unit 15 may also combine a plurality of related object sections at adjacent rows to a complete object area by means of image grouping technique.
Step S32: Next, the processing unit 15 may calculate a number of maxima of local maxima in the object area RO according to the method of
Next, the Steps S23-S25 are identical to the Steps S23-S25 of the first embodiment and thus details thereof are not described herein.
Referring to
Referring to
Step S41: At first, the input unit 121 and the read unit 122 scan the touchpad 11 within two successive scanning periods so as to sequentially retrieve first two-dimensional matrix data I11 and second two-dimensional matrix data I11′ as shown in
Step S42: Next, the processing unit 15 calculates a first object number in the first two-dimensional matrix data I11 and a second object number in the second two-dimensional matrix data I11′. For example, as shown in
Step S43: When the second object number is smaller than the first object number, it means that the coupling of the object data may exist. For example, two objects are separated in a previous two-dimensional data (as
Step S44: When the number of maxima in the second two-dimensional matrix data I11′ is not larger than 1, it means that there is no object existing or only a single object exists (Step S441), i.e. same as Step S231. When the number of maxima in the second two-dimensional matrix data I11′ is larger than 1, positions of the local maxima are recorded in the memory unit 16 (Step S45).
Next, the Steps S46-S47 are similar to the Steps S24-S25 of the first embodiment but different in that the second two-dimensional matrix data I11′ is the target to be processed in the third embodiment. That is, in this embodiment it is only to replace the two-dimensional data I11 in the first embodiment by the second two-dimensional matrix data I11′.
Referring to
The difference between the third embodiment and the first embodiment is that in the third embodiment the processing unit 15 identifies whether the object number between two successive two-dimensional matrix data changes or not at first. When the object number decreases, it means that the detection data may be coupled to each other and then identifies positions of the local maxima in the second two-dimensional matrix data I11′ as a plurality of contact positions, wherein the method of determining the plurality of contact positions according to the second two-dimensional matrix data I11′ is similar to the first embodiment.
It should be mentioned that although two objects are used as an example to describe the present disclosure, the positioning method of every embodiment may be extended to the positioning of more than two objects, and the positioning method for more than two objects is similar to those shown in
In addition, the multipoint positioning method according to the embodiment of the present disclosure may also be applied to a touch mouse including a touchpad 11′ as shown in
As mentioned above, conventional multiple fingers contact sensing method has to separate finger areas according to the valley of one-dimensional information such that the identification procedure is more complicated and the separated finger areas may be asymmetric to each other. Therefore, the present disclosure further provides a multipoint positioning method for a touchpad (
Although the disclosure has been explained in relation to its preferred embodiment, it is not used to limit the disclosure. It is to be understood that many other possible modifications and variations can be made by those skilled in the art without departing from the spirit and scope of the disclosure as hereinafter claimed.
Number | Date | Country | Kind |
---|---|---|---|
101130735 | Aug 2012 | TW | national |