Filtern
Dokumenttyp
- Studienarbeit (76) (entfernen)
Gehört zur Bibliographie
- nein (76) (entfernen)
Schlagworte
- Robotik (9)
- Bildverarbeitung (5)
- Computergraphik (4)
- Augmented Reality (3)
- Augenbewegung (2)
- Autonomes Robotersystem (2)
- Computer (2)
- Computersimulation (2)
- Computerspiel (2)
- Computertomografie (2)
Institut
- Institut für Computervisualistik (76) (entfernen)
"MoleARlert" entstand im Rahmen eines Projektpraktikums der AG Computergrafik, unter Leitung Herrn Prof. Müllers und Herrn Dipl.-Inf. Stefan Rilling, im Wintersemester 2008/2009. Das System wurde von insgesamt zwölf Studierenden der Universität Koblenz-Landau entwickelt. Inhalt dieser Studienarbeit ist neben der Beschreibung des Systems vor allem die Veränderungen, die vom Autor nach Abschluss des Projektpraktikums, an diesem vorgenommen wurden unter besonderer Berücksichtigung der Neu- und Weiterentwicklungen die dazu führten die Reife des Systems zu verbessern. Ein weiterer wichtiger Aspekt der Arbeit ist die Einbindung einer Webkamera in eine 3D-Engine in Echtzeit.
Seit 2005 beschäftige ich mich im Rahmen der Künstlergruppe "Farbraum" mit visuellen Installationen und live Video Performaces auf kulturellen Events. Dafür haben wir einzelne Video-Performance Applikationen entwickelt, die die Probleme einzelner Projekte lösen.Was uns bisher noch nicht gelang ist a) eine modulare Softwarearchitektur zu entwickeln und b) ein Werkzeug zur Entzerrung ebener Flächen, die nicht rechtwinklig projiziert werden, zu erstellen (unter der Annahme, dass Projektoren verwendet werden). Diese Arbeit beschreibt die Lösung des ersten Problems durch die Entwicklung eines modularen Frameworks und des zweiten Problems durch die Implementation eines benutzerfreundlichen Moduls zur Entzerrung von ebenen Flächen. Die Entzerrung findet komplett manuell statt, indem der Benutzer die Koordinaten der Flächeneckpunkte durch das Ziehen der Punkte mit der Maus verändert. Dabei werden die xund y-Werte der Eckpunkte verändert, der z-Wert bleibt konstant. Während auf diese Weise die 3D-Interaktion mittels eines 2D-Eingabegeräts verhindert wird, führt die ausschließlich zweidimensionale Transofrmation der Flächen zu unerwünschten Textur-Mapping Artifakten, die durch das Triangulierungs-basierte Rendern von Grafikkarten entstehen. Um diese Artifakte zu vermeiden, wird ein Verfahren names "adaptive Subdivision" vorgestellt, das die entsandenen Rendering-Fehler korrigiert.
Die Ausgabe von immer echter und realistischer aussehenden Bildern auf Bildschirmen ist heute ein wichtiger Bestandteil in der Konzeption, Präsentation und Simulation von neuen Produkten in der Industrie. Trotz der auch immer physikalisch echter werdenden Grafiksimulationen ist man bei der Ausgabe auf Bildschirme angewiesen, die einen limitierenden Faktor darstellen: Leuchtdichten in Simulationen gehen dabei weit über tatsächlich darstellbare Leuchtdichten von Monitoren hinaus. Das menschliche Auge ist hingegen in der Lage, einen großen Dynamikumfang zu sehen, sich an gegebene Beleuchtungsverhältnisse anzupassen und auch kleinste Unterschiede in der Helligkeit einer Szene wahrzunehmen. Für die Ausgabe solcher High-dynamic-Range-Bilder auf herkömmlichen Monitoren müssen sogenannte Tonemappingverfahren jene Bilder auf den darstellbaren Bereich reduzieren. Manche dieser Verfahren bedienen sich dabei direkt der Physiologie des Auges, um eine realistische Ausgabe zu erzeugen, andere dienen eher zur Stilisierung. Ziel dieser Studienarbeit ist die Entwicklung eines Tonemappingverfahrens, das ein vertrauenswürdiges Ergebnis liefert. Ein solches Ergebnis ist erreicht, wenn der Betrachter keine Unstimmigkeiten im Bild vorfindet, die der Realität widersprechen. Der Gesamteindruck soll dem entsprechen, was der Nutzer sehen würde, stünde er direkt neben der aufgenommenen Szene. Für eine abschließende Evaluation wurde insbesondere eine reale Boxszene am Computer nachmodelliert und gerendert. Neben einem HDR-Foto kann damit der neu entstandene Tonemapping-Operator untersucht und mit bereits vorhandenen Tonemappingverfahren verglichen werden. 13 Probanden haben an dieser Evaluation teilgenommen, um die Leistungsfähigkeit und Qualität zu bewerten.
Für diese Studienarbeit können zwei Schwerpunkte genannt werden. Einerseits sollten verschiedene Verfahren zur Fluchtpunktschätzung aus Wissenschaft und Forschung eingänglich untersucht und erörtert werden. Dies im Hinblick auf ein detaillierteres Analyseverfahren, das die Möglichkeit bietet, mehrere Gebäudeseiten automatisiert entzerren zu können. Andererseits sollten sich die gewünschten Verbesserungen in das bereits vorhandene Gesamtsystem des Projekts Ornamente eingliedern, um so das Endergebnis der Klassifizierung von Ornamenten zu verbessern. Daraus entstanden die in Kapitel 1 genannten Hauptaufgaben. Neben dem TAM-Verfahren, dass im vorhandenen Teilprozess der Entzerrung bereits zum Einsatz kam, wurde in Kapitel 2 das Verfahren KHT nach Tuytelaars beschrieben. Ansätze der KHT waren im Bestehenden zu erkennen, wie sich während der anfänglichen Einarbeitung in das Themengebiet Fluchtpunktfindung und dem Gesamtsystem der Ornamentklassifizierung herausstellte. Allerdings waren einige Aspekte, wie sie von Tytelaars et al. in [TGPM98] zur KHT beschrieben sind, nicht enthalten. Der erste Lösungsansatz zur Entzerrung von mehreren Gebäudeseiten bestand darin, die KHT unabhängig von allen Prozessen des Gesamtsystems zu implementieren, um so die Genauigkeit der Fluchtpunktdetektion zu erhöhen. Mit dieser detaillierteren Fluchtpunktfindung sollte das bereits bestehende Modul der Entzerrung zu besseren Ergebnissen führen. Um die Entzerrung für sich alleine nutzen zu können, musste sie vorerst von der vorhandenen Fluchtpunktschätzung isoliert werden. Während der in Kapitel 3 beschriebenen Umstrukturierung und Trennung der beiden Prozesse wurde das eigentliche Problem der Verarbeitung von mehreren Gebäudeseiten erkannt. Nicht die Fluchtpunkte und die Verfahren für ihre Detektion sind ausschlaggebend, weitere Ebenen im Bild erkennen zu können. Vielmehr verhindert dies der fehlende Rückschluss von extrahierten Kanten auf die Lage, Größe und Anzahl der im Bild vorhandenen Gebäudeseiten. Wären hierzu Informationen bekannt, könnten, wie auch für ornamentale Bereiche, ROIs festgelegt werden, die mit einer hohen Wahrscheinlichkeit eine abgegrenzte Gebäudeseite beinhalten. Um diese daraufhin zu entzerren, kann das jetzt isolierte Programm zur Entzerrung genutzt werden. Die KHT umzusetzen, wurde als Lösungsweg verworfen und der eigene Lösungsansatz "Level of Detail" aus Kapitel 3 wurde entwickelt. Die entstandenen Programme wurden wie gefordert in PUMA, der "Programmierumgebung für die Musteranalyse" eingebunden. Wie die Test aus Kapitel 4 jedoch zeigen, konnte damit keine Verbesserung erzielt werden.
Die moderne Bildgebung in der Medizin arbeitet oft mit Daten höheren Tonwertumfangs. So haben beispielsweise Bilder aus CT-Geräten einen Dynamikbereich von 12 Bit, was 4096 Graustufen entspricht. Im Bereich der photorealistischen Computergrafik und zunehmend in der Bildverarbeitung sind Bilddaten viel höheren Tonwertumfangs üblich, die als HDR-Bilder (High Dynamic Range) bezeichnet werden. Diese haben eine Bittiefe von 16, oftmals sogar 32 Bit und können dadurch sehr viel mehr Informationen speichern, als herkömmliche 8-Bit-Bilder. Um diese Bilder auf üblichen Monitoren darstellen zu können, muss man die Bildinformation auf den Tonwertumfang des Ausgabegerätes abbilden, was man als Tonemapping bezeichnet. Es existieren zahlreiche solcher Tonemapping-Verfahren, die sich durch ihre Arbeitsweise, Geschwindigkeit und visuelle Qualität unterscheiden lassen. Im Rahmen dieser Studienarbeit sollen Tonemapping-Verfahren auf medizinische Bilddaten angewendet werden. Dabei soll sowohl die visuelle Qualität, als auch die Geschwindigkeit im Vordergrund stehen.
Das sichere Befahren von komplexen und unstruktierten Umgebungen durch autonome Roboter ist seit den Anfängen der Robotik ein Problem und bis heute eine Herausforderung geblieben. In dieser Studienarbeit werden drei Verfahren basierend auf 3-D-Laserscans, Höhenvarianz, der Principle Component Analysis (PCA) und Tiefenbildverarbeitung vorgestellt, die es Robotern ermöglichen, das sie umgebende Terrain zu klassifizieren und die Befahrbarkeit zu bewerten, sodass eine sichere Navigation auch in Bereichen möglich wird, die mit reinen 2-D-Laserscannern nicht sicher befahren werden können. Hierzu werden 3-D-Laserscans mit einem 2-D-Laserscanner erstellt, der auf einer Roll-Tilt-Einheit basierend auf Servos montiert ist, und gleichzeitig auch zur Kartierung und Navigation eingesetzt wird. Die einzeln aufgenommenen 2-D-Scans werden dann anhand des Bewegungsmodells der Roll-Tilt-Einheit in ein emeinsames 3-D-Koordinatensystem transformiert und mit für die 3-D-Punktwolkenerarbeitung üblichen Datenstrukturen (Gittern, etc.) und den o.g. Methoden klassifiziert. Die Verwendung von Servos zur Bewegung des 2-D-Scanners erfordert außerdem eine Kalibrierung und Genauigkeitsbetrachtung derselben, um zuverlässige Ergebnisse zu erzielen und Aussagen über die Qualität der 3-D-Scans treffen zu können. Als Ergebnis liegen drei Implementierungen vor, welche evolutionär entstanden sind. Das beschriebene Höhenvarianz-Verfahren wurde im Laufe dieser Studienarbeit von einem Principle Component Analysis basierten Verfahren, das bessere Ergebnisse insbesondere bei schrägen Untergründen und geringer Punktdichte bringt, abgelöst. Die Verfahren arbeiten beide zuverlässig, sind jedoch natürlich stark von der Genauigkeit der zur Erstellung der Scans verwendeten Hardware abhängig, die oft für Fehlklassifikationen verantwortlich war. Die zum Schluss entwickelte Tiefenbildverarbeitung zielt darauf ab, Abgründe zu erkennen und tut dies bei entsprechender Erkennbarkeit des Abgrunds im Tiefenbild auch zuverlässig.
Szeneneditor für ein Echtzeitanimationssystem und andere XML konfigurierte und erweiterbare Systeme
(2006)
In dieser Arbeit werden jeweils ein Verfahren aus den beiden Bereichen der Bildregistrierung implementiert und beschrieben. Eine direkte und eine merkmalsbasierte Methode werden verglichen und auf ihre Grenzen hin überprüft. Die implementierten Verfahren funktionieren gut und registrieren beide verschiedene Bildserien subpixelgenau. Bei der direkten Methode ist vor allem die Wahl des Transformationsmodells ausschlaggebend. Auch das Einbetten der Methode in eine Gaußpyramidenstruktur hat sich als wichtig herausgestellt. Da die merkmalsbasierte Methode aus verschiedenen Komponenten aufgebaut ist, kann jeder einzelne Schritt durch unterschiedliche Verfahren ausgetauscht werden, so z.B. die Detektion der Merkmale durch Tomasi-Kanade, SIFT oder Moravec. In der direkten Methode kann die Genauigkeit der Ergebnisse zum einen durch den gewählten Schwellwert und zum anderen durch die Anzahl der Pyramidenstufen beeinflusst werden. Bei der merkmalsbasierten Methode wiederum können unterschiedlich viele Merkmale benutzt werden, die einen unterschiedlich hohen Schwellwert besitzen können. Es wird gezeigt, dass beide Methoden zu guten Ergebnissen führen, wenn davon ausgegangen wird, dass die Verschiebung sowie die Rotation gering sind. Bei stärkeren Veränderungen jedoch wird die direkte Methode recht ungenau, während die merkmalsbasierte Methode noch gute Ergebnisse erzielt. An ihre Grenze gerät sie erst, wenn entweder der Bildinhalt sich stark ändert, oder die Rotationen einen Winkel von 20° überschreitet. Beide Verfahren arbeiten also subpixelgenau, können aber unter verschiedenen Voraussetzungen zu Ungenauigkeiten führen. Werden die jeweiligen Probleme der beiden Methoden beachtet und am besten bei der Aufnahme oder vor der Registrierung eliminiert, so können sehr gute Ergebnisse erzielt werden.
Die Studienarbeit analysiert mit Hilfe einer erweiterten Balancetheorie die Relationen des Roboters zu den Personen im Kamerabild und den Personen untereinander. Es wurde gezeigt, dass die Abstraktion der Balancetheorie auf eine konkrete Anwendung übertragen werden kann. Allerdings muss die Theorie erweitert und teilweise eingeschränkt werden, um sie flexibler, aber gleichzeitig passend zur Anwendung zu gestalten. Dadurch wird die theoretische Grundlage, auf der die Arbeit beruht, ebenfalls verändert. Damit diese Modifikationen nicht den Rahmen der psychologischen Grundlage verlassen, müssen sie wiederum mit psychologischen Mitteln untersucht werden. Das würde allerdings den Umfang dieser Arbeit überschreiten, aber bietet ein Ansatz für eine interdisziplinäre Zusammenarbeit der Psychologie und Robotik. Die Interaktion und das Verhalten der Maschinen nach menschlicher Vorlage zu gestalten, ist für beide Disziplinen von Interesse. Im Kontext der Entwicklung einer ausreichenden Interaktion zwischen der Maschine und dem Menschen, wäre es interessant zu erforschen, welche sozialen Merkmale detektiert werden müssten, zum Beispiel im Spektrum der Mimik. Darüberhinaus ermöglicht die Recognize-Pipeline ein Ansatz, die Interaktion über das Kamerabild hinaus zu verfolgen. Dadurch kann der Roboter das Gesicht mit vergangenen Interaktionen assoziieren und dem entsprechend agieren. Allerdings bedarf die Pipeline-Struktur weiterer Arbeit. So werden bestehende Datenbanken über ein Gesicht nicht mit neuen Bildern erweitert, so fern sie notwendig sind. Auch kann keine automatische Korrektur erfolgen, falls fehlerhafte Informationen in die Datenbank gelangen. So kann es vorkommen, dass das selbe Gesicht zwei unterschiedliche IDs erhält, wenn das Gesicht nicht wiedererkannt wird. Auch können sehr ähnliche Gesichter zusammenfallen zu einer ID. Solche Fehler müssten für eine stabile Anwendung selbständig korrigierbar sein.
Die vorliegende Arbeit behandelt die Entwicklung einer Simulationsumgebung zur Darstellung von Objekten im Weltraum und ihrer gravitativen Wechselwirkung zu einander.
Vorab werden in Kapitel 1 Motivation und Zielsetzung der Arbeit erläutert, des Weiteren werden die verwendeten Werkzeuge benannt. Die nötigen astronomischen Grundlagen werden in Form von Begriffserklärungen und der Vorstellung der dieser Arbeit zugrunde liegenden physikalischen Gesetze in Kapitel 2 beschrieben.
Kapitel 3 befasst sich mit dem Aufbau der einzelnen Klassen. Hier wird insbesondere auf die Berechnung der Positionen und Geschwindigkeiten der simulierten Himmelskörper und den Aufbau und die Funktionsweise der verwendeten Elemente der Graphikengine Ogre3D eingegangen.
Im Kapitel 4 wird der Einsatz des Werkzeugs 3ds Max zur Erstellung der Geometrieobjekte und Materialien erläutert.
Abschließend wird in Kapitel 5 ein Fazit gezogen und mögliche zukünftige Erweiterungen erwogen.
In dieser Studienarbeit wird ein Partikelsystem zur Feuersimulation vorgestellt, sowie die wichtigsten verwendeten Techniken.(z.B. FBO's, VBO's, MRT, etc...) Das Partikelsystem ist ausschliesslich auf der GPU implementiert, ist damit eine GPGPU Anwendung, und verwendet neuste Techniken, wie zum Beispiel Texturzugriffe im Vertexshader. Nach einem Überblick über verschiedene Arten von Partikelsystemen, werden auch viele nötige Techniken erklärt, bevor die eigentliche Implementation und das Programm dargelegt werden.
Das Projekt Ziel der Studienarbeit war, eine physikalisch basierte Echtzeitsimulation eines volumetrischen Fluids in Form einer Rauchentwicklung auf der GPU zu realisieren und diese in eine Echtzeitanwendung zu integrieren. Motivation Mit Hilfe von Fluidsimulationen lassen sich einige der faszinierendst anzuschauenden Naturphänomene wie Rauch, Wolken oder auch Feuer und Wasser realistisch darstellen. Ausserdem könnten mit physikalischbasierten Fluidsimulationen eine große Fülle neuer Interaktionsmöglichkeiten innerhalb einer simulierten Welt realisiert werden. Wasser könnte realistisch fließen und Gegenstände mit sich reißen oder ganze Landschaften überfluten, Wind- und Luftströmungen könnten Segelschiffe antreiben oder sogar zerstörerische Wettereffekte wie Tornados simulieren etc... Die Fluidsimulation Der Rauch kann um Objekte im Fluidvolumen strömen, auf Temperaturunterschiede reagieren und dynamisch beleuchtet werden. Die Fluidsimulation nutzt dabei einen rasterbasierten Ansatz um die Navier-Stokes Gleichungen zu lösen und Partikel durch das Volumen zu transportieren. Objekte können voxelisiert werden und den Fluss im Fluidvolumen beeinflussen. Eine Temperatursimulation sorgt für eine realistische Rauchentwicklung, in dem Partikel, die sich von eine Wärmequelle entfernen zu Boden fallen. Der Rauch kann zudem durch die approximierte Simulation von Licht-Streuungseffekten (scattering) dynamisch und realitätsnah in Echtzeit beleuchtet werden Für eine möglichst artefaktfreie dreidimensionale Visualisierung des Volumens kommt als Rendering-Verfahren View-aligned Volume Slicing zum Einsatz. Ergebnis Das Ergebnis der Arbeit zeigt, Fluidsimulationen lassen sich heute mit Hilfe der GPU in Echtzeit in erstaunlicher Qualität darstellen und sogar in Echtzeitanwendungen integrieren. Es wurde neben der Fluidsimulation ein OpenGL-Renderer als Echtzeitanwendung entworfen, um die Möglichkeiten der Integration einer Fluidsimulation in eine solche Anwendung zu demonstrieren. In dem Programm können zudem zahlreiche Parameter der Fluidsimulation zur Laufzeit manipuliert und gespeichert werden. Der Nutzer kann sich so mit den vielfältigen Möglichkeiten und faszinierenden Effekten einer Fluidsimulation vertraut machen.
In dieser Studienarbeit wird ein Verfahren zur Extraktion eines Oberflächenbegrenzungsmodells aus einem Tiefenbild vorgestellt. Das Modell beschreibt die im Tiefenbild dargestellte Szene durch die Geometrie und die Topologie der planaren Flächen, die in der Szene gefunden werden. Die Geometrie ist gegeben durch die Angabe der Ebenengleichungen der gefundenen Flächen sowie der 3D-Koordinaten der Eckpunkte der Polygone, die diese Flächen beschreiben. Die Informationen über die Topologie der Szene besteht aus einer Nachbarschaftsliste, die für jede Flaeche angibt, über welche Kante diese Fläche mit welcher anderen Fläche verbunden ist. Aufbauend auf einem Algorithmus zur Tiefenbildsegmentierung aus PUMA werden die Polygone bestimmt, die die Flächen der Szene beschreiben. Anschließend wird versucht, diese Polygone über Kanten und Eckpunkte zu verbinden, um ein möglichst geschlossenes Modell der Szene zu erhalten.
Ein Werkzeug zur schnellen Erstellung individueller Schriftarten für die jeweiligen akuten Bedürfnisse wäre ein hilfreiches Instrument für Grafiker und Typographen. Die Anforderung für ein solches Instrument kann kaum sein, gute Schriftsätze zu erzeugen, dies liegt in den Händen des Gestalters, jedoch sollte sie jedem, der sich mit dem Thema befassen möchte, einen leichten Einstieg in die Gestaltung geben. Diese Arbeit versucht somit eine möglichst simple Lösung für das komplexe Thema der Schriftgestaltung zu liefern.
Der Schwerpunkt dieser Arbeit soll auf der schnellen sowie einfachen Umsetzung eigener Ideen von AR-Anwendungen liegen. Damit ein gewisser zeitlicher Rahmen bei der Umsetzung nicht überschritten wird, wurden Lösungen, die eine große Einarbeitungszeit oder fundierte Kenntnisse einer oder mehrer Programmiersprachen erfordern, nicht genauer betrachtet. Unter einer einfachen Umsetzung ist nicht zuletzt auch zu verstehen, dass diese auch dem Kreis der nicht-professionellen Anwender möglich sein soll. Dies beinhaltet, dass das gesuchte Programm auf normalen dem durchschnittlichen derzeitigen Stand der Technik entsprechenden Computersystemen lauffähig sein sollte. Auch wurden kommerzielle Produkte außer Acht gelassen, da die oft nicht unerheblichen Kosten einer nicht-professionellen Nutzung im Wege stehen.
Rissmuster enthalten zahlreiche Informationen über die Entstehung der Risse und können für die Technik oder die Kulturgeschichte von großem Wert sein. So vereinfacht etwa die automatische oder halbautomatische Klassifizierung von Abbildungen solcher Rissmuster die Echtheitsprüfung antiker Artefakte oder die Materialforschung. Teilweise existieren bereits Klassifizierungsverfahren, die sich für die computergestützte Auswertung einsetzen lassen. Da es bislang kein Verfahren zur objektivierten Auswertung und Analyse von Rissmustern gab, entstand 2007 in Zusammenarbeit mit der Stuttgarter Staatlichen Akademie der Bildenden Künste das Projektpraktikum Rissmusteranalyse (Primus), das die automatische Klassifikation von Rissmuster-Aufnahmen ermöglicht. Daran angebunden sollte ein Datenbanksystem die Bilder samt ihrer Analyseergebnisse verwalten und darstellen können. Eine einfach zu bedienende grafische Benutzeroberfläche soll verschiedene Methoden anbieten, die mit jeweils unterschiedlichen Bildverarbeitungsverfahren eine robuste Klassifikation der Rissmuster und den anschließenden Transfer in die Datenbank ermöglichen. Zunächst werden die aktuelle Situation des Projektes Primus und dessen grundlegende Strukturen dargestellt, unter besonderer Berücksichtigung der verwendeten Programmiersprache Qt. Den Schwerpunkt der Arbeit bildet das Redesign der Benutzeroberfläche und deren Erweiterung um neue Komponenten wie Qt-Objekte und einen separaten Tracer.
Die Idee, die dieser Arbeit zugrunde liegt, ist es, die Augmented Reality auch in anderen Bereichen voranzutreiben. In der Filmindustrie beispielsweise behilft man sich schon seit langem mit sowohl virtuellen als auch realen Methoden (computergestützten Visualisierungen, Miniatur-Kulissen), um eine Vorvisualisierung der Dreharbeiten zu erhalten, welche zur Planung des Arbeitsablaufs verwendet werden können. Die Idee liegt hierbei darin, dass durch ein Werkzeug, welches sich der Augmented Reality bedient, zum Beispiel Belichtungsverhältnisse bereits im Voraus ausgetestet werden könnten, oder der Kameramann seine Einstellungen proben kann. So können hierfür mitunter virtuelle Objekte in eine Miniaturszene eingeblendet werden, mit denen die realen Voraussetzungen des Drehorts nachgeahmt werden. Um diese Vorstellung von einem Werkzeug für die Filmindustrie zu ermöglichen, wird ein gutes und stabiles Tracking benötigt, das die nötigen Eigenschaften zur Verfügung stellt. Um ein solches Trackingsystem geht es in dieser Studienarbeit.
Für die Netzwerkprogrammierung hat sich auf breiter Front das Socket API nach Vorbild der Berkley Sockets durchgesetzt. Die "normalen" Sockets in Form von Stream- oder Datagram-Sockets erleichtern zwar die Programmierarbeit, verschleiern jedoch auch zahlreiche Details der Netzwerkkommunikation vor dem Programmierer. So ist man beispielsweise auf die Nutzung der Protokolle TCP oder UDP eingeschränkt und agiert zwangsläufig bereits auf dem Application-Layer des TCP/IP Referenzmodells. Für den Zugriff auf tiefer gelegene Netzwerkschichten, d.h. für den Zugriff auf die Headerdaten eines Netzwerkpaketes, hält das Socket API die sogenannten RAW Sockets bereit. Mit ihnen ist es möglich, alle IP Pakete inklusive Headerdaten zu lesen oder von Grund auf neu zu generieren. Hiermit ist es nun auch möglich, Protokolle zu verwenden, die dem Anwendungsprogrammierer bislang nicht zugänglich waren (z.B. ICMP oder OSPF) oder sogar eigene IP basierte Protokolle zu entwickeln. RAW Sockets stoßen an ihre Grenzen, wenn es darum geht auf den Data-Link-Layer der Netzwerkkommunikation zuzugreifen. Unter Linux gibt es hierfür einen weiteren Socket-Typ: Den PACKET Socket. Die Studienarbeit möchte einen Einstieg in die Programmierung mit den eher unbekannten RAW und PACKET Sockets schaffen. Dabei werden einige Beispielprogramme vorgestellt und mögliche Anwendungsgebiete aufgezeigt.
Pokern erfreut sich einer immer größer werdenden Beliebtheit. Seitdem das Pokern über Internet immer populärer wird, haben viele User Ihre Leidenschaft für das Glücksspiel neu entdeckt. Besonders beliebt ist dabei die Variante Texas Hold"Em, in der es im Vergleich zum klassischen Poker neben den Karten auf der Hand auch noch eine gewisse Anzahl von Gemeinschaftskarten gibt, die nach und nach aufgedeckt werden. Dadurch erhöht sich der strategische Anteil enorm. Jeder Spieler kennt außer seinen eigenen Karten auch einen Teil der gegnerischen Karten und muss überlegen, welche Wendung die nächste aufgedeckte Gemeinschaftskarte herbeiführen kann. Dabei gibt es unzählige Strategien, die dem Spieler Verhaltensweisen zu seinen Karten näher bringen. Diese beruhen auf komplexen mathematischen Berechnungen und gewährleisten beim Einhalten bestimmter Regeln eine statistisch sehr hohe Gewinnrate. Doch das Regelwerk bei diesen Strategien ist ziemlich groß. Es ist genau festgelegt wie sich der Spieler verhalten soll. Die Strategie fordert penible Einhaltung aller Regeln, damit sie zum Erfolg führt. Dadurch wird aus dem Glücksspiel Poker ein mathematisch vorbestimmter Handlungsablauf, der keinen Platz zum bluffen lässt. Außerdem lernt der Spieler auf diese Art nicht viel über die Wahrscheinlichkeiten, die das Pokerspiel birgt, da er alle Handlungsweisen in seinem Strategieregelwerk nachschlagen kann und nicht selber denken muss. Welche Möglichkeiten bleiben also noch um seine Gewinnchancen oder die Chancen auf eine gute Hand abschätzen zu können? Im Bereich des Internet-Pokerns hat der Nutzer die Möglichkeit auf bestimmte Programme mit manueller Eingabe der aktuellen Spielkarten oder auf sogenannte Pokerbots zurückzugreifen. Diese Pokerbots lesen aus dem Speicher die Karten vom Bildschirm aus und sind so in der Lage dem Spieler entweder durch Angabe der Wahrscheinlichkeiten zur Seite zu stehen oder sogar die Steuerung des Spiels für den User zu übernehmen. Doch wie kann ein Spieler ohne mathematische Kenntnisse oder langjährige Pokererfahrung in einem realen Pokerspiel etwas über die Wahrscheinlichkeiten seiner Pokerhand erfahren? Wie wahrscheinlich ist es, dass er mit dem nächsten Blatt eine Straße oder ein Full House bekommt?
Die Visualisierung von Volumendaten ist ein interessantes und aktuelles Forschungsgebiet. Volumendaten bezeichnen einen dreidimensionalen Datensatz, der durch Simulation oder Messungen generiert wird. Mit Hilfe der Visualisierung sollen interessante bzw. in einem gewissen Kontext bedeutsame Informationen aus einem Datensatz extrahiert und grafisch dargestellt werden. Diese Arbeit konzentriert sich auf die Visualisierung von Volumendaten, die in einem medizinischen Kontext erstellt worden sind. Dabei handelt es sich z.B. um Daten, die durch Computertomographie oder Magnet-Resonanz-Tomographie gewonnen wurden. Bei der Darstellung von Volumendaten hat man mehrere Möglichkeiten, welche Art von Beleuchtungsmodellen man einsetzen möchte. Ein Beleuchtungsmodell beschreibt, welche Art von Licht verwendet werden soll und wie dieses mit dem Volumendatensatz interagiert. Die Beleuchtungsmodelle unterscheiden sich in ihrer physikalischen Korrektheit und somit in ihrer Darstellungsqualität. Das einfachste Beleuchtungsmodell zieht keine Lichtquellen in Betracht. Das Volumen verfügt in diesem Fall nur über ein "Eigenleuchten" (Emission). Der Nachteil hierbei ist, dass z.B. keinerlei Schatten vorhanden sind und es somit schwierig ist, räumliche Tiefe zu erkennen. Ein Vorteil des Verfahrens ist, dass die benötigten Berechnungen sehr einfach sind und somit in Echtzeit ausgeführt werden können. Unter einem lokalen Beleuchtungsmodell hingegen versteht man ein Modell, bei dem das Licht berücksichtigt wird, welches direkt von der Lichtquelle auf den Volumendatensatz trifft. Hierbei können z.B. Schatten dargestellt werden, und der Betrachter kann eine räumliche Tiefe in der Darstellung erkennen. Der Berechnungsaufwand steigt, das Verfahren ist aber immer noch echtzeitfähig. Volumendaten haben aber die Eigenschaft, dass sie einen Teil des Lichts, welches durch sie hindurchgeht, in verschiedene Richtungen streuen. Dabei spricht man von indirektem Licht. Um sowohl das direkte als auch das indirekte Licht zu berücksichtigen, muss man eine sogenannte globale Beleuchtungssimulation durchführen. Es ist das am aufwendigsten zu berechnende Beleuchtungsmodell, führt aber zu photorealistischen und physikalisch korrekten Ergebnissen, denn eine globale Beleuchtungssimulation errechnet eine (angenähert) vollständige Lösung des in Abschnitt 4.2 vorgestellten Volumen-Rendering-Integrals (Gleichung (8)).
Personenverfolgungssysteme bestehen oft aus teurer und meist an Personen befestigter Trackinghardware, die die Bewegungsfreiheit der Personen deutlich einschränkt. Durch die in den letzten Jahrzehnten angestiegene Rechenleistung der Computersysteme ist es möglich, Bilddaten von digitalen Video-, Foto- oder Webkameras in Echtzeit auszuwerten. Dadurch erschließen sich neue Möglichkeiten, die eine Verfolgung von Personen auch ohne die störrige Trackinghardware erlauben. In dieser Arbeit soll ein System zum Verfolgen von Personen auschließlich unter Zuhilfenahme einer Videokamera und eines Computers, also ohne Marker, entwickelt werden.
Zunächst soll das Thema Non-Photorealistic Rendering vorgestellt werden, bevor auf die Theorie der implementierten Verfahren eingegangen wird. Im Vergleich zur klassischen Graphik-Pipeline wird anschließend auf die Pipeline-Stufen eingegangen, die sich bei moderner Graphikhardware programmieren lassen. Mit Cg wird eine Shader-Hochsprache präsentiert, die zur Programmierung von Graphikkarten eingesetzt wird. Danach wird die Graphikbibliothek Direct3D und das Framework DXUT vorgestellt. Vom softwaretechnischen Entwurf ausgehend, wird die Implementierung der einzelnen Verfahren des Non-Photorealistic Rendering dargestellt. Anschließend wird die Planung und Realisierung der Benutzerschnittstelle erläutert. Die erzielten Ergebnisse werden anhand von Bildschirmphotos aufgezeigt und es wird kurz auf die Darstellungsgeschwindigkeit eingegangen. Abschließend sollen sinnvolle Erweiterungen des Programms und interessante Verfahren, die nicht implementiert wurden, erläutert werden.
Ziel der Arbeit ist es, einen MP3-Player zu entwickeln, der eine Benutzerinteraktion ermöglicht, wie es gängige Computerprogramme zur Wiedergabe von Musik tun. Der Benutzer soll über eine grafische Oberfläche MP3-Dateien laden, abspielen und in Playlisten organisieren können. Ferner soll es möglich sein, Metadaten wie Titel, Autor, Genre, Veröffentlichungsjahr und vieles weitere als zusätzlichen Tag zu speichern und zu editieren. Diese Informationen soll die Software auch beim Abspielen eines Musikstückes auslesen und dem Nutzer übersichtlich anzeigen. Hier scheitern die meisten Player aufgrund ihres kleinen Displays. Außerdem soll der MP3-Player auch rudimentäre Funktionen zur Echtzeitmanipulation der Musikwiedergabe bieten. Als Hardware zum Abspielen der Musikdateien dient die Spielekonsole Nintendo DS, welche aufgrund ihrer beiden Displays genügend Anzeigemöglichkeiten für eine grafische Benutzerführung bietet. Eines der beiden Displays dient zudem als Touchscreen und kann für Eingaben verwendet werden.
Ziel der Arbeit war es, ein audiovisuelles System aufzubauen, das die Interaktion mit Bild und Ton ermöglicht und die Natur der synästhetischen Wahrnehmung nutzt. Seit der Antike beschäftigen sich Menschen mit der Frage nach dem Zusammenhang und der Verwandtschaft von Tönen und visuellen Elementen wie Farben oder geometrischen Formen. Welches Bild baut sich beim Hören von Musik mit Hilfe der synästhetischen Wahrnehmung in unserer Vorstellung auf? Ein Musikstück kann "weich" oder "kantig" klingen, ein Klang wird als "warm" oder "kühl" empfunden. Die Umkehr dieser Frage stellt die Grundlage dieser Studienarbeit dar: Welchen Klang erzeugt ein Bild?
In dieser Arbeit werden mehrere Verfahren zur Superresolution, die zwei unterschiedlichen Ansätzen zuzuordnen sind, implementiert und miteinander verglichen. IBP, ein Verfahren, welches der Tomographie ähnelt, stellt den klassischen Ansatz der Superresolution dar. Das Prinzip von IBP ist leicht verständlich und relativ einfach zu implementieren, hat aber den Nachteil, keine eindeutigen Lösungen zu produzieren, da es schwer ist, Vorwissen mit einfließen zu lassen. Bei den statistischen Verfahren erweist es sich als äußerst zeitkritisch, die Systemmatrix M vorzuberechnen. Capel und Zisserman haben beim Maximum-Likelihood-Verfahren eine starke Rauschanfälligkeit festgestellt. Der Vergleich ergibt, dass IBP in punkto Bildqualität Maßstäbe setzt, zumindest bei kaum verrauschten Eingangsbildern und guter Registrierung. Allerdings stellen viele Eingangsbilder wegen des linearen Laufzeitverhaltens ein Problem dar. Die statistischen Verfahren liefern bei stark verrauschten Eingangsbildern bessere Ergebnisse als IBP. Durch viele Eingangsbilder lassen sich diese noch weiter verbessern. Die bei vorberechneten Systemmatrizen nahezu konstante Laufzeit und ihre Robustheit bei Rauschen prädestinieren die statistischen Verfahren für solche Bildserien. Ungenau registrierte Eingangsbilder wiederum führen bei allen Verfahren zu unscharfen Ergebnissen.
Große Gebiete lassen sich auf Grund von Schattenbildung und begrenzter Scanreichweite nicht mit einem einzigen 3D-Scan aufnehmen. Um konsistente dreidimensionale Karten dieses Gebietes zu erzeugen müssen also mehrere Scans zusammengefügt werden. Soll dieses Matchen der Scans automatisch geschehen, so kann es wegen fehlerhaften Translations- und Rotationsdaten, die die unterschiedlichen Positionen der Scans beschreiben,zu inkonsistenten Karten kommen. Um dies zu vermeiden wird in dieser Arbeit ein schneller Iterativ Closest Points Algorithmus implementiert, der versucht, Fehler in diesen sechs Freiheitsgraden zu korrigieren. Das Verfahren soll im Rahmen dieser Arbeit in die schon vorhandene Software unseres Roboters eingebunden werden.
In der Bildverarbeitung werden zunehmend Algorithmen unter Verwendung von prägnanten Merkmalen implementiert. Prägnante Merkmale können sowohl für die optische Kameraposebestimmung als auch für die Kalibrierung von Stereokamerasystemen verwendet werden. Für solche Algorithmen ist die Qualität von Merkmalen in Bildern ein entscheidender Faktor. In den letzten Jahren hat sich an dieser Stelle das von D. Lowe 2004 vorgestellte SIFT-Verfahren hervorgetan. Problematisch bei der Anwendung dieses Verfahrens ist seine hohe Komplexität und der daraus resultierende hohe Rechenaufwand. Um das Verfahren zu beschleunigen, wurden bereits mehrere Implementationen veröffentlicht, die teils weiterhin ausschließlich die CPU nutzen, teils neben der CPU auch die GPU zur Berechnung bestimmter Teilbereiche des SIFT verwenden. Diese Implementationen gilt es zu hinterfragen. Ebenso ist die Qualität der Merkmale zu untersuchen, um die Verwendbarkeit von SIFT-Merkmalen für andere Bereiche der Bildverarbeitung gewährleisten zu können. Zur Visualisierung der Ergebnisse wurde eine GUI erstellt.
In dieser Arbeit wird die Implementierung des SURF-Feature-Detektors auf der GPU mit Hilfe von CUDA detailliert beschrieben und die Ergebnisse der Implementation ausgewertet. Eine Einführung in das Programmiermodell von CUDA sowie in die Funktionsweise des Hesse-Detektors des SURF-Algorithmus sind ebenfalls enthalten.
In dieser Studienarbeit wurde ein Algorithmus vorgestellt, um sich mit einem Roboter in unbekanntem Gebiet zu lokalisieren und gleichzeitig eine Karte von der Umgebung zu erstellen. Die Lokalisation des Roboters geschieht auf 2D Ebene und errechnet die (x, y, θ)T Position des Roboters zu jedem Zeitpunt t inkrementell. Der Algorithmus baut auf dem FastSLAM 2.0 Algorithmus auf und wurde abgeändert, um eine möglichst genaue Lokalisation in Gebäuden zu ermöglichen. Hierfür wurden mehrere verschieden Arten von möglichen Landmarken untersucht, verglichen und kombiniert. Schwerpunkt dieser Studienarbeit war das Einarbeiten in das Extended Kalman-Filter und die Selektion von Landmarken, die für den Einsatz in Gebäuden geeignet sind.
Der Aufbau der Studienarbeit ist wie folgt: Nach einer kurzen Einführung in das Thema des Scanmatchings wird anhand der theoretischen Basis von Icp, Idc und MbIcp der aktuelle Stand der Technik vorgestellt. Im nächsten Kapitel folgt die Beschreibung des eigenen Ansatzes. Dieser umfasst die strukturellen Aspekte der Implementation, eigeneModifikationen und die Einbindung der Verfahren in die Kartenerstellung von Robbie. Im Anschluss findet sich die Evaluation der Verfahren. Dort werden Effizienztests der wichtigsten Programmparameter durchgeführt und die Wirkungsweise des Scanmatchers im Zuge der Kartenerstellung evaluiert. In letzten Kapitel folgt dann eine Zusammenfassung der Ergebnisse mit Ausblick aufweitere Nutzungs- und Forschungsbereiche.
Wie bereitet man komplizierte, technische Sachverhalte einfach und verständlich auf, damit sie auch der normalen Benutzer ohne tiefergehendes technisches Hintergrundwissen schnell und ohne lange Einarbeitungszeit und langwierige Erklärungen zu nutzen weiß? In dieser Studenarbeit geht es um genau diese Frage - Nichtinformatikern die Vorzüge und die Arbeit mit semantischen (Such)anfragen zu erleichtern, wenn nicht sogar überhaupt erst zu ermöglichen, sowie die Neuentwicklung und SPARQL-Erweiterung Networked Graphs von Simon Schenk innerhalb der AG Staab/Universität Koblenz zu präsentieren.
Die Visualisierung von Volumendaten findet unter anderem in der Medizin, bei der Abbildung von Geodaten oder bei Simulationen ihre Anwendung. Ein effizientes Verfahren zur Darstellung von Volumendaten bietet das Raycasting, das durch die hohe Leistung von Consumerhardware hervorragende Qualität und große Flexibilität in Echtzeit ermöglicht. Beim Raycasting-Verfahren werden Strahlen durch ein Volumen verfolgt und anhand (regelmäßiger) Samples entlang des Strahles Farbund Opazitätswerte bestimmt. "Ray Textures" [Raspe et al. 2008] sind ein Konzept zur Steuerung verschiedener Strahlparameter durch das Einzeichnen beliebiger Bereiche auf einer Textur. Der bisherige Ansatz ist jedoch softwarebasiert und umfasst nur einen begrenzten Funktionsumfang. Ziel dieser Studienarbeit ist eine eigenständige Implementation eines GPU-Volumen-Raycasters und die Umsetzung des RayTexture Ansatzes komplett auf der GPU. Im Vordergrund steht dabei die Unterstützung (nahezu) beliebiger Pinselformen und -modi, das Mapping der 2D-Interaktion auf das 3D-Rendering und die Steuerung weiterer Strahlparameter in Echtzeit. Die Schwerpunkte der Studienarbeit sind im Einzelnen die Implementation eines GPUVolumen- Raycasters, die Umsetzung des Ray Texture Ansatzes komplett auf der GPU, die Vorstellung der Ergebnisse anhand mehrerer Beispielszenarien und die Dokumentation der Ergebnisse.
Computed tomography (CT) and magnetic resonance imaging (MRI) in the medical area deliver huge amounts of data, which doctors have to handle in a short time. These data can be visualised efficiently with direct volume rendering. Consequently most direct volume rendering applications on the market are specialised on medical tasks or integrated in medical visualisa- tion environments. Highly evolved applications for tasks like diagnosis or surgery simulation are available in this area. In the last years, however, another area is making increasing use of com- puted tomography. Companies like phoenix |x-ray, founded in 1999 pro- duce CT-scanners especially dedicated to industrial applications like non destructive material testing (NDT). Of course an application like NDT has different demands on the visualisation than a typical medical application. For example a typical task for non destructive testing would be to high- light air inclusions (pores) in a casting. These inclusions usually cover a very small area and are very hard to classify only based on their density value as this would also highlight the air around the casting. This thesis presents multiple approaches to improve the rendering of in- dustrial CT data, most of them based on higher dimensional transfer func- tions. Therefore the existing volume renderer application of VRVis was extended with a user interface to create such transfer functions and exist- ing render modes were adapted to profit from the new transfer functions. These approaches are especially suited to improve the visualisation of sur- faces and material boundaries as well as pores. The resulting renderings make it very easy to identify these features while preserving interactive framerates.
Globale Beleuchtung im Bildraum unter besonderer Berücksichtigung der Sichtbarkeitsbestimmung
(2009)
Die Simulation einer globalen Beleuchtung im dreidimensionalen Objektraum ist sehr rechenintensiv und hängt von der Komplexität der Szene ab. Dabei ist besonders die Berechnung der Sichtbarkeit aufwändig, also der Test, ob sich zwei Punkte in der Szene gegenseitig sehen können. Verfahren, die die globale Beleuchtung vom Objektraum in den Bildraum verlagern (Screen-Space, Image-Space), umgehen das Problem der Szenenkomplexität und haben somit einen wesentlichen Geschwindigkeitsvorteil. Auf diese Weise erzeugte Effekte sind zwar naturgemäß nicht physikalisch korrekt, da die aus Sicht der Kamera verdeckte Geometrie ignoriert wird, dennoch können sie für die menschliche Wahrnehmung überzeugend sein und realistisch wirken. Schlagworte hierfür sind "Fake-"Global-Illumination oder auch "Quasi-"Global-Illumination. Ein bekanntes Beispiel für ein bildraum-basiertes Verfahren zur Annäherung einer globalen Beleuchtung mithilfe weicher Schatten ist Screen Space Ambient Occlusion (SSAO). In dieser Studienarbeit wird untersucht, inwieweit sich die Sichtbarkeitsbestimmung im Bildraum nicht nur für nah gelegene Geometrie wie beim Ambient Occlusion, sondern in Bezug auf die gesamte Szene realisieren lässt. Aktuelle Ansätze werden dahingehend untersucht und das geeignetste Verfahrend wird als Grundlage für die Implementierung eines Testszenarios für Screen-Space Global Illumination genutzt. Das umgesetzte Verfahren wird anhand verschiedener Testszenen bewertet.
Diese Studienarbeit baut auf der Arbeit von Tim Steffens [Ste05] auf. Bei seiner Studienarbeit handelt es sich um ein System zur einfachen Präsentation handschriftlicher Lehrinhalte mittels eines Tablet PCs und eines Beamers. Im Wesentlichen wird das Beschreiben von Folien und deren gleichzeitige Projektion mit einem Overheadprojektor ersetzt. Das Programm, welches aus der Studienarbeit Tim Steffens hervorgegangen ist, enthält Mängel in der Programmierung und im Entwurf aus softwaretechnischer und -ergonomischer Sicht. Diese Mängel reichen von ungünstig gewählten Schaltflächen über ein immer langsamer werdendes System bis hin zu Abstürzen während des laufenden Betriebs. Meine Studienarbeit soll dieses System genauer analysieren, bestehende Fehler korrigieren und gleichzeitig das gesamte System nach neuen Anforderungen umgestalten.
Das Forschungsprojekt Bildanalyse zur Ornamentklassifikation hat es sich zur Aufgabe gemacht, ornamentale Strukturen in Bildern computergestützt zu lokalisieren, analysieren und klassifizieren. Grundlage des Projekts bildet eine umfangreiche Bilddatenbank, deren Abbildungen manuell vorsortiert sind. Durch Kombinationen mit Methoden der Bildverabeitung und der Verwendung von Wissensdatenbanken (Knowledge Databases) soll diese Kategorisierung weiter verfeinert werden. Sämtliche Bilder durchlaufen bis zum Prozess der Ornamentklassifikation mehrere Vorverarbeitungsschritte. Beginnend mit einem Normalisierungsprozess, bei dem das Bild u. a. entzerrt und entrauscht wird, werden im Anschluss Interessensregionen selektiert. Diese Regionen bilden die Grundlage für das spätere Lokalisieren der Ornamente. Aus ihnen werden mit unterschiedlichen Verfahren Merkmale extrahiert, die wiederum in der Datenbank gespeichert werden. In dieser Arbeit wurde ein weiteres solches Verfahren implementiert und auf seine mögliche Verwendung in dem Projekt untersucht.
Die Nutzung mehrerer Merkmalsräume führt zu einer Steigerung der Erkennungsrate. Jedoch darf die Menge der für einen Merkmalsvektor gespeicherten Daten nicht zu großrnwerden, da es sonst zu Laufzeitproblemen in der zeitkritischen Erkennungsphase kommt. Der Vergleichsaufwand steigt stark an, da aus dem zu analysierenden Bild annährend dieselbe Menge Daten generiert werden müssen und mit allen Objektdaten aus der Objektdatenbank verglichen werden müssen. Hierbei könnte ein Baumstruktur innerhalb der Objektdatenbank helfen, die mittels abstrakter Objekte in den oberen Ebenen eine Vorselektierung anhand bestimmter Merkmalsvektorwerte trifft und damit unnötige Vergleichsoperationen verhindern. Im Allgemeinen berücksichtigen die wenigsten Objekterkennungsmethoden den semantischen als auch realen Kontextes eines Objektes, welche für die menschliche Wahrnehmung eine essentielle Bedeutung hat. Dieses Merkmal könnte man neben den anderen in dieser Arbeit vorgestellten Merkmalen in einen Erkennungsalgorithmus einbringen. Solche Algorithmen, die diese Zusammenhänge verarbeiten, benötigen große semantische Netzwerke, die die Beziehung von Objekten zueinander sowie die Wahrscheinlichkeit des Vorkommens von Objekten im Umfeld von anderen Objekten abbilden. Auch hier müsste natürlich auch darauf geachtet werden das die Vergleichsoperationen nicht die nahezu echtzeitfähige Ausführung behindern.
Im Rahmen dieser Studienarbeit wurden acht verschiedene Algorithmen unterschiedlichen Umfangs und Komplexität zur Pupillenmittelpunktssuche implementiert und im Vergleich mit dem Originalalgorithmus ausgewertet. Die Berechnung des Hornhautreflektionsmittelpunkts wurde modifiziert, so dass die Helligkeitswerte der Hornhautreflektion bei der Berechnung des Schwerpunkts gewichtet werden. Bei der Auswertung wurde festgestellt, dass drei der acht Algorithmen, der Starburst-Algorithmus für hochauflösende Bilder, Daugmans Algorithmus für Aufnahmen bei sichtbarem Licht und der Average Coordinate Algorithmus von Daunys und Ramanauskas, Mängel in Zusammenhang mit dem gegebenen System aufweisen, so dass diese momentan nicht für die Mittelpunktssuche im Gazetracker geeignet sind. Die restlichen Algorithmen zeigten im grafischen Vergleich ähnlich gute Ergebnisse und wurden im Test verglichen, wobei der Algorithmus von Perez, Garcia, Mendez, Munoz, Pedraza und Sanches und der Algorithmus von Poursaberi und Araabi die besten Ergebnisse aufwiesen in Bezug auf Dichte der Punkte, Fehlerpunkte und Outlier.
Ziel dieser Studienarbeit war es, Erfahrungen in der Grafik- und Spieleprogrammierung zu sammeln. Als Grundidee kam dabei die Erstellung eines 3-dimensionalen Terrains auf. Solche Terrains werden heutzutage nicht nur in der Spielebranche eingesetzt, wo sie in beinahe jedem Genre vertreten sind, sondern auch z.B. in der Geologie zur Erstellung von Simulationen von Plattentektonik. Die simple Erstellung eines 3-dimensionalen Terrains wäre für eine Studienarbeit jedoch zu trivial, daher sollte das Terrain spezielle Anforderungen erfüllen. Zum einen sollte das Terrain dynamisch erzeugt werden, d.h. der Benutzer des Programms hat Einfluss darauf, wie sich das Terrain entwickelt. Dies sollte vorzugsweise spielerisch eingebracht werden. Zum anderen sollte das Terrain zufällig generiert werden. Dies bedeutet, dass keine vormodellierte Landschaft genutzt, sondern jede Erhebung/- Vertiefung des Terrains mittels Zufallsfaktoren erzeugt werden sollte. Zusätzlich sollte das Terrain endlos erzeugt werden. Bei einer Bewegung über das Terrain sollte also niemals ein Ende erreicht werden. Also auch keine Kreistrecke, sondern ein wirklich endloses und stets anders aussehendes Terrain. Desweiteren sollte es dem Benutzer møglich sein, ein Fluggerät über das Terrain zu steuern. Dies gab dann auch die Chance, aus der oben genannten dynamischen Anforderung ein spielerisches Element zu machen, indem der Benutzer das Terrain durch Einsammeln von sogenannten TerraformItems beeinflussen kann. Die Steuerung eines Fluggerätes spielt auch für die geforderte Endlosigkeit des Terrains eine wichtige Rolle, da diese ohne eine Möglichkeit der Fortbewegung gar nicht nachprüfbar wäre. Das Problem mit der Endlosigkeit ist dabei, dass kein System endlosen Speicher zur Verfügung hat um das Terrain komplett zu speichern und dem Benutzer somit die Option zu bieten, die gleiche Strecke zurückzufliegen. Eine Lösung für diese Problematik wäre bei einer Kehrtwende das Terrain auch rückwärts wieder neu zu generieren. Der Einfachheit halber sollte stattdessen ein komplette Kehrtwende einfach nicht zugelassen werden. Eine Kollisionserkennung musste dann natürlich auch implementiert werden. Zum einen weil das Fluggerät ja nicht einfach wie ein Geist durch das Terrain hindurchgleiten sollte, zum anderen muss das Programm ja irgendwie das Einsammeln der oben angesprochenen TerraformItem-Objekte registrieren können. Weitere Objekte wie Bäume oder Felsen sollten das Terrain optisch aufwerten. Zu guter Letzt sollte noch eine simple Benutzeroberfläche erstellt werden, um dem Benutzer diverse Bedienelemente und Rückmeldungen zu bieten. Damit sollte es z.B. auch möglich sein dass Terrain direkt zu verändern.
Erweiterung der Spielegraphik von Cam2Dance durch den Einsatz von Shadern und komplexen Modellen
(2006)
Ziel dieser Arbeit ist die erweiterte Modellierung des Rettungsroboters "Robbie" in der USARSim Simulationsumbegung. Es soll zusätzlich zu den bestehenden Sonarsensoren und dem Laserscanner, ein Wärmesensor angebunden werden, der Wärmebilder an die entsprechenden Robbie-Module liefert. Der bisherige 2D Laserscanner ist so zu modifizieren, dass er 3D Laserdaten erzeugt und an die Robbie-Software weiterleitet. Um die Simulation möglichst Wirklichkeitsgetreu zu gestalten, sind realitätsnahe, verrauschte Daten zu erzeugen. Ferner soll die Effizienz der Simulation getestet werden. Dazu ist mittels einer Evaluation zu untersuchen, wie das Verhalten des simulierten Roboters, im Bezug zum realen Verhalten des Roboters steht. Ein weiteres, größeres Problem stellt die Bereitstellung von Stereobildern aus der Simulationsumgebung dar. Ein spezieller Kameraserver soll installiert und in Betrieb genommen werden. Die Umwandlung der so erzeugten Bilder, in ein geeignetes Format, und deren Weiterleitung an die Robbie-GUI, ist ebenfalls zu implementieren.
Ziel dieser Studienarbeit ist es, eine physikalisch korrekte Billardsimulation zu entwickeln. Priorität liegt hier in der Entwicklung einer Physik-Engine, damit das Spielgefühl eines echten Billardspiels möglichst realistisch auf den Bildschirm übertragen werden kann. Hierzu gehören u.a. die Wechselwirkungen der sich bewegenden Kugeln untereinander sowie die Umsetzung von Effet (das dezentrale Anspielen der Kugel, um die Laufrichtung zu beeinflussen). Des weiteren wird eine möglichst intuitive Steuerung implementiert, die sowohl eine Rotierung um den Tisch bzw. um eine Kugel als auch einfaches Zoomen, die Festlegung des Anspielpunktes auf der weißen Kugel, den Neigungswinkel des Queues und eine Regulierung der Stoßkraft ermöglicht. Außerdem wird eine möglichst maßstabsgetreue Modellierung eines Billardtisches, des Queues und der Kugeln sowie eine passende Texturierung benötigt. Bei den verschiedenen Kollisionen (Queue - Kugel, Kugel - Kugel, Kugel - Bande, einlochen) sollen außerdem passende Soundeffekte eingebaut werden. Das Spiel soll neben einem einfachen Trainingsmodus auch die verschiedenen Spielarten des klassischen Pool-Billards unterstützen, also selbstständig Punkte zählen, Fouls berücksichtigen, Spielerwechsel ankündigen und schließlich auch den Sieger bekannt geben.