Glossário

U-Net

Descobre a U-Net, a poderosa arquitetura CNN para segmentação semântica. Aprende as suas aplicações em imagens médicas, de satélite e autónomas.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

A U-Net é uma arquitetura especializada de Rede Neural Convolucional (CNN) originalmente desenvolvida para tarefas de segmentação de imagens biomédicas. A sua estrutura distintiva em forma de U permite a localização e segmentação precisas de objectos em imagens, mesmo com dados de treino limitados. Introduzida por Olaf Ronneberger, Philipp Fischer e Thomas Brox no seu artigo de 2015"U-Net: Convolutional Networks for Biomedical Image Segmentation", a U-Net tornou-se rapidamente influente para além do seu domínio inicial devido à sua eficácia em várias aplicações de visão computacional (CV) que requerem classificação ao nível do pixel.

Arquitetura de base

A arquitetura da rede U consiste em duas vias principais ligadas de uma forma que se assemelha à letra "U": uma via de contração (também conhecida como codificador) e uma via de expansão (também conhecida como descodificador).

  1. Percurso de contratação (codificador): Este caminho segue a arquitetura típica de uma CNN. Consiste em aplicações repetidas de duas convoluções 3x3 (convoluções não compensadas), cada uma seguida por uma função de ativação de Unidade Linear Rectificada (ReLU) e, em seguida, uma operação de pooling máximo 2x2 com passo 2 para a redução da amostragem. Em cada etapa de redução da amostragem, o número de canais de caraterísticas é duplicado. Este caminho capta o contexto da imagem de entrada, reduzindo progressivamente a resolução espacial enquanto aumenta a informação das caraterísticas.
  2. Via expansiva (descodificador): Esta via consiste em passos repetidos de aumento da amostragem do mapa de caraterísticas, seguidos de uma convolução 2x2 ("up-convolution") que reduz para metade o número de canais de caraterísticas, uma concatenação com o mapa de caraterísticas cortado correspondente da via de contração e duas convoluções 3x3, cada uma seguida de uma ReLU. O recorte é necessário devido à perda de pixels de borda em cada convolução. A camada final utiliza uma convolução 1x1 para mapear cada vetor de caraterística para o número desejado de classes. Este caminho permite uma localização precisa, aumentando gradualmente a resolução da saída e combinando-a com caraterísticas de alta resolução do caminho de contração através de ligações de salto. Arquitecturas de codificador-descodificador como a U-Net são comuns em tarefas de segmentação.
  3. Salta as ligações: A principal inovação que liga estes dois percursos é a utilização de ligações de saltos. Essas conexões copiam mapas de caraterísticas das camadas no caminho de contração e as concatenam com os mapas de caraterísticas de amostragem superior correspondentes no caminho de expansão. Isso permite que o decodificador acesse diretamente os recursos de alta resolução aprendidos pelo codificador, o que é crucial para produzir mapas de segmentação com detalhes precisos.

Principais caraterísticas e vantagens

O design da U-Net oferece várias vantagens, particularmente para tarefas de segmentação:

  • Localização precisa: O caminho expansivo combinado com as conexões de salto permite que a rede gere máscaras de segmentação com detalhes muito finos.
  • Eficiência com pequenos conjuntos de dados: A U-Net pode ser treinada de forma eficaz mesmo com conjuntos de dados de treinamento relativamente pequenos, o que é comum na análise de imagens médicas. O uso de aumento extensivo de dados é freqüentemente empregado junto com a U-Net para ensinar à rede as invariâncias desejadas.
  • Treinamento de ponta a ponta: Toda a rede pode ser treinada diretamente a partir de imagens de entrada para mapas de segmentação de saída, simplificando o processo de treino.
  • Boa generalização: Tem demonstrado um bom desempenho não só na imagiologia médica, mas também noutros domínios que exigem uma segmentação precisa.

Aplicações no mundo real

Embora inicialmente concebida para imagiologia biomédica, a arquitetura da U-Net é versátil e foi adaptada a inúmeras aplicações:

Distinguir a U-Net de conceitos semelhantes

A U-Net centra-se principalmente na segmentação semântica, atribuindo uma etiqueta de classe (por exemplo, "tumor", "estrada", "edifício") a cada pixel de uma imagem. Isto difere de:

Formação e ferramentas

O treino de uma U-Net requer dados anotados ao nível do pixel, em que cada pixel nas imagens de treino é rotulado com a sua classe correspondente. Este processo de anotação de dados pode ser trabalhoso, especialmente para imagens médicas ou de satélite complexas. Os modelos U-Net são normalmente implementados e treinados usando estruturas populares de aprendizagem profunda, como PyTorchPyTorch site oficialPyTorch ) e TensorFlowTensorFlow ). Bibliotecas como OpenCV são frequentemente usadas para carregamento e pré-processamento de imagens. Plataformas como o Ultralytics HUB podem ajudar a gerir conjuntos de dados e simplificar o processo de formação de modelos, mesmo para tarefas de segmentação complexas. Um treino eficaz envolve frequentemente uma afinação cuidadosa dos hiperparâmetros e a exploração de diferentes algoritmos de otimização.

Lê tudo