Roboflow
Roboflowは、データラベリングやYOLOを含む様々なフォーマットでのデータセットエクスポートのためのツールを提供しています。本ガイドでは、Ultralytics YOLOモデル向けデータのラベリング、エクスポート、デプロイ方法について解説します。
Ultralyticsでは、さまざまなユースケースに対応するため、2つのライセンスオプションを提供しています。
- AGPL-3.0ライセンス: このOSI承認済みオープンソースライセンスは、学生や愛好家に最適であり、オープンなコラボレーションと知識の共有を促進します。詳細はLICENSEファイルをご確認ください。
- Enterprise ライセンス: 商用利用向けに設計されたこのライセンスでは、UltralyticsのソフトウェアやAIモデルを商用製品やサービスにシームレスに統合できます。商用アプリケーションでの利用を検討されている場合は、Ultralytics Licensingよりお問い合わせください。
詳細はUltralyticsライセンスページをご覧ください。
本ガイドでは、Roboflowを使用してカスタムUltralytics YOLO26モデルをトレーニングするためのデータの検索、ラベリング、整理方法を実演します。
カスタムYOLO26モデルのトレーニング用データの収集
Roboflowは、Ultralytics YOLOモデルのデータ収集を支援するUniverseとCollectという2つの主要なサービスを提供しています。データ収集戦略に関する一般的な情報については、データ収集・アノテーションガイドをご参照ください。
Roboflow Universe
Roboflow Universeは、コンピュータビジョンデータセットのオンラインリポジトリです。Ultralyticsモデルで使用するために、データセットをYOLOフォーマットでエクスポートできます。
Roboflow Collect
自身で画像を収集したい場合、Roboflow Collectはエッジデバイス上のWebカメラを介した自動画像収集を可能にするオープンソースプロジェクトです。テキストや画像プロンプトを使用して収集するデータを指定でき、ビジョンモデルに必要な画像のみを効率的に取得できます。
YOLO26フォーマットへのアップロード、変換、およびラベリング
Roboflow Annotateは、物体検出、分類、セグメンテーションなど、様々なコンピュータビジョンタスクのために画像をラベリングするオンラインツールです。
Ultralytics YOLOモデル用にデータをラベリングするには、Roboflowでプロジェクトを作成し、画像をアップロードしてアノテーションを開始してください。
アノテーションツール
- バウンディングボックスアノテーション:
Bキーを押すか、ボックスアイコンをクリックします。クリック&ドラッグでバウンディングボックスを作成します。ポップアップが表示され、アノテーションのクラスを選択するよう求められます。 - ポリゴンアノテーション: インスタンスセグメンテーションに使用されます。
Pキーを押すか、ポリゴンアイコンをクリックします。オブジェクトの周囲をクリックして点を打ち、ポリゴンを描画します。
ラベルアシスタント(SAM統合)
Roboflowには、アノテーションを高速化できるSegment Anything Model (SAM)ベースのラベルアシスタントが統合されています。
ラベルアシスタントを使用するには、サイドバーのカーソルアイコンをクリックします。SAMがプロジェクトに対して有効になります。
オブジェクトの上にカーソルを置くと、SAMがアノテーションを提案することがあります。クリックしてアノテーションを確定します。提案された領域の内側または外側をクリックすることで、アノテーションの精度を調整できます。
タグ付け
サイドバーのタグパネルを使用して、画像にタグを追加できます。タグは場所やカメラソースなどの属性を表せます。これらのタグを使用して特定の画像を検索したり、特定のタグを含む画像を持つデータセットバージョンを作成したりできます。
ラベルアシスト(モデルベース)
Roboflow上でホストされているモデルをラベルアシストとして使用し、アノテーションを提案させることができます。YOLOモデルの重みをRoboflowにアップロード(以下の手順を参照)し、サイドバーの魔法の杖アイコンからラベルアシストを有効にします。
YOLO26のデータセット管理
Roboflowは、コンピュータビジョンデータセットを理解し管理するための様々なツールを提供しています。
データセット検索
データセット検索を使用して、テキスト説明や特定のラベル/タグに基づいて画像を検索します。サイドバーの「Dataset」をクリックしてこの機能にアクセスします。
ヘルスチェック
トレーニング前にRoboflowのヘルスチェックを使用し、データセットに関する洞察を得て改善点を特定します。サイドバーの「Health Check」リンクからアクセスします。画像サイズ、クラスバランス、アノテーションヒートマップなどの統計情報が提供されます。
ヘルスチェックは、クラスバランス機能で特定された不均衡に対処するなど、パフォーマンスを向上させるための変更を提案する場合があります。データセットの健全性を理解することは、効率的なモデルトレーニングにおいて不可欠です。
モデルの堅牢性のためのデータ前処理と拡張
データをエクスポートするには、特定の時点でのデータセットのスナップショットであるデータセットバージョンを作成する必要があります。サイドバーの「Versions」をクリックし、「Create New Version」を選択します。ここでは、前処理ステップやデータ拡張を適用して、モデルの堅牢性を高めることができます。
選択した各拡張について、ポップアップで明るさなどのパラメータを微調整できます。適切な拡張はモデルの汎化性能を大幅に向上させることができ、これはモデルトレーニングのヒントガイドで詳しく解説されている重要なコンセプトです。
モデルトレーニング向け40種類以上のフォーマットでのデータエクスポート
データセットバージョンが生成されたら、モデルトレーニングに適した様々なフォーマットでエクスポートできます。バージョンページの「Export Dataset」ボタンをクリックしてください。
Ultralyticsのトレーニングパイプラインとの互換性のため、「YOLO26」フォーマットを選択します。これでカスタムYOLO26モデルをトレーニングする準備が整いました。エクスポートしたデータセットでのトレーニング開始方法の詳細については、Ultralytics Trainモードのドキュメントを参照してください。
テストおよびデプロイ用のカスタムYOLO26モデル重みのアップロード
Roboflowは、デプロイされたモデル向けのスケーラブルなAPIと、NVIDIA Jetson、Luxonis OAK、Raspberry Pi、GPUベースのシステムなどのデバイスと互換性のあるSDKを提供しています。ガイド内で様々なモデルデプロイオプションを探ってみてください。
シンプルなPythonスクリプトを使用して、重みをRoboflowにアップロードすることでYOLO26モデルをデプロイできます。
新しい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 YOLO26 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'
dataset.deploy(
model_type="yolov8",
model_path=MODEL_PATH,
) # Note: Use "yolov8" as model_type for YOLO26 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重みファイルを含むディレクトリを正しく指していることを確認してください。
上記のコードを実行すると、認証(通常はAPIキー経由)を求められます。その後、モデルがアップロードされ、プロジェクト用のAPIエンドポイントが作成されます。このプロセスには最大30分かかる場合があります。
モデルをテストし、サポートされているSDKのデプロイ手順を確認するには、Roboflowサイドバーの「Deploy」タブに移動します。ページ上部にウィジェットが表示され、Webカメラを使用したり、画像や動画をアップロードしたりしてモデルをテストできます。
アップロードしたモデルはラベルアシスタントとしても使用でき、学習結果に基づいて新しい画像に対するアノテーションを提案させることができます。
YOLO26モデルの評価方法
Roboflowはモデルパフォーマンスを評価するための機能を提供しています。モデルの反復改善には、パフォーマンス指標を理解することが不可欠です。
モデルアップロード後、Roboflowダッシュボードのモデルページからモデル評価ツールにアクセスします。「View Detailed Evaluation」をクリックしてください。
このツールは、モデルのパフォーマンスを示す混同行列と、CLIP埋め込みを使用したインタラクティブなベクトル分析プロットを表示します。これらの機能はモデル改善の領域を特定するのに役立ちます。
混同行列のポップアップ:
セルにカーソルを合わせると値が表示され、セルをクリックすると対応する画像がモデルの予測結果と正解データと共に表示されます。
「Vector Analysis」をクリックすると、CLIP埋め込みに基づいた画像の類似度を可視化する散布図が表示されます。互いに近い画像は意味的に類似しています。ドットは画像を表しており、白(良好なパフォーマンス)から赤(不十分なパフォーマンス)に色付けされています。
ベクトル分析の利点:
- 画像のクラスターを特定する。
- モデルのパフォーマンスが低いクラスターを特定する。
- パフォーマンス低下を引き起こす画像間の共通点を理解する。
学習リソース
- カスタムデータセットでのYOLOトレーニング (Colab): 自前のデータでトレーニングを行うためのインタラクティブなGoogle Colabノートブック。
- Ultralytics YOLOドキュメント: YOLOモデルのトレーニング、エクスポート、デプロイについて。
- Ultralyticsブログ: コンピュータビジョンとモデルトレーニングに関する記事。
- Ultralytics YouTube: モデルトレーニングとデプロイに関する動画ガイド。
FAQ
Roboflowを使用してYOLO26モデルのデータをラベリングするにはどうすればよいですか?
Use Roboflow Annotate. Create a project, upload images, and use the annotation tools (B for bounding boxes, P for polygons) or the SAM-based label assistant for faster labeling. Detailed steps are available in the Upload, Convert and Label Data section.
RoboflowはYOLO26トレーニングデータの収集のためにどのようなサービスを提供していますか?
RoboflowはUniverse(多数のデータセットへのアクセス)とCollect(Webカメラによる自動画像収集)を提供しています。これらはYOLO26モデルに必要なトレーニングデータの取得を支援し、データ収集ガイドに記載されている戦略を補完します。
Roboflowを使用してYOLO26データセットを管理および分析するにはどうすればよいですか?
Roboflowのデータセット検索、タグ付け、およびヘルスチェック機能を利用してください。検索機能はテキストやタグで画像を検索し、ヘルスチェックはトレーニング前にデータセットの品質(クラスバランス、画像サイズなど)を分析して改善の指針を提供します。詳細はデータセット管理セクションを参照してください。
RoboflowからYOLO26データセットをエクスポートするにはどうすればよいですか?
Roboflowでデータセットバージョンを作成し、希望する前処理とデータ拡張を適用してから、「Export Dataset」をクリックしてYOLO26フォーマットを選択します。手順はデータのエクスポートセクションにまとめられています。これにより、Ultralyticsのトレーニングパイプラインで使用する準備が整います。
RoboflowでYOLO26モデルを統合およびデプロイするにはどうすればよいですか?
提供されているPythonスクリプトを使用して、トレーニング済みのYOLO26重みをRoboflowにアップロードします。これにより、デプロイ可能なAPIエンドポイントが作成されます。スクリプトと手順については、カスタム重みのアップロードセクションを参照してください。さらに詳細なデプロイオプションについては、ドキュメントをご確認ください。