UbuntuServer10.04でWEBカメラを使った監視システムの導入

前書き

タイトルは釣りです。
私は途中で諦めたので、割と適当な導入方法しか書いてません。
私の環境では、複数台のカメラを同時に使うことができませんでした。*1
全く同じ機種のカメラを2つ使ったからかもしれません。
使ったカメラはUVC対応のBUFFALO BSW3KM01HSV。あきばお〜で1個800円。

ZoneMinderについて

複数のカメラをつないで、監視システムを作れます。
何らかの動作を検知して、メールでお知らせしてくれるらしいです。

魅力的な特徴
  • ビデオカメラ/ウェブカメラ/ネットワークカメラをサポート
  • 複数のカメラを使用可能
  • カメラごとに動作検出の感度を設定可能
  • WEBインターフェースで簡単に設定ができる
  • ユーザーごとのアクセス権の設定が可能
割とどうでもいい特徴

ウェブカメラが動作するかどうかの確認

なんでもいいからウェブカメラを利用したアプリをインストールしてウェブカメラの動作確認を行う。
インストール

sudo apt-get install cheese

起動

cheese

cheeseを起動するとウェブカメラの映像がリアルタイムで表示される。
表示されなかったらカメラが認識されていない。インストールした直後に起動する場合、カメラを抜き差ししたり、マシンを再起動したらできた。
カメラの切り替えもできる。

導入

Permission deniedと言われたら、sudoしましょう。

sudo apt-get install zoneminder
  • /etc/zm/apache.confのaliasを/etc/apache2/conf.d/に作る。名前はなんでもいい。
  • chmod 4755 /usr/bin/zmfix
  • zmfix -a
  • chown www-data.www-data /usr/share/zoneminder/temp
  • /etc/sysctl.confに以下の2行を追加し、sysctl -p
kernel.shmall = 268435456
kernel.shmmax = 268435456

って、以下のページに書いてありました。
http://debianj.com/ubuntu/webcam/zoneminder.html
以上の操作で使えるようになるはずです。

設定

  1. http://localhost/zmにアクセス
  2. Add New Monitorをクリックして、いろいろ設定してSaveする




ほとんどデフォルトのままです。とりあえずは空白の項目を埋めてSaveするだけでいい。

設定する際の注意点

  • /dev/video0の最後の数字を忘れないように
  • FPSが大きいと重くなります
  • Device FormatとCapture Pallete の設定が間違ってると、上手く動かない*2

とらぶる!しゅーてぃんぐ☆

ウェブカメラの詳細情報を得る

Device Format、Capture Palleteの設定、解像度の設定は、以下のコマンドがヒントになります。

zmu -q -d/dev/video0 -v -V1

私の環境では、Format: PAL、Pallet: YUYVとか書いてあったので、Device Format、Capture Palleteを、PAL, YUYVにしたら動いた。
ネットで質問するときも、こういう情報は最初に示しましょう。

ログの場所
  • /tmp/zmなんとか
  • /var/log/syslog
  • /var/log/apache2/error.log

など。

ZoneMinderを無効にする

一時的に無効にする
sudo /etc/init.d/zoneminder stop

stopじゃなくてstartにすれば、起動します。

恒久的に無効にする
sudo rcconf -off zoneminder

rcconfが入ってないならsudo apt-get install rcconfしてください。

私のメモ

こんなメモが見つかりました。一応貼っておきます。

こんな風に言われた
07/21/10 06:28:51.123180 zmdc[1506].ERR ['zmc -d /dev/video0' exited abnormally, exit status 255]
共有メモリのアクセス権の問題だとおもう。
再起動したらこの問題は解決した。

そしてこんな風になった
07/21/10 06:28:51.123180 zmdc[1506].ERR ['zmc -d /dev/video0' exited abnormally, exit status 6]

WEB上から設定を変更
formatをPAL,YUYVにしたらできた

*1:1台なら問題なし。2台目が表示されない。

*2:いっぱい選択肢があるけど、有限個だから、全部試せば必ず正解にたどり着く!詳しくはとらぶる!しゅーてぃんぐ☆参照