画像処理とか機械学習とか

画像処理や機械学習関連の事について気まぐれで書いていきます。歩行者検出関係が多いと思います。ハリネズミもたまに出現します。

赤外線カメラとRaspberry pi 3を用いたハリネズミ見守りシステムの構築

以前から紹介しているハリネズミですが、夜行性ということもあり夜どの様な行動をしているのか気になっていました。また、昼間居ない時の様子も外からチェックできれば良いなと思い、本システムを構築しようと思いました。

f:id:hiro2o2:20160322114154j:plain

この子の管理システムを構築していきます。

  • 必要な物

無線LAN環境
Raspberry pi 3

Raspberry pi 3を使う理由は最新版で無線LANBluetooth標準装備になったため、非常に使いやすくなったのが一つと、CPUが64bitに対応し動作クロックも1.2GHzになり、高性能になったのが主な理由です。


赤外線カメラ

 Raspberry pi用の赤外線カメラモジュールは安くて4000円代後半くらいでしたので、上記の1200円程の赤外線カメラを試しに購入してみたところ、USBで繋ぐだけで認識しましたので、上記のカメラをおすすめします。

マイクロSDカード

 SDカードは何でも良いですが、今回は32GBのものを使用します。

主にこの3つが必要となります。その他SSHで接続できるまでにUSBキーボードとUSBマウスが必要となります。

 

  •  SDカードへOSの書き込み

www.raspberrypi.org

 

 今回はRaspbianという、Raspberry pi 公式サポートのOSを使用しました。
上記サイトから、Raspbianをダウンロードし、Windowsの場合、下記URLで入手できる
Win32DiskImagerというソフトウェアを使用し、SDカードへダウンロードしてきたOSを書き込みます。
 私の場合、言語の設定を弄ってたりすると途中で何度か起動できなくなったので何度か書き込みを繰り返してます。

https://www.raspberrypi.org/documentation/installation/installing-images/windows.md


 

  •  Raspberry pi の起動

 マイクロSDカードスロットへOSを書き込んだマイクロSDカードを差し込みます。
そして、USBキーボード、USBマウスを接続し、電源に接続します。
電源は、5Vで2.5Aの出力のものが推奨されているみたいです。私はiPhoneの電源アダプターとUSBケーブルで接続して動作しています。出力アンペアが低すぎると動作が不安定になります。


 起動を行うと、特に何もせずにGUIの画面が表示されます。

まず、パーテーションの設定を変更します。標準ではOSがインストールされている部分が60MBしか無いため、このままsudo apt-get updateすると容量不足でエラーとなり、私の場合は起動出来なくなりました。

Raspberry Piでパーティションを拡張する – UbuntuによるEco Linuxサーバ構築記
上記リンクのサイトの通りにコマンドを入力するだけで、パーテーションの設定変更が行えました。

その後

$ sudo apt-get update
$ sudo apt-get upgrade

を行いましょう。

 

次に言語を日本語にしたい場合は、まずネットに接続の設定をした後、ターミナルを使って

$ apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname

を入力して日本語フォントを導入して下さい。

その後、左上のタブから設定を開き、GUIで言語の設定を変更した方が良いでしょう。
(一度ターミナルから変更しようとした際に起動不可となりました。)

 

  • Motionのインストール

$ sudo apt-get install motion

のコマンドを入力すると監視カメラのアプリケーションがインストールできます。
このアプリはかなり高性能で、動体検知、画像の撮影、動画の作成、ネットワークからのリアルタイム閲覧など様々な機能があるため、使いやすいです。

設定ファイルをいじる為にVimなどのテキストエディタをインストールします。

$ sudo apt-get install vim

$ sudo vim /etc/motion/motion.conf

上記コマンドでVimをインストールし、Motionの設定ファイルを開きます。
Vimは何かキーを入力すると入力モードになり、編集が可能となり、保存したい場合はEscキーを押して:wqを入力してエンターを押して下さい

そのままの設定だと解像度が低いのと、画像がキャプチャされてしまうので、容量不足にならないようにキャプチャのoff、ネットワークからのアクセスの許可を行います。

width 640
height 480framerate 30
output_normal off
webcam_localhost off
control_localhost off

この辺の設定を上記の様に変更して下さい。バージョンによって名前が違うかもしれませんが、似たやつを変更すればokです。変更後、Escキーを押して:wq入力後エンターで保存して終了出来ます。

$ sudo service motion start

を入力するとmotionを起動出来ます。

$ ifconfig

でRaspberry pi に割り振られたipアドレスを確認して下さい。
恐らく、192.168.1.* で*に何か他の数字が入っていると思います。ブラウザを開き、http://192.168.1.*:8081/
を開くと、カメラの映像を確認できます。

f:id:hiro2o2:20160322113739p:plain

こちらが、実際に動作させた画面になります。
iPhoneでも見れますので、便利です。また、外からアクセスする場合は、Raspberry pi のipアドレスの固定とポートの開放が必要ですので、そちらはまた紹介したいと思います。

今後は温度センサやArduinoとの連携をしていけたらなぁと思います。