RaspberryPi
RaspberryPiによるライブカメラ
 RaspberryPiのもっとも簡単な練習問題として、ライブカメラをつくります。いままでもIPカメラとフリーソフトLiveCapture2を用いライブカメラを動かしていました。それの構成はそのままにして、RaspberryPiによるライブカメラを追加することとします。
 手元に、ELECOM社のUSBカメラがあり、今まで使っていたIPカメラより、レンズが明るいので、それを用いることとしました。生産終了品ですが、同等品(サンワサプライ CMS-V37BK) があります。
 UCAM-DLA200H F2.0  

RaspberryPiのUSBに接続
 RaspberryPiのUSBにカメラを接続します。

RaspberryPi側の準備については次の通りです。
(1) RaspberryPiを動くようにする。こちら
また、OSを最新化するため、次を実行しておきます。
$ sudo apt-get update
$ sudo apt-get upgrade

(2) 標準的なUVC(USB Video Class)規格は、Linuxでは標準で導入されているため、USBポートに挿せば認識します。
コンソールで
$ lsusb
とコマンドを入力すると、
Bus 001 Device 004: ID 056e:700a Elecom Co., Ltd

のようなメッセージが出て、認識されているのがわかります。


Motionを導入
 ネットワーク越しに監視するにはMotionというLinuxソフトが定番です。

$ sudo apt-get install motion
でインストールします。

/etc/motion/motion.conf というファイルができています。このファイルで動作設定しますので、編集します。大変大きなファイルですが、大部分コメントで、主要部分のみ以下に記します。その名の通り、Motionは動体検知の機能がついていますが、私の場合はその機能はLiveCapture2で行いますので、使っていません。単に映像サーバとしての機能の設定になっています。

$ sudo nano /etc/motion/motion.conf
# This config file was generated by motion 3.2.12

daemon on
process_id_file /var/run/motion/motion.pid 
setup_mode off
videodevice /dev/video0
v4l2_palette 8
input 8
norm 0
frequency 0

# Rotate image this number of degrees. 天井にカメラをつけたので180°
rotate 180
width 320
height 240
framerate 32
minimum_frame_time 0
netcam_tolerant_check off
auto_brightness on
brightness 0
contrast 0
saturation 0
hue 0

roundrobin_frames 1
roundrobin_skip 1
switchfilter off
output_normal off
output_motion off
quality 75
ppm off
locate off
text_right  
webcam_port 8081
webcam_quality 70
webcam_motion off
webcam_maxrate 8
webcam_localhost off
webcam_limit 0
control_port 8080
control_localhost off
control_html_output on
quiet on



 一番上のdaemon onは、デーモン (バックグラウンドプロセスとして動作するプログラム)として動かすための指定です。RaspberryPiを起動すると、自動で動きます。これを有効にするためには、次の編集が必要です。

$ sudo nano /etc/default/motion
# set to 'yes' to enable the motion daemon
start_motion_daemon=yes

 以上により設定を終了し、RaspberryPiを起動すると、親のWindowsマシンのブラウザから、RaspberryPiのIPアドレスを指定して
http://192.168.1.xx:8081
をひらくと、映像が見えるはずです。(ブラウザはFirefoxにかぎるらしい)

LiveCapture2との連携
 従来から、動体検知のために、フリーソフトLiveCapture2をつかってきました。この分野では定番で、最近ではLiveCapture3が開発されたようです。いとも簡単に上記のRaspberryPiによるライブカメラと連携できました。

(1) LiveCapture2をダウンロードインストール。 
(2) LiveCapture2を起動すると、最初の起動時はカメラの設定がされていないためカメラの登録画面が出ます。「ネットワーク上に設置されたネットワークカメラ」を選択>次へ
(3) 接続するカメラの種類を選択してくださいで「LiveCapture2」を選択>次へ
(4) アドレスに http://192.168.1.xx:8081 を指定

これでRaspberryPiのカメラがLiveCapture2につながりました。
 このほかのLiveCapture2の動体検知、ファイルの保存、アップロードなどの設定は、ほかの方の通りです。たとえばこちら

RaspberryPiをケースに(ふたを開けたところ) 軒下にカメラをつるす