農作物等の鳥獣被害に対して,OpenCVを用いて動体検知をして,散水機等で追い払うシステムを作れないかなと考え,図1の構成にて,プロトタイプを作ってみた。
図1 鳥獣ジャマープロトタイプ
①ノートパソコン or Raspberry Pi3:Python,OpenCVにて画像処理,シリアル通信を行い,動体検知,動体を脅かすモノの操作を行う
②Arduino uno rev3:シリアル通信にて送られてきたメールに従い,トリガの操作を行う。プロトタイプでは,サーボモータ(SG90)を操作し,スポンジボールガンの引き金を引く
③USBカメラ:動体を取得するためのカメラとなる
④動体を脅かすモノ:プロトタイプでは,サーボモータ(SG90)にて,スポンジボールガンを放つ。(最終的には,散水機等を作成し,鳥獣に水をかけ脅かすなどをしたいと考えている)
⑤動体:デモでは,熊のぬいぐるみを動かしているが,最終的には,あらゆる鳥獣,虫等を学習データを用いて検知したいと考えている。
鳥獣ジャマーのプロトタイプの動作状況は,動画1の鳥獣ジャマープロトタイプ実験動画のようになっている。
動画1 鳥獣ジャマープロトタイプ実験動画
今回開発したプログラムは,Pythonで作成した。
Pythonでは,OpenCVを使用し,以下のフローにて処理を行っている。
- USBカメラの画像を取得
- 動体の輪郭を抽出
- 輪郭の面積が一番大きく,一定以上の大きさ場合,輪郭の重心を表示
- ターゲットの中心の赤枠内に,輪郭の重心が表示されたのをトリガとし,スポンジボールを発射する
【成果】
結果として,動画にあるように,動体を検知し,スポンジボールを当てることができた。
【今後の作業】
今後は,以下の点を改善したいと考えている。
- 自宅の庭で,散水装置を作り,プロトタイプと組み合わせる
- 猫を鳥獣対象とし,猫の画像にて学習を行い,猫の場合のみ散水する
【その他】
今年度のMaker Faireはこの内容と昨年度展示した魚キャッチセンサーの無線版,植物生育診断装置を改良したもので申請してみたいと考えてます。
※5/31に申請が通りました(*^▽^*)
MFTokyo2018に向けてしっかりと作りこんでいきたいと思います。