Artigos · arXiv 1505.04597
U-Net: Redes Convolucionais para Segmentação de Imagens Biomédicas
U-Net: Convolutional Networks for Biomedical Image Segmentation
Resumo em três linhas
- 🎯 Treine redes de segmentação biomédica pixel a pixel de alta precisão de ponta a ponta utilizando conjuntos de dados anotados extremamente pequenos.
- 🔧 Uma arquitetura convolucional simétrica em formato de U combinando um caminho de contração para contexto, um caminho de expansão com skip connections para localização precisa, convoluções válidas sem preenchimento (unpadded), data augmentation por deformação elástica e um mapa de pesos para bordas de separação.
- 📈 Superou métodos de janela deslizante no desafio de segmentação ISBI EM (warping error de 0.000353) e venceu o ISBI Cell Tracking Challenge 2015 com IOU de 0.9203 no PhC-U373 e IOU de 0.7756 no DIC-HeLa.
Resumo
Há um amplo consenso de que o treinamento bem-sucedido de redes profundas requer muitos milhares de amostras de treinamento anotadas. Neste artigo, apresentamos uma rede e uma estratégia de treinamento que se baseia no uso intenso de data augmentation para utilizar as amostras anotadas disponíveis de maneira mais eficiente. A arquitetura consiste em um caminho de contração (contracting path) para capturar o contexto e um caminho de expansão (expanding path) simétrico que possibilita uma localização precisa. Mostramos que tal rede pode ser treinada de ponta a ponta a partir de pouquíssimas imagens e supera o melhor método anterior (uma rede convolucional com sliding-window) no desafio ISBI de segmentação de estruturas neuronais em pilhas de microscopia eletrônica. Utilizando a mesma rede treinada em imagens de microscopia de luz transmitida (contraste de fase e DIC), vencemos o ISBI cell tracking challenge 2015 nessas categorias com grande margem. Além disso, a rede é rápida. A segmentação de uma imagem de 512x512 leva menos de um segundo em uma GPU recente. A implementação completa (baseada em Caffe) e as redes treinadas estão disponíveis em http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net .
Resumo original (inglês)
There is large consent that successful training of deep networks requires many thousand annotated training samples. In this paper, we present a network and training strategy that relies on the strong use of data augmentation to use the available annotated samples more efficiently. The architecture consists of a contracting path to capture context and a symmetric expanding path that enables precise localization. We show that such a network can be trained end-to-end from very few images and outperforms the prior best method (a sliding-window convolutional network) on the ISBI challenge for segmentation of neuronal structures in electron microscopic stacks. Using the same network trained on transmitted light microscopy images (phase contrast and DIC) we won the ISBI cell tracking challenge 2015 in these categories by a large margin. Moreover, the network is fast. Segmentation of a 512x512 image takes less than a second on a recent GPU. The full implementation (based on Caffe) and the trained networks are available at http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net .
Guia de leitura
Problema e motivação
A segmentação de imagens biomédicas requer classificação densa em nível de pixel (localização) em vez de categorização no nível da imagem. Dois desafios fundamentais dominam esse domínio:
- Os dados de treinamento anotados são escassos, consistindo frequentemente em apenas algumas dezenas de imagens em vez de milhares ou milhões.
- Métodos anteriores de deep learning, como redes convolucionais de janela deslizante (sliding-window) baseadas em patches (por exemplo, Cireşan et al.), sofriam de redundância severa, inferência lenta e um compromisso inerente entre o contexto do patch e a precisão da localização.
Os autores buscaram uma fully convolutional network de ponta a ponta que pudesse capturar o contexto global e detalhes locais finos simultaneamente, processar imagens arbitrariamente grandes de forma contínua e treinar com sucesso a partir de dados extremamente limitados.
Ideias-chave
- Arquitetura Simétrica em Formato de U: Estende redes totalmente convolucionais ao combinar o encoder de contração (downsampling) com um decoder de expansão (upsampling) igualmente expressivo, equipado com inúmeros canais de features para propagar o contexto para as camadas superiores.
- Skip Connections: Mapas de features de alta resolução do caminho de contração são copiados e concatenados com mapas de features sobreamostrados no caminho de expansão (após corte/cropping), fornecendo detalhes espaciais precisos de localização perdidos durante o pooling.
- Estratégia Overlap-Tile com Convoluções Válidas: A rede utiliza convoluções sem preenchimento (unpadded). Regiões de borda são previstas perfeitamente dividindo a imagem em blocos (tiling) e extrapolando o contexto ausente por espelhamento, contornando os limites de memória da GPU em imagens grandes.
- Augmentation por Deformação Elástica: Deformações elásticas realistas e suaves, geradas por meio de grades aleatórias grosseiras, ensinam a rede invariância a deformações, reduzindo drasticamente o número necessário de amostras de treinamento.
- Ponderação da Perda em Bordas de Separação: Um mapa de pesos pixel a pixel pré-computado penaliza erros em bordas de fundo entre células da mesma classe que se tocam, permitindo a separação distinta de instâncias.
Método
Estrutura da Rede
A rede possui 23 camadas convolucionais organizadas em dois caminhos:
- Contracting Path (Caminho de Contração): Blocos repetidos de duas convoluções sem preenchimento (cada uma seguida por ReLU) e um max pooling com stride 2. O número de canais de features dobra a cada etapa de pooling.
- Expansive Path (Caminho de Expansão): Blocos repetidos de uma operação de upsampling seguida por uma convolução ("up-convolution") que reduz os canais de features pela metade, concatenação com o mapa de features recortado correspondente do caminho de contração e duas convoluções seguidas por ReLUs.
- Camada Final: Uma convolução mapeia as representações de features de 64 canais diretamente para os escores das classes desejadas.
Função de Perda e Ponderação de Bordas
A rede é treinada com cross-entropy softmax pixel a pixel: onde denota a ativação para o canal de features no pixel , é o rótulo de classe do ground truth e é um mapa de pesos espacial da perda.
Para equilibrar as frequências de classes e separar objetos em contato, é definido como: onde equilibra as frequências de classes, é a distância até a borda da célula mais próxima, é a distância até a borda da segunda célula mais próxima, e os autores definem e pixels.
Otimização
- Treinada utilizando SGD no Caffe com tamanho de lote (batch size) igual a 1 (um único tile grande de imagem) e momentum alto (0.99).
- Pesos inicializados a partir de uma distribuição gaussiana com desvio padrão , onde é o número de nós de entrada por neurônio.
Resultados
- ISBI EM Segmentation Challenge (Estruturas Neuronais):
- Obteve a melhor classificação com um warping error de , Rand error de e erro de pixel de (média sobre 7 versões rotacionadas, sem pós-processamento adicional).
- Superou o estado da arte anterior de Cireşan et al. (warping error de , Rand error de ).
- ISBI Cell Tracking Challenge 2015:
- PhC-U373 (Contraste de Fase): Alcançou uma Intersection over Union (IOU) média de , em comparação a do segundo colocado.
- DIC-HeLa (Contraste de Interferência Diferencial): Alcançou uma IOU média de , em comparação a do segundo colocado.
- Eficiência: A segmentação de uma imagem de requer menos de um segundo em uma GPU moderna, com o tempo total de treinamento levando aproximadamente 10 horas em uma GPU NVIDIA Titan (6 GB).
Limitações e questões em aberto
- Convoluções sem Preenchimento e Recorte (Cropping): Como as convoluções são válidas (sem padding), os tiles de saída são estritamente menores que os de entrada, exigindo uma seleção cuidadosa das dimensões dos tiles de entrada divisíveis por em todas as etapas de pooling, além de espelhamento nas bordas da imagem.
- Separação de Instâncias via Pesos Heurísticos: A separação de instâncias em contato depende de mapas de pesos morfológicos manuais em vez de embeddings de instância de ponta a ponta ou ramos dedicados de detecção.
- Design Específico para 2D: O artigo foca em fatias 2D, deixando a adaptação para aquisições biomédicas volumétricas em 3D para pesquisas subsequentes.
Termos-chave
- contracting path
- A metade de codificação (encoder) da U-Net que aplica repetidamente convoluções 3x3 sem padding e max pooling para capturar contexto e extrair representações de features de alto nível.
- expansive path
- A metade simétrica de decodificação (decoder) da U-Net que realiza upsampling dos mapas de features, reduz as dimensões dos canais e reconstrói segmentações espaciais precisas.
- up-convolution
- Uma convolução 2x2 aplicada após o upsampling que reduz pela metade o número de canais de features antes da concatenação.
- overlap-tile strategy
- Uma abordagem de inferência e treinamento que divide imagens arbitrariamente grandes em blocos (tiles) sobrepostos, espelhando regiões de borda para fornecer o contexto necessário para convoluções unpadded.
- elastic deformations
- Uma técnica de data augmentation que gera vetores de deslocamento suaves em uma grade grosseira por meio de interpolação bicúbica para simular variações de tecidos biológicos.
- weight map
- Uma função de ponderação da perda com variação espacial que combina balanceamento de frequência de classes e uma penalidade exponencial baseada nas distâncias até as duas células mais próximas para separar objetos que se tocam.
- warping error
- Uma métrica de avaliação de segmentação utilizada no desafio ISBI EM que avalia a correção topológica, como membranas neuronais intactas.
- fully convolutional network
- Uma rede neural composta inteiramente por operações de convolução e pooling sem camadas totalmente conectadas, permitindo predição densa sobre entradas de dimensões variáveis.
Perguntas
Por que a U-Net corta (crop) os mapas de features antes da concatenação nas skip connections?
Como a U-Net utiliza convoluções válidas (unpadded), cada convolução reduz o tamanho do mapa de features pelos pixels de borda. O recorte do mapa de features do caminho de contração garante que suas dimensões espaciais correspondam às do mapa de features com upsampling para a concatenação.
Como a U-Net lida com as bordas de imagens grandes durante a inferência?
A U-Net aplica uma estratégia de overlap-tile: para prever a região interna válida de um tile, os pixels contextuais ao redor são fornecidos como entrada, e quaisquer dados faltantes fora dos limites da imagem são extrapolados por espelhamento.
Como a U-Net separa células que estão se tocando?
Ela utiliza um mapa de pesos pré-computado na função de perda que adiciona uma penalidade exponencial elevada aos pixels de fundo localizados entre as bordas da célula mais próxima e da segunda mais próxima, forçando a rede a manter bordas de separação finas.
Por que o batch size é definido como 1 durante o treinamento?
Os autores priorizaram tiles de imagem grandes em vez de batch sizes grandes para maximizar o contexto dentro da memória disponível da GPU (NVIDIA Titan de 6 GB), compensando o tamanho de lote de um único tile com o uso de um momentum alto de 0.99 no SGD.
A explicação desta página foi escrita por IA a partir do artigo e pode conter erros. Consulte o artigo para os detalhes.