Descrição geral dos conjuntos de dados de deteção de objectos
O treino de um modelo de deteção de objectos robusto e preciso requer um conjunto de dados abrangente. Este guia apresenta vários formatos de conjuntos de dados que são compatíveis com o modelo Ultralytics YOLO e fornece informações sobre a sua estrutura, utilização e como converter entre diferentes formatos.
Formatos de conjuntos de dados suportados
Ultralytics YOLO formato
O formato Ultralytics YOLO é um formato de configuração do conjunto de dados que permite definir o diretório raiz do conjunto de dados, os caminhos relativos aos directórios de imagens de treino/validação/teste ou *.txt
ficheiros que contêm caminhos de imagens e um dicionário de nomes de classes. Aqui tens um exemplo:
# 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 # 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)
# Classes (80 COCO classes)
names:
0: person
1: bicycle
2: car
# ...
77: teddy bear
78: hair drier
79: toothbrush
As etiquetas para este formato devem ser exportadas para o formato YOLO com um *.txt
por imagem. Se não existirem objectos numa imagem, não há *.txt
é necessário. O ficheiro *.txt
deve ser formatado com uma linha por objeto em class x_center y_center width height
formato. As coordenadas da caixa devem estar em xywh normalizado (de 0 a 1). Se as tuas caixas estiverem em pixels, deves dividir x_center
e width
por largura de imagem, e y_center
e height
pela altura da imagem. Os números de classe devem ser indexados a zero (começa com 0).
O ficheiro de etiquetas correspondente à imagem acima contém 2 pessoas (classe 0
) e um empate (classe 27
):
Ao utilizar o formato Ultralytics YOLO , organiza as imagens de treino e validação e as etiquetas como mostrado no exemplo do conjunto de dados COCO8 abaixo.
Utilização
Eis como podes utilizar estes formatos para treinar o teu modelo:
Exemplo
Conjuntos de dados suportados
Segue-se uma lista dos conjuntos de dados suportados e uma breve descrição de cada um:
- Argoverso: Uma coleção de dados de sensores recolhidos de veículos autónomos. Contém anotações de rastreio 3D para objectos de automóveis.
- COCO: Common Objects in Context (COCO) é um conjunto de dados de deteção, segmentação e legendagem de objectos em grande escala com 80 categorias de objectos.
- LVIS: O LVIS é um conjunto de dados de deteção, segmentação e legendagem de objectos em grande escala com 1203 categorias de objectos.
- COCO8: Um subconjunto mais pequeno do conjunto de dados COCO, o COCO8 é mais leve e mais rápido de treinar.
- GlobalWheat2020: Um conjunto de dados com imagens de cabeças de trigo para o Global Wheat Challenge 2020.
- Objectos365: Um conjunto de dados de deteção de objectos em grande escala com 365 categorias de objectos e 600 mil imagens, destinado a fazer avançar a investigação sobre deteção de objectos.
- AbrirImagensV7: Um conjunto de dados abrangente da Google com 1,7 milhões de imagens de treino e 42 mil imagens de validação.
- SKU-110K: Um conjunto de dados que contém imagens de produtos de retalho densamente embalados, destinado à deteção de objectos em ambientes de retalho.
- VisDrone: Um conjunto de dados centrado em imagens baseadas em drones, contendo várias categorias de objectos como carros, peões e ciclistas.
- COV: O PASCAL VOC é um popular conjunto de dados de deteção de objectos com 20 categorias de objectos, incluindo veículos, animais e mobiliário.
- xVer: Um conjunto de dados contendo imagens de satélite de alta resolução, concebido para a deteção de várias classes de objectos em vistas aéreas.
- Tumor cerebral: Este conjunto de dados inclui imagens de ressonância magnética ou de tomografia computorizada que contêm informações sobre a presença, a localização e as características do tumor cerebral. Desempenha um papel crucial no treino de modelos de visão computacional para automatizar a identificação de tumores, facilitando o diagnóstico precoce e o planeamento do tratamento.
- Vida selvagem africana: Com imagens da vida selvagem africana, como o búfalo, o elefante, o rinoceronte e a zebra, este conjunto de dados é fundamental para o treino de modelos de visão por computador. É indispensável para identificar animais em diferentes habitats e contribui significativamente para os esforços de investigação da vida selvagem.
Adicionar o teu próprio conjunto de dados
Se tiveres o teu próprio conjunto de dados e pretenderes utilizá-lo para treinar modelos de deteção com o formato Ultralytics YOLO , certifica-te de que segue o formato especificado acima em "Ultralytics YOLO format". Converte as tuas anotações para o formato necessário e especifica os caminhos, o número de classes e os nomes das classes no ficheiro de configuração YAML.
Porta ou converte formatos de etiquetas
Formato do conjunto de dados COCO para YOLO Formato
Podes converter facilmente etiquetas do popular formato de conjunto de dados COCO para o formato YOLO utilizando o seguinte fragmento de código:
Exemplo
Esta ferramenta de conversão pode ser utilizada para converter o conjunto de dados COCO ou qualquer conjunto de dados no formato COCO para o formato Ultralytics YOLO .
Lembra-te de verificar se o conjunto de dados que pretendes utilizar é compatível com o teu modelo e se segue as convenções de formato necessárias. Os conjuntos de dados corretamente formatados são cruciais para treinar modelos de deteção de objectos bem sucedidos.
Criado em 2023-11-12, Atualizado em 2024-04-18
Autores: glenn-jocher (7), IvorZhu331 (1), Laughing-q (1), RizwanMunawar (1)