Es posible que desee capturar una secuencia de imágenes que tengan el mismo aspecto en términos de brillo, color y contraste (esto puede ser útil en la fotografía timelapse, por ejemplo). Se deben utilizar varios atributos para garantizar la coherencia en varias tomas. Específicamente, debe asegurarse de que el tiempo de exposición de la cámara, el balance de blancos y las ganancias sean fijos:
Para fijar el tiempo de exposición, establezca el shutter_speedatributo en un valor razonable. Opcionalmente, establezca isoun valor fijo. Para arreglar las ganancias de exposición, deje analog_gainy digital_gainestablezca valores razonables, luego establezca exposición_modo en 'off'. Para arreglar el balance de blancos, configure el awb_modea
'off', luego establezca awb_gainsuna tupla de ganancias (roja, azul).
Puede ser difícil saber qué valores apropiados podrían ser para estos atributos. Para iso, una regla general simple es que 100 y 200 son valores razonables para el día, mientras que 400 y 800 son mejores para poca luz. Para determinar un valor razonable para shutter_speedusted, puede consultar el exposure_speedatributo. Para analog_gainaumentar la exposición, generalmente es suficiente esperar hasta que sea mayor que 1 antes de exposure_modeconfigurarlo 'off'. Finalmente, para determinar valores razonables para awb_gains
simplemente consultar la propiedad mientras awb_modese establece en algo diferente a 'off'. Nuevamente, esto le indicará las ganancias de balance de blancos de la cámara según lo determinado por el algoritmo de balance de blancos automático.
El siguiente script proporciona un breve ejemplo de configuración de estos ajustes:
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)])