スポンサーリンク

【Raspberry Pi】 ラズパイにWebカメラを接続する方法

Tool

テレビ会議用に持っているUSBのWebカメラがあるのに、Raspberry Piのカメラモジュールを買うのはもったいないと思いRaspberry PiでWebカメラを使った写真撮影に挑戦してみました。

Raspberry Piに市販のWebカメラを接続する方法と写真撮影する方法を紹介します。

今回の動作環境は下記になります。

動作環境

・Raspberry Pi 4 Model B (OS:Raspbian Buster 10)
・Webカメラ(Logicool)

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Raspbian
Description:	Raspbian GNU/Linux 10 (buster)
Release:	10
Codename:	buster

Rakuten

USBのWebカメラを接続する

h2_0

Raspberry PiのUSBポートにWebカメラを接続します。

今回は普段からテレビ会議等で使用しているWebカメラを使用しました。安価なWebカメラでも撮影することは十分でした。

Raspberry Piのカメラを有効を確認

Raspberry Piのカメラを有効にする方法を紹介します。GUI上での操作とコマンドからの操作を両方紹介しますので、好きな方で設定ください。

GUIでカメラを有効にする

「アプリケーションメニュー」「設定」→「Raspberry Piの設定」を開く

「インターフェイス」→ カメラを「有効」にする

「OK」をクリック

コマンドでカメラを有効にする

ターミナルを起動しコマンドラインに下記を実行

$ sudo raspi-config

設定ツールのraspi-configが起動します。

「3 Interface Options」を選択し「Enter」を押下

「P1 Camera」を選択し「Enter」を押下

「はい」を選択し「Enter」を押下

Webカメラの接続確認

Raspberry PiにWebカメラを接続接続する前後の挙動をターミナルで確認します。

ターミナルを起動し、コマンドラインにかきを入力します。

$ lsusb

カメラ接続前

$ lsusb  # Webカメラ接続前
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

カメラ接続後

$ lsusb  # Webカメラ接続後
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 1b17:0211  
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Webカメラを接続したことで新たにDevice 005が追加されました。これでRaspberry PiがWebカメラを認識していることが確認できました。

Webカメラで撮影する

Webカメラの接続確認までできたので、最後にWebカメラで写真撮影をします。

Pythonを使って撮影するプログラムを書いてもいいですが、OpenCVのインストールなど色々と面倒な作業があります。

今回はコマンドラインで簡単に撮影することができるfswebcamを使った方法を紹介します。

Webカメラで撮影する手順

・fswebcamをインストール
・fswebcamコマンドで撮影する

fswebcamをインストール
ターミナルを起動し、コマンドラインに下記を入力します。

$ sudo apt-get install fswebcam

インストールが完了したら

fswebcamコマンドで撮影する
コマンドラインに下記を入力します。

$ fswebcam test.jpg

fswebcam [ファイル名].jpgという形で入力します。今回はtestとしていますが、お好きなファイル名を指定ください。コマンドを実行すると下記のようになります。

$ fswebcam test.jpg
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.
No input was specified, using the first.
Adjusting resolution from 384x288 to 640x480.
--- Capturing frame...
Captured frame in 0.00 seconds.
--- Processing captured image...
Writing JPEG image to 'test.jpg'.

ファイルを開いて確認してみます。

なんだか全体的に暗い感じがしますので画像を明るくするために-F 50と画像の下部に表示される□のマークを消す--no-bannerのオプションをつけて実行します。

 fswebcam --no-banner -F 50 test.jpg
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.
No input was specified, using the first.
Adjusting resolution from 384x288 to 640x480.
--- Capturing 50 frames...
Captured 50 frames in 1.96 seconds. (25 fps)
--- Processing captured image...
Disabling banner.
Writing JPEG image to 'test.jpg'.

良い感じに撮影できました!

まとめ

h2_4

今回はRaspberry PiにWebカメラで接続して写真撮影を実践してみました。深い知識は全く要らずで簡単にWebカメラで写真を撮ることができました。

Raspberry PiとWebカメラを使った監視カメラに挑戦してみたいと思います。

コメント

タイトルとURLをコピーしました