コンテンツへスキップ

Roboflow

Roboflowには、コンピュータビジョンモデルの構築と展開に必要なものがすべて揃っています。APIやSDKを使用してパイプラインのどのステップでもRoboflow 。また、エンドツーエンドのインターフェイスを使用して、画像から推論までのプロセス全体を自動化することもできます。データのラベリング、モデルのトレーニング、モデルの展開など、Roboflow は、カスタム コンピュータ ビジョン ソリューションをプロジェクトに導入するためのビルディング ブロックを提供します。

ライセンス

Ultralytics は2つのライセンスオプションを提供している:

詳しくはUltralytics ライセンスをご覧ください。

このガイドでは、カスタムUltralytics YOLOv8 モデルのトレーニングに使用するデータの検索、ラベル付け、整理の方法を紹介します。特定のセクションに直接ジャンプするには、以下の目次を使用してください:

  • カスタムYOLOv8 モデルのトレーニングのためのデータ収集
  • YOLOv8 フォーマットのデータのアップロード、変換、ラベル付け
  • モデルのロバスト性を高めるためのデータの前処理と補強
  • データセット管理 YOLOv8
  • モデルトレーニング用に40以上のフォーマットでデータをエクスポート
  • テストと配備のために、カスタムYOLOv8 モデルウェイトをアップロードする。
  • カスタムYOLOv8 モデルのトレーニングのためのデータ収集

Roboflow は、YOLOv8 モデルのデータ収集に役立つ2つのサービスを提供しています:Universe」と「Collect」です。

Universeは、25万以上のビジョンデータセット、合計1億枚以上の画像を含むオンラインリポジトリです。

Roboflow ユニバース

Roboflow (無料)のアカウントで、Universeで利用可能なすべてのデータセットをエクスポートできます。データセットをエクスポートするには、どのデータセットでも「Download this Dataset」ボタンをクリックしてください。

Roboflow ユニバース・データセットのエクスポート

YOLOv8 の場合、エクスポート形式として "YOLOv8" を選択する:

Roboflow ユニバース・データセットのエクスポート

Universeには、 Roboflow にアップロードされたすべての公開ファインチューニング済みYOLOv8 モデルを集約したページもあります。このページでは、テストや自動データラベリングに使用したり、Roboflow 推論でプロトタイプを作成したりするための、事前にトレーニングされたモデルを調べることができます。

自分で画像を収集したい場合は、エッジ上のウェブカメラを使用して自動的に画像を収集できるオープンソースプロジェクト、Collectを試してみてください。Collectでは、テキストや画像のプロンプトを使用して、収集すべきデータを指示することができ、ビジョンモデルの構築に必要な有用なデータのみをキャプチャすることができます。

YOLOv8 フォーマットのデータのアップロード、変換、ラベル付け

Roboflow Annotateは、オブジェクトの検出、分類、セグメンテーションのために画像にラベルを付けるためのオンライン注釈ツールです。

YOLOv8 オブジェクト検出、インスタンスセグメンテーション、または分類モデル用にデータにラベルを付けるには、まずRoboflow でプロジェクトを作成します。

Roboflow プロジェクトの作成

次に、画像と、他のツールから既存の注釈を(40種類以上サポートされているインポートフォーマットのいずれかを使用して)Roboflow にアップロードします。

画像をアップロードするRoboflow

画像のアップロード後に表示される注釈ページで、アップロードした画像のバッチを選択します。そして、"Start Annotating "をクリックして画像にラベルを付けます。

バウンディング・ボックスでラベルを付けるには B キーを押すか、サイドバーのボックスアイコンをクリックします。バウンディングボックスの開始点をクリックし、ドラッグしてボックスを作成します:

で画像に注釈を付ける。Roboflow

アノテーションを作成すると、アノテーションのクラスを選択するポップアップが表示されます。

多角形のラベルを付けるには P キーを押すか、サイドバーの多角形アイコンをクリックします。多角形注釈ツールを有効にした状態で、画像内の個々の点をクリックして多角形を描きます。

Roboflow は、SAM- ベースのラベルアシスタントを提供し、これまで以上に高速に画像にラベルを付けることができます。SAM (Segment Anything Model)は、画像に正確にラベルを付けることができる最先端のコンピュータビジョンモデルです。SAM を使えば、画像のラベリング作業を大幅にスピードアップできます。ポリゴンを使った画像の注釈付けは、オブジェクトの周りの点を正確にクリックする退屈なプロセスではなく、数回クリックするだけで簡単になります。

ラベルアシスタントを使用するには、サイドバーのカーソルアイコンをクリックします。SAM 、プロジェクトで使用するためにロードされます。

SAM-powered label assist を使ってRoboflow で画像に注釈をつける。

画像内のオブジェクトにカーソルを合わせると、SAM が注釈をお勧めします。カーソルを合わせて注釈に適した場所を探し、クリックすると注釈が作成されます。注釈をより具体的に、またはより具体的に修正するには、SAM がドキュメント上に作成した注釈の内側または外側をクリックします。

サイドバーのタグパネルから画像にタグを追加することも可能。特定のエリアや特定のカメラで撮影されたデータなどにタグを適用できます。これらのタグを使用して、タグに一致する画像をデータから検索し、特定のタグまたはタグのセットを含む画像を含むバージョンのデータセットを生成できます。

で画像にタグを追加するRoboflow

Roboflow にホストされているモデルは、Label Assist で使用することができます。Label Assist は、YOLOv8 のモデルを使用して注釈を推奨する自動注釈ツールです。Label Assist を使用するには、まずRoboflow にYOLOv8 のモデルをアップロードします(このガイドの後の説明を参照)。次に、左サイドバーの魔法の杖アイコンをクリックし、Label Assistで使用するモデルを選択します。

モデルを選択し、"Continue "をクリックしてラベルアシストを有効にします:

ラベルアシストの有効化

注釈のために新しい画像を開くと、ラベルアシストがトリガーして注釈を推奨します。

注釈を推奨するALabelアシスト

データセット管理YOLOv8

Roboflow は、コンピュータ・ビジョンのデータセットを理解するためのツール群を提供する。

まず、データセット検索を使用して、セマンティックなテキスト記述に合致する画像(つまり、人物を含むすべての画像を検索する)、または指定されたラベルに合致する画像(つまり、画像が特定のタグに関連付けられている)を検索することができます。データセット検索を使用するには、サイドバーの「データセット」をクリックします。次に、ページ上部の検索バーと関連フィルターを使用して検索クエリを入力します。

例えば、次のテキストクエリは、データセットから人物を含む画像を見つける:

画像の検索

タグ」セレクタを使って、特定のタグが付いた画像を絞り込んで検索することができます:

タグで画像を絞り込む

データセットを使ってモデルのトレーニングを始める前に、Roboflow Health Checkを使うことをお勧めします。このウェブツールは、ビジョンモデルのトレーニングの前に、データセットの状態を把握し、どのようにデータセットを改善できるかを教えてくれます。

Health Check を使用するには、サイドバーの "Health Check" リンクをクリックします。データセット内の画像の平均サイズ、クラスバランス、画像内のアノテーション位置のヒートマップなどを示す統計情報のリストが表示されます。

Roboflow ヘルスチェック分析

ヘルスチェックは、データセットのパフォーマンスを向上させるための変更を推奨します。例えば、クラスバランス機能は、ラベルに不均衡があることを示すかもしれません。

モデルトレーニング用に40以上のフォーマットでデータをエクスポート

データをエクスポートするには、データセットのバージョンが必要です。バージョンとは、データセットの状態を凍結したものです。バージョンを作成するには、まずサイドバーの「バージョン」をクリックします。そして、"Create New Version "ボタンをクリックしてください。このページで、データセットに適用する拡張と前処理のステップを選択することができます:

データセット・バージョンの作成Roboflow

各補強を選択すると、ポップアップが表示され、必要に応じて調整を行うことができます。以下は、指定されたパラメーター内で明るさのオーグメントを調整する例です:

データセットにオーグメンテーションを適用する

データセット・バージョンが生成されたら、データをさまざまな形式にエクスポートできます。データセット・バージョンのページにある「データセットをエクスポート」ボタンをクリックして、データをエクスポートしてください:

データセットのエクスポート

これでYOLOv8 をカスタムデータセットで訓練する準備ができた。このガイドと YouTubeビデオに従ってステップ・バイ・ステップで説明するか、Ultralytics のドキュメントを参照してください。

テストと配備のためのカスタムYOLOv8 モデル重みのアップロード

Roboflow は、NVIDIA Jetsons、Luxonis OAKs、Raspberry Pis、GPU- ベースのデバイスなどで使用するための、デプロイされたモデルとSDKのための無限にスケーラブルなAPIを提供します。

YOLOv8 の重みをRoboflow にアップロードすることで、YOLOv8 のモデルをデプロイすることができる。これはPython の数行のコードで行うことができる。新しいPython ファイルを作成し、以下のコードを追加する:

import roboflow  # install with 'pip install roboflow'

roboflow.login()

rf = roboflow.Roboflow()

project = rf.workspace(WORKSPACE_ID).project("football-players-detection-3zvbc")
dataset = project.version(VERSION).download("yolov8")

project.version(dataset.version).deploy(model_type="yolov8", model_path=f"{HOME}/runs/detect/train/")

このコードでは、プロジェクトIDとバージョンIDをアカウントとプロジェクトの値に置き換えてください。 Roboflow API キーを取得する方法については、こちらをご覧ください。

上記のコードを実行すると、認証を求められます。その後、あなたのモデルがアップロードされ、あなたのプロジェクト用のAPIが作成されます。このプロセスが完了するまでに最大30分かかることがあります。

モデルをテストし、サポートされているSDKのデプロイ手順を見つけるには、Roboflow サイドバーの「Deploy」タブにアクセスしてください。このページの上部に、モデルをテストできるウィジェットが表示されます。ライブテストのためにウェブカメラを使用したり、画像やビデオをアップロードすることができます。

サンプル画像で推論を実行する

また、アップロードしたモデルをラベリングアシスタントとして使用することもできます。この機能は、Roboflow にアップロードされた画像にアノテーションを推薦するために、あなたの学習済みモデルを使用します。

YOLOv8 モデルの評価方法

Roboflow は、モデルの評価に使用するためのさまざまな機能を提供する。

モデルをRoboflow にアップロードすると、モデル評価ツールにアクセスすることができます。このツールは、モデルのパフォーマンスを示す混同マトリックスや、インタラクティブなベクトル分析プロットを提供します。これらの機能は、モデルを改善する機会を見つけるのに役立ちます。

混乱マトリックスにアクセスするには、Roboflow ダッシュボードのモデルページに行き、「詳細評価を見る」をクリックします:

Roboflow モデル評価開始

混乱マトリックスがポップアップで表示されます:

混同行列

混乱マトリックス上のボックスにカーソルを合わせると、そのボックスに関連する値が表示されます。ボックスをクリックすると、それぞれのカテゴリの画像が表示されます。画像をクリックすると、その画像に関連するモデル予測とグランドトゥルースデータが表示されます。

さらに詳しく知りたい場合は、「ベクトル分析」をクリックしてください。CLIPを使用して計算された、データセット内の画像の散布図が表示されます。プロット内で画像が近ければ近いほど、意味的に類似しています。各画像は、白と赤の間の色を持つドットとして表されます。ドットが赤ければ赤いほど、モデルのパフォーマンスが悪いことを示します。

ベクトル分析プロット

ベクトル解析を使用すると、次のことができます:

  • 画像のクラスターを見つける;
  • モデルのパフォーマンスが低いクラスターを特定する;
  • モデルの性能が低い画像間の共通点を可視化する。

学習リソース

YOLOv8 モデルの作成にRoboflow を使用する方法について、もっと知りたいですか?以下のリソースが参考になるかもしれません。

  • カスタムデータセットでYOLOv8 を訓練する:カスタムデータセットでYOLOv8 モデルを訓練する方法を示すインタラクティブなノートブックに従ってください。
  • Autodistill:大規模な基礎ビジョンモデルを使用して、特定のモデルのためにデータをラベル付けします。Autodistill を使って、YOLOv8 分類、検出、セグメンテーションモデルのトレーニングに使用する画像にラベルを付けることができます。
  • スーパービジョン:Python コンピュータビジョンモデルを扱う際に役立つユーティリティを備えたパッケージ。Supervision を使って、検出のフィルタリングや混同行列の計算などを、Python の数行のコードで行うことができます。
  • Roboflow ブログ Roboflow ブログでは、YOLOv8 モデルのトレーニング方法からアノテーションのベストプラクティスまで、コンピュータビジョンに関する500以上の記事を掲載しています。
  • Roboflow YouTubeチャンネルYouTube チャンネルでは、YOLOv8 モデルのトレーニングから画像の自動ラベリングまで、コンピュータ ビジョンに関する詳細なガイドを多数ご用意しています。

プロジェクト・ショーケース

以下は、YOLOv8 とRoboflow を併用してコンピュータ・ビジョン・モデルを作成する際に寄せられた多くのフィードバックの一部です。

ショーケース画像 ショーケース画像 ショーケース画像

よくあるご質問

Roboflow を使ってYOLOv8 モデルのデータにラベルを付けるには?

Roboflow を使ったYOLOv8 モデルのラベリングデータは、Roboflow Annotate を使えば簡単です。まず、Roboflow でプロジェクトを作成し、画像をアップロードする。アップロード後、画像のバッチを選択し、"Start Annotating "をクリックする。を使用することができます。 B キーでバウンディングボックス、または P キーを使用します。注釈を素早く行うには、サイドバーのカーソルアイコンをクリックして、SAM ベースのラベルアシスタントを使用します。詳しい手順は これ.

YOLOv8 トレーニングデータを収集するために、Roboflow はどのようなサービスを提供していますか?

Roboflow は、YOLOv8 トレーニングデータを収集するための2つの主要なサービスを提供します:Universeと Collectです。Universeは25万以上のビジョンデータセットへのアクセスを提供し、Collectはウェブカメラと自動プロンプトを使用して画像を収集するのに役立ちます。

Roboflow を使って、YOLOv8 のデータセットをどのように管理、分析できますか?

Roboflow は、データセット検索、タグ付け、ヘルスチェックなどの堅牢なデータセット管理ツールを提供しています。検索機能を使用すると、テキストの説明やタグに基づいて画像を検索できます。ヘルスチェックは、クラスバランス、画像サイズ、アノテーションヒートマップを表示し、データセットの品質に関する洞察を提供します。これは、YOLOv8 モデルをトレーニングする前に、データセットのパフォーマンスを最適化するのに役立ちます。詳細情報はこちらをご覧ください。

Roboflow からYOLOv8 データセットをエクスポートするには?

Roboflow からYOLOv8 データセットをエクスポートするには、データセットのバージョンを作成する必要がある。サイドバーの "Versions "をクリックし,次に "Create New Version "をクリックし,必要な拡張を適用する.バージョンが生成されたら、"Export Dataset "をクリックし、YOLOv8 フォーマットを選択する。このプロセスはこちら。

YOLOv8 のモデルをRoboflow と統合し、展開するにはどうすればよいですか?

YOLOv8 の重みをPython の数行のコードでアップロードすることで、YOLOv8 のモデルをRoboflow に統合し、デプロイすることができます。提供されているスクリプトを使用して、モデルを認証し、アップロードしてください。スクリプトの詳細と詳しい説明については、このセクションを参照してください。

YOLOv8 モデルを評価するために、Roboflow はどのようなツールを提供しているか?

Roboflow には、混同行列やベクトル分析プロットなどのモデル評価ツールがあります。これらのツールは、モデルページの「詳細評価を見る」ボタンからアクセスできます。これらの機能は、モデルのパフォーマンス上の問題を特定し、改善点を見つけるのに役立ちます。詳細については、このセクションを参照してください。



作成日:2023-11-12 更新日:2024-07-05
作成者:glenn-jocher(11),Burhan-Q(1),capjamesg(1)

コメント