GPU Supported Haptic Device Integrated Dental Simulation Environment

Size: px
Start display at page:

Download "GPU Supported Haptic Device Integrated Dental Simulation Environment"

Transcription

1 GPU Supported Haptic Device Integrated Dental Simulation Environment Varlık Kılıç 1 Umut Koçak 2 E. İlhan Konukseven 3 Erkan Mumcuoğlu 4 Department of Mechanical Engineering Department of Health Informatics Department of Mechanical Engineering Department of Health Informatics ABSTRACT This study aims to construct a haptic device integrated virtual reality environment for simulating dental treatment operations. In this environment, it is aimed to combine GPU based graphical rendering and haptic rendering. By implementing graphical rendering on GPU, the quality and speed performance of the graphical rendering are enhanced and more CPU resource is dedicated to haptic rendering. However in order to compare the performances of the techniques, volume rendering and isosurface rendering techniques are implemented on both CPU and GPU. A data pre-processing method is introduced for reducing the computational load. In order to display multiple volumetric objects using the ray casting method, per pixel depth buffer modification is implemented. A haptic rendering method depends on density gradient vectors is also proposed for interacting with volumetric data. Keywords: haptic, GPU, ray-casting, dentistry education, virtual reality. 1 INTRODUCTION Recent developments in haptic device technology and intensive research on the field triggered an evolutionary approach to vocational education technologies. Especially, in the fields where hands on training is not applicable or ethical, e.g. medicine and dentistry, haptic applications promise experienced and high skilled trainees. In [1], a haptic device integrated virtual environment was constructed to design pre-surgical bone implants. A VRsimulation system for educating surgeons of the temporal bone milling processes was presented in [2, 3]. In the study [4], computationally efficient algorithms for the real time simulation of minimally invasive surgical (MIS) procedures were presented. A direct volume rendering technique, which supports low latency real time visual feedback in parallel with physical simulation on commodity graphics platforms, was developed in the study [5]. The papers [6, 7] describe a framework for training-oriented simulation of temporal bone surgery. Especially, in the field of dentistry, there exist several ongoing and completed projects. In the study [8], a virtual dental environment to realize stable and realistic cutting simulation using an impedance display haptic device and microcomputer was proposed. A force feedback dental surgical simulator was designed to be a regular part of the dental curriculum by providing a more uniform educational experience and superior performance feedback for the students than traditional training methods in another study [9]. A patented product [10] exists in the market which provides a haptic integrated virtual environment to train dentistry students on a single tooth. 1 varlik@metu.edu.tr 2 kocak@ii.metu.edu.tr 3 konuk@metu.edu.tr 4 mumcuoglu@ii.metu.edu.tr Although the studies mentioned above have very similar aims and the volumetric medical data used in these studies have quite similar structure, the techniques used for graphical and haptic rendering differ. However it is possible to classify the previously used graphical rendering techniques in two parts: surface-based rendering and volume rendering. In the surface-based rendering, the main goal is to draw polygons representing an iso-surface inside the volumetric data. On the other hand, volume rendering technique depends on the idea of blending the colors of whole voxels in the volume. There are several techniques of volume and surface-based rendering which can be implemented on either CPU or GPU (Graphical Processing Unit). The haptic rendering techniques used by the researchers of the previous studies mentioned above can also be classified into two categories: surface-based and volume based haptic rendering. The surface-based haptic rendering utilizes the stiffness and damping of the surfaces to determine reaction forces and feedback to the haptic device. On the other hand, volume based haptic rendering methods utilizes the material properties of the interacted voxels to determine forces. This study combines GPU and CPU based graphical rendering techniques and volume based haptic rendering to construct a haptic device integrated virtual reality environment for simulating dental treatment. In section 2, the data structures used to optimize the performance of the overall simulation environment are discussed. Section 3 explains the data modification technique which represents the milling operation of tooth. Volume based haptic rendering method used to evaluate and feedback the reaction forces between tooth and tool to the haptic device is presented in section 4. Section 5 is devoted to explain the CPU based iso-surface and volume rendering and GPU based iso-surface and volume rendering techniques by ray-casting method. Results and conclusions of the study are discussed in section 6 and 7. 2 DATA REPRESENTATION The data structure used to represent the tooth and the tool is critical to achieve a real time haptic and graphical rendering. To optimize the performance of the simulation environment the following data structures are used. Tooth Data: The tooth data is stored in a 3D voxel array. Each voxel holds a scalar density value and a gradient vector that keeps the direction and magnitude of the density gradient. This structure allows constant time access to the density and gradient information of the voxels collided or occupied by the tool. Tool Data: A mathematical function that defines the volume inside or outside of the tool may be used to determine if a tooth voxel is occupied or not as the tool center manipulated inside the workspace. This representation limits the use of tools that has irregular geometry. Moreover it

2 necessitates the use of a bounding box around the tool center and traversal of all voxels inside this box whether the voxels satisfy the mathematical function or not and as a result the running speed is reduced. The data structure used to represent tooth data may also be used for the tool. Even if this enables use of irregularly shaped tools, the traversal of all voxels in the 3D voxel array is still necessary to detect any tool-tooth collusion. Also, for the slender tool geometries, there exists a large number of empty voxels in the 3D voxel array which will cause redundant memory usage. Therefore, a one dimensional integer array is preferred to store the tool data. Since the tool center is controlled and updated through the haptic device, the position vectors of tool voxels with respect to the tool center are indexed and stored. This structure not only allows the use of irregularly shaped tools but also provides a rapid and efficient traversal of tool voxels to detect any tool-tooth interaction. Moreover, the memory is allocated only for the voxels which are occupied by the tool; excess memory usage is avoided completely. Optimizing the data structure for the tooth and the tool is necessary but not sufficient to achieve real time rendering. Some supporting data structures explained below is used to maximize the rendering speed. Modified Voxels List: During traversal of tool voxels to detect any tool-tooth collusion the density and the density gradient vector of the collided tooth voxels are updated. However, the marching cubes algorithm [11], used to render the iso-surfaces on CPU, needs to be called after all of the modifications in density and gradient data are completed. Also it is not efficient to call marching cubes algorithm for the whole data in terms of running speed. Thus any voxel that faces a modification in density or gradient data is added to this modified voxel list and marching cubes algorithm is recalled only for these voxels. The list is deleted after the marching cubes algorithm has succeeded. This data structure is not employed for the other rendering techniques used in this study. Surface Display List: This data structure holds triangle list corresponding to each voxel if iso-surface rendering technique on CPU is used for graphical rendering. This structure is a one dimensional hash table that holds the display lists of triangles corresponding to the voxels that the iso-surface is passing through. The triangles of the iso-surface passing through a voxel are compiled in a display list and this display list is added to the Surface Display List with an index generated using 3D voxel coordinates. This structure provides compact memory usage by avoiding no iso-surface passing voxels and enables fast access to the triangle lists for updating the surface during data modification. This data structure is not employed for the techniques other than iso-surface rendering. Density Texture: this data structure is used to convert 3D tooth data to 1D array and to bind it as a 3D texture for volume rendering on CPU. The format of the data is RGBA, in which red, green blue and alpha channels are same as the density of the corresponding voxel. Gradient Texture: this data structure is also used to convert 3D gradient data to 1D array and to bind it as a 3D texture for volume rendering on CPU. Moreover it is used in haptic force evaluation since this data is not affected in the data modification step unlike the gradient vector component of tooth data. However it is updated at the end of the data modification step. The format of the data is RGBA, in which red, green, blue channels correspond to the x, y, z components of the gradient respectively and Alpha channel is the magnitude of the gradient vector of the corresponding voxel. Density SubTexture: this is a 1D array which is used to locally update 3D texture corresponding tooth density for volume rendering on CPU. The format of the data is the same as Density Texture s. Gradient SubTexture: this is a 1D array which is used to locally update 3D texture corresponding tooth density gradient for volume rendering on CPU. The format of the data is the same as Gradient Texture s. GPU Texture: this data structure is 1D array and it is used to transfer the density and density gradient components of the voxels as a 3D texture to the fragment programs, iso-surface and volume rendering on GPU, running on graphics hardware. The format of the data is RGBA, in which red, green, blue channels correspond to the x, y, z components of the gradient vector respectively and alpha channel is the density of the corresponding voxel. GPU SubTexture: this is a 1D array which is used to locally update 3D texture corresponding tooth density and density gradient components of voxels for volume rendering on GPU. The format of the data is the same as GPU Texture s. readtoolpositionrotation for each ToolData voxel if collided with a non-empty ToothData voxel set ToothData voxel density to 0 correct neighboring ToothData voxels gradients if iso-surface rendering on CPU add voxel and neighbors to ModifiedVoxelsList else update modification area bounding box limits read density gradient vector from GradientTexture add to tool modification force read density gradient vector from GradientTexture add to tool contact force if iso-surface rendering on CPU for each ModifiedVoxelList voxels update GradientTexture if a display list exists in SurfaceDisplayList delete the display list call MarchingCubes if a triangle list ocuured compile and add to the SurfaceDisplayList delete ModifiedVoxelList else if volume rendering on CPU for each voxel in modification area update GradientTexture update DensityTexture update GradientSubtexture and bind to 3D texture update DensitySubtexture and bind to 3D texture else if graphical rendering on GPU for each voxel in modification area update GradientTexture update GPUTexture update GPUSubTexture and bind to 3D texture total tool force = scale1 * tool contact force total tool force += scale2 * tool modification force render total tool force to haptic device Figure 1: Pseudo code for data modification loop 3 DATA MODIFICATION Data modification method is also a critical issue which affects the speed performance and display quality of the simulation directly. In order to achieve a realistic simulation environment, it is not possible to define a unique modification method which is optimum for all graphical rendering techniques. Instead the data modification method is conditioned to use data structures of the graphical rendering technique in use. The main idea of the presented pseudo code in Figure 1 for data modification is updating the Tooth Data, evaluating

3 force feedback and conducting the necessary updates in the corresponding data structures of the graphical rendering technique in use. During data modification, it is aimed to reduce the tooth voxel density which is collided by tool voxels to zero. However as the tool traverse inside the tooth data, the density of a tooth voxel is set to zero when tool voxel center crosses the tooth voxel border. This fact results in sudden density changes which is not realistic. To smooth density decrease, the ratio of tooth tool voxel collision is evaluated by trilinear interpolation using tool voxel center position and center of 8 neighboring tooth voxels, and the density decrease, modification ratio, of the tooth voxel is calculated by scaling the tooth voxel density by this ratio. 4 HAPTIC RENDERING In order to provide a realistic force feedback, two kinds of forces are implemented. First one is the contact force and represents the surface to surface interaction. And the second one is the modification force that represents the resistance of the material to modification. The well-known spring model is not suitable to evaluate the contact forces since the data is kept as 3D density information. The location of the surface (thus the elastic deformation of the surface due to tool interaction) cannot be evaluated. However at the tooth surfaces the density gradient has relatively greater values due to sudden density changes. Moreover this is valid for the voxels in the neighborhood of the surface, since the density gradient of the voxels are calculated by using a 5x5x5 volumetric kernel. This situation is presented for 1D case in Figure 2. In the Figure 2a, the tool is approaching to a nonempty voxel and it faces with an increasing magnitude of density gradient vector. The direction of the density gradient vector that the tool faces is normal to tooth face and is towards inside the tooth. This study utilizes this fact to model material stiffness and the vectored sum of gradient vectors at the tooth voxels(empty or not empty) occupied by the tool voxels is used to evaluate the contact force by multiplying a negative scale factor. Although a 5x5x5 volumetric kernel is used to evaluate gradient vectors at tooth voxels, neighboring tooth voxels may have distinct gradient vectors due to the discrete data. This fact may cause sudden changes in the tool contact force especially when a tool voxel cross tooth voxel border. To avoid this artifact, the tooth data gradient vector at the tool voxel center is evaluated by trilinear interpolation using the gradient vectors of 8 neighboring tooth voxel of tool center position. Similarly, the modification force is evaluated by summing the gradient vectors of the tooth voxels modified by the tool voxel, Figure 2b. However during this summation the gradient vectors are scaled with the modification ratio discussed in section 3. Then the total modification force is scaled by a negative scale factor, which represents the resistance of the material to modification. However the scale factors used to evaluate contact force and modification force are distinct but both negative. (a) (b) Figure 2: 1D representation of density, density gradient around the traveling tool 5 GRAPHIC RENDERING Mainly two distinct graphical rendering approaches are implemented to render the volumetric tooth data to compare speed performance. First approach is the ray casting [12, 13] on GPU and includes iso-surface and volume rendering techniques by ray casting. As a second approach, marching cubes [11] based iso-surface and volume rendering techniques are implemented on CPU. 5.1 Ray Casting on GPU Ray casting [12, 13] method depends on the idea of sending rays from optic center of the camera through each pixel on the image plane. When the stopping condition is satisfied the ray is stopped. The color of the pixel is decided according to the data gathered on the ray s path during traversal. This approach may be utilized to display both surface and volumetric data and it provides better visualization than the classical approaches in existence of shiny surfaces. However, because of the fact that the standard graphics hardware does not have support for rendering the volumetric data directly, the raytracing method is one of the most commonly used techniques to display volumetric data. In this study, to increase the realism of the scene, two distinct fragment programs are developed. These two fragment programs implements the ray casting method to display the volumetric data which is stored in the GPU Texture structure. The first fragment program draws iso-surfaces and the second one displays the whole volumetric data by blending.

4 5.1.1 IsoSurface by Ray Casting on GPU The main idea of this fragment program developed is to draw a bounding box covering the 3D texture in the display loop. The colors and depth values of each pixel on the surfaces of this bounding box are set by casting a ray from the corresponding pixel into the 3D texture in the direction from camera to the pixel. The ray casting operation is stopped when the density value stored in the alpha channel of the GPU Texture just crosses the specified iso-value, and the color of the pixel is set to a specified value by an opacity value of 1. Then pixel based Phong lighting model is applied to determine the diffuse and specular components of the light according to the gradient information gathered from the RGB channel of the GPU Texture. Lastly the depth value of the pixel is corrected according to the z - value of the final ray position which is evaluated using the following equation; 1/ z 1/ F d = 1 (1) 1/ N 1/ F Where, d is the depth value between 0(closest) and 1(farthest) and is written to the depth buffer, z is the final position of the ray, F is the far plane distance and N is the near plane distance. Figure 3: Screenshot of two intersecting volumetric tooth objects rendered by iso-surface ray-casting on GPU. In the case of no iso-value crossing, the color of the pixel is set to black with an alpha value of 0 and the depth is set to the maximum depth value 1. This provides the ability of displaying several intersecting or non-intersecting volumetric objects in the same scene, by applying the ray casting operation independently and allows keeping the volumetric data of the objects in distinct 3D textures (Figure 3) Blending by Ray Casting on GPU Similar to the preceding fragment program, the aim of this one is displaying volumetric data by ray-casting operation. However, instead of drawing iso-surfaces, this fragment program calculates the color of the pixels by blending a specified color value scaled by the density values of GPU Texture as the ray travels in the volume. The depth value of the pixel is corrected according to the z value of the ray when it first faces a non-zero density value by using equation (1). The diffuse color component is added to the final blended color value according to the gradient vector at the position where the depth is set. Lastly the ray-casting operation is stopped when the blended alpha value saturates. 5.2 CPU-based approaches In order to compare the results of the rendering techniques implemented using fragment programs on GPU, a surface based and a volume rendering technique are implemented on CPU. The iso-surface based rendering technique is achieved by the well-known marching cubes [11] algorithm with some modifications to update only the modified zone. The volume rendering technique is based on rendering the volumetric data by using 3D texture, multi-texturing, blending and slicing Iso-Surface The well-known marching cubes algorithm [11] is used to determine the iso-surface corresponding to the current tooth surface. However to speed up the rendering, this algorithm is modified to run only for the voxels in the Modified Voxels List. The determined triangles by the marching cubes algorithm, corresponding to the iso-surfacing through a voxel, are compiled in a display list and added to the Surface Display List hash table with an index generated using the 3D coordinates of the tooth voxel. The normal vectors of the vertices of the triangles are evaluated by trilinear interpolation using the gradient component of the Tooth Data and vertex coordinates of the generated triangles. In the display loop, the display lists in the Surface Display List are rendered Volume rendering In order to render the scene graphically by using volume rendering technique, 3D textures; Density Texture and Gradient Texture are used. View-aligned slices [14], normal vectors of which are kept constant towards the camera as the camera view changes, are drawn by taking color values from the corresponding coordinates of rotated 3D textures. In order to achieve a realistic lighting, lighting should be calculated for each pixel in the slices drawn, which will prevent the rendering to be real-time. Therefore multitexturing [15] property of OpenGL is used. At first Gradient Texture is mapped to the polygon by calculating the dot product of the Gradient Texture s value and polygon s color value. Then this value is multiplied with the density value of the corresponding voxel from Density Texture. To achieve a realistic 3D view of the tooth, the blending is applied while the slices are drawn back to front. However to speed up the rendering, Density SubTexture and Gradient SubTexture which only include the density and gradient information of the local deformation zone are used to update global 3D textures. Moreover, the number of slices is reduced [16] in case of a camera or object rotation to keep the rendering rate near the real time limit. 6 IMPLEMENTATION AND RESULTS This haptic device integrated dental surgery simulation environment is developed and tested on a Pentium IV 3.2 GHz PC with 2 GB RAM, NVIDIA GeForce 6600 GT graphics hardware and Windows XP operating system. The haptic device used in the system is Sensable Phantom Omni which has 3 DOF force feedback capability.

5 Figure 4: A screenshot during dental operation Two different tooth data [17] with different resolutions are used to simulate dental operations in the developed virtual environment. First one is composed of 256x256x161 voxels and the second one has 128x128x80 voxels and obtained by down sampling the first. In order to increase the speed performance, a data pre-processing step is added to eliminate the empty regions of the data by finding the tightest bounding box during data loading. Table 1, 2 shows the performances of the different methods in a view port with a size of 512x512 pixels in frame per second (fps). The values on the left of the slash show the speed without modification, the right ones shows the speed during modification. Table 1: Frame rates of various graphical rendering techniques for different tool and data size, without pre-processing of data Data Size 128x128x80 256x256x161 Tool Size 10x10x10 16x16x16 10x10x10 16x16x16 CPU Iso 133/ /77 35/29 35/22 CPU Vol 6/6 6/5 2/2 2/1 GPU Iso 13/13 13/13 6/6 6/6 GPU Vol 4/4 4/4 1/1 1/1 that the number of slices drawn is doubled and the act of rotating a larger texture. This shows that for larger data sizes, the usage of GPU based methods will be advantageous. Moreover, according to the graphical results presented in Figure 5, one can state that GPU based ray casting approaches give better image quality due per pixel color and lighting calculation. When compared with the results presented in the previous studies [12, 13], it is obvious that an improvement in speed is achieved if the used hardware and data size are taken into account. The presented graphical outcomes, in Figure 5, show that almost the same rendering quality is obtained. Moreover the speed of GPU based methods is not affected during modification. This yields more stable and robust haptic force feedback. The haptic rendering strategy results in realistic force feedback for representing the surface stiffness during tooltooth contact and for rendering the modification force. However, the change in tool position between two subsequent frames may become large if the frame rate over tool speed ratio is low. In such a case, the force felt by the user exhibits an unrealistic, unstable and discontinuous behavior. Particularly, the tool can be positioned inside the tooth data without any resistive force by giving a sudden displacement to tool, if the gradient vectors of the tooth data around tool voxels for the two subsequent frames are zero. Or the discontinuity in resistance force due to rapid tool movements creates unstable vibrations. This problem obviously arises from low sampling rate of the tool position. It is observed that it is possible to reach higher tool speed without feeling unstable feedback force when the frame rate is high. This shows that for larger data sizes GPU based methods are advantageous since higher frame rates can be achieved Table 2: Frame rates of various graphical rendering techniques for different tool and data size, with pre-processing of data Data Size 128x128x80 256x256x161 Tool Size 10x10x10 16x16x16 10x10x10 16x16x16 CPU Iso 133/ /77 35/29 35/22 CPU Vol 21/21 21/21 8/5 8/4 GPU Iso 40/39 40/39 21/21 21/21 GPU Vol 10/10 10/9 5/5 5/5 The comparison of the results presented in Table 1 and 2 implies that the data pre-processing, which eliminates empty voxels of the data during data loading, creates a considerable improvement in the frame rates of all methods other than CPU Iso. The main reason is that the active size of the 3D texture used is directly reduced by the data preprocessing step and the size of 3D texture used in these methods determines the frame rates. The results presented in table 2 shows that the fastest algorithm is the CPU Iso which is actually marching cubes method. However, using two times larger data size reduces the speed of the marching cubes approximately 4 times, while the speeds of the GPU based methods are halved. The main reason for this outcome is that the ray casting method is affected by the change of size in only one dimension. However the resulting number of triangles in the marching cubes method is squared depending on surface area. Similarly in volume rendering on CPU, the speed is reduced more than 2 times, because of the fact a) b) c) d) Figure 5: Various Screenshots of the Haptic Device Integrated Dental Simulation Environment using a) iso-surface rendering on GPU, b) volume rendering on GPU, c) marching cubes on CPU and d) volume rendering on CPU.

6 7 CONCLUSION In this paper, it is tried to construct a haptic device integrated dental simulation environment. In order to achieve more realistic graphical representations of the simulation environment and to allocate more computational resources to haptic rendering, graphical rendering techniques are implemented on GPU. In the fragment programs developed per-pixel depth buffer modification is added to the standard ray casting methods. This allows displaying more than one intersecting or non-intersecting volumetric objects in the same scene without creating occlusions. With the addition of data pre-processing step, better speed performances are achieved. Also higher frame rates are obtained for GPU based ray tracing methods, if compared with the results presented in the previous studies [12, 13]. The comparison of the performance results of the CPU and GPU based rendering techniques implies that GPU based methods are less affected from the size of data. Moreover the data modification does not inhibit their performance. Considering these outcomes, one can state that the GPU based techniques is more suitable to be used with haptic rendering for large data sizes. Although a realistic haptic force feedback is achieved for tool-tooth contact and tooth modification forces at higher frame rate over tool speed ratios, the proposed haptic rendering strategy is not appropriate for evaluating the modification forces, because of the fact that the modification force is calculated after the modification. In fact the modification should be determined using the applied force as in real case. Thus modification strategy needs improvement. For further improvements in graphical and haptic rendering parallel processing strategy may be implemented to separate haptic and graphical rendering. Modification force evaluation for haptic rendering may be re-discussed considering the principles of metal cutting. To further speed up the simulation environment, the graphical rendering strategy may be changed not to clear depth and color bits in case of no camera and object transformation and updating only the pixels corresponding to a smaller volumetric region around the modification area. ACKNOWLEDGEMENTS This study is financially supported by The Scientific and Technological Research Council of Turkey (TUBITAK) (104S607 (SBAG-3072)) and conducted in - Computer Aided Design and Computer Aided Manufacturing Center (METU-CADCAM). REFERENCES [1] Scharver, C. Evenhouse, R. Johnson, A. Leigh, J, Pre-surgical Cranial Implant Design using the PARIS Prototype, Virtual Reality, 2004, pp [2] Eriksson M., Flemmer H. and Wikander J., Haptic Simulation of the Milling Process in Temporal Bone Operations, MMVR 13 Medicine Meets Virtual Reality Conference, Jan [3] Eriksson M., Flemmer H. and Wikander J., A Haptic and Virtual Reality Skull Bone Surgery Simulator, World Haptics Conference, Pisa, Mar [4] Kim, J., De, S. and Srinivasan, M.A., Computationally efficient techniques for real time surgical simulation with force feedback, Proc. of IEEE VR2002 Conference, Florida, Mar [5] Agus M., Giachetti A., Gobbetti E., Zanetti G., and Zorcolo A., Hardware-Accelerated Dynamic Volume Rendering for Real-Time Surgical Simulation, Workshop in Virtual Reality Interactions and Physical Simulations (VRIPHYS 2004), Mexico, September 2004, pp [6] Morris D, Sewell C, Blevins N, Barbagli F, Salisbury K., A Collaborative Virtual Environment for the Simulation of Temporal Bone Surgery, Proceedings of MICCAI 2004, Springer-Verlag Lecture Notes in Computer Science Volumes 3216 and 3217 [7] Morris D, Girod S, Barbagli F, Salisbury K., An Interactive Simulation Environment for Craniofacial Surgical Procedures, MMVR 13 Medicine Meets Virtual Reality Conference, Jan [8] Wang D., Zhang Y., Wang Y., Lee Y., Lu P., Wang Y., "Cutting on Triangle Mesh: Local Model-Based Haptic Display for Dental Preparation Surgery Simulation," IEEE Transactions on Visualization and Computer Graphics, vol. 11, no. 6, pp , Nov/Dec, [9] Thomas G., Johnson L., Dow S., Stanford C., The design and testing of a force feedback dental simulator, Computer Methods and Programs in Biomedicine, Volume 64, Number 1, January 2001, pp (12). [10] Virtual Reality Dental Training System (VRDTS), Feb [11] Lorensen W.E., Cline H.E., Marching cubes: a high resolution 3D surface construction algorithm, Computer Graphics, 21(4), July 1987, pp [12] Stegmaier S., Strengert M., Klein T., and Ertl T. A Simple and Flexible Volume Rendering Framework for Graphics-Hardware-based Raycasting, Volume Graphics 2005, pp [13] Klein T., Strengert M., Stegmaier S., and Ertl T., Exploiting Frameto-Frame Coherence for Accelerating High-Quality Volume Raycasting on Graphics Hardware, Procceedings of IEEE Visualization '05, pages , IEEE, [14] Cabral B., Cam N., Foran J., Accelerated volume rendering and tomographic reconstruction using texture mapping hardware, 1994 Symposium on Volume Visualization, 1994, pp [15] Cabral B., Cam N., and Foran J., Accelerated Volume Rendering and Tomographic Reconstruction Using Texture Mapping Hardware, ACM Symp. on Vol. Vis., [16] Orhun K., Interactive Volume Rendering For Medical Images, Using Pc Graphics Hardware, MSc. Thesis, METU Ankara TURKEY, [17] SenseGraphics AB,

A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data.

A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data. A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data. Magnus ERIKSSON a, Mark DIXON b and Jan WIKANDER a. a The Mechatronics Lab/Machine Design, KTH, Stockholm, Sweden b SenseGraphics AB,

More information

Volume-based Haptic Model for Bone-drilling

Volume-based Haptic Model for Bone-drilling International Conference on Control, Automation Systems 2008 Oct. 14-17, 2008 in COEX, Seoul, Korea Volume-based Haptic Model for Bone-drilling Kimin Kim 1 Ye-Seul Park 2, Jinah Park 3 1, 2, 3 Information

More information

Surgical Cutting on a Multimodal Object Representation

Surgical Cutting on a Multimodal Object Representation Surgical Cutting on a Multimodal Object Representation Lenka Jeřábková and Torsten Kuhlen Virtual Reality Group, RWTH Aachen University, 52074 Aachen Email: jerabkova@rz.rwth-aachen.de Abstract. In this

More information

An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering

An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering T. Ropinski, F. Steinicke, K. Hinrichs Institut für Informatik, Westfälische Wilhelms-Universität Münster

More information

First Steps in Hardware Two-Level Volume Rendering

First Steps in Hardware Two-Level Volume Rendering First Steps in Hardware Two-Level Volume Rendering Markus Hadwiger, Helwig Hauser Abstract We describe first steps toward implementing two-level volume rendering (abbreviated as 2lVR) on consumer PC graphics

More information

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

Hardware Accelerated Volume Visualization. Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences Hardware Accelerated Volume Visualization Leonid I. Dimitrov & Milos Sramek GMI Austrian Academy of Sciences A Real-Time VR System Real-Time: 25-30 frames per second 4D visualization: real time input of

More information

Calculating the Distance Map for Binary Sampled Data

Calculating the Distance Map for Binary Sampled Data MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.merl.com Calculating the Distance Map for Binary Sampled Data Sarah F. Frisken Gibson TR99-6 December 999 Abstract High quality rendering and physics-based

More information

Clipping. CSC 7443: Scientific Information Visualization

Clipping. CSC 7443: Scientific Information Visualization Clipping Clipping to See Inside Obscuring critical information contained in a volume data Contour displays show only exterior visible surfaces Isosurfaces can hide other isosurfaces Other displays can

More information

Volume Illumination & Vector Field Visualisation

Volume Illumination & Vector Field Visualisation Volume Illumination & Vector Field Visualisation Visualisation Lecture 11 Institute for Perception, Action & Behaviour School of Informatics Volume Illumination & Vector Vis. 1 Previously : Volume Rendering

More information

Volume Illumination, Contouring

Volume Illumination, Contouring Volume Illumination, Contouring Computer Animation and Visualisation Lecture 0 tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Overview -

More information

Efficient Rendering of Glossy Reflection Using Graphics Hardware

Efficient Rendering of Glossy Reflection Using Graphics Hardware Efficient Rendering of Glossy Reflection Using Graphics Hardware Yoshinori Dobashi Yuki Yamada Tsuyoshi Yamamoto Hokkaido University Kita-ku Kita 14, Nishi 9, Sapporo 060-0814, Japan Phone: +81.11.706.6530,

More information

Visualizer An implicit surface rendering application

Visualizer An implicit surface rendering application June 01, 2004 Visualizer An implicit surface rendering application Derek Gerstmann - C1405511 MSc Computer Animation NCCA Bournemouth University OVERVIEW OF APPLICATION Visualizer is an interactive application

More information

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

lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces lecture 21 volume rendering - blending N layers - OpenGL fog (not on final exam) - transfer functions - rendering level surfaces - 3D objects Clouds, fire, smoke, fog, and dust are difficult to model with

More information

Adaptive Point Cloud Rendering

Adaptive Point Cloud Rendering 1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13

More information

Modeling the Virtual World

Modeling the Virtual World Modeling the Virtual World Joaquim Madeira November, 2013 RVA - 2013/2014 1 A VR system architecture Modeling the Virtual World Geometry Physics Haptics VR Toolkits RVA - 2013/2014 2 VR object modeling

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

More information

machine design, Vol.8(2016) No.4, ISSN pp

machine design, Vol.8(2016) No.4, ISSN pp machine design, Vol.8(2016) No.4, ISSN 1821-1259 pp. 165-170 Research paper FREE FORM SHAPE MODELLING BY HAND MOVEMENT IN VIRTUAL ENVIRONMENT Zoran MILOJEVIĆ 1, * - Slobodan TABAKOVIĆ 1 - Milan ZELJKOVIĆ

More information

2.11 Particle Systems

2.11 Particle Systems 2.11 Particle Systems 320491: Advanced Graphics - Chapter 2 152 Particle Systems Lagrangian method not mesh-based set of particles to model time-dependent phenomena such as snow fire smoke 320491: Advanced

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 15, 2003 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Haptic and Visual Rendering of Virtual Bone Surgery: A Physically Realistic Voxel-Based Approach

Haptic and Visual Rendering of Virtual Bone Surgery: A Physically Realistic Voxel-Based Approach HAVE 2008 - IEEE International Workshop on Haptic Audio Visual Environments and their Applications Ottawa, Canada, 18-19 October 2008 Haptic and Visual Rendering of Virtual Bone Surgery: A Physically Realistic

More information

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University 15-462 Computer Graphics I Lecture 21 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

A Bandwidth Effective Rendering Scheme for 3D Texture-based Volume Visualization on GPU

A Bandwidth Effective Rendering Scheme for 3D Texture-based Volume Visualization on GPU for 3D Texture-based Volume Visualization on GPU Won-Jong Lee, Tack-Don Han Media System Laboratory (http://msl.yonsei.ac.k) Dept. of Computer Science, Yonsei University, Seoul, Korea Contents Background

More information

Scalar Visualization

Scalar Visualization Scalar Visualization 5-1 Motivation Visualizing scalar data is frequently encountered in science, engineering, and medicine, but also in daily life. Recalling from earlier, scalar datasets, or scalar fields,

More information

Previously... contour or image rendering in 2D

Previously... contour or image rendering in 2D Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line

More information

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

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 2.11] Jernej Barbic University of Southern California Scientific Visualization

More information

Visualization. CSCI 420 Computer Graphics Lecture 26

Visualization. CSCI 420 Computer Graphics Lecture 26 CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 11] Jernej Barbic University of Southern California 1 Scientific Visualization

More information

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

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization Volume visualization Volume visualization Volumes are special cases of scalar data: regular 3D grids of scalars, typically interpreted as density values. Each data value is assumed to describe a cubic

More information

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker

CMSC427 Advanced shading getting global illumination by local methods. Credit: slides Prof. Zwicker CMSC427 Advanced shading getting global illumination by local methods Credit: slides Prof. Zwicker Topics Shadows Environment maps Reflection mapping Irradiance environment maps Ambient occlusion Reflection

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 60-0) Isosurfaces & Volume Rendering Dr. David Koop Fields & Grids Fields: - Values come from a continuous domain, infinitely many values - Sampled at certain positions

More information

CHAPTER 1 Graphics Systems and Models 3

CHAPTER 1 Graphics Systems and Models 3 ?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

More information

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

Scalar Data. Visualization Torsten Möller. Weiskopf/Machiraju/Möller Scalar Data Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Basic strategies Function plots and height fields Isolines Color coding Volume visualization (overview) Classification Segmentation

More information

CIS 467/602-01: Data Visualization

CIS 467/602-01: Data Visualization CIS 467/60-01: Data Visualization Isosurfacing and Volume Rendering Dr. David Koop Fields and Grids Fields: values come from a continuous domain, infinitely many values - Sampled at certain positions to

More information

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

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Rendering Computer Animation and Visualisation Lecture 9 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Volume Data Usually, a data uniformly distributed

More information

Occlusion Detection of Real Objects using Contour Based Stereo Matching

Occlusion Detection of Real Objects using Contour Based Stereo Matching Occlusion Detection of Real Objects using Contour Based Stereo Matching Kenichi Hayashi, Hirokazu Kato, Shogo Nishida Graduate School of Engineering Science, Osaka University,1-3 Machikaneyama-cho, Toyonaka,

More information

Multipass GPU Surface Rendering in 4D Ultrasound

Multipass GPU Surface Rendering in 4D Ultrasound 2012 Cairo International Biomedical Engineering Conference (CIBEC) Cairo, Egypt, December 20-21, 2012 Multipass GPU Surface Rendering in 4D Ultrasound Ahmed F. Elnokrashy 1,2, Marwan Hassan 1, Tamer Hosny

More information

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

GPU-based Volume Rendering. Michal Červeňanský GPU-based Volume Rendering Michal Červeňanský Outline Volume Data Volume Rendering GPU rendering Classification Speed-up techniques Other techniques 2 Volume Data Describe interior structures Liquids,

More information

Introduction to 3D Graphics

Introduction to 3D Graphics Graphics Without Polygons Volume Rendering May 11, 2010 So Far Volumetric Rendering Techniques Misc. So Far Extended the Fixed Function Pipeline with a Programmable Pipeline Programming the pipeline is

More information

CSC Computer Graphics

CSC Computer Graphics // CSC. Computer Graphics Lecture Kasun@dscs.sjp.ac.lk Department of Computer Science University of Sri Jayewardanepura Polygon Filling Scan-Line Polygon Fill Algorithm Span Flood-Fill Algorithm Inside-outside

More information

Photorealistic 3D Rendering for VW in Mobile Devices

Photorealistic 3D Rendering for VW in Mobile Devices Abstract University of Arkansas CSCE Department Advanced Virtual Worlds Spring 2013 Photorealistic 3D Rendering for VW in Mobile Devices Rafael Aroxa In the past few years, the demand for high performance

More information

Volume Graphics Introduction

Volume Graphics Introduction High-Quality Volume Graphics on Consumer PC Hardware Volume Graphics Introduction Joe Kniss Gordon Kindlmann Markus Hadwiger Christof Rezk-Salama Rüdiger Westermann Motivation (1) Motivation (2) Scientific

More information

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic.

Lets assume each object has a defined colour. Hence our illumination model is looks unrealistic. Shading Models There are two main types of rendering that we cover, polygon rendering ray tracing Polygon rendering is used to apply illumination models to polygons, whereas ray tracing applies to arbitrary

More information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time

More information

Interactive 3D Haptic Carving using Combined Voxels and Mesh

Interactive 3D Haptic Carving using Combined Voxels and Mesh HAVE 2008 IEEE International Workshop on Haptic Audio Visual Environments and their Applications Ottawa Canada, 18-19 October 2008 Interactive 3D Haptic Carving using Combined Voxels and Mesh Jeff Williams

More information

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang 4th International Conference on Sensors, Measurement and Intelligent Materials (ICSMIM 2015) Interaction of Fluid Simulation Based on PhysX Physics Engine Huibai Wang, Jianfei Wan, Fengquan Zhang College

More information

CS 4620 Program 3: Pipeline

CS 4620 Program 3: Pipeline CS 4620 Program 3: Pipeline out: Wednesday 14 October 2009 due: Friday 30 October 2009 1 Introduction In this assignment, you will implement several types of shading in a simple software graphics pipeline.

More information

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1

graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline computer graphics graphics pipeline 2009 fabio pellacini 1 graphics pipeline sequence of operations to generate an image using object-order processing primitives processed one-at-a-time

More information

Pipeline Operations. CS 4620 Lecture 10

Pipeline Operations. CS 4620 Lecture 10 Pipeline Operations CS 4620 Lecture 10 2008 Steve Marschner 1 Hidden surface elimination Goal is to figure out which color to make the pixels based on what s in front of what. Hidden surface elimination

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 60-01) Scalar Visualization Dr. David Koop Online JavaScript Resources http://learnjsdata.com/ Good coverage of data wrangling using JavaScript Fields in Visualization Scalar

More information

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

CSE 167: Lecture #17: Volume Rendering. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 CSE 167: Introduction to Computer Graphics Lecture #17: Volume Rendering Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Thursday, Dec 13: Final project presentations

More information

DiFi: Distance Fields - Fast Computation Using Graphics Hardware

DiFi: Distance Fields - Fast Computation Using Graphics Hardware DiFi: Distance Fields - Fast Computation Using Graphics Hardware Avneesh Sud Dinesh Manocha UNC-Chapel Hill http://gamma.cs.unc.edu/difi Distance Fields Distance Function For a site a scalar function f:r

More information

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17]

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17] 6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, 2011 9:05-12pm Two hand-written sheet of notes (4 pages) allowed NAME: 1 / 17 2 / 12 3 / 35 4 / 8 5 / 18 Total / 90 1 SSD [ /17]

More information

Mattan Erez. The University of Texas at Austin

Mattan Erez. The University of Texas at Austin EE382V: Principles in Computer Architecture Parallelism and Locality Fall 2008 Lecture 10 The Graphics Processing Unit Mattan Erez The University of Texas at Austin Outline What is a GPU? Why should we

More information

Practical Shadow Mapping

Practical Shadow Mapping Practical Shadow Mapping Stefan Brabec Thomas Annen Hans-Peter Seidel Max-Planck-Institut für Informatik Saarbrücken, Germany Abstract In this paper we propose several methods that can greatly improve

More information

Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping

Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping Computer Graphics (CS 543) Lecture 10: Soft Shadows (Maps and Volumes), Normal and Bump Mapping Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Shadow Buffer Theory Observation:

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] November 20, 2003 Doug James Carnegie Mellon University http://www.cs.cmu.edu/~djames/15-462/fall03

More information

Height Field Haptics

Height Field Haptics Height Field Haptics Kristin Potter kpotter@cs.utah.edu David Johnson dejohnso@cs.utah.edu School of Computing, University of Utah Elaine Cohen cohen@cs.utah.edu Abstract We present a system for haptically

More information

Surgery Simulation and Planning

Surgery Simulation and Planning Surgery Simulation and Planning S. H. Martin Roth Dr. Rolf M. Koch Daniel Bielser Prof. Dr. Markus Gross Facial surgery project in collaboration with Prof. Dr. Dr. H. Sailer, University Hospital Zurich,

More information

L10 Layered Depth Normal Images. Introduction Related Work Structured Point Representation Boolean Operations Conclusion

L10 Layered Depth Normal Images. Introduction Related Work Structured Point Representation Boolean Operations Conclusion L10 Layered Depth Normal Images Introduction Related Work Structured Point Representation Boolean Operations Conclusion 1 Introduction Purpose: using the computational power on GPU to speed up solid modeling

More information

Volume Rendering. Lecture 21

Volume Rendering. Lecture 21 Volume Rendering Lecture 21 Acknowledgements These slides are collected from many sources. A particularly valuable source is the IEEE Visualization conference tutorials. Sources from: Roger Crawfis, Klaus

More information

Programmable Shaders for Deformation Rendering

Programmable Shaders for Deformation Rendering Programmable Shaders for Deformation Rendering Carlos D. Correa, Deborah Silver Rutgers, The State University of New Jersey Motivation We present a different way of obtaining mesh deformation. Not a modeling,

More information

CS 4620 Midterm, March 21, 2017

CS 4620 Midterm, March 21, 2017 CS 460 Midterm, March 1, 017 This 90-minute exam has 4 questions worth a total of 100 points. Use the back of the pages if you need more space. Academic Integrity is expected of all students of Cornell

More information

2 Michael E. Leventon and Sarah F. F. Gibson a b c d Fig. 1. (a, b) Two MR scans of a person's knee. Both images have high resolution in-plane, but ha

2 Michael E. Leventon and Sarah F. F. Gibson a b c d Fig. 1. (a, b) Two MR scans of a person's knee. Both images have high resolution in-plane, but ha Model Generation from Multiple Volumes using Constrained Elastic SurfaceNets Michael E. Leventon and Sarah F. F. Gibson 1 MIT Artificial Intelligence Laboratory, Cambridge, MA 02139, USA leventon@ai.mit.edu

More information

Scalar Algorithms: Contouring

Scalar Algorithms: Contouring Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Last Lecture...

More information

Scalar Visualization

Scalar Visualization Scalar Visualization Visualizing scalar data Popular scalar visualization techniques Color mapping Contouring Height plots outline Recap of Chap 4: Visualization Pipeline 1. Data Importing 2. Data Filtering

More information

Pipeline Operations. CS 4620 Lecture 14

Pipeline Operations. CS 4620 Lecture 14 Pipeline Operations CS 4620 Lecture 14 2014 Steve Marschner 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives

More information

A GPU Accelerated Spring Mass System for Surgical Simulation

A GPU Accelerated Spring Mass System for Surgical Simulation A GPU Accelerated Spring Mass System for Surgical Simulation Jesper MOSEGAARD #, Peder HERBORG, and Thomas Sangild SØRENSEN # Department of Computer Science, Centre for Advanced Visualization and Interaction,

More information

Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware

Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware Fast Texture Based Form Factor Calculations for Radiosity using Graphics Hardware Kasper Høy Nielsen Niels Jørgen Christensen Informatics and Mathematical Modelling The Technical University of Denmark

More information

A Survey of Volumetric Visualization Techniques for Medical Images

A Survey of Volumetric Visualization Techniques for Medical Images International Journal of Research Studies in Computer Science and Engineering (IJRSCSE) Volume 2, Issue 4, April 2015, PP 34-39 ISSN 2349-4840 (Print) & ISSN 2349-4859 (Online) www.arcjournals.org A Survey

More information

Efficient Volumetric Ray Casting for Isosurface Rendering

Efficient Volumetric Ray Casting for Isosurface Rendering Efficient Volumetric Ray Casting for Isosurface Rendering Jae Jeong Choi 1 Byeong-Seok Shin 2 Yeong Gil Shin 1 Kevin Cleary 3 1. Department of Computer Science, Seoul National University, Seoul, Republic

More information

GPU-Accelerated Deep Shadow Maps for Direct Volume Rendering

GPU-Accelerated Deep Shadow Maps for Direct Volume Rendering Graphics Hardware (2006) M. Olano, P. Slusallek (Editors) GPU-Accelerated Deep Shadow Maps for Direct Volume Rendering Markus Hadwiger Andrea Kratz Christian Sigg Katja Bühler VRVis Research Center ETH

More information

Real-Time Voxelization for Global Illumination

Real-Time Voxelization for Global Illumination Lecture 26: Real-Time Voxelization for Global Illumination Visual Computing Systems Voxelization to regular grid Input: scene triangles Output: surface information at each voxel in 3D grid - Simple case:

More information

Ray Tracing Acceleration Data Structures

Ray Tracing Acceleration Data Structures Ray Tracing Acceleration Data Structures Sumair Ahmed October 29, 2009 Ray Tracing is very time-consuming because of the ray-object intersection calculations. With the brute force method, each ray has

More information

What is a Rigid Body?

What is a Rigid Body? Physics on the GPU What is a Rigid Body? A rigid body is a non-deformable object that is a idealized solid Each rigid body is defined in space by its center of mass To make things simpler we assume the

More information

A Shadow Volume Algorithm for Opaque and Transparent Non-Manifold Casters

A Shadow Volume Algorithm for Opaque and Transparent Non-Manifold Casters jgt 2008/7/20 22:19 page 1 #1 Vol. [VOL], No. [ISS]: 1?? A Shadow Volume Algorithm for Opaque and Transparent Non-Manifold Casters Byungmoon Kim 1, Kihwan Kim 2, Greg Turk 2 1 NVIDIA, 2 Georgia Institute

More information

Advanced GPU Raycasting

Advanced GPU Raycasting Advanced GPU Raycasting Henning Scharsach VRVis Research Center Vienna, Austria Abstract Modern GPUs offer a degree of programmability that opens up a wide field of applications far beyond processing millions

More information

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11 Pipeline Operations CS 4620 Lecture 11 1 Pipeline you are here APPLICATION COMMAND STREAM 3D transformations; shading VERTEX PROCESSING TRANSFORMED GEOMETRY conversion of primitives to pixels RASTERIZATION

More information

Order Independent Transparency with Dual Depth Peeling. Louis Bavoil, Kevin Myers

Order Independent Transparency with Dual Depth Peeling. Louis Bavoil, Kevin Myers Order Independent Transparency with Dual Depth Peeling Louis Bavoil, Kevin Myers Document Change History Version Date Responsible Reason for Change 1.0 February 9 2008 Louis Bavoil Initial release Abstract

More information

Physically-Based Laser Simulation

Physically-Based Laser Simulation Physically-Based Laser Simulation Greg Reshko Carnegie Mellon University reshko@cs.cmu.edu Dave Mowatt Carnegie Mellon University dmowatt@andrew.cmu.edu Abstract In this paper, we describe our work on

More information

Abstract. Introduction. Kevin Todisco

Abstract. Introduction. Kevin Todisco - Kevin Todisco Figure 1: A large scale example of the simulation. The leftmost image shows the beginning of the test case, and shows how the fluid refracts the environment around it. The middle image

More information

Three 6-DOF Haptic Algorithms Compared for Use in a Milling Surgery Simulator Prototype

Three 6-DOF Haptic Algorithms Compared for Use in a Milling Surgery Simulator Prototype TRITA-MMK 202:05 ISSN 400-79 ISRN/KTHMMK/R-2/05-SE Three 6-DOF Haptic Algorithms Compared for Use in a Milling Surgery Simulator Prototype Magnus G. Eriksson Stockholm 202 Technical Report Department of

More information

Volume Rendering with libmini Stefan Roettger, April 2007

Volume Rendering with libmini Stefan Roettger, April 2007 Volume Rendering with libmini Stefan Roettger, April 2007 www.stereofx.org 1. Introduction For the visualization of volumetric data sets, a variety of algorithms exist which are typically tailored to the

More information

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming Screen Space Ambient Occlusion TSBK03: Advanced Game Programming August Nam-Ki Ek, Oscar Johnson and Ramin Assadi March 5, 2015 This project report discusses our approach of implementing Screen Space Ambient

More information

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

Volume Illumination. Visualisation Lecture 11. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Illumination Visualisation Lecture 11 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Volume Illumination & Vector Vis. 1 Previously : Volume Rendering

More information

Applications of Explicit Early-Z Culling

Applications of Explicit Early-Z Culling Applications of Explicit Early-Z Culling Jason L. Mitchell ATI Research Pedro V. Sander ATI Research Introduction In past years, in the SIGGRAPH Real-Time Shading course, we have covered the details of

More information

Interactive Methods in Scientific Visualization

Interactive Methods in Scientific Visualization Interactive Methods in Scientific Visualization GPU Volume Raycasting Christof Rezk-Salama University of Siegen, Germany Volume Rendering in a Nutshell Image Plane Eye Data Set Back-to-front iteration

More information

A Study of Medical Image Analysis System

A Study of Medical Image Analysis System Indian Journal of Science and Technology, Vol 8(25), DOI: 10.17485/ijst/2015/v8i25/80492, October 2015 ISSN (Print) : 0974-6846 ISSN (Online) : 0974-5645 A Study of Medical Image Analysis System Kim Tae-Eun

More information

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26]

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Visualization Images are used to aid in understanding of data Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Tumor SCI, Utah Scientific Visualization Visualize large

More information

All the Polygons You Can Eat. Doug Rogers Developer Relations

All the Polygons You Can Eat. Doug Rogers Developer Relations All the Polygons You Can Eat Doug Rogers Developer Relations doug@nvidia.com Future of Games Very high resolution models 20,000 triangles per model Lots of them Complex Lighting Equations Floating point

More information

Computer Graphics and Visualization. What is computer graphics?

Computer Graphics and Visualization. What is computer graphics? CSCI 120 Computer Graphics and Visualization Shiaofen Fang Department of Computer and Information Science Indiana University Purdue University Indianapolis What is computer graphics? Computer graphics

More information

The Rasterization Pipeline

The Rasterization Pipeline Lecture 5: The Rasterization Pipeline (and its implementation on GPUs) Computer Graphics CMU 15-462/15-662, Fall 2015 What you know how to do (at this point in the course) y y z x (w, h) z x Position objects

More information

CS 325 Computer Graphics

CS 325 Computer Graphics CS 325 Computer Graphics 04 / 02 / 2012 Instructor: Michael Eckmann Today s Topics Questions? Comments? Illumination modelling Ambient, Diffuse, Specular Reflection Surface Rendering / Shading models Flat

More information

Data Representation in Visualisation

Data Representation in Visualisation Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have

More information

Hybrid Rendering for Interactive Virtual Scenes

Hybrid Rendering for Interactive Virtual Scenes Hybrid Rendering for Interactive Virtual Scenes Dan Morris, Neel Joshi dmorris@cs.stanford.edu, nsj@cs.stanford.edu Robotics Laboratory, Department of Computer Science, Stanford University, Stanford, CA

More information

Topics and things to know about them:

Topics and things to know about them: Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

More information

Texturing Theory. Overview. All it takes is for the rendered image to look right. -Jim Blinn 11/10/2018

Texturing Theory. Overview. All it takes is for the rendered image to look right. -Jim Blinn 11/10/2018 References: Real-Time Rendering 3 rd Edition Chapter 6 Texturing Theory All it takes is for the rendered image to look right. -Jim Blinn Overview Introduction The Texturing Pipeline Example The Projector

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring

More information

Image-Space-Parallel Direct Volume Rendering on a Cluster of PCs

Image-Space-Parallel Direct Volume Rendering on a Cluster of PCs Image-Space-Parallel Direct Volume Rendering on a Cluster of PCs B. Barla Cambazoglu and Cevdet Aykanat Bilkent University, Department of Computer Engineering, 06800, Ankara, Turkey {berkant,aykanat}@cs.bilkent.edu.tr

More information

Graphics for VEs. Ruth Aylett

Graphics for VEs. Ruth Aylett Graphics for VEs Ruth Aylett Overview VE Software Graphics for VEs The graphics pipeline Projections Lighting Shading VR software Two main types of software used: off-line authoring or modelling packages

More information

Scan line algorithm. Jacobs University Visualization and Computer Graphics Lab : Graphics and Visualization 272

Scan line algorithm. Jacobs University Visualization and Computer Graphics Lab : Graphics and Visualization 272 Scan line algorithm The scan line algorithm is an alternative to the seed fill algorithm. It does not require scan conversion of the edges before filling the polygons It can be applied simultaneously to

More information

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

3/29/2016. Applications: Geology. Appliations: Medicine. Applications: Archeology. Applications: Klaus Engel Markus Hadwiger Christof Rezk Salama Tutorial 7 Real-Time Volume Graphics Real-Time Volume Graphics [01] Introduction and Theory Klaus Engel Markus Hadwiger Christof Rezk Salama Appliations: Medicine Applications: Geology Deformed Plasticine

More information