Schriftliche Ausarbeitung herunterladen
Schriftliche Ausarbeitung herunterladen
Schriftliche Ausarbeitung herunterladen
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
4.5. AKTUALISIERUNG DES 3D-MODELLS 51<br />
me die cvCompareHist() Funktion zur Verfügung. Über diese wird das berechnete Histogram mit den in<br />
der Modellbeschreibung gespeicherten Histogrammwerten des zu suchenden Objektes verglichen.<br />
Waren beide Farbtests erfolgreich, wird zuletzt der Unterschied zwischen gefundener Region und dem<br />
Form-Muster der Beschreibung berechnet. Der ObjektDetector setzt hierfür die ebenfalls in der OpenCV<br />
Bibliothek enthaltene cvMatchShapes() Funktion ein. Das Ergebnis dieses Aufrufs gibt den Unterschied<br />
der verglichenen Form zurück.<br />
Wird das gesuchte Objekt in der gefüllten Region wiedererkannt, speichert der ObjektDetector die räumlichen<br />
Koordinaten (x,y,z) des Mittelpunktes der gefundenen Region und ruft die Fülloperation für einen<br />
weiteren Startpunkt im Bild auf. Auf diese Weise können alle in der Objektbeschreibung vorhandenen<br />
Objekte gesucht und gefunden werden. Über die in Gleichung 3.10 entwickelte Positionsbestimmung<br />
der Objekte im Raum ist eine Aktualisierung der Objektpositionen im 3D-Modell möglich.<br />
Der hohe Rechenaufwand, der zur Segmentierung der Bildbereiche notwendig ist, erlaubt bisher keine<br />
Berechnung der Objektpositionen in Echtzeit. Aus diesem Grund wird die Objektsuche nicht kontinuierlich<br />
durchgeführt, sondern muss vom Benutzer bei Bedarf manuell gestartet werden. Auf diese Weise<br />
kann zum Beispiel beim Betreten eines neuen Raumes die Lage der verschiebbaren Objekte aktualisiert<br />
werden.<br />
4.5 Aktualisierung des 3D-Modells<br />
Die Bestimmung des aktuellen Aufenthaltsraumes der virtuellen Kamera, wie sie in Absatz 4.3.2 beschrieben<br />
ist, ermöglicht eine schnelle Abfrage der enthaltenen Geometrie über den Szenengraphen.<br />
Die Beispiel-Klasse zur Suche nach Stühlen implementiert die Suche nach allen Stühlen im aktuellen<br />
Aufenthaltsraum. Zeiger auf die entsprechenden Szenengraphen-Knoten ermöglichen es, bei Erkennung<br />
einer geänderten Position, den Translationsknoten eines Stuhles zu aktualisieren, um ihn auf diese Weise<br />
an seine neue Position zu verschieben. Um sicherzustellen, dass die Objekte weiterhin auf dem Boden<br />
stehen, werden nur die X- und Y-Koordinaten der gefunden Objekte neu berechnet.<br />
Nach der Aktualisierung des Gebäudemodells kann dieses über die im OpenSceneGraph-Paket enthaltenen<br />
Funktionen wieder als OSG-Datei abgespeichert werden.<br />
Das aktualisierte Modell ermöglicht es blinde Benutzer bei der Erforschung ihrer Umgebung zu unterstützen.<br />
Über einen Abtaststrahl im Modell können Informationen wie Abstand und Art von betrachteten<br />
Objekten an den Benutzer zurückgegeben werden. Zudem ist die Warnung vor Hindernissen über Kollisionserkennung<br />
im Modell möglich.