Volume visualization I Elvins



Similar documents
Direct Volume Rendering Elvins

Constrained Tetrahedral Mesh Generation of Human Organs on Segmented Volume *

A Generalized Marching Cubes Algorithm Based On Non-Binary Classifications

Volume Rendering on Mobile Devices. Mika Pesonen

Interactive 3D Medical Visualization: A Parallel Approach to Surface Rendering 3D Medical Data

Efficient Storage, Compression and Transmission

MODERN VOXEL BASED DATA AND GEOMETRY ANALYSIS SOFTWARE TOOLS FOR INDUSTRIAL CT

Model Repair. Leif Kobbelt RWTH Aachen University )NPUT $ATA 2EMOVAL OF TOPOLOGICAL AND GEOMETRICAL ERRORS !NALYSIS OF SURFACE QUALITY

A 3d particle visualization system for temperature management

3D Modelling and Volume Rotation of 2D Medical Images

Advanced visualization with VisNow platform Case study #2 3D scalar data visualization

Visualisatie BMT. Introduction, visualization, visualization pipeline. Arjan Kok Huub van de Wetering

Technical Report. An Interactive Iso-Surface Based 3D Weather Radar Data Visualization Package Using VisAD for WDSSII

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

3D Visualization of particle system with extracted data from sensor

A Short Introduction to Computer Graphics

Introduction to Computer Graphics

Dual Marching Cubes: Primal Contouring of Dual Grids

HistoPyramid stream compaction and expansion

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

Shader Model 3.0. Ashu Rege. NVIDIA Developer Technology Group

Recent Advances and Future Trends in Graphics Hardware. Michael Doggett Architect November 23, 2005

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007

SECONDARY STORAGE TERRAIN VISUALIZATION IN A CLIENT-SERVER ENVIRONMENT: A SURVEY

Visualisation in the Google Cloud

Multiphysics Software Applications in Reverse Engineering

H.Calculating Normal Vectors

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

Lecture 7 - Meshing. Applied Computational Fluid Dynamics

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

Location tracking: technology, methodology and applications

MASTER S DEGREE THESIS. Environmental Computing. Liv Hovland. Østfold University College. June 2004

The Essentials of CAGD

Glencoe. correlated to SOUTH CAROLINA MATH CURRICULUM STANDARDS GRADE 6 3-3, , , 4-9

Number Sense and Operations

How To Create A Surface From Points On A Computer With A Marching Cube

Introducing MIPAV. In this chapter...

3D Model of the City Using LiDAR and Visualization of Flood in Three-Dimension

MARCHING CUBES: A HIGH RESOLUTION 3D SURFACE CONSTRUCTION ALGORITHM. William E. Lorensen Harvey E. Cline

Visualizing Data: Scalable Interactivity

Image Analysis for Volumetric Industrial Inspection and Interaction

INTRODUCTION TO RENDERING TECHNIQUES

Computer Graphics Hardware An Overview

3D Face Modeling. Vuong Le. IFP group, Beckman Institute University of Illinois ECE417 Spring 2013

Volumetric Meshes for Real Time Medical Simulations

VisIt Visualization Tool

Parallel Simplification of Large Meshes on PC Clusters

Interactive Level-Set Segmentation on the GPU

Visualization of Adaptive Mesh Refinement Data with VisIt

Interactive simulation of an ash cloud of the volcano Grímsvötn

Rendering Area Sources D.A. Forsyth

2. MATERIALS AND METHODS

ENG4BF3 Medical Image Processing. Image Visualization

ParaVision 6. Innovation with Integrity. The Next Generation of MR Acquisition and Processing for Preclinical and Material Research.

Lecture Notes, CEng 477

Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.

Data Visualization Using Hardware Accelerated Spline Interpolation

Interactive Level-Set Deformation On the GPU

Avizo AvizoFire - The 3D visualization Software for NDT & Materials Science

Employing Complex GPU Data Structures for the Interactive Visualization of Adaptive Mesh Refinement Data

Using Photorealistic RenderMan for High-Quality Direct Volume Rendering

A unified representation for interactive 3D modeling

GPU Architecture. Michael Doggett ATI

Lezione 4: Grafica 3D*(II)

ENABLING TOOLS AND TECHNIQUES FOR THE OPTIMIZATION OF THE HERACLES SIMULATION PROGRAM

Data Visualization Study at Earth Simulator Center

Lecture 9: Geometric map transformations. Cartographic Transformations

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations

Consolidated Visualization of Enormous 3D Scan Point Clouds with Scanopy

MI Software. Innovation with Integrity. High Performance Image Analysis and Publication Tools. Preclinical Imaging

How To Make A Texture Map Work Better On A Computer Graphics Card (Or Mac)

Image Registration and Fusion. Professor Michael Brady FRS FREng Department of Engineering Science Oxford University

CUBE-MAP DATA STRUCTURE FOR INTERACTIVE GLOBAL ILLUMINATION COMPUTATION IN DYNAMIC DIFFUSE ENVIRONMENTS

Parallel Large-Scale Visualization

Micro-CT for SEM Non-destructive Measurement and Volume Visualization of Specimens Internal Microstructure in SEM Micro-CT Innovation with Integrity

Medical Image Processing on the GPU. Past, Present and Future. Anders Eklund, PhD Virginia Tech Carilion Research Institute

NVIDIA IndeX. Whitepaper. Document version June 2013

2.2 Creaseness operator

Machine Learning for Medical Image Analysis. A. Criminisi & the InnerEye MSRC

Building 3D anatomical scenes on the Web

COS702; Assignment 6. Point Cloud Data Surface Interpolation University of Southern Missisippi Tyler Reese December 3, 2012

resource Osirix as a Introduction

Transcription:

Volume visualization I Elvins 1 surface fitting algorithms marching cubes dividing cubes direct volume rendering algorithms ray casting, integration methods voxel projection, projected tetrahedra, splatting hybrid rendering algorithms

Background & Motivation 2 Large three-dimensional (3D) data sets arise from measurement by physical equipment, or from computer simulation. Scientific areas: computerized tomography (CT), astronomy, computational physics or chemistry, fluid dynamics, seismology, environmental research, non-destructive testing, etc. For easy interpretation volume visualization techniques are useful: view data from different viewpoints. interactive exploration in Virtual Environments.

Requirements 3 Compression/simplification: visualize reduced version of data in controllable way. Progressive refinement: incremental visualization from low to high resolution. Progressive transmission: transmit data incrementally from server to client s workstation (data transfer is time-limiting factor) Level-of-detail (LOD): use low resolution for small, distant or unimportant parts of the data.

Volume rendering integral 4 Transport of light is modelled by equations originating from physics. low albedo approximation for the intensity I(x, s) at position x integrated along the line x + ts, t 0 t t l : I(x, s) = tl t 0 f(x + ts)e t t 0 α(x+us)du dt. where t 0 is the point of entrance, and t l the point of exit. α is the opacity (related to the density of the particles).

X-ray rendering 5 Further simplification: α = 0. I(x, s) = tl t 0 f(x + ts)dt.

Volume visualization II 6 surface rendering reduce volume to isosurfaces S(c) : f(x, y, z) = c of a density function f(x, y, z) representing the boundary between materials. direct volume rendering map volume data directly on screen (no graphical primitives) with semi-transparent effects forward projection FTB BTF

Direct Volume Rendering 7 X-ray rendering of human head CT data.

X-ray rendering 8

X-ray rendering 9 integrate the density f along the line of sight Mathematical concept: X-ray transform: P θ f(u, v) = R f(uu + vv + tθ) dt. z v θ u y P (u,v) θ x

Voxel vs. Cell model 10 Represents the 3D division of space by a 3D array of grid points. gridpoint gridpoint VOXEL CELL Voxel: grid point in center, constant value in voxel Cell: grid points at vertices, value within cell varies

Generalized Voxel model Höhne et al. 11 3D array with data about intensity values of different materials or information about class membership of certain organs Medical data sources: MRI soft tissue: fat, muscle CT hard tissue: bone PET energy emission, fluid flow, physiology

CT vs. MRI 12 CT image: 512 x 512 pixels, 2 bytes/voxel.

CT vs. MRI 13 MR image: 256 x 256 pixels, 2 bytes/voxel.

MRI 14

PET 15

Series of PET scans 16

Orthogonal slices 17

Iso-surface: bone 18

Iso-surface: skin 19

Marching Cubes Lorensen & Cline 20 1. read 4 successive slices into memory 2. consider cube with 8 data points as vertices : 4 in first slice, 4 in next slice 3. classify vertices 1=inside, 0=outside surface w.r.t. iso-value to determine index of the cube 4. use index to retrieve intersection- and triangulation pattern from look-up table 5. determine exact cube side intersections and surface normals by interpolation of vertex values 6. for each triangle from table, pass the computed 3 vertex values to graphical hardware

Marching Cubes: setup 21 Slice k+1 (i,j+1,k+1) (i,j,k+1) (i+1,j+1,k+1) (i+1,j,k+1) (i,j+1,k) (i+1,j+1,k) (i,j,k) (i+1,j,k) Slice k k j i pixel

Marching Cubes 22 256 possible patterns : by inversion and rotation reduce to 15 basic patterns 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

Marching Cubes: test cube 23 v 7 v6 e 6 v 3 e 11 v 2 e 2 e 10 e 7 e 5 v 4 v 5 e 3 e 4 e 1 v 0 index v 1 v7 v 6 v 5 v 4 v 3 v 2 v 1 v 0 e 8 e 9 e 0

Marching Cubes: index table 24 index basic pattern inversion rotation 0 0 0 0, 0, 0 1 1 0 0, 0, 0 2 1 0 1, 0, 0 3. 2. 0. 0, 0, 0. 255 0 1 0, 0, 0 basic pattern intersection of sides triangulation pattern 0 1 e 1 e 4 e 9 e 1 e 9 e 4 2. e 2 e 4 e 9 e 10. e 2 e 10 e 4, e 10 e 9 e 4. 14 e 1 e 2 e 6 e 7 e 9 e 11 e 1 e 2 e 9, e 2 e 7 e 9, e 2 e 6 e 7, e 9 e 7 e 11

Cube side intersections 25 The exact cube side intersections are determined by linear interpolation. intensity f(1) c f(0) x* 0 1 distance along edge

Surface normals 26 The surface normals are determined by linear interpolation of vertex normals. Each vertex normal is computed by central differences: N s = s where s(i, j, k) is the data array. s(i + 1, j, k) s(i 1, j, k) s(i, j + 1, k) s(i, j 1, k) s(i, j, k + 1) s(i, j, k 1)

Marching Cubes: (dis)advantages 27 + data-volume scanned only once for 1 iso-value + determination of geometry independent of viewpoint ambiguity in possible triangulation pattern 4 4? holes in geometry may arise 6-3

Dividing Cubes 28 Principle: large numbers of small triangles (projection smaller than pixel) to be mapped as points look for cells with vertex values not all equal subdivide cells if projection larger than a pixel interpolate gradient vector from vertices map surface point to pixel with computed light intensity no surface primitives needed; hardware so also no surface-rendering

Surface rendering 29 Example: Visualization of segmented data (a frog). Data acquired by physically slicing the frog and photographing the slices. Data consists of 136 slices of resolution 470 500. Each pixel labelled with tissue number for a total of 15 tissues.

Segmented slice of frog 30

Simplified visualization pipeline 31 1. read segmentation data 2. remove islands (optional) 3. select tissue by thresholding 4. resample volume (optional) 5. apply Gaussian smoothing filter 6. generate surface using Marching Cubes 7. decimate surface (optional) 8. write surface data

Why smooth the volume? 32

Frog 33

Frog Organs 34

3D CT imaging 35 CT images of bones and tendons of a hand. All tendons and bones are separately segmented. (Courtesy: prof. Frans Zonneveld).

Drawbacks of surface rendering 36 only approximation of surface only surface means loss of information amorphous phenomena have no surfaces, e.g. clouds MR also difficult to visualize: same scalar value different tissues map to the