Antworten:
Wenn wir fswebcam
ein Bild aufnehmen, scheint es, dass die Kamera initialisiert, ein Bild aufgenommen und dann die Verbindung getrennt wird. Einige Webcams haben die Funktion, ihre Helligkeit automatisch auszugleichen. In einem dunklen Raum spüren sie beispielsweise, dass die Helligkeitsanforderungen erhöht werden müssen, während in einem hellen Bereich die Helligkeit möglicherweise verringert werden muss. Die Kamera untersucht dazu ihre eigenen Bilder und analysiert sie. Wenn ein Bild unmittelbar nach der Initialisierung der Kamera aufgenommen wird, hat sie nicht genügend Daten gesehen, um zu wissen, wie hell die Umgebung ist, und es wird davon ausgegangen, dass die Umgebung SUPER hell ist, und die Belichtungssteuerung wird auf ein Minimum reduziert (resultierend) in einem schwarzen Bild). Wenn mehr Bilder untersucht werden, passt die Kamera ihre Belichtungseinstellungen schnell an.
Zur Verwendung fswebcam
können wir die Option -S <num>
angeben, wie viele Bilder die Kamera "sehen" und "überspringen" soll, bevor sie das gewünschte Bild aufnimmt. Ich stelle fest, dass, wenn ich einen Sprung 20
der Kamera versorge, genügend Bilder vorhanden sind, um die Belichtung selbst anzupassen, und da wir 30 Bilder pro Sekunde verarbeiten, ist dies immer noch weniger als eine Sekunde Verzögerung für das Aufnehmen von 1 Bild. Beim Video-Streaming sollte das Problem nicht auftreten, da die Kamera initialisiert wird und initialisiert bleibt.
Sie müssen die ersten Frames überspringen, bevor Sie ein Bild aufnehmen. Weitere Informationen finden Sie im Blog-Beitrag hier
fswebcam -d /dev/video0 -r 640x480 -v -S 10 --set brightness=100% test_image.jpg