1 / 29

Interactive Point-based Isosurface Exploration and High-quality Rendering

Interactive Point-based Isosurface Exploration and High-quality Rendering. V I S. 2 0 0 6. Haitao Zhang Arie Kaufman Stony Brook University. Isosurface Exploration. Isosurface extraction Isosurface rendering Interactive rate Changing view Change isovalue High quality rendering.

Download Presentation

Interactive Point-based Isosurface Exploration and High-quality Rendering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Interactive Point-based Isosurface Exploration and High-quality Rendering VIS 2006 Haitao Zhang Arie Kaufman Stony Brook University

  2. Isosurface Exploration • Isosurface extraction • Isosurface rendering • Interactive rate • Changing view • Change isovalue • High quality rendering

  3. Existing Methods • Marching Cubes [Lorensen & Cline 87] Huge number of triangles within 1-pixel size • Point-based methods • Projection-based method [Co et al. 03,04] Accurate point position with expensive projection operator • Active cell center [Rymon-Lipinski et al. 04] Fast but inaccurate point position • Dividing Cubes [Cline et al. 88] High-quality but very expensive: O(n3)

  4. Our Point-based Methods • Active edge instead of active cell Easier to position points on the isosurface • Incorporate together isosurface extraction & rendering No overhead when changing isovalue • Edge splatting Efficient with accurate point position • Edge kernel method View-dependent subdivision: O(n2)

  5. Edge Splatting • Send active edge info to GPU • Use span-triangle for active edge query [Rymon-Lipinski et al. 04] • Generate point along active edge • Intersection between active edge and isosurface • Surface splatting for rendering • Efficient rendering

  6. Isovalue GPU Edge Data Structure • Span-triangle data structure for active edge query • Sort by min and max value (min<max) • Linear storage of edge info Base Array & Span Array Edge Info Array ...

  7. Point Generation • Edge information • Position : endpoint with min value • Orientation : 6 possible directions • Normal : gradient at edge center • Values : min & max value Edge-Isosurface Intersection Computation:

  8. Use center of active cell 26,044 active cell Edge splatting 26,042 active edge

  9. Use center of active cell 368,296 active cell Edge splatting 370,122 active edge

  10. Artifacts in Close View Fixed number of point (active edge) for a given isovale.

  11. Edge Kernel Method • Subdividing active cell: sub-cell projection < 1 pixel

  12. Edge Kernel Method • Subdividing active cell: sub-cell projection < 1 pixel

  13. Edge Kernel Method • Subdividing active cell: sub-cell projection < 1 pixel

  14. Edge Kernel Method • Subdividing into k3 sub-cells • At most one intersection for k sub-edges on same line along X, Y or Z direction k sub-edges 1 edge k3 edges  3k2 edges

  15. Edge Kernel • Edge kernel E(k) : 3k2 edges <c, s, t> • c: orientation (X-, Y-, or Z-oriented) • (s,t): local coordinate of edge endpoint Edge:< 0, 2/3, 1/3 > Intersection:

  16. Edge Kernel Encoding & Rendering • E(k): 3k2 edges <c, s, t>  <c, sk, tk> < 0, 2/3, 1/3 >  <0, 2, 1> • E1E2 E3 E4 E5 … • Store one kernel with largest possible size in VBO : E(1000) with 6MB data • Rendering • CPU: select kernel size k for each active cell • GPU: render first 3k2 “points” of the stored edge kernel with 1-pixel size

  17. Inside an Active Cell Edge splatting Marching Cubes Edge kernel

  18. Two Neighboring Active Cells Marching Cubes Edge kernel

  19. Smooth Shading • Per-pixel shading [Hadwiger et al. 05] • Render point position to texture • Shading from volume gradient map

  20. Results 3.59GHz PC with NVIDIA Quadro FX 4500 card

  21. Rendering of Edge Splatting Isovalue=1405 (15.2 fps) 426,749 active edges 422,244 active cells Isovalue=840 (19.1 fps) 388,754 active edges 385,470 active cells

  22. Rendering of Foot (isovalue=36) Edge Kernel 5.2 fps Edge Splatting 19.1 fps

  23. Rendering of Foot (isovalue=70) Edge Splatting 96 fps Edge Kernel 3.1 fps

  24. Head MRT Angiography Edge Kernel 0.8 fps Edge Splatting 47.5 fps

  25. Head MRT Angiography Edge Splatting 123 fps Edge Kernel 3.1 fps

  26. Head MRT Angiography Edge Splatting 86.5 fps Edge Kernel 4.2 fps

  27. Conclusion • Interactive isosurface exploration system with high quality rendering: • Edge splatting • Accurate point position • Integrating point generation in rendering • Edge kernel method • High quality rendering under close view • 3D subdivision with complexity O(n2)

  28. Future Work • Very large volume data • Design hierarchical data structure • Improve edge kernel method speed • GPU implementation using Geometry Shader • Deal with volume with anisotropic grid

  29. Thank you!

More Related