Haptic Interaction with Volumetric Datasets Using Surface-based Haptic Libraries

Size: px
Start display at page:

Download "Haptic Interaction with Volumetric Datasets Using Surface-based Haptic Libraries"

Transcription

1 Haptic Interaction with Volumetric Datasets Using Surface-based Haptic Libraries Silvio H. Rizzi Cristian J. Luciano P. Pat Banerjee Department of Mechanical and Industrial Engineering, University of Illinois-Chicago Department of Mechanical and Industrial Engineering, University of Illinois-Chicago Departments of Mechanical and Industrial Engineering, Computer Science, Bioengineering, University of Illinois-Chicago ABSTRACT An algorithm to provide haptic feedback directly from volumetric datasets is introduced in this paper. The algorithm is able to reproduce and extend the functionality of surface-based haptics rendering methods. It can be easily implemented on top of existing haptic libraries, such as Sensable s OpenHaptics. In addition, our approach overcomes poor performance in OpenHaptics for models consisting of a large number of polygons (1Million+). The algorithm allows detecting collisions with multiple 3-dimensional shapes. After comparing alternative approaches, such as Depth Buffer and Feedback Buffer, as well as SenseGraphics Volume Haptics ToolKit (ScalarSurfaceFriction mode), our algorithm delivers the highest performance in terms of rendering time. 1 INTRODUCTION Lately, volumetric data sets have acquired extraordinary significance in medical simulation. Computed Tomography (CT) and Magnetic Resonance Imaging (MRI) are examples of ubiquitous technologies from which 3-dimensional (3D) data sets are obtained. 3D computer models are commonly generated for Virtual Reality and Haptics simulation of medical and surgical procedures [1], [2]. Traditionally, a combination of scene graph managers [3], [4] and haptic libraries [5] is used in simulations for simultaneous graphics and haptics rendering of 3D models. Those libraries commonly require 3D objects to be represented as polygonal meshes, i.e. surfaces in 3D space consisting of multiple triangles. These polygonal meshes are usually generated using an isosurface extraction algorithm such as Marching Cubes [6]. Further processing may be required in order to reduce the number of triangles in each model (decimation) and to obtain smooth surfaces. All these processing stages often demand several hours - or even days- to complete, requiring the use of additional software tools and a considerable amount of human intervention to generate high quality 3D models. Although methods to accelerate and improve the degree of automation of the segmentation process have been discussed in the literature [7], alternative approaches must be explored in order to improve the simulations. OpenHaptics [5] is one of the most popular commercial haptic libraries supporting SensAble haptic devices [8], [9]. It is extensively used in a number of systems for Haptics and Virtual and Augmented Reality applications, including H3D [4] and OpenHaptics-enabled versions of the software described in {srizzi2,clucia1,banerjee}@uic.edu [10],[11]. It has, however, serious limitations when it is required to haptically render highly complex shapes. Its two modes (Feedback Buffer and Depth Buffer) impose their own constraints on the model to be rendered. On one hand, Feedback Buffer delivers high quality haptic rendering, however its performance is dependent on the number of polygons in the model. On the other hand, Depth Buffer is insensitive to the number of polygons, but there are some cases where it exhibits noticeable discontinuities when feeling shapes with deep, narrow grooves or tunnels [12]. To overcome the limitations discussed above, a more natural and straightforward approach would be to implement a direct volume haptics algorithm. Volumetric data could then be used directly as delivered by imaging systems, reducing or even eliminating the need of preprocessing stages to build models as polygonal meshes. Furthermore, a robust direct volume haptics could be a viable alternative to address those problems where OpenHaptics fails. In this work an algorithm for volume haptics based on proxy methods for point-based haptic interaction is presented. This algorithm allows the use of 3D datasets without computationally expensive pre-processing stages. In addition, the algorithm is able to detect collisions based on the proxy position. As in surfacebased haptics, the touching face is also determined, detecting whether the probe is at either side (back or front) of the colliding shape. The performance of the algorithm is evaluated in terms of rendering time using representative datasets, and is compared to other existing haptics approaches. 2 LITERATURE REVIEW AND RELATED WORK 2.1 Polygonal Mesh Haptics Rendering Polygonal mesh methods require 3D models to be represented as rigid polyhedra obtained from the original dataset. Within these methods, the god-object algorithm, used for single-point contacts, was proposed in [13]. This method uses a god-object to constrain the haptic interface point to the mesh surface, avoiding penetration. The tip of the haptic device is coupled to the proxy through a spring model. In each haptic frame the force rendered is proportional to the distance between the probe and the proxy. A virtual proxy point of finite size, to avoid fall-through due to numerical gaps in polygonal meshes, was proposed in [14]. The same paper also proposes HL, a haptic interface library based on a graphics library (GL) from Silicon Graphics. The proxy method and the idea of a haptic library based on OpenGL were later implemented in SensAble s OpenHaptics [5], [15]. 2.2 Volume Haptics Rendering In volume haptics rendering, force feedback is generated from volumetric datasets. Iwata and Noma present in [16] an approach called Volume Haptization. For scalar data, they proposed mapping voxel values to torque vectors or mapping the gradient of

2 voxel values to force vectors. Avila and Sobierajski [17] describe a gradient method where the normal and viscosity force components at a given point depend on the material density and the gradient magnitude at that point. The disadvantage of these methods is that they can produce instabilities or undesired vibrations, especially in regions containing sharp transitions, where the gradient magnitude and direction can vary abruptly. Volume haptics has been systematically studied in a series of publications [18], [19], [20], [21]. In [18], a method to generate surface and viscosity haptic feedback from volumes, along with simulation of material properties is presented. The method evolved in [19], where haptic primitives, such as directed force, point, line, and plane were presented as building blocks of their proxy-based method. Based on those haptic primitives, a number of haptic modes were constructed, i.e. viscosity mode, gradient force mode, vector follow mode, and surface and friction modes. The method is refined in [20], which describes a numeric solver to compute the final forces. In [21], the Volume Haptics ToolKit (VHTK) is presented and implemented as an extension to SenseGraphics H3D [4] application programming interface (API). 2.3 Intermediate Representation methods Intermediate representation methods were first proposed in [22]. The idea consists of representing touchable surfaces at a given point by a virtual plane tangent to the surface at that point. The collision detection loop runs independent of the servoloop and is updated at a lower rate, whereas the servoloop is updated at a higher rate required to render stiff objects. Combining intermediate representations and lower update rates simplifies the collision detection problem and helps to quickly detect collisions between the tip of the haptic device and the virtual plane. The method, however, has a fundamental limitation. If the update rate for the virtual plane is too low, the operator will perceive discontinuities as the proxy jumps from one plane to another. This problem was addressed in [23], where the recovery time method was presented. The method reduces the magnitude of the force immediately after a new virtual plane is computed, allowing to gradually and smoothly bring the tip of the haptic stylus to the new surface. A simple algorithm using the intermediate representation method on volumetric data was presented in [24]. The algorithm extracts virtual planes from the volumetric data without the need of precomputing isosurfaces. This algorithm, combined with a proxy-based method, allows to generate haptic feedback directly from the volumetric data. However, when the proxy position lies on one side of a thin object and the haptic device is moved to a point on the other side of the thin object, then collision with the object is ignored. If this happens, the virtual plane is not computed, no force is generated, and the proxy does not stop on the surface of the haptic object. This issue is exacerbated when the haptic device is moved at relatively higher speeds. In [25], an intermediate local representation which uses Marching Cubes to generate isosurfaces from voxel data adjacent to the haptic stylus position is proposed. Local isosurfaces from a 7x7x7 cube are passed to the haptics loop in GHOST as an intermediate representation of the local volume data. 3 METHODOLOGY 3.1 Overview Our algorithm is based on proxy methods and is inspired by the intermediate representation method described in [24]. It essentially consists of detecting collisions between the proxy point and one or more 3D shapes representing objects of interest. Shapes are defined from a set of voxels using transfer functions without the need to generate polygonal meshes. The algorithm receives two points as parameters (Start and End) for each haptic frame rendered by the servoloop at 1 KHz. The Start point is the proxy position calculated in the previous haptic frame whereas the End point is the current position of the haptic device. The collision detection routine detects the intersection between a line segment (determined by Start and End) and a shape surface (Figure 1). Shape surfaces are defined in terms of voxel intensities, similar to isosurfaces. The algorithm returns the 3D coordinates of the intersection T point P, the normal vector N of End the surface at the intersection point, and the touched side (front or back) of the shape surface. It N P also returns TRUE if there is a collision or FALSE otherwise. With this information, the underlying haptic library Start computes the forces as in the case of polygonal mesh haptics, and positions the proxy at the point P when a collision with the shape is Figure 1. Problem geometry detected. 3.2 Algorithm Details Figure 2 shows a flow diagram of the algorithm. If the haptic stylus has not moved in two successive haptic frames and there was no collision in the previous frame, then the Start and End points are exactly the same and therefore, the function returns FALSE. Otherwise, it continues with a rough bounding-box comparison between the line and the volume, quickly returning false if they are disjoint. If the line is inside the volume bounding box, for each point P on the line segment from the Start to the End points, the algorithm checks the intensity to the closest voxel V by a set of window transfer functions defining the multiple shapes. If the voxel intensity is outside the windows specified through the transfer functions, then the haptic device has not yet collided with any shape and the loop continues with the next point. If none of the points on the line segment collide with any shape, the function returns false. In case the intersected voxel V lies within any of the transfer function windows, the algorithm returns the 3D coordinates of the point P as the surface contact point. The density of the voxel V is used to determine which of the shapes has been touched by the haptic device by comparing it with the ranges defined by their transfer functions. The normal vector N, which is perpendicular to the volumetric isosurface at the contact point P, is determined by computing the gradient of the neighbor voxels using the central differences method. The contact point P and the normal vector N define a plane T (tangential to the shape) which serves as an intermediate representation of the isosurface. This plane is useful to determine if the haptic device is touching either the front or back side of the shape. If the Start point is in front of the plane T and the End point is behind it, then the colliding face is front. Otherwise, the colliding face is back. In this case, the algorithm inverts the direction of the previously computed normal vector N. 3.3 Algorithm parameters There are two essential design requirements for this algorithm. First, it must be efficient in the sense that it must not affect the haptics servo loop sustaining a minimum 1 KHz haptic frame rate. Second, it must be robust to avoid undetected collisions. Both requirements are directly affected by the selection of the step size

3 with which successive discreet points along the line segment (shown in Figure 1) are evaluated. If the step size is too big, a collision could be overlooked, especially for thin structures. On the other hand, a finely grained step size could help guarantee collisions are always detected, but it could also severely impact the haptic frame rate, since the algorithm is executed in the servo loop thread. If we parameterize the line segment from Start to End with parameter i, where i is in the interval [0,1], then the following linear interpolation equation gives any point P in the line segment as a function of i: P = (1 i) Start + i End Our algorithm traverses the line segment by varying i from 0 to 1, incrementing it by a value of delta in each successive iteration. Computations of P are done in continuous space and further converted to discrete voxel coordinates for retrieving voxel values. No sub-voxel resolution is needed. Users can move the haptic stylus at various speeds, which is reflected in corresponding variations of the line segment length from Start to End. Therefore, delta must be carefully selected each time the algorithm is executed. A naïve approach (1) Intersect (Start point, End point, Intersection point, Intersection normal, Colliding face) Start point = End point? No Handle collision Begin Yes No Does line bounding box collide with volume bounding box? Intersection point = P Yes Determine the colliding isosurface For each point P in the line Find closest voxel V to point P Compute normal vector N from voxel gradients at vicinity of voxel V Yes Is voxel V transparent? Define tangential plane T perpendicular to N End loop No Is Start point in front of T and is End point behind T? No Handle collision between line and volume Yes Colliding face = FRONT Colliding face = BACK Intersection normal = N Intersection normal = -N Return false Return true End Figure 2. Flow diagram of the algorithm

4 would be to divide the line segment into a constant number of steps, so the number of iterations is constant for all moving speeds. However, this approach would fail to detect collisions when the haptic device is moved at high speeds, especially when structures are thin. The problem is solved using a variable step size as follows: k delta = (2) End Start where k is a constant that depends on the voxel size. In this way, for higher speeds, the interval [0,1] representing the line segment is divided into a higher number of steps. As shown in Figure 2, when the haptic device does not move in two successive haptic frames (Start = End), the algorithm returns immediately, preventing division by zero in Equation (2). Every time the algorithm is executed, the actual distance between successive points P to be evaluated in a given line segment is constant, regardless of the velocity of the haptic stylus. Thus, initializing k to be equal to or less than the minimum dimension of voxels is a necessary condition to prevent undetected collisions. 3.4 Transfer Functions The algorithm is able to simultaneously detect multiple shapes from volumetric isosurfaces defined by their individual ranges of voxel intensities. A transfer function is defined for each haptic shape whereby a binary output value is assigned to each possible voxel intensity. In graphics volume rendering techniques, piecewise linear transfer functions are commonly used to specify color intensities and transparency. Similarly, in our approach transfer Touchable Non- Touchable Opacity Graphics (Volume Rendering) I 1 I 2 I 3 I 4 Haptics I 1 All non-opaque I 4 values are touchable Voxel Intensity Voxel Intensity Figure 3. Comparison of Graphics and Haptics transfer functions functions are used to determine whether a voxel should be touchable or not based on its intensity. Figure 3 presents a comparison between graphics volume rendering and haptic transfer functions. The first transfer function exemplifies opacity as a function of voxel intensities. Gradually increasing or decreasing values of opacity, represented by ramps, are allowed and commonly used. On the other hand, in the haptics transfer functions only discrete binary outputs are permitted. In this way, voxels with intensities within the rectangular window defined by the transfer function will be regarded as belonging to the shape and will, therefore, be touchable. In other words, when the collision detection algorithm finds a voxel whose intensity is within the rectangular window, it will return TRUE, indicating a collision with the shape was detected. There are two advantages to using haptic transfer functions. First, since they are similar to the ones commonly used in volume visualization techniques, a single transfer function may simultaneously specify graphics and haptics properties for each shape. In Figure 3 it is shown how a haptic transfer function can be obtained from its graphics counterpart. As a result, all nonopaque values will be touchable and haptic parameters such as stiffness, static friction, and dynamic friction will be assigned to the corresponding voxels. The second advantage is that preprocessing steps such as segmentation and construction of polygonal meshes for each shape are no longer needed. In essence, the haptic transfer functions implemented resemble an operation of binary thresholding, by which different subsets may be determined from the original dataset according to their voxel intensities. Therefore, the specification of transfer functions provides all the information needed to generate graphics and haptics visualization, operating only with the original (unmodified) 3D dataset. 3.5 Implementation Our algorithm is intended to take advantage of the efficient force computation implemented in existing haptic libraries. Therefore, the algorithm performs the collision detection and passes to the haptic library all the information needed to compute the forces in the same way it does for polygonal meshes. OpenHaptics allows users to define custom shapes by a callback function which is called in each frame of the servoloop thread, before computing the forces to be sent to the haptic device. The prototype of the intersect callback function for OpenHaptics [26] is as follows: bool intersectsurface(const HLdouble startpt[3], const HLdouble endpt[3], HLdouble intersectionpt[3], HLdouble intersectionnormal[3], HLenum *face, void *userdata ); Our algorithm, implemented as a callback function responding to the intersectsurface prototype, returns the coordinates of the contact point P, the intersection normal vector N, and the touching face (as the third, fourth and fifth parameters, respectively). OpenHaptics computes forces based on the haptic materials associated with the haptic shape (spring, damper, static and dynamic friction), allowing the user to feel the contact and friction between the proxy and the volumetric isosurfaces. Similar to the case of polygonal meshes, by setting the haptic shape s touchable face as HL_FRONT, HL_BACK or HL_FRONT_AND_BACK, the algorithm allows the user to feel only one or both sides of the haptic isosurface. If there is no collision, OpenHaptics updates the proxy position with the current position of the haptic device. On the other hand, if there is a

5 collision, OpenHaptics fixes the proxy at the surface contact point P, and computes the forces to be sent to the haptic device. To detect collisions with multiple shapes, OpenHaptics calls the intersectsurface callback function once for each haptic shape defined. Those multiple calls are made within each individual servo frame at 1 KHz. If the intersectsurface callback function returns TRUE, there is a collision with the current shape. It returns FALSE, otherwise. However, the algorithm needs to be executed only once per haptic frame since the goal is to find the first non-transparent voxel along the line segment from Start to End. The sixth argument (*userdata) in the intersectsurface prototype is used to pass the shape to be evaluated in each call. The collision detection algorithm is executed only during the call corresponding to the first shape in a servo frame. If a collision is detected, the algorithm will determine the touched shape comparing the density value of the voxel against the value ranges of the transfer function. After the first call within a servo frame, there is no need to execute the collision detection algorithm again. However, based on the *userdata parameter, the callback function will return TRUE when the call corresponds to a collided shape, and FALSE for all the other shapes. In this way, OpenHaptics intersectsurface callback function is called multiple times (once per existing shape) but the collision detection algorithm is executed only once in each frame of the servo loop, obtaining a constant runtime independent of the number of shapes. 4 EXPERIMENTAL SETUP AND RESULTS 4.1 Experimental Setup Our setup consists of a Dell Precision 690 workstation, Quad Intel 2.66 GHz processors, 4 GB RAM, two nvidia QuadroFX 4600 graphics cards in SLI configuration, and MS Windows XP Professional Service Pack 2. The haptic device is a SensAble Phantom Desktop, driver version Our haptic library is OpenHaptics 2.0 Academic Edition. The experimental applications were developed using Coin3D 2.5.0, SystemsInMotion s implementation of OpenInventor. SIMVoleon version 2.0.1, also from SystemsInMotion, is used for volume rendering. To test our implementation against other solutions, we have used the Volume Haptics ToolKit (VHTK) from SenseGraphics. In our experiments, VHTK version was built on top of version 1.5 of the H3D API. VHTK includes its own implementation of graphics volume rendering. The software runs on the ImmersiveTouch platform [10], [11], which is used for collocated graphics and haptics, providing also head tracking for viewer s centered perspective. The display resolution is set as 1600x1200 pixels with a vertical refresh rate of 100 Hz with quad buffering for stereoscopic visualization. For the experiments a CT dataset from a patient s head is used, consisting of 512x512x192 voxels linearly converted from DICOM files to 8 bits per voxel. Voxel sizes are 0.48x0.48x1.25 millimeters. A preset value of k = 0.1 mm is used in Equation (2). Since the minimum voxel dimension is 0.48 mm, the preset value of k prevents undetected collisions. A 3D Gaussian smoothing kernel of size seven is applied to the original data in order to smooth edges. 4.2 Performance Comparisons The objective of this experiment is to measure the real-time performance of the presented algorithm in an environment whose conditions are similar to an actual application, comparing it to OpenHaptics Depth and Feedback Buffer methods for polygonal meshes, and also to the ScalarSurfaceFrictionMode in VHTK. For that purpose, different combinations of graphics and haptics rendering modes are tested, as shown in the following table: [DB] [FB] [SVHTK] [VVHTK] [SV] [VV] Surface Graphics using OpenInventor and Surface Haptics using OpenHaptics Depth Buffer Surface Graphics using OpenInventor and Surface Haptics using OpenHaptics Feedback Buffer Surface Graphics using H3D and Volume Haptics using VHTK Volume Graphics and Volume Haptics both using VHTK Surface Graphics using OpenInventor and our algorithm for Volume Haptics Volume Graphics using SimVoleon and our algorithm for Volume Haptics For Volume Graphics, the number of slices for the volume renderer implementations varies from 200 to 2000 slices. For Surface Graphics, it is necessary to generate a polygonal mesh from the original set of voxels. For this purpose, the Marching Cubes implementation in the Visualization ToolKit (VTK) is used. In this case, the number of polygons in the polygonal mesh varies from approximately 100k to 1200k polygons. The number of polygons is modified while preserving the mesh topology using VTK s decimation algorithm. In this way, different meshes with increasing level of decimation (i.e. decreasing number of polygons) are generated from the original mesh polygons 200 slices polygons 400 slices polygons 2000 slices Figure 4. Polygonal mesh including wireframe (left) and volume (right) renderings of the model used for experiments.

6 Performance Comparisons Polygons run time [msec] (log scale) Slices VVHTK - VHTK Volume Graphics and VHTK Volume Haptics (x in slices) VV - SimVoleon Volume Graphics and our Volume Haptics algorithm (x in slices) FB - Coin3D Surface Graphics and OpenHaptics Feedback Buffer (x in polygons) DB - Coin3D Surface Graphics and OpenHaptics Depth Buffer (x in polygons) SVHTK - H3D Surface Graphics and VHTK Volume Haptics (x in polygons) SV - Coin3D Surface Graphics and our Volume Haptics algorithm (x in polygons) Figure 5. Results of performance comparisons. Figure 4 presents different renderings of the model used for the experiments for both Surface Rendering and Volume Rendering. For Surface Rendering, the wireframe is also visualized to give a clear idea of its polygonal density. Note that the models vary from low to very high quality, depending on either the number of polygons or number of slices, which is intended to cover the practical range of actual applications. The results of the experiments for all test cases are presented in Figure 5. The measurements reflect the time elapsed in each frame of the main rendering loop, including both graphics and haptics rendering. These measurements are an indication of how long it takes to fully render an entire frame in the main application thread, and they are, thus, a good measure of actual performance of an application. By OpenHaptics API design, it is not possible to obtain direct measurements of the execution time of each servo loop frame (in the haptics thread). It is, however, possible from the main application thread to request OpenHaptics HD API the average and instantaneous servo loop rates. In all the experiments OpenHaptics maintained its instantaneous servo loop rate (measured using hdgetintegerv( HD_INSTANTANEOUS_UPDATE_RATE, &rate) from the application s main loop) at about 1000 Hz. Given that measurement we must assume that no servo loop frames are dropped for all the experiments conducted. The technique for measuring run time is implemented in such a way that values for all cases are comparable, even though they involve substantially different algorithms, libraries, and APIs. In cases where VHTK is used, minimum modifications were introduced in one of H3D s source files (file Scene.cpp, method Scene::idle()) in order to compute its combined rendering time. 5 DISCUSSION From the experiments, it can be seen that the performance of [FB], [VV], and [VVHTK] deteriorate as the number of polygons or slices is increased. This is the expected behavior for [FB], since OpenHaptics Feedback Buffer algorithm depends on the number of polygons. Similarly, for both graphics volume rendering implementations (SimVoleon in [VV], VHTK in [VVHTK]) the performance becomes unacceptably low in terms of graphics frame rate as the number of slices for the given dataset is increased. On the other hand, [DB] using OpenHaptic s Depth Buffer shows an initially decreasing performance which stabilizes as the number of polygons increases. Since the visualization load for [DB] is the same as for [FB], differences in performance must be attributed to the use of different haptics algorithms. Similarly,

7 [SVHTK] using VHTK for haptics volume rendering and H3D s capabilities for polygonal mesh rendering shows an initially high value followed by two different plateau regions with steep transitions between them. The haptics load is the same for [VVHTK] and [SVHTK], and therefore their different behaviors are due to their visualization schemes, where polygonal mesh visualization outperforms its graphics volume rendering counterpart. In addition, performance is comparable for [DB] and [SVHTK] in the middle region (approx. 500k to 1000k polygons), whereas [DB] outperforms [SVHTK] for a higher number of polygons. Finally, [SV] combining our volume haptics algorithm and polygonal mesh visualization exhibits an almost flat performance in its entire range, outperforming all other cases. The visualization load for cases [DB], [FB], and [SV] is exactly the same. Therefore, based on the above reasoning, the difference in the performance lies in their haptics implementations. From these results, it is clear that our volume haptics algorithm delivers the highest and most stable performance when compared, under similar conditions, to OpenHaptics Depth Buffer and Feedback Buffer implementations. Besides the OpenHaptics library, there is no shared code between our applications ( [DB], [FB], [SV], and [VV] ) and VHTK ( [SVHTK] and [VVHTK] ). However, the use of exactly the same dataset and measuring techniques suggests that our algorithm also outperforms VHTK s Scalar Surface Friction Mode for this specific task. Comparing our algorithm with previous intermediate representation approaches, our major contributions are: 1) Elimination of inadequate haptic feedback: as discussed in Section 2.3, there is a limitation in [22] where a lower update rate for the intermediate representation with respect to the servoloop rate may cause irregularities in the force feedback. The problem is contemplated in the recovery time approach [23], but not eliminated. In [24], the update rate of the intermediate representation is 1/n of the force computation rate, and so the problem in [22] is also present whenever n > 1. In our approach, collisions are detected at exactly the same rate in which the servoloop is updated, thus each execution of the collision detection is guaranteed to precede the force computation. Therefore, our algorithm eliminates this problem inherent in intermediate representations. 2) No fall-through for thin structures: The algorithm in [24] may fail to detect collisions with thin structures, as explained in Section 2. This problem is not present in our algorithm, where the speed at which the haptic device is moved does not affect the robustness of the collision detection algorithm, as shown in Section ) Haptic front/back face detection: Building our algorithm on top of an existing haptic library allows detection of back/front faces and to assign different haptic properties to each one. This is not possible in [22] and [24] 4) Multiple shape detection: Our algorithm is implemented such that it is possible to efficiently detect multiple shapes and assign different haptic properties to each of them. This feature is not discussed in [22] and [24]. 5) Leveraging of existing libraries: Building our algorithm as part of an existing haptic library allows one to use volumetric as well as polygonal mesh models at the same time. Moreover, there are additional advantages from using the OpenHaptics library that come for free, such as pop-through effects as well as touch/untouch callback functions. In summary, we have introduced an algorithm to provide haptic feedback directly from volumetric datasets. It overcomes poor performance in OpenHaptics for models consisting of a large number of polygons and allows detecting collisions with multiple 3-dimensional shapes. Our algorithm delivered the highest performance in experimental comparisons with Depth Buffer, Feedback Buffer, and the ScalarSurfaceFriction mode in VHTK. ACKNOWLEDGMENT This work was supported in part by NIH NIBIB grant 1R21EB A1. REFERENCES [1] C. Luciano, P. Banerjee, G.M. Lemole, F. Charbel, Second Generation Haptic Ventriculostomy Simulator Using the ImmersiveTouch System, Proceedings of 14th Medicine Meets Virtual Reality, J.D. Westwood et al. (Eds.), IOSPress, pp , [2] P. Banerjee, F. Charbel, "On-Demand High Fidelity Neurosurgical Procedure Simulator Prototype at University of Illinois using Virtual Reality and Haptics," Accreditation Council for Graduate Medical Education (ACGME) Bulletin, September 2006; p [3] Systems In Motion Coin3D, available at [4] H3D.org, available at [5] SensAble Technologies OpenHaptics, available at [6] W. Lorensen, H. Cline, "Marching Cubes: A high resolution 3D surface construction algorithm," Computer Graphics, Vol. 21, No. 4, July [7] S. Rizzi, P. Banerjee, C. Luciano, "Automating the Extraction of 3D Models from Medical Images for Virtual Reality and Haptic Simulations," Automation Science and Engineering, CASE IEEE International Conference on, vol., no., pp , Sept [8] T.H. Massie, J.K.Salisbury, The PHANTOM Haptic Interface: A Device for Probing Virtual Objects, Symp. On Haptic Interfaces for Virtual Environments. Chicago, IL, Nov [9] SensAble Haptic Devices, available at [10] C. Luciano, P. Banerjee, L. Florea, G. Dawe, "Design of the ImmersiveTouch : A High-Performance Haptic Augmented VR System," Proceedings of Human-Computer Interaction (HCI) International Conf. Las Vegas, [11] P. Banerjee, C. Luciano, L. Florea, G. Dawe, et. al, Compact haptic and augmented virtual reality device. U.S. Provisional Patent Application no. 60/646,837, March 2005, U.S. Patent Application, January [12] SensAble OpenHaptics Toolkit Version 2.0 Programmer s Guide, pp. 6-6 [13] C.B. Zilles, J.K. Salisbury, "A constraint-based god-object method for haptic display," Intelligent Robots and Systems 95. 'Human Robot Interaction and Cooperative Robots', Proceedings IEEE/RSJ International Conference on, vol.3, no., pp vol.3, 5-9 Aug 1995 [14] D.C. Ruspini, K. Kolarov, O. Khatib, The haptic display of complex graphical environments. In Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques, International Conference on Computer Graphics and Interactive Techniques. ACM Press/Addison-Wesley Publishing Co., New York, NY, , [15] B. Itkowitz, J. Handley, W. Zhu, "The OpenHaptics toolkit: a library for adding 3D Touch navigation and haptics to graphics applications," Eurohaptics Conference, 2005 and Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems, 2005, pp , March [16] H. Iwata, H. Noma, "Volume haptization," Virtual Reality, Proceedings., IEEE 1993 Symposium on Research Frontiers in, vol., no., pp.16-23, Oct 1993 [17] R.S. Avila, L.M. Sobierajski, A haptic interaction method for volume visualization. In Proceedings of the 7th Conference on Visualization '96 (San Francisco, California, United States, October 28-29,

8 1996). R. Yagel and G. M. Nielson, Eds. IEEE Visualization. IEEE Computer Society Press, Los Alamitos, CA, 197-ff. [18] K. Lundin, A. Ynnerman, B. Gudmundsson, Proxy-based haptic feedback from volumetric density data. In Proceedings of the Eurohaptic Conference, pp University of Edinburgh, United Kingdom, [19] K. Lundin, B. Gudmundsson, A. Ynnerman, "General proxy-based haptics for volume visualization," Eurohaptics Conference, 2005 and Symposium on Haptic Interfaces for Virtual Environment and Teleoperator Systems, 2005, pp , March [20] K. Lundin, M. Cooper, A. Ynnerman, The orthogonal constraints problem with the constraint approach to proxy-based volume haptics and a solution. In Proceedings of SIGRAD Conference, pp , Lund, Sweden, Nov [21] K. Lundin, M. Cooper, A. Persson, D. Evestedt, A. Ynnerman, Enabling design and interactive selection of haptic modes. Virtual Reality, DOI: /s [22] Y. Adachi, T. Kumano, K. Ogino, "Intermediate representation for stiff virtual objects," Virtual Reality Annual International Symposium, Proceedings, pp , Mar [23] W.R. Mark, S.C. Randolph, M. Finch, J.M. Van Verth, and R.M. Taylor, Adding force feedback to graphics systems: issues and solutions. In Proceedings of the 23rd Annual Conference on Computer Graphics and interactive Techniques SIGGRAPH '96. ACM, New York, NY, [24] K. Chen, P. Heng, and H. Sun, Direct haptic rendering of isosurface by intermediate representation. In Proceedings of the ACM Symposium on Virtual Reality Software and Technology (Seoul, Korea, October 22-25, 2000). VRST '00. ACM, New York, NY, [25] O. Körner, M. Schill, C. Wagner, H.J. Bender, R. Männer, Haptic volume rendering with an intermediate local representation. In: Proc of the 1st International Workshop on Haptic Devices in Medical Applications, pp (1999) [26] SensAble OpenHaptics Toolkit Version 2.0 Programmer s Guide, pp. 6-32

A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data.

A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data. A Haptic VR Milling Surgery Simulator Using High-Resolution CT-Data. Magnus ERIKSSON a, Mark DIXON b and Jan WIKANDER a. a The Mechatronics Lab/Machine Design, KTH, Stockholm, Sweden b SenseGraphics AB,

More information

An Implicit-Based Haptic Rendering Technique

An Implicit-Based Haptic Rendering Technique An Implicit-Based Haptic Rendering Technique Laehyun Kim Anna Kyrikou Gaurav S. Sukhatme Mathieu Desbrun University of Southern California, {laehyunk, kyrikou, gaurav, desbrun}@usc.edu Abstract We present

More information

GPU-based elastic-object deformation for enhancement of existing haptic applications

GPU-based elastic-object deformation for enhancement of existing haptic applications Proceedings of the 3rd Annual IEEE Conference on Automation Science and Engineering Scottsdale, AZ, USA, Sept 22-25, 2007 SuRP-A05.1 GPU-based elastic-object deformation for enhancement of existing haptic

More information

An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering

An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering An Efficient Approach for Emphasizing Regions of Interest in Ray-Casting based Volume Rendering T. Ropinski, F. Steinicke, K. Hinrichs Institut für Informatik, Westfälische Wilhelms-Universität Münster

More information

Height Field Haptics

Height Field Haptics Height Field Haptics Kristin Potter kpotter@cs.utah.edu David Johnson dejohnso@cs.utah.edu School of Computing, University of Utah Elaine Cohen cohen@cs.utah.edu Abstract We present a system for haptically

More information

CS277 - Experimental Haptics Lecture 3. Proxy-Based Rendering

CS277 - Experimental Haptics Lecture 3. Proxy-Based Rendering CS277 - Experimental Haptics Lecture 3 Proxy-Based Rendering Outline Announcements A note on timing... Limitations with potential fields God-object algorithm Finger-proxy algorithm Course Project Showcase

More information

Automating the Extraction of 3D Models from Medical Images for Virtual Reality and Haptic Simulations

Automating the Extraction of 3D Models from Medical Images for Virtual Reality and Haptic Simulations Proceedings of the 3rd Annual IEEE Conference on Automation Science and Engineering Scottsdale, AZ, USA, Sept 22-25, 2007 SuRP-A05.2 Automating the Extraction of 3D Models from Medical Images for Virtual

More information

Accelerated Haptic Rendering of Polygonal Models through Local Descent

Accelerated Haptic Rendering of Polygonal Models through Local Descent Accelerated Haptic Rendering of Polygonal Models through Local Descent David E. Johnson and Peter Willemsen School of Computing, University of Utah Abstract In a prior paper, we described a haptic rendering

More information

Proxy Method for Fast Haptic Rendering from Time Varying Point Clouds

Proxy Method for Fast Haptic Rendering from Time Varying Point Clouds Proxy Method for Fast Haptic Rendering from Time Varying Point Clouds Fredrik Rydén, Sina Nia Kosari, Howard Chizeck Abstract This paper proposes a novel algorithm for haptic rendering from time varying

More information

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION

LAPLACIAN MESH SMOOTHING FOR TETRAHEDRA BASED VOLUME VISUALIZATION 1. INTRODUCTION JOURNAL OF MEDICAL INFORMATICS & TECHNOLOGIES Vol.4/2002, ISSN 642-6037 Rafał STĘGIERSKI *, Paweł MIKOŁAJCZAK * volume data,triangle mesh generation, mesh smoothing, marching tetrahedra LAPLACIAN MESH

More information

Scientific Visualization Example exam questions with commented answers

Scientific Visualization Example exam questions with commented answers Scientific Visualization Example exam questions with commented answers The theoretical part of this course is evaluated by means of a multiple- choice exam. The questions cover the material mentioned during

More information

3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set

3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set 3D Volume Mesh Generation of Human Organs Using Surface Geometries Created from the Visible Human Data Set John M. Sullivan, Jr., Ziji Wu, and Anand Kulkarni Worcester Polytechnic Institute Worcester,

More information

Surgical Cutting on a Multimodal Object Representation

Surgical Cutting on a Multimodal Object Representation Surgical Cutting on a Multimodal Object Representation Lenka Jeřábková and Torsten Kuhlen Virtual Reality Group, RWTH Aachen University, 52074 Aachen Email: jerabkova@rz.rwth-aachen.de Abstract. In this

More information

Calculating the Distance Map for Binary Sampled Data

Calculating the Distance Map for Binary Sampled Data MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.merl.com Calculating the Distance Map for Binary Sampled Data Sarah F. Frisken Gibson TR99-6 December 999 Abstract High quality rendering and physics-based

More information

Hybrid Rendering for Interactive Virtual Scenes

Hybrid Rendering for Interactive Virtual Scenes Hybrid Rendering for Interactive Virtual Scenes Dan Morris, Neel Joshi dmorris@cs.stanford.edu, nsj@cs.stanford.edu Robotics Laboratory, Department of Computer Science, Stanford University, Stanford, CA

More information

Volume-based Haptic Model for Bone-drilling

Volume-based Haptic Model for Bone-drilling International Conference on Control, Automation Systems 2008 Oct. 14-17, 2008 in COEX, Seoul, Korea Volume-based Haptic Model for Bone-drilling Kimin Kim 1 Ye-Seul Park 2, Jinah Park 3 1, 2, 3 Information

More information

Dr. Pierre-Frédéric Villard Research Associate

Dr. Pierre-Frédéric Villard Research Associate Advanced Computer Graphics and Visualization Lecture 15 Dr. Pierre-Frédéric Villard Research Associate email: p.villard@ @ imperial. ac. uk,, St Mary s s campus Division of Surgery, Oncology, Reproductive

More information

Fast continuous collision detection among deformable Models using graphics processors CS-525 Presentation Presented by Harish

Fast continuous collision detection among deformable Models using graphics processors CS-525 Presentation Presented by Harish Fast continuous collision detection among deformable Models using graphics processors CS-525 Presentation Presented by Harish Abstract: We present an interactive algorithm to perform continuous collision

More information

Real-time haptic display of fluids

Real-time haptic display of fluids Mauricio Vines Ottawa, Ontario, K1N 6N5 Canada mvine059@site.uottawa.ca Real-time haptic display of fluids Javier Mora Ottawa, Ontario, K1N 6N5, Canada jmora091@uottawa.ca Won-Sook Lee Ottawa, Ontario,

More information

Haptic Editing of Decoration and Material Properties

Haptic Editing of Decoration and Material Properties Haptic Editing of Decoration and Material Properties Laehyun Kim Gaurav S. Sukhatme Mathieu Desbrun University of Southern California, flaehyunk, gaurav, desbrung@usc.edu Abstract In this paper, we explore

More information

Efficient Volumetric Ray Casting for Isosurface Rendering

Efficient Volumetric Ray Casting for Isosurface Rendering Efficient Volumetric Ray Casting for Isosurface Rendering Jae Jeong Choi 1 Byeong-Seok Shin 2 Yeong Gil Shin 1 Kevin Cleary 3 1. Department of Computer Science, Seoul National University, Seoul, Republic

More information

A HAPTIC SYSTEM FOR VIRTUAL PROTOTYPING OF POLYGONAL MODELS

A HAPTIC SYSTEM FOR VIRTUAL PROTOTYPING OF POLYGONAL MODELS Proceedings of DETC2004: 2004 ASME Design Engineering Technical Conferences September 28-October 2, 2004, Salt Lake City, Utah USA DETC2004/DAC-57507 A HAPTIC SYSTEM FOR VIRTUAL PROTOTYPING OF POLYGONAL

More information

CSC Computer Graphics

CSC Computer Graphics // CSC. Computer Graphics Lecture Kasun@dscs.sjp.ac.lk Department of Computer Science University of Sri Jayewardanepura Polygon Filling Scan-Line Polygon Fill Algorithm Span Flood-Fill Algorithm Inside-outside

More information

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments?

Homework 1: Implicit Surfaces, Collision Detection, & Volumetric Data Structures. Loop Subdivision. Loop Subdivision. Questions/Comments? Homework 1: Questions/Comments? Implicit Surfaces,, & Volumetric Data Structures Loop Subdivision Shirley, Fundamentals of Computer Graphics Loop Subdivision SIGGRAPH 2000 course notes Subdivision for

More information

Haptic Rendering of Dynamic Volumetric Data

Haptic Rendering of Dynamic Volumetric Data TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS 1 Haptic Rendering of Dynamic Volumetric Data Karljohan Lundin Palmerius, Matthew Cooper and Anders Ynnerman Abstract With current methods for volume

More information

Fast surface rendering for interactive medical image segmentation with haptic feedback

Fast surface rendering for interactive medical image segmentation with haptic feedback Fast surface rendering for interactive medical image segmentation with haptic feedback Erik Vidholm Jonas Agmund Centre for Image Analysis Uppsala University (a) Initialization of a seed-region inside

More information

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization

Volume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization Volume visualization Volume visualization Volumes are special cases of scalar data: regular 3D grids of scalars, typically interpreted as density values. Each data value is assumed to describe a cubic

More information

Stable Haptic Interaction with Virtual Environments Using an Adapted Voxmap-PointShell Algorithm

Stable Haptic Interaction with Virtual Environments Using an Adapted Voxmap-PointShell Algorithm Proceedings of the Eurohaptics Conference, Birmingham, UK, Stable Haptic Interaction with Virtual Environments Using an Adapted Voxmap-PointShell Algorithm Matthias Renz,, Carsten Preusche, Marco Pötke,

More information

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Rendering Computer Animation and Visualisation Lecture 9 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Volume Data Usually, a data uniformly distributed

More information

Scalar Visualization

Scalar Visualization Scalar Visualization Visualizing scalar data Popular scalar visualization techniques Color mapping Contouring Height plots outline Recap of Chap 4: Visualization Pipeline 1. Data Importing 2. Data Filtering

More information

Dental Training System using Multi-modal Interface

Dental Training System using Multi-modal Interface 591 Dental Training System using Multi-modal Interface Laehyun Kim 1, Yoha Hwang 2, Se Hyung Park 3 and Sungdo Ha 4 Korea Institute of Science and Technology {laehyunk 1, yoha 2, sehyung 3, s.ha 4 @kist.re.kr}

More information

Isosurface Rendering. CSC 7443: Scientific Information Visualization

Isosurface Rendering. CSC 7443: Scientific Information Visualization Isosurface Rendering What is Isosurfacing? An isosurface is the 3D surface representing the locations of a constant scalar value within a volume A surface with the same scalar field value Isosurfaces form

More information

Indirect Volume Rendering

Indirect Volume Rendering Indirect Volume Rendering Visualization Torsten Möller Weiskopf/Machiraju/Möller Overview Contour tracing Marching cubes Marching tetrahedra Optimization octree-based range query Weiskopf/Machiraju/Möller

More information

Reconstruction of complete 3D object model from multi-view range images.

Reconstruction of complete 3D object model from multi-view range images. Header for SPIE use Reconstruction of complete 3D object model from multi-view range images. Yi-Ping Hung *, Chu-Song Chen, Ing-Bor Hsieh, Chiou-Shann Fuh Institute of Information Science, Academia Sinica,

More information

Haptic Interaction in Virtual Environments

Haptic Interaction in Virtual Environments Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution

More information

Fast Interactive Region of Interest Selection for Volume Visualization

Fast Interactive Region of Interest Selection for Volume Visualization Fast Interactive Region of Interest Selection for Volume Visualization Dominik Sibbing and Leif Kobbelt Lehrstuhl für Informatik 8, RWTH Aachen, 20 Aachen Email: {sibbing,kobbelt}@informatik.rwth-aachen.de

More information

Previously... contour or image rendering in 2D

Previously... contour or image rendering in 2D Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line

More information

Modeling the Virtual World

Modeling the Virtual World Modeling the Virtual World Joaquim Madeira November, 2013 RVA - 2013/2014 1 A VR system architecture Modeling the Virtual World Geometry Physics Haptics VR Toolkits RVA - 2013/2014 2 VR object modeling

More information

Direct Extraction of Normal Mapped Meshes from Volume Data

Direct Extraction of Normal Mapped Meshes from Volume Data Direct Extraction of Normal Mapped Meshes from Volume Data Mark Barry and Zoë Wood California Polytechnic State University Figure 1. A human head extracted from a 130 x 128 x 128 volume. All meshes are

More information

A Method of Automated Landmark Generation for Automated 3D PDM Construction

A Method of Automated Landmark Generation for Automated 3D PDM Construction A Method of Automated Landmark Generation for Automated 3D PDM Construction A. D. Brett and C. J. Taylor Department of Medical Biophysics University of Manchester Manchester M13 9PT, Uk adb@sv1.smb.man.ac.uk

More information

Level Set Extraction from Gridded 2D and 3D Data

Level Set Extraction from Gridded 2D and 3D Data Level Set Extraction from Gridded 2D and 3D Data David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International

More information

The Haptic Display of Complex Graphical Environments

The Haptic Display of Complex Graphical Environments The Haptic Display of Complex Graphical Environments Diego C. Ruspini 1, Krasimir Kolarov 2 and Oussama Khatib 1 Stanford University 1 Interval Research Corporation 2 Abstract Force feedback coupled with

More information

GPU Supported Haptic Device Integrated Dental Simulation Environment

GPU Supported Haptic Device Integrated Dental Simulation Environment GPU Supported Haptic Device Integrated Dental Simulation Environment Varlık Kılıç 1 Umut Koçak 2 E. İlhan Konukseven 3 Erkan Mumcuoğlu 4 Department of Mechanical Engineering Department of Health Informatics

More information

Volume Rendering. Lecture 21

Volume Rendering. Lecture 21 Volume Rendering Lecture 21 Acknowledgements These slides are collected from many sources. A particularly valuable source is the IEEE Visualization conference tutorials. Sources from: Roger Crawfis, Klaus

More information

Clipping. CSC 7443: Scientific Information Visualization

Clipping. CSC 7443: Scientific Information Visualization Clipping Clipping to See Inside Obscuring critical information contained in a volume data Contour displays show only exterior visible surfaces Isosurfaces can hide other isosurfaces Other displays can

More information

A Survey of Volumetric Visualization Techniques for Medical Images

A Survey of Volumetric Visualization Techniques for Medical Images International Journal of Research Studies in Computer Science and Engineering (IJRSCSE) Volume 2, Issue 4, April 2015, PP 34-39 ISSN 2349-4840 (Print) & ISSN 2349-4859 (Online) www.arcjournals.org A Survey

More information

Constraint-Based Six Degree-Of-Freedom Haptic Rendering of Volume-Embedded Isosurfaces

Constraint-Based Six Degree-Of-Freedom Haptic Rendering of Volume-Embedded Isosurfaces Constraint-Based Six Degree-Of-Freedom Haptic Rendering of Volume-Embedded Isosurfaces Sonny Chan François Conti Nikolas H. Blevins Kenneth Salisbury Department of Computer Science Stanford University

More information

Simulation in Computer Graphics. Deformable Objects. Matthias Teschner. Computer Science Department University of Freiburg

Simulation in Computer Graphics. Deformable Objects. Matthias Teschner. Computer Science Department University of Freiburg Simulation in Computer Graphics Deformable Objects Matthias Teschner Computer Science Department University of Freiburg Outline introduction forces performance collision handling visualization University

More information

Scalar Algorithms: Contouring

Scalar Algorithms: Contouring Scalar Algorithms: Contouring Computer Animation and Visualisation Lecture tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Last Lecture...

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 15, 2003 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time

Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time Zhihua Zou, Jing Xiao Department of Computer Science University of North Carolina Charlotte zzou28@yahoo.com, xiao@uncc.edu

More information

Multipass GPU Surface Rendering in 4D Ultrasound

Multipass GPU Surface Rendering in 4D Ultrasound 2012 Cairo International Biomedical Engineering Conference (CIBEC) Cairo, Egypt, December 20-21, 2012 Multipass GPU Surface Rendering in 4D Ultrasound Ahmed F. Elnokrashy 1,2, Marwan Hassan 1, Tamer Hosny

More information

2 Michael E. Leventon and Sarah F. F. Gibson a b c d Fig. 1. (a, b) Two MR scans of a person's knee. Both images have high resolution in-plane, but ha

2 Michael E. Leventon and Sarah F. F. Gibson a b c d Fig. 1. (a, b) Two MR scans of a person's knee. Both images have high resolution in-plane, but ha Model Generation from Multiple Volumes using Constrained Elastic SurfaceNets Michael E. Leventon and Sarah F. F. Gibson 1 MIT Artificial Intelligence Laboratory, Cambridge, MA 02139, USA leventon@ai.mit.edu

More information

Visualizer An implicit surface rendering application

Visualizer An implicit surface rendering application June 01, 2004 Visualizer An implicit surface rendering application Derek Gerstmann - C1405511 MSc Computer Animation NCCA Bournemouth University OVERVIEW OF APPLICATION Visualizer is an interactive application

More information

Visualization Computer Graphics I Lecture 20

Visualization Computer Graphics I Lecture 20 15-462 Computer Graphics I Lecture 20 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] November 20, 2003 Doug James Carnegie Mellon University http://www.cs.cmu.edu/~djames/15-462/fall03

More information

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes

11/1/13. Visualization. Scientific Visualization. Types of Data. Height Field. Contour Curves. Meshes CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 2.11] Jernej Barbic University of Southern California Scientific Visualization

More information

Visualization. CSCI 420 Computer Graphics Lecture 26

Visualization. CSCI 420 Computer Graphics Lecture 26 CSCI 420 Computer Graphics Lecture 26 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 11] Jernej Barbic University of Southern California 1 Scientific Visualization

More information

Overview. Collision Detection. A Simple Collision Detection Algorithm. Collision Detection in a Dynamic Environment. Query Types.

Overview. Collision Detection. A Simple Collision Detection Algorithm. Collision Detection in a Dynamic Environment. Query Types. Overview Collision Detection Alan Liu aliu@usuhs.mil The Surgical Simulation Laboratory National Capital Area Medical Simulation Center Uniformed Services University http://simcen.usuhs.mil/miccai2003

More information

INTERACTIVE CUTTING OF THE SKULL FOR CRANIOFACIAL SURGICAL PLANNING

INTERACTIVE CUTTING OF THE SKULL FOR CRANIOFACIAL SURGICAL PLANNING INTERACTIVE CUTTING OF THE SKULL FOR CRANIOFACIAL SURGICAL PLANNING Greg Pintilie *1, Tim McInerney *2,*1 *1 Department of Computer Science, University of Toronto, Canada *2 Department of Math, Physics,

More information

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26]

Visualization. Images are used to aid in understanding of data. Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Visualization Images are used to aid in understanding of data Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [chapter 26] Tumor SCI, Utah Scientific Visualization Visualize large

More information

Brain Surface Conformal Spherical Mapping

Brain Surface Conformal Spherical Mapping Brain Surface Conformal Spherical Mapping Min Zhang Department of Industrial Engineering, Arizona State University mzhang33@asu.edu Abstract It is well known and proved that any genus zero surface can

More information

CSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

CSE 167: Lecture #5: Rasterization. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 CSE 167: Introduction to Computer Graphics Lecture #5: Rasterization Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Homework project #2 due this Friday, October

More information

Scalar Visualization

Scalar Visualization Scalar Visualization 5-1 Motivation Visualizing scalar data is frequently encountered in science, engineering, and medicine, but also in daily life. Recalling from earlier, scalar datasets, or scalar fields,

More information

Surface Construction Analysis using Marching Cubes

Surface Construction Analysis using Marching Cubes Surface Construction Analysis using Marching Cubes Burak Erem Northeastern University erem.b@neu.edu Nicolas Dedual Northeastern University ndedual@ece.neu.edu Abstract This paper presents an analysis

More information

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang

Interaction of Fluid Simulation Based on PhysX Physics Engine. Huibai Wang, Jianfei Wan, Fengquan Zhang 4th International Conference on Sensors, Measurement and Intelligent Materials (ICSMIM 2015) Interaction of Fluid Simulation Based on PhysX Physics Engine Huibai Wang, Jianfei Wan, Fengquan Zhang College

More information

Scientific Visualization. CSC 7443: Scientific Information Visualization

Scientific Visualization. CSC 7443: Scientific Information Visualization Scientific Visualization Scientific Datasets Gaining insight into scientific data by representing the data by computer graphics Scientific data sources Computation Real material simulation/modeling (e.g.,

More information

Direct Extraction of Normal Mapped Meshes from Volume Data

Direct Extraction of Normal Mapped Meshes from Volume Data Direct Extraction of Normal Mapped Meshes from Volume Data Mark Barry and Zoë Wood California Polytechnic State University Abstract. We describe a method of directly extracting a simplified contour surface

More information

machine design, Vol.8(2016) No.4, ISSN pp

machine design, Vol.8(2016) No.4, ISSN pp machine design, Vol.8(2016) No.4, ISSN 1821-1259 pp. 165-170 Research paper FREE FORM SHAPE MODELLING BY HAND MOVEMENT IN VIRTUAL ENVIRONMENT Zoran MILOJEVIĆ 1, * - Slobodan TABAKOVIĆ 1 - Milan ZELJKOVIĆ

More information

SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES

SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES SURFACE CONSTRUCTION USING TRICOLOR MARCHING CUBES Shaojun Liu, Jia Li Oakland University Rochester, MI 4839, USA Email: sliu2@oakland.edu, li4@oakland.edu Xiaojun Jing Beijing University of Posts and

More information

THE development of stable, robust and fast methods that

THE development of stable, robust and fast methods that 44 SBC Journal on Interactive Systems, volume 5, number 1, 2014 Fast Simulation of Cloth Tearing Marco Santos Souza, Aldo von Wangenheim, Eros Comunello 4Vision Lab - Univali INCoD - Federal University

More information

Emissive Clip Planes for Volume Rendering Supplement.

Emissive Clip Planes for Volume Rendering Supplement. Emissive Clip Planes for Volume Rendering Supplement. More material than fit on the one page version for the SIGGRAPH 2003 Sketch by Jan Hardenbergh & Yin Wu of TeraRecon, Inc. Left Image: The clipped

More information

Occlusion Detection of Real Objects using Contour Based Stereo Matching

Occlusion Detection of Real Objects using Contour Based Stereo Matching Occlusion Detection of Real Objects using Contour Based Stereo Matching Kenichi Hayashi, Hirokazu Kato, Shogo Nishida Graduate School of Engineering Science, Osaka University,1-3 Machikaneyama-cho, Toyonaka,

More information

Data Representation in Visualisation

Data Representation in Visualisation Data Representation in Visualisation Visualisation Lecture 4 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Taku Komura Data Representation 1 Data Representation We have

More information

The Proxy Chain Method and Its Application to Scientific Visualization

The Proxy Chain Method and Its Application to Scientific Visualization The Proxy Chain Method and Its Application to Scientific Visualization Milan Ikits Charles D. Hansen Scientific Computing and Imaging Institute, University of Utah ABSTRACT We present a method for combining

More information

A Study of Medical Image Analysis System

A Study of Medical Image Analysis System Indian Journal of Science and Technology, Vol 8(25), DOI: 10.17485/ijst/2015/v8i25/80492, October 2015 ISSN (Print) : 0974-6846 ISSN (Online) : 0974-5645 A Study of Medical Image Analysis System Kim Tae-Eun

More information

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University

Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University 15-462 Computer Graphics I Lecture 21 Visualization Height Fields and Contours Scalar Fields Volume Rendering Vector Fields [Angel Ch. 12] April 23, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0)

3/1/2010. Acceleration Techniques V1.2. Goals. Overview. Based on slides from Celine Loscos (v1.0) Acceleration Techniques V1.2 Anthony Steed Based on slides from Celine Loscos (v1.0) Goals Although processor can now deal with many polygons (millions), the size of the models for application keeps on

More information

Generation of Hulls Encompassing Neuronal Pathways Based on Tetrahedralization and 3D Alpha Shapes

Generation of Hulls Encompassing Neuronal Pathways Based on Tetrahedralization and 3D Alpha Shapes Generation of Hulls Encompassing Neuronal Pathways Based on Tetrahedralization and 3D Alpha Shapes Dorit Merhof 1,2, Martin Meister 1, Ezgi Bingöl 1, Peter Hastreiter 1,2, Christopher Nimsky 2,3, Günther

More information

Real-time Soft Tissue Modelling for Webbased Surgical Simulation: SurfaceChainMail

Real-time Soft Tissue Modelling for Webbased Surgical Simulation: SurfaceChainMail Real-time Soft Tissue Modelling for Webbased Surgical Simulation: SurfaceChainMail Ying Li 1, Ken Brodlie 1, Nicholas Phillips 2 1 School of Computing, University of Leeds, Leeds LS2 9JT UK 2 Department

More information

DiFi: Distance Fields - Fast Computation Using Graphics Hardware

DiFi: Distance Fields - Fast Computation Using Graphics Hardware DiFi: Distance Fields - Fast Computation Using Graphics Hardware Avneesh Sud Dinesh Manocha UNC-Chapel Hill http://gamma.cs.unc.edu/difi Distance Fields Distance Function For a site a scalar function f:r

More information

Adaptive Point Cloud Rendering

Adaptive Point Cloud Rendering 1 Adaptive Point Cloud Rendering Project Plan Final Group: May13-11 Christopher Jeffers Eric Jensen Joel Rausch Client: Siemens PLM Software Client Contact: Michael Carter Adviser: Simanta Mitra 4/29/13

More information

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing Visual servoing vision allows a robotic system to obtain geometrical and qualitative information on the surrounding environment high level control motion planning (look-and-move visual grasping) low level

More information

Haptic Rendering of Dense 3D Point Cloud Data

Haptic Rendering of Dense 3D Point Cloud Data Haptic Rendering of Dense 3D Point Cloud Data Sreeni K. G. Subhasis Chaudhuri Vision and Image Processing Laboratory, Department of Electrical Engineering, Indian Institute of Technology, Bombay, Powai,

More information

Scene-Based Segmentation of Multiple Muscles from MRI in MITK

Scene-Based Segmentation of Multiple Muscles from MRI in MITK Scene-Based Segmentation of Multiple Muscles from MRI in MITK Yan Geng 1, Sebastian Ullrich 2, Oliver Grottke 3, Rolf Rossaint 3, Torsten Kuhlen 2, Thomas M. Deserno 1 1 Department of Medical Informatics,

More information

L10 Layered Depth Normal Images. Introduction Related Work Structured Point Representation Boolean Operations Conclusion

L10 Layered Depth Normal Images. Introduction Related Work Structured Point Representation Boolean Operations Conclusion L10 Layered Depth Normal Images Introduction Related Work Structured Point Representation Boolean Operations Conclusion 1 Introduction Purpose: using the computational power on GPU to speed up solid modeling

More information

Topology Preserving Tetrahedral Decomposition of Trilinear Cell

Topology Preserving Tetrahedral Decomposition of Trilinear Cell Topology Preserving Tetrahedral Decomposition of Trilinear Cell Bong-Soo Sohn Department of Computer Engineering, Kyungpook National University Daegu 702-701, South Korea bongbong@knu.ac.kr http://bh.knu.ac.kr/

More information

An Efficient Single Chord-based Accumulation Technique (SCA) to Detect More Reliable Corners

An Efficient Single Chord-based Accumulation Technique (SCA) to Detect More Reliable Corners An Efficient Single Chord-based Accumulation Technique (SCA) to Detect More Reliable Corners Mohammad Asiful Hossain, Abdul Kawsar Tushar, and Shofiullah Babor Computer Science and Engineering Department,

More information

Open Topology: A Toolkit for Brain Isosurface Correction

Open Topology: A Toolkit for Brain Isosurface Correction Open Topology: A Toolkit for Brain Isosurface Correction Sylvain Jaume 1, Patrice Rondao 2, and Benoît Macq 2 1 National Institute of Research in Computer Science and Control, INRIA, France, sylvain@mit.edu,

More information

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming

Screen Space Ambient Occlusion TSBK03: Advanced Game Programming Screen Space Ambient Occlusion TSBK03: Advanced Game Programming August Nam-Ki Ek, Oscar Johnson and Ramin Assadi March 5, 2015 This project report discusses our approach of implementing Screen Space Ambient

More information

A Real Time GIS Approximation Approach for Multiphase Spatial Query Processing Using Hierarchical-Partitioned-Indexing Technique

A Real Time GIS Approximation Approach for Multiphase Spatial Query Processing Using Hierarchical-Partitioned-Indexing Technique International Journal of Scientific Research in Computer Science, Engineering and Information Technology 2017 IJSRCSEIT Volume 2 Issue 6 ISSN : 2456-3307 A Real Time GIS Approximation Approach for Multiphase

More information

3 Data Representation. Data Representation. Department of Computer Science and Engineering 3-1

3 Data Representation. Data Representation. Department of Computer Science and Engineering 3-1 Data Representation 3-1 Overview This chapter will introduce you to data representations used for Scientific Visualization. We will discuss different grid structures and ways to represent data using these

More information

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo 3 - Reconstruction Acknowledgements: Olga Sorkine-Hornung Geometry Acquisition Pipeline Scanning: results in range images Registration: bring all range images to one coordinate system Stitching/ reconstruction:

More information

Navier-Stokes & Flow Simulation

Navier-Stokes & Flow Simulation Last Time? Navier-Stokes & Flow Simulation Pop Worksheet! Teams of 2. Hand in to Jeramey after we discuss. Sketch the first few frames of a 2D explicit Euler mass-spring simulation for a 2x3 cloth network

More information

Physically-Based Laser Simulation

Physically-Based Laser Simulation Physically-Based Laser Simulation Greg Reshko Carnegie Mellon University reshko@cs.cmu.edu Dave Mowatt Carnegie Mellon University dmowatt@andrew.cmu.edu Abstract In this paper, we describe our work on

More information

Volume Illumination, Contouring

Volume Illumination, Contouring Volume Illumination, Contouring Computer Animation and Visualisation Lecture 0 tkomura@inf.ed.ac.uk Institute for Perception, Action & Behaviour School of Informatics Contouring Scaler Data Overview -

More information

Data Visualization (DSC 530/CIS )

Data Visualization (DSC 530/CIS ) Data Visualization (DSC 530/CIS 60-0) Isosurfaces & Volume Rendering Dr. David Koop Fields & Grids Fields: - Values come from a continuous domain, infinitely many values - Sampled at certain positions

More information

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information

Elastic Bands: Connecting Path Planning and Control

Elastic Bands: Connecting Path Planning and Control Elastic Bands: Connecting Path Planning and Control Sean Quinlan and Oussama Khatib Robotics Laboratory Computer Science Department Stanford University Abstract Elastic bands are proposed as the basis

More information

An Efficient, Geometric Multigrid Solver for the Anisotropic Diffusion Equation in Two and Three Dimensions

An Efficient, Geometric Multigrid Solver for the Anisotropic Diffusion Equation in Two and Three Dimensions 1 n Efficient, Geometric Multigrid Solver for the nisotropic Diffusion Equation in Two and Three Dimensions Tolga Tasdizen, Ross Whitaker UUSCI-2004-002 Scientific Computing and Imaging Institute University

More information

Soft Particles. Tristan Lorach

Soft Particles. Tristan Lorach Soft Particles Tristan Lorach tlorach@nvidia.com January 2007 Document Change History Version Date Responsible Reason for Change 1 01/17/07 Tristan Lorach Initial release January 2007 ii Abstract Before:

More information