Image correction caused by deformation of components in the viewing device.

JP7900562B2Active Publication Date: 2026-08-04MAGIC LEAP INC
View PDF 7 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
MAGIC LEAP INC
Filing Date
2025-05-20
Publication Date
2026-08-04

Smart Images

  • Figure 0007900562000001
    Figure 0007900562000001
  • Figure 0007900562000002
    Figure 0007900562000002
  • Figure 0007900562000003
    Figure 0007900562000003
Patent Text Reader

Abstract

To enable image correction for deformation of components of a viewing device.SOLUTION: A display assembly displays a virtual object at a select location, and an eye viewing the virtual object has an expected gaze direction. Deformation of the display assembly is detected. The deformation causes the virtual object to be viewable at an altered location, and the eye has an altered gaze direction. The virtual object may be displayed at a corrected location, and the eye viewing the virtual object at the corrected location has a corrected gaze direction that is moved closer to the expected gaze direction than the altered gaze direction.SELECTED DRAWING: Figure 2B
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0004] , , , ,

[0003] ,

[0001] (Cross - Reference to Related Applications) This application claims priority from U.S. Provisional Patent Application No. 62 / 643,672, filed Mar. 15, 2018, which is hereby incorporated by reference in its entirety.

[0002] 1) Field of the Invention The present invention generally relates to visual devices and methods for displaying rendered content, and more particularly to detecting and correcting deformations of components of visual devices.

Background Art

[0003] 2) Discussion of the Related Art Visual devices that provide rendered images have become popular for computing, entertainment, and other purposes. A visual device is typically a wearable device with a display for rendering an image, which can include various features such as the ability to show a user a three - dimensional image, whether to fix its location within the real - world environment, to show a user a rendering within the real - world environment, and to display a video or other moving rendering to the user.

[0004] A viewing device has various components that deform over time due to its use. When these components deform, the rendered virtual object may not be in its original location, even when the viewing device was still new. For example, a background application may display virtual objects in a location fixed to the viewing device, or in a location fixed to real-world objects surrounding the user. In some cases, a viewing device may have a see-through display so that the user can see real-world objects and perceive rendered objects in a location fixed to those real-world objects. The user may perceive, for example, a rendered coffee mug on a real-world table. If the components of the viewing device deform, the coffee mug may no longer be rendered on the table, but instead float at a distance above the table. The coffee mug is therefore not displayed to the user in a realistic manner. In addition, if the coffee mug is used as an interface element for the user to interact with a background application, there may be a discrepancy between where the background application expects the coffee mug to be and where the user interacts with the coffee mug. [Overview of the project] [Means for solving the problem]

[0005] The present invention provides a viewing device for displaying rendered content, comprising: a display assembly configured to display a virtual object at a selected location on the display assembly, wherein an eye viewing the virtual object has an expected gaze direction; and a deformation detection system connected to the display assembly and configured to detect a measured gaze direction of an eye viewing a virtual object on the display assembly and to calculate deformation of the display assembly based on the fact that the measured gaze direction is a modified gaze direction different from the expected gaze direction.

[0006] The present invention also provides a method for displaying rendered content, comprising the steps of: displaying a virtual object at a selected location on the display assembly, wherein an eye viewing the virtual object has an expected gaze direction; and detecting deformation of the display assembly, wherein the deformation makes the virtual object visible at the modified location, and the eye has a modified gaze direction. For example, this application provides the following items. (Item 1) A viewing device for displaying rendered content, A display assembly configured to display a virtual object at a selected location on the display assembly, wherein the eye viewing the virtual object has an expected gaze direction, and the display assembly A deformation detection system, wherein the deformation detection system is connected to the display assembly and is configured to detect the measured gaze direction of the eye viewing the virtual object on the display assembly, and to calculate the deformation of the display assembly based on the fact that the measured gaze direction is a modified gaze direction different from the expected gaze direction. A visual device equipped with [specific features / features]. (Item 2) The system according to item 1, further comprising a correction system connected to the deformation detection system for displaying the virtual object at a corrected location using the display assembly, wherein the measured gaze direction of the eye viewing the virtual object at the corrected location is the corrected gaze direction, and the difference between the expected gaze direction and the corrected gaze direction is less than the difference between the expected gaze direction and the modified gaze direction. (Item 3) The system according to item 1, wherein the display assembly includes an optical display, and the variation is a variation of the optical display. (Item 4) The system according to item 3, wherein the optical display is deformed in the display deformation direction, and the modified gaze direction is moved relative to the expected gaze direction in the display deformation direction. (Item 5) The system according to item 4, wherein the optical display is transparent, and the virtual object is visible to the eye at a location on the side of the optical display facing the eye. (Item 6) The deformation detection system is An eye-tracking camera configured to capture light reflected from the eye, A gaze angle calculation module, wherein the gaze angle calculation module is configured to calculate the measured gaze direction of the eye based on the light captured by the eye tracking camera. The system described in item 3, including the system described in item 3. (Item 7) The system according to item 6, wherein the measured gaze direction calculated by the gaze angle calculation module is the modified gaze direction resulting from a deformation of at least one of the eye tracking camera and the optical display. (Item 8) The difference between the expected gaze direction and the modified gaze direction lies in the first direction, the measured change in gaze direction due to deformation of the eye-tracking camera lies in the second direction, the first and second directions are less than 90 degrees apart from each other, and further, The system according to item 7, comprising a correction system connected to the deformation detection system for displaying the virtual object at a corrected location using the display assembly, wherein the eye viewing the virtual object at the corrected location has a corrected gaze direction that is moved from the modified gaze direction toward the expected gaze direction. (Item 9) The system according to item 7, wherein the change from the expected gaze direction to the modified gaze direction is in a first direction, the measured change in gaze direction due to deformation of the eye-tracking camera is in a second direction, and the first and second directions are separated from each other by more than 90 degrees. (Item 10) The system according to item 9, further comprising a correction system connected to the deformation detection system for displaying the virtual object without moving the virtual object from the modified location using the display assembly. (Item 11) The system according to item 9, further comprising a correction system connected to the deformation detection system for displaying the virtual object at a corrected location using the display assembly, wherein the eye viewing the virtual object at the corrected location has a measured gaze direction which is a corrected gaze direction, and the corrected gaze direction is moved from the modified gaze direction toward the expected gaze direction. (Item 12) A reference system for detecting the measured change in gaze direction caused by deformation of the eye-tracking camera, A correction calculation unit, wherein the correction calculation unit determines the measured change in gaze direction due to deformation of the display assembly by subtracting the measured change in gaze direction due to deformation of the eye-tracking camera from the change in gaze angle detected by the deformation detection system, Using the display assembly, a correction system connected to the deformation detection system for displaying the virtual object at a corrected location, wherein the eye viewing the virtual object at the corrected location has a corrected gaze direction that is moved in a direction opposite to the change in gaze angle caused by deformation of the display assembly. The system described in item 11, further comprising the features described therein. (Item 13) The deformation detection system is A statistical system configured to receive and analyze multiple measured gaze direction measurements, A gaze angle calculation unit that calculates multiple gaze directions, wherein each gaze direction is related to an individual measurement, and the gaze angle calculation unit A correction calculation unit that determines the modified gaze direction based on multiple actual gaze direction measurements, The system described in item 1, including the system described in item 1. (Item 14) The deformation detection system includes an attention-generating unit configured to alter the display of the virtual object and attract the user's attention to the virtual object before detecting the deformation, as described in item 1. (Item 15) The system according to item 14, wherein the attention-generating unit is configured to attract the user's attention by changing the color of the virtual object. (Item 16) The system according to item 14, wherein the attention-generating unit is configured to attract the user's attention to the virtual object by reducing the size of the virtual object. (Item 17) A method for displaying rendered content, Displaying a virtual object at a selected location on the display assembly using a display assembly, wherein the eye viewing the virtual object has an expected gaze direction, The detection of deformation of the display assembly, wherein the deformation makes the virtual object visible at the altered location, and the eye has an altered gaze direction. Methods that include... (Item 18) The method according to item 17, further comprising displaying the virtual object at the corrected location using a display assembly, wherein the eye viewing the virtual object at the corrected location is moved from the modified gaze direction towards the expected gaze direction and has a corrected gaze direction.

Brief Description of Drawings

[0007] The present invention will be further described with reference to examples.

[0008] [Figure 1] FIG. 1 is a block diagram showing a viewing device according to an embodiment of the present invention for displaying rendered content to a user's eye.

[0009] [Figure 2A] FIG. 2A is a perspective view of an eye and an optical display of a viewing device, where the optical display is not deformed.

[0010] [Figure 2B] FIG. 2B is a view similar to FIG. 2A, where the optical display is deformed.

[0011] [Figure 3A] FIG. 3A is a perspective view illustrating how the location of a rendered object is established.

[0012] [Figure 3B] FIGS. 3B and 3C are front views illustrating how a rendered object is moved. [Figure 3C] FIGS. 3B and 3C are front views illustrating how a rendered object is moved.

[0013] [Figure 3D]Figure 3D is a top plan view illustrating how the location of a rendered object can be moved using different insertion angles provided by the laser projector.

[0014] [Figure 4] Figure 4 is a perspective view illustrating the potential gaze vector error.

[0015] [Figure 5] Figures 5A-5D illustrate a statistical approach to determining the likely locations of virtual objects and the incremental movement of those objects to compensate for their displacements.

[0016] [Figure 6] Figures 6A-6C illustrate the movement of virtual objects caused by display deformation and the correction of that movement.

[0017] [Figure 7] Figures 7A-7E illustrate the movement of virtual objects due to display deformation with corresponding changes in the gaze angle (Figure 7A-7B), the effect of eye-tracking camera deformation on the calculated gaze angle (Figures 7C and 7D), and the correction of the gaze angle (Figure 7E).

[0018] [Figure 8] Figures 8A–8D illustrate the corresponding changes in the movement and gaze vector of the virtual object (Figures 8A and 8B) and the effect of the deformation of the eye-tracking camera on the calculated gaze angle (Figures 8C and 8D).

[0019] [Figure 9] Figure 9 illustrates one solution for adjusting the resulting changes in gaze angle, as shown in Figure 8D.

[0020] [Figure 10] Figures 10A-10C illustrate a different solution from Figure 9 for adjusting the gaze angle resulting from Figure 8D.

[0021] [Figure 11] Figure 11 is a diagram similar to Figure 1, further illustrating a reference system for the visual device for the purpose of integrating the processes shown in Figures 10A-10C.

[0022] [Figure 12] Figure 12 is a flowchart illustrating the functions of the viewing device.

[0023] [Figure 13] Figure 13 is a block diagram of a machine in the form of a computer for which applications can be found in the system of the present invention, according to one embodiment of the present invention. [Modes for carrying out the invention]

[0024] Figure 1 of the accompanying drawings illustrates a viewing device 20 according to one embodiment of the present invention, used to display rendered content to the user's eyes 22. The viewing device 20 includes a display assembly 24, a deformation detection system 26, a user input device 28, and a correction system 30.

[0025] The display assembly 24 includes a video data receiver 32, a projector 34, and an optical display 36, which are connected to each other directly or indirectly. The display assembly 24 includes a structure (not shown) that can be fixed to the user's head with the optical display 36 in front of the user's eyes 22. The optical display 36 is a transparent component that allows the eyes 22 to see real-world objects behind the optical display 36 and can simultaneously project virtual images to the user so that light associated with real and virtual objects is visible to the user.

[0026] The video data receiver 32 is connected to, or can be connected to, a video data channel that carries the color and intensity values ​​of pixels. The projector 34 has a laser and a scanning device that are capable of creating a two-dimensional pattern based on the video data. The optical display 36 is positioned so that the laser of the projector 34 can combine the laser light into the optical display 36. The laser light then propagates through the optical display 36 and exits the optical display 36 towards the eye 22 through the pupil of the optical display 36. The eye 22 thus receives light from real-world objects behind the optical display 36 and light generated by the projector 34. An augmented reality view is then created on the retina 38 of the eye 22, and the augmented reality view includes light from a real-world scene that is visible to the user through the optical display 36, combined with light created by the projector 34 representing virtual content.

[0027] The deformation detection system 26 includes an attention generation unit 40, an input trigger 42, an eye tracking camera 44, a gaze angle calculation module 46, a statistical system 48, and a correction calculation unit 50.

[0028] The attention generation unit 40 is connected to the video data receiver 32. The attention generation unit 40 is configured to provide override functionality to the video data receiver 32. The attention generation unit 40 may, for example, insert a virtual object into the data stream received by the video data receiver 32, change the color of the virtual object, and / or reduce the size of the virtual object, for the purpose of directing the eye 22 to gaze towards the virtual object and focusing on the virtual object. The virtual content that the attention generation unit 40 can use as a basis for calibrating the augmented reality system, as described, may generally be provided by a rendering system or module.

[0029] The input trigger 42 is connected to the user input device 28 and detects user input through the user input device 28. The user input device 28 may be one or more of the following: a joystick, a wand, a camera that tracks a part of the user's body, a button, a touchpad, a sensor-equipped glove, a mouse, a keyboard, etc. The user input device 28 provides input to the input trigger 42.

[0030] The eye-tracking camera 44 is mounted on the display assembly 24 at a position for capturing an image of the eye 22. In some embodiments, one or more cameras per eye are used to image the user's eyes. Alternatively, a single camera with a sufficiently wide angle to capture an image including both of the user's eyes may be used.

[0031] The gaze angle calculation module 46 is connected to the eye tracking camera 44 and the input trigger 42. The gaze angle calculation module 46 calculates the gaze angle of the eye 22 based on the image captured by the eye tracking camera 44. The gaze angle calculation module 46 is connected to the input trigger 42 and is activated by the input trigger 42 so that the gaze angle is calculated by the gaze angle calculation module 46 when user input is detected. Although the system is described using the calculated gaze angle, any other eye gaze orientation characteristics such as gaze vector, gaze coordinates, visual axis orientation, or corneal center location may also be used. In addition, gaze data from the left and right eyes may be used in combination to gather information about where the user's eyes are in focus.

[0032] The statistical system 48 is connected to the gaze angle calculation module 46 and receives a number of gaze angle calculation measurements. The statistical system 48 records the gaze angles received from the gaze angle calculation module 46 whenever the input trigger 42 activates the gaze angle calculation module 46. The statistical system 48 thus collects several gaze angles over a certain time period. The statistical system 48 then calculates a statistically relevant gaze angle, for example, the median gaze angle from the gaze angles recorded by the statistical system 48. A representative gaze angle may be selected or calculated and used in comparison with the expected gaze angle associated with displaying virtual content. If the representative gaze angle is substantially different from the expected gaze angle, it is concluded that a deformation has occurred within the system.

[0033] The correction calculation unit 50 is connected to the statistics system 48. The correction calculation unit 50 calculates the desired correction at the location of the rendered virtual object created or modified by the attention generation unit 40.

[0034] The correction system 30 is connected to the correction calculation unit 50. The correction system 30 receives correction data from the correction calculation unit 50. The video data receiver 32 is connected to the correction system 30. The correction system 30 corrects the locations of virtual objects created or modified by the attention generation unit 40. The correction system 30 also corrects the locations of all other objects in the video stream by the same amount and direction as the locations of virtual objects generated and modified by the attention generation unit 40 are corrected.

[0035] During use, the user attaches the viewing device 20 to their head with the optical display 36 facing their eyes 22. The user can then view real-world objects through the transmissive optical display 36 and simultaneously view rendered virtual content.

[0036] The video data receiver 32 receives video data from a background application. The background application may be, for example, a video application for displaying videos, games, web browsers, menus, launchers, 2D content, 3D content, or any other type of virtual content. The video data includes data representing frames of images received at the video data rate. The video data includes pixels with intensity and color values. The video data receiver 32 provides the video data to the projector 34. The projector 34 creates a 2D pattern frame by frame. The pattern includes bundles of laser light, each bundle representing a separate pixel whose intensity and color may be modulated. The projector 34 combines the pattern into the optical display 36, either directly or indirectly through a lens, mirror, grid, or equivalent. The pattern is transmitted through the optical display 36 and emitted from the optical display 36 toward the eye 22. The light beam 54 represents the light transmitted from the optical display 36 toward the eye 22. However, it should be understood that many light beams representing virtual objects are projected from the optical display 36 such that the image received by the retina 38 resembles the pattern created by the projector 34. In some embodiments, the virtual object may be perceived by the user as three-dimensional due to one or more wavefront shaping techniques applied to the light representing the virtual object. A dynamic image can be seen by the user in embodiments in which the pattern changes continuously with each frame of data provided to the projector 34 by the video data receiver 32.

[0037] The video data received by the video data receiver 32 includes data representing one or more objects to be displayed on the retina 38 of the eye 22. The virtual objects represented in the data received by the video data receiver 32 may actually be displayed on the optical display 36. However, it is possible that such virtual objects are not visible or easily identifiable on the surface of the optical display 36 due to several factors, including the fact that the optical display 36 is a see-through display and / or that the optical display 36 primarily acts as a waveguide for directing light between the projector 34 and the eye 22. The video data provided to the projector 34 by the video data receiver 32 still includes data representing objects, even if the virtual objects cannot be visible on the surface of the optical display 36. For the purposes of this discussion, it will be assumed that the virtual object or a number of virtual objects are visible on the surface of the optical display 36. However, for the sake of simple illustration, it should be understood that multiple objects are shown on the surface of the optical display 36. The present invention primarily deals with calibration methodologies that are identical regardless of whether an object is actually visible or not on the surface of the optical display 36.

[0038] During the normal operation of the viewing device, the attention generation unit 40 does not provide override functionality to the normal operation of the video data receiver 32. All video data is presented to the user at a certain video refresh rate without any interference from the deformation detection system 26. The deformation detection system 26 overrides the normal functionality of the video data receiver 32 only a few times per day (e.g., 50 to 100 times of continuous use per day), making measurements while the video data receiver 32 continues uninterrupted for the rest of the time. The user input device 28 and the eye-tracking camera 44 are connected to a background application. During the normal operation of the video data receiver 32, the user may use the user input device 28 to provide commands to the background application or otherwise interact with virtual content rendered on the optical display 36 while one or more eye-tracking cameras 44 continue to monitor the eye 22. The user may, for example, use the user input device 28 to interact with virtual objects displayed to the user via the optical display 36 while the background application relies on the eye-tracking camera 44 to determine when the user is looking at a virtual object.

[0039] After factory calibration of the viewing device 20, deformation of the display assembly 24 is minimal or nonexistent. Objects displayed using the optical display 36 are in their expected location relative to the gaze angle of the eye 22. Over time with use of the viewing device 20, the components of the viewing device 20, including or connected to the display assembly 24, begin to deform. Deformation may manifest as deformation of the optical display 36, deformation of the hinges, and deformation of the materials used in the structure that mounts the viewing device 20 on the user's head. Deformation is typically due to small or large stresses applied to the components of the display assembly 24 and the combination of materials of the components of the display assembly 24. Stresses may be generated, for example, when wiring connected to the optical display 36 pulls on the optical display 36, when the user fits the viewing device 20 to or removes it from their head, and when the user operates hinges, springs, or other dynamic components for the purpose of unpacking or storing the viewing device 20. The material properties of the components of the display assembly 24 are such that they can experience fatigue when subjected to repeated stress, and it is known that plastic materials undergo "creep" when subjected to stress over time. Some materials of the viewing device 20 can also be subjected to thermal loads, and such temperature changes can contribute to the deformation of one or more components. As a result of deformation, the actual location where virtual objects appear to the user on the deformed viewing device 20 is not the intended rendering location of those virtual objects. Consequently, the user's actual gaze differs from the gaze that would be expected if the user were viewing virtual content rendered at its intended rendering location. In addition, the deformation is continuous, and therefore, it is expected that the rendering location of virtual objects as perceived by the user will continue to shift over time relative to the intended rendering location. The display assembly 24 initially displays virtual objects at a selected location, and the eye 22 has an expected gaze direction.The deformation of the display assembly 24 makes the virtual object visible at the modified location, and the eye 22 has a modified gaze direction.

[0040] One or more components of the deformation detection system 26 may be functionally and structurally connected to the display assembly 24 to detect deformation of the display assembly. The correction system 30 is connected to the deformation detection system 26. The correction system 30 uses the display assembly 24 to display a virtual object at the corrected location. When the virtual object is displayed at the corrected location, the eye 22 viewing the virtual object at the corrected location has a corrected gaze direction, which is moved closer to the expected gaze direction than the altered gaze direction. The deformation detection system 26 provides override or extension capabilities to the normal operation of the viewing device 20 described above. The deformation detection system 26 is activated intermittently, for example, 10 to 20 times per hour during continuous operation. In addition, the deformation detection system 26 is activated for only a few seconds, for example, 3 to 7 seconds, which is about as long as is required to make measurements and adjustments. The viewing device 20 operates normally for the rest of the time.

[0041] The deformation detection system 26 is initiated by a user input device 28 connected to an input trigger 42, which activates an attention generation unit 40 while an eye-tracking camera 44 continues to monitor the eye 22. The primary requirement is for the user to interact with a rendered object received by a video data receiver 32 from a background application, which is small enough to minimize gaze vector errors. The attention generation unit 40 may also modify the color of the virtual object or reduce its size to help attract the user's attention and draw the eye 22 to the small point where the virtual object is located. The video data receiver 32 provides data representing the virtual object to a projector 34. The projector 34 then generates light and projects the light representing the virtual object toward an optical display 36 for user viewing.

[0042] The virtual objects installed or modified by the attention generation unit 40 are of a type that prompts the user to interact with the rendered virtual object using the user input device 28. Such virtual objects may be, for example, a play button, a target, an application launch icon, etc. When the user uses the user input device 28 to interact with the rendered virtual object, it is assumed that the user's eye 22 is looking at the rendered virtual object on the optical display 36. The eye-tracking camera 44 captures an image of the eye 22 and provides the image data to the gaze angle calculation module 46. The user input device 28 activates an input trigger 42, which instructs the gaze angle calculation module 46 to calculate the gaze angle of the eye 22 using the data received from the eye-tracking camera 44. The gaze angle calculated by the gaze angle calculation module 46 represents the actual location of the rendered virtual object on the optical display 36 as perceived by the user.

[0043] The gaze angle calculation module 46 provides the gaze angle to the statistical system 48. The statistical system 48 stores the gaze angle. When the deformation detection system 26 is activated a second time, the process is repeated, and the statistical system 48 stores a second gaze angle. The process is repeated until the statistical system 48 has stored enough gaze angles to enable the statistical system 48 to calculate a statistically relevant modified gaze angle. The statistical system 48 may, for example, calculate a representative, mean, or median gaze angle from the collected gaze angles. While the statistical system can calculate a statistically relevant gaze angle from all measurements, it is preferable that the statistical system uses only gaze angles that are outside a predetermined error range (e.g., 90-arc-minute) as data points for calculating a statistically relevant gaze angle. Alternatively, in some embodiments, instead of accumulating multiple measurements to calculate a statistically determined gaze angle before performing incremental correction, each measured gaze angle determined to be outside the tolerance of the expected gaze angle may result in incremental correction to the rendering location of the virtual content.

[0044] The statistical system 48 provides the modified gaze angle to the correction calculation unit 50. The correction calculation unit 50 determines the amount of correction required at the gaze angle to return it from the modified gaze angle to the expected gaze angle. The correction calculation unit 50 calculates both the direction and amount of the required correction, and then calculates the actual correction, which is a small fraction of the required correction. The correction calculation unit 50 then provides the actual correction to the correction system 30. The correction system 30 provides the correction to the video data receiver 32. The video data receiver 32 then moves the virtual object and all other objects generated by the attention generation unit 40 according to the direction and magnitude of the actual correction received from the correction system 30.

[0045] The statistical system 48 may request a number of measurements, e.g., 50 to 100 measurements, before providing the modified gaze angle to the correction calculation unit 50. In addition, any correction performed is only a small fraction of the actual change in gaze angle due to deformation of the display assembly 24. Cumulative correction is therefore a slow process. In one embodiment, only a single correction may be performed during 8 hours of continuous operation per day, and it may take several days or weeks for the gaze angle to be corrected to within the acceptable range of the expected gaze angle. Alternatively, several small corrections may be performed during use of the device. The number of corrections may depend on how many times the user interacts with virtual content that is considered reliable for gaze angle calculation and rendering location calibration. Such a slow process allows for recalculation in case of errors and allows for the continued acceleration and deceleration of the deformation of the display assembly 24 with little risk of over-correcting the required corrections that need to be performed, given the continued deformation of the display assembly 24.

[0046] In Figure 2A, the undeformed shape 60 represents the optical display 36 before deformation. A rendered object 62 is placed within the optical display 36 to attract the user's attention. When the user views the rendered object 62, an actual gaze vector 64 can be defined. The actual gaze vector 64 is the direction or axis along which the eye 22 is directed for the purpose of viewing the virtual object. The actual gaze vector extends from the center point 22 of the eye 22 through the center of the pupil of the eye. One approach to calculating the actual gaze vector 64 would be to first calculate the actual center point 22 of the eye 22. Alternatively, it may be possible to calculate the actual gaze vector 64 without calculating the actual center point 22 of the eye 22, instead using other anatomical information of the eye for that purpose. The expected gaze vector 64 extends through the optical display 36, and the user perceives the rendered object 62 as an augmented object 68. The augmented object 68 is located within the plane represented by the undeformed shape 70. Because the plane of the undeformed shape 70 is farther away than the plane of the optical display 36, the user perceives the augmented object 68 as larger than the rendered object 62, and the field defined by the undeformed shape 70 as larger than the field defined by the undeformed shape 60. The user also perceives the table 72. The perception the user has is of the table 72 augmented with the rendered virtual content represented in Figure 2A by the augmented object 68.

[0047] Multiple infrared light-emitting diodes (LEDs) 74 may be included in the eye-tracking system. Each LED 74 transmits infrared light that forms individual infrared spots ("glints") 76 on the surface of the eye 22. Reference numeral 78 represents the infrared light reflected from the spots 76 toward the eye-tracking camera 44. The eye-tracking camera 44 captures all locations of the spots created by the LEDs 74 on the surface of the eye 22. The locations of the spots 76 are used by the gaze angle calculation module 46 to calculate the gaze angle or gaze vector of the eye 22. In some embodiments, the eye-tracking camera may also capture the location of the pupil. Pupil location data can be used in combination with infrared glints to determine the eye position. The gaze angle or gaze vector may be calculated or otherwise determined based on the eye position information.

[0048] The expected gaze vector 64 is shown in Figure 2A to pass through the centers of the rendered object 62 and the extended object 68. Reference numeral 82 represents the light reflected from the eye 22, which is captured by the eye-tracking camera 44. In some embodiments, the eye-tracking camera 44 thus captures the orientation of the eye and the location of the pupil 80. The gaze angle calculation module 46 calculates the actual gaze vector (which matches the expected gaze vector 64 in Figure 2A) using at least the location of the interactable rendered virtual content. In some embodiments, the location of the eye 22 relative to the optical display 36 may also be used.

[0049] Taking measurements for the purpose of determining the pre-deformation gaze angle is not always necessary. For example, when the viewing device 20 is new, the display assembly 24 is undeformed, and the gaze angle of the eye 22 can be assumed to be such that it is represented by the expected gaze vector 64 when the rendered object 62 is positioned as shown. The rendered object 62 can therefore be positioned as shown, and the expected initial gaze vector 64 can be determined without any additional measurements. The expected and actual gaze angles will vary based on the location of the rendered content. The “initial” gaze angle or “pre-deformation” gaze angle can be calculated, but the expected gaze vector can be assumed from a background application or from a previous calculation. The difference between the assumed expected gaze angle and the newly calculated actual gaze angle can then be calculated.

[0050] In Figure 2B, shape 86 represents a deformation of the optical display 36. The deformation of the optical display 36 is represented by the difference in shape 86 when compared to the undeformed shape 60. The rendered object 62 is still rendered at the same (x,y) location on the display, but the deformation of the display to the user causes the user to perceive the content in a different location than intended. Due to the deformation, the rendered object 62 is no longer in the location shown in Figure 2A, but has moved by a distance and direction as represented by vector 88. The rendered object 62 has therefore moved in a direction that is a result of the deformation of the optical display 36 in the area of ​​the rendered object 62. A modified gaze vector 90 is defined between the eye 22 and the rendered object 62. The user views the rendered object 62 as an extended object 68 in a plane as represented by shape 92. Shape 92 is deformed relative to the undeformed shape 70 in a manner similar to the deformation between shape 86 and the undeformed shape 60.

[0051] When the user views the augmented object 68, the actual gaze vector 90 travels from the eye 22 to the location of the augmented object 68 within the deformed shape 92. In this embodiment, the actual gaze vector 90 differs from the expected gaze vector 64. The eye-tracking camera 44 continues to capture eye location information, which the gaze angle calculation module 46 can obtain based on pupil location and / or glint reflection pattern in the image, so that it can calculate the actual gaze vector 90, compare it to the expected gaze vector 64, and infer whether display assembly deformation is occurring.

[0052] Figure 3A illustrates how the location of the rendered object 62 is corrected. The projector 34 projects image light 94, associated with a virtual image or object, toward the optical display 36 at a predetermined angle. The image light 94 may encounter one or more diffractive optical elements, such as an internal coupling grating 95, a cross pupil expander 97, and an exit pupil expander 99, which are positioned within or on the waveguide 101 as part of the optical display 36. As the image light 94 propagates through the waveguide 101, the diffractive optical elements redirect the light in different ways, ultimately causing the image light 94 to exit the waveguide toward the user's eye 22 through the exit pupil expander 99. The user's eye 22 can focus the image light 94 to a location on the retina in order for the user to perceive the rendered object 62.

[0053] Referring to Figures 3B and 3C, two embodiments of an image projected as image light 94 are shown. In Figure 3B, a virtual content object 115 is shown at the center of image 94a. When image 94a is projected toward an undeformed optical display 36 and proceeds through its components, the user will see the virtual content object 115 at the center of the field of view. However, if image 94a is projected toward a deformed display, the virtual content object 115 may be perceived by the user as being shifted to the right, for example, so that it is no longer at the center of the field of view. To compensate for the shift caused by deformation and detected by comparing the expected gaze vector with the actual gaze vector, image 94b may be projected instead of image 94a. In image 94b, when light is emitted from a deformed display with a rightward shift, the rightward shift of the display cancels out the leftward shift of the content, causing the virtual content object 115 to appear to the user as being at the center of the field of view. Pixel shift may be performed by illuminating different pixels of the spatial light modulator (SLM) in the projector 34 using LEDs or other similar light sources. In such adjustment methods, it may be useful to convert the actual and expected gaze angles or gaze vectors to the display coordinate system. For example, the system may expect the user's gaze to be focused on a pixel at coordinates (x1, y1), but finds that the user's gaze is actually focused on a pixel at coordinates (x2, y2) in the display coordinate system. In such a method, the pixel shift can be adjusted by an amount equal to and opposite to the difference between the expected viewing coordinates and the actual viewing coordinates as determined by the user's gaze vector. Alternative means for adjusting the rendering location of virtual content may also be used.

[0054] In some embodiments, as shown in Figure 3D, the correction may be performed by adjusting the projector 34 itself. With respect to full correction, the rendering location of the rendered object 62 needs to move from location 100 to the corrected location 104 in the direction represented by vector 102. With respect to full correction, the projector 34 may insert light 106 into the diffractive optical element of the optical display 36 at an adjusted angle so that the rendered object 62 is visible closer to the intended location in the field of view. The user will perceive the rendered object 62 as having moved from location 100 towards location 104 along vector 102. However, full correction is not performed. Instead, the rendered object 62 is moved only a small portion of the distance between location 100 and location 104 along the direction represented by vector 102. For the purpose of performing partial correction, the projector 34 inserts light at an angle that is slightly steeper than the image light 94 but not as steep as the light 106.

[0055] Figure 4 illustrates potential gaze vector errors 120 and 122 in two user interaction events. Anatomically, the eye moves continuously when it is focused on a static image such as an extended object 68. Natural eye movement typically results in an error or deviation of about 60 arcminutes from the central gaze vector, corresponding to a direct path from a selected anatomical marker of the eye, e.g., the center point 66 of the eye 22 to the extended object 68. In some embodiments, the gaze vector may be defined as the direct path from the center of the cornea of ​​the eye to the extended object 68, or as an extension of the visual axis of the eye. When a user gazes at the extended object 68, gaze vectors within an expected gaze vector range with a radius of 60 arcminutes from the gaze vector 90 may be considered directed toward the location of the extended object 68. The gaze angle calculation module 46 in Figure 1 may also have some error regarding a given eye size, shape, etc., and such additional error may add, for example, about 30 arcminutes to the expected gaze vector range radius. The system is considered well calibrated when the user is looking at the expanded object 68 and it is determined that the calculated gaze vector is within a 90-arc radius of the gaze vector 90.

[0056] One challenge is that the relatively large 90-arc-minute radius of error in the gaze vector makes it difficult to determine the exact location of the actual perceived position of the augmented object 68. To account for potential errors, the statistical system 48 in Figure 1 may collect multiple data points to discover trends. The trends in the determined gaze vector are accumulated to discover the most likely location of the actual perceived position of the augmented object 68 as displayed by the system with some amount of deformation. Full correction of the gaze direction is not performed because the amount of positional discrepancy, which is noise due to eye movement or algorithmic errors and the amount due to the actual deformation of the display assembly 24 in Figure 1, is still uncertain. In examples, the correction increment may be 0.01 to 0.5 arcminutes, e.g., 0.1 arcminutes. Alternatively, the correction increment amount may be based on the amount of deformation detected, with larger deformations requiring larger increments. In examples, the correction increment may be two orders of magnitude smaller than the amount of deformation detected.

[0057] Figures 5A–5D illustrate one of many possible scenarios. In Figure 5A, several gaze vector measurements are taken pointing to locations 124A–124C. The empty circles at locations 124A–124C represent the calculated measured gaze angles. The dark circle at location 126 indicates that this is where the system expected the virtual object to be. The measured gaze vectors at locations 124A–124C are used by the system to calculate a statistically relevant location 130 where the virtual object is most likely to be currently located. The measured gaze vectors at locations 124A–124C indicate that the virtual object may have moved from the initial expected location 126 to a statistically determined modified location 130 in a direction represented by vector 128. In Figure 5B, the virtual object rendering position is moved in a direction represented by vector 132, which is opposite to the direction represented by vector 128 and smaller in magnitude. It is assumed that the virtual object is located at location 130 and has been moved to a new location 134, along the direction of vector 132, towards the expected rendering location 126.

[0058] In Figure 5C, additional data points 124D-124G are collected, and these are statistically determined to be located at the altered location 136. Location 136 is on the side of location 126 opposite location 130. The change in object location may be a result of continued deformation of the display system. Also, when determining that the virtual object was at location 130 and / or that the virtual object moved in the opposite direction, it is possible that the error is due to the noisy data in Figure 5A. When adjusting the rendering location by vector 132 as shown in Figure 5B, if the virtual object is perceived to actually be at location 136 as shown in Figure 5C, it can be seen that through the inaccurate recalibration in Figure 5B, it is possible that the virtual object may have moved to a new location 138. The location of vector 132 in Figure 5B thus represents how the system "thought" that this was moving the virtual object at the time of Figure 5B. However, it can be seen here that the location of vector 132 in Figure 5C is different, and since more data is available here for the purpose of analyzing the location of the virtual object, it is more likely that the virtual object was moved at the time of Figure 5B. Vector 132 has the same magnitude and direction in Figures 5B and 5C. The only difference in vector 132 between Figures 5B and 5C is the different location of vector 132. The location of vector 132 in Figure 5B represents how the system thought this was moving the virtual object, while the location of vector 132 in Figure 5C represents what is more likely to have happened when the virtual object was moved in Figure 5C. In Figure 5C, it can be seen that the movement of the virtual object from location 136 to location 138 in the direction represented by vector 132, which can be traced back to Figure 5B, was an error because the virtual object was moved further away from the expected location 126 instead of closer by this movement. In such embodiments, it is advantageous to perform incremental adjustment rather than complete adjustment.

[0059] In Figure 5D, additional data points 124H-124L are collected, indicating that the virtual object is likely at the new location 140. Vector 132 is at the same location in Figure 5D as in Figure 5C, representing the error that occurred at the time of Figure 5B. Location 140 passes through location 138, and the error caused by moving the virtual object to location 138 in the direction represented by vector 132 has therefore been resolved.

[0060] Figures 5A-5D do not illustrate all possible scenarios that could unfold, but simply serve to illustrate how moving the virtual object in small increments, in contrast to a single large movement that attempts to compensate for all movement of the virtual object due to deformation of the display assembly 24, prevents inaccurate adjustments that may be made based on noisy data from becoming noticeable to the user.

[0061] Figure 6A illustrates a view as seen by the user, including a real-world table 72 and a rendered object in the form of a coffee mug, which could be, for example, an extended object 68 in the plane of shapes 70 and 92 in Figure 2B. The coffee mug is being moved within the user's view as represented by vector 150. The designation “display” in vector 150 indicates that the movement of the undeformed shape, i.e., the virtual object as shown by vector 150, is due to the deformation of the display assembly 24 in Figure 1.

[0062] Figure 6B illustrates the movement of the gaze angle as calculated by the gaze angle calculation module 46 in Figure 1, based on the view from the eye-tracking camera 44 in Figure 1. The deformation of the display assembly 24 in Figure 1 results in a movement of the gaze angle as measured by the eye-tracking camera 44 in the direction indicated by vector 152. Vectors 150 and 152 in Figures 6A and 6B are equal to each other. The movement of the gaze angle calculated in Figure 6B is therefore identical to the movement of the virtual object in the user's field of view as shown in Figure 6A, according to the tolerances of the eye and tracking algorithm as described with reference to Figure 4.

[0063] In Figure 6C, the virtual object is moved incrementally in the direction indicated by vector 154. Vector 154 is in the opposite direction to vector 152, but each vector is only a portion of the length of vector 152. The sum of vectors 154 is equal to vector 152, except that they are in the opposite direction. If the virtual object is moved by the total distance of all vectors 154, the virtual object will be returned over time to its position before the deformation of the display assembly 24 as shown in Figure 6A, taking into account the previous movement of the virtual object due to the display deformation.

[0064] Figures 6A-6C illustrate a scenario in which there is no deformation of the eye-tracking camera 44 in Figure 1. Since there is no deformation of the eye-tracking camera 44, the measurements performed by the eye-tracking camera 44 result in gaze angle measurements that match the actual gaze angle of the user's eyes 22 relative to the display, according to the tolerances discussed above.

[0065] Figures 7A–7E collectively illustrate the effects that deformation of the eye-tracking camera 44 in Figure 1 can have in combination with deformation of the display. Figure 7A illustrates the movement of virtual objects in the user's view due to deformation of the display assembly 24 in Figure 1, when camera deformation is not considered. Figure 7A is therefore identical to Figure 6A. Note that any deformation of the eye-tracking camera 44 does not affect the positioning of virtual objects in the user's field of view as illustrated in Figure 7A, but it does affect the gaze vector calculated with respect to the display. Therefore, camera deformation also exists, and even when the effects of camera deformation are considered, Figure 7A would still represent the movement of virtual objects in the user's field of view.

[0066] Figure 7B illustrates the movement of the gaze angle, as calculated by the gaze angle calculation module 46 in Figure 1 based on image data received from the eye-tracking camera 44, when the effects of camera deformation are not considered, as in Figure 7A. Figure 7B is therefore identical to Figure 6B, as it does not assume any deformation of the eye-tracking camera 44.

[0067] Figure 7C illustrates the effect of the calculated gaze angle when considering the effect of deformation of the eye-tracking camera 44, but without the effect of display deformation. Referring to Figure 2A, deformation of the eye-tracking camera 44 causes an error in the position measurement of the eye 22 within the view of the eye-tracking camera 44. Such an error in the eye-tracking camera 44 causes a change in the image data that the eye-tracking camera 44 provides to the gaze angle calculation module 46 in Figure 1. The gaze angle calculated by the gaze angle calculation module 46 is therefore affected by the deformation of the eye-tracking camera 44. Figure 7C illustrates the shift in gaze angle calculated due to the deformation of the eye-tracking camera 44 and represented by vector 156. The error in gaze angle accuracy with respect to the display caused by camera deformation is usually relatively small. The shift in gaze angle due to camera deformation is typically about 1 / 20th of the shift in gaze angle due to display deformation.

[0068] Figure 7D illustrates the combined vector 158 of vectors 152 and 156. In this embodiment, vector 156, which represents the effect of camera deformation, is at an angle of less than 90° to vector 152, which represents display deformation. The combined vector 158 is therefore longer than vector 152, which represents the effect of display deformation.

[0069] In Figure 7E, the virtual object is moved within the user's field of view, as represented by vector 160. Each vector 160 is oriented opposite to the composite 58 in Figure 7D. The virtual object is moved incrementally each time the user interacts with a qualified virtual object. Over a period of several days or weeks, the correction vector 160 sums the composite 158 within the tolerance of the anatomical eye with any tolerance required by the tracking algorithm. As previously mentioned, the effect of camera deformation is relatively small. The virtual object is therefore moved from a location closer to its location shown in Figure 7A than to its location shown in Figure 7E. In the case of a virtual coffee mug intended to appear to the user as being located on table 72, the coffee mug will therefore return to being on the table, or very close to it.

[0070] Figures 8A and 8B are similar to Figures 7A and 7B. In Figure 8C, the effect of camera deformation results in a shift in the gaze angle, as represented by vector 164. The angle between vector 164 and vector 152 is greater than 90°.

[0071] Figure 8D illustrates the composite vector 166. The composite vector 166 represents the calculated change in the gaze angle due to display deformation and camera deformation. The composite vector 166 is smaller than vector 152, which represents the effect of display deformation. The effects of display deformation and camera deformation can be considered to be in "opposing" directions in Figure 8D and in the "same" direction in Figure 7D.

[0072] Figure 9 illustrates one possible solution when the effects of display deformation and camera deformation are in the opposite direction to the calculated gaze angle. The correction system 30 in Figure 1 does not correct the positioning of virtual objects. The user does not need to worry about whether, for example, the "play" button is located on the table or floating at a distance above the table. In addition, the play button should function appropriately as an interface element for background applications.

[0073] Figures 10A–10C illustrate a solution as an alternative to the solution in Figure 9. In Figure 10A, the gaze angle change due to camera deformation is calculated so that the viewing device is still fresh when it is in an "out-of-box" state, also referred to as the "out-of-box" state. The calculated change in eye position relative to the eye-tracking camera due to camera deformation is determined periodically using data analysis of the eye-tracking camera 44 and the generated eye-tracking images. The methodology for calculating the eye position or eye center at any given point in time is similar to the methodology described with reference to Figure 2A. Images of the eye 22 continue to serve as the basis for calculating the eye center position of each eye relative to one or more eye-tracking cameras. Changes in eye center position within the collected image frames can be attributed to changes in the location of the eye-tracking camera relative to the eye. While some error exists, associated with the consistency of device fitting and how the user wears the device, the use of multiple image frames in the data analysis improves the accuracy of determining eye-tracking camera deformation. For example, the eye center calculated from eye-tracking images taken during the setup phase of the device is determined to be at a certain coordinate location (x,y,z). Over time, eye-tracking camera deformation can occur, causing the camera to tilt slightly downwards. The position of the eye in the image captured using the deformed eye-tracking camera will change so that the eye center is shown at a higher y-axis location in the eye-tracking image, for example, at coordinate location (x,y+1,z). The change between the two coordinate locations is coupled to the change in the eye-tracking camera, and the difference can be used to correct the rendering location of virtual content on the display. Eye-tracking camera deformation is represented as vector 170 in Figure 10A and can occur in 1, 2, or 3 dimensions.

[0074] The eye-tracking camera 44 operates continuously, for example, at a rate of 30 frames per second. When determining the deformation of the eye-tracking camera 44, it is not necessary to wait for a specific virtual content rendering and user interaction for data collection to take place. The stream of image data may be available for comparison with a baseline at any given point in time. Using a set of data points from the eye-tracking camera 44 for comparison with baseline data provides a robust system. For example, using at least the last 10 images from the eye-tracking camera 44 can improve accuracy compared to using only one or two images.

[0075] Figure 10B illustrates that vector 166 is the sum of vectors 152 and 170. Vector 152 can be calculated by subtracting the camera deformation vector 170 from vector 166. Since vector 152 represents the effect of display deformation on the location of a virtual object, the virtual object can be moved in the direction opposite to vector 152.

[0076] In Figure 10C, the virtual object is moved incrementally as represented by vector 172. The sum of vectors 172 is equal to vector 152, except that they are in opposite directions.

[0077] As shown in Figure 11, the viewing device 20 may further include a reference system 180 for the purpose of performing calculations as shown in Figures 10A-10C. The reference system 180 may include many baseline calculations, images, and / or measurements such as interpupillary distance, ocular center location, device fit information, ocular shape information, and visual axis location. The reference system 180 includes an out-of-box reference gaze angle 182, which is calculated when the viewing device 20 is still new. The out-of-box reference gaze angle 182 is stored in memory. The reference system 180 further has an updated gaze angle 184, which is also stored in memory. The updated gaze angle 184 is calculated on a periodic basis and represents the most recently calculated gaze angle. The reference system 180 further includes a change in gaze angle 186 due to camera deformation. The change 186 is the difference between the updated gaze angle 184 and the out-of-box reference gaze angle 182. Change 186 is represented in Figure 10A by the sum of vectors 170. The correction calculation unit 50 functions to calculate vector 152 in Figure 10B. Other aspects of the viewing device 20 in Figure 11 are identical to those of the viewing device in Figure 1, and similar reference numbers indicate similar components. The out-of-box reference gaze angle is described as a baseline for comparison, but any other ocular characteristics, measurements, calculations, or images may be used instead of or in addition to the out-of-box reference gaze angle.

[0078] Figure 12 illustrates the method described herein as described above. In 200, a virtual object is displayed at a selected location, and the eye viewing the virtual object has an expected gaze direction. In 202, an expected gaze vector range is determined based on the selected location. In 204, a user interaction event is detected, and the user interacts with the virtual object. In 206, light reflected from the eye is captured using an eye-tracking camera. In 208, a modified gaze vector is calculated based on the light captured by the eye-tracking camera. In 210, a comparison is made between the determined modified gaze vector and the expected gaze vector range. Elements 200-210 can be grouped into element 212, i.e., to detect deformation of the display assembly, the deformation making the virtual object visible at the modified location, and the eye having a modified gaze direction. It may be possible to perform element 212 without the specific elements listed as elements 200-210. Furthermore, while the gaze vector is calculated, it may be possible to determine the gaze direction using methods other than those that require the calculation of the gaze vector.

[0079] In step 214, a determination is made as to whether the actual gaze vector is outside the range of the gaze vector. If the determination in step 214 is negative, the process returns to step 200. If the determination in step 214 is positive, the correction and orientation amounts for the virtual content rendering location are calculated. In step 220, the virtual content rendering location is adjusted according to the calculated correction and orientation. Elements 218 and 220 can be grouped into element 222, i.e., for the display of the virtual object in the corrected location, and the eye viewing the virtual object in the corrected location has a corrected gaze direction, which is moved closer to the expected gaze direction than the modified gaze direction.

[0080] Figure 13 shows a graphical representation of a machine in an exemplary form of a computer system 900, in which a set of instructions can be executed to cause the machine to perform one or more of the methodologies discussed herein. In alternative embodiments, the machine may operate as a standalone device or be connected to other machines (e.g., networked). Furthermore, although only a single machine is illustrated, the term “machine” shall also be interpreted to include any set of machines that individually or collectively execute a set (or set) of instructions to perform one or more of the methodologies discussed herein.

[0081] The exemplary computer system 900 includes a processor 902 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), primary memory 904 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.), and static memory 906 (e.g., flash memory, static random access memory (SRAM), etc.), which communicate with each other via a bus 908 and a laser driver chip 12 or other light source drivers.

[0082] The computer system 900 may further include a disk drive unit 916 and a network interface device 920.

[0083] The disk drive unit 916 includes a machine-readable medium 922 on which one or more sets of instructions 924 (e.g., software) that embody one or more of the methodologies or functions described herein are stored. The software may also reside, fully or at least partially, in the main memory 904 and / or processor 902 during its execution by the computer system 900, and the main memory 904 and processor 902 also constitute the machine-readable medium.

[0084] The software may also be transmitted or received via the network 928 through the network interface device 920.

[0085] Although the machine-readable medium 924 is shown in the exemplary embodiments as a single medium, the term “machine-readable medium” should be interpreted to include a single or multiple mediums (e.g., a centralized or distributed database and / or associated caches and servers) that store one or more sets of instructions. The term “machine-readable medium” should also be interpreted to include any medium capable of storing, encoding, or carrying a set of instructions for machine execution, causing a machine to implement one or more of the methodologies of the present invention. The term “machine-readable medium” should be interpreted accordingly to include, but are not limited to, solid-state memory, optical and magnetic media, and carrier signals.

[0086] The laser driver chip 12 includes a data store 161 and its own processor 162. The data store 161 is used to store instructions and data structures specific to the operation of the laser source. The processor 162 reads instructions from the data store and has access to data structures for executing routines that drive the laser source to generate laser light. The laser source forms part of a projector that receives data such as video data. The scanning device forms part of the projector, enabling the projector to display laser light over a two-dimensional area and, in some cases, in three-dimensional space, and any patterns, colors, saturation, and other light qualities created by the projector are based on values ​​in the video data.

[0087] While the laser source and laser driver chip 12 have been illustrated and discussed, other display systems may also be used. These other display systems may include, for example, displays utilizing light-emitting diode (LED) technology, organic light-emitting diode (OLED) technology, high-brightness light-emitting diode (SLED), or equivalents.

[0088] While some exemplary embodiments have been described and illustrated in the accompanying drawings, such embodiments are merely illustrative of the present invention and not limiting, and it should be understood that the present invention is not limited to the specific structures and arrangements shown and described, as modifications may be conceivable to those skilled in the art.

Claims

1. A viewing device for displaying rendered content, wherein the viewing device is A display assembly having a transparent optical display, wherein the display assembly is configured to display a virtual object at a selected location on the optical display, the eye viewing the virtual object has an expected gaze direction, and the virtual object is visible to the eye at a location on the side of the optical display facing the eye, A deformation detection system connected to the display assembly and Equipped with, The deformation detection system is An eye-tracking camera configured to capture light reflected from the aforementioned eye, A gaze angle calculation module is configured to calculate the measured gaze direction of the eye viewing the virtual object on the display assembly based on the light captured by the eye-tracking camera, A deformation calculation unit configured to calculate the deformation of the optical display in the display deformation direction based on the measured gaze direction, wherein the measured gaze direction is a modified gaze direction that moves relative to the expected gaze direction in the display deformation direction, the modified gaze direction is due to the deformation of at least one of the eye-tracking camera and the optical display, the difference between the expected gaze direction and the modified gaze direction is in a first direction, the change in the measured gaze direction due to the deformation of the eye-tracking camera is in a second direction, and the first and second directions are less than 90 degrees apart from each other, Using the display assembly, a correction system connected to the deformation detection system for displaying the virtual object at a corrected location, wherein the eye viewing the virtual object at the corrected location has a corrected gaze direction that is moved from the modified gaze direction toward the expected gaze direction, and A viewing device, including one.

2. The viewing device according to claim 1, wherein the difference between the expected gaze direction and the corrected gaze direction is smaller than the difference between the expected gaze direction and the modified gaze direction.

3. The viewing device according to claim 1, wherein the change from the expected gaze direction to the modified gaze direction is in a first direction, the measured change in gaze direction due to deformation of the eye-tracking camera is in a second direction, and the first and second directions are separated from each other by an angle greater than 90 degrees.

4. The aforementioned viewing device is A reference system configured to detect the measured change in gaze direction caused by deformation of the eye-tracking camera, A correction calculation unit is configured to determine the measured change in gaze direction due to deformation of the display assembly by subtracting the measured change in gaze direction due to deformation of the eye-tracking camera from the measured change in gaze direction calculated by the deformation detection system. The viewing device according to claim 1, further comprising:

5. The deformation detection system includes a statistical system configured to receive and analyze a plurality of measured gaze direction measurements. The gaze angle calculation module calculates multiple gaze directions, and each gaze direction is calculated with respect to individual measurements. The viewing device according to claim 1, further comprising a correction calculation unit configured to determine the modified gaze direction based on the plurality of measured gaze direction measurements.

6. The viewing device according to claim 1, wherein the deformation detection system includes a attention generation unit, the attention generation unit is configured to modify the display of the virtual object and attract the user's attention to the virtual object before detecting the deformation.

7. The attention-generating unit is configured to attract the user's attention by changing the color of the virtual object, as described in claim 6.

8. The viewing device according to claim 6, wherein the attention-generating unit is configured to attract the user's attention to the virtual object by reducing the size of the virtual object.

9. A method for displaying rendered content, wherein the method is Displaying a virtual object at a selected location on the optical display using a display assembly having a transparent optical display, wherein the eye viewing the virtual object has an expected gaze direction, and the virtual object is visible to the eye at a location on the side of the optical display facing the eye. Using an eye-tracking camera, capture the light reflected from the eye, Using a processor, calculate the measured gaze direction of the eye viewing the virtual object on the display assembly based on the light captured by the eye-tracking camera, Using the processor, the deformation of the optical display in the display deformation direction is calculated based on the measured gaze direction, wherein the measured gaze direction is a modified gaze direction that moves relative to the expected gaze direction in the display deformation direction, the modified gaze direction is due to the deformation of at least one of the eye-tracking camera and the optical display, the difference between the expected gaze direction and the modified gaze direction is in a first direction, the change in the measured gaze direction due to the deformation of the eye-tracking camera is in a second direction, and the first and second directions are less than 90 degrees apart from each other. The display assembly is corrected using a correction system to display the virtual object at a corrected location, wherein the eye viewing the virtual object at the corrected location has a corrected gaze direction that is moved from the modified gaze direction toward the expected gaze direction. Methods that include...