• Aucun résultat trouvé

Os algoritmos de clustering (JAIN; MURTY; FLYNN, 1999) foram desenvolvidos com o objetivo de indentificar grupos de componentes de uma mesma amostra que possuem caracter´ısticas similares. Assim, os algoritmos de clustering, ou os procedimentos adotados pelos algoritmos de clustering, podem ser aplicados na classifica¸c˜ao dos quadros de imagem de uma seq¨uˆencia de v´ıdeo.

Em analogia aos m´etodos vistos anteriormente e introduzindo o jarg˜ao de cluster- ing temos que: classes s˜ao denominadas de clusters; as m´edias de cada cluster s˜ao denotadas como centr´oide e a classifica¸c˜ao ´e efetuada avaliando a menor distˆancia entre o componente em quest˜ao e cada centr´oide.

1. Escolha um n´umero k de clusters.

2. Escolha k pontos iniciais para serem utilizados como estimativas dos centr´oides.

3. Examine cada ponto da s´erie e coloque-o no cluster cujo centr´oide que estiver mais pr´oximo. A posi¸c˜ao do centr´oide ´e recalculada cada vez que um novo ponto ´e adicionado ao cluster.

4. Repita o passo 3 at´e que n˜ao haja mudan¸ca no cluster ou um n´umero m´aximo de passos seja executado.

Figura 4.4: Algoritmo k-Means.

De modo geral, os algoritmos de clustering podem ser enquadrados em duas cate- gorias: hier´arquicas e n˜ao hier´arquicas. Os algoritmos hier´arquicos visam uma classi- fica¸c˜ao que atenda `as especifica¸c˜oes pr´evias, com o menor n´umero de clusters poss´ıvel. Por outro lado, os algoritmos n˜ao hier´arquicos objetivam uma classifica¸c˜ao que atenda `as especifica¸c˜oes pr´e-estabelecidas, com um n´umero determinado de clusters.

A literatura apresenta uma variedade de algoritmos de clustering de prop´ositos gerais ou espec´ıficos. Dentre esses, destacamos o algoritmo n˜ao hier´arquico k-Means (MENASCE; ALMEIDA; DOWDY, 1994; LINDE; BUZO; GRAY, 1980). A Figura 4.4 sumariza o procedimento adotado pelo algoritmo k-Means.

Em nosso trabalho, decidimos pelo uso de um algoritmo baseado no k-Means. In- troduzimos algumas altera¸c˜oes no algoritmo adaptando-o aos nossos objetivos. Op- tamos por um procedimento que possibilita a busca pelo n´umero mais adequado de clusters, partindo de um determinado n´umero k. Assim, se k clusters n˜ao forem suficientes para obten¸c˜ao de uma classifica¸c˜ao na qual todos os cluster possuam um coeficiente de varia¸c˜ao abaixo do limiar desejado, o algoritmo acrescentar´a mais um cluster, repetindo o processo at´e a satisfa¸c˜ao da condi¸c˜ao ou at´e um n´umero m´aximo de vezes.

1. Escolha um n´umero k de clusters.

2. Ordene a seq¨uˆencia e divida em k blocos. Calcule a mediana de cada bloco e utilize cada mediana como estimativa inicial do centr´oide de cada cluster. 3. Examine cada ponto da seq¨uˆencia, inserindo-os ao cluster cujo centr´oide que estiver mais pr´oximo. Estabele¸ca o novo centr´oide do cluster escolhido para atribui¸c˜ao como a m´edia calculada ap´os cada atribui¸c˜ao.

4. Calcule o coeficiente de varia¸c˜ao de cada cluster e determine o coeficiente de varia¸c˜ao m´aximo. Caso o coeficiente de varia¸c˜ao m´aximo seja menor do que o limiar, ou caso o n´umero m´aximo de passos seja executado, termine. Caso contr´ario, divida o cluster com o coeficiente de varia¸c˜ao m´aximo em 2 clusters e recalcule o centr´oide de cada novo cluster.

5. Repita os passos 3 e 4 at´e satisfazer a condi¸c˜ao de t´ermino.

Figura 4.5: Algoritmo k+Means.

de clusters que introduzimos ´e uma caracter´ıstica dos algoritmos hier´arquicos. As- sim, ap´os essas altera¸c˜oes, renomeamos o algoritmo para k+Means, simbolizando a

possibilidade de aumento no n´umero de clusters3.

A Figura 4.5 exibe o algoritmo k+Means. Observe que utilizamos um procedi-

mento similar ao do m´etodo das medianas para inicializa¸c˜ao dos centr´oides.

Nas Figuras 4.6 e 4.7 apresentamos um exemplo num´erico simplificado para o uso do algoritmo k+Means. Para o exemplo, considere uma seq¨uˆencia X , com os valores

mostrados, como entrada do algoritmo. Assuma C como o conjunto de clusters, ck o

cluster k, M o conjunto de centr´oides e mkcomo o centr´oide k. Os valores num´ericos

do exemplo podem ser conferidos passo a passo, de acordo com o algoritmo, conforme exibimos nas figuras.

O resultado do procedimento seguido no exemplo ilustrado nas Figuras 4.6 e 4.7 pode ser visualizado graficamente na Figura 4.8. No gr´afico `a esquerda, exibimos

3Ball e Hall, em (

BALL; HALL, 1965) apud (JAIN; MURTY; FLYNN, 1999), propuseram o algoritmo

ISODATA que ´e uma varia¸c˜ao do k-Means, na qual os clusters podem ser unificados e particionados

na busca de uma classifica¸c˜ao ´otima. Portanto, o algoritmo k+Means pode ser visto tamb´em como

Seja uma seq¨uˆencia X , com limiar l = 0, 2.

X = {11; 5; 20; 23; 12; 4; 14; 16; 8; 15; 22; 6} = {x1; x2; x3; x4; x5; x6; x7; x8; x9; x10; x11; x12}

1. Escolha um n´umero k = 3 de clusters. 2. Ordene a seq¨uˆencia

X0

= {x6; x2; x12; x9; x1; x5; x7; x10; x8; x3; x11; x4}

e divida X0 em k clusters.

C = {c1, c2, c3}

= {(x6; x2; x12; x9); (x1; x5; x7; x10); (x8; x3; x11; x4)}

Calcule a mediana de cada cluster cke utilize a mediana mk, como estimativa

inicial do centr´oide de cada cluster. M = {x2+ x12 2 ; x5+ x7 2 ; x3+ x11 2 } = {5, 5; 13; 21}

3. Examine cada ponto da seq¨uˆencia, inserindo-os ao cluster cujo centr´oide que estiver mais pr´oximo. Estabele¸ca o novo centr´oide do cluster escolhido para atribui¸c˜ao como a m´edia calculada ap´os cada atribui¸c˜ao.

∀x0

i ∈ X0, ∃ ck tal que dk = minj{|x0i− mj|}

atualizando o valor de ck e mk

ck = ck∪ {x0i}

mk =

Σt:xt∈ck xt

kckk

Ap´os a inser¸c˜ao de cada x0

i o novo conjunto de clusters ´e o seguinte:

C0 = {(x6; x2; x12; x9); (x1; x5; x7; x10; x8); (x3; x11; x4)}

M0 = {5, 75; 13, 6; 21, 66}

4. Calcule o coeficiente de varia¸c˜ao de cada cluster C.O.V. = {0, 29; 0, 15; 0, 07} e determine o coeficiente de varia¸c˜ao m´aximo.

C.O.V.max = 0, 29

Caso o coeficiente de varia¸c˜ao m´aximo seja menor ou igual ao limiar, ou caso o n´umero m´aximo de passos seja executado, termine.

C.O.V.max > l

Caso contr´ario, divida o cluster com o coeficiente de varia¸c˜ao m´aximo em 2 clusters e recalcule o centr´oide de cada novo cluster.

Um novo cluster deve ser inserido na posi¸c˜ao 1 e os centr´oides recalculados:

C00 = {(x6; x2); (x12; x9); (x1; x5; x7; x10; x8); (x3; x1; x4)}

M00 = {4, 5; 7; 13, 6; 21, 66}

5. Repita os passos 3 e 4 at´e satisfazer a condi¸c˜ao de t´ermino. Repetindo os passos 3 e 4 mais uma vez temos:

C000 = {(x6; x2; x12); (x9); (x1; x5; x7; x10; x8); (x3; x1; x4)}

M000 = {5; 8; 13, 6; 21, 66} C.O.V.’ = {0, 2; 0; 0, 15; 0, 07} C.O.V.’max = 0, 2

Termina.

Figura 4.7: Exemplo Num´erico do Algoritmo k+Means. Parte II

2 4 6 8 10 12 14 16 18 20 22 24 0 2 4 6 8 10 12 14

Tamanho dos quadros (bits)

Quadros 2 4 6 8 10 12 14 16 18 20 22 24 0 2 4 6 8 10 12 14

Tamanho dos quadros (bits)

Quadros

Cluster 1 Cluster 2 Cluster 3 Cluster 4

Tabela 4.4: Estat´ısticas das classes da seq¨uˆencia dino obtidas pelo M´etodo Baseado em Clustering para 8 clusters.

CLASSE M´EDIA COEFICIENTE DE VARIAC¸~AO 1 2.418 0,18 2 3.756 0,11 3 5.708 0,12 4 8.671 0,12 5 13.378 0,14 6 22.678 0,17 7 43.076 0,14 8 62.194 0,14

a disposi¸c˜ao gr´afica dos pontos da seq¨uˆencia X e `a direita mostramos as m´edias representativas (centr´oides) de cada cluster obtidas ap´os o fim do procedimento. Tabela 4.5: Estat´ısticas das classes da seq¨uˆencia dino obtidas pelo M´etodo Baseado em Clustering – Algoritmo k+Means para 7 clusters.

CLASSE M´EDIA COEFICIENTE DE VARIAC¸~AO 1 2.700 0,19 2 4.326 0,12 3 6.875 0,14 4 10.904 0,15 5 19.177 0,18 6 37.158 0,17 7 59.546 0,15

Utilizando a seq¨uˆencia dino como dado de entrada para a implementa¸c˜ao do k+Means e definindo um coeficiente de varia¸c˜ao de 0,2 como limiar, obtivemos os

resultados expressos na Tabela 4.4. Podemos observar que todos os clusters aten- deram `a especifica¸c˜ao desejada.

Explorando a capacidade do algoritmo k+Means de obten¸c˜ao de um n´umero ade-

quado de clusters que atendem aos requisitos pr´e-determinados, obtivemos os resul- tados mostrados na Tabela 4.5. Apresentamos uma ilustra¸c˜ao gr´afica da classifica¸c˜ao

0 20000 40000 60000 80000 100000 120000 0 5000 10000 15000 20000 25000 30000 35000 40000

Tamanho dos quadros (bits)

Quadros Cluster 1 Cluster 2 Cluster 3 Cluster 4 Cluster 5 Cluster 6 Cluster 7

Figura 4.9: Seq¨uˆencia dino com 7 classes definidas pelo algoritmo k+Means.

efetuada pelo algoritmo k+Means na Figura 4.9. Esses resultados demonstram a pos-

sibilidade de classifica¸c˜ao da seq¨uˆencia dino em 7 clusters com coeficientes de varia¸c˜ao menores que 0,2.

Documents relatifs