Ultralytics YOLO11を使用したStreamlitアプリケーションでのライブ推論
はじめに
Streamlitを使用すると、インタラクティブなウェブアプリケーションを簡単に構築およびデプロイできます。これをUltralytics YOLO11と組み合わせることで、ブラウザ上で直接リアルタイムの物体検出と分析が可能になります。YOLO11の高い精度と速度は、ライブビデオストリームのシームレスなパフォーマンスを保証し、セキュリティ、小売などのアプリケーションに最適です。
見る: リアルタイムのためのUltralyticsでのStreamlitの使用方法 コンピュータビジョン ブラウザ内
水産養殖 | 畜産業 |
---|---|
![]() |
![]() |
Ultralytics YOLO11を使用した魚の検出 | Ultralytics YOLO11を使用した動物検出 |
ライブ推論の利点
- シームレスなリアルタイムオブジェクト検出: StreamlitとYOLO11を組み合わせることで、Webカメラのフィードから直接リアルタイムのオブジェクト検出が可能になります。これにより、即時の分析と洞察が可能になり、即座のフィードバックを必要とするアプリケーションに最適です。
- ユーザーフレンドリーなデプロイメント: Streamlitのインタラクティブなインターフェースにより、広範な技術知識がなくてもアプリケーションを簡単にデプロイして使用できます。ユーザーは簡単なクリックでライブ推論を開始でき、アクセシビリティとユーザビリティが向上します。
- Efficient Resource Utilization: YOLO11の最適化されたアルゴリズムは、最小限の計算リソースで高速処理を保証します。この効率性により、標準的なハードウェアでもスムーズで信頼性の高いウェブカメラ推論が可能になり、より多くの人々が高度なコンピュータビジョンを利用できるようになります。
Streamlitアプリケーションコード
Ultralytics インストール
アプリケーションの構築を開始する前に、Ultralytics Pythonパッケージがインストールされていることを確認してください。インストールするには、pip install ultralyticsコマンドを使用します。
Ultralytics YOLOとStreamlitを使用した推論
yolo solutions inference
yolo solutions inference model="path/to/model.pt"
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
これにより、StreamlitアプリケーションがデフォルトのWebブラウザで起動します。メインタイトル、サブタイトル、および構成オプションを備えたサイドバーが表示されます。目的のYOLO11モデルを選択し、信頼度とNMSしきい値を設定し、「開始」ボタンをクリックして、リアルタイムの物体検出を開始します。
仕組み
Streamlitアプリケーションは、内部的にはUltralytics solutionsモジュールを使用してインタラクティブなインターフェースを構築します。推論を開始すると、アプリケーションは以下の処理を行います。
- Webカメラまたはアップロードされたビデオファイルからビデオをキャプチャします。
- YOLO11モデルを介して各フレームを処理します
- 指定した信頼度と IoU の閾値で物体検出を適用します。
- オリジナルフレームとアノテーション付きフレームの両方をリアルタイムで表示します。
- 選択した場合、オプションでオブジェクト追跡を有効にします
このアプリケーションは、モデルパラメータを調整し、いつでも推論を開始/停止するためのコントロールを備えた、クリーンでユーザーフレンドリーなインターフェースを提供します。
結論
このガイドに従うことで、StreamlitとUltralytics YOLO11を使用して、リアルタイムの物体検出アプリケーションを正常に作成できました。このアプリケーションを使用すると、ユーザーフレンドリーなインターフェースと、いつでもビデオストリームを停止できる機能を備え、Webカメラを通して物体を検出するYOLO11のパワーを体験できます。
さらに機能を強化するには、ビデオストリームの録画、アノテーション付きフレームの保存、または他のコンピュータビジョンライブラリとの統合などの機能を追加することを検討してください。
コミュニティと意見を共有する
コミュニティと連携して、詳細を学び、問題を解決し、プロジェクトを共有しましょう。
ヘルプとサポートの場所
- GitHub Issues: Ultralytics GitHubリポジトリにアクセスして、質問をしたり、バグを報告したり、機能を提案したりしてください。
- Ultralytics Discordサーバー: Ultralytics Discordサーバーに参加して、他のユーザーや開発者と繋がり、サポートを受けたり、知識を共有したり、アイデアを出し合ったりしましょう。
公式ドキュメント
- Ultralytics YOLO11ドキュメント: さまざまなコンピュータビジョンタスクやプロジェクトに関する包括的なガイドと洞察については、公式YOLO11ドキュメントを参照してください。
よくある質問
StreamlitとUltralytics YOLO11を使用して、リアルタイムオブジェクト検出アプリケーションをセットアップするにはどうすればよいですか?
Streamlit と Ultralytics YOLO11 を使用したリアルタイム物体検出アプリケーションのセットアップは簡単です。まず、Ultralytics python パッケージがインストールされていることを確認します:
pip install ultralytics
次に、基本的なStreamlitアプリケーションを作成して、ライブ推論を実行できます。
Streamlitアプリケーション
from ultralytics import solutions
inf = solutions.Inference(
model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, YOLOv10
)
inf.inference()
# Make sure to run the file using command `streamlit run path/to/file.py`
yolo solutions inference
実践的なセットアップの詳細については、ドキュメントのStreamlitアプリケーションコードセクションを参照してください。
リアルタイム物体検出にStreamlitとUltralytics YOLO11を組み合わせて使用する主な利点は何ですか?
Streamlit で Ultralytics YOLO11 を使用してリアルタイム・オブジェクト検出を行うと、いくつかの利点があります。
- シームレスなリアルタイム検出: ウェブカメラのフィードから直接、高精度なリアルタイム物体検出を実現します。
- ユーザーフレンドリーなインターフェース: Streamlitの直感的なインターフェースにより、広範な技術知識がなくても簡単に使用およびデプロイできます。
- リソース効率: YOLO11の最適化されたアルゴリズムにより、最小限の計算リソースで高速処理が保証されます。
これらの利点については、ライブ推論の利点セクションで詳しく説明しています。
WebブラウザにStreamlitオブジェクト検出アプリケーションをデプロイするにはどうすればよいですか?
Ultralytics YOLO11 を統合した Streamlit アプリケーションをコーディングした後、以下のコマンドを実行してデプロイできます:
streamlit run path/to/file.py
このコマンドは、デフォルトのWebブラウザでアプリケーションを起動し、YOLO11モデルを選択し、信頼度とNMSのしきい値を設定して、クリックするだけでリアルタイムの物体検出を開始できるようにします。詳細なガイドについては、Streamlitアプリケーションコードセクションを参照してください。
StreamlitとUltralytics YOLO11を使用したリアルタイムオブジェクト検出のユースケースは何ですか?
StreamlitとUltralytics YOLO11を使用したリアルタイム物体検出は、さまざまな分野で応用できます。
- セキュリティ: 不正アクセスおよびセキュリティアラームシステムのリアルタイム監視。
- 小売: 顧客のカウント、棚管理、および在庫追跡。
- 野生生物と農業: 保護活動のために動物と作物の状態を監視。
より詳細なユースケースと例については、Ultralytics Solutionsをご覧ください。
Ultralytics YOLO11は、YOLOv5やRCNNなどの他の物体検出モデルと比べてどうですか?
Ultralytics YOLO11 は、YOLOv5 や RCNN などの以前のモデルに比べて、いくつかの機能拡張を提供します。
- より高速かつ高精度: リアルタイムアプリケーション向けのパフォーマンスが向上しました。
- 使いやすさ: 簡素化されたインターフェースとデプロイメント。
- リソース効率: 最小限の計算要件で、より高速になるように最適化されています。
包括的な比較については、Ultralytics YOLO11ドキュメントおよびモデルのパフォーマンスについて議論している関連ブログ投稿を確認してください。