回答:
を使用fswebcam
して画像を取得すると、カメラが初期化され、画像を取得して切断されたように見えます。一部のWebカメラには、明るさのバランスを自動的に調整する機能があります。たとえば、暗い部屋では明るさを上げる必要があると感じ、明るい場所では明るさを下げる必要があるかもしれません。カメラは、自身のフレームを調べて分析することでこれを行います。カメラが初期化された直後に画像のグラブが発生した場合、環境がどれほど明るいかを知るのに十分なデータが表示されておらず、環境が非常に明るいと想定し、露出制御を最小限に抑えているように見えます(その結果、黒の画像)。さらに多くのフレームが検査されると、カメラは露出設定をすばやく調整します。
を使用するfswebcam
に-S <num>
は、必要な画像をキャプチャする前にカメラが「確認」および「スキップ」するフレーム数をオプションで指定できます。20
カメラのスキップを提供すると、露出を自動調整するのに十分なフレームがあり、毎秒30フレームを処理しているので、1フレームを取得するための1秒の遅延よりも少ないことがわかります。ビデオストリーミングの場合、カメラは初期化され、初期化されたままになるため、問題はありません。
fswebcam -d /dev/video0 -r 640x480 -v -S 10 --set brightness=100% test_image.jpg