tuliq
TuliqComputer VisionReference
ReferenceUpdated Sep 12, 2026

YOLO vs COCO vs Pascal VOC: Annotation Format Comparison

A quick side-by-side of file structure, coordinate systems, and tooling for YOLO, COCO, and Pascal VOC annotations.

Quick lookup if you already know these three formats exist and need to know what actually differs. For the fuller explanation of how each one works, see Computer Vision Annotation Formats.

YOLOCOCOPascal VOC
File layoutOne .txt per image + shared classes.txtOne .json for the whole datasetOne .xml per image
CoordinatesNormalized 0–1, center x/y + width/heightAbsolute pixels, top-left x/y + width/heightAbsolute pixels, xmin/ymin/xmax/ymax corners
Declares image size?No — must be supplied separatelyYes, per imageYes, per image
Class namesSeparate file, referenced by indexEmbedded (categories array)Embedded (<name> per object)
Shapes supportedRectangle onlyRectangle onlyRectangle only
Typical useYOLOv5/v8/v11 and similar training scriptsPyTorch-based frameworks (Detectron2, MMDetection); portable single-file datasetsPipelines built around a VOC-style loader; older TF Object Detection API workflows

The one conversion detail that trips people up

Converting between COCO and Pascal VOC never needs extra information — both already declare pixel dimensions. Converting to or from YOLO does, because YOLO's .txt never records the image's actual size. Any converter has to ask for it explicitly, or it's silently guessing.

Quick answer

Convert or verify a file

Tools mentioned in this guide

Related reading