半地下備忘録

たつさんの日記的ななにか。

Raspberry PiとWebカメラで静止画を撮影する

うちにあったELECOMのWebカメラ。

こいつを使ったら、タイムラプス動画をつくったり、監視カメラをつくったりできるじゃないか! ということで、まずは静止画を撮ってみる。

カメラの準備

Webカメラを接続する前

pi@raspberrypi:~ $ lsusb
Bus 001 Device 004: ID 056e:4008 Elecom Co., Ltd 
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Webカメラを接続した後

pi@raspberrypi:~ $ lsusb
Bus 001 Device 005: ID 056e:700f Elecom Co., Ltd 
Bus 001 Device 004: ID 056e:4008 Elecom Co., Ltd 
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Elecom Co., Ltdが増えてるのでちゃんと認識されてるっぽい。

fswebcam

Webカメラから静止画を撮影するfswebcamをインストールする。

sudo apt-get install fswebcam

下記のように実行すると、「image.jpg」という名前で静止画が保存される。

fswebcam image.jpg

ファイルをWindowsから吸い出す方法は色々あると思うけど、今回はWinSCPでSFTP接続して、ファイルをダウンロードした。撮影された写真がこちら。
f:id:tatsu-n:20160312095830j:plain
ボケてて何を撮影したのかまったくわからないけど、一応撮影はできた。赤いラインとか、タイムスタンプは--no-bannerオプションで消せるらしい。

ほかにもオプションは色々あって、--banner-colour #AARRGGBB でバナーの色を変えたり、--line-colour #AARRGGBB で線の色を変えたり、--text-colour #AARRGGBB で文字の色を変えたりもできるっぽい。詳しく知りたい人は自分で調べてくださいな。


あとはスクリプトとcron使って連続撮影して、撮影した画像を繋いでタイムラプスとか…って思ってたのに、どうもピントが合わなくて、色々触ってみた結果、Webカメラ本体が壊れているみたいなので一旦諦めることに(5年前に買ったやつだから仕方ないけど)。

高いものではないとはいえ、わざわざ新しいWebカメラを買ってまで撮りたいものとか、観察したいものがあるかというと微妙なのでとりあえずここまでにしておくます。もう少し温かい季節がきたら、植物の種まいて、Webカメラで定点観測とかはちょっとやってみたいかなー。新品で買っても1,000円ちょっとなので、そのうち買うかも。

iBUFFALO マイク内蔵120万画素Webカメラ HD720p対応モデル ブラック BSWHD06MBK

iBUFFALO マイク内蔵120万画素Webカメラ HD720p対応モデル ブラック BSWHD06MBK