IP Library Granted Patent US 7,525,543
Granted Patent B2
US 7,525,543 · App. 11/180,100 · Granted Apr 28, 2009

High performance shading of large volumetric data using screen-space partial derivatives

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 7,525,543
App. No.
11/180,100
Granted
Apr 28, 2009
Kind
B2
Abstract

A method and system for shading large volumetric data sets using partial derivatives computed in screen-space. The method and system provide a fast and efficient shading a large datasets. Screen space derivatives are computed efficiently by evaluating neighboring pixel information together. The method can be efficiently implemented using GPUs (graphics processing units) that provides some access to information about neighboring pixels using ddx and ddy fragment processing functions.

Claims (49)

1. A shading method for rendering volumetric data having a plurality of pixels, each of the plurality of pixels having a scalar value, comprising:

direct rendering of the volumetric data, including the steps of:

determining a partial derivative with respect to the x direction of a first of the plurality of pixels in a screen-space;

determining a partial derivative with respect to the y direction of the first of the plurality of pixels in the screen-space;

determining a partial derivative with respect to a z direction of the first of the plurality of pixels in an object-space; and

determining a gradient based on the partial derivative with respect to the x direction, based on the partial derivative with respect to the y direction and based on the partial derivative with respect to the z direction.

2. The method as claimed in claim 1 , further comprising using the gradient to determine a shading characteristic of the first pixel based on the gradient.

3. The method as claimed in claim 1 , further comprising:

determining a partial derivative with respect to the x direction of each of the remaining plurality of pixels in the screen-space;

determining a partial derivative with respect to the y direction of each of the remaining plurality of pixels in the screen-space;

determining a partial derivative with respect to the z direction of each of the remaining plurality of pixels in the object-space; and

determining a gradient for each of the remaining plurality of pixels based on the associated partial derivative with respect to the x direction, based on the associated partial derivative with respect to the y direction and based on the associated partial derivative with respect to the z direction.

4. The method as claimed in claim 1 , further comprising using the associated gradient to determine a shading characteristic of each of the remaining plurality of pixels.

5. The method as claimed in claim 3 , wherein the steps of determining the partial derivatives are performed in a graphics processing unit.

6. The method as claimed in claim 5 , wherein the steps of determining a partial derivative with respect to the x direction are performed using a function ddx in the graphics processing unit and the steps of determining a partial derivative with respect to the y direction are performed using a function ddy in the graphics processing unit.

7. The method as claimed in claim 3 , wherein the step of determining the partial derivatives is performed using a forward difference.

8. The method as claimed in claim 4 , further comprising caching the partial derivatives prior to computing the gradients.

9. The method as claimed in claim 1 , further comprising scaling the partial derivative with respect to the x direction and the partial derivative with respect to the y direction in accordance with a zoom factor.

10. The method as claimed in claim 9 , wherein the partial derivative with respect to the x direction and the partial derivative with respect to the y direction are scaled up with a zoom in and are scaled down with a zoom out.

11. The method as claimed in claim 1 , further comprising scaling the partial derivative with respect to the z direction in accordance with a zoom factor.

12. A system of shading for rendering volumetric data, comprising:

a device for imaging a body part to derive scalar values associated with a plurality of pixels;

a processor that, for each of the plurality of pixels, determines a partial derivative in an x direction in a screen-space, determines a partial derivative in a y direction in the screen-space, determines a partial derivative with respect to a z direction in an object-space and determines a gradient based in part on the partial derivative in the x direction, on the partial derivative in the y direction and on the partial derivative with respect to the z direction in the object-space;

wherein the processor performs direct rendering of volumetric data based in part on the gradient; and

a display that displays the rendered volumetric data.

13. The system as claimed in claim 12 , wherein the processor is a graphics processing unit.

14. The system as claimed in claim 13 , wherein the graphics processing unit uses a fragment function ddx and a fragment function ddy.

15. The system as claimed in claim 12 , further comprising means for caching the partial derivatives prior to computing the gradients.

16. The system as claimed in claim 12 , wherein the processor determines a partial derivative in the z direction using samples of data along a viewing direction.

17. The system as claimed in claim 12 , wherein the processor determines a partial derivative in the z direction using samples of data in an object-space.

18. The system as claimed in claim 12 , wherein the processor scales the partial derivatives in accordance with a zoom factor.

19. A method of rendering volumetric data having a plurality of pixels, comprising:

direct rendering of the volumetric data, including the steps of:

obtaining a sample of data from a volume;

classifying the sample;

computing a gradient for each of the plurality of pixels, the gradient being based at least in part on a partial derivative with respect to an x direction in a screen space, on a partial derivative with respect to a y direction in the screen-space and on a partial derivative with respect to a z direction in an object-space;

normalizing the gradient;

computing diffuse and specular components; and

computing output colors.

20. The method as claimed in claim 19 , further comprising displaying the result.

21. The method as claimed in claim 19 wherein the gradient is determined using a partial derivative of each of the plurality of pixels in an x direction in a screen-space and using a partial derivative in a y direction of each of the plurality of pixels in the screen-space.

22. A shading method for rendering volumetric data, the method comprising:

performing direct rendering including the steps of:

selecting a first pixel in screen-space coordinates, the first pixel having a corresponding scalar value obtained from the volumetric data;

determining a difference between the scalar value associated with the first pixel and a scalar value associated with a neighboring pixel in a x direction in screen space;

determining a difference between the scalar value associated with the first pixel and a scalar value associated with a neighboring pixel in a y direction in screen space;

determining a difference between the scalar value associated with the first pixel and a scalar value associated with a neighboring pixel in a z direction in object space;

determining a gradient associated with the first pixel based on the differences; and

using the gradient to compute a shading characteristic of the first pixel.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 066088 FRAME: 0256. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 17, 2024
From: SIEMENS HEALTHCARE GMBH
To: SIEMENS HEALTHINEERS AG
Reel/Frame 071178/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2023
From: SIEMENS HEALTHCARE GMBH
To: SIEMENS HEALTHINEERS AG
Reel/Frame 066088/0256 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2018
From: SIEMENS CORPORATION
To: SIEMENS AKTIENGESELLSCHAFT
Reel/Frame 045000/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2018
From: SIEMENS AKTIENGESELLSCHAFT
To: SIEMENS HEALTHCARE GMBH
Reel/Frame 045000/0265 →
MERGER AND CHANGE OF NAME Recorded Jan 24, 2018
From: SIEMENS CORPORATE RESEARCH, INC.; SIEMENS CORPORATION
To: SIEMENS CORPORATION
Reel/Frame 044715/0580 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2006
From: SIEMENS CORPORATE RESEARCH, INC.
To: SIEMENS MEDICAL SOLUTIONS USA, INC.
Reel/Frame 017819/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2005
From: ENGEL, KLAUS D.
To: SIEMENS CORPORATE RESEARCH, INC.
Reel/Frame 016404/0987 →