
Raspberry Piとカメラモジュールを使った野良猫の自動検知システムが、個人のDIYプロジェクトとして公開された。インドのソフトウェアエンジニアPartha Roy氏が構築したシステムは、定期的に撮影した画像をAIモデルで解析し、猫を検知するとTelegramで通知を送る仕組みだ。Roy氏は2025年11月9日、技術ブログStackademicで製作過程の詳細を公開した。
不規則な来訪時間への対応策
Roy氏は室内で飼っている茶トラ猫Pikaの食べ残しを玄関先に置き、訪れる野良のキジトラ猫に与えていた。しかし野良猫の来訪時間が不規則で、仕事中や会議中には対応できないという課題があった。室内飼い猫への感染リスクを考慮すると野良猫を家に入れることもできない。そこでRoy氏は、使われずにいたRaspberry Pi 3B+を活用してこの問題を解決することにした。
システムの基本構成は、Raspberry Pi Camera Moduleで数秒ごとに静止画を撮影し、YOLOv8 ONNXモデルでローカル処理して猫の有無を判定、検知時にTelegram APIで通知を送るというものだ。動画ストリーミングではなく静止画を採用したのは、Raspberry Pi 3B+の処理能力が限られていたためだという。
使用した機材は、Raspberry Pi 3B+(RAM 1GB)、Raspberry Pi Camera Module、フラッシュストレージ、メモリーカードリーダー、モバイルバッテリー。ソフトウェアはYOLOv8 ONNXモデル(物体検知)、Telegram API、Pythonスケジューラーを使用した。カメラモジュールについてRoy氏は「インドで予算内の高コスパなPiカメラを探しているなら、350ルピー(約700円)のこのRaspberry Pi Cameraボードモデルが最良の選択だ」と述べている。
Roy氏は当初、TensorFlow LiteモデルとOpenCV Haar Cascadeをローカルで試したが、Raspberry Pi 3B+では動作が不安定だった。そこでより軽量なYOLOv8 ONNXを採用し、完全にオフラインで動作する構成にした。YOLOv8は物体検知用のAIモデルで、リアルタイムで画像内の物体を認識できる。ONNX(Open Neural Network Exchange)は異なるAIフレームワーク間で互換性を持つ標準フォーマットで、Raspberry Piのような低スペックデバイスでも効率的に動作する。
ただし画質や照明条件が理想的でなく、軽量モデルのため誤検知や見逃しが発生した。このためRoy氏は、より大きなモデルをクラウドサービスでホストし、REST/gRPC経由で利用する方式への移行を検討している。現時点ではPerplexityのsonar-proモデルを使用し、画像は一時的なクラウドストレージにアップロードしている。
システムは玄関先のドライフードコンテナ内に設置され、紙で包んで隠した。カメラは垂直マウントがなかったため上下逆さまに設置し、後からプログラムで画像を反転させた。モバイルバッテリーで駆動することで、屋外用電源が不要なワイヤレス構成を実現している。テストには室内飼い猫のPikaが協力し、カメラの前を何度も通過してモデルの精度を確認した。
Pythonスケジューラーで1分ごとに撮影・解析を実行し、猫を検知するとTelegramに画像と説明文、処理時間を含む通知を送信する。1週間の運用後、Roy氏は野良猫の来訪時間をおおよそ予測できるようになったという。
Roy氏はプロジェクトから得た教訓として「必要性が創造性を駆動する」「シンプルに保つ」「不完全なセットアップを受け入れる」「データがストーリーを語る」などを挙げている。本格的な製品レベルのシステムではないが、野良猫を空腹にさせないという1つの目的を果たすには十分だったと振り返っている。

関連情報
How A Stray Cat Inspired Me To Build A Cat Detection System(Stackademic)

