YOLO11 顔検出システム ― 概要
YOLO11 モデルをベースにした、リアルタイム顔検出を行う Web アプリケーションです。Horizon RDK-X5 プラットフォーム向けに最適化されており、BPU によるハードウェアアクセラレーションに対応しています。
✨ 特長
- 高精度な検出:YOLO11 による最新の顔検出アルゴリズムで、mAP@0.5 は最大 92.5%
- ハードウェアアクセラレーション:Horizon RDK-X5 の BPU 向けに最適化、推論時間 25ms 未満
- Web インターフェース:モダンなレスポンシブデザイン、リアルタイム映像ストリーミング
- ⚙️ 柔軟な設定:パラメータのリアルタイム調整と複数環境へのデプロイに対応
- パフォーマンス監視:FPS、メモリ使用量、各種統計情報を表示
クイックスタート
1. 環境のインストール
# プロジェクトをクローン
git clone <repository-url>
cd yolo/face
# 仮想環境を作成
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_face_detect_bayese_320x320_nv12.bin models/
3. アプリケーションの起動
# そのまま起動
python main.py
# または環境変数で設定をカスタマイズ
FACE_SERVER_PORT=8003 FACE_LOG_LEVEL=INFO python main.py
http://localhost:8003 にアクセスすると Web インターフェースが表示されます。
4. 安全な停止(グレースフルシャットダウン)
# Ctrl+C を押すとアプリケーションを安全に停止できます
# システムは自動的に次の処理を行います:
# - 映像ストリームの生成を停止
# - カメラリソースを解放
# - システムリソースをクリーンアップ
# - Web サービスを終了
技術仕様
| 項目 | RDK-X5 BPU モード | CPU 開発モード |
|---|---|---|
| 推論時間 | 15~25ms | 約 20ms(シミュレーション) |
| 処理フレームレート | 25~30 FPS | 15~20 FPS |
| メモリ使用量 | 約 200MB | 約 150MB |
| 検出精度 | mAP@0.5:92.5% | 機能確認用 |
学習のポイント
- YOLO11 アルゴリズム:最新の物体検出アルゴリズムの原理と実装を学びます。
- エッジ AI へのデプロイ:Horizon BPU によるハードウェアアクセラレーションとモデル最適化を体験します。
- リアルタイム映像処理:OpenCV とマルチスレッドによる映像処理技術を習得します。
- Web サービス開発:Flask フレームワークと REST API の設計を学びます。
- 設定管理:階層型の設定システムと環境変数管理のベストプラクティスを学びます。
- パフォーマンス最適化:BPU 推論の最適化、メモリ管理、システムチューニングを学びます。
- モデルの量子化:INT8 量子化と推論高速化の技術を学びます。
- コンピュータビジョン:DFL 回帰、NMS アルゴリズム、後処理技術を学びます。
- グレースフルシャットダウン:シグナル処理とリソース管理のベストプラクティスを学びます。
詳細ドキュメント
詳しくは
- システムアーキテクチャ ― システム設計と構成要素の詳細
- API インターフェース ― REST API の完全なドキュメント
- 設定管理 ― 設定項目の詳細とデプロイガイド
- モデルの詳細 ― YOLO11 アルゴリズムの原理と BPU 最適化戦略
デプロイと実装
(HumansX サポートより提供) singleDoc#
YOLO11 顔検出システムの実装
情報交換コミュニティ
資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。
ドキュメント