24
MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Embed Size (px)

Citation preview

Page 1: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

MULTI-TOUCH TABLE

Athena FrazierChun LauAdam Weissman

March 25, 2008Senior Projects II

Page 2: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Outline of Design Review

Project Overview User Interface Project Subsystems

Input Output Cabinet Computer and Software

Testing Foreseen Problems

Page 3: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Project Description

The multi-touch table is a user interface device that will allow a user to interact with a computer through use of a multi-touch display.

The application to be demonstrated on the multi-touch display will be a game of pong.

Page 4: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

User Interface

A user or users will be able to naturally interact with the application by apparently manipulating the workspace.

Page 5: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Project Subsystems

Input Subsystem Output Subsystem Cabinet Subsystem Computer and Software

Page 6: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Input Subsystem

To be able to detect fingers placed on multi-touch screen, Infrared (IR) light will be injected into the side of a sheet of polished acrylic.

IR blobs will be formed at locations of frustration, which can be detected using a camera.

Page 7: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Frustrated Total Internal Reflection

This technique is referred to as Frustrated Total Internal Reflection (FTIR).

Page 8: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Input System: IR LED Arrays

To inject IR light into the acrylic sheet, IR LED arrays are placed on all four sides of the acrylic.

Aluminum U-Channel with holes drilled in it is used to hold multiple IR LEDs.

Page 9: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Input Subsystem: Compliant Surface A compliant surface will be added to the

acrylic sheet because of its abilities to: Protect the acrylic from scratches Block out light interference Provide consistent blobs for detection Improve the brightness of IR blobs Show different touch pressures

Silicone Rubber was chosen as the compliant surface because it is transparent and shows all of the above traits.

Page 10: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Input Subsystem: The CameraFire-I Digital Camera Board

A requirement of the system is that the camera needs to be able to capture a screen size of 20” by 35” from less than 3’ away. Therefore, we will use the Fire-I Digital Camera Board.

The camera’s uncompressed VGA image capability prevents wasting unnecessary CPU usage.

One advantage of this camera is that it uses the Fire Wire interface. Fire Wire allows for a more consistent speed that is usually greater than speed of the USB interface.

Page 11: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Camera Considerations Due to the requirements for a wide view

capture, a specific lens is needed. All wide-angle lenses found were fish eye lenses.

This requires that a distortion correction filter be applied before the image can be used for blob detection.

An optical band or a high pass filter will be used to block out visible light.

Sample of the Fish Eye Effect Image with corrected barrel distortion

Page 12: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Output Subsystem: The Projector Toshiba TDP-ET20U

A rear projection setup allows the projector to be placed inside the multimedia table. However, with the size of the multimedia table in mind, there is a strict requirement on the “throw” distance of the projector.

An extremely short throw distance projector was found to overcome the problem.

The Toshiba TDP-ET20U is able to display 40” diagonal screen image from a mere 1.7 feet away.

This projector also has a built-in function to invert output images for rear view projection applications, which prevents the need for adding a mirror inside the table.

Page 13: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Output Subsystem: Diffusion Layer

A diffusion layer is needed to provide a surface for the projected image to be displayed.

To diffuse the projected image through rear projection a sheet of Rosco Grey Projection Screen will be used.

Rosco Grey provides the added benefit of blocking ambient IR light.

Page 14: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Cabinet Subsystem

To enclose and protect the system from ambient light, a cabinet will be built.

The cabinet is made of wood and will include fans in order to regulate the internal temperature.

Projector

Mac

Acrylic

Web camera

Page 15: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Cabinet Subsystem cont.

Two fans and baffles will be installed on each side of the cabinet to increase ventilation.

Two doors will be installed to provide access to the cabinet if needed.

Page 16: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Computer Subsystem

The computer to be used will be a Mac Mini. This computer was selected because of its

small form factor and its ability to run multiple operating systems. The Mac Mini was also freely available. At the time of deciding on the computer, the operating system had not been chosen.

The Windows XP operating system was chosen because the Touchlib package is highly supported in Windows.

Page 17: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Programming for the Multi-Touch Table

Touchlib is an open source C++ software package that contains code to analyze data from a camera, detect IR blobs from within the data, interpret that IR blob data, and generate TUIO events for the application to interpret.

Since most operating systems only expect one mouse click at any single time, a new event and protocol must be used to interpret any number of touches, the TUIO protocol.

Page 18: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Touchlib: Hardware–Software Interface

Touchlib acts as a driver for the multi-touch table device so that the computer embedded inside can interpret touches from the user or users.

Individual applications can be written to interpret the data supplied from Touchlib and provide feedback to the display for the user or users.

Page 19: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Touchlib Calibration

The Touchlib library comes with software to calibrate and test the blob detection for a multi-touch setup.

Also, Touchlib comes with software to calibrate and test the camera that will be used with the multi-touch table.

Page 20: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

General Application Program Flow

Page 21: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Application Development

Many different platforms can be used to develop multi-touch applications utilizing TUIO events. Such platforms include: Adobe Flash Java vvvv C++

At least one demo application will be developed with one of the platforms above.

Page 22: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Testing Strategies

All hardware subsystems will be tested thoroughly and independently. Mechanical components (cabinet)

Silicone Rubber Thermal testing

LED Arrays Integration

Input System Output System

Software Touchlib

Hardware integration and blob detection Applications

Single touch events Using table hardware

Page 23: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Foreseen Problems

Hardware Cabinet building

Thanks Todd (the Mechanical Engineer) for attempting to avoid some of these problems!

Ambient Light Silicone Rubber Fan placement

Overheating Barrel Distortion

Fisheye effect Software

Learning application platforms Mac Mini not powerful enough

Page 24: MULTI-TOUCH TABLE Athena Frazier Chun Lau Adam Weissman March 25, 2008 Senior Projects II

Questions?