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)
- GPU (2)
- Gaze Tracker (2)
- Graphikprozessor (2)
- Interaktion (2)
- Mustererkennung (2)
- Programmierung (2)
- Rettungsroboter (2)
- Software (2)
- Stereosehen (2)
- Visualisierung (2)
- Webcam (2)
- Wiki (2)
- 3-D-Laserscannen (1)
- 3-D-Scanning (1)
- 3D-Darstellung (1)
- 3D-Videospiel (1)
- AMIRE (1)
- ARToolkit (1)
- ARToolkitPlus (1)
- Adaptive Abtastung (1)
- Algorithmus (1)
- Austausch (1)
- Auszeichnungssprache (1)
- Automatische Klassifikation (1)
- Autonome Exploration (1)
- Autonome Robotik (1)
- Autonomous Exploration (1)
- Balancetheorie (1)
- Bild (1)
- BildKlang (1)
- Bildaufloesung (1)
- Bildauflösung (1)
- Bildregistrierung (1)
- Billard (1)
- Blinder Fleck (1)
- CB2 (1)
- Cascada (1)
- Cg (1)
- Color Structure Code (1)
- ColorSym (1)
- Computeranimation (1)
- Computergrafik (1)
- Computertomografie (1)
- CosiMail (1)
- DCMTK (1)
- DICOM (1)
- DTI (1)
- Datenstruktur (1)
- Dynamische Programmierung (1)
- E-Mail (1)
- Echtzeit Anwendung (1)
- Echtzeitanimationssystem (1)
- Erweiterte Realität (1)
- Explorationstransformation (1)
- Exporation Transform (1)
- Extension (1)
- Eye-Tracking (1)
- Farbsymmetrie (1)
- FastSLAM Algorithmus (1)
- Fedora (1)
- Feuer (1)
- Fire (1)
- Fluid Simulation (1)
- Fluid dynamics (1)
- Foils <Programm> (1)
- Fragmentshader (1)
- GPGPU (1)
- GPU - Raycasting (1)
- GPU Programmierung (1)
- GPU basiert (1)
- GPU-Programmierung (1)
- Gaze-Tracking (1)
- Geländemodell (1)
- Geometrie-Shader (1)
- Geometryshader (1)
- Glaukom (1)
- Globale Beleuchtung (1)
- Gradientenanalyse (1)
- Grafikprozessor (1)
- Graphpipes (1)
- HDR-Bild (1)
- Headerdaten Netzwerkpaket SOCK_RAW SOCK_PACKET (1)
- Heidelberg Retina Tomograph (1)
- High dynamic Range (1)
- ICP-Algorithmus (1)
- Information-Retrieval (1)
- Iterative Closest Points (1)
- Iterative Dual Correspondences (1)
- Kartographie (1)
- Klassifikationsframework (1)
- Laserscanner (1)
- Lokalisierung (1)
- MP3 Player (1)
- Matching-Verfahren (1)
- Maya (1)
- Medizinische Visualisierung (1)
- Metric based Icp (1)
- Mind Maps (1)
- Mobile Roboter (1)
- Mobile Robots (1)
- Mobiler Roboter (1)
- Modulare Softwarearchitektur (1)
- Modulares Softwaresystem (1)
- Musteranalyse (1)
- Navier"Stokes equations (1)
- Navier-Stokes-Gleichungen (1)
- Networked Graphs (1)
- Netzwerkschicht (1)
- Nicht-photorealistisches Rendering (1)
- Nintendo DS (1)
- OGRE (1)
- Oberflächenentwurf (1)
- Oberflächengestaltung (1)
- Objekterkennung (1)
- Objektverfolgung (1)
- Open Source 3D Graphics Engine (1)
- OpenGL (1)
- Ornamentik (1)
- Ornamentklassifikation (1)
- PBRT (1)
- Packet Header SOCK_RAW SOCK_PACKET (1)
- Partikelsimulation (1)
- Partikelsystem (1)
- Path transformation (1)
- Personentracking (1)
- Personenverfolgungssystem (1)
- Pfadtransformation (1)
- Phantom Omni (1)
- Physik (1)
- Physikengine (1)
- Potenzialfeld (1)
- Primus (1)
- Qt/C++ (1)
- Radiosity (1)
- Ray casting (1)
- Real-time computing (1)
- Reengineering (1)
- Registrierung <Bildverarbeitung> (1)
- Relativitätstheorie (1)
- Rescue League (1)
- Rescue Robots (1)
- Riss (1)
- Rissmusteranalyse (1)
- RoboCup Rescue (1)
- Roboter (1)
- Robotersystem (1)
- SIFT-Verfahren (1)
- SPARQL (1)
- Sand (1)
- Scanmatching (1)
- Semantic Desktop (1)
- Semantic Web (1)
- Semantik (1)
- Shader (1)
- Shaderhochsprache (1)
- Skript (1)
- Skript <Programm> (1)
- Socket (1)
- Socket-Schnittstelle (1)
- Software Engineering (1)
- Spiel (1)
- Spielkonsole (1)
- Stereografie (1)
- Stereoskopie (1)
- Szeneneditor (1)
- Tageslichtprojektor (1)
- Tanzspiel (1)
- Thunderbird <Programm> (1)
- Tiefenbild (1)
- Tiefenkarte (1)
- Ton (1)
- Tone Mapping (1)
- Tonemapping (1)
- Tonemapping-Verfahren (1)
- Transform Feedback (1)
- Transportschicht (1)
- USARSim (1)
- Verbindungsschicht (1)
- Video (1)
- Video-Installation (1)
- Videospielentwicklung (1)
- Visualisierungstechniken (1)
- Visuelle Installation (1)
- Volume Rendering (1)
- Volumen-Rendering (1)
- Volumendaten (1)
- Volumenrendering (1)
- Volumenvisualisierung (1)
- Weiterentwicklung (1)
- Wii-Balance Board (1)
- Wiimote (1)
- X-Cosim (1)
- XML (1)
- depth map (1)
- disparity map (1)
- dreidimensionale Computergraphik (1)
- dynamic programming (1)
- engine (1)
- game (1)
- geometry shader (1)
- image processing (1)
- interactive (1)
- interaktiv (1)
- medizinische Bilddaten (1)
- physics (1)
- relativity (1)
- stereo vision (1)
- transform feedback (1)
- visualization (1)
Institut
- Institut für Computervisualistik (74) (entfernen)
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.