A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Quantização de Cores por GNG

Apresentações semelhantes


Apresentação em tema: "Quantização de Cores por GNG"— Transcrição da apresentação:

1 Quantização de Cores por GNG
Aurélio Moraes Figueiredo

2 Quantização Processo de representar imagens do tipo “true color” utilizando um número reduzido de cores se comparado ao número de cores original. Imagens do tipo “true color” são representadas a taxa de 24bit/pixel, componentes vermelho, verde e azul (modo RGB). O número máximo de cores distintas de uma determinada imagem seria 224 ~ 16.8 milhões de cores.

3 Quantização - Vantagens
O processo reduz a quantidade requerida de memória e o tempo de transferência de uma determinada imagem. Extremamente importante em aplicações multimídia de maneira geral (uso na Internet, etc.). Pode ser perfeitamente utilizado como uma etapa de pré-processamento para um determinado algoritmo de compactação a ser utilizado.

4 Objetivo Estudo de técnicas conhecidas de Machine Learning aplicadas ao problema de quantização (GNG). As técnicas são aplicadas a um benchmark de imagens já utilizado em artigos, e seus resultados são comparados a resultados já obtidos por outras técnicas. Cada uma das imagens foi quantizada a 256, 128, 64, 32, e 16 cores. O critério de comparação adotado foi o erro médio quadrático.

5 Luz e Cor Onda eletro-magnética 102 104 106 108 1010 1012 1014 1016
1018 1020 rádioAM FM,TV Micro-Ondas Infra-Vermelho Ultra-Violeta RaiosX f (Hertz) l (m) 106 104 102 10 10-2 10-4 10-6 10-8 10-10 10-12 VISÍVEL vermelho (4.3 1014 Hz), laranja, amarelo,..., verde, azul, violeta (7.51014 Hz)

6 Luz branca luz branca prisma vermelho alaranjado amarelo verde azul
Newton vermelho alaranjado amarelo verde azul violeta luz branca prisma Cor l Violeta nm Azul nm Verde nm Amarelo nm Laranja nm Vermelho nm 1 nm = 10-9 m luz branca (acromática) tem todos os comprimentos de onda

7 Representação perceptual da cor CIE RGB
R = 700 nm G = 546 nm B = nm r(l) R g(l) G b(l) B Cor Monocromática C(l) C(l ) = r(l) R + g(l) G + b(l) B

8 Componentes das cores monocromáticas - RGB -
C(l ) = r(l) R + g(l) G + b(l) B 0.4 b(l ) r(l ) g(l ) 0.2 Valores dos tri-esimulos l (nm) 400 500 600 700 438 nm 546 nm r(l ) - 0.2 Combinação de três cores (RGB) para reproduzir as cores espectrais

9 Processo aditivo para formação de cor
G processo aditivo verde Y 1.0 amarelo W C ciano branco K vermelho preto 1.0 R normalmente temos 1 byte para cada componente mapeando [0, 255] em [0,1] azul 1.0 M magenta B

10 Formação de imagens pixel

11 Imagem RGB

12 Imagem RGB

13 Canal R

14 Canal G

15 Canal B

16 Canais RGB

17 Quantizaçao 16 Cores 4.000 Cores

18 Quantizaçao 64 Cores 4.000 Cores

19 Quantizaçao 256 Cores 4.000 Cores

20 GNG (Growing Neural Gas):
Em métodos de aprendizado não supervisionado somente os dados de entrada estão disponíveis, e não existe nenhuma informação a respeito das saídas desejadas. Um objetivo possível é o de obter redução de dimensionalidade dos dados de entrada, encontrar um sub-espaço de menor dimensão que represente a maior parte ou todo o conjunto de dados. Diminuir o número de amostras de um determinado conjunto de dados. Dependendo da relação existente entre a dimensionalidade dos dados de entrada e dos dados da saída, alguma informação pode ser perdida durante o processo.

21 GNG (Growing Neural Gas Algorithm): http://www. ki. inf. tu-dresden
O algoritmo é descrito abaixo: Passo 0: Iniciar com duas unidades a e b com vetores posição aleatórios Wa e Wb em Rn; Passo 1: Escolher uma amostra da ser treinada segundo a distribuição de probabilidades do conjunto de amostras; Passo 2: Encontrar, dentre as unidades disponíveis, as duas unidades mais próximas da amostra de entrada, S1 e S2;

22 GNG (Growing Neural Gas Algorithm):
Passo 3: Incrementar o peso de todas as arestas que tenham S1 como um de seus vértices; Passo 4: Adicionar a distância quadrada existente entre a amostra sendo treinada e a unidade mais próxima dessa amostra ao acumulador de erros do neurônio:

23 GNG (Growing Neural Gas Algorithm):
Passo 5: Mover a unidade S1 e seus vizinhos topológicos na direção da amostra sendo treinada, por frações iguais a eb e en respectivamente: Passo 6: Caso as unidades S1 e S2 estejam conectadas por arestas, essa aresta deve receber 0 (zero) como peso; Passo 7: Remover todas as arestas que possuam peso maior que Amax. Caso após a remoção das arestas alguma das unidades fique sem arestas, remover essa unidade da rede;

24 GNG (Growing Neural Gas Algorithm):
Passo 8: Caso o número de amostras já treinadas seja igual a λ, inserir uma nova unidade na rede da seguinte maneira: Determinar a unidade q que possui o maior erro acumulado; Inserir uma unidade r entre a unidade q e o seu vizinho topológico de maior erro acumulado f; Os pesos iniciais de r terão, portanto, a seguinte configuração: Inserir arestas conectando a nova unidade criada r às duas unidades através das quais r foi gerada; Decrementar o erro das unidades q e f multiplicando esses error pela constante a. Inicializar o erro acumulado da nova unidade r como sendo o novo valor de erro da unidade q;

25 GNG (Growing Neural Gas Algorithm):
Passo 9: Decrementar os erros de todas as unidades existentes multiplicando seus erros acumulados por uma constante d; Passo 10: Caso o critério de parada seja atingido (ex: caso o número de unidades existentes na rede seja alcançado), o treinamento está completo. Caso contrário, voltar ao passo 1. Um exemplo de execução do algoritmo pode ser visto aqui. Os parâmetros de entrada para esse caso foram: λ=100, eb=0.2, en=0.006, a=0.5, Amax=50, d=0.995:

26 λ=100, eb=0.2, en=0.006, a=0.5, Amax=50, d=0.995:

27 Resultados obtidos com o GNG

28 Peppers Cores 256 Cores Erro * 500

29 Mandrill Cores 256 Cores Erro * 500

30 Airplane 77274 Cores 256 Cores Erro * 500

31 Lena Cores 256 Cores Erro * 500

32 Sailboat Cores 256 Cores Erro * 500

33 Resultados do GNG: Método iterativo, os parâmetros são ajustados caso a caso para o melhor resultado. Para o caso geral verificou-se que uma boa configuração seria: λ=200, eb=0.2, en=0.006, a=0.5, Amax=50, d=0.995 A variação de λ foi a que produziu as diferenças mais significativas.

34 Resultados Comparativos

35 Trabalhos Anteriores


Carregar ppt "Quantização de Cores por GNG"

Apresentações semelhantes


Anúncios Google