Out-Of-Core Multi-Resolution Volume Rendering of Large Data Sets Fredrik Lundell

Out-Of-Core Multi-Resolution Volume Rendering of Large Data Sets Fredrik Lundell

LiU-ITN-TEK-A--11/038--SE Out-of-Core Multi-Resolution Volume Rendering of Large Data Sets Fredrik Lundell 2011-06-10 Department of Science and Technology Institutionen för teknik och naturvetenskap Linköping University Linköpings universitet SE-601 74 Norrköping, Sweden 601 74 Norrköping LiU-ITN-TEK-A--11/038--SE Out-of-Core Multi-Resolution Volume Rendering of Large Data Sets Examensarbete utfört i medieteknik vid Tekniska högskolan vid Linköpings universitet Fredrik Lundell Examinator Karljohan Lundin Palmerius Norrköping 2011-06-10 Upphovsrätt Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare – under en längre tid från publiceringsdatum under förutsättning att inga extra- ordinära omständigheter uppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervisning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säkerheten och tillgängligheten finns det lösningar av teknisk och administrativ art. Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i den omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i sådant sammanhang som är kränkande för upphovsmannens litterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida http://www.ep.liu.se/ Copyright The publishers will keep this document online on the Internet - or its possible replacement - for a considerable time from the date of publication barring exceptional circumstances. The online availability of the document implies a permanent permission for anyone to read, to download, to print out single copies for your own use and to use it unchanged for any non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional on the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity, security and accessibility. According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its WWW home page: http://www.ep.liu.se/ © Fredrik Lundell Abstract A modality device can today capture high resolution volumetric data sets and as the data resolutions increase so does the challenges of processing volumetric data through a visualization pipeline. Standard volume ren- dering pipelines often use a graphic processing unit (GPU) to accelerate rendering performance by taking beneficial use of the parallel architec- ture on such devices. Unfortunately, graphics cards have limited amounts of video memory (VRAM), causing a bottleneck in a standard pipeline. Multi-resolution techniques can be used to efficiently modify the rendering pipeline, allowing a sub-domain within the volume to be represented at dif- ferent resolutions. The active resolution distribution is temporarily stored on the VRAM for rendering and the inactive parts are stored on secondary memory layers such as the system RAM or on disk. The active resolution set can be optimized to produce high quality renders while minimizing the amount of storage required. This is done by using a dynamic compression scheme which optimize the visual quality by evaluating user-input data. The optimized resolution of each sub-domain is then, on demand, streamed to the VRAM from secondary memory layers. Rendering a multi-resolution data set requires some extra care between boundaries of sub-domains. To avoid artifacts, an intrablock interpolation (II) sampling scheme capable of creating smooth transitions between sub-domains at arbitrary resolutions can be used. The result is a highly optimized rendering pipeline comple- mented with a preprocessing pipeline together capable of rendering large volumetric data in real-time. Acknowledgements I especially want to thank my supervisors Daniel Jönsson and Erik Sundén for their support during this project. Special thanks to my examiner Karljo- han E. Lundin Palmerius for valuable feedback and to the Voreen commu- nity for answering my questions. I would also like to thank my family, friends and girlfriend for supporting me through all these years. Contents 1 Introduction 4 1.1 Motivation . 4 1.2 Aim . 5 2 Concepts of Direct Volume Rendering 6 2.1 Volumetric Data . 6 2.1.1 Volumetric Data Acquisition . 7 2.1.2 Volumetric Data Representation . 7 2.2 Transfer functions . 8 2.3 Direct Volume Rendering . 9 2.3.1 Volume Rendering Integral . 9 2.3.2 Volume Ray Casting . 10 2.4 Large Data sets . 11 2.4.1 Static Data Reduction . 12 2.4.2 Dynamic Data Reduction . 12 2.4.3 Distortion metrics . 13 2.5 Graphic Processing Unit . 14 2.6 GPU Based Ray Casting . 14 2.7 OpenCL . 15 3 Out-of-core Streaming and Rendering of Multi-resolution Volu- metric data 17 3.1 Data Preprocessing and Analysis . 18 3.1.1 Multi-resolution Blocking . 18 3.1.2 Approximating Density Distribution Histograms . 19 3.1.3 Error estimation . 20 3.2 Level-of-detail management . 21 3.2.1 View-Dependent Scheme . 21 3.2.2 Transfer function based Scheme . 22 3.3 Out-of-Core Data Management . 24 3.3.1 Multi-threaded Data Stream . 25 1 3.3.2 Data Stream Optimization . 26 3.4 Mixed-Resolution Texture Packing . 26 3.4.1 Dynamic Updates . 27 3.5 Pipeline Overview . 29 3.6 Multi-resolution Volume Rendering . 31 3.6.1 Multi-resolution Raycasting . 31 4 Implementation Details 36 4.1 Voreen Framework Integration . 36 4.1.1 Preprocessing . 37 4.1.2 Rendering . 37 4.2 QT Threading . 39 4.3 OpenCL Ray-Casting . 40 5 Result 41 5.1 Test Data . 41 5.2 Test System . 41 5.3 Preprocessing . 42 5.4 Out-of-Core Block Reading Performance . 42 5.5 Intrablock Volume sampling . 43 5.6 Adaptive Sampling . 45 5.7 TF Based Data Reduction . 46 5.8 View Based Data Compression . 49 5.9 Rendering Performance . 49 6 Discussion 55 6.1 Conclusion . 55 6.2 Future Work . 56 References . 57 2 Abbreviations LOD Level Of Detail FPS Frames Per Second GPU Graphic Processing Unit GPGPU General-Purpose computation on Graphics Processing Units Streaming Transfer data between different layers of memory TF Transfer function DVR Direct Volume Rendering VRAM Video Random-Access Memory NN Sampling Nearest Block Sampling II Sampling Intrablock Interpolation Sampling 3 Chapter 1 Introduction The following chapter will give a brief introduction to some of the chal- lenges currently facing the field of volumetric visualization and provide the main motivation and aim of this thesis. 1.1 Motivation Scientific visualization is a field in science aiming to reveal and find corre- lation within spatial and temporal structures of data. Volume rendering is a specific branch of visualization used to obtain images from three- dimensional data sets. Volumetric data holds information about the inter- nal structure of an object and special visualization techniques are needed for extracting different abstractions within the data. Volume visualization has a wide range of applications in particular within the field of medical visualization. The data sets obtained from acquisition devices has in recent years rapidly increased in size and hardware limitations in terms of mem- ory capacity and transfers rates forces the use of date reduction schemes and out-of-core storage to overcome these limitations. Direct volume rendering (DVR) is a volumetric visualization technique used to directly extract images from a volumetric data set. The original DVR pipeline gives the user the ability to interact with the data in order to reveal interior structures within the volume. To provide a user with full understanding of the underlying data it is important that the system properly responds to user interaction. Real-time performance is hard to achieve for the rendering of high quality images. The DVR pipeline often uses hardware acceleration units such as a Graphical Processing Unit (GPU) to accelerate rendering. Data must then be stored on the graphic card’s VRAM, which is a very limited resource. 4 1.2 Aim The aim of this thesis is to extend the basic DVR pipeline to render large volumetric data sets in real-time. The proposed pipeline shall benefit from out-of-core storage and multi-resolution volume representation where subparts of arbitrary resolution can be loaded in-core on request during runtime. The system will exploit parallel data processing on the GPU as well as multi-threading on the CPU for maximizing the performance. The system shall respond properly to user interaction and use such information to minimize the amount of data to process through the pipeline while maximizing the rendering quality. The system shall implement multi- resolution rendering techniques used to increase the render quality for data represented at arbitrary resolution and use acceleration techniques such as adaptive sampling to increase the performance of rendering. 5 Chapter 2 Concepts of Direct Volume Rendering This chapter covers the basic concepts of DVR. DVR is the process of extracting two-dimensional images directly from a three-dimensional scalar field of data. Contradictory to DVR, an indirect approach is to extract a polygonal mesh of an iso-surface obtained from the volume. The DVR pipeline consist of several important steps, all of which will be covered in this chapter. The first part explains the essence of volumetric data and how it can be represented in a computer memory. The next part discusses the vital aspects of volumetric classifications and how it can be used to reveal embedded structures within the volume.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    65 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us