ケイエルブイケイエルブイは、ハイパースペクトルカメラ・光学部品・光源など世界中の光学機器を取り扱う専門商社です。問い合わせUSBカメラの「明るさ(Brightness)」調整とはPython×OpenCVでの設定変更も解説USBカメラの「明るさ(Brightness)」とはUSBカメラの「明るさ(Brightness)」は、カメラが取得した映像の全体的な明るさのレベルです。明るさは、カメラの設定で調整が可能で、明るさを上げると映像が全体的に明るくなり、暗い部分がより見やすくなるなど、撮影した映像をより見やすくすることができます。本記事では、明るさを変えるとどうなるのか、どういう場合に変更するのか、どう変更するのかを解説していきます。「明るさ(Brightness)」を変更すると画像がどう変わるのかUSBカメラの「明るさ(Brightness)」の設定を変更すると、画像のピクセルのRGB(赤、緑、青)の階調が変化し、画像が明るく見えたり、暗く見えたりするようになります。Blue)の階調で表現されます。RGBの階調は、一般的に8bitで扱われるため、2の8乗の「256段階」で表現されます。赤(Red)が0〜255、緑(Green)が0〜255、青(Blue)が0〜255の値を持ち、その組み合わせで色が表現されます。赤を表現する場合には、”Red:255、Green:0、Blue:0”、ピンクを表現する際には、”Red:255、Green:100、Blue:150”、というようになります。Blue)の値が一様に増加します。190)のように変化します。この結果、画像全体が明るくなりますが、色相や彩度は変化しません。110)というように一様に減少し、画像全体が暗くなります。今回は、RGBの値がそれぞれ一定量変化する例を紹介しましたが、どのように値が変化するかはカメラやソフトウェアの仕様によって異なります。過度に明るさを変更すると、RGBの値の一部が255の階調を超えてしまい色の歪みが発生することがあるので注意が必要です。「明るさ(Brightness)」の変更が有効なシチュエーション撮影状況が理想的でない場合でも、適切な明るさ調整によって高品質な画像を撮影することが可能です。ここでは、特に「明るさ(Brightness)」の変更が有効な、条件やシチュエーションを紹介します。1まぶしい屋外や逆光のなど光量が多い時の明るさ調整まぶしい屋外や光量の多い現場での撮影では、RGBの値が最大値(255)に達してしまい、画面が過度に明るくなりがちです。逆光など光が直接カメラに直接入射する場合はゴーストやフレアも発生しやすくなります。このような場合、明るさの調整が有効です。RGBの値が最大値に近くなっているため、明るさの設定でRGBの値を抑えることで、被写体の色味を忠実に再現できるようになります。光量が不足している環境で動画撮影を行うと、粗い画質や低い彩度・コントラスト、不鮮明な映像になってしまいます。この際の最も有効な解決策は照明を追加することですが、照明が限られた状況や、照明によって陰影が発生してしまう場合もあるので、カメラの明るさや露出の調整が有効です。光量が不足している場合は、信号に対してのノイズの割合(S/N比)が大きい状況にあるため、明るさの調整だけではノイズが目立つ映像になる可能性がある点に注意してください。黒や白の被写体が大部分を占める場合、カメラの自動露出はそれらの色に過剰に反応し、極端な露出設定になり、それ以外の場所が見えにくくなる場合があります。この際には、露光だけではなく、明るさもわせて調整することで、全体のバランスを撮ることができます。ICチップなどで、ほとんどが黒いチップである場合には、金属でできたチップの足が明るすぎてうまく撮影できないことがあります。このような場合には、明るさをあらかじめマイナスに補正しておくと、足の部分の明るさが抑えられて、狙い通りの画像を得ることができます。Python×OpenCVでの「明るさ(Brightness)」の変更方法カメラの設定で取得する画像の「明るさ(Brightness)」を変更する方法と、取得した画像への後処理で「明るさ(Brightness)」を変更する方法を紹介します。カメラの明るさを変更OpenCVでカメラの「明るさ(Brightness)」設定を変更するには、"cv2.CAP_PROP_BRIGHTNESS"を使用します。このように、画像取得のコマンド”cap.read()”の前に、cap.set(cv2.CAP_PROP_BRIGHTNESS,”設定値”)を設定することで、カメラの明るさを調整することが可能です。CAP_PROP_BRIGHTNESSのデフォルト値や設定できる範囲は、カメラデバイスやドライバに依存するため、カメラの仕様を確認してください。Linuxの場合は、v4l2でUSBカメラの設定のデフォルト値や設定できる範囲を確認できるので、以下の記事も参考にしてください。cv2.convertScaleAbsコマンドを使用して特定画像のRGB値を変更することが可能です。各チャンネルの値が”設定値に設定した値”だけ増加または減少します。beta=”設定値”)を実行するだけで明るさを変更できます。範囲なので、これを超えるような値は設定しないよう注意して下さい。まとめ本記事では、明るさを変更するとどうなるのか、どういう場合に変更するのか、どう変更するのかを解説しました。「明るさ(Brightness)」を明るくするとRGBの値がそれぞれ大きく、暗くするとRGBの値がそれぞれ小さくなる。実際の現場では、「明るさ(Brightness)」の設定だけではなく、光源の調整はもちろん、露光(Exposure)や絞りなどの他のカメラの設定も合わせて調整することで、より高品質な画像を得ることができます。製品紹介ケイエルブイは、「明るさ(Brightness)」を変更可能な、「超小型」の産業用USBカメラを取り扱っています。製造はドイツの光学機器メーカーOptikron(オプティクロン)社。マイクロレーザー技術、高度な技術力が要求される分野で活用されています。