RECONSTRUCTION FROM CONTOUR DATA AND SCULPTING 3D OBJECTS Vladimir Savchenko 1 , Alexander Pasko Department of Computer Software, The Univ. of Aizu, Aizu-Wakamatsu City, Fukushima Prefecture, Japan 1 Internet: savchen@u-aizu.ac.jp ABSTRACT This paper presents practical applications of volume spline techniques for interpolating scattered data. The surface of the solid is represented by the equation f(x, y, z) = 0. Reconstructed objects can be easily modified by further application of sculpting. A femur has been reconstructed from parallel cross- sections to illustrate the capability of the presented approach. 1. INTRODUCTION In many applications an object is known by a sequence of cross-sections. The motivation of our approach is to generate the function representation of the reconstructed solids not only for visualization but mainly for transformation. In addition, we try to extend the set of operations for design of freeform functionally defined shapes. In the authors’ opinion, it can help to solve a challenging problem to provide realism in computer-assisted surgery training. Particularly, we apply set-theoretic operations and introduce a splitting operation by a deformed half-space and thus show the benefits of combining the function representation with sculpting. An overview of the considered problem can be found in [1] . Surface design uses mostly parametric curves and surfaces, but lately increasing attention has been given to geometric design using implicitly defined curves and surfaces. Consider, for example the technique [2] for blended union of spherical primitives. The authors show the capability of the proposed procedure through sliced data sets of a femur. This algorithm is extremely time consuming (from 8 to 35 hours on an HP-700 series workstation) and the reconstructed surface looks unrealistic. The general approach to surface representation that uses a series of the B-spline contour interpolation technique has a high speed of calculation but this method induces difficulties for producing different transformations of the objects. In the paper [1] a novel approach using volume spline techniques for interpolating scattered data has been proposed. Practical applications generate difficulties for the reconstruction, and this paper improves on the approach [1] . 2. PROPOSED SOLUTION 2.1 Representation of geometric objects In our shape modeling scheme geometric objects are represented by the inequality: f(P) 0, where f is a real continuous function of Cartesian coordinates P of a point. For analytical descriptions of the set-theoretic operations C 1 continuity (excluding points where f1 = f2 = 0) can be provided with the set of R-functions presented below. If two geometric objects are defined as f1(x, y, z) 0 and f2(x, y, z) 0 respectively, then the following R-functions are useful: Union ( ) f3 = f1+ f2 + (f1 2 + f2 2 ); Subtraction ( \ ) f3 = f1 - f2 - (f1 2 + f2 2 ). 2.2 Volume spline In this work we use volume splines for interpolating scattered data as a solution for creating defining functions in an n dimensional domain of arbitrary shape that contains a set of points {Pi = (x1i, x2i,.., xni) : i = 1, 2,.., N}. The coefficients of the spline (see [1] ) can be calculated by solving a system of linear algebraic equations. After defining the coefficients the spline U(x1, x2,...,xn) can be calculated. The spline provides C k continuity if k < 2m - n, where n is a space dimension, and m defines a norm of a basis function. 2.3 Reconstruction scheme Our reconstruction algorithm consists of two stages. In the first stage we introduce a ‘carrier’ 2D geometric object as an initial estimate of an implicit description of a 2D contour. In the simplest case it can be a disk. Then the ‘carrier’ function values {fi = fc(Pi): i = 1, 2,..,N} are calculated for N given points Pi in the cross-section. In the second stage these values are approximated by the spline function U(Pi). The description of the reconstructed 2D object is F(x1, x2) = fc(x1, x2) - U(x1, x2). Object shape between cross-sections can be defined with the linear or quadratic interpolation. To estimate a numerical error, we have used the root mean square measure of error for a test function. Defining functions of 50 planar slices were combined by using linear interpolation [1] . If we apply our algorithm the error is 0.02 for 469 random test points and for reconstruction of the same shape with triangular Gregory patches the error is 0.017. 3. EXAMPLES 3.1 3D femur reconstruction Fig. 1 represents a femur reconstructed from a set of 53 parallel cross-sections produced by computer tomography [3] . In practice, the each slice contains a different number of contours and the accuracy of the restoration depends considerably on the uniformity of the distribution of data in the different contours. To improve quality of the restoration we use a slightly different approach than in [1] . For m different contours in one slice we