Studienarbeit
Filtern
Dokumenttyp
- Studienarbeit (74) (entfernen)
Sprache
- Deutsch (74) (entfernen)
Schlagworte
- Robotik (8)
- Bildverarbeitung (5)
- Computergraphik (4)
- Augmented Reality (3)
- Augenbewegung (2)
- Autonomes Robotersystem (2)
- Computer (2)
- Computersimulation (2)
- Computerspiel (2)
- GLSL (2)
Institut
- Institut für Computervisualistik (74) (entfernen)
Der Hokuyo URG-04LX Laserscanner wird auf der mobilen Roboterplattform "Robbie" der Arbeitsgruppe Aktives Sehen zur Kartenerstellung und Kollisionsvermeidung eingesetzt. Die Navigation auf Grundlage der 2D-Scans wird den gewachsenen Anforderungen der Rescue-Arenen nicht mehr gerecht. Eine Verwendung von kommerziellen 3D-Laserscannern kommt wegen der hohen Anschaffungskosten nicht in Frage. Idee: Einsatz von mehreren günstigen 2D-Laserscannern mit unterschiedlichen Blickwinkeln oder aber die aktive Veränderung der Scanebene. Das Variieren der Scanebene erfolgt durch Schwenken oder Drehen des Laserscanners. Die Orientierung des Laserscanners im Raum liefert die dritte Dimension. Im Rahmen dieser Arbeit soll eine Plattform entwickelt werden, die es durch rotative Lagerung des Laserscanners ermöglicht, 3D-Laserscans der Umgebung zu erzeugen. Hierbei soll ein möglichst einfacher Aufbau erreicht werden, der es weiterhin ermöglicht, den Laserscanner zur Erzeugung von 2D-Karten zu benutzen. Um das Stereokamerasystem des Roboters nicht zu beeinträchtigen, wird zusätzlich ein sehr kompakter Aufbau angestrebt.
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.
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.
Im Rahmen der Glaukomdiagnostik sind Größe und Position des Sehnervkopfes wichtige Parameter zur Klassifikation des Auges. Das Finden und exakte Markieren der Papille ist ein subjektiver Vorgang und kann von Arzt zu Arzt stark variieren. Ziel der Arbeit ist die Entwicklung eines automatischen Verfahrens zur Detektion der Papille. Zunächst wird der medizinische Hintergrund erläutert (Aufbau des Auges, Glaukom) und das bildgebende Verfahren, der Heidelberg Retina Tomograph, dargestellt. Nach einer Diskussion bisheriger Ansätze zur Detektion der Papille wird ein eigenes Verfahren entwickelt und detailliert beschrieben. Für bei der Implementation aufgetretene Probleme werden Ansätze zur Optimierung vorgeschlagen.
Die Diffusions-Tensor-Bildgebung (DTI) ist eine Technik aus der Magnet-Resonanz-Bildgebung (MRI) und basiert auf der Brownschen Molekularbewegung (Diffusion) der Wassermoleküle im menschlichen Gewebe. Speziell im inhomogenen Hirngewebe ist die Beweglichkeit der Moleküle stark eingeschränkt. Hier hindern die Zellmembranen der langgestreckten Axone die Diffusion entlang nicht-paralleler Richtungen. Besonderen Wert hat die Diffusions-Tensor-Bildgebung in der Neurochirugie bei der Intervention und Planung von Operationen. Basierend auf den mehrdimensionalen DTI-Tensor-Datensätzen kann für den jeweiligen Voxel das Diffsusionsverhalten abgeleitet werden. Der größte Eigenvektor des Tensors bestimmt dabei die Hauptrichtung der Diffusion und somit die Orientierung der entsprechenden Nervenfasern. Ziel der Studienarbeit ist die Erstellung einer Beispielapplikation zur Visualisierung von DTI-Daten mit Hilfe der Grafikhardware. Dazu werden zunächst die relevanten Informationen für die Erzeugung von geometrischen Repräsentationen (Streamlines, Tubes, Glyphen, Cluster...) aus den Eingabedaten berechnet. Für die interaktive Visualisierung sollen die Möglichkeiten moderner Grafikhardware, insbesondere Geometryshader ausgenutzt werden. Die erzeugten Repräsentationen sollen nach Möglichkeit in ein DVR (Cascada) integriert werden. Für die Arbeit wird eine eigene Applikation entwickelt, die bestehende Bausteine (Volumenrepräsentation, Volumenrendering, Shadersystem) aus Cascada analysiert und integriert.
Das performante Rendering großer Volumendaten stellt trotz stetig gestiegener Prozessorleistungen nach wie vor hohe Anforderungen an jedes zugrunde liegende Visualisierungssystem. Insbesondere trifft dies auf direkte Rendering-Methoden mithilfe des Raycasting-Verfahrens zu, welches zum einen eine sehr hohe Qualität und Genauigkeit der generierten Bilder bietet, zum anderen aber aufgrund der dafür nötigen hohen Abtastrate relativ langsam ist. In dieser Studienarbeit wird ein Verfahren zur Beschleunigung des Raycasting- Visualierungsansatzes vorgestellt, das auf adaptivem Sampling beruht. Dabei werden statische Volumendaten zunächst in einem Vorverarbeitungsschritt einer Gradientenanalyse unterzogen, um so ein Interessensvolumen zu erstellen, das wichtige und weniger wichtige Bereiche kennzeichnet. Dieses Volumen wird anschließend von einem Raycaster genutzt, um adaptiv für jeden Abtaststrahl die Schrittweite zu bestimmen.
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.