Conjunto de dados Argoverse#
O conjunto de dados Argoverse da Ultralytics (Argoverse-HD) é um conjunto de dados 2D de deteção de objetos com 54.446 imagens rotuladas de condução autónoma — 39.384 para treino e 15.062 para validação — distribuídas por 8 classes: pessoa, bicicleta, carro, motociclo, autocarro, camião, semáforo e sinal de stop. As imagens são captadas pela câmara frontal central em anel de um veículo, e as anotações são provenientes do projeto de perceção em fluxo da Carnegie Mellon University, desenvolvido com base nos dados de condução Argoverse 1.1 da Argo AI. É um benchmark de grande dimensão e do mundo real para treinar modelos de visão computacional que detetam objetos na estrada em cenários de condução autónoma.
Explore Argoverse-HD na Ultralytics Platform para pré-visualizar amostras anotadas, consultar as estatísticas do conjunto de dados e cloná-lo para treino.
O ficheiro *.zip do Argoverse-HD (~31,5 GB), necessário para o treino, foi removido do Amazon S3 após a Ford encerrar a Argo AI. Está disponível para transferência manual no Google Drive — a transferência automática não funcionará, por isso descarregue o arquivo e extraia-o para a pasta Argoverse do seu diretório de conjuntos de dados antes de treinar.
Principais funcionalidades#
- 8 classes de deteção de objetos: pessoa, bicicleta, carro, motociclo, autocarro, camião, semáforo e sinal de stop.
- 54.446 imagens rotuladas — 39.384 para treino e 15.062 para validação — além de uma divisão de teste sem rótulos, reservada para o desafio eval.ai.
- ~31,5 GB de imagens de alta resolução captadas pela câmara frontal central em anel em cenários urbanos de condução autónoma.
- As anotações são convertidas automaticamente para o formato YOLO na primeira utilização, para que o conjunto de dados possa ser usado diretamente no treino de modelos de deteção Ultralytics YOLO.
Estrutura do conjunto de dados#
O conjunto de dados Argoverse-HD está dividido em três subconjuntos predefinidos, definidos pela configuração Argoverse.yaml:
| Divisão | Imagens | Rótulos |
|---|---|---|
| Treinar | 39,384 | Sim |
| Validação | 15,062 | Sim |
| Teste | — | Sem rótulos (desafio eval.ai) |
Todas as imagens compartilham as mesmas 8 classes de objetos (índices de 0 a 7): pessoa, bicicleta, carro, motocicleta, ônibus, caminhão, semáforo e placa de pare.
Após o download manual, a Ultralytics converte automaticamente as anotações originais do Argoverse-HD em rótulos de detecção YOLO na primeira vez que você treina, portanto não é necessário fazer o pré-processamento manual.
Aplicações#
O conjunto de dados Argoverse-HD é compatível com diversas aplicações de detecção de objetos na condução autônoma:
- Percepção para veículos autônomos — detecte veículos, pedestres e ciclistas com uma câmera voltada para a frente para dar suporte à navegação de veículos autônomos.
- Sistemas avançados de assistência ao condutor (ADAS) — reconheça semáforos e placas de pare para emitir alertas ao condutor em tempo real.
- Monitoramento de tráfego — conte e acompanhe usuários das vias em cenários urbanos para análises de cidades inteligentes.
- Pesquisa e prototipagem — um benchmark amplo e do mundo real para aprender treinamento de modelos e predição com dados de condução.
YAML do conjunto de dados#
Um arquivo YAML define a configuração do conjunto de dados, incluindo caminhos, classes e outros detalhes relevantes. Para o conjunto de dados Argoverse, o arquivo Argoverse.yaml é mantido em https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/Argoverse.yaml.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# Argoverse-HD dataset (ring-front-center camera) by Argo AI: https://www.cs.cmu.edu/~mengtial/proj/streaming/
# Documentation: https://docs.ultralytics.com/datasets/detect/argoverse
# Example usage: yolo train data=Argoverse.yaml
# parent
# ├── ultralytics
# └── datasets
# └── Argoverse ← downloads here (31.5 GB)
# 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: Argoverse # dataset root dir
train: Argoverse-1.1/images/train/ # train images (relative to 'path') 39384 images
val: Argoverse-1.1/images/val/ # val images (relative to 'path') 15062 images
test: Argoverse-1.1/images/test/ # test images (optional) https://eval.ai/web/challenges/challenge-page/800/overview
# Classes
names:
0: person
1: bicycle
2: car
3: motorcycle
4: bus
5: truck
6: traffic_light
7: stop_sign
# Download script/URL (optional) ---------------------------------------------------------------------------------------
download: |
import json
from pathlib import Path
from ultralytics.utils import TQDM
from ultralytics.utils.downloads import download
def argoverse2yolo(annotation_file):
"""Convert Argoverse dataset annotations to YOLO format for object detection tasks."""
labels = {}
with open(annotation_file, encoding="utf-8") as f:
a = json.load(f)
for annot in TQDM(a["annotations"], desc=f"Converting {annotation_file} to YOLO format..."):
img_id = annot["image_id"]
img_name = a["images"][img_id]["name"]
img_label_name = f"{Path(img_name).stem}.txt"
cls = annot["category_id"] # instance class id
x_center, y_center, width, height = annot["bbox"]
x_center = (x_center + width / 2) / 1920.0 # offset and scale
y_center = (y_center + height / 2) / 1200.0 # offset and scale
width /= 1920.0 # scale
height /= 1200.0 # scale
img_dir = annotation_file.parents[2] / "Argoverse-1.1" / "labels" / a["seq_dirs"][a["images"][annot["image_id"]]["sid"]]
if not img_dir.exists():
img_dir.mkdir(parents=True, exist_ok=True)
k = str(img_dir / img_label_name)
if k not in labels:
labels[k] = []
labels[k].append(f"{cls} {x_center} {y_center} {width} {height}\n")
for k in labels:
with open(k, "w", encoding="utf-8") as f:
f.writelines(labels[k])
# Download 'https://argoverse-hd.s3.amazonaws.com/Argoverse-HD-Full.zip' (deprecated S3 link)
dir = Path(yaml["path"]) # dataset root dir
urls = ["https://drive.google.com/file/d/1st9qW3BeIwQsnR0t8mRpvbsSWIo16ACi/view?usp=drive_link"]
print("\n\nWARNING: Argoverse dataset MUST be downloaded manually, autodownload will NOT work.")
print(f"WARNING: Manually download Argoverse dataset '{urls[0]}' to '{dir}' and re-run your command.\n\n")
# download(urls, dir=dir)
# Convert
annotations_dir = "Argoverse-HD/annotations/"
(dir / "Argoverse-1.1" / "tracking").rename(dir / "Argoverse-1.1" / "images") # rename 'tracking' to 'images'
for d in "train.json", "val.json":
argoverse2yolo(dir / annotations_dir / d) # convert Argoverse annotations to YOLO labelsUso#
Para treinar um modelo YOLO26n no conjunto de dados Argoverse por 100 épocas, com tamanho de imagem 640, use os exemplos de código a seguir. Para ver uma lista completa dos argumentos disponíveis, consulte a página de treinamento do modelo.
from ultralytics import YOLO
# Carregar um modelo
model = YOLO("yolo26n.pt") # carregue um modelo pré-treinado (recomendado para treinamento)
# Treinar o modelo
results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)Após o treinamento, execute a inferência com o modelo ajustado em novas imagens ou vídeos de condução:
from ultralytics import YOLO
# Carregar um modelo
model = YOLO("path/to/best.pt") # carregar um modelo Argoverse ajustado
# Inferência usando o modelo
results = model.predict("path/to/driving-scene.jpg")Dados de exemplo e anotações#
O conjunto de dados Argoverse-HD contém imagens de condução em alta resolução capturadas por uma câmera frontal central do conjunto de câmeras, anotadas com caixas delimitadoras 2D para as 8 classes de objetos. Abaixo está uma imagem de exemplo do conjunto de dados com as respectivas anotações:

- Cena de condução anotada: esta imagem mostra objetos da via — como veículos e pedestres — rotulados com caixas delimitadoras 2D, o formato que os modelos YOLO aprendem a prever durante o treinamento.
Citações e agradecimentos#
As anotações de detecção 2D do Argoverse-HD usadas neste conjunto de dados vêm do trabalho de percepção em fluxo da Carnegie Mellon University. Se você usar o conjunto de dados em sua pesquisa ou desenvolvimento, cite:
@inproceedings{li2020towards,
title={Towards Streaming Perception},
author={Li, Mengtian and Wang, Yu-Xiong and Ramanan, Deva},
booktitle={Proceedings of the European Conference on Computer Vision (ECCV)},
pages={473--488},
year={2020}
}
@inproceedings{chang2019argoverse,
title={Argoverse: 3D Tracking and Forecasting with Rich Maps},
author={Chang, Ming-Fang and Lambert, John and Sangkloy, Patsorn and Singh, Jagjeet and Bak, Slawomir and Hartnett, Andrew and Wang, Dequan and Carr, Peter and Lucey, Simon and Ramanan, Deva and others},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={8748--8757},
year={2019}
}Gostaríamos de agradecer à Carnegie Mellon University pelas anotações de detecção do Argoverse-HD e à Argo AI pela criação do conjunto de dados original Argoverse, um recurso valioso para a comunidade de pesquisa em condução autônoma.
Perguntas frequentes#
O conjunto de dados Argoverse da Ultralytics (Argoverse-HD) é um conjunto de dados de detecção de objetos 2D com 54.446 imagens de condução autônoma distribuídas por 8 classes — pessoa, bicicleta, carro, motocicleta, ônibus, caminhão, semáforo e placa de pare. Ele é usado para treinar e avaliar modelos que detectam objetos da via com uma câmera veicular voltada para a frente, dando suporte à pesquisa em percepção para veículos autônomos, ADAS e monitoramento de tráfego.
O conjunto de dados Argoverse-HD tem 8 classes (pessoa, bicicleta, carro, motocicleta, ônibus, caminhão, semáforo e placa de pare) e 54.446 imagens rotuladas — 39.384 para treinamento e 15.062 para validação — além de uma divisão de teste sem rótulos reservada para o desafio eval.ai.
Na Ultralytics, ele é um conjunto de dados de detecção de objetos 2D (quadros de câmera do Argoverse-HD com caixas delimitadoras 2D), e não o conjunto de pesquisa mais amplo do programa Argoverse para rastreamento 3D, previsão de movimento ou LiDAR. Você pode treiná-lo com um modelo de detecção padrão, como
yolo26n.pt.Primeiro, baixe o conjunto de dados manualmente (veja abaixo) e, em seguida, treine usando o arquivo de configuração
Argoverse.yaml:Exemplofrom ultralytics import YOLO # Carregar um modelo model = YOLO("yolo26n.pt") # carregue um modelo pré-treinado (recomendado para treinamento) # Treinar o modelo results = model.train(data="Argoverse.yaml", epochs=100, imgsz=640)Para obter uma explicação detalhada dos argumentos, consulte a página de treinamento do modelo.
O arquivo
*.zipdo Argoverse-HD (~31.5 GB), hospedado anteriormente no Amazon S3, agora pode ser baixado manualmente pelo Google Drive. O download automático não funcionará; portanto, baixe o arquivo compactado e extraia-o para a pastaArgoversedo seu diretório de conjuntos de dados antes de executar o comando de treinamento.Sim. A Ultralytics Platform permite carregar e versionar grandes conjuntos de dados, como o Argoverse-HD, e depois treinar e implantar modelos de detecção de objetos na nuvem sem uma configuração local pesada. Você também pode explorar conjuntos de dados relacionados na visão geral dos conjuntos de dados de detecção.



