Hardware Acceleration for Vessel Visualization Tasks
|
|
- Warren Bradley
- 5 years ago
- Views:
Transcription
1 Hardware Acceleration for Vessel Visualization Tasks 1
2 Research Context Research projects on vessel visualization with Vis-Group of the Otto von Guericke University of Magdeburg Automatic Transfer Functions for Visual Emphasis of Coronary Artery Plaque S. Glaßer, S. Oeltze, A. Hennemuth, C. Kubisch, A. Mahnken, S. Wilhelmsen, and B. Preim [Computer Graphics Forum, 2010] Vessel Visualization with Volume Rendering C.Kubisch, S. Glaßer, M. Neugebauer and B. Preim [Visualization in Medicine and Life Sciences II] 2
3 Volume Visualization Standard greyscale display techniques Advanced display, aiding exploration [dataset courtesy, Dr. S. Achenbach University Erlangen- Nürnberg] 3
4 Medical Background Cerebral aneurysm Incidence ~6% western population Weakened vessel wall Higher risk of rupture Infarct (fatality ~67%) Blood flow has main impact Inclusion into decision making process 4
5 Medical Background Coronary Artery Disease (CAD) Result of accumulations in the coronary artery wall Soft Plaques Fibrous Plaques Hard Plaques Progressive CAD leads to stenoses Aorta RCA normal Illustration of the heart and coronary arteries positive remodeling LCA LCX LAD negative remodeling Cross-sections of vessel walls 5
6 Medical Background Computer Tomography Angiography (CTA) Asymptomatic patients Abnormal coronary spatial variation Contrast agent (varying Hounsfield Units HU) Multiplanar reformation (MPR) Curved planar reformation (CPR) DVR view 6
7 Volume Rendering Pipeline Data Acqusition CT / MRI Scanners Pre-processing of RAW data Segmentation / Filtering Extracting structures, organs, vessels... Display 2D and 3D Views, GPU Raycasting Transfer function (TF) for coloring and opacity mapping 1. Contrast enhanced CTA dataset 2. Segmentated coronary arteries 3. Skeleton of binary segmentation result 7
8 Upsampling Anisotropic Medical Data Often higher in-plane resolution Visible interpolation issues Higher Order Runtime Filtering Can interfer with sampling performance Upsample along slice direction Inject additional slices Higher order Interpolation Before After 8
9 Upsampling During load/post-load Kernel launched to interpolate slices 1D convolution Lanczos 3/5 Filter Update texture cudamemcpy3d Constant memory convolution weight table surface writes gltexsubimage from PBO Thread computes inbetween voxels at once Kernel launch per interpolation step allows streamed loading 9
10 Automatic Transfer Function Algorithm by S.Glaßer et al. ported to CUDA Adapted TFs are derived from stochastic analysis μ blood, σ blood and μ wall, σ wall to account for contrast agent 2D and 3D display version to show vessel wall and potential plaques [S. Glaßer et al. 2010] TF 3D TF 2D 10
11 Automatic Transfer Function CPR view of datasets [dataset courtesy, Dr. S. Achenbach University Erlangen- Nürnberg] DVR view of two datasets MPR view of datasets (arrows hint possible fibrous / soft plagues) [S. Glaßer et al. 2010] 11
12 Blood Estimation Approximation of μ blood, σ blood Segmentation result primarily contains blood voxels Fitting of normal distribution by iterative reduction of cost function Logarithmic scaled histogram of segmentation result with fitted normal distribution (blue curve) 12
13 Blood Estimation Histogram Kernels Run through entire volume and use segmentation mask Warp level histograms using shared memory atomics Warp level histograms combined to block level Block level histograms combined through extra kernel Block Histograms in Global Memory syncthreads(); Warp Histograms in Shared Memory MergeKernels<<<blocks,...>>>(...); 13
14 Blood Estimation Normal Distribution Fitting Kernel Spawn multiple blocks around histogramm peak Each block tries to optimize finding standard deviation for its mean value 14
15 Blood Estimation Threads compute cost function Difference between histogram and probability function Reduction in shared memory Control thread steers fitting of standard deviation for (...){ syncthreads(); // receive sigma from shared memory sigma = s_sigma; syncthreads(); // compute differences to normal // distribution // thread level reduction syncthreads(); } if (tid == 0){ // update sigma based on error sum s_sigma =.. } 15
16 Vessel Wall Estimation Local Histogram Analysis Favor long, non-branching vessels Sample cross-sections Create profile images per point If likely a wall, samples contribute to vessel histogram Derive mean and standard deviation 16
17 Vessel Wall Estimation Local Histogram Kernel Every cross section is one warp Each thread block works on a couple of points CTA spawns as many blocks as required for path Vessel path divided into blocks Warp index is distance from center 17
18 Vessel Wall Estimation Global Memory for profile images (one per warp) Kernel Steps: Sample rays into profile image Blur & Edge Filter in profile image Compute column threshold based on gradient SyncThreads Feed samples into shared memory histogram Based on threshold / edge SyncThreads Move shared to block level histogram Look for vertical structures (likely vessel wall) Contribute intensity to histogram 18
19 Vessel Branch Specific TF Segmentation mask also stores tags Allow local transfer function during rendering the volume CUDA Dilation Kernel for branch tags Each dilation cycle runs through active slices Slice is active if itself or neighboring slice was changed in last cycle Changes are communicated with help of syncthreads_or(change); 19
20 3D View Rendering GPU Raycasting OpenGL rasterizes coarse mesh for ray start/end positions Single pass: use GL_MIN/MAX blending and output depth & 1- depth Two pass: just reverse gldepthfunc and output pos Do volume integration between positions encoded in FBO textures 20
21 3D View Rendering Pre-Integrated Rendering 2D Lookup table preintegrates transition between different intensity levels Generate via CUDA or GL Reduce 3d sampling rate MRT and Post Processing Example use of SSAO or Stippling of obstructed parts 21
22 2D View Rendering MPR and CPR Views (A. Kanitsar et al.) Projected mesh along the vessel path Mesh Vertices encode 3D volume positions but are 2D on screen Isometric Extrusion Sample along normal with attenuated colors Stretched Planar Reformation Curved Planar Reformation 22
23 Vessel Path Smoothing OpenGL Implementation Transform feedback to update vessel vertices Allows fast and easy linear buffer updates Draw GL_POINTS (1D Kernel) Ping Pong Buffers Vertex Shader Centerline Correction (A. Kanitsar) Cross section volume ray casting Smoothing of the path Bind VertexBuffer also as TextureBuffer Use gl_vertexid to access neighboring vertices Swap read/write buffers VBO for self TBO for neighbors VBO/TBO XBO in vec4 pos; XBO VBO/TBO texelfetch(... gl_vertexid +/- 1); 23
24 Related Topic Vessel-Ness Filter Avoids segmentation Compute Hessian (A. F. Frangi et al.) Look for cylindrical shapes Compute Polar Profile per voxel (A. Joshi et al.) Analyze for round shapes Algorithm looks very GPU-port friendly, Parallel and lots of texture sampling 24
25 Thank You cudasynchronize( talk ); Contact: Christoph Kubisch 25
26 References Automatic Transfer Functions for Visual Emphasis of Coronary Artery Plaque S. Glaßer, S. Oeltze, A. Hennemuth, C. Kubisch, A. Mahnken, S. Wilhelmsen, and B. Preim [EuroGraphics, Computer graphics forum 29 (2010), No.1, pp ] Vessel Visualization with Volume Rendering C.Kubisch, S. Glaßer, M. Neugebauer and B. Preim [Visualization in Medicine and Life Sciences II, ; Springer-Verlag] CPR: curved planar reformation Kanitsar A, Fleischmann D, Wegenkittl R, Felkel P, Gröller ME.. [IEEE Visualization; p ] Multiscale Vessel Enhancement Filtering Frangi AF, Frangi RF, Niessen WJ, Vincken KL, Viergever MA [Computer (1998) Volume: 1496, Issue: 3, ; Springer-Verlag] Effective visualization of complex vascular structures using a non-parametric vessel detection method Joshi A, Qian X, Dione D, Bulsara K, Breuer C, Sinusas A, et al. [IEEE Visualization; 2008; 14(6): ] 26
27 Blood Estimation Histogram Kernels Run through entire volume and test against segmentation Warp level histograms using shared memory atomics Limit histogram computation for a sub-range of intensity values Saves histogram bins and therefore shared memory Warp level histograms combined to block level Block level histograms combined through extra kernel //Per-warp subhistogram storage shared uint s_hist[]; uint *s_warphist= s_hist + (threadidx.x >> WARP_BITS) * HISTOBINS;... // iterate through coordinates uint id = tex3d( l_texid, coord.x,coord.y,coord.z); if (id && c_histogramids[id]){ float val = tex3d( l_texvalue, coord.x,coord.y,coord.z); if (val > fromhu && val < tohu){ float rand = HybridTaus(z1,z2,z3,z4); uint data = float2uint_rd(((val - fromhu)*divhu) + rand); data = min(histobins,data); atomicadd(s_warphist + data, 1); } }.. //Merge per-warp histograms into per-block syncthreads(); for(uint bin = threadidx.x; bin < HISTOBINS; bin += blockdim.x) { uint sum = 0; } for(uint i = 0; i < WARP_COUNT; i++){ sum += s_hist[bin + i * HISTOBINS]; } d_partialhistograms[blockidx.x * HISTOBINS + bin] = sum; 27
28 Blood Estimation Threads compute cost function Difference between histogram and probability function Reduction in shared memory Control thread steers fitting of standard deviation for (uint s = 0; s < NORMALDIST_STEPS; s++){ syncthreads(); // receive broadcast float sigma = s_errors[normaldist_s_sigma]; syncthreads(); // scale factor float ndist = getnormaldist(peakbin,mean,sigma); float scale = peakvalue/ndist; // compute difference float errorsum = 0.0f; for(uint i = tid; i < HISTOBINS; i+= BLOCKTHREADS){ float errorf = fabs(d_histogram[i] - (scale*getnormaldist((float)i,mean,sigma))); errorf *= intervalcheck((float)i,mean,sigma); errorsum += errorf; } s_errors[tid] = errorsum; } // thread level reduction blocksum<float>(s_errors,tid,blocksize); if (tid == 0){ // update sigma based error sum s_errors[normaldist_s_sigma] =.. } 28
29 Vessel Branch Specific TF Thread Stride CUDA Dilation Kernel No übertuned solution needed, dilation done only once Worker threads to saturate hardware Threads work on columns with stride Blocks work on rows with stride Global memory Two slices Blocklevel had change buffer For each run, iterate active slices Output into active slice (alternate between two) If change within slice, include self and neighbor slices in working set for next iteration Write-back output of previous slice (not current, to keep uniform growth) uint change = 0; // each block works on a single line for ( int y = blockidx.x; y < h; y+= griddim.x){ // all threads work within line uchar *prow = ((pwriteslice)+y*pitch); for ( int x = threadid; x < w; x += threadstride ){ prow[x] = Dilate(x,y,z,clearid,change); } } change = syncthreads_or(change); if (threadidx.x == 0){ // first thread within block writes result // to global grid mem } Block Stride Active Threads pgridmem[blockidx.x] = change; 29
30 Vessel Path Smoothing CUDA Implementation Typical short vessel paths (< 1000 points) Can use a single saturated block, avoids ping-pong buffer Kernel Compute correction and write to global memory SyncThreads Read coordinates of neighbors Compute smooth value in register SyncThreads Write smooth to global SyncThreads 30
The VesselGlyph: Focus & Context Visualization in CT-Angiography
The VesselGlyph: Focus & Context Visualization in CT-Angiography Matúš Straka M. Šrámek, A. La Cruz E. Gröller, D. Fleischmann Contents Motivation:» Why again a new visualization method for vessel data?
More informationAutomatic Transfer Function Specification for Visual Emphasis of Coronary Artery Plaque
Glaßer & Oeltze & Hennemuth & Kubisch & Mahnken & Wilhelmsen & Preim / Automatic TF Specification for Visual Emphasis of Coronary Plaque1 Automatic Transfer Function Specification for Visual Emphasis of
More informationTutorial Syllabus. Surface Visualization. (20 min.) Direct Volume Visualization. (30 min.) Medical Training and Surgical Planning
Tutorial Syllabus Surface Visualization - Marching Cubes and its improvements - Smoothing of surface visualizations Direct Volume Visualization - Ray casting and texture-based approaches - Projection methods
More informationHuman Heart Coronary Arteries Segmentation
Human Heart Coronary Arteries Segmentation Qian Huang Wright State University, Computer Science Department Abstract The volume information extracted from computed tomography angiogram (CTA) datasets makes
More informationOctree-Based Sparse Voxelization for Real-Time Global Illumination. Cyril Crassin NVIDIA Research
Octree-Based Sparse Voxelization for Real-Time Global Illumination Cyril Crassin NVIDIA Research Voxel representations Crane et al. (NVIDIA) 2007 Allard et al. 2010 Christensen and Batali (Pixar) 2004
More informationModeling and preoperative planning for kidney surgery
Modeling and preoperative planning for kidney surgery Refael Vivanti Computer Aided Surgery and Medical Image Processing Lab Hebrew University of Jerusalem, Israel Advisor: Prof. Leo Joskowicz Clinical
More informationAutomatic Cerebral Aneurysm Detection in Multimodal Angiographic Images
Automatic Cerebral Aneurysm Detection in Multimodal Angiographic Images Clemens M. Hentschke, Oliver Beuing, Rosa Nickl and Klaus D. Tönnies Abstract We propose a system to automatically detect cerebral
More informationData 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 informationVisual Medicine: Part Two Advanced Topics in Visual Medicine. Advanced Topics in Visual Medicine
Visual Medicine: Part Two Advanced Topics in Visual Medicine Visualization of Vasculature Steffen Oeltze Visualization Research Group University of Magdeburg, Germany stoeltze@isg.cs.uni-magdeburg.de Outline
More informationProbabilistic Tracking and Model-based Segmentation of 3D Tubular Structures
Probabilistic Tracking and Model-based Segmentation of 3D Tubular Structures Stefan Wörz, William J. Godinez, Karl Rohr University of Heidelberg, BIOQUANT, IPMB, and DKFZ Heidelberg, Dept. Bioinformatics
More informationCIS 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 informationVessel Centerline Tracking in CTA and MRA Images Using Hough Transform
Vessel Centerline Tracking in CTA and MRA Images Using Hough Transform Maysa M.G. Macedo 1, Choukri Mekkaoui 2, and Marcel P. Jackowski 1 1 University of São Paulo, Department of Computer Science, Rua
More informationECE 408 / CS 483 Final Exam, Fall 2014
ECE 408 / CS 483 Final Exam, Fall 2014 Thursday 18 December 2014 8:00 to 11:00 Central Standard Time You may use any notes, books, papers, or other reference materials. In the interest of fair access across
More informationVolume Visualization
Volume Visualization Part 1 (out of 3) Overview: Volume Visualization Introduction to volume visualization On volume data Surface vs. volume rendering Overview: Techniques Simple methods Slicing, cuberille
More informationData 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 informationSupplementary Material: Guided Volume Editing based on Histogram Dissimilarity
Supplementary Material: Guided Volume Editing based on Histogram Dissimilarity A. Karimov, G. Mistelbauer, T. Auzinger and S. Bruckner 2 Institute of Computer Graphics and Algorithms, Vienna University
More information11/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 informationVisualization. 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 informationVolume Visualization. Part 1 (out of 3) Volume Data. Where do the data come from? 3D Data Space How are volume data organized?
Volume Data Volume Visualization Part 1 (out of 3) Where do the data come from? Medical Application Computed Tomographie (CT) Magnetic Resonance Imaging (MR) Materials testing Industrial-CT Simulation
More informationBlood Vessel Visualization on CT Data
WDS'12 Proceedings of Contributed Papers, Part I, 88 93, 2012. ISBN 978-80-7378-224-5 MATFYZPRESS Blood Vessel Visualization on CT Data J. Dupej Charles University Prague, Faculty of Mathematics and Physics,
More informationGPU-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 informationNon-linear Model Fitting to Parameterize Diseased Blood Vessels
Non-linear Model Fitting to Parameterize Diseased Blood Vessels Alexandra La Cruz Vienna University of Technology Miloš Šrámek Austrian Academy of Sciences Matúš Straka Austrian Academy of Sciences Eduard
More informationFINDING THE TRUE EDGE IN CTA
FINDING THE TRUE EDGE IN CTA by: John A. Rumberger, PhD, MD, FACC Your patient has chest pain. The Cardiac CT Angiography shows plaque in the LAD. You adjust the viewing window trying to evaluate the stenosis
More information2D Vessel Segmentation Using Local Adaptive Contrast Enhancement
2D Vessel Segmentation Using Local Adaptive Contrast Enhancement Dominik Schuldhaus 1,2, Martin Spiegel 1,2,3,4, Thomas Redel 3, Maria Polyanskaya 1,3, Tobias Struffert 2, Joachim Hornegger 1,4, Arnd Doerfler
More informationTECHNICAL REPORT. Smart Linking of 2D and 3D Views in Medical Applications
Institut für Computergraphik und Algorithmen Technische Universität Wien Karlsplatz 13/186/2 A-1040 Wien AUSTRIA Tel: +43 (1) 58801-18601 Fax: +43 (1) 58801-18698 Institute of Computer Graphics and Algorithms
More informationGPU Programming EE Final Examination
Name GPU Programming EE 4702-1 Final Examination Friday, 11 December 2015 15:00 17:00 CST Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Problem 6 Exam Total (20 pts) (15 pts) (15 pts) (20 pts)
More informationGPU Programming EE Final Examination
Name Solution GPU Programming EE 4702-1 Final Examination Friday, 11 December 2015 15:00 17:00 CST Alias Methane? Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Problem 6 Exam Total (20 pts) (15 pts)
More informationReconstruction of 3D Surface Meshes for Blood Flow Simulations of Intracranial Aneurysms
Reconstruction of 3D Surface Meshes for Blood Flow Simulations of Intracranial Aneurysms Abstract: S. Glaßer¹, P. Berg², M. Neugebauer³, B. Preim¹ ¹Otto-von-Guericke University of Magdeburg, Department
More informationGPU Programming EE Final Examination
Name GPU Programming EE 4702-1 Final Examination Monday, 5 December 2016 17:30 19:30 CST Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Exam Total (20 pts) (20 pts) (15 pts) (20 pts) (25 pts)
More informationBilateral Depth Filtering for Enhanced Vessel Reformation
Eurographics Conference on Visualization (EuroVis) (04) N. Elmqvist, M. Hlawitschka, and J. Kennedy (Editors) Short Papers Bilateral Depth Filtering for Enhanced Vessel Reformation Jan Kretchmer,, Bernhard
More informationCoronary Artery Calcium Quantification in Contrast-enhanced Computed Tomography Angiography
Georgia State University ScholarWorks @ Georgia State University Computer Science Dissertations Department of Computer Science 12-18-2013 Coronary Artery Calcium Quantification in Contrast-enhanced Computed
More informationGPU-accelerated data expansion for the Marching Cubes algorithm
GPU-accelerated data expansion for the Marching Cubes algorithm San Jose (CA) September 23rd, 2010 Christopher Dyken, SINTEF Norway Gernot Ziegler, NVIDIA UK Agenda Motivation & Background Data Compaction
More informationA Hybrid Method for Coronary Artery Stenoses Detection and Quantification in CTA Images
A Hybrid Method for Coronary Artery Stenoses Detection and Quantification in CTA Images İlkay Öksüz 1, Devrim Ünay 2, Kamuran Kadıpaşaoğlu 2 1 Electrical and Electronics Engineering, Bahçeşehir University,
More information3D Visualization of Vascular Structures
3D Visualization of Vascular Structures Bernhard Preim, University of Magdeburg, Visualization Research Group Outline Methods for 3D Visualization of Vasculature Model-based Surface Visualization Explicit
More informationVisualization 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 informationVisualization 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 informationHeight 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 informationEdge-Preserving Denoising for Segmentation in CT-Images
Edge-Preserving Denoising for Segmentation in CT-Images Eva Eibenberger, Anja Borsdorf, Andreas Wimmer, Joachim Hornegger Lehrstuhl für Mustererkennung, Friedrich-Alexander-Universität Erlangen-Nürnberg
More informationApplications of Explicit Early-Z Z Culling. Jason Mitchell ATI Research
Applications of Explicit Early-Z Z Culling Jason Mitchell ATI Research Outline Architecture Hardware depth culling Applications Volume Ray Casting Skin Shading Fluid Flow Deferred Shading Early-Z In past
More informationBabu Madhav Institute of Information Technology Years Integrated M.Sc.(IT)(Semester - 7)
5 Years Integrated M.Sc.(IT)(Semester - 7) 060010707 Digital Image Processing UNIT 1 Introduction to Image Processing Q: 1 Answer in short. 1. What is digital image? 1. Define pixel or picture element?
More informationVessel Explorer: a tool for quantitative measurements in CT and MR angiography
Clinical applications Vessel Explorer: a tool for quantitative measurements in CT and MR angiography J. Oliván Bescós J. Sonnemans R. Habets J. Peters H. van den Bosch T. Leiner Healthcare Informatics/Patient
More informationCUDA. More on threads, shared memory, synchronization. cuprintf
CUDA More on threads, shared memory, synchronization cuprintf Library function for CUDA Developers Copy the files from /opt/cuprintf into your source code folder #include cuprintf.cu global void testkernel(int
More informationAutomatic Ascending Aorta Detection in CTA Datasets
Automatic Ascending Aorta Detection in CTA Datasets Stefan C. Saur 1, Caroline Kühnel 2, Tobias Boskamp 2, Gábor Székely 1, Philippe Cattin 1,3 1 Computer Vision Laboratory, ETH Zurich, 8092 Zurich, Switzerland
More informationOPENGL BLUEPRINT RENDERING
April 47, 2016 Silicon Valley OPENGL BLUEPRINT RENDERING Christoph Kubisch, 4/7/2016 MOTIVATION Blueprints / drawings in CAD/graph viewer applications Documents can contain many LINES and LINE_STRIPS Various
More informationData Visualization (CIS/DSC 468)
Data Visualization (CIS/DSC 46) Volume Rendering Dr. David Koop Visualizing Volume (3D) Data 2D visualization slice images (or multi-planar reformating MPR) Indirect 3D visualization isosurfaces (or surface-shaded
More informationFirst 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 informationCSE 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 informationMedical Image Processing: Image Reconstruction and 3D Renderings
Medical Image Processing: Image Reconstruction and 3D Renderings 김보형 서울대학교컴퓨터공학부 Computer Graphics and Image Processing Lab. 2011. 3. 23 1 Computer Graphics & Image Processing Computer Graphics : Create,
More informationMedical Visualization - Volume Rendering. J.-Prof. Dr. Kai Lawonn
Medical Visualization - Volume Rendering J.-Prof. Dr. Kai Lawonn Medical Visualization Pipeline Acquisition Filtering/Enhancement Mapping Rendering Data are given Data are processed e.g., feature extraction
More informationScalar 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 informationVisualization. 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 informationVASCULAR TREE CHARACTERISTIC TABLE BUILDING FROM 3D MR BRAIN ANGIOGRAPHY IMAGES
VASCULAR TREE CHARACTERISTIC TABLE BUILDING FROM 3D MR BRAIN ANGIOGRAPHY IMAGES D.V. Sanko 1), A.V. Tuzikov 2), P.V. Vasiliev 2) 1) Department of Discrete Mathematics and Algorithmics, Belarusian State
More informationReal-Time Hair Simulation and Rendering on the GPU. Louis Bavoil
Real-Time Hair Simulation and Rendering on the GPU Sarah Tariq Louis Bavoil Results 166 simulated strands 0.99 Million triangles Stationary: 64 fps Moving: 41 fps 8800GTX, 1920x1200, 8XMSAA Results 166
More informationMultiscale Blood Vessel Segmentation in Retinal Fundus Images
Multiscale Blood Vessel Segmentation in Retinal Fundus Images Attila Budai 1, Georg Michelson 2, Joachim Hornegger 1 1 Pattern Recognition Lab and Graduate School in Advanced Optical Technologies(SAOT),
More informationGPU programming. Dr. Bernhard Kainz
GPU programming Dr. Bernhard Kainz Overview About myself Motivation GPU hardware and system architecture GPU programming languages GPU programming paradigms Pitfalls and best practice Reduction and tiling
More informationGPU Based Region Growth and Vessel Tracking. Supratik Moulik M.D. Jason Walsh
GPU Based Region Growth and Vessel Tracking Supratik Moulik M.D. (supratik@moulik.com) Jason Walsh Conflict of Interest Dr. Supratik Moulik does not have a significant financial stake in any company, nor
More informationScalar Data. CMPT 467/767 Visualization Torsten Möller. Weiskopf/Machiraju/Möller
Scalar Data CMPT 467/767 Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Basic strategies Function plots and height fields Isolines Color coding Volume visualization (overview) Classification
More informationHardware 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 informationThe MAGIC-5 CAD for nodule detection in low dose and thin slice lung CT. Piergiorgio Cerello - INFN
The MAGIC-5 CAD for nodule detection in low dose and thin slice lung CT Piergiorgio Cerello - INFN Frascati, 27/11/2009 Computer Assisted Detection (CAD) MAGIC-5 & Distributed Computing Infrastructure
More informationReconstruction of Blood Vessels from Neck CT Datasets using Stable 3D Mass-Spring Models
Eurographics Workshop on Visual Computing for Biomedicine (2008) C. P. Botha, G. Kindlmann, W. J. Niessen, and B. Preim (Editors) Reconstruction of Blood Vessels from Neck CT Datasets using Stable 3D Mass-Spring
More informationGPU Programming EE Final Examination
Name GPU Programming EE 4702-1 Final Examination Tuesday, 9 December 2014 7:30 9:30 CST Alias Problem 1 Problem 2 Problem 3 Problem 4 Problem 5 Exam Total (20 pts) (15 pts) (20 pts) (20 pts) (25 pts) (100
More informationarxiv: v2 [cs.cv] 28 Jan 2019
Improving Myocardium Segmentation in Cardiac CT Angiography using Spectral Information Steffen Bruns a, Jelmer M. Wolterink a, Robbert W. van Hamersvelt b, Majd Zreik a, Tim Leiner b, and Ivana Išgum a
More informationApplication of level set based method for segmentation of blood vessels in angiography images
Lodz University of Technology Faculty of Electrical, Electronic, Computer and Control Engineering Institute of Electronics PhD Thesis Application of level set based method for segmentation of blood vessels
More informationRay Casting on Programmable Graphics Hardware. Martin Kraus PURPL group, Purdue University
Ray Casting on Programmable Graphics Hardware Martin Kraus PURPL group, Purdue University Overview Parallel volume rendering with a single GPU Implementing ray casting for a GPU Basics Optimizations Published
More informationApplications 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 informationComparison of Vessel Segmentations using STAPLE
Comparison of Vessel Segmentations using STAPLE Julien Jomier, Vincent LeDigarcher, and Stephen R. Aylward Computer-Aided Diagnosis and Display Lab The University of North Carolina at Chapel Hill, Department
More informationn o r d i c B r a i n E x Tutorial DSC Module
m a k i n g f u n c t i o n a l M R I e a s y n o r d i c B r a i n E x Tutorial DSC Module Please note that this tutorial is for the latest released nordicbrainex. If you are using an older version please
More informationCUDA Advanced Techniques 3 Mohamed Zahran (aka Z)
Some slides are used and slightly modified from: NVIDIA teaching kit CSCI-GA.3033-004 Graphics Processing Units (GPUs): Architecture and Programming CUDA Advanced Techniques 3 Mohamed Zahran (aka Z) mzahran@cs.nyu.edu
More informationDiagnostic Relevant Visualization of Vascular Structures
Diagnostic Relevant Visualization of Vascular Structures Armin Kanitsar 1, Dominik Fleischmann 2, Rainer Wegenkittl 3, and Meister Eduard Gröller 1 1 Institute of Computer Graphics and Algorithms, Vienna
More informationGPU programming basics. Prof. Marco Bertini
GPU programming basics Prof. Marco Bertini CUDA: atomic operations, privatization, algorithms Atomic operations The basics atomic operation in hardware is something like a read-modify-write operation performed
More informationAORTA CTA VPMC-12419
AORTA CTA VPMC-12419 Workflow Overview: The Aorta can be post-processed in various ways. Auto Bone Removal and Vessel Pick provide a quick overview of the entire Aorta. Vessel Probe creates a centerline
More informationGPU Memory Model. Adapted from:
GPU Memory Model Adapted from: Aaron Lefohn University of California, Davis With updates from slides by Suresh Venkatasubramanian, University of Pennsylvania Updates performed by Gary J. Katz, University
More informationInformation Coding / Computer Graphics, ISY, LiTH. CUDA memory! ! Coalescing!! Constant memory!! Texture memory!! Pinned memory 26(86)
26(86) Information Coding / Computer Graphics, ISY, LiTH CUDA memory Coalescing Constant memory Texture memory Pinned memory 26(86) CUDA memory We already know... Global memory is slow. Shared memory is
More informationDeferred Rendering Due: Wednesday November 15 at 10pm
CMSC 23700 Autumn 2017 Introduction to Computer Graphics Project 4 November 2, 2017 Deferred Rendering Due: Wednesday November 15 at 10pm 1 Summary This assignment uses the same application architecture
More informationHardware/Software Co-Design
1 / 13 Hardware/Software Co-Design Review so far Miaoqing Huang University of Arkansas Fall 2011 2 / 13 Problem I A student mentioned that he was able to multiply two 1,024 1,024 matrices using a tiled
More informationCS179 GPU Programming Recitation 4: CUDA Particles
Recitation 4: CUDA Particles Lab 4 CUDA Particle systems Two parts Simple repeat of Lab 3 Interacting Flocking simulation 2 Setup Two folders given particles_simple, particles_interact Must install NVIDIA_CUDA_SDK
More informationCP Generalize Concepts in Abstract Multi-dimensional Image Model Component Semantics. David Clunie.
CP-1390 - Generalize Concepts in Abstract Multi-dimensional Image Model Semantics Page 1 STATUS Date of Last Update Person Assigned Submitter Name Submission Date Assigned 2014/06/09 David Clunie mailto:dclunie@dclunie.com
More informationThreading Hardware in G80
ing Hardware in G80 1 Sources Slides by ECE 498 AL : Programming Massively Parallel Processors : Wen-Mei Hwu John Nickolls, NVIDIA 2 3D 3D API: API: OpenGL OpenGL or or Direct3D Direct3D GPU Command &
More informationDEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/
DEFERRED RENDERING STEFAN MÜLLER ARISONA, ETH ZURICH SMA/2013-11-04 DEFERRED RENDERING? CONTENTS 1. The traditional approach: Forward rendering 2. Deferred rendering (DR) overview 3. Example uses of DR:
More informationVolume 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 informationInteractive segmentation of vascular structures in CT images for liver surgery planning
Interactive segmentation of vascular structures in CT images for liver surgery planning L. Wang¹, C. Hansen¹, S.Zidowitz¹, H. K. Hahn¹ ¹ Fraunhofer MEVIS, Institute for Medical Image Computing, Bremen,
More informationEvaluation of Hessian-based filters to enhance the axis of coronary arteries in CT images
International Congress Series 1256 (2003) 1191 1196 Evaluation of Hessian-based filters to enhance the axis of coronary arteries in CT images S.D. Olabarriaga a, *, M. Breeuwer b, W.J. Niessen a a University
More informationGeometric Representations. Stelian Coros
Geometric Representations Stelian Coros Geometric Representations Languages for describing shape Boundary representations Polygonal meshes Subdivision surfaces Implicit surfaces Volumetric models Parametric
More informationCS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside
CS230 : Computer Graphics Lecture 4 Tamar Shinar Computer Science & Engineering UC Riverside Shadows Shadows for each pixel do compute viewing ray if ( ray hits an object with t in [0, inf] ) then compute
More informationCUDA OPTIMIZATION WITH NVIDIA NSIGHT ECLIPSE EDITION. Julien Demouth, NVIDIA Cliff Woolley, NVIDIA
CUDA OPTIMIZATION WITH NVIDIA NSIGHT ECLIPSE EDITION Julien Demouth, NVIDIA Cliff Woolley, NVIDIA WHAT WILL YOU LEARN? An iterative method to optimize your GPU code A way to conduct that method with NVIDIA
More informationReal-time Graphics 9. GPGPU
Real-time Graphics 9. GPGPU GPGPU GPU (Graphics Processing Unit) Flexible and powerful processor Programmability, precision, power Parallel processing CPU Increasing number of cores Parallel processing
More informationVolume Rendering - Introduction. Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology
Volume Rendering - Introduction Markus Hadwiger Visual Computing Center King Abdullah University of Science and Technology Volume Visualization 2D visualization: slice images (or multi-planar reformation:
More informationGeneralizing vesselness with respect to dimensionality and shape Release 1.00
Generalizing vesselness with respect to dimensionality and shape Release 1.00 Luca Antiga 1 August 3, 2007 1 Medical Imaging Unit Mario Negri Institute, Bergamo, Italy email: antiga at marionegri.it Abstract
More informationPROCESS > SPATIAL FILTERS
83 Spatial Filters There are 19 different spatial filters that can be applied to a data set. These are described in the table below. A filter can be applied to the entire volume or to selected objects
More informationLarge scale Imaging on Current Many- Core Platforms
Large scale Imaging on Current Many- Core Platforms SIAM Conf. on Imaging Science 2012 May 20, 2012 Dr. Harald Köstler Chair for System Simulation Friedrich-Alexander-Universität Erlangen-Nürnberg, Erlangen,
More informationVolume 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 informationLecture 6. Programming with Message Passing Message Passing Interface (MPI)
Lecture 6 Programming with Message Passing Message Passing Interface (MPI) Announcements 2011 Scott B. Baden / CSE 262 / Spring 2011 2 Finish CUDA Today s lecture Programming with message passing 2011
More informationTSBK03 Screen-Space Ambient Occlusion
TSBK03 Screen-Space Ambient Occlusion Joakim Gebart, Jimmy Liikala December 15, 2013 Contents 1 Abstract 1 2 History 2 2.1 Crysis method..................................... 2 3 Chosen method 2 3.1 Algorithm
More informationLecture 15: Introduction to GPU programming. Lecture 15: Introduction to GPU programming p. 1
Lecture 15: Introduction to GPU programming Lecture 15: Introduction to GPU programming p. 1 Overview Hardware features of GPGPU Principles of GPU programming A good reference: David B. Kirk and Wen-mei
More informationRespiratory Motion Estimation using a 3D Diaphragm Model
Respiratory Motion Estimation using a 3D Diaphragm Model Marco Bögel 1,2, Christian Riess 1,2, Andreas Maier 1, Joachim Hornegger 1, Rebecca Fahrig 2 1 Pattern Recognition Lab, FAU Erlangen-Nürnberg 2
More informationCIS 4930/ SCIENTIFICVISUALIZATION
CIS 4930/6930-902 SCIENTIFICVISUALIZATION ISOSURFACING Paul Rosen Assistant Professor University of South Florida slides credits Tricoche and Meyer ADMINISTRATIVE Read (or watch video): Kieffer et al,
More informationCS130 : Computer Graphics Lecture 2: Graphics Pipeline. Tamar Shinar Computer Science & Engineering UC Riverside
CS130 : Computer Graphics Lecture 2: Graphics Pipeline Tamar Shinar Computer Science & Engineering UC Riverside Raster Devices and Images Raster Devices - raster displays show images as a rectangular array
More informationMultipass 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 informationVolume 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 informationCity, University of London Institutional Repository
City Research Online City, University of London Institutional Repository Citation: Wang, Yin (2011). Blood Vessel Segmentation and shape analysis for quantification of Coronary Artery Stenosis in CT Angiography.
More information