🐗

ITを活用してイノシシ対策をしたい

Qiita - フェズ Advent Calendar 2022 2日目の記事です。
1日目と打って変わって業務の話からだいぶ離れますが、自己紹介兼(一応)Tech記事です。

はじめに

島根県でリモートワークしている、サーバーサイド担当の中川と申します。
2020年のコロナ禍をきっかけにフルリモートに切り替え、お仕事をしながら、時おり実家の畑の面倒を見たりしています。今回はその「畑」の方のお話です。

畑と天敵

畑と言っても、別に農家というワケでもないので、「自分たちで食べる分だけ」な家庭菜園です。
ただ小規模とはいえ、「畑仕事」には、そこそこ大きな意義があると考えています。
畑仕事をする事で、ご近所さんとのコミュニケーションのきっかけにもなりますし、運動するきっかけにもなります。サツマイモの収穫期には家族が集まって収穫する、みたいなイベントも開催できるので、「食べる」ためというよりは「コミュニケーション・プラットフォーム」としての側面が大きいです。
ここで多くは語りませんが、高齢者の多い地域において、この「コミュニケーション・プラットフォーム」というのは、大きな意味を持つと考えています。生き甲斐や健康への動機づけを得られるという側面もありますが、高齢化と過疎化の進む町や村では「配達される新聞やヤクルトが、世帯主の生存確認ツールとしても機能する」というケースは少なくなく、他人との接点というのは非常に重要なハートビートとなります。
しかし、そんな畑という名の「コミュニケーション・プラットフォーム」を荒らす輩がいます。
イノシシ🐗」です。
奴らは無慈悲に畑を荒らします。数ヶ月かけて育てた畑を、見るも無残な姿にします。さすがに心が折れます。「どうせ荒らされるから」と畑仕事をやめたご近所さんを何人も知っています
そして一昨年の秋、家族で集まるサツマイモ収穫祭を目前に、無残に荒らされたサツマイモ畑にショックを受ける母の姿を見て、「これはイカン」とイノシシ対策に乗り出しました。
※コロナ禍に突入していた事もあり、このタイミングで実家でのフルリモートに切り替えました

ITを活用したイノシシ対策

実現したい事は、「イノシシが来たことを検知」「荒らされる前に追い払う」ことです。
後者は自分が畑に向かって「こらー!」と叫んで追い払えば、基本逃げて行ってくれるので、それで良いのですが、問題は前者です。イノシシが来たことをリアルタイムに検知する必要があり、リアルタイムでないと畑は荒らされてしまいます。

イノシシが来たことを検知する

イノシシが来たことを検知する方法は、機械仕掛けや赤外線で検知する方法など、いくつか考えられますが、手っ取り早いのは、やはり「カメラ(映像)での検知」だと考えました。
「何かが動いた」という動体検知だけであれば割と簡単なのですが、部屋の中や都会の玄関先と違って、里山の畑周辺は「飛び回る虫たち」や「風に揺れる草木」など、動体検知において誤検知を誘発しまくる要素であふれています。実際、誤検知しまくります。草木については、マスク処理で草木の場所を除外すれば誤検知をいくらか回避できますが、虫はカメラの前を縦横無尽に飛び回るので、マスク処理では対策出来ません。
故に、検知したものが「イノシシかどうか」を認識する必要があります。
現代の画像認識AIはかなり進んでいて、公開されている学習済みモデルにイノシシ(wild boar)があったので、当初はそれを利用してイノシシが識別できるか検証しました。 しかし、Youtubeなどで公開されているイノシシ動画を使うと驚くほど高精度で認識しましたが、うちの畑においては、イノシシを認識するだけの精度は得られませんでした。 我が家の場合、襲われるのは基本的に夜間で「赤外線の白黒映像」なのと、少ない台数のカメラで広範囲を監視するため広角カメラで撮っており「よほど近づかない限り、被写体が小さい」という点が、既存の学習モデルで今一つ精度が出せない理由かもしれません。 ※もちろん自分のリサーチ不足が原因の可能性も高いです
ラズパイとカメラを複数個所に設置。↑これは設置前
ラズパイとカメラを複数個所に設置。↑これは設置前
夜な夜な現れるイノシシ。牛!?ってくらいデカいのも来る。(↑これは広角ではないIR WebCamで撮影)
夜な夜な現れるイノシシ。牛!?ってくらいデカいのも来る。(↑これは広角ではないIR WebCamで撮影)
ラズパイは、プラスチックボックスに収納。
ラズパイは、プラスチックボックスに収納。
カメラも基板に絶縁コーティング剤を塗って、自作ケースに入れてホットボンドで防水

イノシシの映像データを集めつつ、当面は地道に追い払う

そこで、当面は物体認識は諦め、動体検知のみで対策しつつ、我が家用のイノシシ物体認識(物体検出)モデルを作るべく、画像データを貯めこもう。という戦略に出ました。
畑の周囲複数個所に設置したRaspberry Pi(以下、ラズパイ)+広角赤外線カメラで「24時間監視」と「動体検知で録画と通知」をするサービスを起動しています。このラズパイ+カメラ群のそれぞれが、動体検知きっかけでLINEへ通知を送り、通知メッセージに記載のURLへアクセスすると、検知時の録画データと現在の監視カメラ映像が見られる仕組みになっています。
サツマイモ畑(中央)の周辺を重点的に監視。追払い装置もあり、ちょっとしたタワーディフェンス。(2021年時点の監視体制)
サツマイモ畑(中央)の周辺を重点的に監視。追払い装置もあり、ちょっとしたタワーディフェンス。(2021年時点の監視体制)
監視カメラは多い時で10台。ちょっとした警備室。
監視カメラは多い時で10台。ちょっとした警備室。
監視カメラに写っているのがイノシシであれば、急いで現地に向かって、追い払います。足音を立てて向かって行けば、基本的に「ズダダダダダッ!」という凄まじい足音を立てて逃げて行ってくれます。ただ、こちらに向かってくる事もあるので、安全な場所で「そっちに向かってるぞ!捕まえるぞ」とアピールをする感じです。
追い払ってから、あるいはイノシシではなかった場合は、検知時の録画データを「イノシシ」「イノシシ以外の動物」「人間」「削除」などに振り分けます。この振り分けアプリは、宅内の中央サーバー(Jetson Nano)上にWebアプリとして実装しています。スマホでもPCでも振り分け作業が可能です。また、録画データ自体は、畑の周りに設置したラズパイ上にあるので、これを中央サーバーへ定期的に収集する仕組みにしてあります。中央サーバーに集め、そのサーバーをJetson Nanoで実装しているのは、追々機械学習させることを目的にしている為です。
録画データ。動体検知だとどうしても誤検知が多い
録画データ。動体検知だとどうしても誤検知が多い
イノシシの場合は、教師データ用に振り分け
イノシシの場合は、教師データ用に振り分け

イノシシの行動や生態を監視する

イノシシを検知し通知するだけでなく、その他の検証も行ってきました。
イノシシの出没頻度や周期を測り、追い払い装置や忌避効果の有無を野生のイノシシの反応(嫌がって逃げるか・無視するか)を見て研究し、「雨上がりに来る」「超音波に弱い」「青い光に弱い」等と言われる数多くの通説が、実際問題どうなのかを検証してきました。
毎時の雨量とイノシシの出没時刻の比較図。時刻的には、21時、22時、深夜1時に来る事が多い。
毎時の雨量とイノシシの出没時刻の比較図。時刻的には、21時、22時、深夜1時に来る事が多い。
イノシシの出没カレンダー。収穫期の9月からはほぼ毎日来るように。(2022年はラズパイのメンテで台数を減らした為減少。ハイリスクな場所のみ監視)
イノシシの出没カレンダー。収穫期の9月からはほぼ毎日来るように。(2022年はラズパイのメンテで台数を減らした為減少。ハイリスクな場所のみ監視)
雨量と出没間隔の集計。23時間周期での出没が多く、雨の前後にも多いのはヌタ場関連?
雨量と出没間隔の集計。23時間周期での出没が多く、雨の前後にも多いのはヌタ場関連?
日付をクリックすると、当日の録画一覧を確認でき、振り分けのやり直しも可能
日付をクリックすると、当日の録画一覧を確認でき、振り分けのやり直しも可能
データ量(サンプル数)としてはかなり小規模ですが、出没しそうな(=外出を避けるべき)時間帯やよく現れる場所(=要重点監視)、如実に嫌がる忌避資材やその効果の継続期間など、それなりに傾向を読み取る事ができました。細かい話は割愛しますが、特に追い払い装置や忌避資材に関しては、効果の高いモノは飛び上がって逃げ出すレベルの反応を示しており、それが映像として残っていたため、守りを固めるのに非常に参考になりました。
他にも、イノシシを任意の場所(罠)に誘導する研究なんかも併せて行ってきたので、その辺りも別途どこかで公開できればと考えています。

結果

このような体制に移行してから、約2年間が経過しました。
結果、イノシシ検知アラートのおかげで、2年連続で畑を守り切ることができました
サツマイモ収穫祭も無事執り行われ、母は今日も、ご近所さんと玉ねぎの吊るし方やネギの話で盛り上がっています。

残った課題

ただ、いくつもの課題が残ったままです。
物体認識はまだ出来ていない為、誤検知アラートで真夜中に叩き起こされる、という事が何度もあります。
次のテーマとしては、この2年間で貯めてきたイノシシ映像を教師データとして、我が家の畑に最適化したイノシシ検知モデルを作成し、誤検知の少ない、より正確なイノシシ検知システムの開発を進めようと考えています。(これが出来れば、夜中に無駄に起こされる事が無くなるはず…)

まとめ

イノシシ監視システムを構築して、イノシシたちを追い払い、農作物を守り切りました。
物体認識(物体検出)は後回しにしましたが、モデル生成用の画像データも2年分蓄積できました。
イノシシ対策における、データの収集と整理、仮説・検証するプラットフォームの大枠はできたので、引き続きデータを利活用しながら、イノシシの特性を見極め、畑という名の「コミュニティ・プラットフォーム」を守り続けていきたいと思います。

最後に

とある映画で「データの価値が、石油の価格を超えた」という言葉が出てきました。 実際、データの価値は無限大だと感じています。もちろん、集めるだけでなく整理し活用するところまでが1セットですが「データを見なくても常識的に考えれば分かる」という時代ではなく、個々人のセンスや勘に頼る場面も無くなりはしないでしょうが、今後ますますデータ指向の未来が来るのだろうと考えています。
本記事の通り、実生活において有効利用できるレベルでデータ活用が容易になってきてますし。
また、
業務においては、より高度かつ膨大な量のデータを用いて、情報と商品と売場を科学し、リテール産業の未来を創り出すお手伝いをしています。興味がありましたら、是非お声がけくださいませ。

そういえば、オライリーさんの「データ指向アプリケーションデザイン」本もイノシシですね。
データ指向イノシシ対策!!
データ指向イノシシ対策!!