Змінити один колір на інший?


109

У GIMP у мене зображення GIF із зеленою кнопкою: воно відтіняє від темно-зеленого до світло-зеленого на тлі прозорого. Я хотів би змінити його на синій і зберегти затінення, щоб воно відтіняло від темно-синього до світло-синього.

Як я можу це зробити?

Відповіді:


82

Якщо ви завантажуєте GIF-зображення, ви, ймовірно, маєте палітроване зображення. Переконайтеся, що спочатку змініть його на RGB за допомогою: ЗображенняРежимRGB . Зміна кольорів (включаючи зміни розміру) не дуже добре працюватиме з палітрами, оскільки Gimp обмежує свій вибір кольорів кольорами, визначеними в палітрі.

Я пропоную обертати відтінок у кольорахвідтінок-насичення .

Дано початкове зображення на зразок цього:

зелений градієнт

Спершу ви змінюєте Hue, клацнувши на Майстер, а потім перетягуючи повзунок Hue, а потім налаштовуйте Brightness and Constrast на свій смак.

Налаштуйте відтінок у кольорах -> Насичення відтінку

Результат виглядає приблизно так:

синій градієнт

Ви можете легко зробити холодніше або тепліше, темніше чи світліше, більш-менш насиченим.


3
Хороша відповідь. Як додана примітка, якщо ваша кнопка містить рамку, це також змінить її колір. Щоб уникнути цього, використовуйте інструмент вибору, щоб вибрати лише область, яку ви хочете перефарбувати, а потім запустіть Hue-Saturation.
Лі Гаррісон

1
Що робити, якщо я хочу змінити зображення на задане значення RGB?
Аарон Франке

77

Якщо ви використовуєте GIMP 2.8.2, ви можете просто використовувати Colors -> Map -> Color Exchange.

Джерело: Як я можу поміняти кольори GIMP?


2
Це також здається здатним працювати в кліку, що клацнув, в області суміжних пікселів, а не на всіх виділених пікселях. Як я і коментував вище, цей колоризує піксель, на який я викликаю його. Вибір за кольором вибрав сотні пікселів по всьому зображенню.
ПрофК

3
@ProfKaos Для мене це прекрасно працює. Якщо у мене нічого не вибрано, Color Exchange змінює всі пікселі у всьому зображенні.
MasterPJ

3
Я шукаю математичну трансформацію. Я перетворюю # 650000 в # 590000, тож я відчуваю, що я повинен мати можливість застосувати -060000 до кожного пікселя, але я не бачу простого способу ...
isaaclw

Ви також можете використовувати "Кольори -> Карта -> Градієнтна карта", щоб змінити градієнти. Дуже корисно
Хав'єр Констанцо

1
Ось відповідь. Регулюючи поріг, ви також можете обробити кольори тонів (наприклад, у випадку, якщо не встановлено межі символів)
Csaba Toth,

20

Ви шукаєте меню Кольори , а особливо функцію Colorize .


3
Це лише колоризує піксель, на який я викликаю його. Вибір за кольором вибрав сотні пікселів по всьому зображенню.
ПрофК

1
Чи зберігає це відтінок, відтінки від темно-синього до світло-синього?
Пітер Мортенсен

8

Щоб змінити колір на інший, я пропоную використовувати Colorify .

Припустимо, ми хочемо змінити синій колір (# 05adee) логотипу суперрузера на зелений колір, поряд із номером # 05ad27.

  1. КольориКолір до Альфи : виберіть вторинний колір, який стане прозорим (білий у нашому прикладі)

введіть тут опис зображення

  1. КольориРозфарбуватиКористувацький колір : вибрати колір призначення та додати приблизно 10-40 до значення (HSV)

введіть тут опис зображення

  1. Встановити вторинний колір як колір тла (білий у нашому прикладі)
  2. ЗображенняЗгладити зображення

Використання GIMP 2.8.6.


1
Це працює з відтінком, відтінками від темно-синього до світло-синього?
Пітер Мортенсен

1
Так. Якщо ви збільшите масштаб двох зразків, які я розмістив, ви побачите, що відтінки правильно змінені.
Марко Лацкович

Це робить мій образ набагато темнішим, ніж повинен бути. Чи є спосіб замінити один градієнт кольору на інший?
Аарон Франке

5

Першим успішним методом, який я виявив зробити те саме, було використання ImageMagick, але з іншим оператором, ніж запропоновано раніше --separate / -swap.

Різний оператор або -recolor, або -color-матриця, залежно від версії ImageMagick.

Зокрема, оскільки я знав "головний колір" вихідного зображення (зелений, у вашому випадку і моєму) і знав "головний колір" у бажаному результаті зображення (синій, у вашому випадку, помаранчевий у моєму), я дав ImageMagick '-recolor / -color-матриця опція матриця перетворення зі значеннями, що відображали відмінності в кожному з RGB-каналів.

Наприклад, у моєму випадку повністю зелений колір був R: 141 G: 198 B: 63, і я хотів, щоб він змінився на R: 231 G: 159 B: 70. Решту кольорів хотілося змінити рівнозначно.

Це означає, що я хотів, щоб значення R пікселів було 231 / 141th поточного червоного значення. Зелені значення повинні бути 159/198-м поточних значень. А сині значення повинні бути 63 / 70th поточних значень.

Тому:

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

або

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

або

Це, здавалося, спрацьовує миттєво після безрезультатно витраченого багато часу на боротьбу з Gimp / плагінами та paint.net/plugins.


3
  1. Змініть колір переднього плану на потрібний колір. (наприклад, синій у вашому випадку)
  2. Змініть фон на білий або щось подібне
  3. Відкрийте інструмент градієнта і встановіть FG на BG або FG на прозорий.
  4. Виберіть область або колір за допомогою "Вибрати за кольором"
  5. Кольори -> Карта -> Карта градієнта

2

Я не знаю, як це зробити в GIMP, але ImageMagick має функції для розділення та комбінування кольорових каналів. Дивіться цю сторінку .

Я зміг перетворити зелений GIF-файл у синій за допомогою цієї команди:

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

Я здогадуюсь, що 1 і 2 стосуються зеленого та синього каналів, 0 - червоного.


2

Якщо ви оновите HUE наявним кольором зображення, то відтінок буде ініційовано з цими рівнями ... Спочатку потрібно зробити білий #fff фон. я робив

Кольори -> Розфарбуйте та встановіть HUE легкість на 100 ... це видалить будь-який колір із зображення.

Тоді ви можете використовувати кольори -> Розфарбувати та застосувати потрібний колір.


1

На простій невеликій графіці я збільшую масштаб і потім змінюю кольори за допомогою пензля.

Просто змініть розмір кисті на 1 піксель.


4
-1 Це не практично, якщо є градієнт, вам доведеться змінити десятки різних кольорів.
sleske

1
Два рішення Gimp, наведені вище, не набагато кращі, тому, схоже, я затримався з цим.
ПрофК
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.