Processamento de imagens na prática

Classificação de objetos por centro de classe – parte II

Continuando com a classificação por centro de classe, os próximos passos são:

  • Determinar a distância mínima para que um objeto pertença a uma classe;
  • Classificar um conjunto de testes.

Distância de um ponto ao centro de classe

Medir distâncias em uma ou duas dimensões é uma tarefa bem simples. Alguns podem imaginar que medi-las em mais de 3 dimensões é diferente… não é. Uma fórmula de distância para d dimensões pode ser escrita assim:
|| x_1 - x_2 || = \sqrt{ \sum_{i=1}^d (x_1[i] - x_2[i])^2 }

Esta é a chamada distância euclidiana, que basicamente calcula a distância em linha reta entre dois pontos: x1 e x2.

O conjunto de testes

Conjunto de testes.

Conjunto de testes.

Fiz um conjunto de testes bem parecido com o conjunto de treinamento. Processei e analisei da mesma forma que o último, e obtive as medidas dos canais de cor R, G e B.

Fiz o cálculo das distâncias de cada ponto para cada centro de classe, considerando as 3 medidas. Na fórmula acima, as medidas são as dimensões [ i ]. As medidas e distâncias calculadas estão na tabela.

Para facilitar, colori os campos onde apareceram as menores distâncias. Este não é o resultado final da classificação, ainda é preciso decidir entre incluir os objetos em uma classe ou rejeitá-los.

Tabela com as medidas e as distâncias calculadas para cada centro de classe.

Tabela com as medidas e as distâncias calculadas para cada centro de classe.

Qual a distância mínima ?

Qual é a distância mínima que um objeto precisa estar de um centro de classe para ser incluído naquela classe?

Gráfico com os objetos e centros de classe.

Gráfico com os objetos e centros de classe.

É para isso que se calcula também os limites de classe: são limites estatísticos que definem se um objeto pertencerá a uma determinada classe ou não. Alguns deles são amplitude e desvio-padrão. Algumas vezes usamos o dobro ou o triplo do desvio-padrão, ou uma porcentagem da amplitude. Aí entra o julgamento do cientista que está analisando os dados. É preciso decidir qual é o tamanho real da sua classe.

Amplitude Desvio padrão
Red Green Blue Red Green Blue
Preto 5,53 1,92 1,92 3,17 1,08 1,08
Azul 11,32 4,35 12,5 3,34 1,27 3,94
Vermelho 1,19 2,77 2,46 0,51 1,03 0,96

OK, eu não criei um exemplo que gera muitas dúvidas… neste caso paramos por aqui e incluímos cada objeto na sua classe mais próxima, certo? Olhe de novo…

O objeto 6 tem a distância para o centro de classe mais próximo, o azul, de 14,97. Na tabela de limites, existe algum que incluiria este objeto? Não! Se escolhêssemos trabalhar com um destes limites o objeto 6 seria rejeitado, ou seja, ficaria sem classe. Isso está correto?

Não na minha opinião. A maior distância aconteceu porque, na hora de segmentar, este objeto ganhou um pouco do objeto adjacente, que é vermelho, provocando assim uma pequena flutuação no valor médio de cor. Este objeto é azul.

Solução? Aumentar o limite para 1,5 * Amplitude. Isto cobre as flutuações próprias dos objetos e as imprecisões na segmentação.

Pronto, é isso. Ah, as imagens são minhas. Sob criative commons, como sempre.

Que tal fazer isso com amostras do mundo real?

Trackbacks/Pingbacks

           
  1.        

Comente

Você pode usar estas tags e atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>