Skip to content

LeonardVG/Classic_segmentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Segmentação de Imagens com Técnicas Clássicas

Python OpenCV

Neste repositório, é explorado diferentes técnicas clássicas de segmentação de imagens, fundamentais para diversos problemas como detecção de objetos, análise médica e visão computacional embarcada.

Observação: Todas as explicações detalhadas, exemplos e experimentos estão documentados no notebook do Google Colab.


Técnicas de Segmentação Estudadas

Segmentação por Limiarização (Thresholding)

Método simples que separa pixels com base em um valor de intensidade.

  • Global: Utiliza um único limiar para toda a imagem (THRESH_BINARY, THRESH_BINARY_INV, THRESH_TRUNC, etc.).
  • Otsu: Calcula automaticamente o melhor limiar baseado na distribuição dos pixels.

Segmentação Adaptativa

O limiar é calculado localmente para pequenas regiões da imagem.

  • Média: Usa a média da vizinhança.
  • Gaussiana: Considera pesos diferentes para os pixels próximos.

Operações Morfológicas

Transformações aplicadas em imagens binárias para melhorar a segmentação.

  • Erosão: Remove pequenas regiões/bruidos.
  • Dilatação: Expande regiões de interesse.
  • Abertura: Remove ruídos pequenos.
  • Fechamento: Preenche falhas internas.

Segmentação Baseada em Bordas

Detecta descontinuidades de intensidade para identificar objetos.

  • Sobel: Detecta gradientes nas direções horizontal e vertical.
  • Canny: Detector de bordas mais robusto, com múltiplas etapas.

Detecção de Contornos

Identifica os limites dos objetos segmentados, permitindo análise de forma e fechamento de regiões.


Mascaramento de Imagens

Aplica máscaras para isolar regiões específicas da imagem, focando apenas na área de interesse.


Segmentação Baseada em Região

Agrupa pixels com características semelhantes (como intensidade ou textura), formando regiões homogêneas.


Segmentação com Watershed

Algoritmo baseado em topografia que separa objetos conectados usando marcadores e distância.


Execução no Google Colab

O projeto foi desenvolvido em formato de notebook para facilitar a visualização dos resultados.

Como executar:

  1. Abra o notebook no Google Colab.
  2. Execute as células sequencialmente.
  3. Mude o caminho para a sua pasta com imagens.
  4. Teste com diferentes imagens para observar o comportamento das técnicas.

Tecnologias Utilizadas

  • Python
  • OpenCV
  • Numpy
  • Matplotlib
  • SkImage

Confira também o repositório

About

O repositório apresenta exemplos práticos, explicações passo a passo e comparações entre diferentes abordagens clássicas de segmentação, servindo como material de estudo.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors