Bagaimana menemukan perpindahan saluran warna dari gambar RGB yang seharusnya berwarna abu-abu?


9

Saya menggunakan alat perekam yang sepertinya menggeser warna secara horizontal dan saya ingin menemukan jumlah unshifting yang harus saya lakukan pada 2/3 dari saluran untuk mendapatkan gambar dengan distorsi warna minimal.

gambar yang diambil

Anda dapat melihat di sini bahwa pada gambar asli setidaknya saluran biru digeser kembali dengan ~ 1,0 piksel.

masukkan deskripsi gambar di sini

Pertanyaannya adalah bagaimana saya bisa mendeteksi nilai unshift optimal, saya yakin itu bukan bilangan bulat.


Manakah dari gambar-gambar ini yang merupakan gambar yang direkam dari perangkat Anda?

Jawaban:


4

Sepertinya secara konsep Anda hampir sampai:

  • Ambil satu dari tiga saluran warna sebagai referensi (misalnya: merah)
  • Cocokkan hijau dengan merah
  • Cocokkan biru dengan merah

Masalahnya kemudian adalah pencocokan dengan akurasi sub-pixel. Untuk mendapatkan angka yang bermakna agak sulit, karena kesalahan interpolasi metode apa pun akan berdampak pada akurasi.

Ada dua metode pendaftaran gambar yang dapat digunakan yang dapat saya pikirkan:

  1. Registrasi gambar Lucas-Kanade . Menggunakan interpolasi linier mungkin tidak memberi Anda hasil yang cukup akurat, jadi pertimbangkan metode bikubik atau lainnya. Neil Dodgson telah membuat ikhtisar yang bagus. Sangat penting bahwa berbagai perubahan sub-piksel dari kernel interpolasi memiliki transfer frekuensi yang sama. Untuk keluarga kubik, kira-kira b-spline jauh lebih baik daripada cattmull-rom, dalam hal ini.

  2. Pertama-tama tingkatkan gambar, kemudian lakukan registrasi gambar yang tepat piksel menggunakan teknik favorit Anda. (korelasi silang dalam domain Fourier harus dilakukan). Ini hanya berfungsi jika peningkatan skala dilakukan dengan hati-hati. Bilinear atau bicubic kemungkinan besar tidak akan memberi Anda cukup akurasi. Saya dapat memikirkan tiga cara:

Sebuah. Interpolasi Yen . Lihat persamaan 11 dari makalahnya. Sangat lambat, tetapi optimal. Meskipun Anda tampaknya memiliki beberapa alias dalam sinyal sehingga asumsi 'bandlimited' yang dibuat Yen mungkin tidak berlaku.

b. Hitung FFT gambar, nol pad frekuensi tinggi, FFT terbalik.

c. Peningkatan skala non-linear. Karena tepinya cukup tajam, gambar tidak dibatasi dengan benar, yang mungkin menjadi batasan utama dari metode sebelumnya. Edge Dependent Directional Interpolasi mungkin lebih baik dalam hal ini.

Setelah Anda memiliki terjemahan sub-pixel di antara keduanya, koreksi ke saluran hijau dan biru sudah terpecahkan, apa pun metode yang Anda pilih.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.