Praktikum Augmented Reality

Prof. Dr. Andreas Butz, Dr. Martin Wagner, Michael Aron

Praktikum, 4 SWS

Breaking News

  • Die Lösungen der Programmieraufgaben der Blätter 1 mit 3 sind im Subversion-System der RBG unter https://svn.cip.ifi.lmu.de/~wagner/svn/arprakt/students/Loesungen/ verfügbar.
  • Das Blatt 4 ist natürlich bis zum 2.06. abzugeben und nicht wie ursprünglich darauf vermerkt am 9.06. Ausserdem ist die Abgabefrist für Blatt 3 bis zum 26.05. verlängert. -- MartinWagner - 20 May 2005
  • Weil Blatt 2 doch eher schwieriger war, ist die Aufgabe 15 von Blatt drei nicht zu bearbeiten. Sie wird auf Blatt 4 nachgeholt. -- MartinWagner - 12 May 2005
  • Der Dienstagstermin der Programmierberatung wurde auf Mittwoch verschoben. -- MartinWagner - 28 Apr 2005
  • Bitte benutzen Sie für allgemeine Fragen (z.B.: "Bei mir geht der Linuxtreiber nicht.") die allgemeine Mailingliste, also arprakt05@lists.STOPSPAM.ifi.lmu.de
  • Bitte nehmen Sie zur Vorbesprechung 20,- € Kaution für die USB-Kameras mit. -- MartinWagner - 19 Apr 2005
  • Das Praktikum ist fast voll, aber es gibt noch zumindest einen Restplatz. Anmelden! -- MartinWagner - 18 Apr 2005
  • Die von uns zur Verfügung gestellten USB-Kameras benötigen die soeben neu verlinkte angepasste AR Toolkit Version ARToolKit-2.70.lmu-prakt-v4l.tgz. Die vor ein paar Wochen auf dieser Site angebotene Version war stattdessen an IEEE 1394 (i.e. FireWire) Kameras angepasst. -- MartinWagner - 18 Apr 2005

Screenshots

Screenshots der Aufgabenblätter

Termine

Sommersemester 2005

wöchentliche Besprechung
Donnerstag, 14:15 - 15:00, Amalienstr. 17, Raum 105 (1. Stock)
erster Termin
21. April 2005

Programmierberatung
Amalienstr. 17, CIP-Pool
Mittwoch, 16-17 Uhr: Martin Wagner
Freitag, 14-15 Uhr: Michael Aron

Inhalt

Augmented Reality (AR) ist eine neue Technologie, bei der in Echtzeit virtuelle Informationen reale Welten anreichern. Dies geschieht interaktiv und im dreidimensionalen Raum. In der zu diesem Praktikum gehörenden Vorlesung werden die theoretischen Grundlagen der AR vermittelt.

In diesem Praktikum lernen Sie, eigene einfache AR-Systeme zu implementieren. Dabei konzentrieren wir uns auf mit Hilfe der Bibliothek AR Toolkit erstellte visuelle Realitätserweiterungen.

Das Praktikum gliedert sich in zwei Phasen:
  1. In den ersten beiden Monaten gibt es wöchentlich ein Übungsblatt, das schriftliche Probleme und Programmieraufgaben enthält. Die Übungsblätter sind allein zu bearbeiten, eine gemeinsame Diskussion der gestellten Probleme ist aber sehr erwünscht.
  2. Im letzten Monat bearbeiten Sie in Teams ein eigenes Projekt. Dies kann z.B. eine neue Anwendung der AR sein oder eine originelle Benutzerschnittstelle, die AR-Techniken nutzt.

Jede(r) Teilnehmer(in) des Praktikums bekommt leihweise eine eigene USB-Webcam, mit der die Aufgaben sowohl im CIP-Pool als auch auf eigenen Rechnern gelöst werden können.

Projekte

Die Folien der Vorbesprechung: AR-Prakt-Projektphase.pdf

Projekt von Dominik Schmidt, Dominikus Baur, Tobias Hößl

An interactive game on an intelligent table. GruppeDSDBTH

Projekt von Tobias Lang, Sebastian Boring, Helge Groß, Toni Zeitler

An interactive, responsive manual for a coffee machine. GruppeTLSBHGTZ

Projekt von Marc Breisinger, Matthias Schicker, Raphael Wimmer

A virtual hairdresser for trying various hairstyles before the real hairdresser goes to work. GruppeMBMSRW

Aufgabenblätter

Vorab: Ein Merkblatt zum Ablauf des Praktikums und zur Scheinvergabe.

Termin Abgabe Beschreibung Download Tipps & Tricks, Ressourcen
21.04. 28.04. Einführung in AR Toolkit, Wiederholung Transformationen im 3D (pdf) Einführung in C, AR Toolkit für's Praktikum, AR Toolkit Tutorial
28.04. 12.05. Eigene und mehrere Marker im AR Tookit, hierarchische Transformationen im Szenengraph (pdf) Template für Aufgabe 6, Inside AR Toolkit (Prof. Kato)
05.05. entfällt (Christi Himmelfahrt)
12.05. 19.05. Quaternionen, Animationen mit Quaternionen, Einbindung von VRML in AR Toolkit (pdf), Lösung Template für Aufgabe 12 (Math Library), Sheep VRML model, Wolf VRML model
19.05. 02.06. Kalibrierung mehrerer Marker (pdf) patt_mm_a16.pdf, A16 Pattern files
26.05. entfällt (Fronleichnam)
02.06. 09.06. Interaktion über AR-Schnittstellen (pdf) A17 Multimarker Tarball multimarker.tar.gz A18 Multimarker Tarball slidermarker.tar.gz
09.06. 16.06. Spitzenkalibrierung für Zeigegeräte (pdf) A20 Multimarker Tarball hotspot.tar.gz, Download von TNT und JAMA/C++

Ab dem 16.06. werden Projekte bearbeitet, die Abschlußdemos finden voraussichtlich am 14.07. statt.

Ein paar von uns gesammelte Projektvorschläge sollen Sie nicht davon abhalten, Ihre eigenen Ideen zu verwirklichen!

FAQ

Sollten Sie noch eine Frage haben, schreiben Sie uns!

Welche Vorkenntnisse sind hilfreich?

  • Hohe Motivation. Sie ersetzt notfalls auch alle nachfolgend genannten Punkte.

  • Die parallel stattfindende [[AR-Vorlesung ist sehr hilfreich.
  • Programmiererfahrung in einer objektorientierten oder prozeduralen Sprache.
  • (3D-)Computergraphik, z.B. durch die Vorlesung Interaktive virtuelle 3D-Welten
  • Grundkenntnisse in dreidimensionaler Geometrie und linearer Algebra (aus dem Grundstudium)
  • Grundkenntnisse im Software Engineering

Welche Programmiersprache?

AR arbeitet am absoluten Limit auch heutiger Rechner. Deshalb benutzen so gut wie alle existenten Systeme maschinennahe Sprachen, meist C/C++. Wir machen hier keine Ausnahme - allerdings sollen Sie im Praktikum nicht primär C, sondern AR-Techniken lernen. Deshalb werden wir durch die Aufgabenstellung, Codefragmente und Musterlösungen alles versuchen, um die Schwierigkeiten von C/C++ so weit wie möglich zu kapseln.

Muss ich OpenGL beherrschen?

Nein. Zumindest nicht mehr als C/C++. OpenGL ist Mittel zum Zweck, wir werden uns auch hier bemühen, Sie von größeren Schwierigkeiten fernzuhalten. Zudem bietet das AR Toolkit die Möglichkeit, VRML-Modelle einzubinden. Wir werden auch darauf eingehen.

Welche AR Toolkit Version wird verwendet?

Im wesentlichen verwenden wir die offizielle Version 2.70 von der AR Toolkit Webpage. Da diese gleichzeitig für eine Vielzahl verschiedener Betriebssysteme gedacht ist, können Sie eine speziell für das Praktikum angepasste Version herunterladen, die schon fertig konfiguriert ist. Alternativ gibt es einen auf die Originalversion anwendbaren Patch.

Kann ich AR Toolkit auch außerhalb des CIP-Raums/unter Windows benutzen?

Ja! AR Toolkit funktioniert sowohl unter Windows, Mac OS X als auch unter Linux. Hinweise zu den Plattformen:

Wie kann ich das angezeigte Bild spiegeln?

Wenn man mit dem ARToolKit einen virtuellen Spiegel realisieren will, müssen das Bild der Kamera und die dazugezeichneten Objekte spiegelverkehrt angezeigt werden.

Windows bietet die Möglichkeit, das Bild bei der Aufnahme zu spiegeln:
char *vconfs[] = {               // Camera configuration.
#if defined(_WIN32)
      "flipV,flipH,videoWidth=640,videoHeight=480"

[...]

#endif

Dann müssen allerdings auch die Marker spiegelverkehrt ausgedruckt werden, damit sie erkannt werden. Multimarker müssen ebenfalls komplett spiegelverkehrt sein.

Leider bietet Video4Linux keine derartigen Schalter. Mit der OpenGL-Funktion glPixelZoom(x, y) kann das Bild allerdings (auch auf Windows) vor dem Zeichnen gespiegelt werden. glPixelZoom(-1,1) spiegelt das Bild horizontal. Irgendwo kann man das vielleicht anwenden, trotz langer Suche habe ich es aber nicht geschafft, die funktion irgendwo sinnvoll anzuwenden. -- RaphaelWimmer - 08 Jul 2005

Weiterführende Links

-- MartinWagner - 17 Jun 2005

Topic revision: r41 - 18 Mar 2006, MarcBreisinger
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Medieninformatik-Wiki? Send feedback