Ubuntu でモーション検出ウェブカメラを設定する方法
Motion は、通常のウェブカメラを監視カメラに変えることができる便利なツールです。これは、ウェブカメラからの信号を監視し、動きを検出するとスクリーンショットやビデオを撮影することで実現します。ここでは、Ubuntu Linux で Motion をインストールして、動き検出ウェブカメラを設定する方法を説明します。
モーションサーバーのインストール
Motion は、Ubuntu の公式リポジトリにデフォルトで含まれています。つまり、apt パッケージ マネージャーを使用してこのプログラムをインストールできます。
プログラムのヘルプ プロンプトを開いて、Motion サーバーが正常に動作していることを確認します。
システムのモーションの設定
Motion の設定を始める前に、元のファイルのクリーンなバックアップが取れるように、設定ファイルをホーム フォルダにコピーする必要があります。ターミナルを開いて、設定ファイルをホーム フォルダにコピーします。
お気に入りのテキスト エディターを使用して元の構成を開きます。
Motion サーバーで実行できる最も簡単な調整の 1 つは、画像とビデオの出力品質を変更することです。デフォルトでは、サーバーの解像度は 640×480 に設定されていますが、これは最新の Web カメラには小さすぎる可能性があります。
これを変更するには、新しいターミナル セッションで次のコマンドを実行して、カメラで使用可能な解像度を確認します。
モーション設定に戻り、「画像処理」カテゴリまで下にスクロールして、width
と の両方のheight
変数を探します。
必要な解像度に適切な値を入力します。私の場合は、Motion を 1280×720 で実行したいので、幅に「1280」、高さに「720」と入力します。
framerate
ビデオをキャプチャするフレームレートの値を設定します。デフォルトでは「15」に設定されていますが、ディスク容量を節約するために値を下げることができます。
「画像出力」カテゴリまで下にスクロールし、picture_output
変数の値を「オン」に設定します。これにより、Motion はウェブカメラから画像とビデオの両方をキャプチャできるようになります。
デフォルトの保存場所の変更
Motion サーバーで実行できるもう 1 つの調整は、データの保存場所を変更することです。これは、キャプチャしたビデオや画像をマウントされたリモート ディレクトリまたは Dropbox などのクラウド ストレージ サービスにエクスポートする場合に役立ちます。
まず、データを保存するディレクトリに移動する、またはディレクトリを作成します。
ディレクトリの所有権を「motion:adm」に設定します。
ディレクトリへのパス全体がすべてのユーザーから読み取り可能であることを確認してください。
Motion 設定に戻り、target_dir
変数を探して、その値をディレクトリのフルパスに設定します。
モーション検出設定の調整
Motion は、現在のビデオ フィードとその直前のビデオ フィードの違いを調べることで機能します。プログラムが 2 つのフィードの間に十分な違いを見つけた場合、それを「動き」として分類し、イベントのビデオを記録します。
現在、Motion では 1500 ピクセルの差があれば「動き」として分類できると想定しています。これにより、ほとんどのウェブカメラで動きの検出が容易になりますが、高解像度のカメラでは感度が高すぎる可能性があります。
これを抑えるには、「モーション検出」カテゴリに移動して、threshold
変数の値を上げます。Motion がウェブカメラ フィードから不要な小さな動きを記録するのを防ぐには、5500 ピクセルで十分であることがわかりました。
変数を追加して、Motion が「動き」と見なす差異に上限を設定することもできますthreshold_maximum
。これは、Web カメラが混雑したエリアを監視しており、アクティビティが少ないときにのみ実行したい場合に便利です。
threshold
ウェブカメラの との値がわからない場合はthreshold_maximum
、Motion で調整できます。そのためには、変数を追加しthreshold_tune
て「オン」に設定します。
最後に、動きを検出する前後の瞬間も記録するように Motion を設定できます。これを行うには、pre_capture
およびpost_capture
変数に移動し、保存する追加フレームの数に値を設定します。
モーションウェブインターフェースを有効にする
Motion サーバーには、Web カメラをリモートで監視できる Web インターフェイスが付属しています。これを有効にするには、構成の「Webcontrol」セクションに移動し、変数の値をwebcontrol_localhost
「off」に設定します。
「ライブ ストリーム」セクションまで下にスクロールし、の値をstream_localhost
「オフ」に設定します。
保存したキャプチャをリモートで管理する
先ほども述べたように、どこからでもアクセスできるように、画像を Dropbox フォルダに保存するのが最善の方法です。ただし、画像を自分のファイル サーバー (FTP 経由) にアップロードしたい場合は、次のコマンドを使用してwput
画像をアップロードできます。
Motion サーバーの設定を開き、ファイルの最後に次のコード行を挿入します。
モーションサーバーの起動とテスト
必ず Motion 構成ファイルを保存し、次のコマンドを実行してサーバーを起動します。
Web ブラウザを開き、マシンの IP アドレスの後に「:8080」を入力して、サーバーが正常に動作していることを確認します。
これにより、Web カメラからの現在のビデオ フィードと、サーバーに対する追加のアクションを含むメニューを表示する Web ページが表示されます。たとえば、[アクション] -> [スナップショット]をクリックすると、Web カメラから静止画像をキャプチャできます。
カメラの前に物体を通過させ、target_dir
ディレクトリの内容を確認して、Motion がウェブカメラからの動きを検出して記録するかどうかをテストします。
メディア プレーヤーまたは Web ブラウザーから開くことができるライブ ストリームもあります。これにアクセスするには、マシンの IP アドレスの後に「:8081」と入力します。
通常のウェブカメラをモーション検出システムに変えることは、Linux のカメラでできることの 1 つにすぎません。今すぐインストールして試すことができる、Linux 向けの最高のウェブカメラ アプリについて詳しく学んでください。
画像クレジット: Bermix Studio (Unsplash経由)。すべての変更とスクリーンショットはRamses Redによるものです。
コメントを残す