Isosurface Extraction in the Visualization Toolkit Using the Extrema Skeleton Algorithm
Total Page:16
File Type:pdf, Size:1020Kb
University of Tennessee, Knoxville TRACE: Tennessee Research and Creative Exchange Masters Theses Graduate School 12-2003 Isosurface Extraction in the Visualization Toolkit Using the Extrema Skeleton Algorithm Subha Parvathy Mahaadevan University of Tennessee - Knoxville Follow this and additional works at: https://trace.tennessee.edu/utk_gradthes Part of the Computer Sciences Commons Recommended Citation Mahaadevan, Subha Parvathy, "Isosurface Extraction in the Visualization Toolkit Using the Extrema Skeleton Algorithm. " Master's Thesis, University of Tennessee, 2003. https://trace.tennessee.edu/utk_gradthes/2107 This Thesis is brought to you for free and open access by the Graduate School at TRACE: Tennessee Research and Creative Exchange. It has been accepted for inclusion in Masters Theses by an authorized administrator of TRACE: Tennessee Research and Creative Exchange. For more information, please contact [email protected]. To the Graduate Council: I am submitting herewith a thesis written by Subha Parvathy Mahaadevan entitled "Isosurface Extraction in the Visualization Toolkit Using the Extrema Skeleton Algorithm." I have examined the final electronic copy of this thesis for form and content and recommend that it be accepted in partial fulfillment of the equirr ements for the degree of Master of Science, with a major in Computer Science. Bruce A. Whitehead, Major Professor We have read this thesis and recommend its acceptance: Kenneth R. Kimble, L. Montgomery Smi Accepted for the Council: Carolyn R. Hodges Vice Provost and Dean of the Graduate School (Original signatures are on file with official studentecor r ds.) To the Graduate Council: I am submitting herewith a thesis written by Subha Parvathy Mahaadevan entitled “Isosurface Extraction in the Visualization Toolkit Using the Extrema Skeleton Algorithm.” I have examined the final electronic copy of this thesis for form and content and recommend that it be accepted in partial fulfillment of the requirements for the degree of Master of Science, with a major in Computer Science. Bruce A. Whitehead Major Professor We have read this thesis and recommend its acceptance: Kenneth R. Kimble L. Montgomery Smith Acceptance for the Council: Anne Mayhew Vice Provost and Dean of Graduate Studies (Original signatures are on file with official student records.) ISOSURFACE EXTRACTION IN THE VISUALIZATION TOOLKIT USING THE EXTREMA SKELETON ALGORITHM A Thesis Presented for the Master of Science Degree The University of Tennessee, Knoxville Subha Parvathy Mahaadevan December 2003 ACKNOWLEDGEMENTS I wish to thank my advisor Dr. Bruce Whitehead for his guidance and support during my years of graduate study at UTSI. I also thank my thesis committee members Dr. Kenneth Kimble, and Dr. Montgomery Smith for taking the time to serve on my committee and for their valuable advice and input. My most sincere thanks are due to Dr. John Steinhoff and Dr. John Caruthers for giving me the opportunity to work with the CMRG team and for providing financial support for over a year, to Dr. Mary Helen McCay, Dr. Dennis Keefer, and James O. Hornkohl for helping me to continue and complete my thesis while working for CLA. Finally, thanks to Abraham Meganathan for his help and support during my thesis and my stay at UTSI. ii ABSTRACT Generating isosurfaces is a very useful technique in data visualization for understanding the distribution of scalar data. Often, when the size of the data set is really large, as in the case with data produced by medical imaging applications, engineering simulations or geographic information systems applications, the use of traditional methods like marching cubes makes repeated generation of isosurfaces a very time consuming task. This thesis investigated the use of the Extrema Skeleton algorithm to speed up repeated isosurface generation in the visualization package, Visualization Toolkit (VTK). The objective was to reduce the number of non-isosurface cells visited to generate isosurfaces, and to compare the Extrema Skeleton method with the Marching Cubes method by monitoring parameters like time taken for the isosurfacing process and number of cells visited. The results of this investigation showed that the Extrema Skeleton method was faster for most of the datasets tested. For simple datasets with less than 10% isosurface cells and complex datasets with less than 5% isosurface cells, the Extrema Skeleton method was found to be significantly faster than the Marching Cubes method. The time gained by the Extrema Skeleton method for datasets with greater than 15% isosurface cells was found to be insignificant. Based on the results of this study, implementing the Extrema Skeleton method for the VTK software is a change worth making because typical VTK users deal with datasets for which the Extrema Skeleton method is significantly faster and also with datasets for which it is marginally faster than the Marching Cubes method. iii TABLE OF CONTENTS CHAPTER ..................................................................................................................PAGE 1. INTRODUCTION ........................................................................................................ 1 1.1 Related Work ........................................................................................................3 1.2 Problem Statement................................................................................................ 5 1.3 Objectives ............................................................................................................. 6 1.4 Applications .......................................................................................................... 6 2. LITERATURE REVIEW ............................................................................................. 8 2.1 Marching Cubes.................................................................................................... 8 2.1.1 Finding Isosurface Cells and Determing the Topology of the Surface ................................................................................................ 9 2.1.2 Vertex Computation and Surface Normal Computation.......................... 10 2.2 Span Filtering...................................................................................................... 12 2.3 Octrees ................................................................................................................ 12 2.4 Isosurface Propagation........................................................................................ 14 2.5 Extrema Graph.................................................................................................... 14 2.5.1 Finding Extrema Points............................................................................ 16 2.5.2 Generating Extrema Graphs..................................................................... 16 2.5.3 Generating Sorted Boundary Cell Lists ................................................... 17 2.5.4 Generating Isosurfaces............................................................................. 17 2.6 Contour Tree ....................................................................................................... 18 2.7 Extrema Skeleton for Fast Isosurface Generation .............................................. 20 2.7.1 Summary of Volume Thinning Method................................................... 23 3. IMPLEMENTATION FOR VTK............................................................................... 24 3.1 Isosurfacing in VTK ........................................................................................... 24 3.1.1 Components of a Scene............................................................................ 24 3.1.2 Visualization Pipeline .............................................................................. 28 3.1.3 Executing the Pipeline ............................................................................. 30 3.2 Implementation of the Extrema Skeleton Algorithm for VTK: Details and Methodology.................................................................................... 34 3.2.1 Data Structures Used for the Extrema Skeleton Method......................... 37 3.2.2 Implementation Procedure....................................................................... 39 3.3 Polygonization .................................................................................................... 42 3.4 Resolving Performance Problems....................................................................... 44 4. RESULTS AND DISCUSSION................................................................................. 45 4.1 Datasets Tested ................................................................................................... 47 4.2 Results................................................................................................................. 50 4.3 Discussion of Results.......................................................................................... 53 iv 4.4 Comparing Results with Previous Work............................................................. 59 4.5 Conclusions......................................................................................................... 61 LIST OF REFERENCES.................................................................................................. 63 APPENDIX....................................................................................................................... 66 Appendix A Equations Used to Generate