Optimizations to Reduce Multi-Channel Ray Casting for Color Sampling
Abstract
In one embodiment, a method includes accessing a distortion definition for a first color component of a collection of pixels; casting, from a viewpoint in a three-dimensional (3D) space, a first bundle of rays for the first color component in accordance with the distortion definition; computing a first set of intersection locations between the cast first bundle of rays and an object in the 3D space; determining that a difference between distortions of the first color component and a second color component is greater than a first predetermined threshold and less than a second predetermined threshold; determining the second set of intersection locations on the object for the second color component based on shifting the first set of intersection locations; and determining color values for the collection of pixels based on the first and second sets of intersection locations.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising, by one or more computer systems:
accessing a distortion definition for a first color component of a collection of pixels; casting, from a viewpoint in a three-dimensional (3D) space, a first bundle of rays for the first color component of the collection of pixels in accordance with the distortion definition; computing a first set of intersection locations between the cast first bundle of rays and an object in the 3D space; determining, based on the distortion definition and the first set of intersection locations, that a difference between distortions of the first color component and a second color component is greater than a first predetermined threshold and less than a second predetermined threshold; determining the second set of intersection locations on the object for the second color component based on shifting the first set of intersection locations; and determining color values for the collection of pixels based on the first and second sets of intersection locations.
2 . The method of claim 1 , wherein the second set of intersection locations for the second color component are estimated without casting a second bundle of rays for the second color component into the 3D space.
3 . The method of claim 1 , further comprising:
determining a third set of intersection locations on the object for a third color component based on shifting the first set of intersection locations.
4 . The method of claim 3 , wherein:
the second set of intersection locations for the second color component are determined by shifting the first set of intersection locations by first offset values as defined in the distortion definition; and the third set of intersection locations for the third color component are determined by shifting the first set of intersection locations by second offset values as defined in the distortion definition.
5 . The method of claim 3 , wherein the distortion definition for the first color component comprises:
for the second color component, first offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the second set of intersection locations for the second color component; and for the third color component, second offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the third set of intersection locations for the third color component.
6 . The method of claim 3 , wherein the third set of intersection locations for the third color component are estimated without casting a third bundle of rays for the third color component into the 3D space.
7 . The method of claim 1 , further comprising:
generating a display for a wearable headset based on the determined color values for the collection of pixels.
8 . The method of claim 7 , wherein the wearable headset is a virtual reality (VR) headset or an augmented reality (AR) headset.
9 . The method of claim 7 , wherein the distortion definition is used to correct effects of chromatic aberration resulting from one or more optics of the wearable headset.
10 . The method of claim 1 , wherein the distortion definition is a distortion mesh comprising a plurality of mesh coordinates that are respectively associated with a plurality of predetermined points in a screen representation, wherein the plurality of mesh coordinates specify trajectories for casting the first bundle of rays for the first color component into the 3D space.
11 . One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
access a distortion definition for a first color component of a collection of pixels; cast, from a viewpoint in a three-dimensional (3D) space, a first bundle of rays for the first color component of the collection of pixels in accordance with the distortion definition; compute a first set of intersection locations between the cast first bundle of rays and an object in the 3D space; determine, based on the distortion definition and the first set of intersection locations, that a difference between distortions of the first color component and a second color component is greater than a first predetermined threshold and less than a second predetermined threshold; determine the second set of intersection locations on the object for the second color component based on shifting the first set of intersection locations; and determine color values for the collection of pixels based on the first and second sets of intersection locations.
12 . The media of claim 11 , wherein the second set of intersection locations for the second color component are estimated without casting a second bundle of rays for the second color component into the 3D space.
13 . The media of claim 11 , wherein the software is further operable to:
determining a third set of intersection locations on the object for a third color component based on shifting the first set of intersection locations.
14 . The media of claim 13 , wherein:
the second set of intersection locations for the second color component are determined by shifting the first set of intersection locations by first offset values as defined in the distortion definition; and the third set of intersection locations for the third color component are determined by shifting the first set of intersection locations by second offset values as defined in the distortion definition.
15 . The media of claim 13 , wherein the distortion definition for the first color component comprises:
for the second color component, first offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the second set of intersection locations for the second color component; and for the third color component, second offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the third set of intersection locations for the third color component.
16 . A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:
access a distortion definition for a first color component of a collection of pixels; cast, from a viewpoint in a three-dimensional (3D) space, a first bundle of rays for the first color component of the collection of pixels in accordance with the distortion definition; compute a first set of intersection locations between the cast first bundle of rays and an object in the 3D space; determine, based on the distortion definition and the first set of intersection locations, that a difference between distortions of the first color component and a second color component is greater than a first predetermined threshold and less than a second predetermined threshold; determine the second set of intersection locations on the object for the second color component based on shifting the first set of intersection locations; and determine color values for the collection of pixels based on the first and second sets of intersection locations.
17 . The system of claim 16 , wherein the second set of intersection locations for the second color component are estimated without casting a second bundle of rays for the second color component into the 3D space.
18 . The system of claim 16 , wherein the processors are further operable to:
determining a third set of intersection locations on the object for a third color component based on shifting the first set of intersection locations.
19 . The system of claim 18 , wherein:
the second set of intersection locations for the second color component are determined by shifting the first set of intersection locations by first offset values as defined in the distortion definition; and the third set of intersection locations for the third color component are determined by shifting the first set of intersection locations by second offset values as defined in the distortion definition.
20 . The system of claim 18 , wherein the distortion definition for the first color component comprises:
for the second color component, first offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the second set of intersection locations for the second color component; and for the third color component, second offset values by which the first set of intersection locations associated with the first color component needs to adjust to estimate the third set of intersection locations for the third color component.Join the waitlist — get patent alerts
Track US2021398358A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.