Projeto MSX Palette
Esse projeto tem como objetivo desenvolver um editor de paleta de cores para o MSX, bem como criar ferramentas de otimização das cores dessa paleta.
O projeto da paleta de cores surgiu em 2003 para dar suporte ao MSX Viewer 4, onde o protótipo somente exibia as 512 cores do MSX 2 e informava qual o valor R,G,B de uma dada cor, quando o mouse passava sobre ela.
Quando surgiu o MSX Viewer 5, foi criado um novo editor de paleta. Esse editor permite não só o usuário visualizar as cores do MSX, como definir as 16 cores da paleta do MSX, de modo que a imagem seja adaptada a qualquer combinação de cores. Além desse editor, há o editor de paleta para o chip de vídeo V9990, que possui 32 mil cores e 64 combinações possíveis.
Junto ao projeto do MSX Viewer surgiu um otimizador de paleta, onde a paleta de cores do MSX 2 e do V9990 são adaptadas a uma dada imagem, resultando em uma imagem de maior qualidade.
2009 - O MSX Viewer 5 (beta) é lançado trazendo um editor de paletas além de um otimizador para encontrar a melhor paleta para uma dada imagem.
2003 - O primeiro protótipo exibe as 512 cores do MSX 2, servindo como um catálogo de cores.
O editor de paletas surgiu junto do MSX Viewer 5 trazendo diversas novidades. A seguir, são listadas as principais funcionalidades do editor.
O editor permite ao usuário:
- Visualizar o valor R,G,B de uma dada cor.
- Alterar a cor de um índice da paleta, arrastando o valor do índice para a cor desejada.
- Alterar diretamente os valores R,G,B na tabela de cores.
- Alterar a paleta para cores pré-definidas.
- Carregar ou salvar uma paleta de cores. Compatível com a paleta do GIMP.
- Utilizar qualquer combinação de cores para uma imagem.
É possível adaptar uma imagem a qualquer paleta. Por exemplo, se tirvermos uma paleta com tons de azul, a imagem ficará em tons de azul.
Utilizando-se um método de reconhecimento de cores, como a "Distância Euclidiana", a imagem é adaptada à paleta com tons de azul.
3. O Otimizador
Além do editor, o MSX Viewer 5 possui um otimizador para adaptar a paleta do MSX 2 e do V9990 para uma determinada imagem. Ele utiliza o algoritmo do K-Means para atingir o objetivo.
No exemplo a seguir, foi utilizada a conversão para a GSCREEN 13 do V9990, com 64 cores de 32768.
Ao clicar sobre o botão de otimização na etapa de reconhecimento de cores, o diálogo pergunta sobre o número de iterações e o número de cores que se deseja utilizar da paleta. Esse recurso é interessante, caso o usuário deseje reservar algumas cores da paleta para uso futuro.
Após algumas rodadas, a paleta ideal é encontrada. Podemos ver o resultado, abrindo o editor de paleta. O editor de paleta do V9990 é diferente do editor do MSX 2, porém é mais parecido com os diálogos de cores do PC.
Após otimizar a paleta, deve-se reconhecer as cores utilizando o método de "Distância Euclidiana", "Error Diffusion" ou "Dithering". O resultado da otimização com "Error Diffusion" aplicado em uma imagem pode ser visto a seguir. Observe que a imagem possui apenas 64 cores.