Ao clicar em “Aceitar todos os cookies”, concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Definições de cookies
Ao clicar em “Aceitar todos os cookies”, concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Aprenda como usar o Albumentations para aumentos ao treinar de forma personalizada o Ultralytics YOLO11 para melhorar o desempenho do modelo com diversos dados de treinamento.
Ao construir uma solução de visão computacional, coletar um conjunto diversificado de imagens para treinar modelos de Visão de IA pode ser uma parte crucial do processo. Muitas vezes, requer muito tempo e dinheiro e, às vezes, as imagens coletadas ainda não são variadas o suficiente para que os modelos aprendam de forma eficaz.
Por exemplo, modelos de visão computacional como o Ultralytics YOLO11 podem ser treinados sob medida em conjuntos de dados de imagens para várias tarefas de visão computacional relacionadas a diferentes aplicações. Dados diversos são fundamentais porque ajudam o modelo a generalizar melhor, permitindo que ele reconheça objetos e padrões em uma ampla gama de cenários do mundo real.
Se está a ter dificuldades com a falta de dados diversificados, as técnicas de data augmentation de imagem podem ser uma ótima solução. Métodos como rotação, inversão e ajuste de brilho podem ajudar a aumentar a variedade do seu conjunto de dados, melhorando a capacidade do modelo de lidar com uma gama mais ampla de condições.
É por isso que a Ultralytics suporta uma integração para o aumento de dados de imagem. Utilizando o Albumentations, uma ferramenta popular que oferece uma coleção de transformações, pode criar dados visuais diversificados. Esta integração simplifica o processo de treino do YOLO11, aumentando automaticamente as imagens de treino, o que leva a um melhor desempenho do modelo.
Neste artigo, exploraremos como você pode usar a integração do Albumentations, seus benefícios e seu impacto no treinamento do modelo.
O que é Albumentations?
Os modelos de visão computacional podem aprender com um amplo conjunto de imagens de alta qualidade para reconhecer objetos em diferentes ambientes. Coletar grandes conjuntos de dados de fontes do mundo real pode ser lento, caro e ineficiente. Para agilizar essa tarefa, você pode usar o aumento de dados de imagem para criar novas variações de imagens existentes, ajudando os modelos a aprender com diferentes cenários sem coletar mais dados.
Especificamente, você pode aproveitar o Albumentations, uma biblioteca de código aberto introduzida para aumento eficiente de dados de imagem em 2018. Ele oferece suporte a uma variedade de operações, desde mudanças geométricas simples, como rotações e inversões, até ajustes mais complexos, como brilho, contraste e adição de ruído.
Fig. 1. Exemplos de diferentes tipos de aumentos de dados de imagem.
Principais características do Albumentations
O Albumentations é conhecido pelo seu alto desempenho, o que significa que pode processar imagens de forma rápida e eficiente. Construído sobre bibliotecas otimizadas como OpenCV e NumPy, ele lida com grandes conjuntos de dados com tempo de processamento mínimo, tornando-o ideal para aumento rápido de dados durante o treinamento do modelo.
Aqui estão alguns outros recursos importantes do Albumentations:
Vasta gama de transformações: Albumentations oferece mais de 70 tipos de aumentos. Essas variações ajudam os modelos a aprender a detectar objetos, apesar das mudanças na iluminação, ângulos ou fundos.
Otimizado para velocidade: Utiliza técnicas avançadas de otimização como SIMD (Single Instruction, Multiple Data), que processa múltiplos pontos de dados de uma só vez para acelerar o aumento de imagem e lidar com grandes conjuntos de dados de forma eficiente.
Três níveis de aumentos: Ele aprimora os dados de três maneiras. Por exemplo, os aumentos no nível de pixel ajustam o brilho e a cor sem alterar os objetos. Enquanto isso, os aumentos no nível espacial modificam o posicionamento do objeto, preservando os detalhes principais, e os aumentos no nível de mistura combinam partes de diferentes imagens para criar novas amostras.
Por que você deve usar a integração do Albumentations?
Você pode estar se perguntando: existem muitas maneiras de aplicar aumentos a um conjunto de dados, e você pode até criar o seu próprio usando ferramentas como o OpenCV. Então, por que escolher uma integração que suporte uma biblioteca como o Albumentations?
Criar aumentos manualmente com ferramentas como o OpenCV pode levar muito tempo e requer alguma experiência. Também pode ser complicado ajustar as transformações para obter os melhores resultados. A integração do Albumentations facilita esse processo. Ele oferece muitas transformações prontas para uso que podem economizar tempo e esforço ao preparar seu conjunto de dados.
Outro motivo para escolher a integração do Albumentations é que ele funciona perfeitamente com o pipeline de treinamento de modelos da Ultralytics. Isso facilita muito o treinamento personalizado do YOLO11, pois os aumentos são aplicados automaticamente durante o treinamento. Simplifica o processo, para que você possa se concentrar mais em melhorar seu modelo do que em lidar com a preparação dos dados.
Começando com a integração do Albumentations
Curiosamente, usar as integrações do Albumentations para treinar o YOLO11 é mais simples do que pode parecer. Assim que as bibliotecas certas são configuradas, a integração aplica automaticamente aumentos de dados de imagem durante o treino. Ajuda o modelo a aprender com diferentes variações de imagem usando o mesmo conjunto de dados.
Em seguida, vamos percorrer como instalar e usar a integração do Albumentations ao treinar o YOLO11 de forma personalizada.
Instalando o pacote Python Ultralytics e Albumentations
Antes de aplicar as aumentações, tanto o pacote Ultralytics Python quanto o Albumentations precisam ser instalados. A integração foi construída para que ambas as bibliotecas funcionem juntas perfeitamente por padrão, para que você não precise se preocupar com configurações complexas.
Todo o processo de instalação pode ser concluído em apenas alguns minutos com um único comando pip, que é uma ferramenta de gerenciamento de pacotes para instalar bibliotecas Python, como mostrado na imagem abaixo.
Fig 2. Instalando Ultralytics e Albumentations.
Após a instalação do Albumentations, o modo de treinamento do modelo Ultralytics aplica automaticamente o aumento de dados durante o treinamento. Se o Albumentations não estiver instalado, esses aumentos não serão aplicados. Para mais detalhes, você pode consultar a documentação oficial do Ultralytics.
Treinando o YOLO11 com a ajuda da integração Albumentations
Vamos entender melhor o que está acontecendo sob o capô da integração do Albumentations.
Aqui está uma análise mais detalhada dos aumentos que estão sendo aplicados durante o treinamento do YOLO11:
Desfoque: Esta transformação adiciona um leve desfoque a uma imagem. Ajuda o modelo a detetar objetos mesmo quando estão fora de foco.
Desfoque mediano: Reduz o ruído aleatório, preservando as bordas dos objetos em uma imagem. Isso facilita a detecção de objetos pelo modelo em ambientes complexos.
Escala de cinza: Ao converter uma imagem para preto e branco, este aumento pode ajudar o modelo a se concentrar em formas e texturas em vez de cores.
CLAHE (Equalização de histograma adaptativa com limite de contraste): Esta técnica de aumento melhora o contraste nas imagens, particularmente em áreas que estão muito escuras ou difíceis de ver, como em condições de pouca luz ou nebulosas. Isso torna os objetos nessas áreas mais claros e fáceis para o modelo identificar.
Fig. 3. Um exemplo de uma augmentação em escala de cinza aplicada a uma imagem de um gato.
Aplicações do YOLO11 e da integração Albumentations
Se você estiver treinando o YOLO11 de forma personalizada para uma aplicação específica, a integração do Albumentations pode ajudar a melhorar o desempenho do modelo, adaptando-se a várias condições. Vamos discutir algumas aplicações do mundo real e os desafios que esta integração pode resolver.
No entanto, criar essas soluções de visão computacional traz seu próprio conjunto de desafios. As varreduras médicas podem variar amplamente entre hospitais, influenciadas por fatores como diferentes equipamentos, configurações e até mesmo a experiência dos técnicos. Variações no brilho, contraste e exposição podem afetar a consistência e a precisão dos modelos de Visão de IA, tornando difícil para eles terem um desempenho confiável em diferentes ambientes.
É aqui que a integração de ferramentas como o Albumentations se torna essencial. Ao gerar várias versões aumentadas da mesma varredura, o Albumentations permite que o modelo aprenda com uma variedade de qualidades de imagem. Isso ajuda o modelo a se tornar mais robusto, permitindo que ele detecte doenças com precisão em imagens de alta e baixa qualidade.
Outra aplicação interessante da Visão de IA é em segurança e vigilância. A detecção de objetos em tempo real pode ajudar as equipes de segurança a identificar possíveis ameaças rapidamente.
Uma das principais preocupações relacionadas a esta aplicação é que as câmeras de segurança capturam imagens sob várias condições de iluminação ao longo do dia, e essas condições podem afetar drasticamente a forma como um modelo entende essas imagens. Fatores como ambientes com pouca luz, brilho ou baixa visibilidade podem dificultar a detecção consistente de objetos ou o reconhecimento de ameaças potenciais por modelos de visão computacional.
A integração do Albumentations ajuda a aplicar transformações para imitar diferentes condições de iluminação. Isso permite que o modelo aprenda a detectar objetos em ambientes com iluminação forte e baixa, tornando-o mais confiável e melhorando os tempos de resposta em condições desafiadoras.
Redefinindo os fluxos de trabalho de varejo e a experiência do cliente
Um derramamento no corredor de um supermercado, um cachorro correndo por uma loja ou uma criança derrubando uma exibição de produtos são apenas alguns exemplos de eventos cotidianos que podem ser casos extremos para Visão de IA em ambientes de varejo. A visão computacional é cada vez mais usada para melhorar a experiência do cliente, rastreando o comportamento do comprador, monitorando o tráfego de pedestres e identificando produtos nas prateleiras. No entanto, essas situações do mundo real podem ser difíceis para os sistemas de IA entenderem e processarem com precisão.
Embora nem todos os cenários possam ser representados em um conjunto de dados de visão computacional, a integração do Albumentations ajuda aumentando os dados para cobrir muitas situações possíveis, como iluminação inesperada, ângulos incomuns ou obstruções. Isso ajuda os modelos de visão computacional a se adaptarem a várias condições, melhorando sua capacidade de lidar com casos extremos e fazer previsões precisas em ambientes de varejo dinâmicos.
Principais conclusões
Coletar dados diversos do mundo real para o treinamento de modelos pode ser complicado, mas o Albumentations facilita isso, criando variações de imagem que ajudam os modelos a se adaptarem a diferentes condições.
A integração do Albumentations suportada pelo Ultralytics simplifica o processo de aplicação dessas aumentações durante o treinamento personalizado do YOLO11. Isso resulta em uma melhor qualidade do conjunto de dados, o que beneficia uma ampla gama de setores, produzindo modelos de Visão de IA mais precisos e confiáveis.