Filtern
Dokumenttyp
- Bachelorarbeit (68) (entfernen)
Volltext vorhanden
- ja (68) (entfernen)
Schlagworte
- Android <Systemplattform> (3)
- Routing (3)
- Akkreditierung (2)
- E-Government (2)
- Enterprise 2.0 (2)
- Smartphone (2)
- 3D-Kartierung (1)
- API (1)
- Ad-Hoc Routing (1)
- Agenten (1)
Institut
- Fachbereich 4 (68) (entfernen)
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 Erkennung von Bewegungen mit einem Smartphone ist durch die internen Sensoren, mit denen es ausgestattet ist, ohne externe Sensoren möglich. Zunächst werden vergangene Untersuchungen und deren Verfahrensweise betrachtet. Von diesen Untersuchungen wird die hier verwendete Umsetzung der Bewegungserkennung abgeleitet und beschrieben. Ein Großteil der Literatur verwendet ausschließlich den Beschleunigungssensor für die Bewegungserkennung. Diese Bachelorarbeit untersucht dazu den Nutzen weiterer Sensoren, wie z.B. das magnetische Feld, die lineare Beschleunigung oder das Gyroskop. Die Bewegungserkennung erfolgt durch maschinelles Lernen mit Klassifizierungsalgorithmen. Es werden Decision Tree, Naive Bayes und Support Vector Machines verwendet. Zunächst werden die benötigten Sensordaten mit Hilfe einer eigens entwickelten Applikation von Testpersonen gesammelt und gespeichert. Diese Daten werden als Trainingsdaten für die Klassifizierungsalgorithmen benötigt.
Das Ergebnis ist ein Modell, das die Struktur der gelernten Daten enthält. Validiert werden die Modelle mit Testdatensätzen, die sich von den Trainingsdatensätzen unterscheiden. Die Ergebnisse bestätigen vergangene Untersuchungen, dass die Daten des Beschleunigungssensors ausreichend sind, um Bewegungen sehr genau erkennen zu können. Orientierung, Gyroskop und die lineare Beschleunigung hingegen sind nur bedingt für die Bewegungserkennung einsetzbar. Außerdem scheint für eine geringe Anzahl an Testdaten der Decision Tree am besten geeignet zu sein, wenn Bewegungen von Benutzern erkannt werden sollen, von denen keine Trainingsdaten bei der Erstellung des Modells vorhanden sind.
Das Ziel der Bachelor-Arbeit ist es, einen existierenden sechsbeinigen Kleinroboter zu programmieren, der dann in der Lage sein soll, seine Umgebung autonom zu explorieren und eine Karte selbiger zu erstellen. Zur Umgebungswahrnehmung soll ein Laserscanner integriert werden. Die Erstellung der Karte sowie die Selbstlokalisation des Roboters erfolgt durch Anbindung des Sensors an ein geeignetes SLAM (Simultaneous Localization and Mapping) Verfahren. Die Karte soll die Grundlage für die Pfadplanung und Hindernisvermeidung des Roboters bilden, die ebenfalls im Rahmen dieser Arbeit entwickelt werden sollen. Dazu werden sowohl GMapping als auch Hector Mapping verwendet und getestet.
In der Arbeit wird zudem ein xplorationsalgorithmus beschrieben, mit welchem der Roboter seine Umgebung erkunden kann. Die Umsetzung auf dem Roboter erfolgt innerhalb des ROS (Robot Operating System) Frameworks auf einem "Raspberry Pi" Miniatur-PC.
Zur Erkennung vorhandener Usability-Probleme führen Usability-Experten Nutzerstudien durch. Eine etablierte Methode ist das Aufzeichnen von Blickverhalten
mit einem Eye-Tracker. Diese Studien erfordern allerdings einen hohen Aufwand für die Auswertung der Ergebnisse. Eine automatisierte Erkennung von guter und schlechter Usability in aufgezeichneten Nutzerdaten kann den Usability-Experten bei der Eye-Tracking-Auswertung unterstützen und den Aufwand reduzieren. Das Ziel der vorliegenden Arbeit ist die Identifizierung geeigneter Eye-Tracking-Metriken, die mit der Qualität der Usability korrelieren. Dazu wird die Forschungsfrage beantwortet:
Welche Eye-Tracking-Metriken korrelieren mit der Qualität der Bedienung eines Web-Formulars? Zur Beantwortung wurde eine quantitative A/B- Nutzerstudie mit Eye-Tracking durchgeführt und das Blickverhalten von 30 Probanden während der Bearbeitung eines Web Formulars aufgezeichnet.
Das Web-Formular wurde so gestaltet, dass jede Web-Formularseite als gute und schlechte Variante nach bekannten Usability-Richtlinien vorlag. Die Ergebnisse bestätigen einen signifikanten Zusammenhang der Eye-Tracking-Metrik "Anzahl der Besuche einer AOI" mit der Qualität der Bedienung eines Web-Formulars. Die Eye-Tracking-Metriken "Anzahl der Fixationen innerhalb einer AOI" und "Dauer der Fixationen innerhalb einer AOI" korrelieren ebenfalls mit der Qualität der Usability. Für die "Zeit der ersten Fixation innerhalb einer AOI" konnte keine Korrelation bestätigt werden.
Augmented Reality erfreut sich wachsender Beliebtheit. Zusatzinformationen in HMDs, Windschutzscheiben oder im Kamerabild des Smartphones oder Tablets sind hier die nennenswertesten Anwendungsfälle. Um eine Einblendung korrekt anzuzeigen, ist es notwendig die Position und Orientierung (Pose) der Kamera im Raum zu erfassen. Dies geschieht zurzeit hauptsächlich unter Zuhilfenahme von Markern. Dabei werden vordefinierte Marker im Raum positioniert und das System angelernt, wie es diese zu interpretieren hat. Der nächste Schritt ist es ohne Marker auszukommen. Hierbei wird von dem markerlosen Tracking gesprochen. Anstelle von künstlichen Markern werden natürliche Objekte der realen Umgebung als Referenzpunkte genutzt, um die Kamerapose zu bestimmen. Dadurch lässt sich dieses Verfahren flexibel und dynamisch einsetzen. Es wird zwar auf die Zuhilfenahme von Markern verzichtet, aber ein größeres Vorwissen über die Szenerie ist notwendig. Dies wird über technische Maßnahmen realisiert und/oder durch Interaktion des Benutzers. Beides ist nicht komfortabel oder effizient in der Verwendung eines solchen Systems und ist ein Grund dafür, warum markerloses 3D-Tracking nach wie vor ein Forschungsbereich ist.
An diesem Punkt setzt diese Arbeit an. Es wird ein Ansatz vorgeschlagen, der lediglich eine Menge von 2D-Feature und eine Menge von 3D-Feature eines Objekts benötigt, um die initiale Pose zu finden. Es sind keine weiteren technischen Hilfen notwendig und auch auf die Interaktion mit dem Benutzer wird verzichtet. Die 2D-Feature, wie auch die 3D-Feature, können auf beliebige Art gewonnen werden.
Die Idee ist es, diese zwei Mengen mit sechs Korrespondenzen zu verbinden. Anhand dieser Korrespondenzen kann eine Pose geschätzt werden. Mit der erhaltenen Pose kann jedes 3D-Feature auf Bildkoordinaten abgebildet werden, wodurch sich die geschätzte Pose bewerten lässt. Dabei wird der Abstand zwischen abgebildetem 3D-Feature und seinem zugehörigen 2D-Feature gemessen. Jede Korrespondenz wird so bewertet und die Ergebnisse aufsummiert. Je niedriger die Summe, desto besser ist die Pose. Es hat sich gezeigt, dass ein Wert von zehn Pixeln bereits ausreichend ist, um eine Pose als richtig zu bewerten.
Da es sehr viele Möglichkeiten gibt, diese sechs Korrespondenzen zwischen beiden Mengen aufzubauen, muss dieses Verfahren optimiert werden. Dies geschieht mit einem genetischen Algorithmus. In dem Testszenario arbeitet das fertige System sehr zuverlässig. Es wird eine Trefferquote von ca. 90%, bei einer Laufzeit von ungefähr zwölf Minuten, erreicht. Ohne Optimierung kann das Finden der initialen Pose schnell mehrere Jahre dauern.
Ein Kinect-Sensor verfügt über die Fähigkeit, gleichzeitig Farb- und Tiefenbilder aufzunehmen. In dieser Bachelorarbeit wird versucht, das Tiefenbild zu nutzen, um Beleuchtungsinformationen und Materialeigenschaften im Farbbild zu manipulieren. Die vorgestellten Verfahren zur Beleuchtungs- und Materialmanipulation benötigen eine Lichtsimulation der Lichtverhältnisse zum Zeitpunkt der Aufnahme und übertragen dann Informationen aus einer neuen Lichtsimulation direkt zurück in das Farbbild. Da die Simulationen auf einem dreidimensionalen Modell durchgeführt werden, wird nach einem Weg gesucht, ein solches aus einem einzigen Tiefenbild zu erzeugen. Dabei wird auf Probleme der Tiefendatenerfassung des Kinect-Sensors eingegangen. Es wird ein Editor entwickelt, mit dem Beleuchtungsund Materialmanipulationen möglich gemacht werden sollen. Zum Erzeugen einer Lichtsimulation werden einfache, echtzeitfähige Renderingverfahren und Beleuchtungsmodelle vorgestellt. Mit ihnen werden neue Beleuchtungssituationen, Schatten und Spiegelungen in das Farbbild eingefügt. Einfache Umgebungen mit definierten Lichtverhältnissen werden in Experimenten manipuliert, um Grenzen und Möglichkeiten des Sensors und der verwendeten Verfahren aufzuzeigen.
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.