カイワレスタイル

ゲーム、アニメ、プログラム、興味のあることをツラツラと。

Raspberry Pi カメラモジュールで動画ストリーミングを試す

8月頭にebayで注文したカメラモジュールがようやく届いた。
早速mjpeg-streamerで動画配信を試してみる。


用意したもの

  • Raspberry Pi 2
  • Raspberry Pi 用カメラモジュール

カメラモジュールの接続

接続の仕方は写真の通り。
カメラモジュールは基板もレンズもむき出しなので取り扱いに注意。

f:id:kaiware007:20150831001537j:plain

Raspberry Pi 2の場合、基板に CAMERA と書いてあるので迷わないと思う。
接続する向きは、カメラのフラットケーブルの端子の銀色がむき出しになっている側を、基板の黒い側に向けて差し込めばOK。


カメラを有効にする

Raspberry Pi 2の電源を入れて、設定画面に移行する。

$ sudo raspi-config

f:id:kaiware007:20150831002147p:plain

5番の Enable Camera を選択してENTER。

f:id:kaiware007:20150831002357p:plain

カメラを有効にするか聞かれるので Enable を選択してENTER。
設定画面を抜けると再起動する。

再起動後、

$ raspistill -o img01.jpg

で静止画が撮影できる。


カメラモジュール用のmjpeg-streamerをビルドする

カメラモジュール用のmjpeg-streamerをビルドする。

$ sudo apt-get install libjpeg62-dev cmake
$ git clone https://github.com/jacksonliam/mjpg-streamer.git mjpg-streamer
$ cd mjpg-streamer/mjpg-streamer-experimental
$ make

ビルドが完了したら、下記コマンドで動画配信できる。

./mjpg_streamer -o "./output_http.so -w ./www -p 8080" -i "./input_raspicam.so -fps 30 -x 320 -y 240"

以前、インストールしたmjpeg-streamerと若干オプションの指定の仕方が異なる。

後はブラウザで今までどおりアクセスすれば動画が見られる。

http://[Raspberry piのIPアドレス]:8080

Webカメラと比べて遅延とブレが少なめに感じられた。
フレームレートの指定が30の時と60の時で画質というか色合いがかなり異なって見えた。
さすがに60フレームでは安定しなかったので30フレームで使おうと思う。


参考資料

neuralassemblyのメモ: Raspberry Pi用カメラモジュールおよび赤外線カメラPi NoIRの映像をandroidで表示してみた

mag.switch-science.com