Interactive Deformation and Visualization of Level-Set Surfaces Using Graphics Hardware Aaron Lefohn Joe Kniss Charles Hansen Ross Whitaker Aaron Lefohn.

Slides:



Advertisements
Similar presentations
COMPUTER GRAPHICS SOFTWARE.
Advertisements

COMPUTER GRAPHICS CS 482 – FALL 2014 NOVEMBER 10, 2014 GRAPHICS HARDWARE GRAPHICS PROCESSING UNITS PARALLELISM.
Object Space EWA Surface Splatting: A Hardware Accelerated Approach to High Quality Point Rendering Liu Ren Hanspeter Pfister Matthias Zwicker CMU.
Understanding the graphics pipeline Lecture 2 Original Slides by: Suresh Venkatasubramanian Updates by Joseph Kider.
WSCG 2007 Hardware Independent Clipmapping A. Seoane, J. Taibo, L. Hernández, R. López, A. Jaspe VideaLAB – University of A Coruña (Spain)
GI 2006, Québec, June 9th 2006 Implementing the Render Cache and the Edge-and-Point Image on Graphics Hardware Edgar Velázquez-Armendáriz Eugene Lee Bruce.
Real-Time Rendering TEXTURING Lecture 02 Marina Gavrilova.
A Dynamic Adaptive Multi-resolution GPU Data Structure Adaptive Shadow Maps, Octree 3D Paint, Adaptive PDE Solver Aaron Lefohn University of California,
Distributed Interactive Ray Tracing for Large Volume Visualization Dave DeMarle Steven Parker Mark Hartner Christiaan Gribble Charles Hansen.
Computer Graphics Hardware Acceleration for Embedded Level Systems Brian Murray
GPU-Based Frequency Domain Volume Rendering Ivan Viola, Armin Kanitsar, and Meister Eduard Gröller Institute of Computer Graphics and Algorithms Vienna.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Final Gathering on GPU Toshiya Hachisuka University of Tokyo Introduction Producing global illumination image without any noise.
Interactive, GPU-Based Level Sets for 3D Segmentation Aaron Lefohn Joshua Cates Ross Whitaker University of Utah Aaron Lefohn Joshua Cates Ross Whitaker.
IN4151 Introduction 3D graphics 1 Introduction to 3D computer graphics part 2 Viewing pipeline Multi-processor implementation GPU architecture GPU algorithms.
Z-Buffer Optimizations Patrick Cozzi Analytical Graphics, Inc.
Accelerating Marching Cubes with Graphics Hardware Gunnar Johansson, Linköping University Hamish Carr, University College Dublin.
Volume Visualization Acknowledgements: Torsten Möller (SFU)
Hardware-Assisted Visibility Sorting for Tetrahedral Volume Rendering Steven Callahan Milan Ikits João Comba Cláudio Silva Steven Callahan Milan Ikits.
The programmable pipeline Lecture 10 Slide Courtesy to Dr. Suresh Venkatasubramanian.
GPU Tutorial 이윤진 Computer Game 2007 가을 2007 년 11 월 다섯째 주, 12 월 첫째 주.
GPU Graphics Processing Unit. Graphics Pipeline Scene Transformations Lighting & Shading ViewingTransformations Rasterization GPUs evolved as hardware.
1 A Hierarchical Shadow Volume Algorithm Timo Aila 1,2 Tomas Akenine-Möller 3 1 Helsinki University of Technology 2 Hybrid Graphics 3 Lund University.
CSE 690 General-Purpose Computation on Graphics Hardware (GPGPU) Courtesy David Luebke, University of Virginia.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
A Multigrid Solver for Boundary Value Problems Using Programmable Graphics Hardware Nolan Goodnight Cliff Woolley Gregory Lewin David Luebke Greg Humphreys.
GPU-accelerated Evaluation Platform for High Fidelity Networking Modeling 11 December 2007 Alex Donkers Joost Schutte.
Aaron Lefohn University of California, Davis GPU Memory Model Overview.
Enhancing GPU for Scientific Computing Some thoughts.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
May 8, 2007Farid Harhad and Alaa Shams CS7080 Over View of the GPU Architecture CS7080 Class Project Supervised by: Dr. Elias Khalaf By: Farid Harhad &
Database and Stream Mining using GPUs Naga K. Govindaraju UNC Chapel Hill.
Mapping Computational Concepts to GPUs Mark Harris NVIDIA Developer Technology.
GPUs and Accelerators Jonathan Coens Lawrence Tan Yanlin Li.
Interactive Time-Dependent Tone Mapping Using Programmable Graphics Hardware Nolan GoodnightGreg HumphreysCliff WoolleyRui Wang University of Virginia.
Cg Programming Mapping Computational Concepts to GPUs.
Interactive Level-Set Surface Deformation on the GPU Aaron Lefohn University of California, Davis.
GPU-Accelerated Surface Denoising and Morphing with LBM Scheme Ye Zhao Kent State University, Ohio.
University of Illinois at Chicago Electronic Visualization Laboratory (EVL) Multi-Dimensional Transfer Functions for Interactive Volume Rendering & Interactive.
Tone Mapping on GPUs Cliff Woolley University of Virginia Slides courtesy Nolan Goodnight.
Introduction: Lattice Boltzmann Method for Non-fluid Applications Ye Zhao.
Efficient Streaming of 3D Scenes with Complex Geometry and Complex Lighting Romain Pacanowski and M. Raynaud X. Granier P. Reuter C. Schlick P. Poulin.
GPU Data Formatting and Addressing
May 8, 2007Farid Harhad and Alaa Shams CS7080 Overview of the GPU Architecture CS7080 Final Class Project Supervised by: Dr. Elias Khalaf By: Farid Harhad.
GPU Accelerated MRI Reconstruction Professor Kevin Skadron Computer Science, School of Engineering and Applied Science University of Virginia, Charlottesville,
Havok FX Physics on NVIDIA GPUs. Copyright © NVIDIA Corporation 2004 What is Effects Physics? Physics-based effects on a massive scale 10,000s of objects.
Motivation Properties of real data sets Surface like structures
Graphics Interface 2009 The-Kiet Lu Kok-Lim Low Jianmin Zheng 1.
Outline Introduction Research Project Findings / Results
Discontinuous Displacement Mapping for Volume Graphics, Volume Graphics 2006, July 30, Boston, MA Discontinuous Displacement Mapping for Volume Graphics.
Linear Algebra Operators for GPU Implementation of Numerical Algorithms J. Krüger R. Westermann computer graphics & visualization Technical University.
From Turing Machine to Global Illumination Chun-Fa Chang National Taiwan Normal University.
Hardware Accelerated Volume Rendering Using PC Hardware CSE564 Final Demo Evan Closson.
Ray Tracing using Programmable Graphics Hardware
Head Segmentation using a finite element approach J.Piovano, T. Papadopoulo Odyssée Laboratory (ENPC, ENS, INRIA), INRIA, Sophia-Antipolis, France I. Introduction.
Mapping Computational Concepts to GPUs Mark Harris NVIDIA.
Scientific Computing Goals Past progress Future. Goals Numerical algorithms & computational strategies Solve specific set of problems associated with.
High-Quality Pre-Integrated Volume Rendering Using Hardware Accelerated Pixel Shading Klaus Engel, Martin Kraus, Thomas Ertl Visualization and Interactive.
GPU, How It Works? GRAPHICS PROCESSING UNITS Hidden Surfaces Determine which surfaces should be displayed Texturing Modify each pixel colour for added.
Image Fusion In Real-time, on a PC. Goals Interactive display of volume data in 3D –Allow more than one data set –Allow fusion of different modalities.
GPU Architecture and Its Application
Chapter 1 An overview on Computer Graphics
Chapter 1 An overview on Computer Graphics
Graphics Processing Unit
The Graphics Rendering Pipeline
Volume Rendering Lecture 21.
A Hierarchical Shadow Volume Algorithm
RADEON™ 9700 Architecture and 3D Performance
University of Virginia
CIS 6930: Chip Multiprocessor: GPU Architecture and Programming
Presentation transcript:

Interactive Deformation and Visualization of Level-Set Surfaces Using Graphics Hardware Aaron Lefohn Joe Kniss Charles Hansen Ross Whitaker Aaron Lefohn Joe Kniss Charles Hansen Ross Whitaker

Scientific Computing and Imaging Institute, University of Utah Problem Statement  Goal Interactive system for manipulating level-set, deformable surfaces  Level-Set Challenges Computationally expensive Difficult to control  Solution New streaming narrow-band algorithm Unified computation and visualization

Scientific Computing and Imaging Institute, University of Utah Overview  Motivation and Introduction  A Streaming Narrow-Band Solution 1. Virtual memory model 2. Substreams for static branch resolution 3. Efficient GPU-to-CPU message passing 4. Direct volume rendering of compressed/sparse data  Application and Demo  Conclusions

Scientific Computing and Imaging Institute, University of Utah Level-Set Method  Deformable, implicit surfaces Surface deformation via partial differential equation General, flexible model Introduction Surface Processing Tasdizen et al. IEEE Visualization 2002 Physical Simulation Premoze et al. Eurographics 2003 Segmentation

Scientific Computing and Imaging Institute, University of Utah Level-Set Method  Implicit surface  Distance transform  denotes inside/outside  Surface motion F = Signed speed in direction of normal Introduction

Scientific Computing and Imaging Institute, University of Utah Level-Set Acceleration Initialize Domain Compute Update Domain  Narrow-Band/Sparse-Grid Compute PDE only near the isosurface –Adalsteinson et al –Whitaker et al –Peng et al Time-dependent, sparse-grid solver Introduction

Scientific Computing and Imaging Institute, University of Utah Level-Set Acceleration  Graphics Hardware (GPU) Implementations Strzodka et al –2D level-set solver on NVIDIA GeForce 2 Lefohn et al –3D level-set solver on ATI Radeon 8500 –1x – 2x faster than CPU, but 10x more computations –Unpublished work Introduction

Scientific Computing and Imaging Institute, University of Utah  GPUs Inexpensive, fast, data-parallel, streaming architecture Parallel “For-Each” call over data elements Combination of computation and visualization Scientific Computing on GPU Vertex & Texture Coordinates Vertex Processor Rasterizer Fragment Processor Texture Data Frame/Pixel Buffer(s) Introduction

Scientific Computing and Imaging Institute, University of Utah 2D computational domain Restricted, data-parallel programming model Slow GPU-to-CPU communication Limited (high-bandwidth) memory on GPU GPU Computational Capabilities Vertex & Texture Coordinates Vertex Processor Rasterizer Fragment Processor Texture Data Frame/Pixel Buffer(s) Introduction CPU

Scientific Computing and Imaging Institute, University of Utah Time-Dependent, Sparse Solver 1.2D computational domain Multi-dimensional virtual memory model 2.Restricted, data-parallel programming model Substream resolution of fragment-level conditionals 3.Slow GPU-to-CPU communication Efficient message passing algorithm 4.Limited, high-bandwidth memory on GPU Direct volume rendering of level-set solution on GPU A Streaming Narrow-Band Algorithm Algorithm

Scientific Computing and Imaging Institute, University of Utah  Virtual Memory 3D virtual memory -- Level-set computation 2D physical memory -- GPU optimizations 16 x 16 pixel memory pages -- Locality / Memory usage 1. Multi-Dimensional Virtual Memory Algorithm Virtual Memory Space Physical Memory Space Unused Pages Active Pages Inside Outside

Scientific Computing and Imaging Institute, University of Utah 1. Multi-Dimensional Virtual Memory  Cooperation between CPU and GPU CPU –Memory manager –Page table GPU –Performs level-set computation –Issues memory requests Algorithm CPU GPU Physical Addresses for Active Memory Pages Memory Requests PDE Computation passes

Scientific Computing and Imaging Institute, University of Utah 2. Static Resolution of Conditionals  Problem Neighbor lookups across page boundaries Branching slow on GPU  Solution Substreams –Create homogeneous data streams –Resolve conditionals with geometry : Points, Lines, Quads –Optimizes cache and pre-fetch performance Algorithm

Scientific Computing and Imaging Institute, University of Utah 3. Efficient Message Passing Algorithm  Problem: Time-Dependent Narrow Band GPU memory request mechanism Low bandwidth GPU-to-CPU communication  Solution Compress GPU memory request Use GPU computation to save GPU-to-CPU bandwidth Algorithm s+x-x+y-y+z-z  Mipmapping

Scientific Computing and Imaging Institute, University of Utah 4. Direct Volume Rendering of Level Set  Render from 2D physical memory Reconstruct 2D slice of virtual memory space On-the-fly on GPU Use 2D geometry and texture coordinates Algorithm

Scientific Computing and Imaging Institute, University of Utah 4. Direct Volume Rendering of Level Set  Fully general volume rendering of compressed data Tri-linear interpolation 2D slice-based volume rendering Full transfer function and lighting capabilities No data duplication Algorithm

Scientific Computing and Imaging Institute, University of Utah  Extract feature from volume  Two speed functions, F D and F H Data-based speed, F D Mean-curvature speed, F H –Smooth noisy solutions –Prevent “leaks” Segmentation Application Application F D = 0 F D (I) I (Intensity)

Scientific Computing and Imaging Institute, University of Utah Demo  Segmentation of MRI volumes scalar volume  Details ATI Radeon 9800 Pro ARB_fragment_program ARB_vertex_program 2.6 GHz Intel Xeon with 1 GB RAM Application

Scientific Computing and Imaging Institute, University of Utah Region-of-Interest Volume Rendering  Limit extent of volume rendering Use level-set segmentation to specify region Add level-set value to transfer function Application

Scientific Computing and Imaging Institute, University of Utah GPU Narrow-Band: Performance  Performance 10x – 15x faster than optimized CPU version Linear dependence on size of narrow band  Bottlenecks Fragment processor Conservative time step –Need for global accumulation register (min, max, sum, etc.) Results

Scientific Computing and Imaging Institute, University of Utah Summary  Interactive 3D Level-Set Computation/Visualization Integrated segmentation and volume rendering Intuitive parameter setting Quantified effectiveness, user study (MICCAI 2003)  Streaming Narrow-Band Solution 1. Virtual memory model 2. Substreams for static branch resolution 3. Efficient GPU-to-CPU message passing 4. Direct volume rendering of compressed/sparse data Conclusions

Scientific Computing and Imaging Institute, University of Utah Future Directions  Other level-set applications  User interface  Depth culling within active pages Sherbondy et al. talk at 3:15pm today “Fast Volume Segmentation With Simultaneous Visualization Using Programmable Graphics Hardware”  N-D GPU virtual memory system Separate memory layout from computation Conclusions

Scientific Computing and Imaging Institute, University of Utah Acknowledgements  Gordon Kindlmann –- “Teem” raster-data toolkit  Milan Ikits –- “Glew” OpenGL extension wrangler  SCI faculty, students, and staff  John Owens at UCDavis  Evan Hart, Mark Segal, Arcot Preetham, Jeff Royle, and Jason Mitchell at ATI Technologies, Inc.  Brigham and Women’s Hospital  CIVM at Duke University  Office of Naval Research grant #N  National Science Foundation grant #ACI and #CCR