Glossário

Segmentação de instâncias

Descobre como a segmentação de instâncias refina a deteção de objectos com precisão ao nível do pixel, permitindo máscaras de objectos detalhadas para aplicações de IA.

Treina os modelos YOLO simplesmente
com Ultralytics HUB

Aprende mais

A segmentação de instâncias é uma técnica sofisticada de visão por computador (CV) que identifica objectos numa imagem e delineia os limites precisos de cada instância individual ao nível do pixel. Ao contrário dos métodos que apenas colocam caixas à volta dos objectos, a segmentação de instâncias fornece uma compreensão muito mais detalhada de uma cena, criando uma máscara única para cada objeto detectado, mesmo que pertençam à mesma classe. Esta capacidade é crucial para aplicações avançadas de inteligência artificial (IA), em que é essencial conhecer a forma, o tamanho e a extensão espacial exactos de objectos distintos, especialmente quando os objectos se sobrepõem.

Como funciona a segmentação de instâncias

Os modelos de segmentação de instâncias analisam uma imagem para localizar primeiro potenciais objectos e depois, para cada objeto detectado, prever quais os pixels que pertencem a essa instância específica. As abordagens tradicionais, como a influente arquitetura Mask R-CNN, utilizam frequentemente um processo em duas fases: primeiro, efectuam a deteção de objectos para gerar propostas de caixas delimitadoras e, em segundo lugar, geram uma máscara de segmentação dentro de cada caixa proposta. Embora eficazes, esses métodos podem exigir muito do ponto de vista computacional.

Abordagens mais recentes, incluindo modelos como Ultralytics YOLOutilizam frequentemente pipelines de fase única. Esses modelos prevêem simultaneamente caixas delimitadoras, rótulos de classe e máscaras de instância em uma única passagem pela rede neural (NN), levando a melhorias significativas na velocidade, tornando-os adequados para inferência em tempo real. O treinamento desses modelos requer grandes conjuntos de dados com anotações em nível de pixel, como o conjunto de dados COCO amplamente utilizado, especificamente suas anotações de segmentação. O processo normalmente envolve técnicas de aprendizagem profunda (DL), aproveitando as redes neurais convolucionais (CNNs) para aprender caraterísticas visuais complexas.

Segmentação de Instância Vs. Tarefas Relacionadas

É importante diferenciar a segmentação de instâncias de outras tarefas de segmentação de imagens:

  • Deteção de objectos: Identifica a presença e a localização de objectos utilizando caixas delimitadoras, mas não fornece informações sobre a forma. A segmentação de instâncias vai mais longe, delineando os pixels exactos de cada objeto.
  • Segmentação semântica: Atribui um rótulo de classe a cada pixel de uma imagem (por exemplo, "carro", "pessoa", "estrada"). No entanto, não distingue entre diferentes instâncias da mesma classe. Todos os carros, por exemplo, fariam parte do mesmo segmento "carro". Podes ler mais neste guia sobre segmentação de instâncias vs segmentação semântica.
  • Segmentação panóptica: Combina segmentação semântica e de instância. Atribui uma etiqueta de classe a cada pixel (como a segmentação semântica) e também identifica de forma única cada instância de objeto (como a segmentação de instância).

A segmentação de instâncias centra-se especificamente na deteção e delineação de instâncias de objectos individuais, proporcionando uma elevada precisão relativamente aos limites e separação dos objectos.

Aplicações da segmentação de instâncias

A capacidade de identificar e isolar com precisão objectos individuais torna a segmentação de instâncias inestimável em vários campos:

  • Condução autónoma: Os carros autónomos dependem da segmentação de instâncias para perceberem com precisão o que os rodeia. A diferenciação entre veículos individuais, peões, ciclistas e obstáculos, mesmo em cenários desordenados ou sobrepostos, é fundamental para uma navegação segura e para a tomada de decisões. Empresas como a Waymo utilizam extensivamente estas técnicas.
  • Análise de imagens médicas: Em radiologia e patologia, a segmentação de instâncias ajuda a delinear estruturas específicas como tumores, órgãos ou células em exames(TAC, RMN, etc.). Esta precisão ao nível do pixel ajuda no diagnóstico, medindo o tamanho do tumor, planeando cirurgias e acompanhando a progressão da doença. Por exemplo, a utilização do YOLO11 para a deteção de tumores mostra esta aplicação no contexto mais vasto da IA nos cuidados de saúde.
  • Robótica: Os robôs que executam tarefas como agarrar ou manipular em ambientes não estruturados precisam de identificar e localizar objectos individuais com precisão. A segmentação de instâncias permite que os robôs compreendam a forma exacta e os limites dos objectos para uma interação bem sucedida, o que é explorado mais detalhadamente em IA na Robótica.
  • Análise de imagens de satélite: Utilizada para cartografar detalhadamente a cobertura do solo, monitorizar a expansão urbana através da identificação de edifícios individuais ou seguir objectos específicos como navios ou veículos. Este nível de detalhe apoia a monitorização ambiental, a gestão de recursos e a recolha de informações. Explora técnicas gerais de análise de imagens de satélite.
  • Monitorização agrícola: Ajuda a contar plantas ou frutos individuais, a avaliar a saúde das culturas por planta ou a identificar tipos específicos de ervas daninhas para uma intervenção direcionada, contribuindo para a agricultura de precisão.

Segmentação de instâncias com o Ultralytics YOLO

Ultralytics fornece modelos de última geração capazes de efetuar uma segmentação eficiente de instâncias. Modelos como YOLOv8 e YOLO11 foram concebidos para proporcionar um elevado desempenho em várias tarefas de visão por computador, incluindo a segmentação de instâncias(ver detalhes da tarefa de segmentação). Os utilizadores podem tirar partido de modelos pré-treinados ou efetuar um ajuste fino em conjuntos de dados personalizados utilizando ferramentas como a plataforma Ultralytics HUB, que simplifica o fluxo de trabalho de aprendizagem automática (ML) desde a gestão de dados até à implementação do modelo. Para uma implementação prática, estão disponíveis recursos como tutoriais sobre segmentação com modelos pré-treinados Ultralytics YOLOv8 ou guias sobre o isolamento de objectos de segmentação. Também podes aprender a utilizar Ultralytics YOLO11 para segmentação de instâncias. Estruturas populares como PyTorch e TensorFlow são normalmente utilizadas para desenvolver e implementar estes modelos.

Lê tudo