IP Library Granted Patent US 6,876,361
Granted Patent B2
US 6,876,361 · App. 09/810,654 · Granted Apr 5, 2005

Architecture for real-time texture look up's for volume rendering

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 6,876,361
App. No.
09/810,654
Granted
Apr 5, 2005
Kind
B2
Abstract

A slice plane, oriented parallel to a viewing plane, is passed through a cuboidal dataset at regular intervals. The intersection of the slice plane with the cuboidal volume dataset results in primitives (quads, triangles, etc. depending on the angle and position of the intersection) whose vertices have position coordinates (x u , y u , z u ) and 3D-texture coordinates (r, s, t). The resulting primitives are rasterized using, for example, a traditional 3D graphics pipeline wherein the 3D-texture coordinates are interpolated across the scanlines producing 3D-texture coordinates for each fragment. The resulting 3D-texture coordinates for each fragment are stored in a 2D-texture storage area. These 2D-textures are called density-textures. By preprocessing the cuboidal dataset, the rendering process becomes a compositing process. A rendering process is comprised of looking-up, for each densel in the texture, the corresponding color and opacity values in the current lookup-table. A user-specified compositing function is used to blend the values with those in the framebuffer to arrive at the final result. The final result, i.e. the values in the framebuffer, is displayed.

Claims (46)

1. A process for operating on a dataset, comprising:

defining a plurality of slicing planes through the dataset, said slicing planes being parallel to a viewing plane;

interpolating density values in normalized device space for the figures generated by the intersection of the dataset with the slicing planes; and

storing the density values as density textures for later use.

2. The process of claim 1 wherein said interpolating includes rasterizing the figures generated by the intersection of the dataset with the slicing planes.

3. The process of claim 1 wherein said interpolating includes interpolating a density value by analyzing the density values assigned to a predetermined number of nearby points.

4. The process of claim 1 additionally comprising transforming the dataset to a new viewing plane.

5. A process for operating on a volumetric dataset, comprising:

selecting a viewing plane;

slicing the dataset into a plurality of two dimensional slices, each slice resulting in a geometric primitive parallel to said viewing plane;

converting each primitive to a set of fragments each having its own three dimensional texture coordinate;

determining the density value of the three dimensional texture coordinate through interpolation from the nearest neighbors, and

storing the density values for later use.

6. The process of claim 5 wherein converting includes trilinear interpolation.

7. The process of claim 5 additionally comprising transforming the dataset to correspond to the viewing plane.

8. A method of preprocessing a 3D dataset, comprising:

dividing the 3D dataset into a plurality of 2D primitives;

calculating density textures for each of said plurality of 2D primitives; and

storing said density textures for later use.

9. The method of claim 8 wherein said calculating the density textures includes rasterizing said plurality of 2D primitives.

10. The method of claim 8 wherein said calculating includes interpolating a value by analyzing the values assigned to a predetermined number of nearby points.

11. The method of claim 8 additionally comprising transforming the dataset to a new viewing plane.

12. A process for operating on a 3D volumetric dataset, comprising:

defining a plurality of slicing planes through the dataset, said slicing planes being parallel to a viewing plane, the intersection of each of said slicing planes with said dataset producing a primitive;

rasterizing each of said plurality of primitives; and

storing the values produced by the rasterizing as density textures for later use.

13. The process of claim 12 wherein said density textures are stored without transformation.

14. The process of claim 12 additionally comprising transforming the dataset to a new viewing plane.

15. A method of rendering a volumetric dataset, comprising:

retrieving information from a lookup table using a density-texture as a pointer to the information in the table indicating a contribution to an image;

compositing the retrieved information; and

displaying the composited information.

16. The method of claim 15 wherein the information includes values for red, green, and blue and an opacity value.

17. The method of rendering a volumetric dataset, comprising:

using density texture values as pointers for retrieving information from a lookup table;

compositing the retrieved information; and

displaying the composited information.

18. The method of claim 17 additionally comprising transforming the density texture values into normalized-device space prior to using the density texture values as pointers.

19. The method of claim 17 wherein the information includes values for red, green, and blue and an opacity value.

20. A method of rendering a volumetric dataset, comprising:

using a density-texture as a pointer to information in a lookup table; and

compositing the information from the lookup table.

21. The method of claim 20 , wherein the information includes values for red, green, and blue and an opacity value.

22. In a method for rendering a volumetric dataset, the improvement comprising using, during said rendering, density textures generated and stored prior to said rendering.

23. A process for operating on a volumetric dataset, comprising:

generating and storing density textures for said volumetric dataset prior to rendering said volumetric dataset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2010
From: MICRON TECHNOLOGY, INC.
To: ROUND ROCK RESEARCH, LLC
Reel/Frame 023786/0416 →