Roboflow Integration
Roboflowは、コンピュータビジョンモデルの構築とデプロイのために設計されたツールスイートを提供します。RoboflowのAPIとSDKを使用して開発パイプラインのさまざまな段階で統合したり、エンドツーエンドのインターフェースを利用して、画像収集から推論までのプロセスを管理できます。Roboflowは、データラベリング、モデルトレーニング、モデルデプロイメントの機能を提供し、Ultralyticsツールと並行してカスタムコンピュータビジョンソリューションを開発するためのコンポーネントを提供します。
ライセンス
Ultralytics は、さまざまなユースケースに対応するために、2 つのライセンスオプションを提供しています。
- AGPL-3.0ライセンス: このOSI承認済みオープンソースライセンスは、オープンなコラボレーションと知識の共有を促進し、学生や愛好家にとって理想的です。詳細については、LICENSEファイルを参照してください。
- エンタープライズライセンス: 商用利用向けに設計されたこのライセンスにより、UltralyticsソフトウェアとAIモデルを商用製品およびサービスにシームレスに統合できます。商用アプリケーションが必要な場合は、Ultralytics Licensingからお問い合わせください。
詳細については、Ultralytics ライセンスページをご覧ください。
このガイドでは、Roboflowを使用してカスタムUltralytics YOLO11モデルをトレーニングするためのデータを見つけ、ラベル付けし、整理する方法を説明します。
- カスタムYOLO11モデルをトレーニングするためのデータを収集する
- YOLO11形式でのデータのアップロード、変換、およびラベル付け
- モデルの堅牢性のためのデータの前処理と拡張
- YOLO11のデータセット管理
- モデル学習のために40以上の形式でデータをエクスポート
- テストとデプロイメントのためにカスタム YOLO11 モデルの重みをアップロード
- YOLO11モデルを評価する方法
- 学習リソース
- プロジェクトショーケース
- よくある質問
カスタムYOLO11モデルをトレーニングするためのデータを収集する
Roboflowは、Ultralytics YOLOモデルのデータ収集を支援する2つの主要なサービス、UniverseとCollectを提供しています。データ収集戦略に関する一般的な情報については、データ収集とアノテーションのガイドを参照してください。
Roboflow Universe
Roboflow Universeは、多数のビジョンデータセットを特徴とするオンラインリポジトリです。
Roboflowアカウントを使用すると、Universeで利用可能なデータセットをエクスポートできます。データセットをエクスポートするには、関連するデータセットページの「Download this Dataset」ボタンを使用します。
Ultralytics YOLO11との互換性のため、エクスポート形式として「YOLO11」を選択してください。
Universeには、Roboflowにアップロードされた公開されているファインチューニング済みのYOLOモデルを集約したページもあります。これは、テストまたは自動データラベリング用の事前トレーニング済みモデルを探索するのに役立ちます。
Roboflow Collect
自分で画像を集めたい場合は、Roboflow Collectは、エッジデバイス上のWebカメラを介した自動画像収集を可能にするオープンソースプロジェクトです。テキストまたは画像のプロンプトを使用して、収集するデータを指定し、ビジョンモデルに必要な画像のみをキャプチャできます。
YOLO11形式でのデータのアップロード、変換、およびラベル付け
Roboflow Annotateは、物体検出、分類、セグメンテーションなど、さまざまなコンピュータビジョンタスクのために画像にラベルを付けるためのオンラインツールです。
Ultralytics YOLO モデル (検出、インスタンス セグメンテーション、分類、ポーズ推定、OBB をサポート) のデータをラベル付けするには、まず Roboflow でプロジェクトを作成します。
次に、画像と既存のアノテーションを他のツールからRoboflowにアップロードします。
アップロード後、アノテーションページに移動します。アップロードされた画像のバッチを選択し、「Start Annotating」をクリックして、ラベリングを開始します。
アノテーションツール
- バウンディングボックスアノテーション: 押す
B
または、ボックスのアイコンをクリックします。クリックしてドラッグし、 バウンディングボックスです。ポップアップが表示され、注釈を付けるクラスを選択するように求められます。
- ポリゴンアノテーション: 用途: インスタンスセグメンテーション押してください。
P
または、ポリゴンのアイコンをクリックします。オブジェクトの周りの点をクリックして、ポリゴンを描画します。
ラベルアシスタント(SAM統合)
Roboflowは、アノテーションを潜在的に高速化するために、Segment Anything Model (SAM)ベースのラベルアシスタントを統合しています。
ラベルアシスタントを使用するには、サイドバーにあるカーソルアイコンをクリックします。SAMがプロジェクトに対して有効になります。
オブジェクトにカーソルを合わせると、SAMがアノテーションを提案することがあります。クリックしてアノテーションを確定します。提案された領域の内側または外側をクリックすることで、アノテーションの精度を調整できます。
タグ付け
サイドバーの「Tags」パネルを使用して、画像にタグを追加できます。タグは、場所やカメラソースなどの属性を表すことができます。これらのタグを使用すると、特定の画像を検索したり、特定のタグを持つ画像を含むデータセットバージョンを生成したりできます。
ラベルアシスト(モデルベース)
Roboflowでホストされているモデルは、トレーニング済みのYOLO11モデルを活用してアノテーションを提案する自動アノテーションツールであるLabel Assistで使用できます。まず、YOLO11モデルの重みをRoboflowにアップロードします(以下の手順を参照)。次に、左側のサイドバーにある魔法の杖アイコンをクリックし、モデルを選択してLabel Assistを有効にします。
モデルを選択し、「Continue(続行)」をクリックしてLabel Assistを有効にします。
新しい画像にアノテーションを付けるために開くと、Label Assistはモデルの予測に基づいてアノテーションを自動的に提案する場合があります。
YOLO11のデータセット管理
Roboflowは、コンピュータビジョンのデータセットを理解および管理するためのいくつかのツールを提供しています。
データセット検索
データセット検索を使用して、セマンティックテキストの説明(「人が写っている画像をすべて検索」など)または特定のラベル/タグに基づいて画像を検索します。この機能にアクセスするには、サイドバーの「データセット」をクリックし、検索バーとフィルターを使用します。
たとえば、人物を含む画像を検索する場合:
"タグ"セレクターを介してタグを使用して検索を絞り込むことができます。
ヘルスチェック
トレーニングの前に、Roboflow Health Checkを使用してデータセットに関する洞察を得て、改善の可能性を特定します。「Health Check」サイドバーリンクからアクセスします。画像サイズ、クラスのバランス、アノテーションヒートマップなどの統計情報が提供されます。
ヘルスチェックでは、クラスバランス機能で特定されたクラスの不均衡への対処など、パフォーマンスを向上させるための変更が提案される場合があります。効果的なモデルトレーニングには、データセットの健全性を理解することが不可欠です。
モデルの堅牢性のためのデータの前処理と拡張
データをエクスポートするには、データセットのバージョンを作成する必要があります。これは、特定の時点でのデータセットのスナップショットです。サイドバーの「バージョン」をクリックし、次に「新しいバージョンを作成」をクリックします。ここでは、前処理ステップとデータ拡張を適用して、モデルの堅牢性を高めることができます。
選択した各拡張機能について、ポップアップで明るさなどのパラメータを微調整できます。適切な拡張はモデルの汎化性能を大幅に向上させることができ、これはモデルトレーニングのヒントガイドで解説されている重要な概念です。
モデル学習のために40以上の形式でデータをエクスポート
データセットのバージョンが生成されたら、モデルのトレーニングに適したさまざまな形式でエクスポートできます。バージョンページの「データセットのエクスポート」ボタンをクリックしてください。
Ultralyticsのトレーニングパイプラインとの互換性を保つために、"YOLO11"形式を選択してください。これで、カスタムYOLO11モデルをトレーニングする準備が整いました。エクスポートしたデータセットでトレーニングを開始する方法の詳細については、Ultralytics Trainモードのドキュメントを参照してください。
テストとデプロイメントのためにカスタム YOLO11 モデルの重みをアップロード
Roboflowは、デプロイされたモデル向けのスケーラブルなAPIと、NVIDIA Jetson、Luxonis OAK、Raspberry Pi、GPUベースのシステムなどのデバイスと互換性のあるSDKを提供しています。さまざまなモデルのデプロイオプションについては、ガイドをご覧ください。
YOLO11モデルの重みを単純なPythonスクリプトを使用してRoboflowにアップロードすることで、YOLO11モデルをデプロイできます。
新しいpythonファイルを作成し、次のコードを追加します。
import roboflow # install with 'pip install roboflow'
# Log in to Roboflow (requires API key)
roboflow.login()
# Initialize Roboflow client
rf = roboflow.Roboflow()
# Define your workspace and project details
WORKSPACE_ID = "your-workspace-id" # Replace with your actual Workspace ID
PROJECT_ID = "your-project-id" # Replace with your actual Project ID
VERSION = 1 # Replace with your desired dataset version number
MODEL_PATH = "path/to/your/runs/detect/train/" # Replace with the path to your YOLO11 training results directory
# Get project and version
project = rf.workspace(WORKSPACE_ID).project(PROJECT_ID)
dataset = project.version(VERSION)
# Upload model weights for deployment
# Ensure model_path points to the directory containing 'best.pt'
project.version(dataset.version).deploy(
model_type="yolov8", model_path=MODEL_PATH
) # Note: Use "yolov8" as model_type for YOLO11 compatibility in Roboflow deployment
print(f"Model from {MODEL_PATH} uploaded to Roboflow project {PROJECT_ID}, version {VERSION}.")
print("Deployment may take up to 30 minutes.")
このコードでは、以下を置き換えてください。 your-workspace-id
, your-project-id
、 VERSION
数、および MODEL_PATH
Roboflowアカウント、プロジェクト、およびローカルのトレーニング結果ディレクトリに固有の値を使用します。以下を確認してください。 MODEL_PATH
トレーニング済みのファイルが格納されているディレクトリを正しく指している best.pt
weightsファイル。
上記のコードを実行すると、認証(通常はAPIキー経由)を求められます。次に、モデルがアップロードされ、プロジェクトのAPIエンドポイントが作成されます。このプロセスが完了するまでに最大30分かかる場合があります。
モデルをテストし、サポートされているSDKのデプロイ手順を見つけるには、Roboflowサイドバーの[Deploy]タブに移動します。このページの上部には、Webカメラを使用するか、画像またはビデオをアップロードしてモデルをテストできるウィジェットが表示されます。
アップロードされたモデルは、そのトレーニングに基づいて新しい画像のアノテーションを提案する、ラベリングアシスタントとしても使用できます。
YOLO11モデルを評価する方法
Roboflowは、モデルのパフォーマンスを評価する機能を提供しています。パフォーマンス指標を理解することは、モデルの反復処理において重要です。
モデルをアップロードした後、Roboflowダッシュボードのモデルページからモデル評価ツールにアクセスします。「View Detailed Evaluation」をクリックしてください。
このツールは、モデルのパフォーマンスを示す混同行列と、CLIP埋め込みを使用したインタラクティブなベクトル分析プロットを表示します。これらの機能は、モデルを改善すべき領域を特定するのに役立ちます。
混同行列のポップアップ:
セルにカーソルを合わせると値が表示され、セルをクリックすると、モデルの予測と正解データを含む対応する画像が表示されます。
CLIP 埋め込みに基づいて画像の類似性を視覚化する散布図を表示するには、"Vector Analysis" をクリックします。互いに近い画像は意味的に類似しています。ドットは画像を表し、白 (良好なパフォーマンス) から赤 (不良なパフォーマンス) で色分けされています。
ベクトル解析は以下に役立ちます:
- 画像クラスタを識別します。
- モデルの性能が低いクラスターを特定します。
- パフォーマンス低下の原因となる画像間の共通点を理解する。
学習リソース
Ultralytics YOLO11でRoboflowを使用する方法の詳細については、これらのリソースをご覧ください。
- Train YOLO11 on a Custom Dataset (Colab): あなたのデータでYOLO11をトレーニングするためのインタラクティブなGoogle Colabノートブック。
- YOLO11 Documentation: Ultralyticsフレームワーク内でのYOLO11モデルのトレーニング、エクスポート、およびデプロイについて学びます。
- Ultralytics Blog: YOLO11トレーニングやアノテーションのベストプラクティスなど、コンピュータビジョンに関する記事を掲載しています。
- Ultralytics YouTube Channel: モデルのトレーニングから自動ラベル付け、デプロイメントまで、コンピュータビジョンのトピックに関する詳細なビデオガイドを提供しています。
プロジェクトショーケース
Ultralytics YOLO11とRoboflowを組み合わせたユーザーからのフィードバック:
よくある質問
よくある質問
Roboflowを使用してYOLO11モデルのデータをラベル付けするにはどうすればよいですか?
Roboflow Annotateを使用します。プロジェクトを作成し、画像をアップロードして、アノテーションツール(B
対象 バウンディングボックス, P
ポリゴンの場合)または、より迅速なラベリングのためのSAMベースのラベルアシスタント。詳細な手順は、以下に記載されています。 データのアップロード、変換、ラベル付けセクション.
Roboflow は、YOLO11 トレーニングデータの収集のためにどのようなサービスを提供していますか?
Roboflowは、Universe(多数のデータセットへのアクセス)とCollect(Webカメラ経由での自動画像収集)を提供しています。これらは、データ収集ガイドで概説されている戦略を補完し、YOLO11モデルに必要なトレーニングデータを取得するのに役立ちます。
Roboflowを使用してYOLO11データセットを管理および分析するにはどうすればよいですか?
Roboflowのデータセット検索、タグ付け、およびヘルスチェック機能を利用します。検索はテキストまたはタグで画像を検索し、ヘルスチェックはトレーニング前に改善をガイドするためにデータセットの品質(クラスのバランス、画像サイズなど)を分析します。詳細については、データセット管理セクションをご覧ください。
RoboflowからYOLO11データセットをエクスポートするにはどうすればよいですか?
Roboflowでデータセットバージョンを作成し、目的のプリプロセッシングと拡張を適用し、[データセットのエクスポート]をクリックしてYOLO11形式を選択します。このプロセスは、データのエクスポートセクションで概説されています。これにより、Ultralytics トレーニングパイプラインで使用するためのデータが準備されます。
YOLO11モデルをRoboflowと統合してデプロイするにはどうすればよいですか?
提供されているpythonスクリプトを使用して、トレーニング済みのYOLO11の重みをRoboflowにアップロードします。これにより、デプロイ可能なAPIエンドポイントが作成されます。スクリプトと手順については、カスタム重みのアップロードセクションを参照してください。ドキュメントでさらにデプロイオプションを調べてください。