4.6. Rolling und Global Shutter

Der Sensor liest sein zweidimensionales Pixelraster Zelle für Zelle aus. Zwei Aspekte dieses Auslesens prägen das aufgenommene Bild: die Reihenfolge, in der die Pixel abgetastet werden, und wie das Belichtungsfenster jeder Zeile zeitlich zu diesem Abtasten ausgerichtet ist. Das Erste ist durch das Silizium festgelegt; das Zweite tritt in zwei etablierten Varianten auf, die für bewegte Szenen sehr wichtig sind.

4.6.1. Auslesereihenfolge

Typische Sensoren beginnen am Pixel unten links und tasten entlang dieser Zeile nach rechts ab, rücken dann nach oben zur nächsten Zeile vor und tasten wieder nach rechts ab, und so weiter, bis sie oben rechts fertig sind.

Ein Raster aus 6 Spalten mal 4 Zeilen von Pixelzellen. Die Zelle unten links ist mit "zuerst gelesen" markiert. Ein nach rechts weisender Pfeil verläuft entlang jeder Zeile und zeigt die Abtastrichtung. Rechts neben dem Raster zeigt ein nach oben weisender Pfeil mit der Bezeichnung "Zeilen rücken vor" an, dass die Abtastung nach jeder abgeschlossenen Zeile zur nächsten Zeile nach oben wandert. Die Zelle oben rechts ist mit "zuletzt gelesen" markiert.

Das Pixelarray wird ab dem Pixel unten links ausgelesen, wobei entlang jeder Zeile nach rechts abgetastet und zwischen den Zeilen nach oben zur nächsten Zeile vorgerückt wird.

Die Reihenfolge ist kein Zufall. Das Objektiv spiegelt die Szene horizontal und kippt sie vertikal, während es sie auf den Sensor projiziert – der obere Rand der Szene landet unten am Sensor und der linke Rand der Szene rechts am Sensor – und das Auslesen von unten links nach oben durchläuft den Sensor in der Reihenfolge, die beide Spiegelungen rückgängig macht, sodass die Pixel aufrecht in den Speicher gelangen.

4.6.2. Rolling Shutter

Bei einem Rolling-Shutter-Sensor wird jede Zeile nacheinander belichtet und ausgelesen. Während eine Zeile ausgelesen wird, schließt die nächste noch ihre Belichtung ab, die übernächste hat gerade erst begonnen, und so weiter – das Belichtungsfenster jeder Zeile ist gegenüber dem der nächsten zeitlich leicht versetzt. Das Integrationsfenster des Sensors rollt in Abtastreihenfolge über das Einzelbild, und eine vollständige Abtastung dauert die gesamte Einzelbildperiode.

Bei statischen Szenen ist dies nicht sichtbar. Bei Szenen mit schneller Bewegung zeigt sich der Versatz als Verzerrung (Skew) – ein Objekt, das sich zwischen dem Zeitpunkt der Aufnahme der ersten Zeile und dem der Aufnahme der letzten Zeile bewegt, erscheint in verschiedenen Zeilen desselben Einzelbilds an unterschiedlichen Positionen.

Drei Felder, die einen senkrechten Balken zeigen, der sich nach rechts bewegt. Das erste Feld zeigt den Balken zu einem Zeitpunkt, senkrecht. Das zweite Feld zeigt denselben Balken, aufgenommen mit Rolling Shutter: Er erscheint als schräges Parallelogramm, das sich unten nach rechts neigt, weil die oberen Zeilen aufgenommen wurden, als der Balken an seiner früheren Position war, und die unteren Zeilen, als er sich nach rechts bewegt hatte. Das dritte Feld zeigt den Balken, aufgenommen mit Global Shutter: senkrecht und an einer Position.

Ein nach rechts bewegter senkrechter Balken, aufgenommen mit jedem Shutter-Typ. Rolling Shutter verzerrt den Balken, weil der obere Teil des Einzelbilds zu einem anderen Zeitpunkt gelesen wird als der untere; Global Shutter friert den Balken zu einem Zeitpunkt ein.

Rolling Shutter ist die kostengünstigere Bauweise. Da jede Zeile unmittelbar nach Abschluss ihrer Belichtung gelesen wird, benötigt die Pixelschaltung keinen abgeschirmten Speicher pro Pixel, um ihren Wert während eines sensorweiten Auslesens zu halten. Die eingesparten Transistoren überlassen der Fotodiode einen größeren Anteil der Pixelfläche, was sich direkt in höhere Empfindlichkeit und geringeres Rauschen bei gleicher physischer Pixelgröße übersetzt. Die meisten Consumer-Bildsensoren sind aus diesem Grund Rolling-Shutter-Sensoren.

4.6.3. Global Shutter

Bei einem Global-Shutter-Sensor beginnt jedes Pixel seine Belichtung im selben Augenblick und beendet sie im selben Augenblick. Die erfasste Ladung wird dann in einen abgeschirmten Speicherbereich am Pixel übertragen, und das zeilenweise Auslesen erfolgt von dort. Das aufgenommene Einzelbild stellt einen einzigen Zeitpunkt dar, egal wie schnell sich die Szene bewegt.

Global Shutter kostet mehr Silizium, und die Kosten gehen zulasten der Fotodiode. Um den Wert jeder Zeile während eines sensorweiten Auslesens zu halten, ist auf jedem Pixel eine zusätzliche abgeschirmte Speicherzelle nötig sowie die Transistoren, die sie von der Fotodiode abkoppeln – Fläche, die sonst der Fotodiode selbst gehören würde. Eine kleinere Fotodiode fängt pro Zeiteinheit weniger Photonen ein, sodass ein Global-Shutter-Pixel weniger empfindlich ist als ein gleich großes Rolling-Shutter-Pixel. Dieselbe Szene benötigt eine längere Belichtung oder eine höhere Verstärkung, um mit derselben Helligkeit aufgenommen zu werden, und die zusätzliche Schaltung erhöht zudem das Ausleserauschen leicht.

Die andere Last betrifft das Belichtungsbudget. Bei einem Rolling-Shutter-Sensor überschneidet sich die Belichtung jeder Zeile mit dem Auslesen benachbarter Zeilen, sodass jede Zeile nahezu die gesamte Einzelbildperiode lang Licht integrieren kann. Bei einem Global Shutter kann das Auslesen erst beginnen, wenn jede Zeile ihre Belichtung abgeschlossen hat, sodass bei einer gegebenen Bildrate die maximale Belichtungszeit gleich der Einzelbildperiode minus der vollständigen Auslesezeit ist. Bei gleicher Bildrate erhält das Rolling-Shutter-Pixel am Ende mehr Licht pro Einzelbild.

Diese Kosten summieren sich: Global-Shutter-Sensoren haben weniger Pixel, rauschen stärker, sind weniger empfindlich und pro Pixel teurer als ihre Rolling-Shutter-Gegenstücke. Der Kompromiss lohnt sich nur, wenn schnelle Bewegung sauber aufgenommen werden muss.

4.6.4. Wann welcher zu verwenden ist

Der Shutter-Typ ist eine Hardware-Eigenschaft des Sensors, keine Software-Einstellung. Die Wahl wird beim Entwurf der Kamera getroffen.

Rolling Shutter ist in Ordnung, wenn:

  • die Szene statisch ist oder sich langsam bewegt;

  • die Anwendung etwas Verzerrung tolerieren kann (die meiste Fotografie und die meiste Arbeit an Benutzeroberflächen);

  • Kosten und Auflösung pro Euro Priorität haben.

Global Shutter ist die richtige Wahl, wenn:

  • die Szene schnelle Bewegung enthält, die sauber aufgenommen werden muss (Robotik, Drohnen, Förderbandinspektion);

  • die Kamera selbst vibriert oder sich relativ zu einer statischen Szene bewegt;

  • das Bild in einen Algorithmus für maschinelles Sehen eingespeist wird, der davon ausgeht, dass jedes Einzelbild einem einzigen Zeitpunkt entspricht (die meisten Pipelines für Posenschätzung und Structure-from-Motion).

Bemerkung

Die OpenMV Cam-Reihe verwendet standardmäßig Global-Shutter-Sensoren für Anwendungen des maschinellen Sehens, bei denen Bewegungsunschärfe an einem bewegten Motiv (oder einer bewegten Kamera) die nachgelagerte Erkennung und Verfolgung beeinträchtigt. Rolling-Shutter-Sensormodule werden ebenfalls für Anwendungen angeboten, bei denen die Bildqualität einer langsamen oder statischen Szene wichtiger ist als das Einfrieren schneller Bewegung – klassische Aufnahmen im Fotografie-Stil.