AIによるトレイルカメラの野生動物識別【第4回】YOLOv8の「学習済モデル」の作成
投稿日:2024年5月10日
運営会社:株式会社 地域環境計画
投稿日 : 2024年05月10日
こんにちは、(株)地域環境計画の印部です。
前回は野生動物13種のデータセットをもとにYOLOv8の「学習済モデル(.Ptファイル)」を作成しました。今回はデータセットの動画を取得した場所とは全く異なる場所で撮影した野生動物の動画に対し、学習したモデルがどの程度、識別能力を発揮するか試してみたいと思います。撮影した動画は関西圏の里山に生息する以下の10種で、MOV形式で保存された10秒間の動画です。
関西圏の里山に生息する野生動物10種の種名とクラス名
種名 | クラス名 |
アライグマ | procyon |
ニホンジカ | cervus |
イノシシ | sus |
タヌキ | nyctereutes |
ハクビシン | paguma |
キツネ | vulpes |
ウサギ | lepus |
アナグマ | meles |
ネコ | feris |
ニホンザル | macaca |
プログラムの実行はGPUを搭載したローカルPCで、「物体検知アプリ」としての体裁を整えるために、以下のようなGUI画面をPythonで作成しました。
信頼度はYOLOの予測のパラメータ「conf」で、物体検出の最小信頼度(閾値)になります。閾値以下で検出されたオブジェクトは無視されます。今回は信頼度85%に設定しました。
最初はアライグマの検知結果です。2個体が検出されています。信頼度85%でほぼ連続検知しており、他の動物との誤検知もしていません。続いて、ニホンジカ、イノシシ、タヌキ、ハクビシンも正確に検知しています。
次に、キツネですが、最初の5秒は正確に「キツネ(vulpes)」と検知できていますが、カメラから遠のくに連れ、「ニホンジカ(cervus)」、「イノシシ(sus)」と誤検知しています。キツネは尾が特徴的ですが、真後ろから撮影した場合に特徴が目立たず、検知が難しくなるのかも知れません。
続いてウサギですが、撮影サンプルの個体の動きがゆっくりしていたこともあり、正確に「ウサギ(lepus)」と認識できています。ウサギは飛び跳ねると検知が難しいですが、夜間に撮影されるときは、じっと草を食べていることが多いので物体検知しやすい哺乳類の一つだと思われます。
アナグマは人間の見た目ではタヌキ(イヌ科)と間違い易いのですが、イタチ科の哺乳類です。物体検知結果をみると、最初は「アナグマ(meles)」として検知していますが、頭を下げて地面の匂いを嗅いでいる間は「テン(martes)」と誤検知しています。ただ、頭をあげて走り出すと再び「アナグマ(meles)と正確に検知できています。アナグマとテンは同じイタチ科なので「なるほど」思いましたが、データ量を増やすことで識別能力が改善するかも知れません。
続いてネコですが、完全にキツネと混同してしまっています。あまり意識していませんでしたが、ネコの多くはキツネと同様、尾が長く垂れていますし、脚も長く、耳も立っているので誤検知に納得がいきます。こちらの誤検知も、学習データ量を増やすことで改善しそうですが、ネコは個体差が大きいので、これからも他の中型哺乳類との誤検知に悩まされそうな気がします。
最後にニホンザルですが、徐々にカメラから遠のいていく動画でも正確に検知できています。
以上、YOLOv8を使った野生動物の物体検知モデルを紹介しました。まだ継続的な改善が必要ですが、実務に役立つレベルのものができたのではないでしょうか。
当社では今回ご紹介した野生動物13種のデータセットを大幅に拡充し、モデルの精度を上げたものを構築中で、2024年度中には皆様のお役に立てるサービスとして提供したいと考えています。
現在においても、トレイルカメラ画像及び動画のAIによる種識別については、委託業務としてもお引き受けしております。ご興味のある方はお問い合わせ下さい。
この記事を書いた人
AIによるトレイルカメラの野生動物識別【第4回】YOLOv8の「学習済モデル」の作成
投稿日:2024年5月10日
AIによるトレイルカメラの野生動物識別【第1回】事前準備と環境設定
投稿日:2024年5月9日
入門:自動撮影カメラ(トレイルカメラ)って、どんなカメラ?~フラッシュ・電源・画像保存・防水機能について~
投稿日:2017年7月28日
キツネによる農作物被害と対策~電気柵やトレイルカメラの活用について
投稿日:2017年6月15日
先頭へ