CVATインテグレーション#
CVATからの直接インポートに対応する予定です。Ultralytics Platformでは、CVATの画像物体検出またはセグメンテーションのエクスポートを、形式を選択せずそのままアップロードできるようになります。
それまでは、CVATがPlatformで読み取れるUltralytics YOLO形式ですでにエクスポートできるため、現在利用できる簡単な手順があります。
CVATから今すぐインポートする#
- CVATからエクスポートします。タスクを開いて、アクション > タスクデータセットをエクスポートを選択します(ジョブから行う場合はメニュー > ジョブデータセットをエクスポートです)。
- 形式を選択します。タスクに合ったUltralytics YOLOの項目を選びます。CVATでは
Ultralytics YOLO Detection 1.0、Ultralytics YOLO Detection Track 1.0、Ultralytics YOLO Segmentation 1.0、Ultralytics YOLO Oriented Bounding Boxes 1.0、Ultralytics YOLO Pose 1.0、Ultralytics YOLO Classification 1.0が個別に表示されます。 - 「画像を保存」を有効にし、
.zipに名前を付けて、OKをクリックします。「画像を保存」はCVAT Onlineの有料機能です。有効にしない場合、アーカイブにはラベルのみが含まれるため、アップロード前にlabels/を反映したimages/フォルダーに画像を追加してください。 - アーカイブをダウンロードします。エクスポートはバックグラウンドで実行されます。完了したらCVATのリクエストページから取得してください。
- Platformにアップロードします。ZIPから新しいデータセットを作成します。
- トレーニングします。ワークスペースを離れずに、アノテーションを編集し、トレーニングして、デプロイできます。

CLIでエクスポートする#
CVATのCLIを使うと、ターミナルから同じアーカイブをエクスポートできます。
pip install cvat-cli
cvat-cli project export-dataset --format "Ultralytics YOLO Detection 1.0" --with-images yes 104 dataset.zip104をプロジェクトIDに、形式文字列をタスクに合った種類に置き換えてください。--with-images yesは「画像を保存」スイッチに相当するCLIオプションです。有効にしない場合、アーカイブにはラベルのみが含まれるため、アップロード前にlabels/を反映したimages/フォルダーを追加してください。
CVATのUltralytics YOLOエクスポートはPlatformが想定する形式で出力されるため、変換は不要です。
archive.zip/
├── data.yaml # class names Platform reads
├── images/train/
└── labels/train/各エクスポートに含まれる内容#
各Ultralytics YOLO形式で出力されるのは、タスクで扱えるCVAT図形のみです。ラベル付けの方法に合った形式を選んでください。
- 物体検出では矩形が保持されますが、回転した矩形はスキップされます。これらは方向付きバウンディングボックスでエクスポートしてください。
- 物体検出トラックでは矩形とトラックIDが保持されます。Platformは矩形としてインポートし、トラックIDは無視します。
- セグメンテーションではポリゴンとマスクが保持され、マスクはポリゴンに変換されます。矩形は除外されます。
- ポーズではスケルトンのみが保持され、単独の点はエクスポートされません。
- 分類ではタグが保持され、タグのない画像は
no_labelクラスに分類されます。
いずれの形式でもポリラインは出力されません。
エクスポート形式を選択する#
CVATには多数のエクスポート形式があります。ここで重要な形式は次のとおりです。
| CVAT形式 | 対応状況 | 備考 |
|---|---|---|
| Ultralytics YOLO | 最適 | data.yamlが含まれるため、ラベル名をそのまま引き継げます |
| COCO 1.0 | はい | こちらも読み取り可能です。ポリゴンとボックスが混在する場合はセグメンテーションとしてインポートされ、ボックスのみのデータは除外されます |
| COCO Keypoints 1.0 | はい | ポーズデータセットとしてインポートされ、キーポイント数は最も一般的な図形から取得されます |
| YOLO 1.1 | 一部対応 | ボックスはインポートされますが、obj.namesファイルは読み取られません。クラスはclass0、class1、…として取り込まれます |
| CVAT for images | いいえ | XMLアノテーションはまだ読み取られません。CVAT for videoも同様です |
COCOアノテーションを読み取るには、それぞれにbboxが必要です。クラウド領域("iscrowd": 1)はスキップされます。CVATはマスクをCOCOのクラウド領域として出力するため、マスクは代わりにUltralytics YOLO Segmentationでエクスポートしてください。カテゴリ名がクラス名になり、アーカイブ内のすべてのJSONファイルでカテゴリIDが統一されるため、分割ごとにエクスポートしてもクラスIDの一貫性が保たれます。複数のポリゴンとして保存されたオブジェクトは、1つのポリゴンに結合されます。
PlatformはCVAT for images、CVAT for video、Pascal VOC XMLラベルを読み取りません。これらのエクスポートはエラーを表示せずに失敗します。画像はインポートされますが、アノテーションはインポートされず、画像が5枚以上含まれるエクスポートでは、画像フォルダー名をクラス名として取り込むこともあります。代わりにUltralytics YOLOまたはCOCOを選択してください。
インテグレーションで追加される機能#
インテグレーションにより、適切なエクスポート形式を選ぶ手順が不要になります。リリース後は、CVATの画像物体検出およびセグメンテーション形式のいずれかでエクスポートしてアップロードすると、Platformがアノテーションを対応するYOLOタスクに自動で割り当てます。
- 形式の選択が不要 — CVATの画像物体検出およびセグメンテーションのエクスポートは、ラベル名を保持したままYOLOデータセットに対応付けられます
- 1つのワークスペース — アノテーション、トレーニング、デプロイに別々のツールや変換スクリプトを使う必要がなくなります
- アノテーションを継続 — インポートしたデータセットは、SAMを活用したスマートアノテーションを含むPlatformのアノテーションエディターで開けます
- すぐにトレーニング — データセットは処理が完了するとすぐにクラウドトレーニングに利用できます
よくある質問#
タスクに合った Ultralytics YOLO の項目を選び、画像を保存をオンにしてください。
data.yamlが含まれるため、クラス名もそのまま引き継がれます。COCO 1.0 と COCO Keypoints 1.0 もインポートできますが、YOLO 1.1 ではクラス名が失われ、CVAT XML と Pascal VOC はアノテーションなしでインポートされます。画像を保存がオフになっていたか、CLI エクスポートの実行時に
--with-images yesが指定されていませんでした。その場合、アーカイブにはラベルだけが含まれます。画像を含めて再エクスポートしてください。画像を保存できないCVAT Onlineプランの場合は、labels/と同じ構成のimages/フォルダーをZIPに追加してください。はい。
Ultralytics YOLO Segmentation 1.0またはUltralytics YOLO Pose 1.0、あるいはCOCOの各形式を使用してください。マスクにはUltralytics YOLO Segmentationエクスポートが必要です。この形式ではマスクがポリゴンに変換されます。ポーズにはCVATのスケルトンが必要です。ポリゴンとボックスが混在するCOCOエクスポートはセグメンテーションデータセットとしてインポートされ、ボックスのみのアノテーションは除外されます。CVATの画像検出またはセグメンテーションのエクスポートをそのままアップロードできるようになり、Platformが対応するYOLOタスクに自動でマッピングします。現在、Ultralytics YOLOエクスポートを使ってインポートしたデータセットは、変更せずに引き続き利用できます。