1. Welche Sensorik hat das Google Tango Gerät (Lenovo phab2PRO)?
-eine Fischaugenkamera (2D, hohe Auflösung)
-eine Tiefenkamera (3D, sehr geringe Auflösung) welche jedem Pixel eine gemessene Entfernung (Tiefe) zuordnet
-eine normale Kamera (2D, hohe Auflösung)
-einen IMU-Sensor
Quelle:
http://arstechnica.com/gadgets/2016...google-tech-debuts-on-crappy-lenovo-hardware/
2. Wie funktioniert Google Tango?
Es kommen zwei Verfahren zum Einsatz: "präzise 3D-Bewegungserkennung" und "Wiedererkennung einer 3D-Position". Die Bewegungserkennung ("Motion Tracking") verwendet den IMU-Sensor und die Fischaugenkamera um die Bewegung des Gerätes in allen Achsen (x,y,z) präzise zu ermitteln. Dies funktioniert bei "normalen" Bewegungen erstaunlich gut und mit hoher Wiederholgenauigkeit. Mit Motion Tracking allein driftet allerdings die Positionserkennung (schon nach ein paar Metern).
Zusätzlich zur 3D-Bewegungserkennung gibt es noch die Möglichkeit eine Umgebung zu "erlernen" ("Area Learning"), d.h. es werden 2D-Daten ("Key Visual Features") der Fischaugenkamera aus der gelernten Umgebung in einer Datenbank (mit der aktuellen Position) abgespeichert und das Gerät versucht seine aktuellen 2D-Daten in den bereits gelernten Daten zu finden um seine Position fortlaufend zu korrigieren. Diese Positions-Korrektur findet innerhalb weniger Sekunden statt und funktioniert auch dann wenn z.B. die Kamera zwischenzeitlich verdeckt wurde.
3. Wie funktioniert "Augmented Reality", also das Einblenden von virtuellen Gegenständen, einer virtuellen Schleife usw.?
Basierend auf der zuvor genannten Positions- bzw. Bewegungserkennung kann das Gerät präzise seine aktuelle Position ermitteln (x,y,z). Die Daten der Kamera (Öffnungswinkel usw.) sind ebenfalls bekannt. Mit diesen beiden Daten berechnet Google Tango nun wo sich ein beliebiger 3D-Punkt (x,y,z) im 2D-Kamerabild (x,y) für die aktuelle Kameraposition (x,y,z) befinden müsste, führt quasi eine "virtuelle Projektion" durch und zeichnet diese in das Kamerabild mit ein.
4. Kann der 3D-Sensor einen Maulwurfshügel erkennen? Ja, dies sollte gehen. Der 3D-Sensor kann Tiefenbilder (3D-Punktwolken) machen ("Depth Perception"). Die Schwierigkeit besteht jetzt nur noch darin, mathematisch auszudrücken was ein Gegenstand in so einer Punktwolke sein soll. Eine Idee wäre z.B. zunächst eine Fläche in diese Punktwolke zu legen und dann zu ermitteln wie hoch die Varianz (Abweichung) der Punkte von dieser Fläche ist.
Gruss,
Alexander
Attachment:
https://forum.ardumower.de/data/media/kunena/attachments/905/tangophone.jpg/