3DTouch: A Wearable 3D Input Device for 3D Applications

Anh Nguyen, Amy Banic

Links: pdf | code | project page

3D applications appear in every corner of life in the current technology era. There is a need for an ubiquitous 3D input device that works with many different platforms, from head-mounted displays (HMDs) to mobile touch devices, 3DTVs, and even the Cave Automatic Virtual Environments. We present 3DTouch, a novel wearable 3D input device worn on the fingertip for 3D manipulation tasks. 3DTouch is designed to fill the missing gap of a 3D input device that is self-contained, mobile, and universally works across various 3D platforms. This paper presents a low-cost solution to designing and implementing such a device.

Our approach relies on a relative positioning technique using an optical laser sensor and a 9-DOF inertial measurement unit. The device employs touch input for the benefits of passive haptic feedback, and movement stability. On the other hand, with touch interaction, 3DTouch is conceptually less fatiguing to use over many hours than 3D spatial input devices. We propose a set of 3D interaction techniques including selection, translation, and rotation using 3DTouch. An evaluation also demonstrates the device’s tracking accuracy of 1.10 mm and 2.33 degrees for subtle touch interaction in 3D space. We envision that modular solutions like 3DTouch opens up a whole new design space for interaction techniques to further develop on. With 3DTouch, we attempt to bring 3D applications a step closer to users.

Conference: IEEE Virtual Reality 2015 (23% acceptance rate)

Press coverage: MIT Technology Review | Fast Company | Wired | IFL Science

Videos: 2-min research summary

Figure 1: 3DTouch – a novel 3D input device worn on the fingertip that allows users to interact with virtual environments in many different settings.

A 2-min demo of 3DTouch.

Figure 2: (a) The 3DTouch user is drawing a curve (red) on a flat surface, which makes 30° with the ground. (b) In the 3D VE, a curve is generated on a 2D plane, which also makes 30° with the XZ plane. (c) The 3DTouch user is touching around the curved surface of a cylinder. (d) In the 3D VE, a circle with diameter proportional to that of the cylinder is generated.


Figure 3: 3DTouch setup: an Arduino Uno R3, an OPS, an IMU, and a sensor application PCB (purple).