Skip to main content

reTerminalとPiカメラによる物体検出

はじめに

エッジコンピュータでの物体検出は、コンピュータビジョンにおいて重要な分野となっており、デバイスが自律的に周囲を認識し、反応することを可能にします。EfficientDetは、この分野における最先端の物体検出モデルです。リソース効率を重視して設計されており、精度と計算要求のバランスを取ることで、処理能力が限られたエッジデバイスでの展開に特に適していることが特徴です。EfficientDetに代表されるエッジコンピュータでの物体検出は、スマート監視カメラや自動運転車からモノのインターネット(IoT)デバイスまで、様々なシナリオで応用されています。リアルタイムで複数の物体を識別・位置特定する能力により、エッジコンピューティングシステムの自律性と知能を向上させる重要な要素となっています。

はじめに

このプロジェクトを開始する前に、ここで説明するようにハードウェアとソフトウェアを事前に準備する必要があります。

ハードウェアの準備

ソフトウェアの準備

公式ウェブサイトから Bullseye または Bookworm バージョンの Raspberry Pi 64 bit OS をインストールすることをお勧めします。新しい Raspbian OS をインストールしたい場合は、このガイドに記載されている手順に従ってください。

note

私たちのシリーズの続編として、OpenCV を始めるに関する以前のチュートリアルをぜひご確認ください。このガイドは Bullseye OSBookworm OS 専用です。インストールの依存関係にご注意ください。ここでは2つの異なる方法が説明されています。

TinyML

TinyML は、最小限のリソースでエッジデバイス上で軽量モデルを実行できるようにすることで、機械学習に革命をもたらします。物体検出の文脈において、TinyML の主要フレームワークである TensorFlow Lite は、効率性のためにモデルを最適化し、マイクロコントローラーや組み込みシステムなどのデバイスにデプロイできるようにします。この統合により、物体認識などのタスクのリアルタイムなオンデバイス処理が可能になり、TensorFlow Lite を使用した TinyML は、常時クラウド接続を必要とせずに、スマートセンサー、ウェアラブル、IoT デバイスでのアプリケーションに理想的です。

EfficientDet

EfficientDet は、エッジデバイスでのパフォーマンスに優れた、非常に効率的で正確な物体検出モデルです。Google によって開発された EfficientDet は、モデルの精度と計算効率のバランスを最適化し、エッジデバイスやモバイルプラットフォームなどのリソース制約のある環境でのデプロイに適しています。複合スケーリング手法を活用してモデルパラメータを効率的にスケールアップし、速度を犠牲にすることなくより良い精度を実現します。EfficientDet のアーキテクチャには、画像特徴を効果的に捉えるための特徴ネットワークと、モデルの精度と計算効率のバランスを取るための複合スケーリング手法が含まれています。その成功は、軽量な構造を維持しながら、さまざまな物体検出ベンチマークで印象的なパフォーマンスを達成することにあり、エッジデバイスでのリアルタイム物体検出を必要とするアプリケーションにとって最適な選択肢となっています。

Bullseye OS でコードを実行しましょう

正しいフォルダにいることを確認してください。そうでない場合は

cd Seeed_Python_ReTerminal/samples/Opencv_and_piCam/ObjectDetection

依存関係とEfficientDetモデルをインストールしてください。最初のチュートリアルでこのステップを既に完了している場合は、心配する必要はありません。

sh setup.sh

コードを実行する

python3 detect_mod.py

BookWorm OSでコードを実行してみましょう

  • ステップ1 そのためには仮想環境を作成する必要があります。
note

以前のOSバージョンでは、PythonライブラリはPythonパッケージインストーラーであるpipを使用してシステム全体に直接インストールできました。しかし、Bookwormおよびそれ以降のリリースでは、変更が生じています。インストール中の潜在的な問題を軽減するため、現在はvenvを使用してPython仮想環境にpip経由でパッケージをインストールする必要があります。

これらのコマンドを一つずつ実行すると、仮想環境が構築されます。

mkdir my_project
cd my_project
python -m venv --system-site-packages env
source env/bin/activate
  • Step 2 Next, clone this Git repo onto your Raspberry Pi virtual environmnet like this
git clone https://github.com/Seeed-Studio/Seeed_Python_ReTerminal
  • ステップ 3 次に、私たちのスクリプトを使用して、必要なPythonパッケージを簡単にインストールし、EfficientDet-Liteモデルをダウンロードします。このフォルダに移動してください。
cd Seeed_Python_ReTerminal/samples/Opencv_and_piCam/ObjectDetection_bookworm
  • ステップ 3 スクリプトが必要な依存関係をインストールし、このチュートリアルシリーズ用のTFLiteモデルをダウンロードします。
sh setup.sh

Run the code

python3 detect_picam.py

技術サポート

弊社製品をお選びいただき、ありがとうございます!お客様の製品体験を可能な限りスムーズにするため、さまざまなサポートを提供いたします。異なる好みやニーズに対応するため、複数のコミュニケーションチャネルをご用意しております。

Loading Comments...