Volume Rendering - Introduction. Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology

Similar documents
Volume Graphics Introduction

3/29/2016. Applications: Geology. Appliations: Medicine. Applications: Archeology. Applications: Klaus Engel Markus Hadwiger Christof Rezk Salama

Scalar Data. CMPT 467/767 Visualization Torsten Möller. Weiskopf/Machiraju/Möller

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller

Data Visualization (CIS/DSC 468)

CIS 467/602-01: Data Visualization

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS )

Volume Rendering. Lecture 21

GPU-Accelerated Deep Shadow Maps

Volume Illumination. Visualisation Lecture 11. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Data Visualization (CIS/DSC 468)

Direct Volume Rendering

GPU-based Volume Rendering. Michal Červeňanský

Direct Volume Rendering

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences

Volume Ray Casting Neslisah Torosdagli

GPU-Accelerated Deep Shadow Maps for Direct Volume Rendering

First Steps in Hardware Two-Level Volume Rendering

Volume Visualization

Raycasting. Ronald Peikert SciVis Raycasting 3-1

Volume Visualization. Part 1 (out of 3) Volume Data. Where do the data come from? 3D Data Space How are volume data organized?

Introduction to Scientific Visualization

Interactive Methods in Scientific Visualization

Lecture overview. Visualisatie BMT. Transparency. Transparency. Transparency. Transparency. Transparency Volume rendering Assignment

Medical Visualization - Volume Rendering. J.-Prof. Dr. Kai Lawonn

CIS 4930/ SCIENTIFICVISUALIZATION

Real-Time Volume Graphics

Multidimensional Transfer Functions in Volume Rendering of Medical Datasets. Master thesis. Tor Øyvind Fluør

cs6630 November TRANSFER FUNCTIONS Alex Bigelow University of Utah

Global Rendering. Ingela Nyström 1. Effects needed for realism. The Rendering Equation. Local vs global rendering. Light-material interaction

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Volume Illumination & Vector Field Visualisation

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

CSE 167: Lecture #17: Volume Rendering. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Applications of Explicit Early-Z Culling

Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Real-time Graphics 10. GPU Volume Graphics

CS 5630/6630 Scientific Visualization. Volume Rendering I: Overview

Real-Time Voxelization for Global Illumination

Display. Introduction page 67 2D Images page 68. All Orientations page 69 Single Image page 70 3D Images page 71

03 RENDERING PART TWO

Direct Volume Rendering

Optical Models of Direct Volume Rendering by Nelson Max

Computer Graphics. - Volume Rendering - Philipp Slusallek

5. Volume Visualization

lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces

Shear-Warp Volume Rendering. Volume Rendering Overview

Volume Illumination, Contouring

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization

Visualization of the Marked Cells of Model Organism

Controlling GPU-based Volume Rendering using Ray Textures

Direct Rendering of Trimmed NURBS Surfaces

REYES REYES REYES. Goals of REYES. REYES Design Principles

Scalar Data. Alark Joshi

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST

Previously... contour or image rendering in 2D

Interactive GPU-based Segmentation of Large Medical Volume Data with Level-Sets

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Simple Empty-Space Removal for Interactive Volume Rendering

Computer Graphics. Lecture 13. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura

AN ADVANCED VOLUME RAYCASTING TECHNIQUE USING GPU STREAM PROCESSING

Last Time: Acceleration Data Structures for Ray Tracing. Schedule. Today. Shadows & Light Sources. Shadows

1 Ray Casting. Forward methods The picture shows the basic idea of forward methods. A voxel influences several pixels in the resulting image.

Render methods, Compositing, Post-process and NPR in NX Render

Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

COMPLETION OF Z-buffer Graphics Pipeline

A SURVEY ON 3D RENDERING METHODS FOR MRI IMAGES

Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Emissive Clip Planes for Volume Rendering Supplement.

Computer Graphics. Si Lu. Fall uter_graphics.htm 11/22/2017

CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017

Aspects of 3-D Seismic Data Volume Rendering

Ray Casting of Trimmed NURBS Surfaces on the GPU

Chapter 11 Global Illumination. Part 1 Ray Tracing. Reading: Angel s Interactive Computer Graphics (6 th ed.) Sections 11.1, 11.2, 11.

Towards Supporting Volumetric Data in FurryBall GPU Renderer

Volume Illumination and Segmentation

Interactive Volumetric Shadows in Participating Media with Single-Scattering

Computer Graphics Ray Casting. Matthias Teschner

CHAPTER 1 Graphics Systems and Models 3

Computer Graphics. Lecture 10. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura 12/03/15

Visualization Computer Graphics I Lecture 20

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

Visualization. CSCI 420 Computer Graphics Lecture 26

Radiosity. Johns Hopkins Department of Computer Science Course : Rendering Techniques, Professor: Jonathan Cohen

A Bandwidth Reduction Scheme for 3D Texture-Based Volume Rendering on Commodity Graphics Hardware

Computer Graphics Shadow Algorithms

Photorealism vs. Non-Photorealism in Computer Graphics

Multi-level voxel representation for GPUaccelerated

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Advanced GPU Raycasting

Point based Rendering

Computational Strategies

Computer Graphics. Lecture 02 Graphics Pipeline. Edirlei Soares de Lima.

Topics and things to know about them:

Multi-View Isosurface Ray-casting

Sung-Eui Yoon ( 윤성의 )

Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity

Anti-aliasing. Images and Aliasing

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

Transcription:

Volume Rendering - Introduction Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology

Volume Visualization 2D visualization: slice images (or multi-planar reformation: MPR) Indirect 3D visualization: isosurfaces (or surface-shaded display: SSD) Direct 3D visualization: direct volume rendering: DVR

Motivation

Motivation

Motivation

Direct Volume Rendering

Ray-Casting Image order approach: Image Plane Data Set Eye For each pixel { calculate color of the pixel }

Decrease Increase Physical Model of Radiative Transfer true emission in-scattering true absorption out-scattering

Volume Rendering Integral How do we determine the radiant energy along the ray? Physical model: emission and absorption, no scattering Initial intensity at s 0 Absorption along the ray segment s 0 - s viewing ray Optical depth τ Absorption к Without absorption all the initial radiant energy would reach the point s.

Volume Rendering Integral How do we determine the radiant energy along the ray? Physical model: emission and absorption, no scattering viewing ray Every One point along the the viewing ray emits additional radiant energy. Active emission at point s ~ Absorption along the distance s - ~ s

Numerical Solution

Numerical Solution can be computed recursively Radiant energy observed at position i Radiant energy emitted at position i Absorption at position i Radiant energy observed at position i 1

Numerical Solution back-to-front compositing Early Ray Termination: Stop the calculation when iterate from i=0 (back) to i=max (front): i increases can be computed recursively front-to-back compositing (used in ray-casting) iterate from i=max (front) to i=0 (back): i decreases

Ray-Casting: Implementation Ray setup Loop over ray Resample scalar value Classification Shading Compositing

Ray-Casting: Implementation Ray setup Loop over ray Resample scalar value Classification Shading Compositing

Rasterization-Based Ray Setup Pixel/fragment == ray Need ray start position and direction vector Rasterize bounding box - = Identical for orthogonal and perspective projection!

Object-Order Empty Space Skipping Modify initial rasterization step rasterize bounding box rasterize tight" bounding geometry

Ray-Casting: Implementation Ray setup Loop over ray Resample scalar value Classification Shading Compositing

Classification: Transfer Functions Assign optical properties: define the look of the data Which parts are transparent? Which parts have what color?

1D Transfer Functions texture = scalar field scalar value S resampling T(S) transferfunction texture = [Emission RGB, Absorption A] S RGBA

1D Transfer Functions

Pre-Classification / Post-Classification Pre-interpolative vs. post-interpolative classification pre-classification post-classification same TF, same resolution, same sampling rate

Pre-Classification / Post-Classification Pre-interpolative vs. post-interpolative classification pre-classification post-classification same TF, same resolution, same sampling rate

Pre-Integrated Classification front scalar back scalar pre-integrate all possible combinations in the TF s f s b store integral into table d constant sampling distance d for pre-integration of RGB, A s f s b s b s f

Pre-Integrated Classification

2D Transfer Functions 1D transfer function Horizontal axis: scalar value Vertical axis: number of voxels 1D Histogram 2D transfer function Horizontal axis: scalar value Vertical axis: gradient magnitude 2D Scatterplot [Kniss et al. 2002]

2D Transfer Functions 1D transfer function Horizontal axis: scalar value Vertical axis: number of voxels 2D transfer function Horizontal axis: scalar value Vertical axis: gradient magnitude [Kniss et al. 2002]

Ray-Casting: Implementation Ray setup Loop over ray Resample scalar value Classification Shading Compositing

Volume Shading Local illumination vs. global illumination Gradient-based or gradient-less Shadows, (multiple) scattering,

Ray-Casting: Implementation Ray setup Loop over ray Resample scalar value Classification Shading Compositing

Compositing

Compositing

Large Volumes: Bricking Subdivide volume into bricks Octrees, page tables, fixed grid, Combine memory management and empty space skipping Memory management: large bricks Empty space skipping: small bricks Cull using min-max of bricks Only store needed bricks in cache texture: swap in/out on demand

Thank You! Thank you: Christof Rezk-Salama, Klaus Engel, Johanna Beyer, Henning Scharsach, Stefan Wolfsberger, Christian Sigg, Katja Bühler, Joe Kniss http://vcc.kaust.edu.sa