Meet YOLO26: next-gen vision AI.

Link to this sectionTécnicas de pré-processamento de dados para dados anotados de visão computacional#

O pré-processamento de dados transforma imagens brutas e anotadas nas entradas limpas e consistentes que um modelo de visão computacional precisa para treinar bem. Com o Ultralytics YOLO26, as operações principais de pixel — conversão RGB, escala para [0, 1] e redimensionamento — rodam automaticamente dentro do pipeline de treinamento, então o trabalho que resta é dividir seu conjunto de dados corretamente, equilibrar classes e escolher aumentações. Este guia cobre essas técnicas essenciais: redimensionamento, normalização, divisão de conjunto de dados, aumentação de dados e análise exploratória de dados (EDA).



Watch: How to Use Data Preprocessing and Augmentation to Improve Model Accuracy in Real-World Scenarios 🚀

Este passo vem depois que você definiu os objetivos do seu projeto e coletou e anotou seus dados, e ele fica no início do fluxo de trabalho de projetos de visão computacional.

Link to this sectionPor que o pré-processamento importa#

O pré-processamento coloca seus dados em um formato que reduz a carga computacional e melhora o desempenho do modelo. Ele aborda três problemas comuns em dados brutos:

  • Ruído: Variações irrelevantes ou aleatórias nos dados.
  • Inconsistência: Variações em tamanhos, formatos e qualidade das imagens.
  • Desequilíbrio: Distribuição desigual de classes ou categorias através do conjunto de dados.

Link to this sectionTécnicas de pré-processamento#

As técnicas principais são redimensionamento, normalização, divisão de conjunto de dados e aumentação. Com o YOLO26, as duas primeiras são automáticas, enquanto a divisão e a aumentação são onde suas escolhas importam mais.

Link to this sectionRedimensionamento de imagens#

Muitos modelos exigem um tamanho de entrada consistente, portanto, o redimensionamento torna as imagens uniformes e reduz a complexidade computacional. Dois métodos comuns de interpolação são:

  • Interpolação Bilinear: Suaviza os valores dos pixels tirando uma média ponderada dos quatro pixels mais próximos.
  • Vizinho Mais Próximo: Copia o valor do pixel mais próximo sem fazer média — é mais rápido, mas produz uma imagem mais pixelada.

Bibliotecas como OpenCV e PIL (Pillow) fornecem essas funções, mas com o YOLO26 você geralmente não redimensiona manualmente. O argumento imgsz durante o treinamento do modelo cuida disso: quando definido como um valor como 640, o YOLO escala cada imagem para que sua maior dimensão tenha 640 pixels enquanto preserva a proporção, e então preenche o lado mais curto (cinza padrão, valor 114) para atingir uma entrada quadrada de 640 × 640.

Link to this sectionNormalização de valores de pixels#

A normalização escala os valores dos pixels para um intervalo padrão, o que ajuda o modelo a convergir mais rápido durante o treinamento. Duas técnicas comuns são:

  • Escalonamento Mín-Máx: Escala os valores dos pixels para um intervalo de 0 a 1.
  • Normalização Z-Score: Escala os valores dos pixels com base em sua média e desvio padrão.

O YOLO26 lida com a normalização automaticamente como parte do seu pipeline de pré-processamento: ele converte imagens para RGB e escala os valores dos pixels para o intervalo [0, 1] dividindo por 255 (escala min-max). O YOLO não aplica a normalização de média/desvio-padrão (z-score) ao estilo ImageNet por padrão, então nenhuma etapa de normalização manual é necessária.

Link to this sectionDivisão do conjunto de dados#

Dividir os dados em conjuntos de treinamento, validação e teste permite que você avalie o modelo em dados não vistos e meça sua generalização. Uma divisão comum é 70% para treinamento, 20% para validação e 10% para testes. Ferramentas como scikit-learn ou TensorFlow tornam isso simples.

Mantenha estes pontos em mente ao dividir:

  • Mantenha a distribuição de classes: Garanta que cada classe seja representada proporcionalmente nos conjuntos de treinamento, validação e teste.
  • Equilibre as classes: Para conjuntos de dados desequilibrados, considere fazer oversampling da classe minoritária ou under-sampling da classe majoritária — apenas dentro do conjunto de treinamento.
Evite o vazamento de dados

Divida o conjunto de dados antes de aplicar qualquer aumentação ou outro pré-processamento, e aplique essas transformações apenas ao conjunto de treinamento. Aumentar antes da divisão permite que informações das imagens de validação ou teste influenciem o treinamento, produzindo pontuações enganosamente altas que colapsam em dados do mundo real.

Link to this sectionAumentando o conjunto de dados#

A aumentação de dados aumenta artificialmente o tamanho de um conjunto de dados criando versões modificadas de imagens existentes. Ela ajuda a reduzir o overfitting e melhora a generalização, com vários benefícios:

  • Modelos mais robustos: Variações em iluminação, orientação e escala tornam o modelo resiliente a distorções do mundo real.
  • Custo-efetivo: Você expande o conjunto de treinamento sem coletar e rotular novos dados.
  • Melhor uso dos dados: Cada imagem anotada gera múltiplas variações de treinamento.

Examples of data augmentation techniques including flips, rotations, scaling, and color adjustments applied to a sample image

Com o YOLO26, a aumentação é controlada através de argumentos de treinamento passados para model.train() ou as flags de CLI equivalentes — não editando o YAML do conjunto de dados, que define metadados do conjunto como caminhos, nomes de classes e divisões. As aumentações integradas incluem:

  • Mosaic, MixUp e CutMix (mosaic, mixup, cutmix): Combinam múltiplas imagens em uma amostra de treinamento.
  • Espelhamentos (fliplr, flipud): Espelha imagens horizontal ou verticalmente.
  • Transformações geométricas (degrees, translate, scale, shear, perspective): Rotaciona, desloca, amplia e distorce imagens.
  • Ajuste de cor HSV (hsv_h, hsv_s, hsv_v): Varia matiz, saturação e brilho.
  • Copiar e colar (copy_paste): Cola objetos entre imagens para segmentação.
Defina a intensidade da aumentação ao treinar
from ultralytics import YOLO

model = YOLO("yolo26n.pt")

# Augmentation is configured with training arguments, not the dataset YAML
model.train(data="coco8.yaml", epochs=10, hsv_h=0.015, fliplr=0.5, mosaic=1.0, degrees=10.0)

Para a lista completa de argumentos de aumentação e seus valores padrão, veja a referência de configurações de aumentação e o guia de aumentação de dados YOLO dedicado. Se o pacote albumentations estiver instalado, o YOLO também habilita suas aumentações integradas baseadas em Albumentations automaticamente.

Link to this sectionUm estudo de caso: Pré-processamento para detecção de veículos#

Considere um projeto para detectar e classificar veículos em imagens de tráfego com o YOLO26, começando de imagens anotadas com caixas delimitadoras e rótulos. Aqui está como cada decisão de pré-processamento se parece:

  • Redimensionamento: Nenhum trabalho manual — o YOLO26 redimensiona para imgsz durante o treinamento.
  • Normalização: Nenhum trabalho manual — o YOLO26 escala os valores dos pixels para [0, 1] automaticamente.
  • Divisão: Divida o conjunto de dados em 70% de treinamento, 20% de validação e 10% de teste, mantendo a distribuição de classes consistente entre as divisões.
  • Aumentação: Defina argumentos de treinamento adequados para cenas de tráfego — por exemplo, fliplr para invariância de direção, hsv_v para iluminação diurna/noturna e mosaic para densidade variada de objetos.

Com essas decisões tomadas, o conjunto de dados está pronto para Análise Exploratória de Dados (EDA).

Link to this sectionAnálise Exploratória de Dados (EDA)#

A EDA usa estatísticas e visualizações para revelar padrões e distribuições em seus dados, ajudando você a capturar problemas como desequilíbrio de classes ou outliers antes do treinamento.

Link to this sectionTécnicas estatísticas de EDA#

A EDA estatística começa com métricas básicas — média, mediana, desvio padrão e intervalo — calculadas sobre propriedades como distribuições de intensidade de pixels. Elas fornecem uma visão geral rápida da qualidade do seu conjunto de dados e revelam irregularidades cedo.

Link to this sectionTécnicas visuais de EDA#

Visualizações revelam padrões que as estatísticas resumidas perdem, como desequilíbrio de classes e outliers. Ferramentas comuns incluem:

  • Histogramas e box plots: Mostram a distribuição dos valores de pixels e sinalizam outliers na intensidade ou nas distribuições de características.
  • Gráficos de barras: Revelam desequilíbrio de classes comparando quantos exemplos cada classe possui.
  • Gráficos de dispersão: Exploram relacionamentos entre características da imagem ou anotações.
  • Mapas de calor: Visualizam distribuições de intensidade de pixels ou a distribuição espacial de anotações através das imagens.

Link to this sectionPlataforma Ultralytics para EDA#

Para uma abordagem sem código para EDA, envie seu conjunto de dados para a Plataforma Ultralytics. A aba Charts do conjunto de dados gera automaticamente as principais visualizações de EDA: distribuição da divisão, contagens das classes principais, histogramas de largura/altura da imagem e mapas de calor 2D das posições das anotações e dimensões da imagem. A aba Images permite que você navegue pelos seus dados em visualizações de grade, compacta ou de tabela com sobreposições de anotações, facilitando a identificação de exemplos rotulados incorretamente ou classes desequilibradas sem escrever código.

Link to this sectionConclusão#

Dados devidamente divididos, normalizados e aumentados reduzem o ruído e melhoram a generalização, transformando uma coleção bruta de imagens em um conjunto de treinamento confiável. Com seu conjunto de dados pré-processado, o próximo passo é treinar seu modelo. Se surgirem dúvidas ao longo do caminho, pergunte à comunidade no repositório GitHub da Ultralytics ou no servidor Discord da Ultralytics.

Link to this sectionFAQ#

Link to this sectionPor que o pré-processamento de dados é importante em projetos de visão computacional?#

O pré-processamento garante que seus dados estejam limpos, consistentes e em um formato otimizado para treinamento. Ao abordar ruído, inconsistência e desequilíbrio de classes em dados brutos, passos como redimensionamento, normalização, aumentação e divisão de conjunto de dados reduzem a carga computacional e melhoram o desempenho do modelo. Veja as etapas de um projeto de visão computacional para entender como isso se encaixa no fluxo de trabalho mais amplo.

Link to this sectionComo uso o Ultralytics YOLO para aumentação de dados?#

Configure a aumentação através de argumentos de treinamento, não pelo YAML do conjunto de dados. Passe argumentos como fliplr, mosaic, hsv_h e degrees para model.train() (ou as flags de CLI equivalentes) para definir a probabilidade e a intensidade de cada transformação. Estes são definidos nas configurações de aumentação e explicados no guia de aumentação de dados YOLO.

Link to this sectionQuais são as melhores técnicas de normalização para dados de visão computacional?#

As duas técnicas mais comuns são o escalonamento min-max (reescalar pixels para um intervalo de 0 a 1) e a normalização z-score (reescalar com base na média e desvio padrão). O YOLO26 aplica o escalonamento min-max automaticamente — convertendo imagens para RGB e dividindo os valores dos pixels por 255 — então você não precisa de uma etapa manual de normalização. Ele não aplica a normalização z-score por padrão.

Link to this sectionComo devo dividir meu conjunto de dados anotado para treinamento?#

Uma prática comum é 70% para treinamento, 20% para validação e 10% para teste. Mantenha a distribuição de classes através de todas as três divisões e evite o vazamento de dados aplicando a aumentação apenas ao conjunto de treinamento após a divisão. Ferramentas como scikit-learn ou TensorFlow lidam com a divisão de forma eficiente. Veja o guia de coleta e anotação de dados para a preparação upstream do conjunto de dados.

Link to this sectionO YOLO26 pode lidar com tamanhos de imagem variados sem redimensionamento manual?#

Sim. O argumento imgsz redimensiona imagens durante o treinamento e a inferência para que sua maior dimensão corresponda ao tamanho especificado (por exemplo, 640 pixels) enquanto preserva a proporção, então preenche o lado mais curto. Você não precisa redimensionar imagens sozinho — consulte a documentação de treinamento de modelo para detalhes.

Comentários