26
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

ラズパイでwebカメラ画像撮影 fswebcam

RaspberryPiで画像撮影。
カメラモジュールより安いwebカメラ投げ売りされてたので撮影テストしてみました。
カメラモジュールより安いし丈夫、線長いので便利な場合あると思います。

使用機器

  • RaspberryPi 3B+
  • Webカメラ(BUFFALO BSWHD06M)

ビックカメラで積んであった安かったカメラ使って撮影します。
これでデバイス確認

$ lsusb

インストール

$ sudo apt-get install fswebcam

オプション付けて撮影。

fswebcam -r 680x480 -F 100 ./pic.jpg

1枚撮るだけならこれでOK

pic.jpg
ナス。

cron で一定間隔で撮影

一枚だけ撮っても意味ないので一定周期で撮影。

参考URLでいけました。
webカメラ撮影

crontab -e
*/1 * * * * /var/www/captureImage/captureImage.sh

これが1分おき。
crontab書き方のように時間指定して調整可能。

ついでに当然ですがコメントアウトすれば止まります。

OpenCVで撮影する

一応アップデートしてインストール

apt-get update
apt-get install python-opencv
capture1.py
import sys
import cv2

cc = cv2.VideoCapture(0)
rr, img = cc.read()
cv2.imwrite('pic.jpg', img)

これだと1枚だけなので60秒おきにとれるように改良
日付をファイル名にしています。

capture2.py
import sys
import cv2
import time
import datetime

while True:

    now = datetime.datetime.now().strftime("%Y%m%d-%H%M%S")

    cc = cv2.VideoCapture(0)

    rr, img = cc.read()
    cv2.imwrite( now + '.jpg',img)
    cc.release()
    time.sleep(60)

※.release()しないと2回に1回ファイルがおかしくなるエラー発生。

まあ、とりあえずこれで普通に撮影することができましたので植物撮ってみたり、部屋の中撮ってみたりしてみましょう。

Opencv使っているので画像を使って他にも面白い画像処理、システム作れると思います。

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
26
Help us understand the problem. What are the problem?