Data Annotation
A anotação de dados acrescenta dados de referência, como classes, caixas, máscaras e pontos-chave, a dados brutos. Veja os tipos de anotação por tarefa, formatos de arquivo e anotação automática.
A anotação de dados é o processo de adicionar informações de referência a dados brutos, como o nome de uma classe para uma imagem, uma caixa ou um polígono ao redor de cada objeto, pontos-chave em um corpo ou uma etiqueta em um trecho de texto, para que modelos de aprendizagem supervisionada possam aprender com esses dados. É sinônimo de rotulagem de dados, e as equipes de visão computacional costumam usar o termo anotação para geometrias desenhadas, como caixas e máscaras. Uma anotação tem duas partes: a geometria ou etiqueta desenhada por uma pessoa ou modelo e o formato de arquivo que a armazena para o treinamento.
Tipos de anotação por tarefa#
A saída que um modelo precisa produzir determina o que os anotadores desenham. Os detalhes levam tempo, então as equipes escolhem o tipo de anotação mais simples que contenha as informações necessárias para o modelo.
- Caixas delimitadoras: Uma caixa e uma classe por objeto para detecção de objetos. O formato YOLO grava um arquivo de texto por imagem, com uma linha
class x_center y_center width heightpor objeto, normalizada de 0 a 1 pelo tamanho da imagem. O JSON do COCO armazena[x_min, y_min, width, height]em pixels, e o XML do Pascal VOC armazena as coordenadas em pixels de dois cantos. - Polígonos e máscaras: Contornos para segmentação de instâncias, ou uma classe para cada pixel na segmentação semântica. YOLO e COCO armazenam polígonos como listas de vértices, e o COCO também armazena máscaras como codificação por comprimento de sequência (RLE) para regiões de multidões.
- Rótulos de classe: Uma classe por imagem para classificação de imagens, geralmente armazenada como o nome da pasta que contém a imagem, o layout de pastas dos conjuntos de dados de classificação no estilo ImageNet.
- Pontos-chave: Uma posição x, y e um indicador de visibilidade para cada ponto de referência na estimativa de pose. As anotações de pessoas do COCO marcam 17 pontos-chave, cada um identificado como não rotulado, rotulado mas oculto, ou visível.
- Caixas orientadas: Quatro pontos dos cantos que se ajustam a objetos girados, como navios e veículos em imagens aéreas, usados para detecção de caixas delimitadoras orientadas.
A precisão da anotação é mais importante para objetos pequenos. Deslocar uma caixa de 20 × 20 pixels 3 pixels na horizontal e 3 pixels na vertical reduz para 0,57 sua interseção sobre união (IoU) com a caixa original, então uma previsão que corresponda ao objeto real seria considerada uma falha em 8 dos 10 limiares de IoU, de 0,60 a 0,95, usados no cálculo da precisão média média (mAP) do COCO. Diretrizes por escrito que definem cada classe e resolvem casos limítrofes, como o quão justa deve ser a caixa em objetos parcialmente ocultos, mantêm milhares de anotações consistentes.
Anotação além de imagens#
- Vídeo: Caixas ou máscaras em cada quadro, vinculadas por IDs de rastreamento que acompanham cada objeto ao longo do tempo para o rastreamento de múltiplos objetos.
- Lidar e 3D: Paralelepípedos em nuvens de pontos, cada um com centro, tamanho e ângulo de orientação, para a detecção de objetos 3D em condução e robótica.
- Texto: Trechos marcados por deslocamentos de caracteres e um tipo de entidade para o reconhecimento de entidades nomeadas (NER), ou um rótulo por documento para tarefas como análise de sentimento.
- Áudio: Segmentos com marcação temporal e transcrições ou identidades de falantes para o reconhecimento de fala.
- Preferências de modelo: Anotadores escolhem a melhor entre duas respostas do modelo, produzindo os dados de comparação usados na aprendizagem por reforço com feedback humano (RLHF).
Anotação automática#
A anotação assistida por modelo começa com propostas do modelo, que as pessoas revisam e corrigem. Um detector propõe caixas para as classes que já conhece, e um modelo de segmentação baseado em prompts, como o Segment Anything da Meta, transforma uma caixa ou um clique em uma máscara, substituindo o traçado de polígonos vértice por vértice. A função auto_annotate do pacote Ultralytics encadeia as duas etapas: um detector YOLO26 encontra e classifica objetos, e o SAM 2.1, que é executado no pacote Ultralytics, converte cada caixa em um polígono salvo no formato de segmentação YOLO.
from pathlib import Path
from ultralytics.data.annotator import auto_annotate
from ultralytics.utils import ASSETS
# Detect objects in the bundled sample images, then turn each box into a SAM 2.1 polygon
auto_annotate(data=ASSETS, det_model="yolo26n.pt", sam_model="sam2.1_b.pt", output_dir="auto_labels")
# Read the annotation file written for the bus image
rows = Path("auto_labels/bus.txt").read_text().splitlines()
print(f"{len(rows)} objects annotated")
print(rows[0][:80])Cada linha de bus.txt contém um índice de classe COCO, seguido pelos pares de vértices x e y do polígono normalizados entre 0 e 1, prontos para que um anotador revise e corrija antes do treinamento. Detecções abaixo do limiar de confiança padrão de 0,25 não recebem anotação, então ainda é preciso desenhar manualmente os objetos que não foram encontrados. A Ultralytics Platform também pode anotar automaticamente conjuntos de dados de detecção com modelos de linguagem visual e detectores de vocabulário aberto que precisam apenas dos nomes das classes, e os resultados dos benchmarks de VLMs mostram a precisão com que cada um rotula imagens do mundo real.
Anotação de dados e termos relacionados#
- Rotulagem de dados: Um sinônimo, mais comum para etiquetas de classe em itens inteiros, como marcar um e-mail como spam.
- Aumento de dados: Transforma imagens anotadas e suas anotações em conjunto, por exemplo, espelhando as coordenadas das caixas em uma inversão horizontal, para ampliar a variedade dos dados de referência existentes.
- Aprendizagem semissupervisionada: Um modelo anota os próprios dados sem rótulos e treina com suas próprias predições confiáveis, chamadas pseudorrótulos, sem revisão humana.
- Dados sintéticos: Imagens renderizadas ou geradas cujas anotações vêm do gerador, que conhece a posição e o contorno exatos de cada objeto.










