Importance Driven Volume Rendering Authors: I. Viola, A. Kanitsar, M. Gröler Visualization II Instructor: Jessica Crouch.

Slides:



Advertisements
Similar presentations
7.1 Vis_04 Data Visualization Lecture 7 3D Scalar Visualization Part 2 : Volume Rendering- Introduction.
Advertisements

ENV 2006 CS4.1 Envisioning Information: Case Study 4 Focus and Context for Volume Visualization.
Exploration of advanced lighting and shading techniques
Direct Volume Rendering. What is volume rendering? Accumulate information along 1 dimension line through volume.
Render Cache John Tran CS851 - Interactive Ray Tracing February 5, 2003.
Advanced Effects CMSC 435/634. General Approach Ray Tracing – Shoot more rays Rasterization – Render more images.
Occlusion Culling Fall 2003 Ref: GamasutraGamasutra.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Hidden Surface Removal 고려대학교 컴퓨터 그래픽스 연구실.
Ray Tracing & Radiosity Dr. Amy H. Zhang. Outline  Ray tracing  Radiosity.
The Discrete Ray-casting Algorithm Qiang Xue Jiaoying Shi State Key Lab Of CAD&CG Zhejiang University.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Information Visualization.
Splatting Josh Anon Advanced Graphics 1/29/02. Types of Rendering Algorithms Backward mapping Image plane mapped into data Ray casting Forward mapping.
Introduction to Volume Rendering Presented by Zvi Devir.
Imaging Science FundamentalsChester F. Carlson Center for Imaging Science The Geometric Optics of Image Formation Graphical Ray Tracing.
Introduction to Volume Visualization Mengxia Zhu Fall 2007.
7M836 Animation & Rendering
Three-Dimensional Concepts
FROM IMAGES TO ANSWERS Deconvolution of Widefield and Confocal images Quantatitive and Qualitative Deconvultion, 3D filters and 3D Analysis. Autoquant.
Michael Burns Martin Haidacher Eduard Gröller Ivan ViolaWolfgang Wein.
Part I: Basics of Computer Graphics Rendering Polygonal Objects (Read Chapter 1 of Advanced Animation and Rendering Techniques) Chapter
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Grafis 3D. What is 3D?  3D Image x, y, z Tell a story, more information  2D Image x, y Communicate something simple (ie. cheat)
Introduction Tracking the corners Camera model and collision detection Keyframes Path Correction Controlling the entire path of a virtual camera In computer.
19/18/ :34 Graphics II Volume Rendering Session 10.
Lecture 3 : Direct Volume Rendering Bong-Soo Sohn School of Computer Science and Engineering Chung-Ang University Acknowledgement : Han-Wei Shen Lecture.
Scientific Visualization Module 6 Volumetric Algorithms (adapted by S.V. Moore – slides deleted, modified, and added) prof. dr. Alexandru (Alex) Telea.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Direct Volume Rendering (DVR): Ray-casting Jian Huang This set of slides references slides used by Prof. Torsten Moeller (Simon Fraser), Prof. Han-Wei.
Real-Time Rendering SPEEDING UP RENDERING Lecture 04 Marina Gavrilova.
Illustrative Visualization of Segmented Human Cardiac Anatomy Based on Context-Preserving Model Kuanquan Wang, Lei Zhang, Changqing Gai, Wangmeng Zuo.
Computer-Generated Pen-and-Ink Illustration of Trees Oliver Deussen & Thomas Strothotte University of Magdeburg.
Image-based Rendering. © 2002 James K. Hahn2 Image-based Rendering Usually based on 2-D imagesUsually based on 2-D images Pre-calculationPre-calculation.
Week 10 - Wednesday.  What did we talk about last time?  Shadow volumes and shadow mapping  Ambient occlusion.
Computer graphics & visualization. IntuitiveVersatileFast.
Chapter 4: CS6891 Computational Medical Imaging Analysis Chapter 4: Image Visualization Jun Zhang Laboratory for Computational Medical Imaging & Data Analysis.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Computer Graphics Zhen Jiang West Chester University.
Exploded Views for Volume Data Stefan Bruckner and M. Eduard Gröller IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 12, NO. 5, 2006.
3D Digital Cleansing Using Segmentation Rays Authors: Sarang Lakare, Ming Wan, Mie Sato and Arie Kaufman Source: In Proceedings of the IEEE Visualization.
3-D Data cs5984: Information Visualization Chris North.
Volume Visualization Presented by Zhao, hai. What’ volume visualization Volume visualization is the creation of graphical representations of data sets.
Authors: I. Viola, A. Kanitsar, M. Gr ö ler Institute of Computer Graphics and Algorithms Vienna University of Technology, Austria Importance Driven Volume.
CS 445 / 645 Introduction to Computer Graphics Lecture 15 Shading Shading.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
Pure Path Tracing: the Good and the Bad Path tracing concentrates on important paths only –Those that hit the eye –Those from bright emitters/reflectors.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
1Ellen L. Walker 3D Vision Why? The world is 3D Not all useful information is readily available in 2D Why so hard? “Inverse problem”: one image = many.
3-D Information cs5764: Information Visualization Chris North.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
1 Per-Pixel Opacity Modulation for Feature Enhancement in Volume Rendering Speaker: 吳昱慧 Date:2010/11/16 IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
Visible-Surface Detection Methods. To identify those parts of a scene that are visible from a chosen viewing position. Surfaces which are obscured by.
3D Rendering 2016, Fall.
Rendering Pipeline Fall, 2015.
Real-Time Soft Shadows with Adaptive Light Source Sampling
Volume Visualization Chap. 10 November 20 , 2008 Jie Zhang Copyright ©
3D Graphics Rendering PPT By Ricardo Veguilla.
Three-Dimensional Concepts. Three Dimensional Graphics  It is the field of computer graphics that deals with generating and displaying three dimensional.
Volume Visualization Chap. 10 December 3 , 2009 Jie Zhang Copyright ©
CSCE 441: Computer Graphics Hidden Surface Removal
Real-Time Volume Graphics [06] Local Volume Illumination
Volume Rendering (2).
Volume Rendering Lecture 21.
Volume Rendering.
Visualization CSE 694L Roger Crawfis The Ohio State University.
Presentation transcript:

Importance Driven Volume Rendering Authors: I. Viola, A. Kanitsar, M. Gröler Visualization II Instructor: Jessica Crouch

Problem Volume visualization has inherent difficulties with occlusion –Exterior surfaces occlude interior surfaces –Interior surfaces might be more interesting or important How do you render a volume so that you see the most important parts of the data?

Motivation 3D medical image visualization in general Specific example: liver tumor visualization –For radiotherapy planning –For surgery planning Need to clearly see: –Tumor location, size, shape –Blood vessel tree –Parenchyma (functional tissue, as opposed to connective tissue)

Methods Approaches add visual emphasis to important portions of the scene –How do you define importance? –How do you add visual emphasis?

Previous Work: Transfer Functions Specify a function (probably non-linear) that maps scalar voxel data to color/opacity –Simplest example: threshold function –Others? Map data through transfer function, then use a standard volume rendering algorithm –MIP (Maximum Intensity Projection) –Ray casting –Volume Splatting

Previous Work: Transfer Functions Assumes the important parts of the data can be specified using ranges of voxel intensities How could this scheme work for the liver?

Previous Work: Focus + Context Rendering Focus: –To which part of the scene is the viewer paying attention? Eye tracking –Render that part with more detail, with magnification, or other enhancement –Let focus define importance Context: –The relationship (distance) between a part of the scene and the focus (focal) point –Detail or magnification gradually fades as distance increases

Previous Work: Focus + Context Rendering Has the unique property that the viewer determines what part of the visualization is emphasized –When is this appropriate? –How would this work for the liver application?

Previous Work: Methods for Adding Visual Emphasis Sparse Representation: –Just render important parts of the data Iso-surfaces Contour lines / curves (approximation of wireframe) Cut-Away Views: –Traditional artist rendering of anatomy, layered structures –Clipping plane(s) or curved clipping surface(s)

Importance Driven Rendering Basic idea: –Wherever a less important object occludes a more important object, render the less important object sparsely so that the more important object is mostly visible. Assumes importance is user-defined & static View dependent approach –Not focus dependent

Necessary Model Data Each voxel is assigned to an object –Segmentation, classification Each object is assigned a level of importance –In addition to color, opacity

Rendering Logic Sparseness level of a surface patch indicates what percentage of its footprint on the image plane it colors Sparseness level is assigned to a surface patch based on whether it is more or less important than other surfaces it occludes (or is occluded by)

Importance Compositing Option 1: Maximum Importance Projection –For each pixel, render the most important voxel that projects onto the pixel –Assign sparseness level of 0 or 1 to each point 1 2 3

Importance Compositing: MImP Efficient, fast? How depth perception work? –Occlusion is an important depth cue Naïve method of MImP:

MImP Improved Apply a conical rather than cylindrical cut-out to the objects surrounding an important object –Gradual change in rendering depth –Allows you to see cut away layers of surrounding objects, rather than a deep “hole”

MImP Conical Cut-Out Implementation 1.Find the important object’s footprint on the image plane. 2.For each pixel in the footprint, find the maximum depth of all the object’s voxels that project to the pixel - Gives objects “back wall” 3.Create a conical clipping surface by projecting the back wall toward the image plane - Assuming a ray casting approach, just start tracing clipped rays at the clipping surface rather than at the image plane

Option 2: Average Importance Compositing –Compute sum of object importances along a ray –Each surface point intersected by the ray is assigned a sparseness level based on the ratio of its importance to the sum of all intersected surface importances Importance Compositing

Average Importance Compositing Efficiency of implementation? –Use binary object footprints Artifacts: jaggy transitions –Enlarge and smooth footprints

Levels of Sparseness Given a voxel’s level of sparseness, how should it be rendered? –With MImP, render as solid or not at all –With Avg. Importance Compositing, more choices Color and Opacity Modulation Screen-Door Transparency Volume Thinning

Increase the opacity and possibly saturation of a voxel with increasing importance –Is playing with the color confusing? Color and Opacity Modulation

Screen-Door Transparency Sparse surfaces are rendered as the fibers in a quadrilateral mesh –Higher sparseness level results in larger (coarser) mesh weave Advantages/Disadvantages? –Depth perception –Distraction

Volume Thinning Render objects using a set of iso-surfaces The number of iso-surface voxels to render per object depends on the sparsity level of the object

Evaluation Show rendered results for the Gecko and Monster datasets All rendering off-line No quantitative evaluation No demonstration for the motivating problem: liver

Evaluation Several methods were presented, it would be nice to know which work the best Would require human perception experiments –Task: plan a cutting path for removal of a liver tumor that avoids major vessels Try it using MImP, Opacity Modulation, Screen Door, and Volume Thinning Do people perform faster or more reliably using one of the types? Your prediction?

Evaluation Second consideration: –Path planning is an interactive task –Would like to rotate camera & change viewpoint Which methods might be implemented in real- time?

Conclusion Have not addressed half the problem: how to assign importance to objects –Application dependent, but need automated methods

Conclusion Interesting, but incomplete work –Should be evaluated, validated Most interesting idea is MImP with conical cut-out –Don’t have to use ray casting, although the authors do –Consider volume splatting Avg. Importance Compositing methods likely to remain off-line rendering options for the near future

Discussion Questions Consider applying this to visualization of a building volume (3D blueprints). 1. How might you assign importance? 2. Efficiency considerations aside, which of the rendering methods would be most visually effective?

Discussion Questions What if you had a dataset that included air flow velocity for the volume, and you were interested in understanding the operation of the circulation system? 1. How might you assign importance? 2. Efficiency considerations aside, which of the rendering methods would be most visually effective?

Discussion Questions Implementation: –Could any of the methods described be implemented using the traditional forward- rendering graphics pipeline? How, or why not? –What about implementation with a shading language? A Z-Buffer type of approach for importance sorting?