超簡単!ラズパイとmotionEyeOSで監視カメラを作ってみる

Linux

昨今物騒なことが多く、街中に限らず監視カメラを見かけることが格段に増えました。自宅にもあればいいなと思うこともあったりしますが、本格的なものを導入しようとするとそれはもう目が眩むような予算が必要なんですよね。

信頼性や高可用性が必要なものなので致し方無いのですが、そこまでのものは要らないんだけど・・・といった状況もあると思うんです。例えば一人暮らしの方が外出中にペットの様子が気になる!とか。

ということで、今日はラズパイとwebカメラを使ってお手軽監視カメラシステムを作ってみます。

検証環境

作業用PC(Windows10 Pro 2004)とRaspberry Pi 4B(メモリ8GB)、webカメラがあればそれでOKです(電源とかSDメモリとかは勿論要りますよ)。

はじめてラズパイを購入される方や買い増しされる方、色々おられると思います。私が過去にお世話になったお店をご紹介しておきますね。

NewLife NewDesing
NewLife NewDesingは和歌山県の小型コンピューターのガレージビルダーです。

念のために注意事項

監視カメラとはいえあくまでも簡易的なものですから耐障害性などは考慮されておらず、高額なシステムとはクオリティも使い勝手も異なるものです。そういった点をご理解頂いたうえ自己責任でご利用ください。

OSを準備する

今回は「motionEyeOS」というカメラ制御に特化したOSを利用します。Raspbian OSなどと違いカメラ制御以外のことはできないOSと思っておいてください。ただし、カメラの制御はものすごく簡単ですので安心してくださいね。

公式ページはgitにあります。

ccrisan/motioneyeos: A Video Surveillance OS For Single-board Computers (github.com)

こちらから最新版をダウンロードします。記事執筆時点ではdev20201026が最新でした。

Releases · ccrisan/motioneyeos (github.com)

上記のリンク先にからプラットフォームに応じたファイルをダウンロードしてください。4Bの場合はmotioneyeos-raspberrypi4-dev20201026.img.xzをダウンロードします。

準備できたらSDメモリをフォーマットします。ツールのおススメはこちらです!

SDメモリカードフォーマッター

SD/SDHC/SDXC用SDメモリカードフォーマッター 5.0
SDメモリカードフォーマッター はSDAが発行したSD File System Specificationに準拠して、SDメモリカード、SDHCメモリカード、およびSDXCメモリカード(以下SD/SDHC/SDXCカードと称します)をフォーマットします。

続いてRaspberry Pi Imagerをダウンロード&インストールします。

Raspberry Pi OS – Raspberry Pi
The Raspberry Pi is a tiny and affordable computer that you can use to learn programming through fun, practical projects. Join the global Raspberry Pi community...

ここまでできたら最初にダウンロードしたOSファイルをダブルクリックします。Raspberry Pi Imagerが起動しますのでSDカードにフォーマットしたSDカードを指定しWRITE→YESの順番でクリックしましょう。

カメラの準備

ネットワークカメラも利用できますが、今回はwebカメラを利用しました。ラズパイの電源を入れる前にUSB端子へ取り付けておきましょう。

今回利用したwebカメラはこちらです。

motionEyeOS起動!

準備ができたらSDカードをラズパイにセットして起動します。

起動時に確認が必要なのは2点です。

  • webカメラが接続されていること
  • LANケーブルが接続されていること

webカメラは後からでも接続できますが、最初からつながっていると設定が楽です(楽というか何もしなくて良い)。また、初回の起動は有線LAN(DHCP)指定です。全て作業用PCから操作しますのでキーボードもマウスも接続しなくて大丈夫です。

電源ON後ほどなくCUIで色々表示されますが、ログインする必要はありません。loginプロンプトの左側、ホスト名を確認します。私の環境では「meye-d02e9bbe」となっていますので、作業用PCのブラウザから http://meye-d02e9bbe でアクセスしましょう。

motionEyeOS-1
相棒ThinkPadを写しております

写すだけで良ければやることはこれだけです。なんだか拍子抜けですね。映像がかなりカクカクしていると思いますが、Frame Rateが初期値で2となっているためですので心配要りません。

では、簡単に設定をいくつか見ておきましょう。左上青い「三」の右側、人の形のマークをクリックするとログイン画面が表示されます。ユーザー名:admin パスワードは空白のままLoginをクリックします。

見た目に変化は無いのですが管理者としてアクセスした状態になっています。先ほどクリックした箇所左横の「三」をクリックすると設定画面が表示されます。

motionEyeOS-2

General Settingsでは管理者・一般ユーザーそれぞれのパスワードやタイムゾーン、ホスト名の設定を行います。あと、通常であればyum updateやapt updateで行うアップデートはSoftware Updateの箇所にあるCheckボタンで、シャットダウンや再起動、コンフィグの書き出し・読み込みもここで行います。

NetworkのタブではWi-Fiのオン・オフ、IPアドレスを含めネットワーク設定を手動で行うManual(Static)か自動で行うAutomatic(DHCP)を選択できます。この手のものは固定IPの方が使い勝手が良いかもしれませんね。

Servicesのタブでは各プロトコルのオン・オフを指定できます(FTP・samba・SSH)。

Video DeviceのタブにFrame Rateのスライドバーがあります。滑らかにしたいので30にして画面上部に現れたオレンジ色の「Apply」をクリックして設定を反映させます。映像がかなりスムーズになりました。

まだまだご説明しきれないくらい機能が充実しているのもmotionEyeOSの特徴です。

motionEyeOS-3

デフォルトではデータの保存先はローカルのSDカードですが、NASと連携させることも可能です。File StorageのStorage DeviceでNetwork Shareを選択し、NASのアドレスなど必要な情報を入力すればOKです。

動画の保存形式はMoviesにあるMovie Formatで変更可能です。他にも動体検知の閾値などを決めるMotion Detectionや動体検知時のアクションを決めるMotion Notificationsなど、無料とは思えないほど機能が充実しているのが嬉しいですね。

メニューが英語表示のみという点は惜しまれますが、たまに見かける妙な機械翻訳された日本語よりは英語のままの方が分かりやすいと思います。

OpenVPNと組み合わせて使ったり、ドライブやツーリングのお供など・・・工夫次第で色々なことができそうです。皆さんのアイディアも是非お聞かせ下さい!

コメント