OPTICAL RING THAT ENABLES THUMB-TO-INDEX GESTURES

The disclosed apparatus may include a wearable optic ring that features input capabilities relative to a computing system. In various examples, the wearable optic ring may be designed to curve around a wearer's finger and can detect complex interactions between that finger and the wearer's thumb. Moreover, the optical ring may detect such complex interactions based on ultra low-resolution images captured by a miniature optical sensor mounted on the optical ring and bioimpedance measurements taken by one or more electrodes included on the optical ring. Various other implementations are also disclosed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate a number of exemplary implementations and are a part of the specification. Together with the following description, these drawings demonstrate and explain various principles of the present disclosure.

FIG.1Aillustrates an example optical ring including a miniature optical sensor in accordance with one or more implementations.

FIG.1Billustrates a perspective view of the example haptic ring ofFIG.1Afurther showing one or more electrodes and an inertial measuring unit in accordance with one or more implementations.

FIGS.2A and2Billustrate the optical ring ofFIGS.1A and1Bdetecting a pinch input gesture between an index finger and thumb of a wearer in accordance with one or more implementations.

FIGS.3A and3Billustrate the optical ring detecting movement of the hand of the wearer in multiple directions in accordance with one or more implementations.

FIGS.4A and4Billustrate the optical ring detecting a stateful touch-and-slide interaction between the thumb and the index finger of the wearer in accordance with one or more implementations.

FIGS.5A and5Billustrate the optical ring detecting another type of stateful pinch interaction between the thumb and the index finger of the hand of the wearer in accordance with one or more implementations.

FIGS.6A and6Billustrate the optical ring detecting a complex and stateful thumb-touch/wrist-flick input gesture in accordance with one or more implementations.

FIGS.7A and7Billustrate the optical ring detecting a scrubbing, side-to-side stateful input gesture in accordance with one or more implementations.

FIGS.8A and8Billustrate the optical ring detecting a stateful pinch-rotate-release input gesture that mimics the wearer turning a knob in accordance with one or more implementations.

FIGS.9A and9Billustrate the optical ring detecting a stateful writing input gesture by the hand of the wearer in accordance with one or more implementations.

FIG.10illustrates a detailed diagram of an optical ring control system for use in connection with the optical ring illustrated inFIGS.1A-9Bin accordance with one or more implementations.

FIG.11is an illustration of example augmented-reality glasses that may be used in connection with embodiments of this disclosure.

FIG.12is an illustration of an example virtual-reality headset that may be used in connection with embodiments of this disclosure.

FIG.13is an illustration of example haptic devices that may be used in connection with embodiments of this disclosure.

FIG.14is an illustration of an example virtual-reality environment according to embodiments of this disclosure.

FIG.15is an illustration of an example augmented-reality environment according to embodiments of this disclosure.

Throughout the drawings, identical reference characters and descriptions indicate similar, but not necessarily identical, elements. While the exemplary implementations described herein are susceptible to various modifications and alternative forms, specific implementations have been shown by way of example in the drawings and will be described in detail herein. However, the exemplary implementations described herein are not intended to be limited to the particular forms disclosed. Rather, the present disclosure covers all modifications, equivalents, and alternatives falling within the scope of the appended claims.

DETAILED DESCRIPTION OF EXEMPLARY IMPLEMENTATIONS

Mixed-reality (XR) wearables, like augmented reality (AR) and virtual reality (VR) headsets, are becoming more useful and versatile. It follows that the XR input devices are needed to maximize the potential of these wearable devices. Existing XR input devices can often require wearers to make large and apparent hand motions to make selections, scroll content, interact with virtual objects and so forth. This can be distracting and tiring for the wearer. Moreover, existing XR input devices often require wearer-specific training data for underlying inference models to work effectively. Furthermore, existing XR input devices frequently lack the capability to detect complex “stateful” input gestures such as interactions that include both hand movement and finger interactions (e.g., such as pinches, touches, slides).

To address these issues, the present disclosure is generally directed to an optical ring that enables complex “stateful” input gestures. For example, one or more of the implementations described herein include an optical ring that may be worn on an index finger of a wearer. In at least one implementation. The optical ring can include a miniature optical sensor (e.g., an RGB camera) to capture actions of both the thumb and index finger of the wearer. Because of the proximity of the thumb and index finger, the disclosed optical ring can detect subtle interactions that include small, nuanced movements of those fingers. Moreover, in most implementations, the optical ring further includes one or more electrodes that can measure bioimpedance associated with the wearer's fingers. As such, the disclosed optical ring can utilize images captured by the miniature optical sensor and bioimpedance measurements taken by the one or more electrodes to detect complex but nuanced input gestures that include combinations of hand movements and finger interactions.

The following will provide, with reference to theFIGS.1A-15, detailed descriptions of an optical ring. For example,FIGS.1A and1Billustrate views of the disclosed optical ring.FIGS.2A-9Billustrate the disclosed optical ring detecting a wide range of complex, nuanced and stateful input gestures when worn by a wearer.FIG.10illustrates additional detail associated with an optical ring control system that operates in connection with the disclosed optical ring.FIG.11illustrates example augmented-reality glasses whileFIG.12illustrates an example virtual-reality headset.FIG.13illustrates example haptic devices andFIG.14illustrates an example virtual-reality environment. Finally,FIG.15illustrates an example augmented-reality environment.

As just mentioned,FIGS.1A and1Billustrate an optical ring100that detects complex, “stateful” input gestures that include combinations of nuanced hand movements and finger interactions. For example, as shown in a side-view illustrated inFIG.1A, the optical ring100is designed to curve around a finger of a wearer. In some implementations, as shown inFIG.1A, the optical ring100can be closed so as to completely encircle the wearer's finger. In additional implementations, the optical ring100can be open so as to only partially encircle the wearer's finger.

As further shown inFIG.1A, the optical ring100can include a miniature optical sensor102. In one or more implementations, the optical ring100can include the miniature optical sensor102mounted onto an external surface104of the optical ring100. Furthermore, the miniature optical sensor102can be mounted onto the external surface104of the optical ring100in a position that allows the miniature optical sensor102to view down a length of the finger of the wearer (e.g., toward the fingertip) to enable recognition of thumb-to-index finger interactions. In additional implementations, the optical ring100may include additional miniature optical sensors in the same or different positions on the optical ring100. As will be discussed in greater detail below with reference toFIG.10, the miniature optical sensor102can include an RGB camera that captures ultra low-resolution images.

FIG.1Bshows a perspective view of the optical ring100. As shown inFIG.1B, the optical ring100further includes one or more electrodes108. In one or more implementations, the one or more electrodes108can be mounted on an internal surface106of the optical ring100. For example, the one or more electrodes108can be positioned on the internal surface106of the optical ring100so as to come into contact with the skin of the wearer's finger. In at least one implementation, the one or more electrodes108serve to measure bioimpedance in the wearer's finger.

Additionally, in one or more implementations, the optical ring100can also include an inertial measurement unit (IMU)110. For example, the IMU110can measure movement of the optical ring100in space. In at least one implementation, the IMU110can measure movement of the optical ring100in at least nine axes. To illustrate, the IMU110can measure up and down movement of the optical ring100, back and forth movement of the optical ring100, side to side movement of the optical ring100, and diagonal movement of the optical ring100.

Based on inputs detected by the miniature optical sensor102, the one or more electrodes108, and the IMU110, the optical ring100can detect complex and “stateful” input gestures made by a wearer's hand and/or fingers.FIGS.2A-9Billustrate additional detail with regard to such complex and “stateful” input gestures that can be detected by the optical ring100. For example,FIGS.2A and2Billustrate the optical ring100detecting a pinch input gesture between an index finger204and thumb206of a hand202of the wearer. In one or more implementations, the optical ring100detects the index finger204and the thumb206coming into contact, as shown inFIG.2A, based on images captured by the miniature optical sensor102and measurements taken by the one or more electrodes108-in connection with measurements taken by the IMU110. Similarly, as shown inFIG.2B, the optical ring100detects separation of the index finger204and the thumb206(e.g., along the arrow shown) based on updates to the same inputs. In one or more implementations, the optical ring100detects a minute separation of the index finger204and the thumb206such that the wearer need not open the hand202more than a few millimeters.

FIGS.3A-3Billustrate the optical ring100detecting movement of the hand202of the wearer in multiple directions. For example, as shown inFIGS.3A and3B, the optical ring100can detect lateral rotation of the hand202of the wearer (e.g., a side-to-side movement along the arrow shown inFIG.3B) based on measurements taken by the IMU110. Similarly, the optical ring100can detect flexion of the wrist of the hand202or the arm of the wearer (e.g., an up-and-down movement of the hand202) based on the same measurements. In some implementations, the optical ring100further refines the detection of these movements based on images captured by the miniature optical sensor102.

FIGS.4A and4Billustrate the optical ring100detecting a stateful touch-and-slide interaction between the thumb206and the index finger204of the wearer. For example, as shown inFIG.4A, the optical ring100can detect the thumb206of the wearer coming into contact with the distal end of the index finger204. The optical ring100can further detect the thumb206sliding along the index finger204toward the optical ring100and then away from the optical ring100(e.g., along the arrow shown inFIG.4B). In one or more implementations, the optical ring100detects this touch-and-slide movement of the thumb206along the index finger204based on bioimpedance measurements taken by the one or more electrodes108and one or more images captured by the miniature optical sensor102.

FIGS.5A-5Bfurther illustrate the optical ring100detecting another type of stateful pinch interaction between the thumb206and the index finger204of the hand202of the wearer. For example, the optical ring100can detect—and distinguish between—a touch of the thumb206with a distal end of the index finger204, as shown inFIG.5A, and a touch of the thumb206with a proximal end of the index finger204, as shown inFIG.5B(e.g., as the finger moves as indicated by the arrow shown inFIG.5B). In one or more implementations, the optical ring100detects and distinguishes between touches of the thumb206with the index finger204at positions that are either near or far from the optical ring100based on bioimpedance measurements taken by the one or more electrodes108and one or more images captured by the miniature optical sensor102.

FIGS.6A and6Billustrate the optical ring100detecting a complex and stateful thumb-touch/wrist-flick input gesture. For example, as shown inFIG.6A, the optical ring100can detect a starting position of the wearer's hand202including the thumb206in contact with the index finger204and the wrist of the hand202in a neutral position. The optical ring100can then detect an extended position of the wearer's hand202including the thumb206extending away from the index finger204(e.g., along the arrow shown inFIG.6B) while the wrist of the hand202“flicking” or quickly shifting into a flexed position. As shown inFIG.6B, the optical ring100can detect the wrist of the hand202flicking up. In additional implementations, the optical ring100can detect the wrist of the hand202flicking down or to the side. The optical ring100can detect this combination input gesture based on bioimpedance measurements taken by the one or more electrodes108, movement measurements taken by the IMU110, and one or more images captured by the miniature optical sensor102.

FIGS.7A and7Billustrate the optical ring100detecting a scrubbing, side-to-side stateful input gesture. For example, as shown inFIG.7A, the optical ring100can detect the thumb206coming into contact with the index finger204. Next, as shown inFIG.7B, the optical ring100can further detect a sweeping, side-to-side motion of the hand202(e.g., along the arrow shown inFIG.7B), while the thumb206remains in contact with the index finger204. As with the input gesture illustrated inFIGS.6A and6B, the optical ring100can detect the side-to-side stateful input gesture illustrated inFIGS.7A and7Bbased on bioimpedance measurements taken by the one or more electrodes108, movement measurements taken by the IMU110, and one or more images captured by the miniature optical sensor102.

FIGS.8A and8Billustrate the optical ring100detecting a stateful pinch-rotate-release input gesture that mimics the wearer turning a knob. For example, as shown inFIG.8A, the optical ring100can detect the thumb206coming into contact with the index finger204of the hand202of the wearer. The optical ring100can further detect the hand202rotating while the thumb206remains in contact with the index finger204. Finally, the optical ring100can detect release of the thumb206following the rotation, as shown inFIG.8B. As with the previous input gestures, the optical ring100can detect this pinch-rotate-release input gesture based on bioimpedance measurements taken by the one or more electrodes108, movement measurements taken by the IMU110, and one or more images captured by the miniature optical sensor102.

FIGS.9A and9Billustrate the optical ring100detecting a stateful writing input gesture by the hand202of the wearer. For example, as shown inFIG.9A, the optical ring100can detect the thumb206pinching a distal end of the index finger204. The optical ring100can further detect movement of the hand202while the thumb206is in contact with the index finger204—as if the wearer were writing in mid-air along the arrow shown inFIG.8A. Finally, the optical ring100can detect the thumb206release the index finger204to end the input gesture. As with the previous input gestures, the optical ring100can detect this pinch-rotate-release input gesture based on bioimpedance measurements taken by the one or more electrodes108, movement measurements taken by the IMU110, and one or more images captured by the miniature optical sensor102.

As mentioned above, and as shown inFIG.10, the optical ring100includes or is associated with a control system that takes inputs from one or more of the miniature optical sensor102, the one or more electrodes108, and the IMU110to determine and identify complex, “stateful” user input gestures.FIG.10is a block diagram1000of an optical ring control system1004operating within a memory1002of the optical ring100while performing these functions. As such,FIG.10provides additional detail with regard to these functions. For example, in one or more implementations as shown inFIG.10, the optical ring control system1004can include an optical sensor manager1006, a bioimpedance manager1008, an IMU manager1010, and an input gesture manager1012. As further shown inFIG.10, additional items1014stores and maintains input gesture data1016. While the optical ring control system1004is illustrated inFIG.10within the optical ring100, the optical ring control system1004may be located elsewhere in other implementations. For example, in an additional implementation, the optical ring control system1004may be located as part of an AR/VR system. In that implementation, the optical ring100may include one or more transmitters for transmitting input data captured by one or more of the miniature optical sensor102, the one or more electrodes108, and the IMU110to the optical ring control system1004.

In certain implementations, the optical ring control system1004represents one or more software applications, modules, or programs that, when executed by a computing device, may cause the computing device to perform one or more tasks. For example, and as will be described in greater detail below, one or more of the optical sensor manager1006, the bioimpedance manager1008, the IMU manager1010, and the input gesture manager1012may represent software stored and configured to run on one or more devices, such as the optical ring100. One or more of the optical sensor manager1006, the bioimpedance manager1008, the IMU manager1010, or the input gesture manager1012of the optical ring control system1004shown inFIG.10may also represent all or portions of one or more special purpose computers to perform one or more tasks.

As mentioned above, and as shown inFIG.10, the optical ring control system1004includes the optical sensor manager1006. In one or more implementations, the optical sensor manager1006handles tasks related to the miniature optical sensor102. For example, in most implementations, the miniature optical sensor102includes a miniature RGB camera that captures actions of both the thumb206and index finger204of the wearer (or other finger if the wearer cannot use their index finger). In some implementations, the miniature optical sensor102can be a miniature, low resolution camera. Additionally, in some implementations, the optical ring100can further include an LED that enables the optical ring100to operate in low-light settings and perform computational operations such as background subtraction with greater efficiency.

In more detail, the optical sensor manager1006enables the miniature optical sensor102to be an ultra low-resolution camera, such as one that captures images at 5×5 pixels. In most implementations, this ultra low-resolution preserves wearer privacy while reducing computational needs. In one or more implementations, the optical sensor manager1006utilizes ultra low-resolution images captured by the miniature optical sensor102without any training data from the wearer by leveraging an underlying inference model that is based on user-independent heuristics and user-generalizable ML models.

To illustrate, the optical sensor manager1006can utilize an interaction recognition pipeline to glean input interaction information from ultra low-resolution images captured by the miniature optical sensor102. In one or more implementations, the primary components of the interaction recognition pipeline can include finger segmentation to separate the fingers from the background in a capture image, input gating to remove false positives, and interaction recognition to identify user-performed interactions.

During finger segmentation, the optical sensor manager1006employs color-based segmentation to separate fingers from the backdrop in an output image from the miniature optical sensor102. In one or more implementations, the optical ring100further includes a red-colored LED that illuminates the thumb206and the index finger204, which may strongly light up due to their proximity to the LED, while surfaces further away from the LED do not illuminate as intensely. The optical sensor manager1006can use the difference in intensity of the red areas to perform a color-based background segmentation and leave only the fingers. Using active illumination for segmentation serves to enable robust segmentations with a lightweight thresholding approach as opposed to using more computationally demanding methods, such as edge detection or other ML-based techniques. As such, the optical sensor manager1006can help conserve the limited computing resources of the optical ring100. Robust segmentation further enables the use of heuristic-based algorithms for interaction recognition.

In one or more implementations, the optical sensor manager1006can perform the color-based thresholding by first converting the raw RGB image captured by the miniature optical sensor102to HSV color space, followed by applying a specified threshold (lower bound H=0, S=179, V=82 to upper bound H=179, S=255, V=255). Since the LED powerfully illuminates the fingers and completely overlays them with red light, the wearer's skin tone has little impact on color thresholds. As such, the same threshold values apply to all wearers. After color segmentations, the optical sensor manager1006can transform the segmented image into a binary image for further processing.

During input gating, the optical sensor manager1006can employ a machine learning classifier to differentiate between instances when wearers do not intend to make a gesture and when they are actively performing or planning to make a gesture. This helps to filter out false positives. In one or more implementations, the optical sensor manager1006trains the classifier using positive examples where a wearer is performing or preparing to perform a gesture and negative examples where a user is handling an object or carrying out an action that is not a valid interaction with their hand. In at least one implementation, the optical sensor manager1006utilizes a random forest classifier with one hundred trees for this classification task. In one or more implementations, the input to the classifier is a flattened-out binary image after segmentation.

During interaction recognition, the optical sensor manager1006can recognize both stateful gestures and other types of gestures. In more detail, the optical sensor manager1006can recognize a stateful pinch that occurs when the index finger204and the thumb206make contact. For example, the optical sensor manager1006detects these types of pinches by first identifying fingers using a contour detection algorithm in the segmented binary image. Among all the contours found, the optical sensor manager1006can filter out those with an area less than 30% of the total image area, as they do not represent a finger. When no pinch is performed, the image consists of two distinct contours representing the two fingers. At the moment of contact, the two contours blend into a single outline depicting the fingers in touch, representing a pinch gesture. When a single contour is detected, the optical sensor manager1006can perform an additional check to ensure that the width of the bounding box of the detected contour is equal to the width of the frame. If the contour's width matches the frame's width, the optical sensor manager1006can recognize the gesture as a pinch.

Additionally, the optical sensor manager1006can recognize and distinguish other gestures (e.g., a left swipe, a right swipe, a long tap) by analyzing the motion and duration of the thumb's movement along the index finger204while the two fingers are in contact (e.g., pinching). The optical sensor manager1006can track the thumb's movement by monitoring the area of contour representing the fingers. As the thumb206moves closer to the optical ring100, its appearance in the miniature optical sensor102becomes bigger; hence, the contour area increases, and vice versa. The optical sensor manager1006can calculate the duration of the contact as the time between the start and end of the pinch. During a stateful pinch, the optical sensor manager1006can recognize a gesture as a left or right swipe depending on the direction of the slide. Conversely, the optical sensor manager1006can recognize a gesture as a long tap when there is little or no motion of the thumb206on the index finger204.

In some implementations, the optical sensor manager1006makes these determinations using a heuristic-based method that considers the direction of movement and the duration of the movement. For example, in one implementation, the optical sensor manager1006recognizes a left swipe gesture when, for a number of frames between 5 and 20 (e.g., 0.15-0.6 sec) the sum of the contour area of the first two frames is greater than that of the last two frames—and vice versa for a right swipe gesture. In an additional implementation, the optical sensor manager1006recognizes a long tap gesture by recording the contour area of each frame during a valid pinch. When the pinch ends, the optical sensor manager1006examines the length of the recorded frames. The optical sensor manager1006may reject a pinch as an accidental touch when the pinch length is less than five frames. If the number of frames exceeds 20 (0.6 sec at 30 fps) and is less than 40 (1.2 sec at 30 fps), the optical sensor manager1006can determine that the gesture is a long tap.

In one or more implementations, the optical sensor manager1006can also track continuous1D gestures. For example, when the wearer performs a continuous input interaction, the optical sensor manager1006can begin to track the thumb's position over the index finger204when contact between the two fingers is sensed. The optical sensor manager1006further tracks the thumb's position by monitoring the contour area in the frame and calculating the delta as the difference between the thumb's initial location when a pinch was first detected and its current location. The delta can be positive or negative depending on the direction of motion. Since the delta depends on the initial touch position, which differs each time, the optical sensor manager1006tracks the relative movement of the thumb206, not its absolute position. This helps the optical sensor manager1006generalize across varied finger sizes and shapes.

As mentioned above, and as shown inFIG.10, the optical ring control system1004includes the bioimpedance manager1008. In one or more implementations, the bioimpedance manager1008measures impedance of the biological tissues of a wearer of the optical ring100. For example, the bioimpedance manager1008can measure bioimpedance by assessing the resistance and reactance of the wearer's fingers to an electrical current that is applied by the one or more electrodes108. In at least one implementation, the bioimpedance manager1008causes the one or more electrodes108to pass a low-level electrical current through the wearer's body and then measures the resulting voltage.

In more detail, biological tissue typically has various electrical properties. For example, resistance (R) represents the hindrance of the flow of electrical current and is mainly associated with non-conductive components like cell membranes and connective tissues. Additionally, reactance (X) indicates the delay in the flow of electrical current caused by capacitive effect, often related to cell membranes. In response to causing a first subset of the one or more electrodes108to apply a small, harmless electrical current (e.g., at frequencies between 1 kHz and 1 MHz), the bioimpedance manager1008can further cause a second subset of the one or more electrodes108to measure the resulting voltage. The bioimpedance manager1008can calculate the impedance (Z) of the wearer's tissue using Ohm's Law: Z=V/I, where Z is impedance, V is voltage, and I is current. In one or more implementations, the bioimpedance manager1008can determine that the wearer's index finger204and thumb206are touching or not touching based on changes to the calculated impedance (Z).

As mentioned above, and as shown inFIG.10, the optical ring control system1004includes the IMU manager1010. In one or more implementations, the IMU manager1010determines how the hand202of the wearer (e.g., while wearing the optical ring100) moves based on measurements taken by the IMU110(e.g., the inertial measurement unit). In one or more implementations, the IMU110can include various components such as a gyroscope, an accelerometer, and sometimes a magnetometer. For example, the gyroscope can track and measure how the optical ring100is rotating or turning. Additionally, the accelerometer can detect changes in speed or direction associated with the optical ring100. In one or more implementations, the magnetometer can detect directionality of the optical ring100based on a magnetic field (e.g., Earth's magnetic field). Based on all of these measurements, the IMU manager1010can determine how the optical ring100is moving during input gestures.

As mentioned above, and as shown inFIG.10, the optical ring control system1004includes the input gesture manager1012. In one or more implementations, the input gesture manager1012takes the inputs and determinations of the optical sensor manager1006, the bioimpedance manager1008, and the IMU manager1010to determine the input gesture being made by the wearer of the optical ring100. For example, the input gesture manager1012can utilize heuristics, algorithms, machine learning models, and other techniques to make this determination. In at least one implementation, the input gesture manager1012can transmit the determined input gesture to a computing system (e.g., a VR system, an AR system) for further utilization. In additional implementations, the input gesture manager1012can further make interaction determinations based on other input devices mounted on the optical ring100such as a contact microphone.

As shown inFIG.10, the optical ring100includes one or more physical processors, such as the physical processor(s)1018. The physical processor(s)1018generally represent any type or form of hardware-implemented processing unit capable of interpreting and/or executing computer-readable instructions. In one implementation, the physical processor(s)1018access and/or modify one or more of the components of the optical ring control system1004. Examples of physical processors include, without limitation, microprocessors, microcontrollers, Central Processing Units (CPUs), Field-Programmable Gate Arrays (FPGAs) that implement softcore processors, Application-Specific Integrated Circuits (ASICs), portions of one or more of the same, variations or combinations of one or more of the same, and/or any other suitable physical processor.

Additionally as shown inFIG.10, the optical ring100includes the memory1002. In one or more implementations, the memory1002generally represents any type or form of volatile or non-volatile storage device or medium capable of storing data and/or computer-readable instructions. In one example, the memory1002stores, loads, and/or maintains one or more of the components of the optical ring control system1004. Examples of the memory1002include, without limitation, Random Access Memory (RAM), Read Only Memory (ROM), flash memory, Hard Disk Drives (HDDs), Solid-State Drives (SSDs), optical disk drives, caches, variations or combinations of one or more of the same, and/or any other suitable storage memory.

Moreover, as shown inFIG.10, the optical ring100includes the additional items1014. The additional items1014include the input gesture data1016. In one or more implementations, the input gesture data1016includes measurements and determinations taken and/or made by one or more of the optical sensor manager1006, the bioimpedance manager1008, the IMU manager1010, and the input gesture manager1012. In at least one implementation, the input gesture data1016further includes input gestures transmitted by the input gesture manager1012to additional systems.

In summary, the optical ring100—in connection with the optical ring control system1004—detects complex, nuanced, and stateful input gestures that a wearer can make with a hand. By enabling detection of these types of input gestures, the optical ring100makes it possible for the wearer to interact with digital content (e.g., via an AR or VR device) in ways that are comfortable, natural, easy, and intuitive.

EXAMPLE IMPLEMENTATIONS

Example 1: An apparatus including a ring designed to curve around a finger of a wearer, wherein the ring includes an external surface and an internal surface configured to come into contact with the finger of the wearer, a miniature optical sensor mounted on the external surface of the ring and positioned to view along a length of the finger of the wearer, and one or more electrodes mounted on the internal surface of the ring, wherein the one or more electrodes serve to measure bioimpedance in the finger of the wearer.

Example 2: The apparatus of Example 1, further including an inertial measurement unit that measures movement of the ring.

Example 3: The apparatus of Examples 1 and 2, wherein the inertial measurement unit measures movement of the ring in at least nine axes.

Example 4: The apparatus of any of Examples 1-3, further including an LED mounted in association with the miniature optical sensor.

Example 5: The apparatus of any of Examples 1-4, wherein the miniature optical sensor captures images of the finger of the wearer illuminated by the LED.

Example 6: The apparatus of any of Examples 1-5, wherein the finger of the wearer is an index finger.

Example 7: The apparatus of any of Examples 1-6, wherein the miniature optical sensor captures ultra low-resolution images of a thumb finger of the wearer interacting with the index finger of the wearer.

Example 8: A method including integrating a ring designed to curve around a finger of a wearer with a miniature optical sensor, wherein the ring includes an external surface and an internal surface configured to come into contact with the finger of the wearer and the miniature optical sensor is integrated into the external surface of the ring at a position that allows the miniature optical sensor to view along a length of the finger of the wearer, and integrating one or more electrodes into the internal surface of the ring, wherein the one or more electrodes serve to measure bioimpedance in the finger of the wearer.

Example 9: The method of Example 8, further including integrating an inertial measurement unit into the ring that measures movement of the ring in at least nine axes.

Example 10: The method of Examples 8 and 9, further including integrating an LED into the ring that illuminates images captured by the miniature optical sensor.

Example 11: The method of any of Examples 8-10, further including integrating a controller that determines movement of the ring based on images captured by the miniature optical sensor and measurements made by the inertial measurement unit.

Example 12: The method of any of Examples 8-11, wherein the controller further determines an interaction of a thumb of the wearer relative to the ring based on images captured by the miniature optical sensor and bioimpedance measurements made by the one or more electrodes.

Example 13: The method of any of Examples 8-12, wherein the interaction of the thumb of the wearer relative to the ring includes a touch of the thumb with a distal end of the finger of the wearer relative to the ring.

Example 14: The method of any of Examples 8-13, wherein the interaction of the thumb of the wearer relative to the ring includes a touch of the thumb with a proximal end of the finger of the wearer relative to the ring.

Example 15: The method of any of Examples 8-14, wherein the interaction of the thumb of the wearer relative to the ring includes a touch-and-slide movement of the thumb along the finger of the wearer away from the ring.

Example 16: The method of any of Examples 8-15, wherein the interaction of the thumb of the wearer relative to the ring includes a touch-and-slide movement of the thumb along the finger of the wearer toward the ring.

Example 17: The method of any of Examples 8-16, wherein the controller detects combination movement including movement of the ring and the interaction of the thumb of the wearer relative to the ring.

Example 18: A method including receiving one or more ultra low-resolution images captured by a miniature optical sensor integrated into an external surface of a ring worn on a finger of a wearer, receiving one or more inertial measurements from an inertial measurement unit integrated into the ring, receiving one or more bioimpedance measurements captured by one or more electrodes integrated into an internal surface of the ring, and determining a combination input gesture performed by the wearer based on the one or more ultra low-resolution images, the one or more inertial measurements, and the one or more bioimpedance measurements.

Example 19: The method of Example 18, wherein the combination input gesture includes a pinch-rotate-release input gesture that mimics the wearer turning a knob.

Example 20: The method of Examples 18 and 19, wherein the combination input gesture includes a thumb-slide/wrist-flick input gesture.

Turning toFIG.11, augmented-reality system1100may include an eyewear device1102with a frame1110configured to hold a left display device1115(A) and a right display device1115(B) in front of a user's eyes. Display devices1115(A) and1115(B) may act together or independently to present an image or series of images to a user. While augmented-reality system1100includes two displays, embodiments of this disclosure may be implemented in augmented-reality systems with a single NED or more than two NEDs.

In some embodiments, augmented-reality system1100may include one or more sensors, such as sensor1140. Sensor1140may generate measurement signals in response to motion of augmented-reality system1100and may be located on substantially any portion of frame1110. Sensor1140may represent one or more of a variety of different sensing mechanisms, such as a position sensor, an inertial measurement unit (IMU), a depth camera assembly, a structured light emitter and/or detector, or any combination thereof. In some embodiments, augmented-reality system1100may or may not include sensor1140or may include more than one sensor. In embodiments in which sensor1140includes an IMU, the IMU may generate calibration data based on measurement signals from sensor1140. Examples of sensor1140may include, without limitation, accelerometers, gyroscopes, magnetometers, other suitable types of sensors that detect motion, sensors used for error correction of the IMU, or some combination thereof.

In some examples, augmented-reality system1100may also include a microphone array with a plurality of acoustic transducers1120(A)-1120(J), referred to collectively as acoustic transducers1120. Acoustic transducers1120may represent transducers that detect air pressure variations induced by sound waves. Each acoustic transducer1120may be configured to detect sound and convert the detected sound into an electronic format (e.g., an analog or digital format). The microphone array inFIG.11may include, for example, ten acoustic transducers:1120(A) and1120(B), which may be designed to be placed inside a corresponding ear of the user, acoustic transducers1120(C),1120(D),1120(E),1120(F),1120(G), and1120(H), which may be positioned at various locations on frame1110, and/or acoustic transducers1120(1) and1120(J), which may be positioned on a corresponding neckband1105.

In some embodiments, one or more of acoustic transducers1120(A)-(J) may be used as output transducers (e.g., speakers). For example, acoustic transducers1120(A) and/or1120(B) may be earbuds or any other suitable type of headphone or speaker.

The configuration of acoustic transducers1120of the microphone array may vary. While augmented-reality system1100is shown inFIG.11as having ten acoustic transducers1120, the number of acoustic transducers1120may be greater or less than ten. In some embodiments, using higher numbers of acoustic transducers1120may increase the amount of audio information collected and/or the sensitivity and accuracy of the audio information. In contrast, using a lower number of acoustic transducers1120may decrease the computing power required by an associated controller1150to process the collected audio information. In addition, the position of each acoustic transducer1120of the microphone array may vary. For example, the position of an acoustic transducer1120may include a defined position on the user, a defined coordinate on frame1110, an orientation associated with each acoustic transducer1120, or some combination thereof.

Acoustic transducers1120(A) and1120(B) may be positioned on different parts of the user's ear, such as behind the pinna, behind the tragus, and/or within the auricle or fossa. Or there may be additional acoustic transducers1120on or surrounding the ear in addition to acoustic transducers1120inside the ear canal. Having an acoustic transducer1120positioned next to an ear canal of a user may enable the microphone array to collect information on how sounds arrive at the ear canal. By positioning at least two of acoustic transducers1120on either side of a user's head (e.g., as binaural microphones), augmented-reality system1100may simulate binaural hearing and capture a 3D stereo sound field around about a user's head. In some embodiments, acoustic transducers1120(A) and1120(B) may be connected to augmented-reality system1100via a wired connection1130, and in other embodiments acoustic transducers1120(A) and1120(B) may be connected to augmented-reality system1100via a wireless connection (e.g., a BLUETOOTH connection). In still other embodiments, acoustic transducers1120(A) and1120(B) may not be used at all in conjunction with augmented-reality system1100.

Acoustic transducers1120on frame1110may be positioned in a variety of different ways, including along the length of the temples, across the bridge, above or below display devices1115(A) and1115(B), or some combination thereof. Acoustic transducers1120may also be oriented such that the microphone array is able to detect sounds in a wide range of directions surrounding the user wearing the augmented-reality system1100. In some embodiments, an optimization process may be performed during manufacturing of augmented-reality system1100to determine relative positioning of each acoustic transducer1120in the microphone array.

In some examples, augmented-reality system1100may include or be connected to an external device (e.g., a paired device), such as neckband1105. Neckband1105generally represents any type or form of paired device. Thus, the following discussion of neckband1105may also apply to various other paired devices, such as charging cases, smart watches, smart phones, wrist bands, other wearable devices, hand-held controllers, tablet computers, laptop computers, other external compute devices, etc.

As shown, neckband1105may be coupled to eyewear device1102via one or more connectors. The connectors may be wired or wireless and may include electrical and/or non-electrical (e.g., structural) components. In some cases, eyewear device1102and neckband1105may operate independently without any wired or wireless connection between them. WhileFIG.11illustrates the components of eyewear device1102and neckband1105in example locations on eyewear device1102and neckband1105, the components may be located elsewhere and/or distributed differently on eyewear device1102and/or neckband1105. In some embodiments, the components of eyewear device1102and neckband1105may be located on one or more additional peripheral devices paired with eyewear device1102, neckband1105, or some combination thereof.

Neckband1105may be communicatively coupled with eyewear device1102and/or to other devices. These other devices may provide certain functions (e.g., tracking, localizing, depth mapping, processing, storage, etc.) to augmented-reality system1100. In the embodiment ofFIG.11, neckband1105may include two acoustic transducers (e.g.,1120(l) and1120(J)) that are part of the microphone array (or potentially form their own microphone subarray). Neckband1105may also include a controller1125and a power source1135.

Acoustic transducers1120(1) and1120(J) of neckband1105may be configured to detect sound and convert the detected sound into an electronic format (analog or digital). In the embodiment ofFIG.11, acoustic transducers1120(l) and1120(J) may be positioned on neckband1105, thereby increasing the distance between the neckband acoustic transducers1120(I) and1120(J) and other acoustic transducers1120positioned on eyewear device1102. In some cases, increasing the distance between acoustic transducers1120of the microphone array may improve the accuracy of beamforming performed via the microphone array. For example, if a sound is detected by acoustic transducers1120(C) and1120(D) and the distance between acoustic transducers1120(C) and1120(D) is greater than, e.g., the distance between acoustic transducers1120(D) and1120(E), the determined source location of the detected sound may be more accurate than if the sound had been detected by acoustic transducers1120(D) and1120(E).

Controller1125of neckband1105may process information generated by the sensors on neckband1105and/or augmented-reality system1100. For example, controller1125may process information from the microphone array that describes sounds detected by the microphone array. For each detected sound, controller1125may perform a direction-of-arrival (DOA) estimation to estimate a direction from which the detected sound arrived at the microphone array. As the microphone array detects sounds, controller1125may populate an audio data set with the information. In embodiments in which augmented-reality system1100includes an inertial measurement unit, controller1125may compute all inertial and spatial calculations from the IMU located on eyewear device1102. A connector may convey information between augmented-reality system1100and neckband1105and between augmented-reality system1100and controller1125. The information may be in the form of optical data, electrical data, wireless data, or any other transmittable data form. Moving the processing of information generated by augmented-reality system1100to neckband1105may reduce weight and heat in eyewear device1102, making it more comfortable to the user.

Power source1135in neckband1105may provide power to eyewear device1102and/or to neckband1105. Power source1135may include, without limitation, lithium ion batteries, lithium-polymer batteries, primary lithium batteries, alkaline batteries, or any other form of power storage. In some cases, power source1135may be a wired power source. Including power source1135on neckband1105instead of on eyewear device1102may help better distribute the weight and heat generated by power source1135.

As noted, some artificial-reality systems may, instead of blending an artificial reality with actual reality, substantially replace one or more of a user's sensory perceptions of the real world with a virtual experience. One example of this type of system is a head-worn display system, such as virtual-reality system1200inFIG.12, that mostly or completely covers a user's field of view. Virtual-reality system1200may include a front rigid body1202and a band1204shaped to fit around a user's head. Virtual-reality system1200may also include output audio transducers1206(A) and1206(B). Furthermore, while not shown inFIG.12, front rigid body1202may include one or more electronic elements, including one or more electronic displays, one or more inertial measurement units (IMUs), one or more tracking emitters or detectors, and/or any other suitable device or system for creating an artificial-reality experience.

As noted, augmented-reality systems1100and1200may be used with a variety of other types of devices to provide a more compelling artificial-reality experience. These devices may be haptic interfaces with transducers that provide haptic feedback and/or that collect haptic information about a user's interaction with an environment. The artificial-reality systems disclosed herein may include various types of haptic interfaces that detect or convey various types of haptic information, including tactile feedback (e.g., feedback that a user detects via nerves in the skin, which may also be referred to as cutaneous feedback) and/or kinesthetic feedback (e.g., feedback that a user detects via receptors located in muscles, joints, and/or tendons).

Haptic feedback may be provided by interfaces positioned within a user's environment (e.g., chairs, tables, floors, etc.) and/or interfaces on articles that may be worn or carried by a user (e.g., gloves, wristbands, etc.). As an example,FIG.13illustrates a vibrotactile system1300in the form of a wearable glove (haptic device1310) and wristband (haptic device1320). Haptic device1310and haptic device1320are shown as examples of wearable devices that include a flexible, wearable textile material1330that is shaped and configured for positioning against a user's hand and wrist, respectively. This disclosure also includes vibrotactile systems that may be shaped and configured for positioning against other human body parts, such as a finger, an arm, a head, a torso, a foot, or a leg. By way of example and not limitation, vibrotactile systems according to various embodiments of the present disclosure may also be in the form of a glove, a headband, an armband, a sleeve, a head covering, a sock, a shirt, or pants, among other possibilities. In some examples, the term “textile” may include any flexible, wearable material, including woven fabric, non-woven fabric, leather, cloth, a flexible polymer material, composite materials, etc.

One or more vibrotactile devices1340may be positioned at least partially within one or more corresponding pockets formed in textile material1330of vibrotactile system1300. Vibrotactile devices1340may be positioned in locations to provide a vibrating sensation (e.g., haptic feedback) to a user of vibrotactile system1300. For example, vibrotactile devices1340may be positioned against the user's finger(s), thumb, or wrist, as shown inFIG.13. Vibrotactile devices1340may, in some examples, be sufficiently flexible to conform to or bend with the user's corresponding body part(s).

A power source1350(e.g., a battery) for applying a voltage to the vibrotactile devices1340for activation thereof may be electrically coupled to vibrotactile devices1340, such as via conductive wiring1352. In some examples, each of vibrotactile devices1340may be independently electrically coupled to power source1350for individual activation. In some embodiments, a processor1360may be operatively coupled to power source1350and configured (e.g., programmed) to control activation of vibrotactile devices1340.

Vibrotactile system1300may be implemented in a variety of ways. In some examples, vibrotactile system1300may be a standalone system with integral subsystems and components for operation independent of other devices and systems. As another example, vibrotactile system1300may be configured for interaction with another device or system1370.

For example, vibrotactile system1300may, in some examples, include a communications interface1380for receiving and/or sending signals to the other device or system1370. The other device or system1370may be a mobile device, a gaming console, an artificial-reality (e.g., virtual-reality, augmented-reality, mixed-reality) device, a personal computer, a tablet computer, a network device (e.g., a modem, a router, etc.), a handheld controller, etc. Communications interface1380may enable communications between vibrotactile system1300and the other device or system1370via a wireless (e.g., Wi-Fi, BLUETOOTH, cellular, radio, etc.) link or a wired link. If present, communications interface1380may be in communication with processor1360, such as to provide a signal to processor1360to activate or deactivate one or more of the vibrotactile devices1340.

Vibrotactile system1300may optionally include other subsystems and components, such as touch-sensitive pads1390, pressure sensors, motion sensors, position sensors, lighting elements, and/or user interface elements (e.g., an on/off button, a vibration control element, etc.). During use, vibrotactile devices1340may be configured to be activated for a variety of different reasons, such as in response to the user's interaction with user interface elements, a signal from the motion or position sensors, a signal from the touch-sensitive pads1390, a signal from the pressure sensors, a signal from the other device or system1370, etc.

Although power source1350, processor1360, and communications interface1380are illustrated inFIG.13as being positioned in haptic device1320, the present disclosure is not so limited. For example, one or more of power source1350, processor1360, or communications interface1380may be positioned within haptic device1310or within another wearable textile.

Haptic wearables, such as those shown in and described in connection withFIG.13, may be implemented in a variety of types of artificial-reality systems and environments.FIG.14shows an example artificial-reality environment1400including one head-mounted virtual-reality display and two haptic devices (i.e., gloves), and in other embodiments any number and/or combination of these components and other components may be included in an artificial-reality system. For example, in some embodiments there may be multiple head-mounted displays each having an associated haptic device, with each head-mounted display and each haptic device communicating with the same console, portable computing device, or other computing system.

Head-mounted display1402generally represents any type or form of virtual-reality system, such as virtual-reality system1200inFIG.12. Haptic device1404generally represents any type or form of wearable device, worn by a user of an artificial-reality system, which provides haptic feedback to the user to give the user the perception that he or she is physically engaging with a virtual object. In some embodiments, haptic device1404may provide haptic feedback by applying vibration, motion, and/or force to the user. For example, haptic device1404may limit or augment a user's movement. To give a specific example, haptic device1404may limit a user's hand from moving forward so that the user has the perception that his or her hand has come in physical contact with a virtual wall. In this specific example, one or more actuators within the haptic device may achieve the physical-movement restriction by pumping fluid into an inflatable bladder of the haptic device. In some examples, a user may also use haptic device1404to send action requests to a console. Examples of action requests include, without limitation, requests to start an application and/or end the application and/or requests to perform a particular action within the application.

While haptic interfaces may be used with virtual-reality systems, as shown inFIG.14, haptic interfaces may also be used with augmented-reality systems, as shown inFIG.15.FIG.15is a perspective view of a user1510interacting with an augmented-reality system1500. In this example, user1510may wear a pair of augmented-reality glasses1520that may have one or more displays1522and that are paired with a haptic device1530. In this example, haptic device1530may be a wristband that includes a plurality of band elements1532and a tensioning mechanism1534that connects band elements1532to one another.

One or more of band elements1532may include any type or form of actuator suitable for providing haptic feedback. For example, one or more of band elements1532may be configured to provide one or more of various types of cutaneous feedback, including vibration, force, traction, texture, and/or temperature. To provide such feedback, band elements1532may include one or more of various types of actuators. In one example, each of band elements1532may include a vibrotactor (e.g., a vibrotactile actuator) configured to vibrate in unison or independently to provide one or more of various types of haptic sensations to a user. Alternatively, only a single band element or a subset of band elements may include vibrotactors.

Haptic devices1310,1320,1404, and1530may include any suitable number and/or type of haptic transducer, sensor, and/or feedback mechanism. For example, haptic devices1310,1320,1404, and1530may include one or more mechanical transducers, piezoelectric transducers, and/or fluidic transducers. Haptic devices1310,1320,1404, and1530may also include various combinations of different types and forms of transducers that work together or independently to enhance a user's artificial-reality experience. In one example, each of band elements1532of haptic device1530may include a vibrotactor (e.g., a vibrotactile actuator) configured to vibrate in unison or independently to provide one or more of various types of haptic sensations to a user.