Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Integrações

Um guia sobre a arquitetura U-Net e suas aplicações

Saiba mais sobre a arquitetura U-Net, como ela viabiliza a segmentação de imagens, suas aplicações e sua importância na evolução da visão computacional.

Abirami VinaAbirami Vina10 min de leitura
Arquitetura U-Net para segmentação de imagens

A visão computacional é um ramo da inteligência artificial (AI) dedicado à análise de dados visuais. Ela abriu caminho para muitos sistemas práticos, como a automatização da inspeção de produtos em fábricas e a ajuda a veículos autónomos para navegarem pelas estradas.

Uma das tarefas mais conhecidas da visão computacional é a detecção de objetos. Essa tarefa permite que os modelos localizem e identifiquem objetos em uma imagem usando caixas delimitadoras. Embora sejam úteis para várias aplicações, as caixas delimitadoras fornecem apenas uma estimativa aproximada da localização de um objeto.

No entanto, em áreas como a saúde, onde a precisão é fundamental, os casos de uso de IA visual exigem mais do que apenas identificar um objeto. Muitas vezes, também precisam de informações sobre o formato e a posição exatos dos objetos.

É exatamente para isso que serve a segmentação, uma tarefa de visão computacional. Em vez de usar caixas delimitadoras, os modelos de segmentação detectam objetos no nível dos pixels. Ao longo dos anos, pesquisadores desenvolveram modelos de visão computacional especializados em segmentação.

Um desses modelos é o U-Net. Embora modelos mais recentes e avançados já tenham superado o seu desempenho, o U-Net ocupa um lugar importante na história da visão computacional. Neste artigo, vamos analisar mais de perto a arquitetura U-Net, como funciona, onde foi usada e como se compara aos modelos de segmentação mais modernos disponíveis atualmente.

Segmentação de uma cena aérea usando o modelo de aprendizado profundo U-Net

Fig. 1. Exemplo de segmentação usando o modelo de aprendizado profundo U-Net. (Fonte)

História da segmentação de imagens#

Antes de nos aprofundarmos no U-Net, vamos primeiro entender melhor como os modelos de segmentação de imagens evoluíram.

Inicialmente, a visão computacional dependia de técnicas tradicionais, como detecção de bordas, limiarização ou crescimento de regiões, para separar objetos em uma imagem. Essas técnicas eram usadas para detectar os limites dos objetos com base nas bordas, separar regiões pela intensidade dos pixels e agrupar pixels semelhantes. Elas funcionavam em casos simples, mas muitas vezes falhavam quando as imagens tinham ruído, formas sobrepostas ou limites pouco nítidos.

Após a ascensão do aprendizado profundo em 2012, pesquisadores introduziram, em 2014, o conceito de redes totalmente convolucionais (FCNs) para tarefas como segmentação semântica. Esses modelos substituíram determinadas partes de uma rede convolucional para permitir que o computador analisasse uma imagem inteira de uma só vez, em vez de dividi-la em partes menores. Isso possibilitou que o modelo criasse mapas detalhados que mostram com mais clareza o conteúdo de uma imagem.

Linha do tempo da evolução dos algoritmos de segmentação baseados em aprendizado profundo

Fig. 2. Evolução dos algoritmos de segmentação baseados em aprendizado profundo. (Fonte)

Com base nas FCNs, pesquisadores da Universidade de Freiburg apresentaram o U-Net em 2015. Ele foi originalmente projetado para segmentação de imagens biomédicas. Em particular, o U-Net foi desenvolvido para ter bom desempenho em situações com poucos dados anotados.

Enquanto isso, versões posteriores, como UNet++ e TransUNet, trouxeram melhorias como camadas de atenção e uma extração de características mais eficiente. As camadas de atenção ajudam o modelo a se concentrar em regiões importantes, enquanto a extração de características aprimorada captura informações mais detalhadas.

O que é o U-Net e como as características fluem pelo modelo?#

O U-Net é um modelo de aprendizado profundo desenvolvido especificamente para segmentação de imagens. Ele recebe uma imagem como entrada e produz uma máscara de segmentação que classifica cada pixel de acordo com o objeto ou a região a que pertence.

O nome do modelo vem de sua arquitetura em forma de U. Ela consiste em duas partes principais: um codificador, que comprime a imagem e aprende suas características, e um decodificador, que a expande de volta ao tamanho original. Esse design cria uma forma simétrica de U, que ajuda o modelo a entender tanto a estrutura geral de uma imagem quanto seus detalhes mais sutis.

Uma característica essencial do U-Net é o uso de conexões de atalho, que permitem que as informações do codificador sejam enviadas diretamente ao decodificador. Assim, o modelo consegue preservar detalhes importantes que poderiam se perder durante a compressão da imagem.

Visão geral da arquitetura do U-Net#

Veja como funciona a arquitetura do U-Net:

  • Imagem de entrada: O U-Net começa com uma imagem 2D, como um exame médico ou uma foto de satélite. O objetivo é atribuir um rótulo de classe a cada pixel da imagem.
  • Redução da resolução: A imagem passa por camadas convolucionais que aprendem características visuais importantes. À medida que percorre as diferentes camadas, sua resolução diminui e o modelo identifica padrões mais amplos.
  • Camada de gargalo: No centro da rede, os mapas de características atingem sua menor resolução espacial enquanto capturam características semânticas de alto nível. Em termos simples, essa representação comprimida dos mapas de características corresponde ao contexto geral da entrada.
  • Aumento da resolução: Em seguida, a rede reconstrói a imagem aumentando gradualmente a resolução. As convoluções transpostas ajudam a expandir os mapas de características de volta ao tamanho original.
  • Conexões de atalho: Os mapas de características do caminho de redução da resolução são concatenados com os do caminho de aumento da resolução. Isso ajuda a preservar detalhes espaciais minuciosos e, ao mesmo tempo, integrar informações contextuais de alto nível.
  • A saída é um mapa de segmentação: A saída final é uma máscara de segmentação em nível de pixel que corresponde ao tamanho da entrada. Cada pixel é classificado em uma categoria, como objeto, plano de fundo ou região de interesse.

Diagrama da arquitetura codificador-decodificador do U-Net

Fig. 3. Diagrama da arquitetura do U-Net. (Fonte)

Entenda a diferença entre ViT e U-Net#

Ao explorar o U-Net, você pode estar se perguntando como ele difere de outros modelos de aprendizado profundo, como o Vision Transformer (ViT), que também pode realizar tarefas de segmentação. Embora os dois modelos possam executar tarefas semelhantes, eles diferem na forma como são construídos e como lidam com a segmentação.

O U-Net processa imagens no nível dos pixels por meio de camadas convolucionais organizadas em uma estrutura de codificador-decodificador. Ele costuma ser usado em tarefas que exigem segmentação precisa, como exames médicos ou cenas de carros autônomos.

Já o Vision Transformer (ViT) divide as imagens em recortes e os processa simultaneamente por meio de mecanismos de atenção. Ele usa a autoatenção (um mecanismo que permite ao modelo ponderar a importância relativa de diferentes partes da imagem) para captar as relações entre essas partes, ao contrário da abordagem convolucional do U-Net.

Outra diferença importante é que, em geral, o ViT precisa de mais dados para funcionar bem, mas é excelente a identificar padrões complexos. Já o U-Net tem um bom desempenho com conjuntos de dados menores e costuma ser mais rápido de treinar.

Aplicações do modelo U-Net#

Agora que entendemos melhor o que é o U-Net e como ele funciona, vamos explorar suas aplicações em diferentes áreas.

Segmentação de hemorragias cerebrais em imagens médicas#

O U-Net tornou-se um método confiável para a segmentação no nível dos pixels de imagens médicas complexas, especialmente durante seu auge nas pesquisas. Pesquisadores o usaram para destacar áreas importantes em exames médicos, como tumores e sinais de hemorragia interna em imagens de TC e RM. Essa abordagem aumentou significativamente a precisão dos diagnósticos e simplificou a análise de dados médicos complexos em ambientes de pesquisa.

Um exemplo do impacto do U-Net nas pesquisas em saúde é seu uso para identificar acidentes vasculares cerebrais e hemorragias cerebrais em exames médicos. Pesquisadores podiam usar o U-Net para analisar exames da cabeça e destacar áreas preocupantes, permitindo identificar mais rapidamente os casos que exigiam atenção imediata.

Segmentação de lesões de AVC hemorrágico em exames médicos usando o 3D U-Net

Fig. 4. Segmentação de lesões de AVC hemorrágico usando o 3D U-Net. (Fonte)

Segmentação de culturas agrícolas#

Outra área em que pesquisadores usaram o U-Net é a agricultura, especialmente para segmentar culturas, ervas daninhas e solo. Ele ajuda agricultores a monitorar a saúde das plantas, estimar a produtividade e tomar decisões melhores em grandes propriedades rurais. Por exemplo, o U-Net pode separar as culturas das ervas daninhas, tornando mais eficiente a aplicação de herbicidas e reduzindo o desperdício.

Para lidar com desafios como o desfoque de movimento em imagens feitas por drones, pesquisadores aprimoraram o U-Net com técnicas de desfoque de imagens. Isso garante uma segmentação mais nítida, mesmo quando os dados são coletados em movimento, como durante levantamentos aéreos.

U-Net separando culturas de ervas daninhas em um campo agrícola

Fig. 5. Separação de culturas e ervas daninhas em campos agrícolas com o U-Net. (Fonte)

Condução autônoma#

Antes da introdução de modelos de IA mais avançados, o U-Net teve um papel fundamental na exploração de como a segmentação poderia melhorar a condução autónoma. Em veículos autónomos, a segmentação semântica do U-Net pode classificar cada píxel de uma imagem em categorias como estrada, veículo, peão e marcações de faixa. Isso oferece ao carro uma visão clara do ambiente ao seu redor, contribuindo para uma navegação segura e uma tomada de decisões eficaz.

Cena de estrada com a área trafegável segmentada usando o U-Net

Fig. 6. Cena de estrada com a área trafegável segmentada usando o U-Net. (Fonte)

Vantagens e desvantagens do U-Net#

Ainda hoje, o U-Net continua sendo uma boa opção para a segmentação de imagens entre pesquisadores, graças ao equilíbrio entre simplicidade, precisão e adaptabilidade. Veja algumas das principais vantagens que o destacam:

  • Adaptável a diferentes modalidades: O U-Net foi adaptado a diferentes tipos de dados, incluindo exames médicos 3D, imagens de satélite e até quadros de vídeo.
  • Inferência rápida quando otimizado: Quando ajustado adequadamente, o U-Net pode ser executado com eficiência, o que o torna adequado para aplicações em tempo real ou quase em tempo real.
  • Código aberto e comunidade: O U-Net está disponível nas principais bibliotecas de aprendizado profundo e conta com o apoio de uma grande comunidade de programadores e investigadores.

Embora o U-Net tenha muitos pontos fortes, há também algumas limitações que devem ser consideradas. Veja alguns fatores importantes:

  • Sensível à qualidade dos dados: O desempenho do U-Net pode ser prejudicado por dados de baixa qualidade, como imagens com ruído ou baixa resolução.
  • Suscetível ao sobreajuste com conjuntos de dados pequenos: Embora o U-Net tenha bom desempenho com poucos dados, ainda há risco de sobreajuste se ele não for regularizado corretamente, principalmente quando o conjunto de dados é pequeno demais ou pouco diversificado.
  • Recursos computacionais: O U-Net pode exigir muito poder computacional, especialmente ao trabalhar com grandes conjuntos de dados, e requer recursos de hardware significativos durante o treinamento.

Principais conclusões#

O U-Net foi um marco importante na evolução da segmentação de imagens. Ele comprovou que os modelos de aprendizado profundo podem produzir resultados precisos com conjuntos de dados menores, especialmente em áreas como imagens médicas.

Esse avanço abriu caminho para aplicações mais avançadas em diversas áreas. À medida que a visão computacional continua a evoluir, modelos de segmentação como o U-Net permanecem fundamentais para permitir que as máquinas compreendam e interpretem dados visuais com alta precisão.

Queres criar os teus próprios projetos de visão computacional? Explora o nosso repositório no GitHub para saber mais sobre IA e consulta as nossas opções de licenciamento. Descobre como a visão computacional na área da saúde está a melhorar a eficiência e explora o impacto da IA no retalho nas nossas páginas de soluções. Junta-te também à nossa comunidade, que não para de crescer.

Escrito por

Abirami Vina
Abirami Vina

Criador de conteúdo · Ultralytics

Ao iniciar a carreira como engenheira de visão computacional, Abirami Vina construiu uma base sólida em IA de visão e machine learning. Ela é criadora de conteúdo da Ultralytics e fundadora e redatora-chefe da Scribe of AI, onde produz conteúdo técnico de alta qualidade para empresas focadas em IA. Movida pela paixão por tornar a IA compreensível e envolvente, seu trabalho aproxima a tecnologia de ponta do impacto no mundo real.

Comentários

Faça uma pergunta, compartilhe seus resultados ou ajude alguém.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina