O que é a Máscara R-CNN e como funciona?

Abirami Vina

4 min ler

21 de março de 2025

Saiba como a Máscara R-CNN pode ser utilizada para segmentar com precisão objectos em imagens e vídeos para várias aplicações em diferentes sectores.

Inovações como robôs em armazéns, carros autónomos que circulam em segurança por ruas movimentadas, drones que controlam colheitas e sistemas de IA que inspeccionam produtos em fábricas estão a tornar-se mais comuns à medida que a adoção da IA aumenta. Uma tecnologia fundamental que impulsiona estas inovações é a visão por computador, um ramo da IA que permite às máquinas compreender e interpretar dados visuais.

Por exemplo, a deteção de objectos é uma tarefa de visão por computador que ajuda a identificar e localizar objectos em imagens utilizando caixas delimitadoras. Embora as caixas delimitadoras ofereçam informações úteis, apenas fornecem uma estimativa aproximada da posição de um objeto e não conseguem captar a sua forma ou limites exactos. Isto torna-as menos eficazes em aplicações que requerem uma identificação precisa.

Para resolver este problema, os investigadores desenvolveram modelos de segmentação que captam os contornos exactos dos objectos, fornecendo detalhes ao nível do pixel para uma deteção e análise mais precisas.

O Mask R-CNN é um desses modelos. Introduzido em 2017 pela Facebook AI Research (FAIR), baseia-se em modelos anteriores como o R-CNN, Fast R-CNN e Faster R-CNN. Como um marco importante na história da visão computacional, o Mask R-CNN abriu caminho para modelos mais avançados, como o Ultralytics YOLO11.

Neste artigo, vamos explorar o que é a Máscara R-CNN, como funciona, as suas aplicações e que melhorias surgiram depois dela, levando ao YOLO11.

Uma visão geral da Mask R-CNN

Mask R-CNN, que significa Mask Region-based Convolutional Neural Network, é um modelo de aprendizagem profunda concebido para tarefas de visão computacional como a deteção de objectos e a segmentação de instâncias. 

A segmentação de instâncias vai além da deteção de objectos tradicional, não só identificando objectos numa imagem, mas também delineando com precisão cada um deles. Atribui uma etiqueta única a cada objeto detectado e capta a sua forma exacta ao nível do pixel. Esta abordagem detalhada permite distinguir claramente entre objectos sobrepostos e tratar com precisão formas complexas.

O Mask R-CNN baseia-se no Faster R-CNN, que detecta e rotula objectos mas não define as suas formas exactas. O Mask R-CNN melhora este aspeto ao identificar os pixels exactos que compõem cada objeto, permitindo uma análise de imagem muito mais detalhada e precisa.

__wf_reserved_inherit
Figura 1. Comparação entre deteção de objectos e segmentação de instâncias.

Um olhar sobre a arquitetura da Mask R-CNN e o seu funcionamento

A máscara R-CNN adopta uma abordagem passo-a-passo para detetar e segmentar objectos com precisão. Começa por extrair as principais caraterísticas utilizando uma rede neural profunda (um modelo de várias camadas que aprende com os dados), depois identifica potenciais áreas de objectos com uma rede de proposta de região (um componente que sugere regiões de objectos prováveis) e, por fim, aperfeiçoa estas áreas criando máscaras de segmentação detalhadas (contornos precisos de objectos) que captam a forma exacta de cada objeto.

De seguida, vamos percorrer cada passo para ficarmos com uma ideia melhor de como funciona a Máscara R-CNN.

__wf_reserved_inherit
Figura 2. Uma visão geral da arquitetura da Mask R-CNN.

Começar com a extração de caraterísticas

O primeiro passo na arquitetura da Máscara R-CNN é decompor a imagem nas suas partes principais para que o modelo possa compreender o que está nela. Pense nisto como quando olha para uma fotografia e repara naturalmente em detalhes como formas, cores e margens. O modelo faz algo semelhante utilizando uma rede neural profunda denominada "espinha dorsal" (frequentemente ResNet-50 ou ResNet-101), que actua como os seus olhos para analisar a imagem e detetar os principais detalhes.

Uma vez que os objectos nas imagens podem ser muito pequenos ou muito grandes, a Mask R-CNN utiliza uma rede de pirâmide de caraterísticas. Isto é como ter diferentes lupas que permitem ao modelo ver tanto os detalhes finos como a imagem maior, assegurando que os objectos de todos os tamanhos são notados.

Uma vez extraídas estas caraterísticas importantes, o modelo passa a localizar os potenciais objectos na imagem, preparando o terreno para uma análise posterior.

Sugerir áreas potenciais na imagem com objectos

Depois de a imagem ter sido processada para as caraterísticas principais, a Rede de Propostas de Região assume o controlo. Esta parte do modelo analisa a imagem e sugere áreas com probabilidade de conter objectos.

Para tal, gera várias localizações possíveis de objectos, designadas por âncoras. A rede avalia então estas âncoras e seleciona as mais promissoras para análise posterior. Desta forma, o modelo concentra-se apenas nas áreas com maior probabilidade de serem interessantes, em vez de verificar todos os pontos da imagem.

__wf_reserved_inherit
Figura 3. Um exemplo de uma rede de propostas de regiões.

Melhorar as caraterísticas extraídas 

Com as áreas-chave identificadas, o passo seguinte é refinar os detalhes extraídos destas regiões. Os modelos anteriores utilizavam um método denominado ROI Pooling (Pooling de regiões de interesse) para extrair caraterísticas de cada área, mas esta técnica conduzia por vezes a ligeiros desalinhamentos quando se redimensionavam as regiões, tornando-a menos eficaz - especialmente para objectos mais pequenos ou sobrepostos.

O Mask R-CNN melhora esse aspeto usando uma técnica conhecida como Alinhamento de ROI (Alinhamento da região de interesse). Em vez de arredondar as coordenadas, como faz o Pooling de ROI, o Alinhamento de ROI usa interpolação bilinear para estimar os valores de pixel com mais precisão. A interpolação bilinear é um método que calcula um novo valor de pixel calculando a média dos valores dos seus quatro vizinhos mais próximos, o que cria transições mais suaves. Isto mantém as caraterísticas corretamente alinhadas com a imagem original, resultando numa deteção e segmentação de objectos mais precisa.

Por exemplo, num jogo de futebol, dois jogadores próximos podem ser confundidos um com o outro porque as suas caixas delimitadoras se sobrepõem. O Alinhamento do ROI ajuda a separá-los, mantendo as suas formas distintas. 

__wf_reserved_inherit
Fig. 4. A máscara R-CNN utiliza o alinhamento de ROI.

Classificar objectos e prever as suas máscaras

Assim que o Alinhamento de ROI processa a imagem, o passo seguinte é classificar os objectos e afinar as suas localizações. O modelo analisa cada região extraída e decide que objeto contém. Atribui uma pontuação de probabilidade a diferentes categorias e seleciona a melhor correspondência.

Ao mesmo tempo, ajusta as caixas delimitadoras para melhor se adaptarem aos objectos. As caixas iniciais podem não estar colocadas de forma ideal, pelo que isto ajuda a melhorar a precisão, certificando-se de que cada caixa rodeia firmemente o objeto detectado.

Finalmente, a Mask R-CNN dá um passo extra: gera uma máscara de segmentação detalhada para cada objeto em paralelo.

Máscara R-CNN e suas aplicações em tempo real

Quando este modelo foi lançado, foi recebido com grande entusiasmo pela comunidade de IA e foi rapidamente utilizado em várias aplicações. A sua capacidade de detetar e segmentar objectos em tempo real transformou-o num fator de mudança em diferentes indústrias.

Por exemplo, localizar animais em vias de extinção na natureza é uma tarefa difícil. Muitas espécies deslocam-se através de florestas densas, o que torna difícil para os conservacionistas segui-las. Os métodos tradicionais recorrem a armadilhas fotográficas, drones e imagens de satélite, mas a análise manual de todos estes dados é morosa. Os erros de identificação e os avistamentos falhados podem atrasar os esforços de conservação.

Ao reconhecer caraterísticas únicas como riscas de tigre, manchas de girafa ou a forma das orelhas de um elefante, a Mask R-CNN consegue detetar e segmentar animais em imagens e vídeos com maior precisão. Mesmo quando os animais estão parcialmente ocultos por árvores ou próximos uns dos outros, o modelo consegue separá-los e identificar cada um individualmente, tornando a monitorização da vida selvagem mais rápida e fiável.

__wf_reserved_inherit
Fig. 5. Deteção e segmentação de animais utilizando a Mask R-CNN.

Limitações da máscara R-CNN

Apesar do seu significado histórico na deteção e segmentação de objectos, a Máscara R-CNN também apresenta alguns inconvenientes importantes. Apresentamos de seguida alguns desafios relacionados com a Máscara R-CNN:

  • Elevada procura computacional: Depende de GPUs potentes, o que pode tornar a sua execução dispendiosa e lenta no processamento de grandes quantidades de dados.

  • Velocidade de processamento mais lenta: O seu processo em várias fases torna-o mais lento em comparação com modelos em tempo real mais rápidos como o YOLO, o que pode não ser ideal para tarefas sensíveis ao tempo.

  • Dependência de dados de alta qualidade: O modelo funciona melhor com imagens claras e bem rotuladas. Imagens desfocadas ou mal iluminadas podem reduzir significativamente a sua precisão.
  • Implementação complexa: A arquitetura em várias fases pode ser difícil de configurar e otimizar, especialmente quando se lida com grandes conjuntos de dados ou recursos limitados.

Da R-CNN de máscara à YOLO11 ultra-analítica

A máscara R-CNN era excelente para tarefas de segmentação, mas muitas indústrias estavam a tentar adotar a visão por computador, dando prioridade à velocidade e ao desempenho em tempo real. Este requisito levou os investigadores a desenvolver modelos de uma fase que detectam objectos numa única passagem, melhorando consideravelmente a eficiência.

Ao contrário do processo de várias etapas da Mask R-CNN, os modelos de visão computacional de uma etapa, como o YOLO (You Only Look Once), concentram-se em tarefas de visão computacional em tempo real. Em vez de tratar a deteção e a segmentação separadamente, os modelos YOLO podem analisar uma imagem de uma só vez. Isto torna-os ideais para aplicações como a condução autónoma, cuidados de saúde, fabrico e robótica, onde a tomada rápida de decisões é crucial.

Em particular, o YOLO11 dá um passo em frente, sendo simultaneamente rápido e preciso. Utiliza menos 22% de parâmetros do que o YOLOv8m, mas ainda assim atinge uma precisão média superior (mAP) no conjunto de dados COCO, o que significa que detecta objectos com maior precisão. A sua velocidade de processamento melhorada torna-o uma boa escolha para aplicações em tempo real em que cada milissegundo é importante.

__wf_reserved_inherit
Fig. 6. Desempenho do YOLO11 em comparação com outros modelos.

Principais conclusões

Olhando para trás na história da visão por computador, a máscara R-CNN é reconhecida como um grande avanço na deteção e segmentação de objectos. Apresenta resultados muito precisos, mesmo em cenários complexos, graças ao seu processo pormenorizado em várias etapas. 

No entanto, este mesmo processo torna-o mais lento em comparação com modelos em tempo real como o YOLO. À medida que a necessidade de velocidade e eficiência aumenta, muitas aplicações utilizam agora modelos de uma fase, como o Ultralytics YOLO11, que oferecem uma deteção de objectos rápida e precisa. Embora o Mask R-CNN seja importante para compreender a evolução da visão computacional, a tendência para soluções em tempo real destaca a crescente procura de soluções de visão computacional mais rápidas e eficientes.

Junte-se à nossa comunidade em crescimento! Explore o nosso repositório GitHub para saber mais sobre IA. Pronto para iniciar os seus próprios projectos de visão computacional? Veja as nossas opções de licenciamento. Descubra a IA na agricultura e a IA de visão nos cuidados de saúde visitando as nossas páginas de soluções! 

Vamos construir juntos o futuro
da IA!

Comece a sua viagem com o futuro da aprendizagem automática

Comece gratuitamente
Ligação copiada para a área de transferência