Apa pro dan kontra dari algoritma demosaicing Bayer yang berbeda?

25

Sensor Bayer menggunakan pola piksel merah, hijau, dan biru, dan menggabungkannya menjadi gambar warna final, dengan satu piksel untuk setiap sensor warna tunggal . Ini bisa dilakukan melalui pencampuran sensor tetangga yang "naif", tapi saya pernah mendengar tentang pendekatan yang lebih rumit dengan nama-nama seperti AHD, HPHD, dan AMaZE.

Apa saja pendekatan lain ini, dan apa manfaatnya? Apakah mereka memiliki kelemahan di luar kompleksitas komputasi?

Saya membayangkan bahwa pendekatan yang digunakan untuk JPEG dalam kamera lebih dijaga ketat, tetapi jelas banyak penelitian dan pengembangan masuk ke bidang ini. Apakah daya pemrosesan terbatas yang tersedia dalam kamera memaksa kompromi di bidang ini?

mattdm
sumber
Saya bisa saja salah tetapi saya mendapat kesan bahwa demosaiacing terjadi di kamera kalau tidak gambar akan menderita alias. Ada artikel yang menarik tentang ini di salah satu Fotografi Populer baru-baru ini berbicara tentang Sigma (sensor Foveon X3) yang merupakan salah satu dari beberapa kamera yang tidak memiliki sensor bayer.
Jakub Sisak GeoGraphics
1
Ya, sedikit investigasi cepat menunjukkan AHD, atau Adaptive Homogeneity-Directed Demosaicing, adalah "standar industri", dan tampaknya digunakan oleh ACR / LR (setidaknya pada beberapa versi yang lalu ... siapa yang tahu apakah mereka memiliki memperkenalkan sesuatu yang lebih maju dengan ACR 6.x dan LR4.x). Sepertinya algoritma tertimbang yang bertujuan untuk mengurangi warna palsu.
jrista
7
@ Jakub: Pengosongan terjadi di dalam kamera untuk gambar JPEG. Seluruh titik gambar RAW adalah bahwa ia belum didemonstrasikan, dan merupakan "mentah" rekaman data piksel langsung dari sensor tanpa pemrosesan tambahan (di luar amplifikasi dasar Anda untuk mencapai ISO yang diperlukan.) Rendah optik -pass filter (filter AA) menghilangkan alias dengan frekuensi spasial "kabur" di bawah tingkat nyquist sensor.
jrista
Perlu diingat bahwa filter "Merah", "Hijau", dan "Warna biru pada array Bayer kami tidak sama dengan emisi Merah, Hijau, dan Biru pada perangkat RGB kami. Sangat disayangkan bahwa kami menggunakan nama yang sama untuk keduanya.
Michael C
Eh, mereka cukup dekat untuk memperlakukan seperti itu. Anda tidak akan mendapatkan warna yang sempurna, tetapi berada di stadion baseball. Lihat tampilan yang diperbesar di petapixel.com/2013/02/12/... misalnya - hanya secara visual, warna-warna filter jelas yang kita identifikasi sebagai.
mattdm

Jawaban:

19

Saya terkejut beberapa bulan yang lalu menemukan bahwa SDK kamera penglihatan mesin saya menggunakan "interpolasi" tetangga terdekat dalam fungsi bayer bawaannya. Ini adalah yang tercepat, tetapi jenis terburuk, memberikan tepi yang sulit, terutama ketika Anda mulai melakukan matematika pada saluran gambar untuk konstanta warna atau kecerahan invarian. Saya menemukan ulasan tentang algoritma ini:

http://www.arl.army.mil/arlreports/2010/ARL-TR-5061.pdf

Langkah selanjutnya adalah interpolasi bilinear dan bikubik yang dapat dihitung dengan cukup cepat karena hanya berjumlah kernel konvolusi. Ini memberikan gigi gergaji berwarna di tepi miring - bilinear lebih dari bicubic.

Dapat dilihat dalam makalah ini, dan dengan data kualitas terukur pada 5 algoritma yang berbeda:

http://research.microsoft.com/en-us/um/people/lhe/papers/icassp04.demosaicing.pdf

Inilah sebabnya mereka membuat interpolasi berbasis arah tepi. Namun, ini memperlakukan hijau sebagai "saluran yang lebih penting" (karena ia memiliki resolusi terbaik dan memperhitungkan sebagian besar sensitivitas visual dan resolusi mata kami). Dan kemudian mereka membuat biru dan merah sebagai fungsi dari saluran hijau, dengan cara mempertahankan warna. Ini pada gilirannya membuat konten hijau saluran frekuensi tinggi lebih rentan terhadap kesalahan. Kompleksitas lebih tinggi karena mereka harus mendeteksi apa yang terjadi dan memerlukan beberapa lintasan. Moire dan jagung adalah artefak umum dari jenis interpolasi ini.

Di sini mereka menunjukkan contoh Demosaicing Homogenitas Adaptif dan versi bilinear dengan dan tanpa rona, pelestarian tepi dan pelestarian tambahan:

http://math.auburn.edu/~kilgota/ahd_bayer.pdf

Makalah itu mendukung AHD dan tidak menunjukkan bagian negatif. Pada halaman ini Anda dapat melihat artefak pola yang berbeda dari Demosaicing Homogenitas Adaptif, Pengelompokan Piksel Berpola, dan Gradien Jumlah Variabel (arahkan mouse ke nama-nama):

http://www.ruevski.com/rawhistogram/40D_Demosaicing/40D_DemosaicingArtifacts.html

Singkatnya ada sejumlah asumsi yang digunakan dalam algoritma ini, dan artefak terjadi ketika asumsi tersebut tidak berlaku:

  • Kelancaran per saluran. Jika tetangga terdekat tidak sama, buat transisi menjadi lancar. Artefak: gergaji / ritsleting, kelembutan
  • Kesegaran kecerahan dengan tepi terarah (arah bilinear). Artefak: tekstur moire frekuensi tinggi, pinggiran warna
  • Konstanta rona. jika di lingkungan rona sama, jadi jika satu saluran berubah yang lain harus mengikuti. Artefak: ritsleting warna di tepi warna
  • Keteguhan dapat diprediksi dari sayuran. Artefak: labirin
Michael Nielsen
sumber
Pertanyaan cepat - pada baris terakhir, maksud Anda "jagung" (jenis jagung?) Atau "labirin"? Dalam kedua kasus itu, saya akan menghargai sedikit lebih banyak ekspansi dari apa jenis artefak ini.
mattdm
mouse dalam labirin.
Michael Nielsen
Keren :) Saya rasa saya tahu artefak yang dimaksud, tapi saya tidak yakin. Ini pola tingkat piksel acak garis horizontal dan vertikal pendek (mungkin dicampur dengan noise), kan? Menarik untuk mengetahui dari mana ini berasal - pada kenyataannya, saya hampir mengajukan pertanyaan tentang itu tempo hari, karena asumsi saya adalah bahwa itu adalah artefak NR.
mattdm
itu adalah garis-garis ya dan itu berasal dari cara algoritma bayer mencoba menebak data.
Michael Nielsen
5

Saya mulai bermain dengan ini sedikit, dan menemukan bahwa pendekatan naif tidak terlalu buruk. Itu hanya memperlakukan setiap warna secara terpisah dan menginterpolasi untuk mendapatkan di antara piksel. Kelemahan utama dari hal ini adalah jika Anda mengintip piksel di tempat yang memiliki kontras tinggi, Anda dapat melihat sedikit pinggiran warna. Dengan kata lain, jika Anda memiliki area abu-abu terang berbatasan dengan area hitam, Anda akan melihat beberapa piksel berwarna di perbatasan. Untungnya rata-rata ini keluar secara umum, tetapi jika ujungnya hampir vertikal atau hampir horisontal, mereka rata-rata keluar pada frekuensi rendah. Efek yang sama bisa lebih jelas pada garis-garis terang tipis yang hampir vertikal atau horizontal.

Berikut ini sebuah contoh. Foto ini diambil dengan sengaja sebagai uji coba:

Perhatikan garis batas garis trim chrome yang tampak jelas. Untuk menempatkan ini dalam perspektif, inilah bingkai lengkapnya:

Saya telah memikirkan pendekatan alternatif tetapi sejauh ini selalu ada hal lain yang harus dilakukan terlebih dahulu. Skema ini akan berusaha menemukan kecerahan saja terlebih dahulu. Ini akan menjadi saluran tunggal data gambar jika gambar itu hitam dan putih. Setiap sensel berkontribusi untuk itu, meskipun warna tidak berkontribusi sama. Setelah intensitas ditentukan, Anda kemudian akan menginterpolasi warna seperti pada metode naif, tetapi gunakan hasilnya hanya untuk mengatur warna sedemikian rupa untuk menjaga intensitas. Intensitas akan memiliki bandwidth yang lebih tinggi, atau lebih tajam dalam hal fotografi daripada informasi rona. TV analog menggunakan trik ini untuk mengurangi persyaratan bandwidth gambar berwarna. Mereka lolos karena sistem visual manusia lebih mementingkan intensitas daripada warna, terutama merah.

Bagaimanapun, itu hanya beberapa pemikiran. Seperti yang saya katakan, saya belum benar-benar mencobanya atau mengerjakan detailnya. Suatu hari.

Olin Lathrop
sumber
3

Ini adalah pemahaman saya bahwa Versi Proses yang berbeda di Lightroom (hingga sekarang kami memiliki 2003, 2010 dan 2012) sesuai antara lain dengan algoritma demosaicing yang berbeda. Perangkat lunak lain yang menarik adalah UFRaw yang menawarkan yang berikut (kutipan dari halaman web):


Setelah mengatur white balance, UFRaw menginterpolasi pola Bayer.

  • Interpolasi AHD adalah interpolasi yang diarahkan ke Homogenitas Adaptif. Ini adalah interpolasi default.
  • Interpolasi VNG menggunakan interpolasi Number Variabel Gradien berbasis ambang batas. Ini dulunya adalah interpolasi default dan masih sangat bagus .
  • Interpolasi empat warna VNG harus digunakan jika Anda mendapatkan artefak pola Bayer di foto Anda (lihat FAQ DCRaw untuk detail lebih lanjut).
  • Interpolasi PPG adalah singkatan dari Interpolasi Pengelompokan Piksel Berpola. Ini hampir sama baiknya dengan semua hal di atas dan jauh lebih cepat.
  • Interpolasi bilinear adalah interpolasi yang sangat dasar tetapi jauh lebih cepat.

Ini bisa memberikan beberapa bahan untuk bereksperimen. Omong-omong, UFRaw nampaknya Open source, yang memungkinkan Anda mengintip algoritme itu sendiri.

Francesco
sumber
0

Dalam astrofotografi, topik ini diselidiki secara mendalam, karena ketika menggunakan sensor warna satu-shot, ada banyak resolusi yang hilang oleh debayering. Pada terbalik, menggunakan file RAW masih mendapatkan akses ke data asli dan dapat diproses sebelum aplikasi warna. Topik ini sangat terkait dengan sisi perangkat lunak.

Singkatnya, jika Anda memiliki akses ke banyak gambar dengan data subjek yang sama (yang merupakan sesuatu yang dilakukan untuk mengurangi kebisingan sensor), Anda dapat menukar konversi frame tunggal dengan AHD untuk pendekatan gerimis yang dapat memulihkan resolusi yang hilang. Pilihannya tergantung pada jenis sumber data yang Anda miliki. Sebagian besar fotografer hanya memiliki satu gambar untuk digunakan.

Beberapa perangkat lunak yang saya gunakan dengan pilihan untuk proses Debayering adalah: Deep Sky Stacker dan Pix Insight. Ada juga yang lain. Banyak yang didasarkan pada DCRAW .

Berikut tautan untuk artikel di halaman Deep Sky Stacker tempat mereka membahas beberapa opsi: Pilihan Debayering

smigol
sumber
1
Ini menarik (terima kasih!) Tetapi saya tidak berpikir itu menjawab pertanyaan. Tautan terakhir itu tampaknya menjanjikan tetapi berfokus pada alternatif untuk demositasi sama sekali. Pada topik yang dibahas, hanya tertulis "Banyak metode interpolasi berbeda yang tersedia menghasilkan hasil yang buruk hingga baik (linier, gradien ...) tetapi semuanya menurunkan kualitas gambar akhir dengan menebak seperti apa warna yang hilang. " Tapi itu tidak masuk lebih jauh ke dalam rincian praktis.
mattdm