Beispiel - AG Stricker University of Kaiserslautern

Transcription

Beispiel - AG Stricker University of Kaiserslautern
Zweihändige Interaktion,
Multi-Touch und
Stift-basierte Anwendungen
Intelligente Mensch-Maschine-Interaktion - IMMI
SS 2011
Markus Weber
Prof. Didier Stricker
[email protected]
Multitouch
Was ist “Multitouch”
„Multitouch“ ist ein System zur Mensch-MaschineInteraktion. Es vereint Ein- und Ausgabegerät und
kommt dadurch ohne herkömmliche Eingabegeräte
wie Maus, Tastatur oder Stylus aus.
Applikationen können direkt auf der Multitouchfläche
mit einem oder mehreren Fingern manipuliert
werden.
Erlaubt eine intuitivere Interaktion für bestimmte
Aufgaben.
Multitouch Geschichte
Multitouch ist über 25 alt!
1982: Erstes Multitouch System wurde beschrieben
in : Mehta, Nimish, A Flexible Machine Interface,
M.A.Sc. Thesis, University of Toronto
1984: Erster Multi-Touch Screen, Bob Boie, Bell
Labs, Murray Hill NJ
...
2005:
2007:
2007:
2008:
2010:
Jeff Han (NYU)
Apple iPhone
Microsoft Surface Computing
N-trig Touch Screens
Apple iPad
http://www.billbuxton.com/multitouchOverview.html
Multitouch Beispiele
iPhone / iPod / iPad
MS Surface
Dell Latitude XT2 / HP touchSmart
Windows 7
Zweihändige Interaktion
Was ist zweihändige Interaktion?
Theoretische Grundlagen von Buxton & Myers (1986)
und Guiard (1987)
Aktuelle Arbeiten im Bereich HCI von Zhai, Kabbash,
Hinckley, Balakrishnan, etc.
Idee:
Gleichzeitige Nutzung beider Hände
zum Lösen einer Aufgabe
Arten:
Asymmetrisch
Symmetrisch
Asymmetrische zweihändige Interaktion
(Guiard)
Hände führen unterschiedliche Teilaufgaben aus
(asymmetrisch)
Unterscheidung in dominante und nicht-dominante
Hand
Nicht-dominante Hand
Führt die dominante Hand
Definiert das Bezugssystem
Bearbeitet “größere” / grobere Aufgaben
Dominante Hand
Folgt der nicht-dominanten Hand
Arbeitet innerhalb des von der Nicht-dominanten
Hand definierten Bezugssystems
Bearbeitet “kleinere” / detaillierte Aufgaben
Asymmetrisches Beispiel:
Ein weiteres klassisches Beispiel für eine Aufgabe
die an die nicht-dominanten Hand deligiert werden
kann ist “Scrolling”
Task
Eigenschaften
“Scrolling”
• Wird vor oder parallel zu anderen Tasks ausgeführt,
• Legt das Bezugssystem fest,
• Kann unpräzise sein.
Auswahl,
Bearbeiten,
Zeichnen,
etc.
• Wird nach oder parallel zum “Scrollen” ausgeführt,
• Ausführung innerhalb des Bezugssystems,
• Erfordert präzises Arbeiten.
Scrolling
Auswahl/Bearbeiten
Spezielle Tasten für
“cut, copy & paste”
sowie “Scrollen” auf der
linken Seite der Tastatur.
Xerox Star, circa 1981
Microsoft Office Keyboard
Symmetrische zweihändige Interaktion
Hände führen identische Teilaufgaben aus
(symmetrisch)
Beispiele:
Größenänderung eines Rechtecks
Zoom in/out
2005: Tactiva
2006: Jeff Han NYU
2007: ThinSight, MS Research
Touch Techniken
kapazitive Oberflächen (kondensatorgesteuerte)
Mit Metalloxid beschichtetes Glassubstrat
An Ecken angelegte Spannung erzeugt ein
gleichmäßiges elektrisches Feld
Bei Berührung erfolgt ein Ladungstransport der an
den Rändern gemessen wird und in direktem
Verhältnis zur Position der Berührung steht
Anwendungsbeispiele:
iPhone / iPod Touch / iPad, Prada (LG), HTC-G1
Tablet PC (N-trig)
Touch Techniken contd.
Resistive (widerstandgesteuerte) Systeme
Zwei Schichten mit konstanter Spannung durch
Abstandshalter voneinander getrennt
Bei Berührung mit dem Finger/Stift entsteht ein
elektrischer Kontakt -> Änderung des Widerstandes
Unterschiedliche Spannung an jeder Stelle ->
Bestimmung der x und y Position des Kontaktes
möglich
Anwendungsbeispiele:
Tablet-, Industrie-PCs
Home-Entertainment (z.B. Nintendo DS)
PDAs, Smartphones
Touch Techniken contd.
SAW (Surface Acoustic Wave) – „(schall)wellengesteuerte Systeme“
Bei Berührung werden Ultraschallwellen auf der
Oberfläche absorbiert.
Aus der Änderung der empfangenen Schallwellen
kann die Position bestimmt werden
Touch Techniken contd.
Optische Systeme (Infrarot)
In der Regel Infrarotlicht-Gitter vor dem Monitor
(2 Seiten mit IR-LEDs, 2 Seiten mit Fotosensoren)
Bei Berührung wird ein Schatten im Bild der
gegenüberliegenden Kamera erzeugt.
Durch Triangulation kann die Position der Berührung
berechnet werden.
Anwendungsbeispiele:
Bankterminals
HP-150
Touchscreen des HP-150
Touch Techniken contd.
Computer Vision
Von den Fingerkuppen reflektiertes Infrarotlicht wird von
einer Kamera hinter der Displayfläche aufgenommen
Mittels Blobtracking (Bildverarbeitung) wird die Position
der Berührung berechnet
Anwendungsbeispiele:
Jeff Han
MS Surface
Community Multitouch Tables
Multitouch Table
Genereller Aufbau
1.
2.
3.
4.
5.
6.
Infrarotkamera
Tracking +
Visualisierungs PC
Projektor
Spiegel
Touchoberfläche
Berühren der Touchoberfläche
Aufgenommenes (Infrarot) Bild
Bildverarbeitung (Blobtracking)
Applikation
Projektion
Touchfläche
Eingabe- sowie Ausgabemedium
Durch Berühren der Fläche wird Infrarotlicht in
Richtung der Kamera gelenkt
Das Bild wird von unten auf die Touchfläche
projeziert
Verschiedene Techniken für Berührungserkennung
FTIR
DI
LLP
DSI
Multitouch Table - Techniken
FTIR (Frustrated Total Internal Reflection )
nuigroup.com
• “unterbrochene” Totalreflexion, das in der Acrylscheibe
totalreflektierte IR-Licht wird am Berührungspunkt zur
Kamera gebrochen
FTIR
Vorteile:
• Es wird keine geschlossene Box benötigt
• “Blobs” haben einen starken Kontrast
• Erlaubt das Erkennen von Druckunterschieden
Nachteile:
• Benötigt eine besondere Beschichtung
• Nutzung von Markern ist nicht möglich
• Glasoberfläche nicht möglich
Multitouch Table - Techniken
DI (Diffused Illumination)
nuigroup.com
• Die Touchfläche wird von hinten mit IR-Licht angestrahlt.
Bei Berührung der Diffusorschicht wird IR-Licht zur Kamera
reflektiert.
DI
Vorteile:
• Keine spezielle Beschichtung nötig
• beliebiges transparentes Material als Oberfläche (auch Glas)
• Einfaches Setup (kein LED Rahmen benötigt)
• Marker können verwendet werden
Nachteile:
• “Blobs” haben niedrigeren Kontrast
• Geschlossene Box wird benötigt
• Gleichmäßige Ausleuchtung schwer zu erreichen
Multitouch Table - Techniken
LLP (Laser Light Plane)
nuigroup.com
Über der Touchfläche wird mit IR Lasern eine Ebene aus IR
Licht erzeugt. Bei Berührung wird diese unterbrochen und
das IR Licht zur Kamera gelenkt.
LLP
Vorteile:
• Keine spezielle Beschichtung nötig
• beliebiges transparentes Material als Oberfläche (auch Glas)
• Einfachstes Setup
• Geschlossene Box nicht benötigt
Nachteile:
• Marker nicht möglich
• Verdeckung kann auftreten
Multitouch Table - Techniken
DSI (Diffused Surface Illumination)
nuigroup.com
Durch spezielle Mikropartikel im Plexiglas (Endlighten)
erfolgt eine gleichmäßige Verteilung und Abstrahlung des IR
Lichts.
DSI
Vorteile:
• Einfacher Wechsel zwischen DI (DSI) und FTIR
• Marker verwendbar
• Drucksensitiv
• Gleichmäßige Finger- / Objektbeleuchtung auf der ganzen Fläche
Nachteile:
• Endlighten wesentlich teurer als normales Acrylglas / Plexiglas
• “Blobs” haben niedrigen Kontrast
Eine Infrarotkamera nimmt das reflektierte Licht auf
Zur Erkennung der Berührungspunkte werden
Algorithmen der Bildverarbeitung benutzt
Subtraktion des Hintergrundes
Glättung
Filterung
etc.
Das resultierende S/W Bild beinhaltet nur noch die
Berührungspunkte (Blobs)
Verfügbare OpenSource Bibliotheken
Touchlib, tbeta, ccv (www.nuigroup.org)
reactiVision (http://reactivision.sourceforge.net/)
BBTouch (http://benbritten.com/blog/bbtouchquick-start/)
Blobtracking (CCV)
Community Core Vision (http://ccv.nuigroup.com)
Applikation
Die Position der Berührungen wird an die
Applikation gesendet
Anhand der gesendeten Informationen wie Position
und ID der Berührungen können daraus Gesten
erkannt werden.
Mit Gesten können Programme gesteuert oder
spezielle Aktionen ausgeführt werden.
 Beispiele für Gesten
Manche Techniken unterstützen die Verwendung
von Markern. Damit können beliebige Objekte zur
Steuerung der Applikation verwendet werden.
 Beispiele für Marker
Gesten (Beispiele)
Auswahl/Aktivierung
“Mausklick (links)”
Menüaufruf
“Mausklick (rechts)”
http://www.kickerstudio.com/blog/2008/12/touchscreen-stencils/
Gesten (Beispiele)
Verschieben (z.B. Hintergrund) / Markieren (z.B.
Text) / Scrollen
Objekt verschieben (z.B. Bild)
Mausbutton gedrückt halten
Gesten (Beispiele)
Verkleinern bzw. Vergößern
Mausrad
Gesten (Beispiele)
Es sind weitere Gesten denkbar, z.B. “anstupsen”
oder “wegschnippen” von Objekte.
Diese sind aber stehts abhängig von der
Applikation.
Marker
Die Verwendung von Markern erlaubt es damit
gekennzeichnete Objekte zur Interaktion mit
einem Multitouch Tisch zu benutzen.
Die ist nur mit einigen Techniken möglich (DI, DSI)
Anhand des Markers kann das Objekt (eindeutiges
Muster) und dessen Orientierung auf der
Oberfläche bestimmt werden.
reactiVision
Circular markers (DFKI)
Projektionsfläche
Zur Darstellung der Applikationsoberfläche in der
Berührunsebene kommen zwei Techniken zum
Einsatz.
Projektion
Das Bild wird mittels eines Projektors auf eine
Diffusorfläche projeziert.
Dazu wird eine gewisse Entfernung benötigt,
welche durch die Verwendung von Spiegeln
“verkürzt” wird.
LCD Panel
Das LCD Panel eines handelsüblichen Displays
wird als zusätzliche Schicht unter der
Touchfläche angebracht
Die höhe des Tisches wird somit nur noch von
der benötigten Kameraentfernung bestimmt
Links
Natural User Interfaces Group
www.nuigroup.com
ReactiVision
http://reactivision.sourceforge.net/
History of Multitouch
http://www.billbuxton.com/multitouchOverview.html
Blog Multi-Touch Forschung
http://www.touchusability.com/
Stiftbasierte Interaktion
Stift als natürliches Eingabemedium in
verschiedene Domänen (Design, Medizin, …).
Möglichkeiten der Eingabe:
Handschrift,
Zeichnungen,
Gesten.
Touch&Write Projekt
Multi-Touch Tisch mit Stiftunterstützung
Link: http://www.touchandwrite.de/
Schichten
Anoto Pattern und Stift
Handschrifterkennung
Handschriftliche Daten:
MNIST – Datenbank für Ziffern (offline)
28 x 28 Bitmap
Beispiel: Eingescannte Formulare
IAM On-Line Handwriting Database (online)
Schriftzug als Sequenz von Stiftkoordinaten
Beispiel: Tablet-PC, Anoto Pen
Formalismen
Sample:
Stroke:
Sequence:
Handschrifterkennung Verarbeitungsschritte
Handschrift
Pre-Processing
Aufbereitete Daten
Feature Extraktion
Features
<0.44, 23.5, …, 1>
Klassifikation
Alternativen
[(„a“, 0.75), („0“, 0.25)]
Post-Processing
Text
„a“
Pre-Processing
Skew correction:
Slant correction:
Pre-Processing
Equidistant resampling – Online Daten sind zeitlich
konstant und werden räumlich normalisiert.
Feature Extraktion
Online Features:
Geschwindigkeit / Beschleunigung
Normalisierte (x, y) Koordinaten
Differenz (∆ x, ∆ y) zwischen Samples
Feature Extraktion
Features:
• length
• area
• angle
Feature Extraktion
Features:
• curvature
• circular variance
• closure
• number of strokes
Klassifikation
k-Nearest Neighbor
Post-Processing
Verwenden von Kontextinformation und
Sprachmodellen.
Kollokation bezeichnet man in der Linguistik das
gehäufte benachbarte Auftreten von Wörtern, wie
auch immer gemeinsames Auftreten zunächst
begründbar sein mag (z.B.: alarm clock).
Syntaktische Analyse zeigt die Strukturierung der
Sätze und die Satzarten auf.
Applikationen
a.SCatch – Visuelle Suche von Grundrissen in
Datenbank
Stiftbasierte Applikation für Raumplanung
Applikationen
VideoTouch – Multi-User Video Annotation
RoDes – Raumdesigner