NanoPi NEO2でタイムラプス撮影

部屋を掃除していたらELECOMのWebカメラが出てきました。LinuxMintのマシンに挿してみたところ uvc カメラとして認識するようでしたので、NanoPi NEO2に挿してみたらこちらも認識しました。

なので、TimeLapse撮影ができないか、試してみました。
ググると Ubuntu でTimeLapseをやっている方は結構いるようで、基本的にはそちらに倣ってやってみました。

基本、NanoPi NEO2に合わせている以外はこちらのページのパクリです。

1.カメラ画像の連続キャプチャ

1枚単位での撮影には fswebcam を使うのが簡単なようです。

でインストールできます。で、連続撮影する場合には、1枚キャプチャするシェルスクリプトを書いて、cron で所定の時間毎に1枚キャプチャ、というのが簡単なようなのですが、NanoPi-NEO2のUbuntu-coreではcronはユーザーに開放されてないっぽいです。crontab -eとしても編集できないですし、ググってもシェルスクリプト内でループしてsleepで時間待ちせよ、みたいなことが書いてあります。

結局、以下のようなシェルスクリプトで連続撮影します。ファイル名は TimeLapse.sh として、ホームディレクトリの下に CaptureImage というディレクトリを作って、そこに置きました。

作成したスクリプトに実行権限を付けてやります。

で、実行すると、ザクザクと画像が溜まっていきます。

2.キャプチャした静止画の引取の準備

動画への変換はホスト側でやります。

ホスト側で

として、sshfsでnanopi側のホームディレクトリをローカルディレクトリにマウントして、これで引き取ります。
(今考えれば、sshfsでマウントしなくても scp でも良かった・・・)

3.画像の変換の準備

ローカル側でffmpegで変換しますが、motionをインストールするほうが楽だという情報があったので、そうしました。

4.画像の引取と変換

以下の手順で画像の引取と変換を行います。

これで TimeLapse ができましたが、静止画の保存サイズが大きいようです。
1分間で3〜4MB出力しているようなので、1週間で40GBくらいになってしまいます。ちょっと要対策ですね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)