コマンド (raspistill) で 写真が取れるということは cron で自動的に写真が撮れるわけです。 今回は インターバル撮影して、その画像を動画にしてみたいと思います。
まず、画像を出力するディレクトリを作成します。
以下、ユーザは pi です。
$ mkdir -p ~/raspistill/test001
お試しなので cron の定義ファイルに直接コマンドを書きます。
$ env EDITOR=vi crontab -e
SHELL=/bin/bash HOME=/home/pi PATH=/usr/sbin:/usr/bin:/sbin:/bin:/opt/vc/bin MAILTO="" * * * * * raspistill -w 400 -h 300 -o ~/raspistill/test001/`date +"\%Y\%m\%d\%H\%M"`.jpg > /dev/null 2>&1 * * * * * echo `date +"\%Y/\%m/\%d \%H:\%M " && /opt/vc/bin/vcgencmd measure_temp` >> ~/raspistill/test001/temp.log 2> /dev/null
ついでに温度も記録しておきます。
これで しばらく経つと /home/pi/raspistill/test001 にファイルが 作成されます。
$ ls -l ~/raspistill/test001
201308170905.jpg
201308170906.jpg
201308170907.jpg
これをしばらく放置しておきます。(10時間くらい)
$ ls ~/raspistill/test001 | wc -l
600
10時間で 600 の画像ができました。
今回は、この画像を GIF アニメ画像にします。
GIF アニメ画像作成には ImageMagick を使います。
$ sudo apt-get update $ sudo apt-get install imagemagick
画像のサイズを小さくしないと ファイルサイズが大きくなりすぎるので 同時にサイズも変更します。
$ convert -geometry 100x75 -delay 10 -loop 0 ~/raspistill/test001/*.jpg /tmp/test001_1.gif
このコマンドで 画像のサイズを 100x75 に変更しながら、 1枚 0.1秒で GIF アニメ画像を作成しました。
他にも色々なパターンで作成してみました。
100x75 300枚 600倍 30秒 (9時〜13時) 1.89MB → 表示 200x150 300枚 600倍 30秒 (9時〜13時) 6.07MB → 表示 100x75 600枚 1200倍 30秒 (9時〜18時) 3.81MB → 表示 160x120 600枚 1200倍 30秒 (9時〜18時) 8.27MB → 表示 200x150 600枚 1200倍 30秒 (9時〜18時) 12.30MB → 表示
Raspberry Pi で 変換するのは結構時間がかかります。 100x75の 600枚で 8分、 200x150の 600枚で 13分かかりました。
ついでに 温度のログ も上げておきます。
Raspberry Pi の使い道として
インターバル撮影は面白いですね。
今回はここまで。続きます。