• Nenhum resultado encontrado

3. MATERIAL E MÉTODOS

3.4 Processamento de imagens

De acordo com Gonzalez e Woods (2007), o processamento de imagens diz respeito a uma estrutura de ações interligadas, as quais realizam as funções de pré-processamento, realce e classificação/descrição da imagem.

Neste trabalho, o pré-processamento de cada imagem foi realizado no intuito de segmentar a informação do fundo da imagem, promovendo a separação entre solo, pedras, palha e planta de forma rápida e precisa. Embora existam vários métodos de segmentação para imagens coloridas, como os apresentados por Woebbecke et al. (1995), Meyer et al. (1998) e Camargo Neto et al. (2006), aqui foi utilizado o método do verde absoluto descrito em Nejati et al. (2008), onde o valor da distância de cores do pixel (PCD, do inglês:Pixel

Color Distance) é obtido por meio do cálculo da distância euclidiana, aplicado nos valores

normalizados das bandas vermelha e verde de cada pixel. A distância euclidiana dos pixels para o verde absoluto é dada por:

Equação 1

 

2

 

2

1 PCDpixel r pixel g  

Onde PCD é a distância do pixel para o verde o absoluto, pixel (r) é o valor atribuído ao pixel na banda vermelha e pixel (g) é o valor atribuído ao pixel na banda verde. O PCD representa o novo valor do pixel em um plano de imagem monocromático e foi aplicado em todos os pixels da imagem. Para remover ruídos aleatórios, a imagem monocromática foi submetida a um processo de filtragem por meio da aplicação de um filtro de mediana de dimensão 3x3 (PITAS e VENETSANOPOULOS, 1990).

Na etapa de realce, o objetivo é melhorar a qualidade da imagem, permitindo uma melhor discriminação dos objetos presentes na imagem. Assim, pelo método de Otsu (OTSU, 1979), iterativamente o histograma da nova imagem monocromática foi analisado para identificação automática de um limiar, o qual foi utilizado para discriminar cada pixel

25

como sendo fundo ou planta. A figura 7 exibe o resultado desta segmentação numa imagem de teste.

(a) (b)

Figura 7. Segmentação usando a distância euclidiana do verde absoluto com limiar de 0,73.

(a) Imagem de cana-de-açúcar com fundo contendo palha e solo exposto; (b) Planta detectada na imagem e fundo em cor preta.

A etapa de classificação é composta pelas ações de treino e teste, sendo que no treino busca-se identificar e aprender características marcantes das espécies de plantas que as diferenciem uma das outras, enquanto no teste, o conhecimento desenvolvido é utilizado para determinar qual espécie de planta está presente em novas imagens (MCCARTHY et al., 2010). Em função da versatilidade e promissores resultados encontrados em diversas áreas de visão artificial, para este trabalho foi adotado para o processo de classificação a metodologia do dicionário de palavras (YANG et al., 2007; LAZEBNIK et al., 2006; CHEN et al., 2009).Um diagrama ilustrando as etapas da metodologia do dicionário de palavras é apresentado na figura 8, seguido da descrição de cada fase que compõe a metodologia.

26

Figura 8. Fluxograma da metodologia do dicionário de palavras descrevendo as etapas

necessárias para classificação de uma imagem.

Na implementação da metodologia, descritores de características que são invariantes a variações de iluminação, rotação e/ou escala foram utilizados para extrair pontos relevantes na imagem, os quais foram agrupados por semelhança para formarem as palavras que compõem o dicionário (LAZEBNIK et al., 2006).

O descritor selecionado para extrair os pontos relevantes foi o SIFT – Scale

Invariant Feature Transform (LOWE, 2004), o qual possui quatro passos de execução,

sendo eles a detecção de extremos, localização de pontos característicos, definição de orientação e descrição dos pontos característicos. No primeiro passo, utilizou-se uma convolução de gaussianas em diferentes escalas da imagem, no intuito de encontrar pontos invariáveis à escala e à rotação. A localização utilizou um modelo detalhado para interpolar a localização e escala dos extremos, os pontos característicos foram selecionados baseando-

27

se em medidas de estabilidade dos extremos detectados. Na orientação, consideraram-se os gradientes locais da imagem na escala em que o ponto foi detectado. Finalmente, a partir dos gradientes da vizinhança, os pontos relevantes foram descritos através de vetores com 128 características.

A configuração do descritor de características SIFT utilizado foi no formato denso, tendo sido implementada através da biblioteca de características VLFeat (VEDALDI e FULKERSON, 2008). Na configuração adotada, a cada 5 pixels é gerado um descritor SIFT que cobre uma janela de dimensão 5x5 pixels. O tamanho da janela e o passo foram definidos em função do tamanho médio das folhas e da resolução das imagens.

Conforme a metodologia descrita em Csurka et al.(2004), o dicionário foi confeccionado utilizando-se apenas os pontos característicos mais recorrentes observados nas imagens de treino. As palavras e o tamanho do dicionário foram obtidos por meio do algoritmo de agrupamento de K-Médias (JAIN et al., 1999), tendo os pontos característicos sido agrupados por semelhança, gerou-se um ponto característico médio para cada grupo, o qual foi então dito ser uma palavra no dicionário.

O tamanho do dicionário, ou seja, o número de palavras geradas durante o agrupamento é um fator de grande influência na eficácia do método, pois um número pequeno de palavras pode comprometer a distinção de informação entre categorias, já um número grande pode reduzir a capacidade de generalização do classificador (ROCHA et al., 2012). Portanto, para este trabalho várias configurações de tamanho de dicionários foram exploradas, considerando o tamanho mínimo e máximo de 50 e 650 palavras, respectivamente.

Para identificar quais palavras do dicionário estavam presentes nas imagens, projetaram-se as palavras de cada imagem sobre o dicionário e através da análise da menor distância euclidiana entre as palavras da imagem e as do dicionário, foram identificadas as palavras correspondentes no dicionário. Através de uma função densidade de probabilidade do número de palavras visuais do dicionário que está presente na imagem, foi gerado para cada imagem um vetor de quantização (histograma), o qual serviu como parâmetro de entrada do modelo matemático desenvolvido na etapa final (YANG et al., 2007).Para permitir que imagens com maior ou menor quantidade de palavras fossem avaliadas no mesmo nível, antes de ser inserido no modelo o vetor de quantização era normalizado.

28

A classificação é a última etapa da metodologia, ela é composta pelas ações de construção (treino) e avaliação (teste) de um modelo matemático para reconhecimento do padrão das espécies de plantas estudadas. Motivados pela simplicidade, baixa demanda computacional e desempenho constatado em outras aplicações, tais como em Deng et al. (2009) e Ahmed et al. (2012), adotou-se como classificador as máquinas de vetores de suporte (SVM, do inglês: Support Vector Machine) propostas por Cortes e Vapnik (1995).

SVM é um método supervisionado de aprendizado de máquina que em sua forma mais simples é caracterizado por ser linear binário não probabilístico, ou seja, ele basicamente analisa os dados de entrada a partir de um hiperplano onde os dados são divididos em positivos ou negativos (MOUNTRAKIS et al., 2011). Entretanto, para problemas multiclasses como o encontrado nessa pesquisa, há duas abordagens principais que têm sido sugeridas. Em ambas as abordagens, a base tem sido a redução do problema multiclasse a um conjunto de problemas binário, de modo a permitir a utilização do SVM em seu formato básico (FOODY e MATHUR et al., 2004).

Petropoulos et al. (2012), explica que para o SVM ser estendido a mais do que duas classes, deve-se escolher entre duas abordagens: “um contra todos” e “um contra um”. Na primeira opção, uma categoria particular é treinada contra todas as outras categorias e isto é iterativamente repetido revezando-se apenas a categoria principal, enquanto na segunda opção, as categorias são treinadas aos pares e arranjadas no formato de árvore, a quantidade de iterações necessárias para q categorias é dada por: q (q - 1)/2.

Além disso, a fim de representar formas mais complexas do que hiperplanos lineares, o classificador pode utilizar funções de núcleo. Funções de núcleo comumente usadas em SVM incluem função de base polinomial, radial (RBF) e núcleo sigmóide (PETROPOULOS et al., 2012). No entanto, a função de base radial (RBF) e polinomial são comumente utilizadas na literatura para a classificação de imagens (TELLAECHE et al., 2011; RUMPF et al., 2012; DING et al., 2014).

Neste trabalho, o classificador SVM na configuração um contra todos foi implementado por meio da biblioteca de máquinas de vetores de suporte desenvolvida por Chang e Lin (2011). Como núcleo, foi usada a função de base radial, uma vez que tem sido bastante referenciada em trabalhos de categorização de imagens (SHAO e LUNETTA, 2012; DURO et al., 2012; BHAVSAR et al., 2013). Destaca-se que a implementação do

29

núcleo RBF requer dois parâmetros para ajuste do modelo: „y‟ e „C‟ (HSU et al. 2010), para este trabalho estes parâmetros foram determinados pelo método de tentativa e erro. Uma gama de valores para os dois parâmetros foi definida, o SVM treinado com todos os valores e então foi selecionada a dupla de valores com maior precisão. A ilustração na figura 9 exibe os passos necessários para a classificação com o SVM.

Figura 9. Ilustração dos passos de execução para o SVM.

Para avaliar a capacidade de generalização do modelo obtido, isto é, o quão preciso ele é, durante o treinamento, as imagens deste grupo foram divididas em quatro subconjuntos mutuamente exclusivos e submetidos à validação cruzada utilizando o método k-fold (KOHAVI, 1995). Nesta abordagem, 3 grupos foram usados para treinamento do modelo e o quarto para teste, tendo os grupos sido revezados a cada iteração.O resultado da validação cruzada é a média da precisão obtida quando cada subconjunto foi utilizado no teste de classificação.

A implementação dos algoritmos para o processamento das imagens foi realizada através da Toolbox de Processamento de Imagens do Matlab 9.0 R2011 (Mathworks), instalado num computador Intel Core 2 CPU, 2.13 GHz, 2 Gb Ram, com base no sistema operacional Windows.