On Point-based Haptic Rendering

Haptic rendering is referred to as an approach for complementing graphical model of the virtual object with mechanics-based properties. As a result, when the user interacts with the virtual object through a haptic device, the object can graphically deflect or deform following laws of mechanics. In addition, the user is able to feel the resulting interaction force when interacting with the virtual object. This paper presents a study of defining the levels-of-detail (LOD) in point-based computational mechanics for haptic rendering of objects. The approach uses the description of object as a set of sampled points. In comparison with the finite element method (FEM), point-based approach does not rely on any predefined mesh representation and depends on the point representation of the volume of the object. Different from solving the governing equations of motion representing the entire object based on pre-defined mesh representation which is used in FEM, in point-based modeling approach, the number of points involved in the computation of dis-placement/deformation can be adaptively defined during the solution cycle. This frame work can offer the implementation of the notion for levels-of-detail techniques for which can be used to tune the haptic rendering environment for increased realism and computational efficiency. This paper presents some initial experimental studies in implementing LOD in such environment.


Introduction
Interactive virtual training environment has been gaining a great popularity over the past decades.One of the main challenges of such development is the modeling of deformable objects such as soft tissues, organs, tendon, and skin.The two main requirements for modeling of such objects is the availability of material and biological properties and the need for the efficient/fast computational framework for achieving an interactive computational frame rate.In general, when interacting with the rigid model of the virtual object, the computational framework should support the graphic rendering rate of 20 -30 Hz and the haptic force feedback rate of about 1 KHz [1].However, when interacting with deformable or flexible objects, the force feedback rate can be comparably reduced in order to create a realistic haptic feedback.Developing an efficient and realistic computational model of deformable object is one of the main challenges for achieving an efficient haptic interaction environment.
Two main approaches have been followed in the past for modeling deformable objects.One of the approaches is based on the mass-spring methodology which repre-sents the object as discretized mass points with spring connectivity.For example, [2,3] modeled a 1D suture object, and [4][5][6][7] modeled a deformable cloth-like object representing soft tissues.In general mass-spring modeling approach offers a simple and computationally efficient framework for developing interactive virtual training environment.Another approach for modeling deformable or flexible objects is based on finite element methods (FEM) and its various extensions.For example, [8] presented a simplified computational set-up for realtime simulation of soft tissue, [9][10][11] presented a fast linear solution for real-time user interaction with deformable objects.In general, due to the existence of large sizes of system matrices and the definition of shape functions, most of the solution approaches require an increased computational load which is in general not suitable for realtime interactive applications.For example, [12] developed an algorithm for enhancing the computational efficiency of the solution which still results in a very with limited extension to an interactive application.
Given the material properties of the object (e.g.Young's module and Poisson ratio), FEM can still offer a more accurate representation of the physical objects in com-parison with the mass-spring model.The main challenge of implementing FEM remains to be the design and development of a fast an efficient computational framework which may allows real-time application in the area of multi-modal haptic user interaction.
An approach for modeling deformable objects is referred to as the meshless method [13] which uses descretized element nodes (or points) to construct the object and uses the governing equations of motions through usage of radial basis weighting functions.[14] presented one of the earlier meshless methods in physics-based animation of objects.[15] presented a meshless elastic and plastic deformation framework.[16] proposed a meshless paradigm for modeling the point-sampled deformable object in real time.[17] proposed a similar meshless framework for modeling multiple deformable objects for user interaction purposes.One of the extensions of meshless method is referred to as the point-based (or particlebased) approach.[18] proposed a point-based modeling approach for graphic simulation of elastic and plastic objects.[19] presented a point-based approach for animating elasto-plastic solids, where a novel computational scheme based on displacement gradient is introduced using neighborhood optimization.In this analysis it was shown the point-based approach can give comparable results to that of approach based on FEM and hence can be used as an accurate representation and solution in haptic interaction [20].In this paper, we demonstrate the implementation of a similar approach suitable for haptic rendering.Comparing with mass-spring model, the point-based approach incorporate the material properties object implicitly in the modeling framework which has a significant advantage on the degree of accuracy of model.Comparing with FEM, the proposed modeling formwork can be potentially applied to real time rendering applications by adaptively including sample points in the computational model at the interactive rate.
The paper is organized as follow: Section 2 presents an overview of the point-based computational mechanics; Section 3 presents a definition for LOD which was used in this paper; Section 4 presents some experimental studies of our proposed LOD and Section 5 presents some concluding remarks.

Point-Based Mechanics
Point-based approach discretizes the control volume of the object into distributed points with no predefined connectivity or meshes (Figure 1).In contrast to FEM which defines an interpolation function (shape function) between the fixed defined nodes associated with a particular element [21], in point-based approach, functions such as Radial Basis Functions (RBF) is selected for interpolation of a continuous function based on a set of distinct arbitrary sample points defined in the control volume of the object [22].
Initially, through a weighting function, each point is defined to have a given mass in relation to its neighbor points.This given mass is computed by dividing the mass of the object by the number of points which needs to be maintain during each solution cycle.The governing equation of motion of the object can be written as: , where U is defined as the spatial gradient of strain energy function with respect to displacement vector.The following equation defines the computation of strain which is used in the definition of  (strain energy function).
where is the displacement vector of a point.U One of the main computational challenges for the solution of Equation ( 1) is the computation of the gradient ( ) defined in the Equation (2).In RBF approaches, Smoothed Particle Hydrodynamics (SPH) [23] is commonly used for the numerical computation of gradient function.Moving least square (MLS) is a computational tool belonging to the RBF methodologies which reconstructs continuous functions from a set of unorganized point samples (discrete points).In addition, a weighting function can be defined to weight the least squares measure and bias the computation towards the region around a point at which the reconstructed value is being evaluated [24,25].
The selection of weighting functions used in the computational model plays a very important role.In modeling deformable and flexible objects, there are several criterion which can be used for choosing a suitable weighting function.First the value of the weighting function should always be positive since for example, the mass and density of points are always defined as a positive integer; secondly, the weighting function should be decreasing in its value when the distance between the reference point and its neighbor points increases (i.e. the influence is local and vanishes as the distance increases).
In general, several weighting functions can be defined which is a modified version of composite quadratic tensor-product weight function defined in [26,27].Some examples can be: where is the distance between any two points (i.e. one being a reference point) and is a defined cut-off value.The cut off value in the weighting function has two main purposes.First, when is decreasing, it localizes the weights to points which are within the reduced neighborhood of the current reference point.When increases, it can offer a uniform and smooth contribution to the neighbor points.In general, weighting functions ( 4) and ( 5) are used for fluid modeling.( 4) is used for solving a class of particle clustering problem and ( 5) is used for viscosity computation.( 6) is also for modeling elastic object.
As an example, in Equation ( 1), the density of each point i is computed as: where ij is the distance between point and .The volume of each point can now be computed as: In Equation ( 2), the gradient of the displacement is defined as: where , , , , ,  are the three row vectors denote the derivatives with respect to (x, y and z).
Using MLS, the basic idea is to expand the displacement about a point using Taylor Series expansion and define the displacement of the adjacent points in terms of the current point and up to the first order expansion of the series.The interpolated displacement is then define by value which minimizes the square of the error (Appendix).The overall computation results of evaluated at the point can be written as: Copyright © 2013 SciRes.
where for example, denotes the x-component of the displacement vector at t e point.In the above th i i M is a 3 × 3 matrix which can be precomputed at and defined as: where is a distance vector between points and rence ij r i j expressed in the refe coordinate frame.Given the value strain from Equation (2) the strain energy stored computed at a point i can be written as   The body force defined by tion ( 1) is a function of displacement vector at point d a  used in Equai e and the isplacements of all the neighbors j .T king th derivative with respect to these displacements yields the forces acting at a point i and all its neighbors j : where is the body force at a point is the st is th e j , i  rain energy at a point i and i v e volume of a point i .Based on Newton's third law, the body forc acting on a point i is computed as the negative sum of all the body forces acting at its neighbor points, the expr n Using ession for  and U  , we ca determine the final expression of U i j   .The final expressions for the internal body forces can be written as: In this section, we e results tion vironment based on the proposed framework.We also present some comparison study of ev luating tip deflection Intel P4 3.0 GHz CPU, 1G RAM and t haptic device.We define a collection of sectional objects composed by 90 points ((3 × 3 × 3)) distributed with the spatial distance between each point of 0.015 m.In this experiment, both ends of the objects were fixed and represented with the red spheres.
In our experiment, we study the effect of different weighting functions defined in Equations ( 3)- (6).For example, Figure 2  In order to validate the computational model of the object based on the point-based mechanics approach, we conducted an experimental comparison with a commercially available standard FEM package.Our experimental model is similar to our haptic interaction model except we have constrained one end of the block while making the other end free of any constraints (i.e. a cantilever model).We have selected Young's Modulus to 5 10 Pa and Poisson's ratio to 0.4.For the p d m odel, we also have selected the cut off distance, h , in Equation (3) to be 0.1 m.At each experiment, we have recorded the shape and the tip deflection of the model under a constant load.For the FEM, we also have defined the same object using the same boundary conditions and loading condition using a commercial FE software Comsol (http://www.comsol.com/).Figure 3 shows both the visualization and the results of our c parative study.
Figure 4 compares the magnitude of the deflecti n of a point at the tip of the cantilever.The axes are the magnitude of deflection under four constant load conditions.As it can be seen, under the same constant tip load force, both methods can yield to comparable results.

Definition of Levels-of-Detail
The proposed framework offers an approach where global deformation of an object can be computed using small number of points used in the local deformation solution.In order to establish relationships between the global and local deformation of object as a function of the sampled points, we study how the resolution of the object base model (i.e.object defined by foundation p for each of the points.Intuitively the basic approach is that we assume that the local eformation affects the points closer to the contact region. The local and internal deformation can propagate from the contact region to points defining the boundary of the object.Our initial algorithm associates the larger radius of propagation influence to smaller number of points bed The contact force propagate through-out the body and the resultant internal forces are less propagated to the points beyond certain thresho localization or levels-of-detail (LOD) can be then be implemented to capture the above motivation where one should be able to both increase the realism of the haptic interaction while maintaining a high haptic rate.We propose an approach by defining influence ranges as a function of the distance of a point from the contact area.For example, in Figure 5 and at the instant of contact a dense sample of points of object inside a volume located at the tip of a probe can be considered as points located at the proximity of the contact area. in between regions.We proposed a pseudo-random point selection algorithm which selects points within preset ranges/radii under pre-defined weighting factors defined through a random number generator.For example, the selection weighting factor for the localization range (i.e.range within the contact area) is set to be large since we require a high density of points in this range.On the other hand, the selection weighting factor for the influence range is set to be small since we only need a limited number of points to propagate the deformation from the contact region to the boundary points.This approach is analogous to the LOD scheme used in the finite element model, where the mesh density varies from fine mesh in   ).The points within the propagation levels are also selected based on the weighting factor of the propagation level   i .i K is a monotonically increasing integer in terms of propagation level i , which controls the weighting factor of the propagation points being selected.The weighting factor of selection for level i is 10 10 i K  .The upper bound of i K is set to be 10.

Experimental Analysis
We conduct an experimental study to compare and analyze how the number of the propagation levels and the selection factors can affect the LOD model in haptic rendering.Figure 7 shows the initial foundation points which were used to rep esent the experimental object.Figures 8 and 9 show some examples of our experimental r results comparing the different propagation levels and their selection weighting factors along with the system update rate.In the experiment, we apply a constant pulling force at the 111th point in the model, and plot the magnitudes of the displacements of all the points in the model at the 9th second in run time.The localization distances 1 Tr and 2 Tr remain unchanged and the selected

Conclusion
One of the main challenges of haptic rendering of virtual objects is methods for their realistic representation which can also offer a fast interactive computational framework.This paper investigated an approach which can be a bridge  between the realism a l efficiency.The paper presents an overview of point-based mechanics approach and also demonstrated its implementation in a typical haptic interaction environment.In addition it is shown that the point-based mechanics approach can be defined and modeled which can give a comparable computational results to that of standard FEM.Another key advantages of the point-based method is that one can initialize a control volume of an object with collection of points only subset of these points can be sampled during the simulation process.This is an important feature since during the run-time of simulation process, one can adaptively sample more points in the computational model for increased accuracy.In this paper, we investigated a 3D point-based object modeling approach for haptic rendering.It was shown that this approach can offer a comparable results to that of the FEM [20].The proposed framework allows interaction where user can manipulate the point-based object model using a haptic device.We present a notion of levels-of-detail (LOD) where foundation points which can represent the object can be grouped into different levels.For this early study, we have presented an approach were base on the distance of points from the contact area.Points can be populated with different densities in various geometrical regions away from the contact uding regions defined by the boundary points.Feasibility of the proposed LOD approach was studied to investigate the practicality of the proposed approach in changing the resolution of the points during the haptic interaction.This framework allows both inclusion of the material properties of the object and also direct mapping to various medical imaging modalities where scanned point-clouds can be mapped to the haptic interaction framework.h treats the 3 atrix as Substitute Equation ( 16) into Equation ( 17), we have: For derivation of the numerical solution of U  used in Equation ( 1), we utilized use the simplified expression defined in Equation (10)  respectively.In the following, we define an approach where we can solve for these three vectors separately.
For example, let us evaluate Given point i and its x-component displacement   x i u X , the solution for the gradient the differential form of the x-component of the displacement vector

 
x U u .By definition, method based on MLS is first order accurate.Using the first order Taylor expansion of re whe i X is the position vector of the th i point, X  is the small change in position,

 
i j i j i j r r X X   between point i and j ,   x j u X of the neighbor point j of point i can be approximated as, where   x j u X  is the approximated value of   x j u X .The measure of the error of the above approximation is given by a sum of the squared differences We can solve for

 
x i u X for simplicity.

Figure 1 .
Figure 1.Illustration of the point-based mechanics model.The volume of the object is discretized into points.The actual deformation of the object is achieved by the deformation of each points inside the control volume.i X is the position vector (a) shows the computation of foundation points based in the weighting function defined in Equation (3).This Figure also shows a virtual probe which represents the presence of the user in the haptic rendering environment.As shown in Figure 2(b), the user can interact with the point-based model of the block through haptic feedback device.When the contact is m een the virtual probe and the object, the point-based model of the object can deform and the resultant interaction forces is feb-back to the haptic device.In this Figure, green sphere represent the contacted point which the user is interacting with.

Figure 2 (
c) shows and example of such haptic interaction.The Figure shows a plot of haptic force which was fed-back to the user over the duration of a part of the experiment.

Figure 2 .
Figure 2. Experimental results of haptic interaction with a deformable model.In the experiment, the users presence in the virtual scene is represented by a cylindrical probe.Points in red are boundary points; Points in green is the point being dragged by the probe; Points in blue are points which deform due to the action of the probe.(a) The experimental result of weighting function defined in 3; (b) Shows a user manipulate the point-based object through haptic device; (c) Haptic force feedback profile fed-back to the user through the haptic device

Figure 3 .Figure 5 .
Figure 3.Comparison between point and FEM based elastic cantilever deflection.The display in the left column shows deflection results based on point based model; results in the right column illustrate the deflection results based on FEM.Both results are obtained using constant Young's Modulus and Poisson's ratio .The first row shows the deflection under constant load vector F = (0,1000,0), the second row is for of along oad force vectors are as follows: for the first case in row one Y = 10 8 , G = 0.4, F = (0,1000,0); The second case in for F = (0,10000,0) and the third row is for load vector F = (0,10000,0)., .8 10 0 4 E G   with the constant l

Figure 4 .
Figure 4. Comparison of the magnitude of deflection between the point-based and FEM models.The deflection data was collected on the upper right point in the front face of the end tip.The black bars represent displacement under the point-based model, white bars indicate displacement based on FEM.

2 r 2 ,r
Similar tance, i P , where i indicates the i level of propagation.We also define i P to be a linear function of h .By changing the constants  1 k k , the threshold distance of each propagation level can vary.Once the contact is detected, the dynamic selection algorithm initiate is 1, and the point is directly selected.If the distance is between 1

Figure 6 .
Figure 6.Schematic of the point-based LOD model.A virtual probe is contacting an object, and the blue point is the contact point.Two localization distances , r r T T 1 2 and two propagation distances , P P 1 2 are initialized.P 3 is the last propagation distance which can include all the boundary points.Red points are the boundary points; Points selected by the algorithm are shaded in black.

Figure 7 .
Figure 7. Foundation points representing the object used in the proposed LOD studies.neighbor points are shaded in brown and blue.We analyze how different cut-off distances   r T D m re n poi 2 r T re points of the localization can affect the frame rate in the LO odel.Table 1 compares the run time of the diffe nt localization cut off distances on different foundatio nts.As we increase the distance thresholds and , the rendering time per frame increases since mo are incorporated into the computation of deformation.

Figure 8 .Figure 9 .
Figure 8.Comparison of different propagation level setups.First row is the definition of the propagation level; Second is the associated frame rate; Third row is the displacement plot of the points; Fourth row is the visualization of the displacement; Fifth row is the schematics of the propagation level.In this experiment, we have defined one propagation level with low selection weighting factor (0.4).The local points are colored in brown and dark blue, the propagation points are colored in green.
error e .This beco the one s an optimi-me zation problem.By setting the derivative of e with respect to neighborhood of the i point, we have:

(
neighbor points f point i need to be taken into consideration and weighted by the weighting function  

r
is the x-component of distance vector ij r ).The spatial gradient of the other two components of the displacement vector ( in the same derivation.In the main context of the thesis, we use

Table 1
compares the run time of the diffe nt localization cut off distances on different foundatio nts.