데이터셋 개요

Ultralytics는 감지, instance segmentation, 의미론적 세분화, 포즈 추정, 분류 및 다중 객체 추적과 같은 컴퓨터 비전 작업을 지원하기 위해 다양한 데이터셋을 제공합니다. 아래는 주요 Ultralytics 데이터셋 목록이며, 그 뒤에 각 컴퓨터 비전 작업과 관련 데이터셋에 대한 요약이 이어집니다.



Watch: Ultralytics Datasets Overview

Object Detection

Bounding box 객체 감지는 각 객체 주위에 경계 상자를 그려 이미지 내 객체를 감지하고 위치를 파악하는 컴퓨터 비전 기술입니다.

  • African-wildlife: 버팔로, 코끼리, 코뿔소, 얼룩말 등 아프리카 야생 동물의 이미지를 포함하는 데이터셋입니다.
  • Argoverse: 풍부한 주석이 달린 도시 환경의 3D 추적 및 동작 예측 데이터를 포함하는 데이터셋입니다.
  • Brain-tumor: 종양의 존재, 위치 및 특성에 대한 세부 정보가 포함된 MRI 또는 CT 스캔 이미지를 통해 뇌종양을 감지하기 위한 데이터셋입니다.
  • COCO: COCO(Common Objects in Context)는 80개의 객체 범주를 가진 대규모 객체 감지, 세분화 및 캡션 데이터셋입니다.
  • COCO8: 빠른 테스트에 적합한 COCO train 및 COCO val의 처음 4개 이미지로 구성된 작은 하위 집합입니다.
  • COCO8-Grayscale: RGB를 그레이스케일로 변환하여 생성된 COCO8의 그레이스케일 버전으로, 단일 채널 모델 평가에 유용합니다.
  • COCO8-Multispectral: RGB 파장을 보간하여 생성된 10채널 다중 스펙트럼 버전의 COCO8로, 스펙트럼 인식 모델 평가에 유용합니다.
  • COCO128: 테스트에 적합한 COCO train 및 COCO val의 처음 128개 이미지로 구성된 작은 하위 집합입니다.
  • Construction-PPE: 헬멧, 조끼, 장갑, 부츠, 고글과 같은 주요 안전 장비와 장비 미착용에 대한 라벨이 주석으로 달린 건설 현장 이미지 데이터셋으로, 규정 준수 및 작업자 보호를 위한 AI 모델 개발을 지원합니다.
  • Global Wheat 2020: Global Wheat Challenge 2020을 위한 밀 이삭 이미지를 포함하는 데이터셋입니다.
  • HomeObjects-3K: 스마트 홈 시스템, 로봇 공학 및 증강 현실 분야의 컴퓨터 비전 모델 개발 및 테스트에 이상적인 12개의 일반 가정용 아이템이 포함된 주석이 달린 실내 장면 데이터셋입니다.
  • KITTI New: 스테레오, LiDAR 및 GPS/IMU 입력을 특징으로 하며 다양한 도로 장면에서 2D 객체 감지에 사용되는 잘 알려진 자율 주행 데이터셋입니다.
  • LVIS: 1203개의 객체 범주를 가진 대규모 객체 감지, 세분화 및 캡션 데이터셋입니다.
  • Medical-pills: 제약 품질 관리, 분류 및 산업 표준 준수 보장과 같은 작업을 돕기 위해 설계된 의료용 알약 라벨 이미지 데이터셋입니다.
  • Objects365: 365개의 객체 범주와 60만 개 이상의 주석이 달린 이미지를 포함하는 고품질의 대규모 객체 감지 데이터셋입니다.
  • OpenImagesV7: 170만 개의 학습 이미지와 4만 2천 개의 검증 이미지를 포함하는 Google의 포괄적인 데이터셋입니다.
  • RF100: 종합적인 모델 평가를 위해 7개 이미지 도메인에 걸쳐 100개의 데이터셋으로 구성된 다양한 객체 감지 벤치마크입니다.
  • Signature: 서명이 주석으로 달린 다양한 문서 이미지를 특징으로 하며, 문서 검증 및 사기 탐지 연구를 지원합니다.
  • SKU-110K: 11,000개 이상의 이미지와 170만 개의 경계 상자를 포함하며 소매 환경에서의 밀집된 객체 감지를 특징으로 하는 데이터셋입니다.
  • VisDrone: 10,000개 이상의 이미지와 비디오 시퀀스를 포함하며 드론으로 촬영한 이미지에서 객체 감지 및 다중 객체 추적 데이터를 제공하는 데이터셋입니다.
  • VOC: 20개의 객체 클래스와 11,000개 이상의 이미지를 포함하며 객체 감지 및 세분화를 위한 Pascal Visual Object Classes(VOC) 데이터셋입니다.
  • xView: 60개의 객체 범주와 100만 개 이상의 주석이 달린 객체를 포함하며 항공 이미지에서 객체 감지를 위한 데이터셋입니다.

Instance Segmentation

인스턴스 세분화는 이미지 내의 객체를 픽셀 수준에서 식별하고 위치를 파악하는 컴퓨터 비전 기술입니다. 각 픽셀을 분류하기만 하는 의미론적 세분화와 달리, instance segmentation은 동일한 클래스의 서로 다른 인스턴스를 구분합니다.

  • Carparts-seg: 차량 부품 식별을 위해 특별히 구축된 데이터셋으로, 설계, 제조 및 연구 요구 사항을 충족합니다. 객체 감지 및 세분화 작업 모두에 사용됩니다.
  • COCO: 20만 개 이상의 라벨이 지정된 이미지를 포함하며 객체 감지, 세분화 및 캡션 작업을 위해 설계된 대규모 데이터셋입니다.
  • COCO8-seg: 세분화 주석이 포함된 8개의 COCO 이미지 하위 집합을 포함하며 인스턴스 세분화 작업을 위한 작은 데이터셋입니다.
  • COCO128-seg: 세분화 주석이 포함된 128개의 COCO 이미지 하위 집합을 포함하며 인스턴스 세분화 작업을 위한 작은 데이터셋입니다.
  • Crack-seg: 도로 및 벽의 균열을 감지하기 위해 특별히 제작된 데이터셋으로, 객체 감지 및 세분화 작업 모두에 적용 가능합니다.
  • Package-seg: 창고 또는 산업 환경에서 패키지를 식별하기 위해 맞춤화된 데이터셋으로, 객체 감지 및 세분화 애플리케이션 모두에 적합합니다.

Semantic Segmentation

의미론적 세분화는 이미지의 모든 픽셀에 클래스 라벨을 할당하여 자율 주행, 장면 파싱 및 토지 피복 매핑과 같은 애플리케이션을 위한 밀집된 장면 지도를 생성합니다.

  • Cityscapes: 19개의 학습 클래스를 포함하는 도시 거리 장면 의미론적 세분화 데이터셋입니다.
  • Cityscapes8: 빠른 의미론적 세분화 파이프라인 점검을 위한 8개의 이미지로 구성된 소형 Cityscapes 하위 집합입니다.
  • ADE20K: 150개의 의미론적 클래스를 포함하는 장면 파싱 데이터셋입니다.

Pose Estimation

포즈 추정은 카메라 또는 세계 좌표계에 대한 객체의 포즈를 결정하는 데 사용되는 기술입니다. 여기에는 객체, 특히 사람이나 동물의 주요 지점 또는 관절을 식별하는 것이 포함됩니다.

  • COCO: 포즈 추정 작업을 위해 설계되었으며 사람 포즈 주석이 포함된 대규모 데이터셋입니다.
  • COCO8-pose: 사람 포즈 주석이 포함된 8개의 COCO 이미지 하위 집합을 포함하며 포즈 추정 작업을 위한 작은 데이터셋입니다.
  • Dog-pose: 개에 초점을 맞춘 약 6,000개의 이미지를 특징으로 하며 포즈 추정 작업을 위해 개당 24개의 키포인트가 주석으로 달려 있습니다.
  • Hand-Keypoints: 사람의 손에 초점을 맞춘 26,000개 이상의 이미지를 특징으로 하며 포즈 추정 작업을 위해 손당 21개의 키포인트가 주석으로 달려 있습니다.
  • Tiger-pose: 포즈 추정 작업을 위해 호랑이당 12개의 키포인트가 주석으로 달린 263개의 이미지로 구성된 소형 데이터셋입니다.

Classification

Image classification은 시각적 콘텐츠를 기반으로 이미지를 사전 정의된 하나 이상의 클래스 또는 범주로 분류하는 컴퓨터 비전 작업입니다.

  • Caltech 101: 이미지 분류 작업을 위한 101개의 객체 범주 이미지를 포함하는 데이터셋입니다.
  • Caltech 256: 256개의 객체 범주와 더 어려운 이미지를 포함하는 Caltech 101의 확장 버전입니다.
  • CIFAR-10: 10개 클래스에 6만 개의 32x32 컬러 이미지가 포함된 데이터셋으로, 클래스당 6천 개의 이미지가 있습니다.
  • CIFAR-100: 100개의 객체 범주와 클래스당 600개의 이미지를 포함하는 CIFAR-10의 확장 버전입니다.
  • Fashion-MNIST: 이미지 분류 작업을 위해 10개의 패션 범주에 속하는 7만 개의 그레이스케일 이미지로 구성된 데이터셋입니다.
  • ImageNet: 1,400만 개 이상의 이미지와 20,000개의 범주를 포함하는 대규모 객체 감지 및 이미지 분류 데이터셋입니다.
  • ImageNet-10: 더 빠른 실험과 테스트를 위해 10개의 범주를 포함하는 ImageNet의 더 작은 하위 집합입니다.
  • Imagenette: 더 빠른 학습과 테스트를 위해 10개의 쉽게 구별되는 클래스를 포함하는 ImageNet의 작은 하위 집합입니다.
  • Imagewoof: 이미지 분류 작업을 위해 10개의 개 품종 범주를 포함하는 더 도전적인 ImageNet의 하위 집합입니다.
  • MNIST: 이미지 분류 작업을 위해 손으로 쓴 숫자의 7만 개 그레이스케일 이미지로 구성된 데이터셋입니다.
  • MNIST160: MNIST 데이터셋에서 각 MNIST 범주의 처음 8개 이미지입니다. 데이터셋은 총 160개의 이미지를 포함합니다.

Oriented Bounding Boxes (OBB)

OBB(Oriented Bounding Boxes)는 항공 및 위성 이미지에 주로 적용되는 회전된 경계 상자를 사용하여 이미지에서 각도가 있는 객체를 감지하는 컴퓨터 비전 방법입니다. 기존 경계 상자와 달리 OBB는 다양한 방향의 객체에 더 잘 맞습니다.

  • DOTA-v2: 170만 개의 인스턴스와 11,268개의 이미지를 포함하는 인기 있는 OBB 항공 이미지 데이터셋입니다.
  • DOTA8: 빠른 테스트에 적합한 DOTAv1 분할 세트의 처음 8개 이미지(학습용 4개, 검증용 4개)로 구성된 작은 하위 집합입니다.
  • DOTA128: OBB 모델 테스트를 위해 크기와 다양성 간의 균형을 제공하며 학습 및 검증을 위한 128개의 이미지로 구성된 DOTA 데이터셋의 하위 집합입니다.

Multi-Object Tracking

다중 객체 추적은 비디오 시퀀스에서 시간 경과에 따라 여러 객체를 감지하고 추적하는 컴퓨터 비전 기술입니다. 이 작업은 프레임 전반에서 객체의 일관된 정체성을 유지함으로써 객체 감지를 확장합니다.

  • Argoverse: 다중 객체 추적 작업을 위해 풍부한 주석이 달린 도시 환경의 3D 추적 및 동작 예측 데이터를 포함하는 데이터셋입니다.
  • VisDrone: 10,000개 이상의 이미지와 비디오 시퀀스를 포함하며 드론으로 촬영한 이미지에서 객체 감지 및 다중 객체 추적 데이터를 제공하는 데이터셋입니다.

새 데이터셋 기여하기

새 데이터셋을 기여하려면 기존 인프라와 잘 맞는지 확인하기 위한 몇 가지 단계가 필요합니다. 필요한 단계는 다음과 같습니다.



Watch: How to Contribute to Ultralytics Datasets

새 데이터셋 기여 단계

  1. 이미지 수집: 데이터셋에 속할 이미지를 수집합니다. 이는 공개 데이터베이스나 개인 컬렉션 등 다양한 출처에서 수집할 수 있습니다.

  2. 이미지 주석 작업: 작업에 따라 경계 상자, 세그먼트 또는 키포인트로 이미지에 주석을 답니다.

  3. 주석 내보내기: 이 주석을 Ultralytics가 지원하는 YOLO *.txt 파일 형식으로 변환합니다.

  4. 데이터셋 구성: 데이터셋을 올바른 폴더 구조로 정리합니다. 최상위 디렉토리에 images/labels/가 있어야 하며, 각 내부에 train/val/ 하위 디렉토리가 있어야 합니다.

    dataset/
    ├── images/
    │   ├── train/
    │   └── val/
    └── labels/
        ├── train/
        └── val/
  5. data.yaml 파일 생성: 데이터셋 루트 디렉토리에 데이터셋, 클래스 및 기타 필요한 정보를 설명하는 data.yaml 파일을 만듭니다.

  6. 이미지 최적화 (선택 사항): 더 효율적인 처리를 위해 데이터셋 크기를 줄이려면 아래 코드를 사용하여 이미지를 최적화할 수 있습니다. 필수는 아니지만 더 작은 데이터셋 크기와 빠른 다운로드 속도를 위해 권장됩니다.

  7. 데이터셋 압축: 전체 데이터셋 폴더를 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의 기존 구조와 잘 통합되는 새 데이터셋을 기여할 수 있습니다.

FAQ

Ultralytics는 객체 감지를 위해 어떤 데이터셋을 지원합니까?

Ultralytics는 다음을 포함하여 object detection을 위한 다양한 데이터셋을 지원합니다:

  • COCO: 80개의 객체 범주를 가진 대규모 객체 감지, 세분화 및 캡션 데이터셋입니다.
  • LVIS: 더 세밀한 객체 감지 및 세분화를 위해 설계된 1203개의 객체 범주를 가진 광범위한 데이터셋입니다.
  • Argoverse: 풍부한 주석이 달린 도시 환경의 3D 추적 및 동작 예측 데이터를 포함하는 데이터셋입니다.
  • VisDrone: 드론으로 촬영한 이미지에서 객체 감지 및 다중 객체 추적 데이터를 제공하는 데이터셋입니다.
  • SKU-110K: 11,000개 이상의 이미지를 포함하며 소매 환경에서의 밀집된 객체 감지를 특징으로 합니다.

이 데이터셋들은 다양한 객체 감지 애플리케이션을 위한 강력한 Ultralytics YOLO 모델 학습을 촉진합니다.

Ultralytics에 새 데이터셋을 기여하려면 어떻게 해야 합니까?

새 데이터셋을 기여하는 데는 몇 가지 단계가 포함됩니다:

  1. 이미지 수집: 공개 데이터베이스나 개인 컬렉션에서 이미지를 수집합니다.
  2. 이미지 주석 작업: 작업에 따라 경계 상자, 세그먼트 또는 키포인트를 적용합니다.
  3. 주석 내보내기: 주석을 YOLO *.txt 형식으로 변환합니다.
  4. Organize Dataset: Use the folder structure with train/ and val/ directories, each containing images/ and labels/ subdirectories.
  5. data.yaml 파일 생성: 데이터셋 설명, 클래스 및 기타 관련 정보를 포함합니다.
  6. 이미지 최적화 (선택 사항): 효율성을 위해 데이터셋 크기를 줄입니다.
  7. 데이터셋 압축: 데이터셋을 zip 파일로 압축합니다.
  8. 문서화 및 PR: Ultralytics Contribution Guidelines에 따라 데이터셋을 설명하고 Pull Request를 제출합니다.

포괄적인 가이드는 Contribute New Datasets를 방문하십시오.

내 데이터셋에 Ultralytics Platform을 사용해야 하는 이유는 무엇입니까?

Ultralytics Platform은 다음과 같은 강력한 데이터셋 관리 및 분석 기능을 제공합니다:

  • 원활한 데이터셋 관리: 한곳에서 데이터셋을 업로드하고, 정리하며 관리할 수 있습니다.
  • 즉각적인 학습 통합: 업로드된 데이터셋을 별도의 설정 없이 모델 학습에 직접 사용할 수 있습니다.
  • 시각화 도구: 데이터셋 이미지와 주석(annotation)을 탐색하고 시각화합니다.
  • 데이터셋 분석: 데이터셋 분포와 특성에 대한 인사이트를 얻을 수 있습니다.

이 플랫폼은 데이터셋 관리에서 모델 학습으로의 전환을 간소화하여 전체 프로세스를 더욱 효율적으로 만듭니다. Ultralytics Platform Datasets에 대해 자세히 알아보십시오.

컴퓨터 비전을 위한 Ultralytics YOLO 모델의 고유한 기능은 무엇입니까?

Ultralytics YOLO 모델은 computer vision 작업을 위한 몇 가지 고유한 기능을 제공합니다:

  • 실시간 성능: 시간이 중요한 애플리케이션을 위한 고속 추론 및 학습 기능을 제공합니다.
  • 범용성: 단일 프레임워크 내에서 객체 탐지, 인스턴스 세그멘테이션, 의미론적 세그멘테이션(semantic segmentation), 분류 및 포즈 추정 작업을 지원합니다.
  • 사전 학습된 모델: 다양한 애플리케이션을 위한 성능이 뛰어난 사전 학습된 모델에 액세스하여 학습 시간을 단축할 수 있습니다.
  • 광범위한 커뮤니티 지원: 문제 해결 및 개발을 위한 활발한 커뮤니티와 포괄적인 문서를 제공합니다.
  • 쉬운 통합: 기존 프로젝트 및 워크플로우에 통합할 수 있는 간단한 API를 제공합니다.

Ultralytics Models 페이지에서 YOLO 모델에 대해 더 자세히 알아보십시오.

Ultralytics 도구를 사용하여 데이터셋을 최적화하고 압축(zip)하는 방법은 무엇입니까?

Ultralytics 도구를 사용하여 데이터셋을 최적화하고 압축하려면 다음 예제 코드를 따르십시오:

데이터셋 최적화 및 압축
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)

이 프로세스는 데이터셋 크기를 줄여 저장 공간을 효율적으로 사용하고 다운로드 속도를 높이는 데 도움이 됩니다. 데이터셋 최적화 및 압축 방법에 대해 자세히 알아보십시오.

댓글