Stereo Vision ASIC

    Hauptseite / english

Semesterarbeit Winter 2002/03

Studenten, welche die Vorlesungsreihe 'VLSI chip design' am Institut für integrierte Systeme an der ETH Zürich belegen, haben die Gelegenheit, im Rahmen einer Semesterarbeit einen eigenen Chip (ASIC - application specific integrated circuit) zu entwerfen. Dabei kann der gesamte Entwicklungsprozess vom Algorithmusentwurf übers VHDL-Code schreiben, simulieren, layouten und schliesslich Testen des fertigen Chips praktisch erfahren werden. Mit Michael Kuhn and Oliver Isler entwarf ich einen 'real time stereo vision chip'. Nach einem unfangreichen Algorithmusentwurf (in Java) in den Sommerferien folgte ein anstrengendes Semester, bis im Februar '03 das 'tape-out' stattfinden konnte und der Chip in die Herstellung geschickt wurde. Dabei wurde ein 250nm Prozess der Firma UMC angewandt. Die fertigen Chips - zehn an der Zahl - konnten schliesslich auf HP Testgeräten erfolgreich getestet werden. Das Projekt führte zur Publikation eines papers an der MWSCAS Konferenz 2003 in Cairo. Das paper (pdf, 142k) ist hier verfügbar mit der gesamten Projektdokumentation (pdf, 742k).

Stereo Vision

Der Idee der stereo vision (Stereopsis) ist, aus zwei Bildern derselben Szene Distanzen zu Objekten zu bestimmen. Da die beiden Kameras zwar parallel ausgerichtet, aber horizontal etwas verschoben sind, kriegt man zwei leicht verschiedene Blickpunkte. Daraus lässt sich die perspektivische Verschiebung jedes Objektes bestimmen, was wiederum leicht in eine Distanz umrechenbar ist. Berechnet man die perspektivische Verschiebung für jeden Punkt der Szene, erhält man ein Raumtiefenbild (depth map). In diesem Bild entsprechen Helligkeiten Distanzen:

stereo vision principle (two camera images and a depth map)
Obere Reihe: Zwei Blickpunkte derselben Szene. Die Kameraverschiebung beträgt 10cm.
Unten: Die daraus berechnete depth map zeigt helles Grau für nahe Regionen und dunkles Grau für entfernte Bereiche.

Da die Raumtiefenberechnung aus Stereobildern ein sehr rechenaufwändiger Vorgang ist, kam die Idee auf, einen Chip herzustellen, welcher diese Aufgabe dank Parallelität in Echtzeit löst. Auf diese Weise lässt sich das Verfahren z.B. im Strassenverkehr verwenden für Hinderniserkennung oder kann im Bereich der mobilen Robotik gute Dienste leisten.

Der Chip

Der ASIC verarbeitet Bilder der Grösse 256*192 mit 256 Graustufen. Er kann mit gut 70 MHz betrieben werden und erreicht dabei über 50 Bilder in der Sekunde (fps). Dies entspricht etwa einer Rechenleistung von 18 GOps. Die eigentliche Grösse des Silikons ist 2.56mm^2 auf einem UMC 0.25um 5Metall-Prozess.

photo of bonded chip microscopic silicon image
Links: Das offene Chip-Gehäuse mit den Golddrähten zur Verbindung der Anschlüsse nach aussen.
Rechts: Eine Mikroskop-Aufnahme des Silikon-Wavers.


last update: 22.2.04 Stephan Moser