A segmentação semântica é uma tarefa fundamental na visão computacional (CV) que envolve a atribuição de uma etiqueta de classe específica a cada pixel de uma imagem. Ao contrário de outras tarefas de visão que podem identificar objectos ou classificar toda a imagem, a segmentação semântica fornece uma compreensão densa, ao nível do pixel, do conteúdo da cena. Isto significa que não detecta apenas que existe um carro, mas delineia com precisão quais os pixels que pertencem à categoria carro, diferenciando-os dos pixels que pertencem à estrada, ao céu ou aos peões. O seu objetivo é dividir uma imagem em regiões significativas correspondentes a diferentes categorias de objectos, proporcionando uma compreensão abrangente do ambiente visual.
Como funciona a segmentação semântica
O principal objetivo da segmentação semântica é classificar cada pixel de uma imagem num conjunto predefinido de categorias. Por exemplo, numa imagem que contenha vários carros, peões e árvores, um modelo de segmentação semântica rotularia todos os pixels que compõem qualquer carro como 'carro', todos os pixels de qualquer peão como 'peão' e todos os pixels de qualquer árvore como 'árvore'. Trata todas as instâncias da mesma classe de objectos de forma idêntica.
A segmentação semântica moderna depende muito do aprendizado profundo, particularmente das Redes Neurais Convolucionais (CNNs). Estes modelos são normalmente treinados utilizando técnicas de aprendizagem supervisionada, exigindo grandes conjuntos de dados com anotações detalhadas ao nível do pixel. O processo envolve a alimentação de uma imagem na rede, que depois produz um mapa de segmentação. Este mapa é essencialmente uma imagem em que o valor de cada pixel (frequentemente representado por uma cor) corresponde à sua etiqueta de classe prevista, separando visualmente diferentes categorias como "estrada", "edifício", "pessoa", etc. A qualidade da etiquetagem dos dados é crucial para treinar modelos precisos.
Principais diferenças em relação a outras tarefas de segmentação
É importante distinguir a segmentação semântica das tarefas de visão computacional relacionadas:
- Classificação de imagens: Atribui uma única etiqueta a toda a imagem (por exemplo, "esta imagem contém um gato"). Não localiza nem delineia objectos.
- Deteção de objectos: Identifica e localiza objectos utilizando caixas delimitadoras. Diz-te onde estão os objectos, mas não fornece a sua forma exacta ao nível do pixel.
- Segmentação de instâncias: Vai um passo além da segmentação semântica, não apenas classificando cada pixel, mas também distinguindo entre diferentes instâncias da mesma classe de objeto. Por exemplo, atribui uma ID e uma máscara únicas a cada carro individual na cena. Para obter mais detalhes, consulte este guia que compara a segmentação de instância e a segmentação semântica.
- Segmentação panóptica: Combina segmentação semântica e de instância, fornecendo uma etiqueta de categoria para cada pixel e IDs de instância únicos para objectos contáveis ("coisas") enquanto agrupa regiões de fundo incontáveis ("coisas") como o céu ou a estrada.
Aplicações no mundo real
A compreensão detalhada da cena proporcionada pela segmentação semântica é crucial para muitas aplicações do mundo real:
- Condução autónoma: Os carros autónomos utilizam a segmentação semântica para compreender com precisão o que os rodeia. Ao classificar os pixéis pertencentes a estradas, faixas de rodagem, passeios, peões, outros veículos e obstáculos, o sistema de condução autónoma pode tomar decisões de navegação mais seguras. Este é um componente essencial da IA para soluções automóveis.
- Análise de imagens médicas: Nos cuidados de saúde, a segmentação semântica ajuda a analisar exames médicos como ressonâncias magnéticas ou tomografias computorizadas. Pode delinear automaticamente órgãos, identificar e medir tumores ou lesões e realçar anomalias com precisão ao nível do pixel. Por exemplo, os modelosYOLO Ultralytics podem ser utilizados para a deteção de tumores, ajudando os radiologistas no diagnóstico e no planeamento de tratamentos com base em técnicas detalhadas de imagiologia médica.
- Análise de imagens de satélite: Utilizada para a classificação da cobertura do solo, monitorização da desflorestação, planeamento urbano e aplicações agrícolas. Consegue distinguir entre florestas, massas de água, campos e áreas construídas a partir de fotografias de satélite, como mostram os exemplos do Observatório da Terra da NASA. Explora mais sobre a utilização da visão por computador para analisar imagens de satélite.
- Robótica: Permite que os robôs percebam e interajam com o seu ambiente de forma mais eficaz, compreendendo a disposição e os objectos numa cena. Aprende sobre a integração da visão por computador na robótica.
Modelos e ferramentas
A segmentação semântica utiliza frequentemente modelos de aprendizagem profunda, em particular arquitecturas derivadas de CNNs.