Ubah satu warna ke yang lain?

109

Dalam GIMP, saya memiliki gambar tombol hijau GIF: itu berubah dari hijau gelap ke hijau muda, dengan latar belakang transparan. Saya ingin mengubahnya menjadi biru, dan tetap menggunakan naungan, jadi warnanya dari biru tua ke biru muda.

Bagaimana saya bisa melakukan ini?

Braiam
sumber

Jawaban:

83

Jika Anda memuat gambar GIF, kemungkinan Anda memiliki gambar yang dipalpasi. Pastikan untuk mengubahnya ke RGB terlebih dahulu dengan: GambarModeRGB . Mengubah warna (termasuk operasi pengubahan ukuran) tidak akan bekerja dengan baik dengan palet karena Gimp membatasi pemilihan warna pada warna yang ditentukan dalam palet.

Saya sarankan memutar Hue dalam WarnaHue-Saturation .

Diberikan gambar awal seperti ini:

gradien hijau

Anda mengubah Hue terlebih dahulu dengan mengklik Master dan kemudian menyeret slider Hue dan kemudian menyesuaikan Brightness dan Constrast sesuai keinginan Anda.

Sesuaikan Hue dalam Warna -> Hue-Saturation

Hasilnya terlihat seperti ini:

gradien biru

Anda dapat dengan mudah membuatnya lebih dingin atau lebih hangat, lebih gelap atau lebih terang, lebih atau kurang jenuh.

sastanin
sumber
3
Jawaban yang bagus. Sebagai catatan tambahan, jika tombol Anda berisi garis batas, ini juga akan berubah warna. Untuk menghindarinya gunakan alat seleksi untuk hanya memilih area yang ingin Anda warnai ulang, kemudian jalankan Hue-Saturation.
Lee Harrison
1
Bagaimana jika saya ingin mengubah gambar ke nilai RGB yang diberikan?
Aaron Franke
77

Jika Anda menggunakan GIMP 2.8.2, Anda bisa menggunakan sederhana Colors -> Map -> Color Exchange.

Sumber: Bagaimana saya bisa menukar warna dengan GIMP?

Patricio
sumber
2
Ini juga tampaknya hanya mampu beroperasi pada wilayah yang diklik dari piksel yang berdekatan, tidak pada semua piksel yang dipilih. Seperti yang saya komentari di atas, ini mewarnai piksel tempat saya memintanya. Select by Color telah memilih ratusan piksel di seluruh gambar.
ProfK
3
@ProfKaos Ini berfungsi dengan baik untuk saya. Jika saya tidak memilih apa pun, Pertukaran Warna mengubah semua piksel dalam seluruh gambar.
MasterPJ
3
Saya mencari transformasi matematika. Saya mengubah # 650000 menjadi # 590000, jadi saya merasa saya harus bisa menerapkan -060000 untuk setiap piksel, tapi saya tidak melihat cara yang mudah ...
isaaclw
Anda juga dapat menggunakan "Warna -> Peta -> Peta Gradien" untuk mengubah gradien. Sangat berguna
Javier Constanzo
1
Itulah jawabannya. Dengan menyesuaikan ambang, seseorang juga dapat menangani nada warna (misalnya dalam kasus batas karakter anti-alias)
Csaba Toth
20

Anda sedang mencari Warna menu , dan terutama fungsi Colorize .

Polisi
sumber
3
Itu hanya mewarnai piksel yang saya gunakan. Select by Color telah memilih ratusan piksel di seluruh gambar.
ProfK
1
Apakah itu menjaga naungan, menghasilkan nuansa dari biru tua ke biru muda?
Peter Mortensen
8

Untuk mengubah warna ke warna spesifik lain, saya sarankan untuk menggunakan Colorify .

Misalkan kita ingin mengubah warna biru (# 05adee) logo superuser menjadi warna hijau di dekat # 05ad27.

  1. WarnaWarna ke Alfa : pilih warna sekunder yang akan dibuat transparan (putih pada contoh kita)

masukkan deskripsi gambar di sini

  1. WarnaColorifywarna Adat : memilih warna tujuan dan menambah sekitar 10-40 untuk Value (dari HSV)

masukkan deskripsi gambar di sini

  1. Tetapkan warna sekunder sebagai warna latar belakang (putih pada contoh kita)
  2. GambarRatakan Gambar

Menggunakan GIMP 2.8.6.

Marco Lackovic
sumber
1
Apakah itu bekerja dengan naungan, nuansa dari biru tua ke biru muda?
Peter Mortensen
1
Iya. Jika Anda memperbesar dua sampel yang saya posting Anda akan melihat nuansa berubah dengan benar.
Marco Lackovic
Ini membuat gambar saya jauh lebih gelap dari yang seharusnya. Apakah ada cara saya bisa mengganti satu gradien warna dengan gradien warna yang lain?
Aaron Franke
5

Metode sukses pertama yang saya temukan untuk melakukan hal yang sama adalah menggunakan ImageMagick, tetapi dengan operator yang berbeda dari yang sebelumnya --separate / -swap yang disarankan.

Operator yang berbeda adalah -warna atau -warna-matriks, tergantung pada versi ImageMagick.

Khususnya, karena saya tahu "warna utama" dari gambar asli (hijau, dalam kasus Anda dan milik saya) dan saya tahu "warna utama" pada gambar hasil yang diinginkan (biru, dalam kasus Anda, oranye di tambang), saya memberikan ImageMagick '-recolor / -color-matrix opsi matriks transformasi dengan nilai-nilai yang mencerminkan perbedaan di masing-masing saluran RGB.

Misalnya, dalam kasus saya, warna sepenuhnya hijau adalah R: 141 G: 198 B: 63 dan saya ingin itu berubah menjadi R: 231 G: 159 B: 70. Sisa warna ingin diubah secara setara.

Jadi itu berarti saya ingin nilai R piksel baru menjadi 231/141 dari nilai merah saat ini. Nilai hijau menjadi 159/198 dari nilai saat ini. Dan nilai biru menjadi 63/70 dari nilai saat ini.

Begitu:

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

atau

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

atau

Ini tampaknya bekerja dalam sekejap setelah tanpa hasil menghabiskan banyak waktu bergulat dengan Gimp / plugins dan paint.net/plugins.

Alex Robinson
sumber
3
  1. Ubah warna latar depan Anda ke warna yang Anda inginkan. (misalnya biru dalam kasus Anda)
  2. Ubah Background menjadi putih atau sesuatu
  3. Buka alat gradien dan atur FG ke BG atau FG ke transparan.
  4. Pilih area atau Warna menggunakan 'Pilih berdasarkan Warna'
  5. Warna -> Peta -> Peta Gradien
roel
sumber
2

Saya tidak tahu bagaimana melakukannya di GIMP, tetapi ImageMagick memiliki fungsi untuk memisahkan dan menggabungkan saluran warna. Lihat halaman ini .

Saya dapat mengonversi file GIF hijau menjadi biru dengan perintah ini:

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

Saya kira 1 dan 2 merujuk ke saluran hijau dan biru, 0 berwarna merah.

W_Whalley
sumber
2

Jika Anda memperbarui HUE dengan warna gambar yang ada, rona akan dimulai dengan level-level itu ... Perlu terlebih dahulu membuat latar belakang #fff putih. aku melakukannya

Warna -> Warnai dan atur HUE lightness ke 100 ... ini akan menghapus warna apa pun dari gambar Anda.

Kemudian Anda dapat menggunakan Warna -> Mewarnai dan menerapkan warna yang Anda inginkan.

mario ruiz
sumber
1

Pada grafik kecil sederhana, saya memperbesar banyak dan kemudian mengubah warna sendiri menggunakan kuas.

Cukup ubah ukuran kuas ke 1 piksel.

Ed B
sumber
4
-1 Itu tidak praktis jika ada gradien, Anda harus mengubah lusinan warna yang berbeda.
sleske
1
Dua solusi Gimp yang diberikan sejauh ini di atas tidak jauh lebih baik, jadi sepertinya saya terjebak dengannya.
ProfK