YOLO11 物体検出システム ― 概要
YOLO11 モデルをベースにした、図形のリアルタイム検出を行う Web アプリケーションです。Horizon RDK-X5 プラットフォーム向けに最適化されており、BPU によるハードウェアアクセラレーションに対応しています。オレンジ、緑、赤の 3 色の幾何学的形状の物体を検出・識別できます。
✨ 特長
- 複数物体の検出:YOLO11 による高精度な形状検出で、オレンジ、緑、赤の物体に対応
- ハードウェアアクセラレーション:Horizon RDK-X5 の BPU 向けに最適化、推論時間 25ms 未満
- Web インターフェース:モダンなレスポンシブデザイン、リアルタイム映像ストリーミング
- ⚙️ 柔軟な設定:パラメータのリアルタイム調整と複数環境へのデプロイに対応
- パフォーマンス監視:FPS、メモリ使用量、各種統計情報を表示
- 計測機能:座標系表示、距離計測、寸法計測に対応
クイックスタート
1. 環境のインストール
# プロジェクトをクローン
git clone <repository-url>
cd yolo/object
# 仮想環境を作成
python -m venv venv
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
# 依存パッケージをインストール
pip install -r requirements.txt
2. モデルの準備
# モデル用ディレクトリを作成し、モデルファイルを配置
mkdir -p models
# YOLO11 モデルファイルを models ディレクトリにコピー
cp path/to/yolo11n_shape_detect_bayese_320x320_nv12_fix_forward.bin models/
3. アプリケーションの起動
# そのまま起動
python main.py
# または環境変数で設定をカスタマイズ
OBJECT_SERVER_PORT=8004 OBJECT_LOG_LEVEL=INFO python main.py
http://localhost:8004 にアクセスすると Web インターフェースが表示されます。
4. 安全な停止(グレースフルシャットダウン)
# Ctrl+C を押すとアプリケーションを安全に停止できます
# システムは自動的に次の処理を行います:
# - 映像ストリームの生成を停止
# - カメラリソースを解放
# - システムリソースをクリーンアップ
# - Web サービスを終了
学習のポイント
- YOLO11 アルゴリズム:最新の物体検出アルゴリズムの原理と実装を学びます。
- エッジ AI へのデプロイ:Horizon BPU によるハードウェアアクセラレーションとモデル最適化を体験します。
- リアルタイム映像処理:OpenCV とマルチスレッドによる映像処理技術を習得します。
- Web サービス開発:Flask フレームワークと REST API の設計を学びます。
- 設定管理:階層型の設定システムと環境変数管理のベストプラクティスを学びます。
- パフォーマンス最適化:BPU 推論の最適化、メモリ管理、システムチューニングを学びます。
- モデルの量子化:INT8 量子化と推論高速化の技術を学びます。
- コンピュータビジョン:DFL 回帰、NMS アルゴリズム、後処理技術を学びます。
- 計測アルゴリズム:座標変換、距離計算、寸法計測を学びます。
検出カテゴリ
本システムは、次の 3 色の幾何学的形状の物体を検出できます。
- オレンジ(Orange):検出枠の色 ― オレンジ
[0, 165, 255] - 緑(Green):検出枠の色 ― 緑
[0, 255, 0] - 赤(Red):検出枠の色 ― 赤
[0, 0, 255]
詳細ドキュメント
詳しくは
- システムアーキテクチャ ― システム設計と構成要素の詳細
- API インターフェース ― REST API と WebSocket の完全なドキュメント
- 設定管理 ― 設定項目の詳細とデプロイガイド
- モデルのデプロイ詳細 ― YOLO11 アルゴリズムの原理と BPU 最適化戦略
デプロイと実装
(HumansX サポートより提供) singleDoc#
YOLO11 物体検出システムの実装
情報交換コミュニティ
資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。
ドキュメント