ラズパイで監視カメラ(raspistillのみでタイムラプス)

2020-05-07

赤外線カメラ&赤外線ライトを入手したので、セットアップと動作テストをしました。

カメラの接続と有効化

赤外線カメラとライトとスタンドのセット。Aliexpressで購入しました。

組付けで特に難しい部分はなし。赤外線ライトのネジが小さいので、精密ドライバは必須。ピンセットがあれば、尚良し。

ラズパイの電源を入れると、グポ~ンと、ライトが点灯。モノアイが光っているのは、赤外線ライトだったのか!?

メニューの「設定」の「Raspberry PI の設定」で「インターフェイス」タブの、一番上の項目「カメラ」を有効にして、「OK」。

静止画撮影で動作確認

raspistill というコマンドで静止画が撮影できるので、これで動作確認をします。

raspistill -o test.jpg

ホームディレクトリにtest.jpgが作成され、画像が写っていればOK。

暗闇での撮影テスト

夜になって、カメラ&ライトを窓に設置して撮影。よ~く見ると下の方に草むらがうっすらと写ってます。せっかく赤外線ライト付きを買ったけど、ライトが届く範囲が足りなかった模様。

何か対策を考えつつ、作業を進めます。

raspistillのみでタイムラプス撮影

raspistill とシェルと cron を組み合わせた定点観測のサンプルを見かけるけど、簡単なものなら raspstill 単体でできる模様。

raspistill -t 30000 -tl 2000 -o img%04d.jpg

↑の例は、2秒間隔で30秒間、imageN.jpg(N=0始まりの連番)の画像が保存されます。画像が大きい(デフォルトで2MBぐらい)と容量を圧迫するので、オプションで調整。

-t, –timeout撮影からシャットダウンまでの時間(ms) (指定しない場合は5秒)
-tl, –timelapseタイムラプスモード。msごとに撮影します。( -o img_%04d.jpg で d == フレーム番号)
-o, –output出力ファイル名 。指定しない場合、ファイルは保存されません
-q, –quality0 ~ 100 でJPEG画質を設定
-w, –width画像の幅
-h, –height画像の高さ
-vf縦反転
-hf横反転

タイムラプス動画を作成

raspistillで撮影した画像を、ラズパイに標準で入っている ffmpeg を使って動画に変換。

ffmpeg -r 10 -i img%04d.jpg -r 10 -an video.mp4

ラズパイ上だと、10枚強の画像でも少し時間がかかったけど、これで動画ができました。

参考サイト Raspberry Pi でタイムラプス(低速度撮影)する