GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting...

19
GPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015 Mentors: John Clyne, Alan Norton CISL/HSS/VAPOR

Transcript of GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting...

Page 1: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

GPU-based Raycasting of Volumetric Data

University Of Memphis

June 30th, 2015

Dongliang Chu SIParCS-2015

Mentors: John Clyne,

Alan Norton

CISL/HSS/VAPOR

Page 2: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Agenda

Raycasting

GPU-based Raycasting

Raycasting In Layered Data

Proposed Adaptive-Sampling Raycasting

Accomplishment

Conclusion

Future work

2

Page 3: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Raycasting Raycasting in scientific visualization

3

Isosurface Extraction Direct Volume Rendering

Volumetric Data for Simulation of Turbulence

Page 4: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Raycasting Algorithm animations

4

Page 5: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

GPU-based Raycasting

Rendering Pipeline on GPU

5

Geometry

Processing &

Rasterization

Fragment

Processing Vertex

Processing

Vertex

Data

Primitive

Data

Frame

Buffer

Vertex

Shader

Fragment

Shader

Raycasting

….

Page 6: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Raycasting In Layered Grid and Data

Uniform Grid vs Layered Grid

6

(0,0) 0.2 0.4 0.6 0.8 1.0

0.2

0.4

0.6

0.8

1.0

(0,0) 0.2 0.4 0.8 1.0

0.1

0.4

0.5

0.9

1.0

0.6 X

Y

X

Y

0

20

80

100

20

0

0

20

80

100

20

0

De

nsity

Va

lue

De

nsity

Va

lue

, Layered Data

Page 7: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Raycasting In Layered Grid and Data

Practical layered ocean data

7

(0,0) 0.2 0.4 0.8 1.0

-0.05

-0.1

-0.15

-0.7

0.6 X

Y

0

20

80

100

20

0

De

nsity

Va

lue

-0.2

Page 8: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Raycasting In Layered Grid and Data

Real-life illustrating example

8

Isosurface of salinity from data generated by a regional ocean model

64 samples 1024 samples

Page 9: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Proposed Adaptive-Sampling

Raycasting

Adaptive-Sampling

9

(0,0) 0.2 0.4 0.8 1.0

0.2

0.4

0.6

0.8

1.0

0.6 X

Y

0

20

80

100

20

0

Fie

ld V

alu

e

Page 10: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Proposed Adaptive-Sampling

Raycasting

Algorithm brief description

1) Given the very first enter point corresponding to first cell

2) Calculate the corresponding exit point: calculating the ray’s

possible intersecting points with three hitting- possible

boundary planes, take the point closest to enter pointer as the

exit point, set next cell to which the hit boundary plane

belong, but not covered yet

3) turn the exit point into the enter point for next cell, goto step

2)

10

Page 11: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Proposed Adaptive-Sampling

Raycasting Difficulties

No Debugger

No “printout” statement

Numeric calculation inaccuracy

11

Page 12: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Proposed Adaptive-Sampling

Raycasting Solution

Use each pixel’s color channel to for status

checking

Countless loops of analysing, assumption, test,

proof/disproof

12

Page 13: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Accomplishment

Test data

13

64^3 volumetric data with 5 non-zero valued layers, 4 condensed, the other apart

Page 14: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Accomplishment

Running Result (1)

14

Proposed Algorithm Original Algorithm

Page 15: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Accomplishment

Running Result (2)

15

Proposed Algorithm Original Algorithm

Page 16: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Accomplishment

Running Result (3)

16

Proposed Algorithm Original Algorithm

Page 17: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Conclusion

GPU Programming is big challenge

Implement a self-adaptive raycaster working

well with ocean and atmosphere data

17

Page 18: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

Future Work

Apply the proposed algorithm to curvilinear

data for isosurface extraction

Apply the proposed algorithm for direct

volume rendering

18

Page 19: GPU-based Raycasting of Volumetric DataGPU-based Raycasting of Volumetric Data GPU-based Raycasting of Volumetric Data University Of Memphis June 30th, 2015 Dongliang Chu SIParCS-2015

GPU-based Raycasting of Volumetric Data

19