Questão GIMP: mudar uma cor para outra?


No GIMP, eu tenho uma imagem GIF de botão verde: ela tem um tom de verde-escuro a verde-claro, contra um fundo transparente. Eu gostaria de mudá-lo para azul, e manter o sombreamento, então ele vai do azul escuro ao azul claro.

Como posso fazer isso?


95


origem




Respostas:


Se você carregar uma imagem GIF, provavelmente terá uma imagem de paleta. Certifique-se de alterá-lo para RGB primeiro com: Imagem → Modo → RGB. Alterar cores (incluindo operações de redimensionamento) não funcionará muito bem com as paletas, porque o Gimp limita sua seleção de cores para as cores definidas na paleta.

Eu sugiro que o Hue em rotação Cores → Saturação de Matiz.

Dada uma imagem inicial como esta:

green gradient

Você muda a Matiz primeiro clicando em Mestre e, em seguida, arrastando o controle deslizante Matiz e, em seguida, ajusta o Brilho e o Constrast ao seu gosto.

Adjust Hue in Colors -> Hue-Saturation

O resultado é assim:

blue gradient

Você pode facilmente torná-lo mais frio ou mais quente, mais escuro ou mais claro, mais ou menos saturado.


76



Boa resposta. Como uma nota adicional, se o seu botão contiver uma borda, isso também mudará sua cor. Para evitar isso, use a ferramenta de seleção para selecionar apenas a área que gostaria de recolorir e, em seguida, execute a Saturação por Matiz. - Lee Harrison


Se você estiver usando o GIMP 2.8.2, você pode usar Colors -> Map -> Color Exchange.

Fonte: Como posso trocar cores com o GIMP?


69



Isso também parece funcionar apenas em uma região clicada de píxeis contíguos, não em todos os pixels selecionados. Como eu comentei acima, isso coloriza o pixel em que o invoco. O Select by Color selecionou centenas de pixels em toda a imagem. - ProfK
@ProfKaos Ele funciona bem para mim. Caso não tenha nada selecionado, Troca de cores altera todos os pixels na imagem inteira. - MasterPJ
Estou procurando por uma transformação matemática. Eu estou convertendo # 650000 para # 590000, então eu sinto que eu deveria ser capaz de aplicar -060000 a cada pixel, mas eu não vejo nenhuma maneira fácil ... - isaaclw
Você também pode usar "Cores -> Mapa -> Mapa de Gradiente" para alterar os gradientes. Muito útil - Javier Constanzo
Essa é a resposta. Ao ajustar o limite, também é possível manipular os tons da cor (por exemplo, no caso de limites de caractere com suavização de borda) - Csaba Toth


Você está procurando por menu Corese, especialmente, a função Colorir.


20



Isso apenas coloriza o pixel em que o invoco. O Select by Color selecionou centenas de pixels em toda a imagem. - ProfK
Isso mantém o sombreamento, resultando em tons de azul escuro para azul claro? - Peter Mortensen


Para mudar uma cor para outra cor específica, sugiro usar Colorir.

Suponha que desejamos alterar a cor azul (# 05adee) do logotipo do superusuário para uma cor verde próxima a # 05ad27.

  1. Cores → Cor para alfa: escolha a cor secundária que será transparente (branco no nosso exemplo)

enter image description here

  1. Cores → Colorir → Cor customizada: escolha a cor de destino e adicione cerca de 10-40 ao valor (do HSV)

enter image description here

  1. Defina a cor secundária como cor de fundo (branco no nosso exemplo)
  2. Imagem → Achatar imagem

Usando o GIMP 2.8.6.


8



Isso funciona com um sombreamento, tons de azul escuro a azul claro? - Peter Mortensen
Sim. Se você ampliar os dois exemplos que eu postei, você verá que os tons são alterados corretamente. - Marco Lackovic


O primeiro método bem-sucedido que eu encontrei para fazer o mesmo tipo de coisa era usar o ImageMagick, mas com um operador diferente do que o anteriormente sugerido --separate / -swap.

O operador diferente é -recolor ou -color-matrix, dependendo da versão do ImageMagick.

Especificamente, porque eu conhecia uma "cor principal" da imagem original (verde, no seu caso e no meu) e eu conhecia a "cor principal" na imagem de resultado desejada (azul, no seu caso, laranja na minha), eu dei ImageMagick '-recolor / -color-matrix opção uma matriz de transformação com valores que refletem as diferenças em cada um dos canais RGB.

Por exemplo, no meu caso, a cor totalmente verde era R: 141 G: 198 B: 63 e eu queria que mudasse para R: 231 G: 159 B: 70. O resto das cores queria ser alterado de forma equivalente.

Então, isso significa que eu queria que o valor R de novos pixels fosse 231 / 141ths do valor atual de vermelho. Valores verdes são 159/198 dos valores atuais. E os valores azuis são 63 / 70ths dos valores atuais.

Assim:

convert input.png -recolor      "1.638297872 0 0    0 0.803030303 0   0 0 1.111111111" output.png

ou

convert input.png -color-matrix "1.638297872 0 0    0 0.803030303 0   0 0 1.111111111" output.png

ou

Isso pareceu funcionar rapidamente depois de gastar muito tempo lutando com Gimp / plugins e paint.net/plugins.


4





  1. Mude sua cor de primeiro plano para a cor desejada. (por exemplo, azul no seu caso)
  2. Alterar plano de fundo para branco ou algo
  3. Abra a ferramenta de gradiente e defina FG para BG ou FG para transparente.
  4. Selecione a área ou cor usando 'Selecionar por cor'
  5. Cores -> Mapa -> Mapa de Gradiente

3





Eu não sei como fazer isso no GIMP, mas ImageMagick tem funções para separar e combinar canais de cores. Vejo esta página.

Consegui converter um arquivo GIF verde em azul com este comando:

convert input.gif -separate -swap 1,2 -combine output.gif

Eu acho que 1 e 2 se referem aos canais verde e azul, 0 é vermelho.


2





Se você atualizar o HUE com uma cor de imagem existente, o matiz será iniciado com esses níveis ... É necessário primeiro criar um fundo #fff branco. eu fiz

Cores -> Colorir e definir a luminosidade HUE para 100 ... isso removerá qualquer cor da sua imagem.

Então você pode usar cores -> Colorify e aplicar a cor que você deseja.


2





Em pequenos gráficos simples, eu zoom muito e depois mudo as cores usando o pincel.

Apenas mude o tamanho do pincel para 1 pixel.


1



-1 Isso não é prático se houver um gradiente, você teria que mudar dezenas de cores diferentes. - sleske
As duas soluções Gimp dadas acima não são muito melhores, então parece que estou preso a isso. - ProfK