ラズパイのカメラモジュールに赤外線LEDモジュールを追加して夜間撮影 | そう備忘録

ラズパイのカメラモジュールに赤外線LEDモジュールを追加して夜間撮影

カメラモジュール

以前に購入したKumanのRaspberry Pi用のカメラモジュールにHomylの赤外線LEDモジュールを追加して日中及び夜間の撮影をしてみた時の備忘録。

最初に購入したのがこちらの日中と夜間モードが切り替えられるKumanのRaspberry Pi用カメラモジュール。

kumanカメラ

左手手前にフォトレジスタ(光センサー)があり日中と夜間モードが自動的に切り替わる。

また左右に4箇所(左手前はフォトレジスタに隠れていて見えない)に赤外線LEDまたはフラッシュLEDが接続可能な端子があったので別に購入した赤外線LEDを接続してみた。

スペック

カメラのスペックは以下の通り。

カメラの仕様

静止画像:2592×1944ピクセル

動画:1080 p(30 fps)、720p(60 fps)、640 x 480 p(60/90pfs)

  • 感光チップ:OV5647
  • ピクセル:5MPixelセンサー
  • CMOSサイズ:1/4インチ
  • 絞り(F):1.2
  • 焦点距離:3.6mm
  • 対角視野(FOV):75度
  • センサーの最適なピクセル:1080p

赤外線カットフィルター

IRカットフィルター内蔵

赤外線カットフィルターの役割は昼間には太陽光に含まれる赤外線をカットして肉眼と同じようなカラー映像を撮影する

そして夜間は赤外線LED(別途取り付け)を照射して赤外線はカットせずに白黒映像を撮影する

フォトレジスタ

前述したがフォトレジスタで明るさを検知して昼夜の自動切り替えを行う

切り替わった時にカチッと音が鳴った

外部電源

3.3V外部電源をサポートとあった

手前に赤黒のリード線があるがそこから別途電源を供給することが出来るという意味なのだろうか。。。

とりあえずカメラケーブルをRaspberry Pi 3 B+に接続してラズパイから電源供給を行うことにした

フォーカス

被写体の距離に応じて焦点距離を自動調整できるとあった

またカメラのレンズ部分を回すとフォーカスが変わる

カメラのレンズを回転

赤外線LED

続いてHomylの赤外線LED(2個セット)を追加で購入した。

これをカメラの両端にビスとナットで固定する。

赤外線LED

スペック

スペックは以下の通り。

電力

1W

3Wの製品もあったのだが品切れだったのと、かなり熱くなるとあったので1Wの製品を購入したのだが1WでもLED裏側がかなり熱くなっていた

フォトレジスター

こちらにもフォトレジスターが付いていて周囲の明るさを測定できる

しきい値制御

赤外線LEDを切り替える為の周囲の明るさのしきい値を制御するための抵抗器

接続

赤外線LEDに付属のビスとナットでカメラと接続をしてラズパイに接続した所。

周囲を暗くすると赤外線LEDがうっすらとピンク色に光っているように見える。

赤外線は目に見えないはずなので可視光も出しているのだと思う。

ビスとナットで接続した

接続と有効化

カメラモジュールとラズパイとの接続はこちらの記事を参照して欲しい。

またRaspberry Piの設定にてカメラを有効化する必要があるのだがそれについてもこちらの記事を参照して欲しい。

プログラム

静止画像の撮影や動画の撮影は下記のコマンドで撮影が可能。

それぞれcamera.jpgとvideo.h264のファイルに保存する。

また-t 10000は10秒を表している。

静止画:raspistill -o camera.jpg
動画:raspivid -o video.h264 -t 10000

Pythonの動画撮影用のテストプログラムも載せておく。

# -*- coding: utf-8 -*-
"""
Created on Sun Aug 23 10:49:21 2020

赤外線LEDカメラのテスト
@author: Souichirou Kikuchi
"""

from picamera import PiCamera
import datetime as dt
import os
from time import sleep

INTERVAL = 10 # 録画時間

class  InfraredCameraClass: # 赤外線LEDカメラのクラス
    def __init__(self):
        self.camera = PiCamera()

    def start_recordings(self): # 録画開始
        __time_stamp_file =  "{0:%Y-%m-%d-%H-%M-%S}".format(dt.datetime.now()) # 日付時刻をセット
        self.save_file_path = "video" + __time_stamp_file + ".h264" # ディレクトリ、ファイル名をセット
        self.camera.annotate_text = __time_stamp_file # 映像上部に表示 
        self.camera.annotate_text_size = 24 # 録画画像上部に表示される注釈文字のサイズ
        self.camera.start_recording(self.save_file_path) # 指定pathに録画
        return True 

    def stop_recordings(self): # 録画終了
        self.camera.stop_recording() # 録画終了
        return True 

    def close_camera(self): # カメラクローズ
        self.camera.close()

#main
try:
    if __name__ == "__main__":
        print('---program start ---')
        os.chdir(os.path.dirname(os.path.abspath(__file__))) # カレントディレクトリをプログラムのあるディレクトリに移動する
        infr_camara = InfraredCameraClass()
        rec = infr_camara.start_recordings() # 録画開始
        sleep(INTERVAL)
        rec = infr_camara.stop_recordings() # 録画終了
except KeyboardInterrupt:
    pass
finally:
    infr_camara.close_camera()
    print('---program end ---')

撮影結果

静止画と動画でそれぞれ昼と夜で同じ場所を撮影した。

静止画

昼間

昼間の自然光での本棚、距離80cm。

昼間(自然光)本棚

昼間の自然光での道路を撮影、道路までの距離は約6m。

昼間の道路

夜間

夜間の本棚(距離80cm)。

「Pythonで始める機械学習」やOrallyの「ゼロから始めるDeep Learning」など赤色の背表紙の文字が読み取りにくくなっている一方、白地に黒の文字ははっきりと読み取れる。

夜間の本棚

夜間の道路。

左手前に白く見えるのはウッドデッキの手すり。

雨が降っていた事もあり1Wの赤外線LEDではかなり厳しい状況。

夜間の道路

動画・昼夜比較

昼夜の動画での比較。

約6mの距離と2.8mの距離とで比較をしている。

また夜は雨が降っていたのでビニール傘をさしているので若干同じ条件では無い。

やはり6mの距離では薄っすらと輪郭が見える程度だ。

通常のカメラでは真っ暗で何も映らないのでそれに比べれば写っている方なのかも知れないが、はっきりと輪郭が映るのはおよそ3m~4mの距離までだと思う。

もし夜間に動物などを撮影したいのであれば3m以内の距離にするか赤外線LEDの電力をもう少し上げる必要があると思う。

以上で今回の記事を終了とする。

最後に

この記事が何処かで誰かの役に立つことを願っている。

尚、当記事中の商品へのリンクはAmazonアソシエイトへのリンクが含まれています。Amazonのアソシエイトとして、当メディアは適格販売により収入を得ていますのでご了承ください。

souichirou

やった事を忘れない為の備忘録 同じような事をやりたい人の参考になればと思ってブログにしてます。 主にレゴ、AWS(Amazon Web Services)、WordPress、Deep Learning、RaspberryPiに関するブログを書いています。 仕事では工場に協働ロボットの導入や中小企業へのAI/IoT導入のアドバイザーをやっています。 2019年7月にJDLA(一般社団法人 日本デイープラーニング協会)Deep Learning for GENERALに合格しました。 質問は記事一番下にあるコメントかメニュー上部の問い合わせからお願いします。

おすすめ

1件の返信

  1. 2022年8月28日

    […] ラズパイのカメラモジュールに赤外線LEDモジュールを追加して夜間撮影 […]

質問やコメントや励ましの言葉などを残す

名前、メール、サイト欄は任意です。
またメールアドレスは公開されません。