コンテンツへスキップ

データセットの概要

Ultralytics は、検出、インスタンス分割、ポーズ推定、分類、多オブジェクト追跡などのコンピュータビジョンタスクを容易にするために、様々なデータセットをサポートしています。以下は、Ultralytics の主なデータセットのリストと、各コンピュータビジョンタスクとそれぞれのデータセットの概要です。

NEW 🚀Ultralytics エクスプローラー

データセットの埋め込み画像の作成、類似画像の検索、SQLクエリの実行、セマンティック検索の実行、自然言語による検索も可能です!GUIアプリで始めることも、APIを使って独自に構築することもできます。詳しくはこちらをご覧ください。

Ultralytics エクスプローラー スクリーンショット

検出データセット

バウンディングボックスオブジェクト検出は、各オブジェクトの周りにバウンディングボックスを描画することにより、画像内のオブジェクトを検出し、ローカライズすることを含むコンピュータビジョン技術である。

  • Argoverse:豊富なアノテーションを持つ都市環境の3Dトラッキングとモーション予測データを含むデータセット。
  • COCO: オブジェクト検出、セグメンテーション、キャプション付けのための大規模データセット。
  • COCO8: COCO trainとCOCO valの最初の4つの画像を含む。
  • グローバル小麦2020:世界中から収集された小麦の頭部画像のデータセット。
  • Objects365:365の物体カテゴリと600K以上の注釈付き画像を持つ、物体検出のための高品質で大規模なデータセット。
  • OpenImagesV7:Googleによる包括的なデータセットで、1.7Mの訓練画像と42kの検証画像がある。
  • SKU-110K:1万1000枚以上の画像と170万個のバウンディングボックスを含む、小売環境における高密度の物体検出を特徴とするデータセット。
  • VisDrone:ドローンで撮影された10K以上の画像とビデオシーケンスからのオブジェクト検出とマルチオブジェクトトラッキングデータを含むデータセット。
  • VOC: Pascal Visual Object Classes (VOC)データセット。20のオブジェクトクラスと11K以上の画像を含む、オブジェクト検出とセグメンテーションのためのデータセット。
  • xView:60のオブジェクトカテゴリと100万以上の注釈付きオブジェクトを持つ俯瞰画像中のオブジェクト検出用データセット。
  • Roboflow 100:7つの画像領域にまたがる100のデータセットからなる多様な物体検出ベンチマークで、モデルの包括的な評価を行う。

インスタンス・セグメンテーション・データセット

インスタンスセグメンテーションは、画像内のオブジェクトをピクセルレベルで識別し、位置を特定するコンピュータビジョン技術である。

  • COCO: オブジェクト検出、セグメンテーション、キャプション付けタスク用に設計された大規模なデータセットで、20万枚以上のラベル付き画像がある。
  • COCO8-seg: インスタンスのセグメンテーションタスク用の小規模なデータセットで、セグメンテーション注釈付きのCOCO画像8枚のサブセットを含む。
  • Crack-seg:道路や壁のひび割れを検出するために特別に作られたデータセットで、物体検出とセグメンテーションの両方のタスクに適用できる。
  • Package-seg: 倉庫や産業環境で荷物を識別するためのデータセットで、物体検出とセグメンテーションの両方のアプリケーションに適しています。
  • Carparts-seg: 自動車の部品を識別するために作られたデータセットで、設計、製造、研究のニーズに対応している。オブジェクト検出とセグメンテーションの両方のタスクに対応している。

ポーズ推定

姿勢推定は、カメラまたはワールド座標系に対するオブジェクトの相対的な姿勢を決定するために使用される技術です。

  • COCO: ポーズ推定タスクのために設計された、人間のポーズアノテーションを含む大規模データセット。
  • COCO8-pose:人間のポーズアノテーションが付いた8枚のCOCO画像のサブセットを含む、ポーズ推定タスク用の小規模データセット。
  • Tiger-pose: トラに焦点を当てた263枚の画像からなるコンパクトなデータセットで、ポーズ推定タスクのためにトラ1頭につき12個のキーポイントがアノテーションされている。

分類

画像分類は、画像をその視覚的内容に基づいて1つまたは複数の定義済みのクラスまたはカテゴリに分類することを含むコンピュータビジョンのタスクです。

  • Caltech 101: 画像分類タスクのための101のオブジェクトカテゴリの画像を含むデータセット。
  • カルテック256Caltech101の拡張版で、256のオブジェクトカテゴリーと、より難易度の高い画像が用意されている。
  • CIFAR-10: 32x32のカラー画像60K枚を10クラスに分類したデータセット。
  • CIFAR-100:CIFAR-10の拡張版で、1クラスあたり100のオブジェクトカテゴリと600の画像を持つ。
  • Fashion-MNIST:画像分類タスクのための、10のファッションカテゴリの70,000グレースケール画像からなるデータセット。
  • ImageNet:1,400万以上の画像と20,000以上のカテゴリを持つ、物体検出と画像分類のための大規模なデータセット。
  • ImageNet-10:実験とテストをより迅速に行うための、ImageNetの10カテゴリより小さいサブセット。
  • Imagenette:ImageNetの小さなサブセットで、10個の区別しやすいクラスが含まれ、訓練とテストを迅速に行うことができる。
  • Imagewoof:画像分類タスクのための10犬種カテゴリを含む、ImageNetのより困難なサブセット。
  • MNIST:手書き数字のグレースケール画像70,000枚からなる画像分類用データセット。

オリエンテッド・バウンディング・ボックス(OBB)

OBB(Oriented Bounding Boxes)は、回転したバウンディングボックスを使用して画像内の角度のあるオブジェクトを検出するためのコンピュータビジョンの手法であり、多くの場合、航空画像や衛星画像に適用される。

  • DOTAv2:170万個のインスタンスと11,268枚の画像を持つ人気のOBB航空画像データセット。

マルチオブジェクト・トラッキング

マルチオブジェクトトラッキングは、ビデオシーケンス内の複数のオブジェクトを検出し、時間をかけて追跡するコンピュータビジョン技術です。

  • Argoverse:多オブジェクト追跡タスクのための豊富なアノテーションを持つ、都市環境からの3D追跡および運動予測データを含むデータセット。
  • VisDrone:ドローンで撮影された10K以上の画像とビデオシーケンスからのオブジェクト検出とマルチオブジェクトトラッキングデータを含むデータセット。

新しいデータセットを提供する

新しいデータセットを提供するには、既存のインフラとうまく整合させるためのいくつかのステップが必要である。以下に必要なステップを示す:

新しいデータセットを投稿する手順

  1. 画像を集める:データセットに属する画像を集める。これらの画像は、公共データベースやあなた自身のコレクションなど、さまざまな情報源から集めることができる。

  2. 画像に注釈を付ける:タスクに応じて、バウンディングボックス、セグメント、またはキーポイントで画像に注釈を付けます。

  3. 注釈のエクスポート:これらの注釈をYOLO *.txt Ultralytics 。

  4. データセットの整理:データセットを正しいフォルダ構造に整理してください。その際 train/ そして val/ トップレベル・ディレクトリがあり、それぞれの中に images/ そして labels/ サブディレクトリにある。

    dataset/
    ├── train/
    │   ├── images/
    │   └── labels/
    └── val/
        ├── images/
        └── labels/
    
  5. を作成する。 data.yaml ファイル:データセットのルート・ディレクトリに data.yaml ファイルには、データセット、クラス、その他必要な情報が記述されている。

  6. 画像の最適化(オプション):データセットのサイズを小さくして処理を効率化したい場合は、以下のコードを使って画像を最適化できます。これは必須ではありませんが、データセットのサイズを小さくし、ダウンロード速度を速くするためにお勧めします。

  7. データセットをZIP圧縮する:データセットフォルダ全体をzipファイルに圧縮する。

  8. ドキュメントとPRあなたのデータセットと、それが既存のフレームワークにどのように適合するかを説明するドキュメントページを作成する。その後、Pull Request (PR)を提出する。PRの提出方法の詳細については、Ultralytics Contribution Guidelinesを参照してください。

データセットを最適化して圧縮するコード例

データセットの最適化と圧縮

from pathlib import Path
from ultralytics.data.utils import compress_one_image
from ultralytics.utils.downloads import zip_directory

# Define dataset directory
path = Path('path/to/dataset')

# Optimize images in dataset (optional)
for f in path.rglob('*.jpg'):
    compress_one_image(f)

# Zip dataset into 'path/to/dataset.zip'
zip_directory(path)

これらのステップに従うことで、Ultralytics' 既存の構造とうまく統合した新しいデータセットを提供することができる。



作成日:2023-11-12 更新日:2024-03-03
著者:グレン・ジョーチャー(6)、アビラミ・ヴィナ(1)、chr043416@gmail.com(1)、AyushExel(2)

コメント