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_speed
atributo en un valor razonable. Opcionalmente, establezca iso
un valor fijo. Para arreglar las ganancias de exposición, deje analog_gain
y digital_gain
establezca valores razonables, luego establezca exposición_modo en 'off'
. Para arreglar el balance de blancos, configure el awb_mode
a
'off'
, luego establezca awb_gains
una 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_speed
usted, puede consultar el exposure_speed
atributo. Para analog_gain
aumentar la exposición, generalmente es suficiente esperar hasta que sea mayor que 1 antes de exposure_mode
configurarlo 'off'
. Finalmente, para determinar valores razonables para awb_gains
simplemente consultar la propiedad mientras awb_mode
se 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)])