Möglicherweise möchten Sie eine Folge von Bildern aufnehmen, die in Bezug auf Helligkeit, Farbe und Kontrast alle gleich aussehen (dies kann beispielsweise bei der Zeitrafferfotografie hilfreich sein). Es müssen verschiedene Attribute verwendet werden, um die Konsistenz über mehrere Aufnahmen hinweg sicherzustellen. Insbesondere müssen Sie sicherstellen, dass Belichtungszeit, Weißabgleich und Verstärkung der Kamera festgelegt sind:
Stellen Sie das shutter_speed
Attribut auf einen angemessenen Wert ein , um die Belichtungszeit festzulegen. Optional iso
auf einen festen Wert einstellen . Um dies zu beheben Belichtungsgewinne lassen analog_gain
und digital_gain
setzen sich auf vernünftige Werte, dann Satz exposure_mode zu 'off'
. Um den Weißabgleich zu korrigieren, setzen Sie awb_mode
auf
'off'
und dann awb_gains
auf ein (rotes, blaues) Tupel von Verstärkungen.
Es kann schwierig sein zu wissen, welche Werte für diese Attribute geeignet sind. Denn iso
, ist eine einfache Faustregel : 100 und 200 sinnvolle Werte für den Tag sind, während 400 und 800 besser für wenig Licht sind. Um einen angemessenen Wert für shutter_speed
Sie zu ermitteln, können Sie das exposure_speed
Attribut abfragen . Für Belichtungsgewinne reicht es normalerweise aus, zu warten, bis analog_gain
größer als 1 ist, bevor exposure_mode
eingestellt wird 'off'
. Schließlich, um vernünftige Werte für die awb_gains
einfache Abfrage der Eigenschaft zu bestimmen, während awb_mode
auf etwas anderes als gesetzt ist 'off'
. Dies zeigt Ihnen wiederum die Weißabgleichgewinne der Kamera, die durch den automatischen Weißabgleich-Algorithmus ermittelt werden.
Das folgende Skript enthält ein kurzes Beispiel für die Konfiguration dieser Einstellungen:
from time import sleep
from picamera import PiCamera
camera = PiCamera(resolution=(1280, 720), framerate=30)
# Set ISO to the desired value
camera.iso = 100
# Wait for the automatic gain control to settle
sleep(2)
# Now fix the values
camera.shutter_speed = camera.exposure_speed
camera.exposure_mode = 'off'
g = camera.awb_gains
camera.awb_mode = 'off'
camera.awb_gains = g
# Finally, take several photos with the fixed settings
camera.capture_sequence(['image%02d.jpg' % i for i in range(10)])