terça-feira, 15 de fevereiro de 2011

Sopa celular

O primeiro autômato celular que conheci foi o Hodge-podge. Ele tem as seguintes regras:
  1. Cada célula tem N estados (0 a N-1);
  2. O próximo estado de cada célula é dado pela média dos estados dos vizinhos mais uma constante k;
  3. Quando uma célula chega ao estado N-1, ela volta a zero no próximo passo.
Em geral, inicia-se com ruído e observa-se a ordem que surge. Decidi experimentar com fotografias e, como cada ponto tem três valores (um para cada cor), aproveitei para descobrir que influência isso teria na imagens geradas.

Então, cada célula (ponto da imagem) tem três valores que podem variar de 0 a 255 (256 estados, portanto). No meu experimento, a célula 0 é vizinha da célula 511 (a imagem tem 512 x 512 pontos) tanto no eixo horizontal, como no eixo vertical.

Para não quebrar a tradição, usei a Lena como modelo:

O código foi escrito em Javascript. Inicialmente, testei 27 para a constante k.

Depois, experimentei um k diferente para cada componente da cor: 27 para o vermelho; 37 para o verde; 14 para o azul.

A próxima imagem foi gerada com k=33 igual para os três componentes.

Os desenhos evoluem com o tempo e quanto maior o valor de k, mais rápidas são as transformações.

Nenhum comentário: