Bachelorarbeit
Filtern
Erscheinungsjahr
- 2011 (17) (entfernen)
Dokumenttyp
- Bachelorarbeit (17) (entfernen)
Schlagworte
- 3D-Kartierung (1)
- API (1)
- Agenten (1)
- Agents (1)
- Android <Systemplattform> (1)
- Annotation (1)
- Autonomes Fahrzeug (1)
- Bebauungsdichte (1)
- Betriebssystem (1)
- Bewegungsablauf (1)
Institut
- Fachbereich 4 (16)
- Institut für Informatik (1)
Haushaltsroboter gewinnen in heutiger Zeit immer mehr an Bedeutung. Sie finden ihren Einsatz zum Beispiel beim Reinigen von Böden, beim Mähen des Rasens oder helfen bei der Überwachung in Gebäuden oder Außenanlagen. Der Mehrheit dieser Roboter fehlt allerdings etwas Entscheidendes, nämlich ein Gesicht.
In dieser Arbeit wird die Entwicklung eines virtuellen, austauschbaren Gesichtes festgehalten, das speziell für den Roboter Lisa der Arbeitsgruppe "Aktives Sehen" der Universität Koblenz entwickelt wurde. Psychologische Studien nach Krach u. a. (2008) haben hierzu gezeigt, dass die Ausstattung solcher Roboter mit Gesichtern die Aufmerksamkeit der Benuzter stärker bindet und ihnen zugleich mehr Intelligenz zugetraut wird.
Computergesichter oder auch Talkingheads finden ihren Einsatz nicht nur bei Robotern, sondern auch in Videospielen oder Animationsfilmen. Allerdings wird in diesen Bereichen die Bewegung und Mimik des Gesichtes meistens per Hand erstellt, was einen festen Bewegungsablauf liefert. Interessanter ist hier der Einsatz in barrierefreien Anwendungen. In diesem Bereich werden aus einem eingehenden Audiosignal die Phoneme extrahiert und den entsprechenden Visemen zugeordnet. Im Rahmen der vorliegenden Arbeit wird dieser Vorgang mit Hilfe des Text-to-Speech-Synthesizer Festival erzielt, wodurch sich die Bewegung der Lippen entsprechend des gegebenen Textes dynamisch verändert.
Aber nicht nur die korrekte Bewegung der Lippen spielt eine wichtige Rolle, sondern auch die Emotionen. Mit Hilfe einer bestimmten Emoticon-Arithmetik, die dem zu synthetisierenden Text beigefügt wird, ist die Visualisierung der Emotionen möglich.
Die RoboCup Rescue Liga wurde mit dem Ziel eines internationalen Austauschs zur Entwicklung von Rettungsrobotern gegründet. In Katastrophenregionen sollen diese Roboter verschüttete Opfer orten, deren gesundheitliche Verfassung erkennen und diese Informationen rechtzeitig an Rettungskräfte weitergeben.
An der Universität Koblenz wird seit mehreren Jahren der Rettungsroboter Robbie entwickelt. Über die gezielte Ansteuerung von Sensoren kann er Informationen über seine Umgebung sammeln und mit Hilfe dieser Informationen autonom in unbekannten Regionen agieren. Dafür erstellt Robbie eine 2D-Karte seiner Umgebung, um anhand dieser Karte navigieren und sich selbst lokalisieren zu können. Diese Karte stößt allerdings bei der Navigation über unebenes Gelände (wie z.B. Geröllhaufen) und spätestens in mehrschichtigen Katastrophengebieten auf ihre Grenzen, weswegen eine 3D-Kartierung benötigt wird.
Anhand des RoboCup Rescue Szenarios wird im Rahmen dieser Bachelorarbeit ein 3D-Kartierungsalgorithmus implementiert und hierfür die Probleme der 2D- und 3D-Kartierung ausführlich untersucht.
Diese Bachelorarbeit beschäftigt sich im Wesentlichen mit dem Entwurf und der Implementierung einer Manöverdatenstruktur für Car-like Robots. Diese Datenstruktur soll die Planung von fahrbaren Wegen mit kontinuierlicher Lenkwinkeländerung ermöglichen. Dabei stehen entsprechende Kurvenmanöver, die aus zwei Klothoiden und einem Kreisbogen bestehen, im Vordergrund.
Zudem liegt ein Schwerpunkt auf der Entwicklung eines Konzepts zur Berechnung einer Hülle für entsprechende Manöver. Diese Hülle umschließt die Fläche, die das Fahrzeug bei der Ausführung eines Manövers einnimmt. Die Hülle ermöglicht es, beim koordinierten Fahren mit mehreren Fahrzeugen Kollisionsfreiheit zu garantieren. Auf der Manöverdatenstruktur aufbauend wird im Rahmen dieser Bachelorarbeit zudem ein Planungsmodul entworfen und implementiert, das zu vorgegebenen groben Wegen fahrbare, aus Manövern zusammengesetzte Wege erzeugt.
Diese Arbeit untersucht an einem realistischen Szenario den Ansatz der bildbasierten Integration von Software hinsichtlich seiner Praktizierbarkeit. Als praktische Aufgabe wird die Entwicklung eines Expertensystems für Online- Poker-Plattformen durchgeführt. Die wichtigsten, zu untersuchenden Aspekte sind der Aufwand der Implementierung, die Performance und die Qualität dieses Ansatzes.
Die Arbeit beschäftigt sich mit der für Router und Kleingeräte entwickelten Linux-Distribution OpenWrt. Im ersten Teil der Arbeit wird die Erstellung von Softwarepaketen für OpenWrt erläutert und eine Anzeige- und Konfigurationskomponente für die Dateien des Quagga RIP-Daemons für die Benutzeroberfläche LuCI erstellt. Im zweiten Teil wird der Aufbau eines Testnetzwerkes mit OpenWrt Routern dokumentiert, sowie die Anbindung an VNUML-virtualisierte Netzwerke.
Durch das fehlerhafte Vergabemanagement und das ständige Wachstum an internetfähigen Geräten sind die IPv4-Adressen ausgeschöpft. Aus diesem Grund und den neuen Anforderungen, die an die Technik des Internets gestellt werden, ist das IPv6-Protokoll entwickelt worden. Dieses bietet einen vielfach größeren Adressraum und wird das IPv4-Protokoll nach und nach ersetzen. Jedoch müssen für das neue Internetprotokoll die Routing-Protokolle angepasst werden. In dieser Ausarbeitung wird das dynamische Routing-Protokoll RIPng aus der Familie der Inter-Gateway-Protokolle (IGP) analysiert. Mithilfe dieses Protokolls tauschen die Router innerhalb eines Netzwerkes untereinander Informationen über ihre Verbindungen aus. Des Weiteren werden die Grundlagen des IPv6-Protokolls, der verwendeten Protokoll-Algorithmen und des RIPv2-Protokolls erläutert. Im praktischen Teil der Ausarbeitung werden Eigenschaften von RIPng sowie das Counting-to-Infinity-Problem genauer betrachtet.
Im Vergleich zu herkömmlicher Computergrafik (perspektivische Projektion) bietet Raytracing entscheidende Vorteile, die hauptsächlich in der vergleichsweise hohen physikalischen Korrektheit der Methode begründet sind. Die Schwächen liegen hingegen im immensen Rechenaufwand.
Ein Raytracer ist vergleichsweise so rechenintensiv, weil für jeden Pixel mindestens ein Strahl verschickt werden muss. Dieser muss gegen alle Objekte im Raum geschnitten werden. Hinzu kommen noch die Strahlen, die entstehen, wenn Strahlen an Objekten reflektiert werden (Rekursion). Um diesen Rechenaufwand zu verkleinern und zusätzlich ein besseres Bild zu erzeugen, soll der adaptive Sampler den Raytracer unterstützen. Der adaptive Sampler soll während des Rendervorgangs den progressiven Fortschritt in der Bildgenerierung beobachten und Pixel von der weiteren Berechnung ausschließen, für die sich ein zusätzliches Verschießen von Strahlen nicht mehr lohnt.
Anders als der rein progressive Raytracer hört der adaptive Sampler mit dem Konvergieren des Bildes auf zu rechnen. Der adaptive Sampler soll so dafür sorgen, dass schneller ein besseres Bild erzeugt wird und somit die Performanz gesteigert wird. Insgesamt erwartet man sich vom adaptiven Sampler Vorteile bei der Berechnung von bestimmten Szenen. Unter anderem eine Verbesserung bei Szenen mit rein diffus beleuchteten Bildbereichen, sowie eine Verbesserung bei Szenen mit unterschiedlich rechenintensiven Bildbereichen. Ein normaler Raytracer kann nicht beurteilen, wie sinnvoll seine Schüsse sind. Er kann nur mehr Strahlen verschießen, in der Hoffnung, das Bild damit effektiv zu verbessern.
Es gibt jedoch viele Szenarien, bei denen eine linear steigende Schussanzahl pro Pixel keine gleichmäßige Verbesserung im Bild erzeugt. Das bedeutet, dass Bereiche im Bild schon gut aussehen, während andere noch sehr verrauscht sind. Man möchte nun Bildbereiche, die bereits konvergiert sind, in denen sich ein weiterer Beschuss also nicht mehr bemerkbar macht, ausschließen und die Rechenleistung dort nutzen, wo man sie noch braucht.
Wichtig dabei ist, dass Pixel nicht ungewollt zu früh von der Berechnung ausgeschlossen werden, die nicht weit genug konvergiert sind. Der adaptive Sampler soll so lange arbeiten, bis jeder Pixel dauerhaft keine Änderungen mehr vorweist. Das bedeutet, dass die Wahrscheinlichkeit für eine signifikante Farbänderung eines Pixels durch Verschießen eines Strahls (bei mehreren Lichtquellen in RenderGin mehrere Strahlen pro Pixel) klein genug ist. Es wird zwar intern keine Wahrscheinlichkeit berechnet, jedoch bekommt der Raytracer eine Art Gedächtnis: Er speichert die Veränderungen im beleuchteten Bild und deren Verlauf in eigenen Gedächtnisbildern. Das "Gedächtnis" für das alte Bild (Zustand des Bildes in der letzten Iteration über die Pixel) repräsentiert dabei das Kurzzeitgedächtnis. Es ist absolut genau. Das Langzeitgedächtnis wird von drei verschiedenen Bildern repräsentiert. Das erste gibt die Anzahl der verschossenen Strahlen pro Pixel an. Das zweite ist ein Wahrheitswertebild, das für jeden Pixel angibt, ob dieser noch in die Berechnung einbezogen werden soll. Das dritte Bild gibt an, wie oft jeder Pixel eine Farbänderung vollzogen hat, die geringer ist als der geforderte Maximalabstand eines Pixels zu sich selbst (vor und nach dem Verschießen eines weiteren Strahls).
Mit diesen drei Bildern ist es möglich, zusätzliche quantitative Informationen zu den qualitativen Informationen des Vergleichs vom neuen und alten Bild zu berücksichtigen.
In dieser Arbeit kläre ich die Frage, ob die gewünschten Effekte eintreten und ob bei Integration in die bestehende Struktur von RenderGin ein Performanzgewinn möglich ist. Die Umsetzung eines adaptiven Samplers ist als Plug-In in der Software RenderGin von Numenus GmbH geschehen. RenderGin ist ein echtzeitfähiger, progressiver Raytracer, der sich durch seine Performanz auszeichnet. Die Bildgenerierung geschieht allein auf der CPU, die Grafikkarte wird lediglich zur Anzeige des erzeugten Bildes benötigt.
Die Umsetzung und Programmierung des Plug-Ins ist in Microsoft Visual Studio 2010 geschehen unter Verwendung des RenderGin SDK der Numenus GmbH.