Imagem usada para fazer as paletas de cores neste artigo

Palettes

Palletes feitas a partir de imagens

Americo
Graphic arts on free software
8 min readMar 24, 2014

--

Eu pessoalmente sou um adepto do trabalho baseado em palettes de cores… isto vem da pintura tradicional, onde estamos acostumados a te uma reduzida gama de cores e as outras são combinações feitas na palheta.

Uma das razões de gostar de palette de cores no mundo digital é que este é um modo para garantir coerência durante o processo entre um ou mais trabalhos para o mesmo comitente… e por que não aquele de construir um próprio e particular estile aonde a cor também é elemento importante dele. Num outro artigo tentarei fazer uma viagem através de alguns mestres da pintura atravessando alguns séculos… numa epoca onde a gama era limitadíssima e nos dias de hoje que é vastíssima.

No mundo digital existem vários softwares que tem a possibilidade de extrair as paletas de uma imagem, quaisquer elas sejam.

O Gimp e o Photoshop tem recursos para fazer isto facilmente… a seguir vou falar de dois métodos para o GIMP… mas que podem serem adaptados a qualquer tipo de software de edição e criação de imagens.

[http://docs.gimp.org/2.6/en/gimp-palette-dialog.html]

Construindo palette de cores a partir de RGB no Gimp [1]

No Gimp é bem mais fácil fazer isto, pois se não quiser não precisa passar a imagem para indexada como acontece no Photoshop… os passos sucessivos são praticamente da mesma classe. O recurso é disponível diretamente no Palette Menu, fazendo ‘Import Palette’.

Importação da Palette de uma imagem no Gimp.

Neste exemplo eu uma imagem indexada com somente 16 cores… neste caso o intervalo não tem nenhuma razão e portanto é desabilitado. Este método de indexar as imagens pode ser bastante interessante para termos paletas fixas e usáveis no Colormap do Gimp. Para criarmos palettes indexadas temos que usar Image > Mode > Indexed. Este argumento merece um capitulo a parte e vou trata-lo mais abaixo.

Importando a Palette de uma imagem indexada com 16 cores.

O parâmetro intervalo que ajusta os grupos de cores similares reduzindo assim a gama da palette. Não existe a priori uma regra fixa, mas o modo melhor para reduzir a gama de cores ‘ao osso’ seria de restringir primeiro o numero de cores. O segundo passo é escolher as colunas, mas isto não interfere na seleção mas sim na aparência da palette… se você tiver pensando em resumir a tão somente 4 cores… então usar 4 colunas é o numero mais adequado… este numero funciona bem para palettes com múltiplos de 4 (8, 12, 16, 32, …). Agora a decisão do intervalo vai ser interativa… a medida que aumento o intervalo gero grupos de cores mais especializados nas saturações máximas. O screenshot abaixo exemplifica bem este caso aonde o valor do ‘intervalo’ foi colocado no maximo e restituiu 4 cores bem representativas da imagem.

Ajustando o intervalo de uma palette encima de uma imagem RGB com 8 bit di profundidade.

Construindo Palettes com imagens indexadas [2]

Como podemos notar a palette obtida atraves da regulagem do intervalo de cores na imagem acima é bem representativa das cores. Mas o melhor método, ao meu ver, é aquele de indexar a imagem e depois extrair a palette de cores. O método usa como passo a posterior o filtro Colors > Posterize aonde determino melhor qual é o valor ideal de posterização, que em boa parte coincide com o numero de cores que devo ter na imagem indexada… a partir daí posso importar a minha palette com o recurso disponível no Palette Menu > Import Palette.

Imagem original sem posterização ainda.
Imagem posterizada com 8 cores.

Para construir a melhor palette eu constatei que é recomendável primeiro posterizar a imagem com o numero de cores que resume melhor as cores principais e mais importantes da imagem… sem com isso muda-la radicalmente. A seguir se converte a imagem RGB posterizada em imagem indexada a 8 cores (abaixo).

Imagem indexada de 8 cores a partir da imagem posterizada a 8 cores.

Como podemos notar a imagem é praticamente idêntica e agora podemos importar a palette. A figura abaixo mostra a importação da palette numa imagem indexada a 8 cores e previamente posterizada com o mesmo numero de cores. Podemos notar que todas as cores mais importantes foram importadas corretamente.

Importação da palette cores encima de uma imagem indexada a 8 cores previamente posterizada com a mesma quantidade de cores.

Os dois métodos são válidos, mas seguramente trabalhar com imagens indexadas é a melhor solução, mas desde que antes seja submetida à “posterização” e criando um resumo das cores que consideramos aceitáveis para representar a imagem. Indexando a imagem RGB diretamente, podemos ter varias surpresas, como tive oportunidade de constatar… por exemplo o laranja não apareceu e foi substituído por um tom muito claro desta cor. O algoritmo de conversão pode depender de ‘n’ coisas e então aconselho realizar as duas passagens… visto que o Posterize é já de certo modo um preview dinâmico para este processo em particular.

O método de posterização, sem transformar a imagem em indexada, pode ser particularmente útil para extrair as cores com a função de importação da Palette ampliando ou restringindo o intervalo de cores como detalhei na primeira parte do método… Ou seja sabendo e controlando bem este processo podemos realizar palettes bem representativas de modo bastante fácil e prático.

Ordenando as cores numa palette do Gimp segundo vários esquemas e canais.

Se uma palette de cores é salvada definitivamente na lista… esta pode ser editada e inclusive podemos ordenar as cores segundo diferentes esquemas.

Palettes a partir de imagens pixeladas — Caso Goya [3]

Lucientes de Goya e tentativo de simplificação da palette.

Em alguns casos o método de simplificação através a “posterização” e sucessiva indexação da imagem… pode não funcionar adequadamente, nestes casos eu aconselho a construir uma palette com base numa maior, como aquela web based… é uma solução para aqueles casos aonde certas cores teimam não aparecer.

Dama em vermelho que não conseguia extrair com o método de base.

Como numa palette que tentei transcrever de uma pintura do Goya (Lucientes) e a cor da dama de vermelho não era contemplada na imagem indexada com a mesma profundidade daquela que tinha posterizado.

Palette extraída em base a web based… e o vermelho vem recuperado.

Seguramente a palette é bem mais ampla do que as 12 cores nas quais queria inicialmente trabalhar.
Podemos também aplicar um unsharp mask que ajuda a saturar a imagem em modo equilibrado, mas neste caso não ajudou a resolver pois o vermelho da dama continuou não aparecendo.

Um método mais interessante para estes casos é aplicar um “pixelate” via GEGL e depois importar a palette usando uma quantidade e intervalo adequado… neste caso eu usei 24 cores e um intervalo de 62… no limite quando na palette começar chegar o branco cheio.

Técnica usando o pixelate do GEGl e depois importando a palette com restrição de cores e adequado intervalo.

Cada caso é um caso — resumindo os métodos

Resumindo os métodos podem estarem escondidos nos meandros da imagem… mas podemos imaginar métodos rápidos para a maioria parte de imagens bem saturadas e representadas em termos de cor… que seriam os primeiros dois métodos aqui apresentados [1] e [2]… para imagens com uma gama bem estreita de cores como é o caso desta pintura do Caso Goya [3]… podemos construir uma palette encima da web based ou então produzir o pixelate e a partir dai recuperar um palette… Parece que o método do Pixelate é muito bom e representativo para este tipo de problema.

Gradientes e palettes de cores

Amostra do gradiente salvado da palette de 4 cores inspirada na imagem deste artigo.

Em alguns trabalhos podemos usar métodos de pintura aonde tenhamos que usar instrumentos aos quais é útil apoiar um gradiente. No Gimp atualmente temos 3 instrumentos de pintura que possibilitam a pintura com gradiente: Gradient, Pencil e Paintbrush.
Uma palette criada a partir da mesma imagem na qual estamos trabalhando ou encima de uma palette de cores que estamos usando para pintar o trabalho pode ser transformada em um gradiente… ao voo e isto é particularmente útil no caso usemos dinâmicas nas quais está modelada o parâmetro Color.
Neste processo efeitos de “impasto” seriam muito mais significativos do que usar uma paletta estranha ao trabalho.

Um interessante script para criar gradients diretamente de imagens usando uma path:

Imagem do processo para obter um gradiente a partir de uma path numa imagem. Usando o script ‘Sample a Gradient Along a Path’.

http://registry.gimp.org/node/10240

Em ação o dialogo do script… ele tem varias opções que valem a pena investigar… eu deixei o default.

http://www.silent9.com/blog/archives/155-GIMP-Script-Sample-a-Gradient-along-a-Path.html

Eu testei no Gimp 2.8.10 e está funcionando perfeitamente.

Colormap — Palettes de imagens indexadas

Um colormap é justamente um mapa de cores e funciona se tenho aberto uma imagem indexada… o tab Colormap tem algumas interessantes funções… uma delas é rearranjar o índice das cores.

Outra vantagem significativa de termos imagens indexadas para construir palettes é que elas próprias já constituem uma palette de cores e pode ser adequadamente tratada e editada no Gimp.

Se por exemplo estamos trabalhando com Pixel Art ou afins ou até mesmo desenho de icones simples… o proprio trabalho é já a palette.

Este tipo de palette pode ser também salvada no tradicional standard do Gimp o .gpl.

Palettes para Inkscape [Pablo Lizardo]

Construindo palettes a partir de uma imagem de palette da web.

No Photoshop e na Web

No Photoshop parece bem interessante este howto do vimeo de Harry Harmenik.

Salvando e colocando a paleta de cores no Ilustrator

Existem várias aplicações bem interessantes na web… vou tratar aquelas exclusivamente que extraem as cores de imagens… pois existem ótimos aplicativos que constroem palettes personalizadas… mas sem a possibilidade de extrai-las de imagens. Neste perfil as minhas preferidas são a Color Palette Generator do DeGraeve e aquela do Colr.org. O mais completo parece ser o Colr.org… onde é possível personalizar a palette em muitos modos. É possível exporta-la como .aco… que são paletas nativas do Photoshop e comum a todos os outros pacotes da Adobe.

Em alguns casos estes aplicativos são muito interessantes e rápidos para resumir a gama de cores em poucos passos.

Para exportar .aco para formatos livres como .gpl usado no Gimp, Mypaint e no Inkscape no linux normalmente se usa o Gimp e SwatchBooker.

Esquema usando pelo DeGraeve.com

É possível usar também o gpick para importar as palettes tipo .ace da adobe e exportar-lhes em vários formatos inclusive o da adobe.

Outra resource bem interessante é http://encycolorpedia.com/ com várias possibilidades interessantes e que valem a pena serem pesquisadas.

--

--