ヨロビジョン深圳
深セン
今すぐ参加

StreamlitとUltralytics YOLO11でインタラクティブなAIアプリを実行する

Abirami Vina

5分で読めます

2025年3月18日

Streamlitインターフェース内でYOLO11の推論を実行し、コーディングの専門知識がなくても、コンピュータビジョンタスク用のインタラクティブなAIインターフェースを構築する方法を学びます。

コンピュータビジョンモデルは、機械が視覚データを解釈および分析し、物体検出、画像分類、インスタンスセグメンテーションなどのタスクを高精度で実行できるようにする、影響力のあるAIツールです。ただし、より多くのユーザーが利用できるようにするためには、Web開発やモバイルアプリのスキルなど、追加の技術的な専門知識が必要になる場合があります。

Ultralytics YOLO11を例にとってみましょう。これは、さまざまなタスクをサポートし、広範なアプリケーションで役立つモデルです。ただし、フロントエンドに関する技術的な知識がないと、シームレスなインタラクションを実現するためのユーザーフレンドリーなインターフェースの構築と展開は、一部のAIエンジニアにとっては少し難しいと感じられるかもしれません。

Streamlitは、このプロセスを容易にすることを目的としたオープンソースのフレームワークです。これは、複雑なフロントエンド開発なしでインタラクティブなアプリケーションを構築するためのPythonベースのツールです。YOLO11と組み合わせることで、ユーザーは画像をアップロードしたり、ビデオを処理したり、最小限の労力でリアルタイムの結果を視覚化したりできます。

Ultralyticsは、Live Inferenceソリューションによってこれをさらに一歩進め、Streamlitの統合をさらに容易にしています。単一のコマンドで、ユーザーは構築済みのYOLO11用Streamlitアプリを起動できるため、手動でのセットアップやコーディングは不要です。 

この記事では、UltralyticsのLive InferenceソリューションとStreamlitを使用してYOLO11をセットアップして実行する方法について説明し、リアルタイムAIの展開をより迅速かつアクセスしやすくします。

Streamlitとは?

Streamlitは、インタラクティブなWebアプリケーションの作成を簡素化するPythonフレームワークです。AI開発者は、フロントエンド開発の複雑さに対応することなく、AI搭載アプリを構築できます。 

AIおよび機械学習モデルとシームレスに連携するように設計されています。わずか数行のPythonコードで、開発者はユーザーが画像をアップロードしたり、ビデオを処理したり、AIモデルと対話したりできるインターフェースを作成できます。

__wf_reserved_inherit
図1. Streamlitの主な機能。画像は著者による。

その主な機能の1つは、動的なレンダリングです。ユーザーが変更を加えると、手動でページをリロードしなくても、アプリが自動的に更新されます。

また、軽量で使いやすいため、Streamlitはローカルマシンとクラウドプラットフォームの両方で効率的に実行されます。これにより、AIアプリケーションの展開、モデルの他のユーザーとの共有、および直感的でインタラクティブなユーザーエクスペリエンスの提供に最適です。

Ultralytics YOLO11:汎用性の高いVision AIモデル

StreamlitアプリケーションでUltralytics YOLO11を使用してライブ推論を実行する方法に入る前に、YOLO11が非常に信頼できる理由を詳しく見てみましょう。

Ultralytics YOLO11は、物体検出、インスタンスセグメンテーション、姿勢推定などのリアルタイムコンピュータビジョンタスク用に設計されたモデルです。高速パフォーマンスと優れた精度を実現します。

__wf_reserved_inherit
図2. 物体検出にYOLO11を使用する例。

YOLO11の最大の利点の1つは、使いやすさです。複雑なセットアップは不要です。開発者はUltralytics Pythonパッケージをインストールし、わずか数行のコードで予測を開始できます。

Ultralytics Pythonパッケージは、さまざまな機能を提供し、ユーザーはモデルを微調整したり、検出設定を調整したりできます。また、さまざまなデバイスでのパフォーマンスを最適化して、よりスムーズな展開を実現します。

柔軟性に加えて、Ultralytics Pythonパッケージは、エッジデバイス、クラウド環境、NVIDIA GPU対応システムなど、複数のプラットフォームにわたる統合をサポートしています。小型の組み込みデバイスでも、大規模なクラウドサーバーでも、YOLO11は簡単に適応できるため、高度なVision AIをこれまで以上にアクセスしやすくします。

Ultralytics YOLO11でStreamlitを使用する利点

Streamlitが自分に適した展開オプションかどうか疑問に思われるかもしれません。フロントエンド開発を行わずにYOLO11を実行するためのシンプルでコード効率の高い方法を探している場合、Streamlitは優れたオプションです。特に、プロトタイピング、概念実証(PoC)プロジェクト、または少数のユーザーを対象とした展開に適しています。

不要な複雑さを排除し、リアルタイムインタラクションのための直感的なインターフェースを提供することで、YOLO11の操作プロセスを効率化します。その他の主な利点を以下に示します。

  • カスタマイズ可能なAIコントロール:スライダー、ドロップダウン、ボタンをインターフェースに追加して、ユーザーが検出設定を微調整したり、特定のオブジェクトを簡単にフィルタリングしたりできます。
  • 他のAIツールとの統合:Streamlitは、NumPy、OpenCV、Matplotlib、その他の機械学習ライブラリとの統合をサポートし、AIワークフローの機能を強化します。
  • インタラクティブなデータ可視化: チャートとグラフが組み込まれているため、オブジェクト検出、セグメンテーションの結果、または追跡に関する洞察を簡単に視覚化できます。
  • コラボレーションに適した設計: Streamlitアプリは、シンプルなリンクを介してチームメンバー、ステークホルダー、またはクライアントと簡単に共有でき、迅速なフィードバックとイテレーションが可能です。

StreamlitウェブアプリへのYOLO11のデプロイに関するステップバイステップガイド

StreamlitとYOLO11の連携による利点を見てきたので、StreamlitとYOLO11を使用してブラウザでリアルタイムのコンピュータビジョンタスクを実行する方法を順を追って説明します。

Ultralytics Pythonパッケージのインストール

まず、Ultralytics Pythonパッケージをインストールします。これは、次のコマンドを使用して実行できます。

インストールが完了すると、YOLO11は複雑な設定なしですぐに使用できます。必要なパッケージのインストール中に問題が発生した場合は、よくある問題ガイドを参照して、トラブルシューティングのヒントと解決策を確認してください。

YOLO11を使用したStreamlitアプリケーションの起動 

通常、YOLO11を実行するには、Streamlitコンポーネントを使用してPythonスクリプトを開発する必要があります。ただし、Ultralyticsは、StreamlitでYOLO11を実行する簡単な方法を提供しています。 

次のPythonスクリプトを実行すると、デフォルトのWebブラウザでStreamlitアプリケーションがすぐに起動します。

追加の構成は必要ありません。Streamlitアプリケーションのインターフェースには、画像とビデオのアップロードセクション、関心のあるYOLO11モデルのバリアントを選択するためのドロップダウンメニュー、および検出の信頼度を調整するためのスライダーが含まれています。すべてがきちんと整理されているため、ユーザーは追加のコードを記述しなくても、簡単に推論を実行できます。

StreamlitアプリケーションでのYOLO11を使用した推論の実行

StreamlitアプリケーションがWebブラウザで実行されているので、これを使用してYOLO11で推論を実行する方法を見ていきましょう。

たとえば、オブジェクト検出のためにビデオファイルを分析するとします。ファイルをアップロードし、モデルを選択して、リアルタイムの結果を表示する手順は次のとおりです。

  • ビデオファイルのアップロード: ユーザー構成ドロップダウンから「ビデオ」を選択します。これにより、Webカメラのフィードの代わりに、事前に録画されたファイルを処理するようにアプリケーションに指示します。
  • YOLO11モデルの選択: 大規模なYOLO11モデルを使用してオブジェクトを検出するには、モデルドロップダウンから「YOLO11l」を選択します。
  • 検出プロセスの開始: 「開始」をクリックすると、YOLO11がビデオをフレームごとに分析し、リアルタイムでオブジェクトを検出できます。
  • 処理されたビデオの表示: 検出されたオブジェクトをバウンディングボックスで表示しながら、ライブアップデートでビデオが画面に表示されるのをご覧ください。
  • Streamlitでの結果の操作: インターフェースを使用して、追加のセットアップやコーディングなしで、設定を調整したり、検出を分析したりできます。
__wf_reserved_inherit
図3. Ultralytics YOLO Streamlitアプリケーションのインターフェース。

StreamlitとYOLO11を使用したユースケース

Streamlitがプロトタイプ、研究ツール、中小規模のアプリケーションの作成に非常に適していることを確認しました。複雑なフロントエンド開発なしでAIモデルをデプロイする簡単な方法を提供します。

ただし、上記のステップで設定したUltralytics YOLO Streamlitアプリケーションを使用しない限り、StreamlitでYOLO11を実行することが常にすぐに使えるソリューションであるとは限りません。ほとんどの場合、特定のニーズに合わせてアプリケーションをカスタマイズするには、ある程度の開発作業が必要です。Streamlitはデプロイを簡素化しますが、YOLO11がスムーズに実行されるように、必要なコンポーネントを構成する必要があります。

Ultralytics YOLO11をStreamlitで効果的にデプロイできる2つの実用的な例を、実際のシナリオで見てみましょう。

YOLO11を使用した在庫チェックのためのオブジェクトのカウント

小売店、倉庫、またはオフィス用品エリアでの在庫管理は、時間がかかり、エラーが発生しやすい作業です。YOLO11とStreamlitを組み合わせることで、企業はオブジェクトのカウントを迅速かつ効率的に自動化でき、大規模な導入を決定する前の概念実証(PoC)として最適です。

この構成により、ユーザーは画像をアップロードしたり、ライブカメラフィードを使用したりでき、YOLO11はオブジェクトを即座に検出してカウントできます。リアルタイムのカウントはStreamlitインターフェースに表示され、手作業なしで在庫レベルを簡単に監視できます。

たとえば、店舗のオーナーは棚をスキャンして、ボトル、箱、または包装された商品がいくつあるかを、手動で数えることなくすぐに確認できます。YOLO11とStreamlitを活用することで、企業は手作業を減らし、精度を向上させ、最小限の投資で自動化を検討できます。

__wf_reserved_inherit
図4. YOLO11を使用して冷蔵庫内のボトルを検出。

YOLO11とStreamlitによるセキュリティ強化

オフィス、倉庫、またはイベント会場で立ち入り制限区域のセキュリティを確保することは、特に手動監視では困難です。YOLO11とStreamlitを使用することで、企業はシンプルなAIを活用したセキュリティシステムを構築し、不正アクセスをリアルタイムで検出できます。

カメラフィードをStreamlitインターフェースに接続し、YOLO11を使用して立ち入り制限区域に侵入する人物を識別および追跡できます。不正な人物が検出された場合、システムはアラートをトリガーするか、イベントをログに記録してレビューできます。

たとえば、倉庫管理者は高度なセキュリティストレージエリアへのアクセスを監視したり、オフィスは継続的な監視を必要とせずに制限区域内の動きを追跡したりできます。

これは、大規模で完全に自動化されたシステムを導入する前に、Vision AI駆動のセキュリティ監視を検討したい企業にとって、目を見張るようなプロジェクトになる可能性があります。YOLO11とStreamlitを統合することで、企業はセキュリティを強化し、手動監視を最小限に抑え、不正アクセスに効果的に対応できます。

Streamlitを使用したインタラクティブなAIアプリの監視に関するヒント

Streamlitのようなツールを使用してコンピュータビジョンモデルをデプロイすると、インタラクティブでユーザーフレンドリーなエクスペリエンスを構築できます。ただし、ライブインターフェースをセットアップした後、システムが効率的に動作し、時間の経過とともに正確な結果を提供することを保証することが重要です。

デプロイ後に考慮すべき主な要素を以下に示します。

  • 定期的な監視 検出精度、推論速度、およびリソース使用量を追跡します。パフォーマンスが低下した場合は、モデルパラメータを調整するか、ハードウェアをアップグレードしてください。
  • 複数のユーザーの管理とスケーラビリティ: ユーザーの需要が増加するにつれて、インフラストラクチャを最適化してパフォーマンスを維持することが重要です。クラウドプラットフォームとスケーラブルなデプロイソリューションは、スムーズな運用を保証するのに役立ちます。
  • モデルの更新: モデルとライブラリを最新の状態に保つことで、精度、セキュリティ、および新機能へのアクセスが向上します。

主なポイント

Ultralyticsは、コーディングなしで、単一のコマンドで実行できる、すぐに使用できるStreamlitライブインターフェースにより、YOLO11のデプロイを簡素化します。これにより、ユーザーはリアルタイムのオブジェクト検出をすぐに使用開始できます。

このインターフェースには組み込みのカスタマイズも含まれており、ユーザーはモデルの切り替え、検出精度の調整、オブジェクトのフィルタリングを簡単に行うことができます。すべてがシンプルでユーザーフレンドリーなインターフェース内で管理されるため、手動でUIを開発する必要はありません。組み合わせることで

YOLO11の機能とStreamlitのデプロイの容易さにより、企業や開発者はAI駆動のアプリケーションを迅速にプロトタイプ作成、テスト、および改良できます。 

私たちのコミュニティに参加して、AIに関する詳細な情報を得るためにGitHubリポジトリをご覧ください。製造業におけるAIヘルスケアにおけるコンピュータビジョンなどのイノベーションについては、ソリューションページをご覧ください。ライセンスオプションを確認して、今すぐ始めましょう!

AIの未来を
共に築きましょう!

未来の機械学習で、新たな一歩を踏み出しましょう。

無料ではじめる
クリップボードにコピーしました