Classificacão de Padrões (Pattern Classification)

programador
1.1.2.4 – Redes Neurais – Visao Computacional
1.1.2.4.3 – Classificacao de Padroes (Pattern Classification)
1.1.2.4.3.1 – Classificador de Minima Distancia (Prototype Matching)
1.1.2.4.3.2 – Correlacao Cruzada (Template Matching)
1.1.2.4.3.3 – Classificador Bayesiano (Optimo)
1.1.2.4.3.4 – K-Vizinhos Mais Proximos (K-NN)
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

Após extrair as características, precisamos rotular o objeto. A classificação de padrões executa exatamente essa tarefa. Primeiramente, ela atribui uma classe a uma imagem ou região. Este é o último estágio do processo de reconhecimento. Além disso, um vetor de características representa cada padrão no espaço n-dimensional. O classificador decide a qual classe este vetor pertence. Portanto, a qualidade da classificação depende diretamente das características extraídas. Quanto melhores as características, mais precisa será a decisão final. Dessa forma, este capítulo foca em três abordagens principais de classificação.

classificação por protótipo (minimum-distance classifier)

Este método compara o padrão desconhecido com protótipos armazenados. Geralmente, o protótipo é o vetor médio de cada classe. O sistema calcula a distância euclidiana entre o vetor desconhecido e cada protótipo. Em seguida, ele atribui a classe do protótipo mais próximo ao padrão. Por exemplo, o sistema de reconhecimento de cheques E-13B utiliza esta abordagem. Caracteres são projetados para serem facilmente distinguíveis. Consequentemente, um classificador simples funciona muito bem. Esta técnica é eficaz quando as classes apresentam boa separação. Ademais, ela é computacionalmente muito rápida e fácil de implementar. Portanto, ela se mostra ideal para aplicações industriais em tempo real.

classificador bayesiano (bayes classifier)

Este classificador é considerado o padrão ouro estatístico. Ele minimiza a probabilidade média de erro de classificação. O classificador Bayesiano utiliza probabilidades a priori das classes. Além disso, ele necessita da função densidade de probabilidade de cada classe. Na prática, os dados geralmente seguem uma distribuição Gaussiana. As amostras de treinamento fornecem os parâmetros (média e covariância) do modelo. A vantagem principal reside na sua base matemática sólida e robusta. Por exemplo, este classificador distinguiu pixels de imagens multiespectrais. Dessa forma, água, vegetação e áreas urbanas foram separadas com alta precisão. O classificador Bayesiano é uma escolha excelente para dados bem comportados.

redes neurais e aprendizado profundo (neural networks & deep learning)

Redes neurais artificiais buscam inspiração no cérebro humano. Primeiramente, elas consistem em camadas de neurônios interconectados. O algoritmo de retropropagação (backpropagation) realiza o treinamento. Redes profundas (deep learning) possuem muitas camadas escondidas. Por outro lado, as redes neurais convolucionais (CNNs) são especialmente poderosas para imagens. Elas aprendem características diretamente dos pixels brutos. Consequentemente, não precisamos criar descritores manuais. Por exemplo, a arquitetura LeNet-5 reconhece dígitos manuscritos com altíssima acurácia. Modelos como AlexNet e ResNet revolucionaram o reconhecimento de objetos. Portanto, o aprendizado profundo é a técnica de escolha para problemas complexos. Grandes bases de dados são frequentemente necessárias para seu treinamento eficaz.

Segmentação de Imagens

1.1.2.4 – Redes Neurais – Visao Computacional
1.1.2.4.2 – Segmentacao de Imagens
1.1.2.4.2.1 – Deteccao de Bordas
1.1.2.4.2.2 – Limiarizacao (Thresholding)
1.1.2.4.2.3 – Crescimento de Regiao (Region Growing)
1.1.2.4.2.4 – Corte de Grafos (Graph Cuts)
1.1.2.4.2.5 – Watershed
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

Segmentar uma imagem significa particioná-la em regiões distintas. O objetivo principal é separar objetos do fundo. Esta é uma das tarefas mais desafiadoras do processamento digital. Uma segmentação bem-sucedida simplifica drasticamente a análise posterior. Por exemplo, ela isola um tumor em uma ressonância magnética. Basicamente, existem duas abordagens principais para segmentar imagens. A primeira baseia-se em descontinuidades, como bordas. A segunda fundamenta-se em similaridades, como intensidade ou textura.

detecção de bordas (edge detection)

Bordas ocorrem onde a intensidade da imagem muda abruptamente. O gradiente da imagem é a ferramenta matemática para detectá-las. O operador de Sobel é um método clássico e simples. Ele calcula a magnitude do gradiente em cada ponto. Contudo, imagens ruidosas exigem técnicas mais robustas. O detector de Canny é considerado um padrão ouro. Primeiro, ele suaviza a imagem com um filtro Gaussiano. Em seguida, calcula o gradiente e aplica supressão de não-máximos. Finalmente, ele usa limiarização com histerese para ligar bordas. Esta técnica é frequentemente empregada em sistemas de visão industrial. Por exemplo, para inspecionar componentes em uma linha de montagem.

limiarização (thresholding)

A limiarização converte uma imagem em níveis de cinza para binária. Escolhe-se um valor de limite (threshold) para separar objetos do fundo. O método de Otsu calcula este limite automaticamente. Ele maximiza a variância entre as classes de pixels. Esta abordagem funciona bem com histogramas bimodais. Um histograma com dois picos distintos é ideal. Quando a iluminação é não-uniforme, usa-se a limiarização adaptativa. O algoritmo calcula um limite diferente para cada região da imagem. Por exemplo, para ler a placa de um carro em sombra. A limiarização global falharia, mas a adaptativa teria sucesso.

crescimento de região e watershed

O crescimento de região começa com “sementes” (pixels iniciais). Pixels vizinhos similares são agregados a estas sementes iterativamente. A similaridade pode ser baseada em intensidade, cor ou textura. Esta técnica é útil quando os objetos são bem definidos. Por outro lado, o algoritmo watershed (divisor de águas) tem uma abordagem topográfica. Ele interpreta a imagem como um relevo tridimensional. A água “inunda” o relevo a partir dos mínimos locais. Barreiras são construídas onde águas de diferentes bacias se encontram. Estas barreiras formam as bordas dos segmentos. O watershed é excelente para separar objetos que se tocam. Por exemplo, para contar células em uma lâmina de microscopia.