Three-Dimensional Image Processing Using Voxels
Total Page:16
File Type:pdf, Size:1020Kb
Three-Dimensional Image Processing Using Voxels Shawn Farhang Javid University College London 1991 Thesis presented for the degree of Doctor of Philosophy ProQuest Number: 10610904 All rights reserved INFORMATION TO ALL USERS The quality of this reproduction is dependent upon the quality of the copy submitted. In the unlikely event that the author did not send a com plete manuscript and there are missing pages, these will be noted. Also, if material had to be removed, a note will indicate the deletion. uest ProQuest 10610904 Published by ProQuest LLC(2017). Copyright of the Dissertation is held by the Author. All rights reserved. This work is protected against unauthorized copying under Title 17, United States C ode Microform Edition © ProQuest LLC. ProQuest LLC. 789 East Eisenhower Parkway P.O. Box 1346 Ann Arbor, Ml 48106- 1346 2 ABSTRACT This thesis investigates the differences between results obtained by applying two- dimensional operators to sequences of slices through three-dimensional image data, and by applying three-dimensional operators to the same data. Emphasis is placed on the differing results for surface extraction which are obtained when the surfaces are generated from two- dimensional edge operators or directly from three-dimensional surface operators. In particular, three-dimensional surface detection operators are shown to perform better than the concatena tion of edges derived from their two-dimensional analogues. Several new contributions to the fields of pixel and voxel processing are made. Dode cahedral connectivity is presented as a solution to the three-dimensional connectivity paradox. The problem of edge and surface detection is examined in detail. Derivations and proofs of new morphological properties of arbitrary dimension Laplacian operators and zero-crossing detection algorithms are provided, as are the conditions under which they can be successfully applied, and what form is most appropriate for a desired resultant topology. New, more accu rate approximations of the three-dimensional Laplacian are also derived and applied. The per formance of a small class of fundamental, yet well established, differentiation based local neighbourhood edge and surface detection operators is examined in the presence of noise and under varying slicing conditions. This simple class of operators has been chosen to provide an initial framework for an investigation which could be extended to more sophisticated opera tions. A survey of binary digital topology in two and three dimensions is provided giving a theoretical basis for the comparison between differences in output of edge and surface detec tion operators. Also, a survey of many of the types of operators one is typically interested in applying to pixels is provided where the operators are extended to operate on voxels, and numerous examples are provided which demonstrate the differences between them with regards to resultant topology. Operators such as spatial and frequency transforms, filtering, and the like are described, extended to three-dimensions, and applied to real world data. Edge and surface detection operators are applied to real world data sets consisting of MRI slices through regions of the human body and serial section microscopy slices through organs of a rat, and a simple approach to the use of the output of edge and surface detection operators is described. The image and volumetric processing algorithms are implemented within a new inter preted software environment. A description is provided of the design and implementation of this software which is divided into several layers in order to meet the needs of different levels of users. The environment is simple yet powerful, hides the complexity often associated with interacting with image processing devices, and is device independent, extensible, and portable. It has proved useful in both the ‘rapid prototyping’ of image processing algorithms as well as the analysing of such algorithms. Since the visualisation of three-dimensional data is inherently more difficult than that of two-dimensional data, a survey of different solutions to the display of voxel data is presented. Demonstrations of some of the methods are given on segmented real world objects and a new pattern recognition approach to the fitting of polygons to surfaces is presented and compared with other known methods. Given that acquisition of voxel data sets has become commonplace, the analysis per formed in this thesis is expected to be applicable in many disciplines. 3 Table of Contents Abstract __________________________________________________________ 2 Contents _________________________________________________________ 3 Illustrations ______________________________________________________ 8 Acknowledgements ________________________________________________ 11 Chapter One: Introduction _______________________________________ 12 Chapter Two: Voxel Data ________________________________________ 16 2.1 Theoretical foundations ___________________________________ 16 2.1.1 Two-dimensional intensity function _______________________ 16 2.1.2 Three-dimensional density function _______________________ 17 2.1.3 Digital representations __________________________________ 17 2.2 Physical properties _______________________________________ 18 2.2.1 Sources of voxel data ___________________________________ 18 2.2.2 Information content in voxels _____________________________ 19 2.2.3 Noise ________________ 20 2.2.4 Contrast and sharpness __________________________________ 23 2.2.5 Spatial dependencies ____________________________________ 23 2.3 Digital properties ________________________________________ 24 2.3.1 Square/cubic adjacency _________________________________ 24 2.3.2 Connected components and curves in Z" ___________________ 28 2.3.3 Frontiers and holes _____________________________________ 29 2.3.4 Connectivity paradox ___________________________________ 29 2.3.5 Hexagonal/dodecahedral adjacency _______________________ 30 2.3.6 Connectivity and discretisation error ______________________ 33 2.3.7 Frontier tracking ________________________________________ 33 2.3.8 Cell morphology ________________________________________ 35 2.3.9 Euclidean properties ____________________________________ 38 2.3.10 Topological properties __________________________________ 41 2.4 2D-3D relationships ______________________________________ 44 2.4.1 Digitisation and topology ________________________________ 44 2.4.2 Skeletonisation _________________________________________ 48 2.4.3 Pixel structures observed in a 2D slice _____________________ 49 2.5 Summary _______________________________________________ 49 4 Chapter Three: Yam3D __________________________________________ 50 3.1 Design criteria ___________________________________________ 50 3.1.1 User levels ____________________________________________ 50 3.1.2 Typeless ______________________________________________ 51 3.1.3 Image memory allocation ________________________________ 51 3.1.4 Image routines isolated in DIMPL _________________________ 51 3.1.5 Interface to outside world ________________________________ 52 3.1.6 Interpreted environment _________________________________ 52 3.1.7 Dimensions ____________________________________________ 52 3.1.8 Extending _____________________________________________ 53 3.2 Environment _____________________________________________ 53 3.2.1 Help ___________________________________________________ 53 3.2.2 File inclusion ___________________________________________ 53 3.2.3 Output ____________________________________________ 54 3.2.4 Input _____________________________________________________ 55 3.2.5 Translation ____________________________________________ 56 3.2.6 3D Support ___________________________________________ 57 3.2.7 Branching . _____________________________________________ 57 3.2.8 Types _________________________________________________ 60 3.2.9 Image allocation ________________________________________ 62 3.2.10 Functional pipeline usage ________________________________ 63 3.2.11 Syntax and precedence ___________________________________ 63 3.3 Implementation __________________________________________ 64 3.3.1 System ________________________________________________ 6 6 3.3.2 Luthor _______________________________________________ 6 6 3.3.3 YC ____________________________________________________ 6 8 3.3.4 Nuntius _______________________________________________ 70 3.3.5 Guardian ______________________________________________ 72 3.3.6 Thor __________________________________________________ 73 3.3.7 Cerberus _____________________________________________ 74 3.3.8 Ctran __________________________________________________ 74 3.3.9 Supported machines _____________________________________ 75 3.3.10 Porting ________________________________________________ 75 3.3.11 Extensibility ___________________________________________ 75 3.3.12 Execution time _________________________________________ 77 3.4 Summary __________________________________________________ 77 5 Chapter Four: General Operators _____________________________ 78 4.1 Transformations ____________________________________ 78 4.1.1 Geometric transformations _______________________________ 78 4.1.2 Translation _________________________________________ 79 4.1.3 Rotation ______________________________________________ 80 4.1.2 The Fourier transform ________________________________ 81 4.1.3 The Hough transform ___________________________________ 84 4.2 Enhancement ____________________________________________ 87 4.2.1