Apa metrik kesamaan warna yang baik?

8

Saya memiliki beberapa warna dalam RGB dalam [0,1] dan ingin menemukan cara untuk menilai kesamaan mereka, seperti yang dirasakan oleh manusia.

Saya memiliki dua ide dalam pikiran, tetapi saya yakin ada pilihan lain juga, tetapi tidak yakin mana yang terbaik, atau jika mungkin tidak ada yang terbaik, tetapi hanya pertukaran.

Ide pertama saya adalah memperlakukan warna RGB sebagai titik XYZ dan menghitung jaraknya.

Gagasan lain yang saya miliki adalah memperlakukan nilai RGB sebagai histogram dan menggunakan produk titik untuk mendapatkan nilai kesamaan di antara mereka, di mana nilai yang lebih besar lebih baik.

Namun saya tahu, bahwa tidak semua saluran warna memiliki kecerahan yang sama, jadi mungkin saya harus menimbang saluran warna secara berbeda untuk kedua kasus?

Saya juga berpikir saya mungkin perlu melakukan koreksi sRGB pada nilai warna (seperti, sqrt setiap saluran warna).

Saya juga tahu ada ruang warna lain, jadi mungkin salah satu dari mereka akan lebih baik dalam memberikan nilai kesamaan.

Tantangan lain untuk hal ini adalah tampilan yang berbeda akan menampilkan nilai warna yang sama secara berbeda. Tidak yakin apakah itu relevan dalam kasus ini.

Adakah yang bisa memberikan bantuan / arahan?

Alan Wolfe
sumber
4
Apakah Anda pernah melihat ini ? RGB bukan ruang warna yang bagus untuk melakukan perbandingan yang berkaitan dengan persepsi manusia.
ace
Info bagus terima kasih! Saya melihat cielab tetapi artikel itu mengatakan itu bukan yang terbaik. Sayangnya saya melakukan pekerjaan dengan sumber data RGB jadi harus mencari tahu bagaimana mengkonversi dari RGB ke sesuatu yang lebih baik, tetapi tantangannya adalah bahwa RGB tergantung pada perangkat, sedangkan cielab tidak. Untungnya, perkiraan yang lebih rendah cukup baik untuk kebutuhan saya, jika independensi perangkat tidak benar-benar layak dengan data sumber RGB.
Alan Wolfe
Lihatlah situs Bruce Lindbloom, terutama berbagai metrik DeltaE: brucelindbloom.com
David Kuri
Ada paket Python keseluruhan untuk ilmu warna yang mencakup beberapa transformasi: colour-science.org .
KAE

Jawaban:

3

Saya memiliki beberapa warna dalam RGB dalam [0,1] dan ingin menemukan cara untuk menilai kesamaan mereka, seperti yang dipersepsikan oleh manusia.

Ini adalah subjek yang sangat besar, dan secara longgar ditemukan di bawah panji model penampilan warna . Mengapa tidak sepenuhnya pembentukan yang lebih sederhana adalah karena sifat warna psikofisik dalam warna yang tidak ada di luar organisme manusia.

Ide pertama saya adalah memperlakukan warna RGB sebagai titik XYZ dan menghitung jaraknya.

Gagasan lain yang saya miliki adalah memperlakukan nilai RGB sebagai histogram dan menggunakan produk titik untuk mendapatkan nilai kesamaan di antara mereka, di mana nilai yang lebih besar lebih baik.

Namun saya tahu, bahwa tidak semua saluran warna memiliki kecerahan persepsi yang sama, jadi mungkin saya harus mempertimbangkan saluran warna secara berbeda untuk kedua kasus?

Saran terbaik adalah, seperti halnya kriptografi, jangan gulung sendiri; Anda kemungkinan akan sampai pada sistem sub-optimal yang, dalam kasus terbaik, dinding yang terkena sudah ditabrak oleh peneliti lain di lapangan. Jika Anda mendasarkan pekerjaan Anda pada model dan penelitian yang ada, Anda mungkin menemukan itu lebih akurat untuk kebutuhan Anda [1].

Orang bisa menunjuk pada perkembangan historis di sekitar CAM, tetapi lebih mudah di sini untuk menyarankan Anda meneliti model pengkodean warna IPT dan padanannya yang berbentuk silinder yang memodelkan warna dan rona sebagai sudut. Evolusi dalam model IPT mengatasi sebagian besar masalah model Lab sebelumnya, dan menyederhanakan beberapa pekerjaan yang terlibat dalam CIECAM02.

Tantangan lain untuk hal ini adalah tampilan yang berbeda akan menampilkan nilai warna yang sama secara berbeda. Tidak yakin apakah itu relevan dalam kasus ini.

IPT, dan setiap ruang warna RGB dalam hal ini, berlabuh dalam penelitian CIE 1931. Dengan demikian, masalah-masalah semacam ini diselesaikan pada tingkat yang lebih rendah.

[1] Jawaban yang diperluas ini disebabkan oleh komentar Mr. Wolfe di bawah ini dalam upaya untuk menjelaskan mengapa menggulirkan solusi Anda sendiri mungkin merupakan pendekatan yang kurang optimal.

troy_s
sumber
3
Mencegah orang dari bereksperimen dalam grafik dan menyesuaikannya dengan algoritma kripto kerajinan tangan adalah konyol.
Alan Wolfe
@AlanWolfe Mengingat bahwa ada beberapa tipe PhD yang sangat brilian di luar sana yang telah menghabiskan banyak waktu dan upaya memecahkan masalah dalam pertanyaan awal, saya menemukan konteks konyol Anda yang konyol. Bukan untuk mencegah satu dari mengisi sepatu bot mereka dan mencoba untuk menemukan kembali roda.
troy_s
Anda harus mendengar peretasan sederhana yang direkomendasikan oleh peneliti grafis aktif. Seperti "dot product RGB, ini benar-benar bekerja dengan sangat baik" dari Peter Shirley.
Alan Wolfe
2
Saya sudah pindah tetapi ada aplikasi runtuhnya fungsi gelombang untuk gambar prosedural dan pembuatan konten. Ini bekerja sebagian dengan pencocokan piksel yang tepat sehingga paling baik dengan seni pixel. Saya melihat dapat melakukan pencocokan yang lebih lembut untuk digunakan dengan gambar yang lebih realistis, atau untuk aturan konten prosedural yang kurang ketat. Lihatlah tautan ini untuk hal mendasar: github.com/mxgmn/WaveFunctionCollapse
Alan Wolfe
2
Ini bukan pekerjaan saya, tetapi saya mencoba untuk memperpanjangnya. Saya setuju sepenuhnya, ini hal yang keren! Di luar topik tapi ini pekerjaan saya yang tidak berhubungan hehe. blog.demofox.org/2016/02/22/…
Alan Wolfe
4

Jika metrik kompleks dapat diterima, saya akan menyarankan untuk melihat pendekatan berbasis persepsi yang dijelaskan di sini . Metrik dirancang untuk memilih perbedaan persepsi dari dua gambar. Ada dua tes utama untuk itu: berbasis pencahayaan dan berbasis warna. Yang pertama memungkinkan untuk menjawab pertanyaan seberapa penting perubahan pencahayaan adalah dengan memperkirakan faktor ambang batas yang tidak seragam berdasarkan sensitivitas terhadap perubahan kontras tergantung pada frekuensi spasial gambar. Yang kedua didasarkan pada jarak euclidean dalam ruang warna CIE LAB, tetapi sedikit dimodifikasi untuk membuat perbedaan warna kurang penting ketika luminans berada dalam rentang mesopik dan scotopic. Daftar makalah yang terkait dengan metrik itu dapat ditemukan di sini .

reinsteam
sumber
3
Selamat Datang di Komputer Grafik SE! Secara umum, jawaban hanya tautan sangat tidak disarankan di SE, karena mereka mungkin menjadi tidak berguna seandainya tautan itu pernah turun. Harap sertakan ringkasan singkat dari konten mereka, sehingga orang masih dapat mengetahui apa yang sebenarnya Anda sarankan tanpa harus bergantung pada tautan.
Martin Ender