9
Real-time Haptic Incision Simulation using FEM-based Discontinuous Free Form Deformation Guy Sela 1, * , Jacob Subag 1, , Alex J. Lindblad 2,3, , Dan Albocher 1, § , Sagi Schein 1, , Gershon Elber 1, k , George Turkiyya 3, ** ABSTRACT Computer-aided surgical simulation is a topic of increasingly extensive research. Computer graphics, geometric modeling and finite-element analysis all play major roles in these sim- ulations. Furthermore, real-time response, interactivity and accuracy are crucial components in any such simulation sys- tem. A major effort has been invested in recent years to find ways to improve the performance, accuracy and realism of existing systems. In this paper, we extend the work of [16], in which we used Discontinuous Free Form Deformations (DFFD) to artifi- cially simulate real-time surgical operations. The presented scheme now uses accurate data from a Finite-Element Model (FEM), which simulates the motion response of the tissue around the scalpel, during incision. The data is then en- coded once into the DFFD, representing the simulation over time. In real-time, The DFFD is applied to the vertices of the surface mesh at the actual incision location and time. The presented scheme encapsulates and takes advantage of both the speed of the DFFD application, and the accuracy of a FEM. In addition, the presented system uses a haptic force feedback device in order to improve realism and ease of use. * [email protected] [email protected] [email protected] § [email protected] [email protected] k [email protected] ** [email protected] 1 Department of Computer Science, Technion - Israel Insti- tute of Technology, Haifa 32000, Israel. 2 Human Interface Technology Lab, University of Washing- ton, PO Box 352142 Seattle, WA 98195-2142 3 Department of Civil and Environmental Engineering, Uni- versity of Washington, PO Box 352700, Seattle, WA 98195- 2700. 1. INTRODUCTION Today, surgical simulators constitute an active research sub- ject. Surgical simulators allow physicians to practice and hone their skills inside a virtual environment before enter- ing the operating room. Such pre-operative training proce- dures have been shown to significantly improve the results of actual procedures [18]. This is especially true with the recent increase in the use of endoscopic and laparoscopic procedures. In order to maximize the potential gain in such virtual- reality training, a surgical simulation system should repli- cate the surgical environment as closely as possible in terms of look and feel. Conveying a realistic impression is difficult. Because of the complexity of such a task, it is best grasped when broken into smaller undertakings. One of the most im- portant roles of any surgical simulator is to realistically ani- mate - in real-time - the way tissue (skin and flesh or internal organs, etc.) behaves under cutting operations. A virtual cutting simulator should supply the following basic capabil- ities. First, it should have some mechanism for real time collision detection. Such a mechanism should control the location, direction and orientation of a virtual scalpel and constantly test for intersections with the model. Second, a cutting module should implement geometric operations that would progressively cut through the model, modifying its topology and constructing new geometry (the geometry of the cut) as needed and over time. Third, the cut model should reflect the physical behavior as accurately as possi- ble, mainly presenting tissue behavior over time. Another important detail not to be overlooked is the user interface. A haptic force feedback device is invaluable in providing re- alistic interaction behavior, both from the visual and the palpable point of view. When dealing with surface meshes, the actual task of cutting the tissue can be divided into two sub-tasks. First, there is the surface modeling task, in which the model surface should be split along the route of the scalpel as it advances. Sec- ond, the geometry around the cut should change, reflecting the shape and orientation of the cutting tool and the inter- nal strain and stress properties of the tissue. In this work, we propose a framework that performs these two tasks. The framework is based upon an augmented variant of Free Form Deformation (FFD) [15], which allows discontinuities and openings to be created in geometric models. The Discon- tinuous FFD (DFFD) [14] is continuous everywhere except at the incision, and hence it has the ability to continuously

Real-time haptic incision simulation using FEM-based discontinuous free-form deformation

Embed Size (px)

Citation preview

Real-time Haptic Incision Simulation usingFEM-based Discontinuous Free Form Deformation

Guy Sela1,∗, Jacob Subag1,†, Alex J. Lindblad2,3,‡, Dan Albocher1,§, Sagi Schein1,¶,Gershon Elber1,‖, George Turkiyya3,∗∗

ABSTRACTComputer-aided surgical simulation is a topic of increasinglyextensive research. Computer graphics, geometric modelingand finite-element analysis all play major roles in these sim-ulations. Furthermore, real-time response, interactivity andaccuracy are crucial components in any such simulation sys-tem. A major effort has been invested in recent years to findways to improve the performance, accuracy and realism ofexisting systems.

In this paper, we extend the work of [16], in which we usedDiscontinuous Free Form Deformations (DFFD) to artifi-cially simulate real-time surgical operations. The presentedscheme now uses accurate data from a Finite-Element Model(FEM), which simulates the motion response of the tissuearound the scalpel, during incision. The data is then en-coded once into the DFFD, representing the simulation overtime. In real-time, The DFFD is applied to the vertices ofthe surface mesh at the actual incision location and time.The presented scheme encapsulates and takes advantage ofboth the speed of the DFFD application, and the accuracyof a FEM. In addition, the presented system uses a hapticforce feedback device in order to improve realism and easeof use.

[email protected][email protected][email protected]§[email protected][email protected][email protected]∗∗[email protected] of Computer Science, Technion - Israel Insti-tute of Technology, Haifa 32000, Israel.2Human Interface Technology Lab, University of Washing-ton, PO Box 352142 Seattle, WA 98195-21423Department of Civil and Environmental Engineering, Uni-versity of Washington, PO Box 352700, Seattle, WA 98195-2700.

1. INTRODUCTIONToday, surgical simulators constitute an active research sub-ject. Surgical simulators allow physicians to practice andhone their skills inside a virtual environment before enter-ing the operating room. Such pre-operative training proce-dures have been shown to significantly improve the resultsof actual procedures [18]. This is especially true with therecent increase in the use of endoscopic and laparoscopicprocedures.

In order to maximize the potential gain in such virtual-reality training, a surgical simulation system should repli-cate the surgical environment as closely as possible in termsof look and feel. Conveying a realistic impression is difficult.Because of the complexity of such a task, it is best graspedwhen broken into smaller undertakings. One of the most im-portant roles of any surgical simulator is to realistically ani-mate - in real-time - the way tissue (skin and flesh or internalorgans, etc.) behaves under cutting operations. A virtualcutting simulator should supply the following basic capabil-ities. First, it should have some mechanism for real timecollision detection. Such a mechanism should control thelocation, direction and orientation of a virtual scalpel andconstantly test for intersections with the model. Second,a cutting module should implement geometric operationsthat would progressively cut through the model, modifyingits topology and constructing new geometry (the geometryof the cut) as needed and over time. Third, the cut modelshould reflect the physical behavior as accurately as possi-ble, mainly presenting tissue behavior over time. Anotherimportant detail not to be overlooked is the user interface.A haptic force feedback device is invaluable in providing re-alistic interaction behavior, both from the visual and thepalpable point of view.

When dealing with surface meshes, the actual task of cuttingthe tissue can be divided into two sub-tasks. First, there isthe surface modeling task, in which the model surface shouldbe split along the route of the scalpel as it advances. Sec-ond, the geometry around the cut should change, reflectingthe shape and orientation of the cutting tool and the inter-nal strain and stress properties of the tissue. In this work,we propose a framework that performs these two tasks. Theframework is based upon an augmented variant of Free FormDeformation (FFD) [15], which allows discontinuities andopenings to be created in geometric models. The Discon-tinuous FFD (DFFD) [14] is continuous everywhere exceptat the incision, and hence it has the ability to continuously

deform the geometry around the cut. Moreover, we incor-porate previously simulated results, using a Finite-ElementModel, into the deformation function in order to make thebehavior of the cut as realistic as possible.

Because FEM simulations are difficult to compute in real-time, an alternative approach could apply physical simula-tions to a low resolution representation of the model andencode it into the DFFD during the interaction, only to beimmediately applied to the fine resolution representation ofthe geometry. This alternative approach would, of course,entail a much higher processing overhead, as the FEM sim-ulation will need to be executed during run time, but on theother hand it will allow for more adaptable results than thefirst approach. In this work, we will concentrate on the firstapproach, in which the DFFDs are constructed off-line.

The proposed FEM-DFFD synergy is of low real-time com-putational complexity while retaining reasonable accuracy.Consequently, the algorithm is capable of handling complexgeometric models at interactive rates. The FEM calcula-tions are conducted once as a preprocessing stage, whereasthe deformation is applied to a limited local set of meshvertices at every time step.

The rest of this work is organized as follows. In Section 2, wegive an overview of the previous work on the problems of cut-ting through and deforming geometric models. In Section 3,we describe the proposed cutting simulation approach; Sec-tion 4 presents a few examples and finally, we conclude inSection 5.

2. RELATED WORKThroughout the years, the problems of cutting through geo-metric models and deforming 3D models, for general as wellas for medical purposes, have been tackled from many direc-tions. In this section, and due to space constraints, we onlyconsider a small subset of the relevant work. In Section 2.1,we look at work dealing with cutting through polygonal ortetrahedral meshes and in Section 2.2, we consider resultsrelated to the incorporation of FEM simulation results intomedical simulations.

2.1 Mesh and Surface CuttingEarlier work on mesh-cutting dealt mainly with surface-based meshes. Bruyns and Senger [4] suggested a methodof cutting polygonal meshes interactively without any post-processing, simply by splitting the affected polygons intoseveral new polygons. A different approach proposed byNeinhuys and Van der Stappen [13] suggested combining alocal Delauny-based triangulation step as part of the mesh-cutting process. Edge-flip operations are used on the facesaffected by the cutting operation in order to eliminate trian-gles with large circumferences. This method can be appliedto both 2D and 3D surface meshes. A different approach, byEllens and Cohen [7], directly incorporated arbitrary-shapedcuts into tensor product B-spline surfaces. This approachhas the advantage of operating over an inherently smoothsurface, but requires modifications to the standard definitionof trimmed B-spline surfaces.

Other works considered volumetric data models, mostly inthe form of tetrahedral meshes. Using volumetric data mod-

els is beneficial as it can represent both the outer surface ofthe model as well as its inner parts. Ganovelli and O’Sullivan [9]proposed cutting tetrahedral meshes while re-meshing thetetrahedra around the cut to achieve the required level ofsmoothness. Since such splitting operations could degradethe quality of the mesh, they suggested using edge-collapseoperations in order to remove low-quality tetrahedra fromthe mesh. Bielser et al. [2] described cutting through tetra-hedral meshes based on the observation that, topologically,there are only five distinct ways to cut a tetrahedron. Oncethe system detects a collision between a tetrahedron andthe cutting scalpel, the case is mapped to one of the fiveavailable cutting configurations. The scheme uses a genericsubdivision which replaces every original tetrahedron to besplit with 17 new tetrahedra. This results in the introduc-tion of many additional tetrahedra into the model and de-grades the performance of the system over time. To cir-cumvent this problem, Neinhuys and Van der Stappen [12]proposed locally aligning the edges of the triangular facesaround the cut to the route of the virtual scalpel. Themovements of the scalpel inside a triangle are recorded andthe vertices adjacent to the motion-curve are snap onto it.Then, the triangles are separated along these aligned edges.Another approach, proposed by Forest et al. [8], treats cut-ting through tetrahedral meshes as a material removal prob-lem. In [8], tetrahedra are removed from the mesh when hitby the pointing device. This trivially conserves the three-manifoldness of the tetrahedral mesh but results in a loss ofmass of the volumetric model. Since the fineness of the cutis tightly coupled to the fineness of the model, this couldresult in sharp edges around the incision, something that isinfrequently found when cutting human tissue.

2.2 Finite Element DeformationBro-Nielsen [3] employed a linear elastic material model inorder to gain speed at the expense of accuracy. The problemwas that linear elastic models are only sufficient when deal-ing with small deformations. In another effort, by Mor andKanade [10], model deformation was achieved by employinglinear FEM over the cut model. Another problem that wastackled in [10] is the introduction of progressive cutting toprevent delays during the cutting procedure. Neinhuys andVan der Stappen [11] tried to combine a FEM simulationby using an iterative solution to the set of equations witha conjugate gradient method. This method allows for al-terations of the mesh topology at run time, as there is nopreprocessing required. Vigneron et al. [21] take advantageof the XFEM method used in fracture mechanics to modelcuts and resections in human tissue. XFEM does not re-quire continuity within the mesh element and is thus usefulfor modeling cracks and cuts. Nonetheless, this can not bedone in real time, as large systems of equations must stillbe solved during the actual simulation. Berkley et al. [1]showed how constraints can be used to simulate suturingand support general real-time displacement-based interac-tion with finite element models. Wu and Heng [22] describeda GPU-assisted system that uses coarse models to supportlimited real-time interaction.

Solving a large set of linear equations takes time. Even theuse of iterative solvers is time consuming and rarely yieldsinteractive frame rates. In our work, we incorporate thedata from an off-line FEM simulation, trying to overcome

the problems of solving these systems of equations at runtime.

3. THE ALGORITHMThe proposed algorithm operates in four phases:

• A first preprocessing stage. A FEM is created, simu-lating the cutting operation over time and in a canon-ical setup. Further, the locations of the individual el-ements are recorded at every time step. This stage isdescribed in detail in Section 3.1.

• A second preprocessing stage, in which the data fromthe FEM simulation is encoded into a DFFD deforma-tion model over time. This deformation is describedin Section 3.2, and its encoding is discussed in Section3.3.

• The real-time cutting stage. While the user is movingthe scalpel along the skin, the skin polygons of themesh are split in order to represent the cut. This stepis presented in Section 3.4.

• The deformation stage. Following the cutting opera-tion, the deformation is applied to the polygons aroundthe cut, and over time, splitting the cut open usingthe aforementioned deformation function. This stageis detailed in Section 3.5.

In addition, the specific support and integration of the hap-tic device into this simulation environment is described inSection 3.6.

3.1 Finite Element Model of Skin and TissueThe finite element formulation used in this research has twoseparate element types: one for the skin, and one for thesoft tissue below it. The skin element is a two-dimensionalsurface element that is bonded to the soft tissue. It has nostiffness in the transverse direction and is used to introducetensile skin pre-stresses into the model. The soft tissue el-ement is a volumetric element that smears the subdermalmuscles, fat, tendons, etc. into one material representingthe bulk behavior of the inhomogeneous continuum. Thisallows for a more accurate modeling of the skin and subcu-taneous tissue, which inherently have very different materialproperties.

The finite element model is a three-dimensional volume thatrepresents the patch of tissue being explicitly modelled. Thisvolume is discretized with triangular constant strain ele-ments and compatible prismatic wedge elements for the skinand soft tissue respectively. Along the sub-dermal bound-aries that connect this volume to the rest of the body, dis-tributed springs simulate the displacement-traction bound-ary conditions.

The cut path is defined before meshing occurs, and is usedto define the shape of the mesh. Elements on the bound-aries are aligned with the cut path and duplicate nodes arecreated along it. The duplicate nodes represent topologi-cally distinct points on either side of the cut path. Withoutany additional constraints, the model represents the behav-ior of a tissue patch in which a cut has been introduced.

Initial closure of the cut is imposed through the use of dis-placement constraints, as seen in Figures 1 and 2. Theseare algebraic constraints enforcing the condition that corre-sponding points on either side of the cut have similar dis-placements. As the virtual scalpel traverses the cut path,these constraints are relaxed, allowing the cut to open.

Figure 1: Physical and conceptual representationsof the cut while the displacement constraints areactive. Yellow (light) lines indicate locations of thecut whereas red (dark) bars indicate the actual dis-placement constraints.

3.1.1 Governing EquationsIn general, the finite element equilibrium equations are writ-ten as Ku = f where K is the stiffness matrix assembledfrom the stiffness matrices of the skin, soft tissue, and springboundary elements, u is the vector of nodal displacementsand f is the vector of externally applied loads. By adding tothis system the constraints which model tissue separationat the cut path, the original system of linear equations isaugmented to form the following 2× 2 block system:

[K CT

C 0

] {uv

}=

{f0

}. (1)

C u = 0 are constraints for enforcing closure of the cut.Each equation expresses the fact that two correspondingpoints on either side of the cut have the same displacements,in a given direction, when the cut is closed at that point.Algebraically, this may be written for two points A and Bas:

∑φi(A)ui −

∑φi(B)ui = 0, (2)

where φi(X) is the value of the i-th finite element nodalshape function at location X, and the sum is over all nodaldegrees of freedom in a given direction. The values φi(X)are the entries of the coefficient matrix C. Given the com-pact support of finite element shape functions, C is verysparse. The vector v is a vector of Lagrange multipliersrepresenting generalized forces necessary for enforcing theconstraints (closing the cut).

3.1.2 Solution MethodsPerforming a block Gauss elimination on Equation (1) givesthe following two equations,

CK−1CT v = CK−1f (3)

Ku = f −CT v, (4)

Figure 2: Conceptual image depicting the con-straints in three dimensions. These are two elementsthat surround the cut, where the gap between themis part of the cut, but does not represent its fulldepth; which is typically modeled using multiplefinite element layers. The linkages connecting thetwo elements represent the rigid displacement con-straints that restrict the x,y and z displacements ofthe two nodes to be the same. Each set of linearprism elements are connected by four nodal con-straints.

where the solution of Equation (3) provides the values of theLagrange multipliers and the solution of Equation (4) pro-vides the displacement field. To advance the simulation asthe tissue is cut, one set of displacement constraints, pertain-ing to the x, y, and z components of two attached nodes, isremoved from C and Equations (3) and (4) are solved. Thisprocess is repeated until the cut is completed.

3.2 The Discontinuous Deformation ModelDFFD extends FFD to support the mapping of continuousdomains into discontinues ranges. Traditionally, FFD de-fines a mapping from D ⊂ IR3 ⇒ IR3, wrapping a region ofIR3 into another region of IR3. When such mapping is ap-plied to an embedded geometric object, O, it also deformsits shape to follow the prescribed space wrapping operation.

FFDs may be defined using arbitrary functions F : IR3 ⇒IR3. However, due to their robustness and controllability,trivariate tensor product B-spline functions are usually used.Such functions are defined as,

F (u, v, w) =

l∑i=0

m∑j=0

n∑

k=0

PijkBoi (u)Bo

j (v)Bok(w), (5)

(u, v, w) ∈ [Umin, Umax)× [Vmin, Vmax)× [Wmin, Wmax),

where Pijk are the control points and Boi (u) are the uni-

variate basis functions of order o, in all three directions. Asa result of using trivariate B-spline functions for deforma-tion, a wealth of modeling tools, such as degree-raising andknot-insertion[6], is made available.

As with any other modeling tool, FFD also possess severallimitations. Specifically, FFD cannot support mapping intodiscontinuous ranges. Nevertheless, there are cases where

the ability to model both the deformation and tearing ofan object inside a unified framework, would be useful. Tospecify potential C−1 discontinuity into F , we use a stan-dard knot-insertion procedure [5]. By inserting order knotsinto t = t0 ∈ {u, v, w} parametric axis, a potential C−1 dis-continuity is formed along this iso-surface. For brevity andwithout loss of generality, we will assume henceforth thatknot insertion always occur along the v parametric axis atv = v0 and that are no existing knots at v = v0. As a re-sult of inserting order knots into v = v0, new control pointsare formed that interpolate the iso-surface F (u, v = v0, w).By manipulating the control points that are on or near iso-surface F (u, v = v0, w), a rich family of shapes can be mod-eled. In particular, for a virtual incision application theshapes of an arbitrary scalpel can now be realized.

FFD is commonly used to deform polygonal models. In suchcases, the deformation is usually approximated by applyingthe deformation function, F , to the vertices of the model.However, in the case of DFFD, polygons that cross the dis-continuity would not be mapped properly. To amelioratethis problem, the DFFD algorithm would split crossing poly-gons such that the edges of the polygon are clipped againstthe plane v = v0. As a result of this clipping operation,new, non-crossing polygons replace the old crossing polygon.The splitting operation occurs in the parametric domain ofF , hence the edges of a crossing polygon are always clippedagainst an axis-aligned plane, making the clipping operationmuch simpler.

One direct result of the above split operation is that closedmodels become open. Since for some applications this is anundesirable consequence, the DFFD algorithm should alsosupply means to seam the cut. For stability, vertices nearthe cut are translated in v by ±ε such that each is mappedto either side of the discontinuity. This operation only guar-antees a C0 continuity between the added geometry and theoriginal one, at the incision location. In the next section, wewill show how the results of an FEM simulation from Sec-tion 3.1 could be incorporated into the process of modelingthe DFFD function.

3.3 Representing the DFFD Over TimeThe result of the FEM simulation is a set of points {P j

i }where P j

i is the location of point i, at frame j. Our interestlies in the volumetrically minimal subset that contains thepoints surrounding the cut from the first point at which thescalpel breached the skin, advancing along the cut, and untilthey reach a steady state, when the cut is fully open. We ap-proximate the points’ movement over time using a 4-variate(u, v, w, t) smooth B-spline function, which will representthe DFFD over time.

In our implementation, we used 4th order (cubic) B-splinesand uniform open-end knot vectors, with the exception ofthe v-axis knot vector in which we added a discontinuity atthe middle of the domain, simulating the cut (which is alongthe u-axis). This choice of orders, number of control pointsand knot vectors affects the level of accuracy. For example,increasing the number of control points (i.e., the degrees offreedom) would provide a DFFD that more accurately de-scribes the results of the FEM simulation. A Least Squares(LS) fit problem could be defined which is linear in the 4-

variate’s control points’ coordinates and corresponds to thefollowing set of constraints:

∀i, j∑

k,l,m,n

Qk,l,m,nBk(uji )Bl(v

ji )Bm(wj

i )Bn(tji ) = P j

i ,

where Qk,l,m,n are the 4-variate’s control points of indicesk, l, m, n, Bα(β) are the α’th B-Spline basis functions of theselected orders and knot sequences evaluated at parametervalue β ∈ {uj

i , vji , w

ji , t

ji} of P j

i .

The (uji , v

ji , w

ji ) parametric values of points {P j

i } were takenfrom the initial frame (i.e. the parametric values of pointP j

i are set to be the Euclidean coordinates of P 0i ), and the

t parametric value is set to be j.

This technique’s most significant drawback is evident in thecase of regions in the deformed space that have too few sam-pled points and are thus underdetermined. For such regions,the LS algorithm results in control points being reduced tothe zero point. In order to avoid such problems we modi-fied the equation system’s right-hand side to be P j

i − P 0i .

Thus, the resulting control points’ coordinates are actuallythe difference between the coordinates of the desired con-trol points and the control points coordinates’ values for anidentity DFFD with identical orders, knot vectors and do-main, meaning that the desired result is I + Q where Q isthe least squares result and I holds the control points coor-dinates values for an identity DFFD as specified above, i.e.,I(u, v, w, t) = (u, v, w, t). The resulting DFFD, and follow-ing the off-line FEM simulation, continuously describes theway the volume of the canonical tissue surrounding the cutdeforms over time. An example is depicted in Figure 3.

(a) (b)

(c)

Figure 3: Sampling of the 4-variate DFFD at t = 0(a), t = 0.2 (b) and at t = 0.8 (c).

3.4 Splitting the GeometryDFFDs can be applied to surface meshes, volumetric datasets and parametric models. For the sake of efficiency, wefocus our work on triangular surface meshes. When cuttingthrough a triangular mesh, the most basic operation is tri-angle splitting. Any triangle that has vertices on both sides

of the cut must be split before the DFFD mapping is appliedto it. Moreover, vertices on the cut line must be treated withcare, as will be discussed shortly. This splitting operationis conducted incrementally as the virtual scalpel advances,one triangle at a time, following the path of the cut, alongthe skin surface.

The following notations will be used: Let C(s) be an arc-length parametric representation of the cut line followingthe path of the virtual scalpel. Similarly, N(s) defines theorientation of the virtual scalpel at every time t.

Usually, splitting a triangular face creates three new trian-gles; one triangle on one side of the cut, and two on the otherside (see Figure 4). These three new triangles replace theoriginal face, which is then purged. These original triangleshave both entry and exit cut locations, found by calculatingthe closest point on a segment (the entry or exit edge) toC(s). In addition, we examine how close this linear approx-imation of the cut line is. If the straight line between theentry and exit locations is sufficiently close to C(s), thattriangle is split as just described. Otherwise, the trianglemust be subdivided recursively into smaller triangles beforethe split can take place. Figures 5 shows an example of thismore complex case.

Figure 4: Triangle split, normal operation. Thedashed line indicates the cut path.

(a) (b) (c)

Figure 5: When the straight line between the en-try and exit points is not close enough to the cutpath, the triangle is subdivided and the algorithmcontinues. (a) shows the naive split, (b) shows thesubdivision, and (c) shows the first child triangleafter the split.

If the cut passes very close to a vertex, we handle thingsa bit differently, as the splitting method that was proposedabove will create one very small triangle and one very longand thin triangle. In this case, we move the vertex at handonto the cut, duplicate it, and use one copy on each side of

the cut, see Figure 6.

(a) (b)

(c) (d)

Figure 6: When the scalpel path lies very close toa vertex, the geometry is split in a different man-ner. The dashed line indicates the scalpel path. (a)shows the initial configuration. (b) shows the split-ting of the neighborhood triangles according to thebasic algorithm, (c) is an enlargement of the cen-ter vertex area. (d) shows our modified solution forthe problem, which moves the original vertex to thepath and splits only two triangles.

While we only process the skin surface, we also seek to modelthe deepness of the cut, and model this new geometry onthe fly. In order to do this, the entry and exit locations areduplicated a number of times and moved in the direction of−N(s) into the body. Triangles are then used to tessellatethese interior vertices, all the way to the bottom of the cut.The resulting geometry can be seen in Figure 7.

Figure 7: The deepness of the cut polygons modelledand added to the mesh.

3.5 Time Dependant Deformation of the Ge-ometry

The DFFD is applied at regular time intervals to a list, L, ofactive vertices around the cut. The active vertices in L arevertices of the original mesh near the cut, in addition to thevertices created when the triangles around the cut were split.

A vertex is entered into L when the scalpel passes near it (inthe case of original vertices) or when it is created (for thenew ones), and removed from L when it is no longer affectedby the DFFD application (as is detailed later on). At everytime step, L is updated, and the scalpel path (C(s)) andscalpel orientation curve (N(s)), are recreated. From thesecurves and the width of the cut, we reconstruct the incisionparametrization volume (IPV), see Figure 8. The IPV isactually the volume inside of which reside all the verticesof L, or vertices that will be moved as a result of the nextDFFD application. The IPV’s role is to correlate betweena vertex’s Euclidean coordinates and its coordinates in the(canonical) parametric domain of the DFFD.

(a)

(b)

N(s)

C(s)

Figure 8: IPV construction. The volume is con-structed along the curve, appearing with respectivescalpel orientations at regular intervals, as seen in(a). The volume is seen in (b).

The vertices in L are mapped through the IPV, creating theu,v,w and t coordinates for the DFFD. For every vertex Vi

in L, let vs = args

min ‖C(s) − Vi‖. Then, u and w are set

by their distance to C(vs) along N(vs) and T (vs) × N(s),respectively, where T (s) = C′(s). The t parameter is, again,the time in which the vertex was entered into L. Since onlyparameter values of new vertices, that enter L, need to berecomputed for every DFFD iteration, the procedure is quiteefficient.

Hence, we have (u′, v′, w′)=DFFD(u, v, w, t)= DFFD(IPV −1(x, y, z), t). We then apply the IPV tothese (u′, v′, w′) parametric coordinates in order to find thenew Euclidean location of the vertex.

A vertex Vi ∈ L, inside the volume surrounding the cut, willmove an amount that is the sum of all the small deformationsassigned to it in all the iterations of all DFFDs, while Vi isin the incision volume.

3.6 Force Feedback Support

In order to provide a more realistic use for the proposedapproach, we enabled a SensAble(tm) PHANToM Desk-top(tm) haptic device [17] to work with the system. seeFigure 9. The device consists of a pen-sized handle con-nected to a robotic arm with flexible engine-enforced joints.These allow the arm to move in 6 degrees of freedom (DOF):three spatial coordinates and pitch, roll and yaw. The en-gines at the arm joints allow the device to apply force to theholder of the handle, providing it with force feedback ability.This pen-sized handle was used as scalpel in our simulation,so when adjusting the haptic resistance correctly, the com-bination of the visual and haptic user interface provided uswith a convincing look and feel of an actual incision process.

Figure 9: PHANToM Haptic Device in operation.

Due to the sensitivity of the human tactile system, a forcefeedback device requires update rates of 1kHz in order toprovide high definition simulations (see [19]). Therefore,our algorithm must handle collision queries between the vir-tual scalpel and model at these rates. A brute force algo-rithm, which iterated through all polygons of the model andperformed collision tests with the scalpel, resulted in poorframe rates with models of the order of tens of thousands ofpolygons. Therefore, to speed up the collision detection pro-cess, we preprocessed the model data, and created a uniformvoxel grid around the model, where each voxel holds a listof polygons that intersect the voxel. This limited our colli-sion queries to only the polygons in the voxels intersectingthe scalpel, and effectively reduced our calculations to a fewhundred line-polygon intersection tests at most, for everycollision query between the virtual scalpel and the model.

Our force feedback model has two stages: a pre-puncturestage and a post-puncture stage. When light forces areapplied to the skin, a force model is used to simulate thescalpel touching the skin, without penetrating it [20]. Inthis model, the force is a function of the depth to which thescalpel is pushed in the direction normal to the skin. Whenthe scalpel pierces the skin, this force is replaced by a vis-cous drag force (according to Stokes’ model) −bT (t), [20](where b is an approximated constant of viscosity extractedfrom experiments and T (t) is the the speed vector of thescalpel’s cutting path). This simulates the movement of thescalpel while cutting through skin or flesh. Constants were

chosen empirically, to provide realistic touch and cut forcefeedback. Eventually, the 6DOF control over the scalpel,along with the force feedback feature, provided us with in-tuitive control over the scalpel, and raised the simulation toa higher level of realism.

4. RESULTSFigures 10, 11 and 12 show snapshots from a few incisionsimulations generated with our implementation. In Fig-ure 10, an incision simulating a brow-lift is shown, Figure 11shows a typical incision made in a face-lift operation andFigure 12 shows a side view of an incision being made acrossthe bridge of the nose, displaying a side view of the cut.The simulations were performed on a P4-2.8GHz desktopcomputer with 1GB of RAM. The original head model con-sists of 12108 polygons. The cuts shown in Figures 10, 11and 12 added 453, 1443 and 1082 polygons, respectively, in-cluding the polygons representing the deepness of the cut.

Figure 10: A brow-lift cut simulation.

These snapshots are from a real-time film recording of theactual use of the force feed-back scalpel. The full incisionvideo and other results are available at:http://www.cs.technion.ac.il/∼guysela/incision.htm

5. CONCLUSIONS AND FUTURE WORKWe have presented an enhancement to our previous work [16]in which we proposed a method to perform real-time inci-sion simulation using 3D DFFDs. In this enhancement, wedetail how to compute an incision simulation using an off-line FEM simulation and incorporate this simulation’s re-sults into a 4D DFFD representation over time. Finally,we demonstrated how this 4D DFFD can be used to sim-ulate real-time incisions on a 3D model using a haptic de-vice. This method is modular and, therefore, flexible enoughto accommodate different methods of incision simulation aswell as different model representations. It is also compu-tationally simple enough to yield real-time frame rates ondesktop computers.

Figure 11: A face-lift cut simulation.

Figure 12: Rhinoplasty cut simulation (side view).

Future extensions may include the usage of more than onesimulation results, i.e., using different FEM simulations andcorresponding DFFDs for different types of incisions, han-dling incisions with variable width and depth, dependingon material properties, and the application of the methodto volumetric data. Another possible extension could bethe exploration of different surface mesh cutting techniques.Our system uses a recursive, non-adaptive scheme, and anadaptive one could reduce the number of polygons added tothe model at the expense of additional computation.

Furthermore, the presented framework can be extended tomodel different cut shapes, representing bent scalpels, andaltogether different deformations of the model such as bend,protrude, twist, etc., functioning as a cutting modeling tool.

Another potential use of the technology presented in this pa-per is to convey the results of large scale finite element mod-els to scientists and engineers. Frequently numerical modelsin many important application domains such as structural

mechanics simulations, wave propagation in heterogeneousmedia, weather prediction, etc. generate multiple, large-scale 3D data sets. The multiple data sets arise from simula-tions that are run with different parameters, discontinuities,boundary conditions, interfaces, etc, in order to fully quan-tify a phenomenon or evaluate a design. An important taskfor the scientist/engineer user is to browse the massive datagenerated from these simulations with the goal of findingcritical patterns and features and assessing changes in themodel response due to changes in loading, size of cracks, con-tact regions and a myriad of application-specific model pa-rameters. The task is tedious and time consuming and in thecurrent state of the art often involves either a round-trip callto the underlying finite element simulation, or manual accessand parsing of data files from a separate storage subsystem.This prevents real-time, free style, exploration of the modelresponse. Further, and perhaps more importantly, this stac-cato mode of exploring response data is, by its nature, a hin-derance for understanding how the response is affected bychanges in model structure, topology, boundary conditionsand other parameters. Discontinuous FFD presents a prac-tical mechanism for storing finite element data sets with dis-continuities and conveying them effectively to end users. Wehave shown that by using DFFD, even data sets with spatialdiscontinuities can be encoded and then replayed, renderedand manipulated at interactive speeds. This allows usersto explore the data produced by the numerical simulationsand quickly find the specific spatial regions, combinationof parameters, or critical lengths of contacts/discontuities,etc. that are of most interest. This information can then beused to access portions of the underlying raw data for ad-ditional, more detailed analysis. DFFD provides the abilityto essentially summarize and capture large amounts of fi-nite element data sets, while allowing users to visualize andbrowse warped data, possibly with discontinuities and then”zoom in” to access specific data items at interactive rates.This is a key supporting technology for the development ofscientific computing applications.

6. ACKNOWLEDGMENTSThis research was support in part by the Israeli Ministry ofScience Grant No. 01-01-01509, and partially by the Fundfor Promotion of Research at The Technion, Haifa, Israel.

The third author would like to thank the Department ofEnergy’s Computational Science Graduate Fellowship, andthe Krell Institute, for funding a portion of this research.

The face model was retrieved from the 3D-cafe web site,www.3dcafe.com. All the illustrations were prepared withthe aid of the Irit solid modeling system,www.cs.technion.ac.il/∼irit.

We would like to thank Jihad El-Sana who allowed us to usehis PHANToM(tm) device for the duration of this project.

7. REFERENCES[1] J. Berkley, G. Turkiyyah, D. Berg, M. A. Ganter, and

S. Weghorst. Real-time finite element modeling forsurgery simulation: An application to virtual suturing.IEEE Trans. Vis. Comput. Graph., 10(3):314–325,2004.

[2] D. Bielser, V. A. Maiwald, and M. H. Gross.Interactive cuts through 3-dimensional soft tissue. InP. Brunet and R. Scopigno, editors, ComputerGraphics Forum (Eurographics ’99), volume 18(3),pages 31–38, 1999.

[3] M. Bro-Nielsen. Finite element modeling in surgerysimulation. Proceedings of the IEEE, 86(3):490–503,1998.

[4] C. Bruyns and S. Senger. Interactive cutting of 3dsurface meshes. Computers & Graphics,25(4):635–642, 2001.

[5] E. Cohen, T. Lyche, and R. Riesenfeld. Discretebsplines and subdivision techniques in computer aidedgeometric design and computer graphics. ComputerGraphics and Image Processing, 14:87–111, 1980.

[6] E. Cohen, R. F. Riesenfeld, and G. Elber. Geometricmodeling with splines: an introduction. A. K. Peters,Ltd., Natick, MA, USA, 2001.

[7] M. S. Ellens and E. Cohen. An approach to c−1 andc0 feature lines. Mathematical Methods for Curves andSurfaces, pages 121–132, 1995.

[8] C. Forest, H. Delingette, and N. Ayache. Cuttingsimulation of manifold volumetric meshes. In T. Dohiand R. Kikins, editors, Medical Image Computing andComputer-Assisted Intervention (MICCAI), volume2489, pages 235–244, Tokyo, Japan, September 2002.Springer.

[9] F. Ganovelli and C. O’Sullivan. Animating cuts withon-the-fly re-meshing. In Eurographics 2001 - shortpresentations, pages 243–247, 2001.

[10] A. Mor and T. Kanade. Modifying soft tissue models:Progressive cutting with minimal new elementcreation. In Medical Image Computing andComputer-Assisted Intervention (MICCAI)., volume1935, pages 598–607. Springer-Verlag, October 2000.

[11] H.-W. Nienhuys and A. F. van der Stappen.Combining finite element deformation with cutting forsurgery simulations. In A. de Sousa and J. Torres,editors, EuroGraphics Short Presentations, pages43–52, 2000.

[12] H.-W. Nienhuys and A. F. van der Stappen. A surgerysimulation supporting cuts and finite elementdeformation. In W. J. Niessen and M. A. Viergever,editors, Medical Image Computing andComputer-Assisted Intervention, volume 2208 ofLecture Notes in Computer Science, pages 153–160,Utrecht, The Netherlands, October 2001.Springer-Verlag.

[13] H.-W. Nienhuys and A. F. van der Stappen. Adelaunay approach to interactive cutting intriangulated surfaces. In J.-D. Boissonnat, J. Burdick,K. Goldberg, and S. Hutchinson, editors, FifthInternational Workshop on Algorithmic Foundationsof Robotics, volume 7 of Springer Tracts in AdvancedRobotics, pages 113–129, Nice, France, December2004. Springer-Verlag Berlin Heidelberg.

[14] S. Schein and G. Elber. Discontinous free-formdeformation. In The 12th Pacific Conference onGraphics and Applications (PG), pages 227–236, 2005.

[15] T. W. Sederberg and S. R. Parry. Free-formdeformation of solid geometric models. ComputerGraphics, 20:151–160, Aug 1986.

[16] G. Sela, S. Schein, and G. Elber. Real-time incisionsimulation using discontinuous free form deformation.In S. Cotin and D. N. Metaxas, editors, MedicalSimulation: International Symposium, ISMS 2004,Cambridge,MA, USA, June 17-18, 2004, volume 3078of Lecture Notes in Computer Science, pages 114–123.Springer, June 2004.

[17] SensAble Technologies, Inc. PHANTOM hapticdevice. http://www.sensable.com

[18] N. E. Seymour, A. G. Gallagher, S. A. Roman, M. K.O’Brien, V. K. Bansal, D. K. Andersen, and R. M.Satava. Virtual reality training improves operatingroom performance: Results of a randomized,double-blinded study. Annals of Surgery,236(4):458–464, 2002.

[19] H. Tan, M. Srinivasan, B. Eberman, and B. Chang.Human factors for the design of force-reflecting hapticinterfaces, 1994.

[20] D. Terzopoulos, J. Platt, A. Barr, and K. Fleischer.Elastically deformable models. Computer Graphics(Proc. SIGGRAPH’87), 21(4):205–214, 1987.

[21] L. M. Vigneron, J. G. Verly, and S. K. Warfield.Modelling surgical cuts, retractions, and resections viaextended finite element method. In C. Barillot,D. Haynor, and P. Hellier, editors, Proceedings of the7th Int. Conf on Medical Image Computing andComputer-Assisted Intervention - MICCAI 2004 (2),volume 3217 of LNCS, pages 311–318, Saint-Malo,France, Sept 2004. Springer Verlag.

[22] W. Wu and H. Pheng-Ann. A hybrid condensed finiteelement model with gpu acceleration for interactive 3dsoft tissue cutting. Computer Animation and VirtualWorlds (CAVW) Journal, 15(3-4):219–227, 2004.