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

September 22nd, 2007

Categories: Applications, Software, Virtual Medicine, Visualization, VR

Virtual human brain being deformed by the insertion of a neurosurgical catheter
Virtual human brain being deformed by the insertion of a neurosurgical catheter

Authors

Luciano, C. J., Banerjee, P., Rizzi, S. H. R.

About

Most haptic libraries allow user to feel the resistance of a flexible virtual object by the implementation of a point-based collision detection algorithm and a spring-damper model. Even though the user can feel the deformation at the contact point, the graphics library renders a rigid geometry, causing a conflict of senses in the user’s mind.

In most cases, the CPU utilization is maximized to achieve the required 1-kHz haptic frame rate without leaving any additional resource to also deform the geometry, while on the other hand, the Graphics Processing Unit (GPU) is underutilized.

This paper proposes a computationally inexpensive and efficient GPU-based methodology to significantly enhance user perception of large existing haptic applications without compromising the original haptic feedback. To the best of our knowledge, this is the first implemented algorithm that is able to maintain a graphics frame rate of approximately 60 Hz as well as a haptics frame rate of 1 Khz when deforming complex geometry of approximately 160K vertices.

The implementation of the algorithm in a virtual reality neurosurgical simulator has been successful to handle, in real time, complex 3D isosurfaces created from medical MRI and CT images.

Resources

PDF

URL

Citation

Luciano, C. J., Banerjee, P., Rizzi, S. H. R., 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, pp. 146-151, ISBN: 978-1-4244-1154-2, September 22nd, 2007. http://ieeexplore.ieee.org/xpls/abs_all.jsp?isnumber=4341640&arnumber=4341710&count=216&index=69