We have implemented a multitouch trackpad input device and software photoviewer. For this project we built a mini touch-enabled table that utilizes the infrared spectrum to send touch information to our software.
The photoviewer recognizes various gestures, such as panning, pinching & zooming, and navigation via swiping. To implement this, we used the Community Core Vision (CCV) software to do image processing on the camera data. CCV then sends UDP packets that are received by our processing software via the TUIO touch library. We then implemented the proper functions to handle touch events that correspond to interactions in the photoviewer.
We also implemented inertia, so that objects keep moving based on the velocity the touches had set them. We used threads to implement this so that after a touch has been processed, depending on velocities and accelerations, the photo will travel along its given trajectory.
Additionally, we built an IR pen that harnesses a momentary switch enabling users to send impulses of IR beams when clicking the device. This allows a user to navigate photos using the pen/stylus metaphor.
Sony PlayStation 3 Eye Camera with an IR filter favoring frequencies around 850nm.
IR LED array
2.6mm wide angle lens
100 Ohm resistor
IR Led and holder
Macam 0.9.2 for OS X
Community Core Vision (tbeta)
TUIO touch library for Processing