Render yang realistis: proses mata dan otak manusia mana yang perlu saya pertimbangkan?

12

Rendering fotorealistik memiliki tujuan rendering gambar sebagai kamera nyata akan menangkapnya. Walaupun ini sudah merupakan tujuan yang ambisius, untuk skenario tertentu Anda mungkin ingin mengambilnya lebih jauh: membuat gambar sebagai mata manusia akan menangkapnya atau bahkan seperti manusia melihatnya. Anda bisa menyebutnya rendering visiorealistic atau perceptiorealistic , tetapi jika ada yang bisa datang dengan istilah catchier (atau mengatakan kepada saya bahwa ada yang sudah ada) saya akan menghargai itu.

Berikut adalah beberapa contoh untuk menjelaskan maksud saya. Saat Anda mengambil gambar dengan kamera pada tingkat pencahayaan rendah, Anda memiliki lensa yang bagus atau mendapatkan gambar yang bising. Untuk seorang pengamat manusia, penglihatan scotopic menendang dan memunculkan efek Purkinje (warna digeser ke arah biru). Efek ini tergantung pada informasi pencahayaan HDR, yang hilang ketika saya menampilkan gambar pada layar LDR. Selain itu, otak manusia dapat menggunakan informasi mendalam untuk 'menyaring' gambar yang dirasakan - informasi yang hilang dalam rendering akhir (non-stereo).

Merakit daftar lengkap mungkin merupakan tujuan yang sulit dipahami. Bisakah Anda menyarankan beberapa efek mata dan otak yang perlu saya pertimbangkan?

David Kuri
sumber
Saya pernah mendengar bahwa kita mendapatkan suara yang sama dari kamera karena suara sebenarnya fisik dan bukan hanya listrik. (yaitu tidak ada foton setelah semua). Tapi otak menghapusnya, menggunakan antialiasing temporal kurasa. (Yaitu kita melihat dengan banyak gerakan kabur di malam hari).
v.oddou
Saya tidak mengerti. Jika Anda membuat gambar dalam cahaya rendah dan mensimulasikan efek Purkinje, itu tidak akan terlihat realistis karena mata manusia akan menambahkan efeknya sendiri, bukan?
Yves Daoust
1
@YvesDaoust Karena gambar ditampilkan pada monitor LDR dalam kondisi pencahayaan yang tidak diketahui, mungkin tidak. Sederhananya, gambar yang Anda lihat di layar akan lebih terang sehingga lebih mudah untuk dilihat. Jika kami menggunakan monitor HDR dan dapat mereproduksi nilai luminance dari pemandangan malam hari secara persis (dan memiliki ruangan yang gelap), Anda benar.
David Kuri
1
Tidak ada yang salah dengan apa yang Anda perjuangkan, tetapi saya khawatir ini tampaknya terlalu luas bagi saya karena ada begitu banyak efek yang perlu kita pertimbangkan. Saya tidak bisa menulis ini dalam format SE, karena memang akan salah. Namun jika Anda menyesuaikan lingkup Anda sedikit seperti "Bisakah Anda menyarankan beberapa efek yang perlu saya pertimbangkan" daripada akan lebih mudah untuk memulai.
joojaa
@ joojaa saya mengubah pertanyaan seperti yang Anda sarankan, terima kasih.
David Kuri

Jawaban:

5

Anda mungkin ingin melangkah lebih jauh: membuat gambar seperti yang akan ditangkap oleh mata manusia atau bahkan seperti yang dirasakan manusia.

Ada dua cara untuk menafsirkan ini. Saya akan melakukan keduanya.


Interpretasi 1: Membuat gambar yang terlihat realistis secara persepsi.

Pada akhirnya, gambar Anda masih perlu ditampilkan di suatu tempat. Inilah kuncinya: Anda ingin merender gambar Anda sedemikian rupa sehingga ketika Anda * menampilkan * gambar itu pada perangkat tampilan tertentu, itu akan menghasilkan sensasi yang sama dengan yang dihasilkan oleh gambar radiometrik asli.

Inilah cara membongkar ide itu.

Di dunia nyata, spektrum radiometrik (yaitu, distribusi cahaya nyata) masuk ke mata Anda dan merangsang sekitar 1 empat reseptor cahaya. Stimulasi reseptor menghasilkan sensasi warna yang kita kaitkan dengan gambar.

Dalam rendering, kami tidak memiliki kendali sewenang-wenang atas spektrum yang kami hasilkan. Untungnya, karena kita (biasanya) hanya memiliki tiga kerucut, yang masing-masing hanya menghasilkan nilai skalar, penglihatan warna dapat direproduksi dengan menggunakan tepat tiga primer. Intinya adalah Anda dapat menghasilkan sensasi warna apa pun dengan menggunakan kombinasi linear dari tiga panjang gelombang saja (hingga beberapa warna yang mungkin harus negatif, dalam hal ini, Anda hanya menggunakan pendahuluan yang berbeda).

Anda tidak punya pilihan pendahuluan. Hampir semua perangkat layar warna menggunakan standar sRGB, yang menyediakan tiga pemilihan pendahuluan (yang sebenarnya biasanya tidak memiliki panjang gelombang tunggal). Tidak apa-apa karena ternyata itu semua abstrak dan Anda tidak perlu peduli.

Untuk memperjelas kekacauan yang rendering akurat perseptual, inilah algoritma:

  1. Jadikan gambar Anda menggunakan perhitungan radiometrik yang benar. Anda melacak panjang gelombang cahaya individu atau ember panjang gelombang. Masa bodo. Pada akhirnya, Anda memiliki gambar yang memiliki representasi spektrum yang diterima di setiap titik.
  2. Pada setiap piksel, Anda mengambil spektrum yang Anda buat, dan mengubahnya menjadi ruang warna CIE XYZ . Ini berhasil mengintegrasikan produk spektrum dengan fungsi pengamat standar (lihat definisi CIE XYZ) .
  3. Ini menghasilkan tiga nilai skalar, yang merupakan warna CIE XYZ.
  4. Gunakan transformasi matriks untuk mengubahnya menjadi RGB linier, lalu dari sana gunakan transformasi linear / daya untuk mengubah RGB linier menjadi sRGB .
  5. Konversi dari floating point ke uint8 dan simpan, jepit nilai di luar jangkauan (monitor Anda tidak dapat mewakili mereka).
  6. Kirim piksel uint8 ke framebuffer.
  7. Layar mengambil warna sRGB, melakukan transformasi terbalik untuk menghasilkan tiga pendahuluan dengan intensitas tertentu. Setiap skala menghasilkan output dari elemen gambar apa pun yang menjadi tanggung jawabnya. Elemen gambar menyala, menghasilkan spektrum. Spektrum ini akan (semoga) menjadi metamer untuk spektrum asli yang Anda buat.
  8. Anda memahami spektrum sebagaimana Anda akan merasakan spektrum yang diberikan.

Interpretasi 2: Mencoba mensimulasikan data akhir yang mungkin diterima mata manusia untuk tujuan visualisasi atau kompensasi untuk tampilan LDR.

Yang ini memiliki arti yang kurang bermanfaat, saya pikir. Pada dasarnya, Anda mencoba menghasilkan gambar yang mengubah cara otak melihatnya untuk kesenangan / keuntungan.

Sebagai contoh, ada sebuah makalah di SIGGRAPH tahun ini di mana mereka mensimulasikan afterimage dan pengurangan warna untuk membuat gambar tampak berbeda secara persepsi. Tentu saja, satu-satunya alasan mereka melakukan ini sama sekali adalah karena display yang kami kerjakan adalah semua low-dynamic range (LDR). Intinya adalah untuk mensimulasikan efek yang mungkin dilihat seseorang jika terpapar dengan tampilan rentang dinamis tinggi nyata (HDR) sebagai data gambar aktual.

Dalam praktiknya, ini ternyata tidak bekerja dengan baik. Untuk afterimages, misalnya, kita melihat afterimages karena stimulus sel-sel warna yang sangat cerah melelahkan. Jika Anda mencoba untuk menstimulasi efek dengan afterimage palsu, mungkin terlihat serupa - tetapi karena ini adalah mekanisme yang sama sekali berbeda, itu tidak terlalu meyakinkan.

Grafik semacam ini sebenarnya kurang dieksplorasi dalam literatur jika Anda ingin mencobanya. Makalah yang disebutkan di atas merupakan contoh pendekatan yang paling banyak atau kurang canggih yang kami miliki. Saya pikir konsensus saat ini, adalah bahwa itu tidak benar-benar layak untuk disimulasikan (setidaknya saat ini), karena paling baik Anda hanya akan mendekati efek penglihatan nyata dengan mengganti yang berbeda, dan bahwa ini tidak benar-benar layak untuk disimulasikan. kerja.


1 batang + 3 * kerucut, kasing biasa. Perkiraan karena manusia mungkin memiliki paling sedikit nol reseptor cahaya fungsional hingga maksimum dugaan tujuh (dengan yang tertinggi yang pernah diamati adalah lima).

Imallett
sumber
Terima kasih atas jawaban anda. Saya menganggap itu tidak lengkap. Pernyataan Anda dari Interpretation 1 "Anda menganggap spektrum seperti yang Anda bayangkan spektrum yang diberikan" bisa dibilang salah. Ketika memahami spektrum nyata, efek menghasilkan yang tidak ketika menggunakan konversi yang Anda gambarkan (misalnya, Anda harus menggunakan pengamat standar scotopic dalam kondisi pencahayaan rendah, seperti yang disebutkan dalam Jameson, Hurvich: Visual Psychophysics). Apa yang Anda gambarkan adalah ide rendering spektral. Interpretasi 2 adalah apa yang ingin saya pelajari lebih lanjut. Makalah ini akan menjadi awal yang baik, terima kasih untuk itu.
David Kuri
4

Ketika datang ke persepsi, ada juga masalah tentang apa yang kita hampir buta (dalam hal properti atau artefak), dan apa yang telah kita paksa persepsi.

Misalnya untuk suara, Anda memiliki kontras atau frekuensi yang membuat Anda kurang atau tidak menyadari konten lain (kertas SIGGRAPH lama menggambarkan bagaimana tekstur dapat menutupi resolusi mesh), ditambah semua aspek waktu (google for "change blindness"). Demikian pula, rincian permukaan, normal, BRDF mungkin atau mungkin tidak terlihat tergantung dari nilai dan nilai relatif.

Juga karena sistem perseptif kami cenderung beradaptasi secara lokal dan global, untuk nilai frekuensi rendah penting untuk memiliki maxima dan minima di tempat yang tepat, tetapi nilai pastinya tidak akan diperhatikan.

Kadang-kadang kognisi mungkin ada di sana, seperti Anda membiarkan banyak kesalahan di awan dan pohon tetapi pasti kurang di wajah manusia. (Terkadang Anda mungkin menurunkan versi ini ke statistik parameter untuk kategori tertentu.)

Itu sebabnya saya lebih suka menggunakan kata "masuk akal" daripada "fotorealistik".

Sebaliknya, kami sangat peka terhadap artefak seperti piksel palsu atau piksel yang berkedip-kedip, sangat peka terhadap korelasi seperti bagian depan kesalahan hanya 1 tingkat abu-abu, pola yang tidak diinginkan seperti Moiré, aliasing atau buruk acak, dll.

Ngomong-ngomong itu adalah salah satu alasan bahwa solusi berbasis optimasi menjumlahkan segala sesuatu dalam energi sederhana bisa menjadi ide yang sangat buruk secara perseptif karena dalam semua situasi paradoksal ini dapat rentan terhadap konsentrasi kesalahan dalam garis atau titik. Untuk alasan yang sama iluminasi global awal orang benar-benar kecewa bahwa solusi tepat energi kurang diterima daripada bayangan perkiraan anti-alias (dan kemudian datang dari quad-tree berdasarkan metode adaptif berbasis mesh).

Tinjauan (cukup umum) tentang persepsi untuk grafik dapat ditemukan dalam kursus SigAsia'11 ini pada "Persepsi dalam Grafik, Visualisasi, Lingkungan Virtual dan Animasi"

Fabrice NEYRET
sumber