A Evolução até o Mask R-CNN

A arquitetura Mask R-CNN (He et al., 2017) não surgiu do nada; ela é o ápice de anos de evolução iterativa na detecção de objetos baseada em regiões (Region-Based CNNs). Esta nota mapeia a linhagem histórica desde o lento e pioneiro R-CNN até a elegante segmentação de instâncias do Mask R-CNN.

1. R-CNN (2014)

A revolução do Deep Learning começou com a AlexNet em 2012, mas aplicar CNNs para detecção de objetos continuava um desafio. O R-CNN (Regions with CNN features), de Ross Girshick, resolveu isso unindo duas ideias:

  • Selective Search: Para sugerir ~2000 “regiões de interesse” (ROIs) na imagem.
  • CNN Independente: Cada ROI era redimensionada (warped) e passada individualmente por uma CNN (AlexNet/VGG) para extração de features, seguida de um classificador SVM.
  • Gargalo: Treinamento complexo em múltiplas etapas e inferência extremamente lenta (~47s por imagem), pois a CNN rodava milhares de vezes por imagem sem compartilhar computação.

2. SPP-Net (2014)

Pouco depois, o SPP-Net (Spatial Pyramid Pooling) introduziu um conceito revolucionário: rodar a CNN apenas uma vez na imagem inteira para gerar um mapa de características global.

  • As ROIs propostas pelo Selective Search eram então projetadas nesse mapa de características.
  • O SPP agrupava essas áreas projetadas em vetores de tamanho fixo para a rede densa final.
  • Problema: O SPP não permitia treinar as camadas convolucionais iniciais via backpropagation eficientemente, limitando sua precisão.

3. Fast R-CNN (2015)

Girshick, agora focado no gargalo de velocidade, refinou a ideia do SPP-Net e lançou o Fast R-CNN.

  • Ele rodava a CNN na imagem inteira e extraía as features via roi-pooling (uma versão simplificada de uma pirâmide do SPP de apenas 1 nível).
  • Treinamento end-to-end unificado com uma função de perda multi-task (classificação + regressão de bounding box).
  • Gargalo Restante: A inferência ainda dependia do lento Selective Search, que rodava na CPU e se tornou o novo limitador de velocidade.

4. Faster R-CNN (2015)

A equipe da Microsoft Research (Shaoqing Ren, Kaiming He, Ross Girshick e Jian Sun) matou a dependência do Selective Search lançando o Faster R-CNN.

  • RPN (Region Proposal Network): Uma sub-rede convolucional minúscula inserida logo após a extração de features, responsável por “aprender” a prever as ROIs (usando anchor boxes).
  • O RPN compartilha o mesmo backbone de características usado para a detecção final, unindo geração de propostas e detecção na mesma GPU, atingindo taxas quase em tempo real.

5. Mask R-CNN (2017)

Kaiming He, Ross Girshick e a equipe do Facebook AI Research (FAIR) deram o passo final: adaptar o Faster R-CNN não apenas para detectar caixas, mas para pintar a máscara de pixel exata de cada objeto (Instance Segmentation).

  • Adicionaram uma terceira branch (ramificação) à rede para prever a máscara binária (usando uma FCN - Fully Convolutional Network).
  • O grande ajuste: O RoI Pooling tradicional destruía o alinhamento pixel-a-pixel por causa dos arredondamentos de quantização (que não importavam para caixas grossas, mas destruíam as máscaras). Eles inventaram o roi-align, usando interpolação bilinear para alinhar perfeitamente as features às regiões originais.

Relacionadas: r-cnn · fast-r-cnn · faster-r-cnn · roi-pooling · roi-align

Construído com Eleventy · busca por Lunr.js