日記

MotionというLinux用のWebカメラ動体検知ソフトが凄い

年末年始で家を空けるから、ってわけではないですが、防犯対策としてのライブカメラに興味があったので、最近ZoneMinderと格闘しておりました。

ZoneMinderというのはWebカメラを使って動体検知ができるソフトらしく、Linux+動体検知+高機能というくくりで調べると1番に出てくるようなソフトです。

D945GCLF2Qcam Connect QVP-61を接続し、USBの外付けHDDにUbuntu 8.10をインストールし(内蔵HDDには次期自宅サーバのためにCentOS5.2をちょっと特殊な設定でインストールしてあるので)、ZoneMinderを動かす、という構成でトライしていたのですが、どうやってもZoneMinderのブラウザで見る管理画面にWebカメラの映像が映らないんです。

xawtvとかだと何の問題もなく映るんですけどね。
ffmpegの時点でWebカメラの映像が見れないので、ZoneMinderというよりはffmpegの問題なのかもしれません。
Ubuntu 8.10がダメならFedora 10だ!ということで試してみましたが、xawtvでもエラーで映らないし、他のアプリケーションでも一瞬だけ映って止まるとかで、全然ダメでした。
(ちなみに最近のFedoraとUbuntuはデフォルトの見た目が単なる色違いに見えるほど似てますが、速度や安定性や完成度はUbuntuの方が断然上ですね。プロプライエタリ臭をできるだけ排除したいというのであればFedoraを選ぶ意味もありますが。)

ZoneMinderを使えてるというネット上の情報はどれも、ZoneMinder専用のLiveCDかFedora Core 3か、Ubuntu 7.04などの古いバージョン上でのことなので、ZoneMinderはあまりメンテナンスされてないのかもしれません。

と言うことでZoneMinderを利用するのはあきらめて(無理してor妥協して構築しても、運用時に面倒なことになることが経験上多いので)、他の良いソフトがないか調べて見たのですが、ライブカメラ+動体検知となるとあまり情報がないようで。

ぼーっとしながら、勝手知ったるCentOS5.2をGUI付きで結局インストールしなおしてしまったのですが、何か無いかなと思い、rpmforgeリポジトリを追加してyum search webcamとかやってみたら、見慣れたソフト名の中にmotionという見慣れないソフト名が。

名前がmotionとシンプルなのでシンプルな機能のソフトかなと思うと同時に、motionということは動体検知してくれそうという期待もあったので、とりあえずyum install motionとやってみたら、依存関係で入るソフトがものすごくたくさんあり、これは高機能かもという期待が。

でまぁ、結局motionというソフトは完璧に動体検知してくれて、使いやすいし、安定度も高いしで、めでたしめでたしだったのですが、ソフト名があまりにも一般的な単語なので、情報を調べようと思ってもググりづらいです。
というかそもそも絶対的に情報が少ない感じです。
検索キーワードにmotionじゃなくてmotion.confとすると幸せになれるかもしれません。

設定ファイルもデフォルトのままでとりあえず動作するところがすばらしいです。
動体検知したときに画像が保存されるのですが、保存先がデフォルトでは
/usr/local/apache2/htdocs
になってるので、そこを変えるだけでも十分使えるようになります。

保存ファイル名にスラッシュを含めるとちゃんと自動的にディレクトリを掘ってくれるので、年・月・日などでディレクトリを分ける使い方も他の特別な設定を必要としません。すばらしい。

あと、動体検知して画像を保存したタイミングで任意のプログラムを実行することもできるので(画像ファイルのパスをパラメータとして送信できます)、うちではPerlで画像を携帯にメール送信するスクリプトを組んで、それを実行するようにしています。
ただそのままメール送信すると、動体がWebカメラに写ってる間は秒間何回も画像の保存が発生するわけで、メールを送りまくることになってしまうので、一応前回送信から1分以上たたないと送信しないようにしています。

ただ、暗くなってくると何かの拍子にWebカメラの自動調節機能が働くからかもしれませんが、夜は3時間に1回くらい誤検出されてしまいます。
秒間10コマの撮影にしてますが、誤検出のときは2,3コマ分しか画像が保存されないので(人間が映ると普通は2,3コマ分の画像じゃ済まないので)、自作のスクリプトの方で秒間5コマ以上検知されないとメール送信しないとかすればいいのですが、面倒だし頻度も少ないし画像を見るだけで誤検出と分かる(真っ暗に映るはずなのに、妙に白いとか)ので放置です。

コメントを残す

メールアドレスが公開されることはありません。



※画像をクリックして別の画像を表示

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください