LoginSignup
264
215

More than 3 years have passed since last update.

ラズパイやディープラーニングを用いてハムスターの行動を監視するシステムを作ってみた【概要】

Last updated at Posted at 2020-11-04

動機

ペットのハムスターの活動の様子を知りたい。

具体的には..

  • 外出時、ハムスターがちゃんと動いていることを知って安心したい。
  • 夜行性のため、飼い主が寝ている時間帯にどれだけ動いていたかを知りたい。

→ 手持ちのラズパイに物体検出ディープラーニングモデルを埋め込み、監視システムを作成。

ラズパイカメラをスマホアームで固定して飼育ケージをストリーミング撮影しています。

できたもの

3つの機能により、ハムスターの活動の様子を見守れるようにしています🐹
Githubにコード一式をまとめています(実装の詳細は作り方の記事にて解説)。

1. 飼育ケージをラズパイカメラで撮影しストリーミング
🐹が巣穴から出てきてカメラに映ったら物体検出モデルが働いてくれます(↓Gif)
ezgif.com-gif-maker.gif
  
使ったもの: Python(Flask), OpenCV, PyTorch, YOLOv5
※ 夜行性なので、暗がりでも撮影できる赤外線カメラを導入。全体的に紫がかってます。
※ かなりカクカクしていますが、行動把握や↓のLINE通知目的ならこれで十分と判断..

2. ハムスターを検出したらLINE通知
🐹が映ってるときに常に通知すると大変なことになるので、10分おきに判定をかけています。

使ったもの: LINE Notify API

3. BIツールによる活動時間帯の可視化
なんとなくですがいつ動いてたか、がわかります。

※ 回し車(wheel)にどのくらい滞在してたかも可視化したいのですが、現状あまりうまく行ってないですね..
使ったもの: GCP(IoTCore, Pub/Sub, Cloud Functions, BigQuery), Googleデータポータル

システム構成図

ごちゃごちゃしてますが全体像はこんな感じです。
※ 最初はObject Detection APIでモデルを作成したのですが、後にYOLOv5に乗り換えました。
hampi.png
※ 2020/11/5 GCPのフローにおいてCloud FunctionsとBigQueryの順番が逆になっていたのを修正

準備したもの&協力者

作り方

それぞれ長くなりそうなので各記事で紹介します(近日投稿予定)

264
215
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
264
215