The present disclosure relates generally to input devices for computing platforms, and more particularly to input devices having a stylus or pen form factor.
The form factor of a computer input device can have a substantial impact on the user experience with a computing platform. Accordingly, to enhance the user experience, computer input devices have been developed that have a pen or stylus form factor. These devices allow the user to hold the input device in a comfortable position with which the user is familiar (i.e. a comfortable writing position). Further, devices with a pen/stylus form factor support relatively precise control by the user, thereby improving the user experience with a variety of applications, such as drawing and painting applications, writing applications, and the like. However, conventional input devices with a pen/stylus form factor typically have limited positional tracking in two dimensions, thereby limiting utility of the devices for applications that employ three-dimensional spaces, such as virtual reality (VR) and augmented reality (AR) applications. Further, conventional pen/stylus input devices sometimes require the user to write on a special surface, such as a specially-designed tablet or paper, in order to track position of the input device. These special surfaces limit the portability and flexibility of the input device.
The present disclosure may be better understood, and its numerous features and advantages made apparent to those skilled in the art by referencing the accompanying drawings. The use of the same reference symbols in different drawings indicates similar or identical items.
For convenience, the term “writing device” is used herein to refer to a computer input device having a pen or stylus form factor as described further herein. It will be appreciated that in some embodiments the writing device can include a writing material, such as an ink reservoir or graphite, that supports writing on a medium (e.g., paper) independent of pose tracking. In other embodiments, the writing device does not include a writing material, but includes a nub or tip that supports use of the device on a display screen or other surface. Further, it will be appreciated that the writing device can be employed for uses other than handwriting, including drawing, selection and manipulation of objects in a computer application, including CAD, AR, or VR application, or any other use for which a stylus can provide input to a computer.
To generate an EM pose, the tracking system 100 generates the EM field 125, measures a magnitude and/or phase of the generated EM field 125 (referred to herein generally as “EM data”), and computes a relative pose based on the corresponding EM data. In the illustrated embodiment, the EM field 125 is generated by the base device 104 and the EM data is read at the stylus 102. It will be appreciated that other configurations are possible, including the EM field 125 being generated by the stylus 102 and the EM data being read at the base device 104, as illustrated below at
To support reading of EM data, the stylus 102 includes an Rx module 120 having a receiver coil 107 and an analog-to-digital converter (ADC) 108. In some embodiments, the receiver coil 107 is a tri-axis coil configured to generate an analog electrical signal having a magnitude and/or phase indicative of a detected EM field 125. In some embodiments, such as described further below with respect to
To support generation of poses, the stylus 102 includes a secondary sensor 106 configured to generate non-EM pose information for the stylus 102. In some embodiments the secondary sensor is an inertial measurement unit (IMU). In other embodiments, the secondary sensor is part of a secondary tracking system (not illustrated at
To support pose identification (that is, identification of poses of either the base device 102 or the mobile device 104) the stylus 102 and the base device 104 include processors 110 and 115 respectively. The processors 110 and 115 are general-purpose or application-specific processors generally configured to execute instructions (e.g., computer programs) in order to carry out specified tasks. In some embodiments, at least one of the processors 110 and 115 executes instructions to identify a pose associated to the base device 102 or the mobile device 104 based on a weighted combination of the EM data provided by the ADC 108 and the secondary pose data generated by the secondary sensor 106. In other embodiments, a different processor on an external system (such as a PC computer, for example) is used to compute pose. In one example, in some embodiments, the processor 110 identifies the pose based on the following formula:
posefinal=(Wem*poseem+Wsecondary*posesecondary)/(Wem+Wsecondary)
where Wem is the weight applied to the pose computed from the EM signal, poseem is the pose computed from the EM data, Wsecondary is the weight applied to the pose computed from the secondary tracking signal 136, and posesecondary is the pose computed from the secondary tracking signal.
In addition, in the example of
In some embodiments, one or more of the processors 110 and 115 (or a third processor not shown at
As noted above, in some embodiments the Tx and Rx modules of the tracking system 100 are in reverse positions relative to
It will be appreciated that the stylus 102 can be any kind of writing device.
In some cases, metal or other material situated in close proximity to the Rx module 120 or to the Tx module 121 can cause distortions in the EM field 125, and these distortions can result in inaccuracies in the EM pose data. For example, if the stylus 102 is being used to write on a table containing metal, such that the tip 323 is close to the metal, the resulting distortions in the EM field 125 can cause errors in the EM pose data, resulting in pose tracking errors for the stylus 102, and in turn resulting in a poor user experience. However, the distortions in the EM field can be mitigated by placing the EM coil 107 at a distance from the surface that is causing the distortion. For example, in some embodiments, including the example embodiment of
In some cases, it may be desirable to reduce the cost or size of the circuitry in the stylus 102. An example is illustrated at
In some embodiments, the tracking system can reduce the overall cost of the system by employing existing EM components of a computer, smartphone or other device. An example is illustrated at
In some embodiments, the magnetometer 542 has a relatively low sample rate (e.g. in the 50-200 Hz range) which does not readily allow for frequency multiplexing of the EM fields, and accordingly the stylus 102 can employ a pulsed EM configuration which is better suited for these magnetometers. For smartphones with magnetometers or other magnetic sensor with higher sampling rates, EM fields can be multiplexed over different frequencies for simultaneous transmission.
It will be appreciated that the stylus 102, instead of or in addition to supporting the deposition of writing material on a surface, can employ different configurations of the stylus tip. The different tips can support improved pose detection, additional stylus functionality, or a combination thereof. Examples of different stylus tip configurations are illustrated at
The stylus 602 employs a force sensitive tip configuration, composed of a tip 650, a spring 651, and a force sensor 652, which can be a mechanical force sensor or an electrical force sensor. In some embodiments, the spring 651 is omitted. When the tip 650 contacts a surface (e.g. when a user places the tip 650 on a screen or other writing surface), the force of the surface against the tip translates down the tip applying a force that is sensed by the force sensor 652, which indicates the sensed force to the CPU 610. In some embodiments, the force sensor 652 indicates the sensed force to the CPU 610 via a binary signal to indicate whether the force at the tip 650 has crossed a specified or programmable threshold. In other embodiments, the force sensor 652 indicates the level of the sensed force to the CPU 610 via an electrical (digital or analog) signal, thereby indicating variable levels of pressure at the tip 650. Based on the information provided by the force sensor 652, the CPU 610 can take one or more specified actions, such as executing an application, changing an application parameter (such as the thickness, shade, color, or other aspect of a displayed or stored line), and the like.
In some embodiments, such as the example of
In some embodiments, such as the example of
It will be appreciated that any of the stylus embodiments described above, including the styli 102, 602, 702, and 802, can include additional components to provide additional inputs or other information to a computer device. For example, the stylus can include one or more buttons to indicate additional input data to the computer device. The one or more buttons can be placed in convenient location for the user such as, if the stylus is held like a pen or pencil, one of the buttons is placed at or near the user's index finger while another button is placed at or near the user's thumb. In some embodiments, a button can be placed at an end of the stylus opposite the tip, in a similar location as the button for a retractable ball point pen. Additionally, the stylus can incorporate, in some embodiments, a slider, 1-D trackpad, roller, or similar component (or a combination thereof) that allows for 1-dimensional linear input. In some embodiments, the 1-D linear input component is placed near the front of the stylus in the location where, when held as a pen, the index finger would normally be placed. In other embodiments, the component is placed closer to the middle for easy access when the stylus is held as a wand. In other embodiments, the stylus can include a 2-D trackpad, joystick, or similar component that allows for 2-D analog input into the stylus. In some embodiments, the 2-D analog input component is placed closer to the middle for easy access with the thumb when the stylus is held as a wand.
In some embodiments, the flexibility and portability of the stylus can be enhanced by allowing the base device 104 to be removably integrated with the stylus. An example is illustrated at
The dongle 966 can be plugged into a USB port of a computer device, such as smartphone 940 at USB port 941. While plugged into the USB port 941 the EM module 966 is active, either transmitting or receiving the EM field 125, allowing the smartphone 940 to identify poses based on EM pose data as described above with respect to
In some embodiments, the EM pose data can be used to assist in handwriting or other text or drawing identification (referred to collectively herein as “handwriting capture”). For example, in one embodiment, handwriting that is captured via the EM pose data is converted (e.g. by one or both of the processors 110 and 115, or by another processor) from handwriting to typed text through use of handwriting recognition software or optical character recognition (OCR) software. In another embodiment, the handwritten capture is converted to geometric shapes through the use of shape recognition software. Such processing can “clean up” hand-drawn diagrams or generate readable variants of charts and graphs. In another embodiment, the handwritten capture is converted to mathematical equations. Such processing can “clean up” math equations into presentable digital representations.
Using EM pose data allows for handwriting capture on a variety of surfaces, in contrast to conventional handwriting capture that requires use of a specialized surface. In particular, using EM pose data supports handwriting capture when the relative angle or orientation of the surface is unknown. For example, the user could write on a wall (where the surface is vertical) and also write on a desk (where the surface is horizontal) and the angle of the writing plane is not known a-priori.
To support handwriting capture on an unknown surface, in some embodiments the handwriting capture from stylus 102 is “fit” onto a plane to produce an accurate representation of the handwriting. For example, if the writing surface were angled at 45 degrees but the trajectories are projected onto a plane that is flat (angled at zero degrees), the resulting handwriting would look distorted. In order to preserve an accurate representation of what was handwritten, the plane of the writing surface is determined by a processor, such as the processor 110 or the processor 115. In one embodiment, the processor employs a plane-fitting algorithm to “fit” the writing trajectories to determine the plane angle. In other embodiments, the writing plane is determined “on the fly” based on what the user is writing. In other embodiments, the plane fitting is done with post-processing at the processor.
In some embodiments, the processor determines the angle of writing is based on the direction of the writing. An example is illustrated at
In some embodiments, the processor performs orientation fitting. For example, handwriting recognition software that can recognize handwriting can incur errors if the handwriting were rotated 180 degrees so that the handwriting is upside-down. Thus, before attempting to recognize the handwriting, the processor 115 determines the “correct side up” orientation of the writing. In some embodiments, the processor attempts to rotate the handwriting by some amount, and then uses a heuristic to score the desirability of the resulting rotation. The processor repeats the process until the score crosses a threshold. An example is illustrated at
In other embodiments, the processor 115 rotates the captured handwriting by multiple angles, and each rotation is processed in parallel to speed up the processing. In some embodiments, the scoring is performed by attempting handwriting recognition of some of the handwriting and using the level of confidence from the handwriting recognition algorithm as an input into the score. In yet other embodiments, a machine learning model is employed to estimate the angle of rotation necessary for handwriting recognition software to properly process the handwriting strokes.
Embodiments of the present disclosure include fusing of multiple data sources to improve the tracking quality of the pen device. In one embodiment, the poses from the EM position tracking subsystem are combined with poses from an IMU to reduce noise and improve angular accuracy. In some embodiments a Kalman filter is used to combine data derived from an IMU with data derived from the EM position tracking system to produce a “fused” pose. Fusion can also be used to correct for temporary distortions caused by nearby metal, for example by “dead reckoning” for short periods of time with the IMU when metallic distortion is detected.
In some embodiments, certain aspects of the techniques described above may implemented by one or more processors of a processing system executing software. The software comprises one or more sets of executable instructions stored or otherwise tangibly embodied on a non-transitory computer readable storage medium. The software can include the instructions and certain data that, when executed by the one or more processors, manipulate the one or more processors to perform one or more aspects of the techniques described above. The non-transitory computer readable storage medium can include, for example, a magnetic or optical disk storage device, solid state storage devices such as Flash memory, a cache, random access memory (RAM) or other non-volatile memory device or devices, and the like. The executable instructions stored on the non-transitory computer readable storage medium may be in source code, assembly language code, object code, or other instruction format that is interpreted or otherwise executable by one or more processors.
A computer readable storage medium may include any storage medium, or combination of storage media, accessible by a computer system during use to provide instructions and/or data to the computer system. Such storage media can include, but is not limited to, optical media (e.g., compact disc (CD), digital versatile disc (DVD), Blu-Ray disc), magnetic media (e.g., floppy disc, magnetic tape, or magnetic hard drive), volatile memory (e.g., random access memory (RAM) or cache), non-volatile memory (e.g., read-only memory (ROM) or Flash memory), or microelectromechanical systems (MEMS)-based storage media. The computer readable storage medium may be embedded in the computing system (e.g., system RAM or ROM), fixedly attached to the computing system (e.g., a magnetic hard drive), removably attached to the computing system (e.g., an optical disc or Universal Serial Bus (USB)-based Flash memory), or coupled to the computer system via a wired or wireless network (e.g., network accessible storage (NAS)).
Note that not all of the activities or elements described above in the general description are required, that a portion of a specific activity or device may not be required, and that one or more further activities may be performed, or elements included, in addition to those described. Still further, the order in which activities are listed are not necessarily the order in which they are performed. Also, the concepts have been described with reference to specific embodiments. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the present disclosure as set forth in the claims below. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present disclosure.
Benefits, other advantages, and solutions to problems have been described above with regard to specific embodiments. However, the benefits, advantages, solutions to problems, and any feature(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential feature of any or all the claims. Moreover, the particular embodiments disclosed above are illustrative only, as the disclosed subject matter may be modified and practiced in different but equivalent manners apparent to those skilled in the art having the benefit of the teachings herein. No limitations are intended to the details of construction or design herein shown, other than as described in the claims below. It is therefore evident that the particular embodiments disclosed above may be altered or modified and all such variations are considered within the scope of the disclosed subject matter. Accordingly, the protection sought herein is as set forth in the claims below.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2019/055396 | 10/9/2019 | WO |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2020/076950 | 4/16/2020 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
20090153526 | Blake et al. | Jun 2009 | A1 |
20120038549 | Mandella | Feb 2012 | A1 |
20130120237 | DiVerdi | May 2013 | A1 |
20130251249 | Huo | Sep 2013 | A1 |
20130314381 | Altman et al. | Nov 2013 | A1 |
20140085270 | Obata | Mar 2014 | A1 |
20160139691 | Li | May 2016 | A1 |
20180299976 | Chiewcharnpipat | Oct 2018 | A1 |
20190187779 | Miller | Jun 2019 | A1 |
20200264724 | Ong | Aug 2020 | A1 |
Number | Date | Country |
---|---|---|
2004 272377 | Sep 2004 | JP |
3 958003 | Aug 2007 | JP |
2017044051 | Mar 2017 | WO |
Entry |
---|
International Search Report and Written Opinion dated Jan. 9, 2020 for corresponding International Application No. PCT/US2019/055396, 18 pages. |
Communication pursuant to Rules 161(1) and 162 EPC dated May 19, 2021 for corresponding European Application No. 119794826.8, 3 pages. |
International Preliminary Report on Patentability dated Apr. 22, 2021 for PCT Application No. PCT/US2019/055396, 10 pages. |
Communication pursuant to Article 94(3) EPC dated Feb. 7, 2023 for corresponding European Application No. 19794826.8, 8 pages. |
Number | Date | Country | |
---|---|---|---|
20210333897 A1 | Oct 2021 | US |
Number | Date | Country | |
---|---|---|---|
62743030 | Oct 2018 | US |