IP Library › Granted Patent US 11,625,890
Granted Patent B2
US 11,625,890 · App. 17/376,364 · Granted Apr 11, 2023

Geometry buffer slice tool

Inventors: Michael Jones (Harvest, AL); Kyle Russell (Huntsville, AL); Chanler Crowe Cantor (Madison, AL); Michael Yohe (Meridianville, AL)
Assignee: Intuitive Research and Technology Corporation
G06T15/08G06T15/005G06T19/006H04N13/395G06T2215/06G06T2219/008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,625,890
App. No.
17/376,364
Granted
Apr 11, 2023
Kind
B2
Abstract

A method for visualizing a three-dimensional volume for use in a virtual reality environment is performed by uploading two-dimensional images for evaluation, creating planar depictions of the two-dimensional images, and using thresholds to determine if voxels should be drawn. A voxel volume is created from the planar depictions and voxels. A user defines a plane to be used for slicing the voxel volume, and sets values of the plane location and plane normal. The slice plane is placed within the voxel volume and defines a desired remaining portion of the volumetric plane to be displayed. All but the desired remaining portion of the voxel volume is not drawn and the remaining portion is displayed.

Claims (37)

1. A method of visualizing a three-dimensional volume for use in a virtual reality environment, comprising:

uploading two-dimensional images for evaluation;

creating a voxel volume from the two-dimensional images;

defining a slice plane to be used for slicing the voxel volume, the slice plane defining a slice with a user-determined thickness;

determining whether the location of a current voxel is in front of or behind the slice plane, and if the current voxel is in front of the slice plane, drawing the voxel, and if the current voxel is behind the slice plane, not drawing the voxel.

2. The method of claim 1 , wherein the step of not drawing the voxel further comprises discarding the voxel.

3. The method of claim 1 , wherein the step of not drawing the voxel further comprises assigning the voxel a numerical value of “1” or “0.”

4. The method of claim 1 , wherein the step of determining if the location of the current voxel is in front of or behind the slice plane comprises using the dot-product of a vector from the slice plane to the current voxel against a normal of the slice plane.

5. The method of claim 4 , wherein if the dot-product of the vector is less than zero, then the voxel is not in front of the slice plane, and the voxel is not drawn.

6. The method of claim 5 , wherein if the dot-product of the vector is greater than zero, then the voxel is in front of the slice plane, and the voxel is drawn.

7. The method of claim 1 , wherein the step of defining a slice plane to be used for slicing the voxel volume, the slice plane defining a slice with a user-determined thickness comprises using vectors to determine how far away from the slice plane the voxel is compared to a normal of the slice plane.

8. The method of claim 7 , wherein the step of using vectors to determine how far away from the slice plane the voxel is compared to the normal of the plane comprises projecting the voxel onto the slice plane to find the location on the slice plane directly below the voxel, and if the voxel is in front of the slice plane and the distance from the slice plane to the voxel is less than or equal to a user-desired slice thickness, draw the voxel.

9. A method of visualizing a three-dimensional volume for use in a virtual reality environment, comprising:

uploading two-dimensional images for evaluation;

creating planar depictions of the two-dimensional images;

creating a voxel volume from the two-dimensional images;

defining a slice plane to be used for slicing the voxel volume, the slice plane defining a slice with a user-determined thickness;

determining whether the location of a current voxel is in front of or behind the slice plane, and if the current voxel is behind the slice plane, drawing the voxel, and if the current voxel is in front of the slice plane, not drawing the voxel.

10. The method of claim 9 , wherein the step of determining whether the location of the current voxel is in front of or behind the slice plane comprises using the dot-product of a vector from the slice plane to the current voxel against a normal of the slice plane.

11. The method of claim 9 , wherein the step of defining a slice plane to be used for slicing the voxel volume, the slice plane defining a slice with a user-determined thickness comprises using vectors to determine how far away from the slice plane the voxel is compared to a normal of the slice plane.

12. The method of claim 9 , wherein the step of not drawing the voxel further comprises assigning the voxel a numerical value of “1” or “0.”

13. A method of visualizing a three-dimensional volume for use in a virtual reality environment, comprising:

uploading two-dimensional images for evaluation;

creating a voxel volume based on the two-dimensional images;

defining a slicing volume to be used for slicing the voxel volume;

when the slicing volume is in contact with the voxel volume, send values representing all boundaries of the slicing volume to a geometry shader;

if a current voxel in the voxel volume is within the boundaries of the slicing volume, drawing the voxel, and if the current voxel is outside of the boundaries of the slicing volume, not drawing the voxel.

14. The method of claim 13 , wherein the step of not drawing the voxel further comprises discarding the voxel.

15. The method of claim 13 , wherein the step of not drawing the voxel further comprises assigning the voxel a numerical value of “1” or “0.”

16. A method of visualizing a three-dimensional volume for use in a virtual reality environment, comprising:

uploading two-dimensional images for evaluation;

creating a voxel volume based on the two-dimensional images;

defining a slicing volume to be used for slicing the voxel volume;

when the slicing volume is in contact with the voxel volume, send values representing all boundaries of the slicing volume to a geometry shader;

if a current voxel in the voxel volume is outside of the boundaries of the slicing volume, drawing the voxel, and if the current voxel is inside of the boundaries of the slicing volume, not drawing the voxel.

17. The method of claim 16 , wherein the step of not drawing the voxel further comprises discarding the voxel.

18. The method of claim 16 , wherein the step of not drawing the voxel further comprises assigning the voxel a numerical value of “1” or “0.”

Assignments (2)
SECURITY INTEREST Recorded Jul 20, 2026
From: INTUITIVE RESEARCH AND TECHNOLOGY CORPORATION
To: REGIONS BANK
Reel/Frame 076014/0667 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2021
From: JONES, MICHAEL; RUSSELL, KYLE; CROWE, CHANLER; YOHE, MICHAEL
To: INTUITIVE RESEARCH AND TECHNOLOGY CORPORATION
Reel/Frame 056864/0310 →
Continuity (3)
Continuation 16844453 · Apr 9, 2020
Provisional Application 62831309 · Apr 9, 2019
Related Publication 20210343068A1 · Nov 4, 2021