maandag 5 oktober 2009

Paper: A Multitouch Software Architecture

Paper geschreven door Echtler & Klinker (TU München, 2008).
Zij stellen een algemene softwarearchitectuur voor voor multitouch systemen met als hoofddoel de draagbaarheid van bestaande software over verschillende hardwaresystemen (FTIR/lasers/DI/... met bijhorende camera's) te vergroten door een minimale verandering. Ook willen ze door deze architectuur een high-level API aanbieden.
Hoe ziet de architectuur eruit?
1. hardware abstractie laag: krijgt van de camera's onbewerkte data binnen en probeert vinger- en handposities te detecteren
2. transformatielaag: voert allerhande berekeningen uit: o.a. conversie van cameracoördinaten naar schermcoördinaten, calibratie,...
3. interpretatielaag: gaat op zoek naar bewegingen door opeenvolgende beelden te analyseren
4. widgetlaag: krijgt de handelingen door van de interpretatielaag en genereert hiermee zichtbare output naar de gebruiker toe

Laag 1 is typisch de tracker applicatie (touchLib/touché/CCV/...) die via het TUIO protocol z'n gegevens doorgeeft naar de client applicatie die output gaat genereren. Meestal zitten laag 2, 3 en 4 vervat in het framework aan de applicatiezijde.
De softwarelibraries die ontwikkeld werden vooraleer deze architectuur bestond zijn duidelijk gericht op het TUIO protocol: een tracker applicatie verzamelt gegevens en die worden verstuurd via TUIO naar een client applicatie. Echtler & Klinker proberen met hun nieuwe architectuur te gaan naar een 4-delig schema waarbij deze onderdelen gedistribueerd kunnen samenwerken. Berichten worden hierbij via UDP-pakketten verstuurd, wat volgens hen slechts een relatief kleine latency oplevert. TISCH is een implementatie van deze architectuur, maar zit nog in een beginfase en wordt voorlopig online weinig of niet gedocumenteerd. De implementatie is gebaseerd op C++ in combinatie met OpenGL wegens de hoge performantie, de draagbaarheid over verschillende platformen en de hoge grafische prestaties.

Geen opmerkingen:

Een reactie posten