COCO128 데이터셋
소개
Ultralytics COCO128은(는) COCO train 2017 세트의 처음 128개 이미지로 구성된 작지만 다재다능한 객체 탐지 데이터 세트입니다. 이 데이터 세트는 객체 탐지 모델을 테스트하고 디버깅하거나 새로운 탐지 접근 방식을 실험하는 데 이상적입니다. 128개의 이미지가 있어 쉽게 관리할 수 있을 만큼 작지만 오류에 대한 훈련 파이프라인을 테스트하고 더 큰 데이터 세트를 훈련하기 전에 건전성 검사 역할을 할 수 있을 만큼 다양합니다.
참고: Ultralytics COCO 데이터셋 개요
이 데이터셋은 Ultralytics Platform 및 YOLO26과 함께 사용하도록 고안되었습니다.
데이터세트 YAML
데이터셋 구성을 정의하는 데 yaml(Yet Another Markup Language) 파일이 사용됩니다. 이 파일에는 데이터셋의 경로, 클래스 및 기타 관련 정보가 포함되어 있습니다. COCO128 데이터셋의 경우, coco128.yaml 파일은 다음 위치에서 관리됩니다. https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/coco128.yaml.
ultralytics/cfg/datasets/coco128.yaml
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# COCO128 dataset https://www.kaggle.com/datasets/ultralytics/coco128 (first 128 images from COCO train2017) by Ultralytics
# Documentation: https://docs.ultralytics.com/datasets/detect/coco/
# Example usage: yolo train data=coco128.yaml
# parent
# ├── ultralytics
# └── datasets
# └── coco128 ← downloads here (7 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: coco128 # dataset root dir
train: images/train2017 # train images (relative to 'path') 128 images
val: images/train2017 # val images (relative to 'path') 128 images
test: # test images (optional)
# 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/coco128.zip
사용법
이미지 크기 640으로 COCO128 데이터셋에서 100 epochs 동안 YOLO26n 모델을 훈련시키려면 다음 코드 스니펫을 사용할 수 있습니다. 사용 가능한 인수의 전체 목록은 모델 훈련 페이지를 참조하십시오.
훈련 예제
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="coco128.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco128.yaml model=yolo26n.pt epochs=100 imgsz=640
샘플 이미지 및 주석
다음은 COCO128 데이터셋의 이미지 예시와 해당 주석입니다:

- 모자이크 이미지: 이 이미지는 모자이크 데이터 세트 이미지로 구성된 훈련 배치를 보여줍니다. 모자이킹은 각 훈련 배치 내에서 객체와 장면의 다양성을 높이기 위해 여러 이미지를 단일 이미지로 결합하는 훈련 중 사용되는 기술입니다. 이는 모델이 다양한 객체 크기, 종횡비 및 컨텍스트로 일반화하는 능력을 향상시키는 데 도움이 됩니다.
이 예시는 COCO128 데이터셋 이미지의 다양성과 복잡성 및 훈련 과정에서 모자이킹을 사용하는 이점을 보여줍니다.
인용 및 감사의 말씀
연구 또는 개발 작업에서 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 컨소시엄에 감사를 표합니다. COCO 데이터셋 및 그 생성자에 대한 자세한 정보는 COCO 데이터셋 웹사이트를 방문하십시오.
FAQ
Ultralytics COCO128 데이터셋은 무엇에 사용되나요?
Ultralytics COCO128 데이터셋은 COCO train 2017 데이터셋에서 처음 128개 이미지를 포함하는 소형 서브셋입니다. 주로 객체 detect 모델 테스트 및 디버깅, 새로운 detect 접근 방식 실험, 그리고 더 큰 데이터셋으로 확장하기 전에 훈련 파이프라인을 검증하는 데 사용됩니다. 관리하기 쉬운 크기 덕분에 빠른 반복 작업에 적합하며, 동시에 의미 있는 테스트 케이스가 될 만큼 충분한 다양성을 제공합니다.
COCO128 데이터셋을 사용하여 YOLO26 모델을 어떻게 훈련시키나요?
COCO128 데이터셋에서 YOLO26 모델을 훈련시키려면 python 또는 CLI 명령을 사용할 수 있습니다. 방법은 다음과 같습니다:
훈련 예제
from ultralytics import YOLO
# Load a pretrained model
model = YOLO("yolo26n.pt")
# Train the model
results = model.train(data="coco128.yaml", epochs=100, imgsz=640)
yolo detect train data=coco128.yaml model=yolo26n.pt epochs=100 imgsz=640
더 많은 학습 옵션 및 파라미터는 학습 문서를 참조하십시오.
COCO128과 함께 모자이크 증강을 사용하면 어떤 이점이 있나요?
sample_images에서 볼 수 있듯이, 모자이크 증강은 여러 훈련 이미지를 하나의 합성 이미지로 결합합니다. 이 기술은 COCO128로 훈련할 때 여러 이점을 제공합니다:
- 각 훈련 배치 내에서 객체와 컨텍스트의 다양성을 높입니다.
- 다양한 객체 크기 및 종횡비에 대한 모델 일반화 개선
- 다양한 스케일에서 객체에 대한 탐지 성능을 향상시킵니다.
- 더 다양한 훈련 샘플을 생성하여 작은 데이터 세트의 유용성을 극대화합니다.
이 기술은 COCO128과 같은 소규모 데이터셋에 특히 유용하며, 모델이 제한된 데이터에서 더 강력한 특징을 학습하도록 돕습니다.
COCO128은 다른 COCO 데이터셋 변형과 어떻게 비교되나요?
COCO128 (이미지 128개)은 크기 면에서 COCO8 (이미지 8개)과 전체 COCO 데이터셋 (이미지 118K+개) 사이에 위치합니다:
- COCO8: 단 8개의 이미지(훈련 4개, 검증 4개)를 포함하며, 빠른 테스트 및 디버깅에 이상적입니다.
- COCO128: 128개의 이미지 포함 - 크기와 다양성 사이의 균형
- 전체 COCO: 11만 8천 개 이상의 훈련 이미지 포함 - 포괄적이지만 리소스 집약적
COCO128은 COCO8보다 더 많은 다양성을 제공하면서도, 실험 및 초기 모델 개발을 위해 전체 COCO 데이터셋보다 훨씬 더 관리하기 용이한 좋은 중간 지점을 제공합니다.
COCO128을 객체 detect 외의 작업에 사용할 수 있나요?
COCO128은 주로 객체 detect를 위해 설계되었지만, 데이터셋의 어노테이션은 다른 컴퓨터 비전 작업에 맞게 조정될 수 있습니다:
- 인스턴스 분할(Instance segmentation): 어노테이션에 제공된 분할 마스크 사용
- 키포인트 감지: 키포인트 어노테이션이 있는 사람이 포함된 이미지용
- 전이 학습: 사용자 지정 작업을 위해 모델을 미세 조정하기 위한 시작점입니다.
segmentation과 같은 특수 작업을 위해서는 적절한 어노테이션이 포함된 segmentation과 같이 목적에 맞게 구축된 변형인 COCO8-seg를 사용하는 것을 고려하십시오.