コンテンツへスキップ

COCO8-マルチスペクトル・データセット

はじめに

ウルトラリティクス UltralyticsCOCO8-Multispectralデータセットは、マルチスペクトル物体検出モデルの実験を容易にするために設計された、オリジナルのCOCO8データセットの高度なバリエーションです。COCO train 2017セットと同じ8枚の画像(トレーニング用4枚、検証用4枚)で構成されていますが、各画像は10チャンネルのマルチスペクトルフォーマットに変換されています。標準的なRGBチャンネルを超えて拡張することで、COCO8-Multispectralは、より豊富なスペクトル情報を活用できるモデルの開発と評価を可能にします。

マルチスペクトル画像の概要

COCO8-MultispectralはUltralytics HUBと完全に互換性があります。 YOLO11との完全な互換性があり、コンピュータビジョンワークフローへのシームレスな統合を保証します。

データセット生成

COCO8-Multispectralのマルチスペクトル画像は、元のRGB画像を可視スペクトル内の等間隔に並んだ10個のスペクトルチャンネルにわたって補間することによって作成された。このプロセスには以下が含まれる:

  • 波長の割り当て:RGBチャンネルに公称波長を割り当てる-赤:650 nm、緑:510 nm、青:175 nm:赤:650nm、緑:510nm、青:475nm。
  • 補間:450 nmから700 nmの中間波長のピクセル値を推定するために線形補間を使用。
  • 外挿:SciPyの外挿を適用する interp1d 関数を使用して、元のRGB波長を超える値を推定し、完全なスペクトル表現を保証する。

このアプローチは、マルチスペクトルイメージングプロセスをシミュレートし、モデルのトレーニングと評価に、より多様なデータセットを提供する。マルチスペクトル画像処理に関する詳細は、マルチスペクトル画像処理Wikipediaの記事を参照。

データセット YAML

COCO8-MultispectralデータセットはYAMLファイルを使って設定され、データセットのパス、クラス名、重要なメタデータが定義されています。公式の coco8-multispectral.yaml ファイルを Ultralytics GitHubリポジトリ.

ultralytics.yaml

# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license

# COCO8-Multispectral dataset (COCO8 images interpolated across 10 channels in the visual spectrum) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco8-multispectral/
# Example usage: yolo train data=coco8-multispectral.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco8-multispectral  ← downloads here (20.2 MB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/coco8-multispectral # dataset root dir
train: images/train # train images (relative to 'path') 4 images
val: images/val # val images (relative to 'path') 4 images
test: # test images (optional)

# Number of multispectral image channels
channels: 10

# Classes
names:
  0: person
  1: bicycle
  2: car
  3: motorcycle
  4: airplane
  5: bus
  6: train
  7: truck
  8: boat
  9: traffic light
  10: fire hydrant
  11: stop sign
  12: parking meter
  13: bench
  14: bird
  15: cat
  16: dog
  17: horse
  18: sheep
  19: cow
  20: elephant
  21: bear
  22: zebra
  23: giraffe
  24: backpack
  25: umbrella
  26: handbag
  27: tie
  28: suitcase
  29: frisbee
  30: skis
  31: snowboard
  32: sports ball
  33: kite
  34: baseball bat
  35: baseball glove
  36: skateboard
  37: surfboard
  38: tennis racket
  39: bottle
  40: wine glass
  41: cup
  42: fork
  43: knife
  44: spoon
  45: bowl
  46: banana
  47: apple
  48: sandwich
  49: orange
  50: broccoli
  51: carrot
  52: hot dog
  53: pizza
  54: donut
  55: cake
  56: chair
  57: couch
  58: potted plant
  59: bed
  60: dining table
  61: toilet
  62: tv
  63: laptop
  64: mouse
  65: remote
  66: keyboard
  67: cell phone
  68: microwave
  69: oven
  70: toaster
  71: sink
  72: refrigerator
  73: book
  74: clock
  75: vase
  76: scissors
  77: teddy bear
  78: hair drier
  79: toothbrush

# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/coco8-multispectral.zip

でTIFF画像を準備する。 (channel, height, width) で保存される。 .tiff または .tif Ultralytics使用するための拡張機能:

import cv2
import numpy as np

# Create and write 10-channel TIFF
image = np.ones((10, 640, 640), dtype=np.uint8)  # CHW-order
cv2.imwritemulti("example.tiff", image)

# Read TIFF
success, frames_list = cv2.imreadmulti("example.tiff")
image = np.stack(frames_list, axis=2)
print(image.shape)  # (640, 640, 10)  HWC-order for training and inference

使用方法

COCO8-MultispectralデータセットのYOLO11nモデルを、画像サイズ640で100エポック学習させるには、以下の例を使用してください。トレーニングオプションの包括的なリストについては、YOLO トレーニングのドキュメントを参照してください。

列車の例

from ultralytics import YOLO

# Load a pretrained YOLO11n model
model = YOLO("yolo11n.pt")

# Train the model on COCO8-Multispectral
results = model.train(data="coco8-multispectral.yaml", epochs=100, imgsz=640)
# Train YOLO11n on COCO8-Multispectral using the command line
yolo detect train data=coco8-multispectral.yaml model=yolo11n.pt epochs=100 imgsz=640

モデルの選択とベストプラクティスの詳細については、Ultralytics YOLO モデルのドキュメントと YOLO モデルトレーニングのヒントガイドをご覧ください。

サンプル画像と注釈

以下は、COCO8-Multispectralデータセットからモザイク処理されたトレーニングバッチの例である:

データセットサンプル画像

  • モザイク処理された画像:この画像は、複数のデータセット画像をモザイク補強を使用して結合したトレーニングバッチを示します。モザイク補強は、各バッチ内のオブジェクトとシーンの多様性を高め、モデルが様々なオブジェクトサイズ、アスペクト比、背景に対してより良く一般化するのに役立ちます。

このテクニックはCOCO8-Multispectralのような小さなデータセットには特に有効で、学習時に各画像の有用性を最大限に引き出すことができるからだ。

引用と謝辞

COCOデータセットを研究や開発に使用する場合は、以下の論文を引用してください:

@misc{lin2015microsoft,
      title={Microsoft COCO: Common Objects in Context},
      author={Tsung-Yi Lin and Michael Maire and Serge Belongie and Lubomir Bourdev and Ross Girshick and James Hays and Pietro Perona and Deva Ramanan and C. Lawrence Zitnick and Piotr Dollár},
      year={2015},
      eprint={1405.0312},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

COCOコンソーシアムの コンピュータ・ビジョン・コミュニティへの継続的な貢献に感謝する。

よくあるご質問

Ultralytics COCO8-マルチスペクトルデータセットは何に使われるのか?

Ultralytics COCO8-Multispectralデータセットは、マルチスペクトル物体検出モデルの迅速なテストとデバッグ用に設計されています。わずか8枚の画像(トレーニング用4枚、検証用4枚)から構成されるこのデータセットは、以下のような検証に最適です。 YOLOトレーニングパイプラインを検証し、より大きなデータセットに拡張する前に、すべてが期待通りに動作することを確認するのに最適です。その他のデータセットについては、Ultralytics Datasets Catalogをご覧ください。

マルチスペクトルデータはどのように物体検出を向上させるのか?

マルチスペクトルデータは、標準的なRGBを超える追加のスペクトル情報を提供し、波長間の反射率の微妙な違いに基づいて物体を識別することを可能にします。これにより、特に困難なシナリオでの検出精度が向上します。マルチスペクトル画像処理とその高度なコンピュータビジョンへの応用について詳しくはこちらをご覧ください。

COCO8-MultispectralはUltralytics HUBおよびYOLO モデルと互換性がありますか?

はい、COCO8-MultispectralはUltralytics HUBおよび最新のYOLO11含むすべてのYOLO モデルと完全に互換性があります。これにより、このデータセットをトレーニングおよび検証ワークフローに簡単に統合することができます。

データ補強技術に関する詳しい情報はどこで入手できますか?

モザイクのようなデータ補強の方法と、それがモデルのパフォーマンスに与える影響についてより深く理解するためには、YOLO データ補強ガイドと データ補強に関するUltralytics ブログを参照してください。

ベンチマークや教育目的でCOCO8-Multispectralを使用できますか?

もちろんです!COCO8-Multispectralはサイズが小さく、マルチスペクトルであるため、ベンチマーク、教育用デモンストレーション、新しいモデルアーキテクチャのプロトタイピングに最適です。その他のベンチマークデータセットについては、Ultralytics Benchmark Dataset Collectionをご覧ください。



📅作成:1ヶ月前 ✏️更新しました 29日前

コメント