Thursday, February 23, 2012

Multi-Touch Surfaces: A Technical Guide

Overview

This paper is a technical guide about multi-touch surfaces and goes into details about all the layers of a multi-touch system. They discuss many details about both the hardware and software of a multi-touch system. The implementation of the hardware for a multi-touch surface is discussed in detail and they also go into detail about the software.

Touch Technologies

They discuss several different technologies used for Touch Technologies including, but not limited to:
  • Resistance based touch surfaces
    • Low power consumption
      • Good for mobile devices
    • Low clarity interactive surface
      • Additional screen protection hurts functionality
  • Capacitance based touch surfaces
    • High clarity
      • Good for multitude of devices
    • Very expensive
    • Very durable
      • Good for public usage
    • Accuracy decreases with multiple objects
      • Firmware usually limits number of touches
  • Surface wave touch surfaces (SAW)
    • Position is structured
  • Frustrated Total Internal Reflection
    • Common algorithms can be used to process input
  • DI
    • Allows tracking & identification of objects
    • Illuminated surface


Byo Multi-Touch Surface

There are libraries that support the Byo Mulit-Touch Surface providing a layer of abstraction that makes it easier to manipulate objects, access camera data, and perform many other useful features:
  • libavg: this supports the full DI pipeline and it is the only one that does so.
  • Multi-touch lib T-Labs: a Java library released under GNU.
  • OpenFTIR: this Framework is under construction and processes frames quickly.
  • TouchLib: provides cross-platform video processing and blob tracking fro FTIR & DI
  • VVVV: a visual software toolkit for rapid development of prototypes for Windows only


System Latency

The discuss issues that cause system latency. In particular, they discuss latency issues related to camera, TouchLib, application, digital projector, and wrap it up with the total system latency.

The camera experiences latency from the sensor picking up light, which is termed as the “integration time”. The “sensor readout time” is the time it takes to transfer data from the sensor to the camera. Also, there is the transfer time from the camera to the computer over the firewire bus. The sensor readout time and the integration time can not happen at the same time, so at minimum it will be the addition of these two times. The library TouchLib causes some latency and was measured at 32 ms for the test that they did. The latency of the projector was measured at 100 milliseconds. Using different projectors came up with nearly the same results except for the 3M DMS 700 which scored the slowest.The total system latency was measured at 225 milliseconds.

Discussion
  • The different software libraries available.
  • The different hardware available.
  • Cost comparison of different systems.

No comments: