Virtual reticle for augmented reality systems
Systems and methods for displaying a virtual reticle in an augmented or virtual reality environment by a wearable device are described. The environment can include real or virtual objects that may be interacted with by the user through a variety of poses, such as, e.g., head pose, eye pose or gaze, or body pose. The user may select objects by pointing the virtual reticle toward a target object by changing pose or gaze. The wearable device can recognize that an orientation of a user's head or eyes is outside of a range of acceptable or comfortable head or eye poses and accelerate the movement of the reticle away from a default position and toward a position in the direction of the user's head or eye movement, which can reduce the amount of movement by the user to align the reticle and target.
1. A system comprising:
a sensor configured to obtain an orientation of a head and/or eyes of a user of the system;
non-transitory memory configured to store orientation data;
a display configured to be positioned in front of an eye of a user, and configured to project a virtual reticle toward the eye of the user within a field of view (FOV) of the user, wherein the FOV changes as a head pose of the user changes;
a hardware processor in communication with the sensor, the display, and the non-transitory memory, the hardware processor programmed to:
recognize an orientation of the user's head and/or eyes;
determine whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses; and
at least partly in response to determining that the orientation of the user's head and/or eyes are outside of the range of acceptable head and/or eye poses, reduce a degree to which the user needs to reorient the user's neck to align the virtual reticle and a target object by:
accelerating movement of the virtual reticle away from a default position and toward a position in a direction of the user's head and/or eye movement.
2. The system of claim 1 , wherein determining whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses further comprises determining whether the acceptable head and/or eye poses satisfies a first orientation threshold.
3. The system of claim 1 , wherein while the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses, a location of the virtual reticle is based at least in part on an offset and pose data.
4. The system of claim 1 , wherein when the orientation of the user's head is outside of a range of acceptable head poses, a location of the virtual reticle is based at least in part on an easing function and pose data.
5. The system of claim 1 , wherein while the orientation of the user's head and/or eyes are outside of a far end limit of the range of acceptable head and/or eye poses, the hardware processor is programmed to cause the display to maintain the virtual reticle at a fixed offset position within the FOV that is offset from the default position.
6. The system of claim 1 , wherein the virtual reticle comprises a movable indicator identifying a position within in the FOV.
7. The system of claim 1 , wherein the head pose is determined in an axial plane of the user, a coronal plane of the user, and a sagittal plane of the user.
8. A system comprising:
a sensor configured to obtain an orientation of a head and/or eyes of a user of the system;
non-transitory memory configured to store orientation data;
a display configured to be positioned in front of an eye of a user, and configured to project a virtual reticle toward the eye of the user within a field of view (FOV) of the user, wherein the FOV changes as a head pose of the user changes;
a hardware processor in communication with the sensor, the display, and the non-transitory memory, the hardware processor programmed to:
recognize an orientation of the user's head and/or eyes;
determine whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses;
at least partly in response to determining that the orientation of the user's head and/or eyes are outside of the range of acceptable head and/or eye poses, reduce a degree to which the user needs to reorient the user's neck to align the virtual reticle and a target object by:
causing the virtual reticle to move away from a default position and toward a position in a direction of the user's head and/or eye movement; and
at least partly in response to determining that the orientation of the user's head and/or eyes are within the range of acceptable head and/or eye poses causing the display to render a virtual reticle at a fixed location within the FOV.
9. The system of claim 8 , wherein determining whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses further comprises determining whether the acceptable head and/or eye poses satisfies a first orientation threshold.
10. The system of claim 8 , wherein while the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses, a location of the virtual reticle is based at least in part on an offset and pose data.
11. The system of claim 8 , wherein when the orientation of the user's head is outside of a range of acceptable head poses, a location of the virtual reticle is based at least in part on an easing function and pose data.
12. The system of claim 8 , wherein while the orientation of the user's head and/or eyes are outside of a far end limit of the range of acceptable head and/or eye poses, the hardware processor is programmed to cause the display to maintain the virtual reticle at a fixed offset position within the FOV that is offset from the default position.
13. The system of claim 8 , wherein the virtual reticle comprises a movable indicator identifying a position within in the FOV.
14. The system of claim 8 , wherein the head pose is determined in an axial plane of the user, a coronal plane of the user, and a sagittal plane of the user.
15. A method of adjusting a position of a virtual reticle identifying a position within a field of view (FOV) corresponding to a display of a display system, the method comprising:
recognizing an orientation of a user's head and/or eyes based at least on data from one or more sensors;
determining whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses;
at least partly in response to determining that the orientation of the user's head and/or eyes are outside of the range of acceptable head and/or eye poses, reducing a degree to which the user needs to reorient the user's neck to align the virtual reticle and a target object by:
accelerating movement of the virtual reticle away from a default position and toward a position in a direction of the user's head and/or eye movement; and
at least partly in response to determining, that the orientation of the user's head and/or eyes are within the range of acceptable head and/or eye poses causing the display to render a virtual reticle at a fixed location within the FOV.
16. The method of claim 15 , wherein determining whether the orientation of the user's head and/or eyes are outside of a range of acceptable head and/or eye poses further comprises determining whether the acceptable head and/or eye poses satisfies a first orientation threshold.
17. The method of claim 15 , wherein while the orientation of the uses head and/or eyes are outside of a range of acceptable head and/or eye poses, a location of the virtual reticle is based at least in part on an offset and pose data.
18. The method of claim 15 , wherein when the orientation of the user's head is outside of a range of acceptable head poses, a location of the virtual reticle is based at least in part on an easing function and pose data.
19. The method of claim 15 , wherein while the orientation of the user's head and/or eyes are outside of a far end limit of the range of acceptable head and/or eye poses, the method further comprises causing the display to maintain the virtual reticle at a fixed offset position within the FOV that is offset from the default position.
20. The method of claim 15 , wherein the virtual reticle comprises a movable indicator identifying a position within in the FOV.
21. The method of claim 15 , wherein the head pose is determined in an axial plane of the user, a coronal plane of the user, and a sagittal plane of the user.