Pentingnya Sampling Peta Lingkungan

14

Apa yang paling dikenal saat ini dan idealnya juga pendekatan yang diverifikasi-produksi untuk peta lingkungan pengambilan sampel (EM) dalam pelacak jalur satu arah berbasis MIS dan jenis penyaji serupa? Saya lebih suka solusi yang cukup rumit sementara cukup fungsional untuk mereka yang memberikan sampel sempurna dengan biaya implementasi super rumit dan sulit dipahami.

Apa yang saya ketahui sejauh ini

Ada beberapa cara mudah untuk mengambil sampel EM. Seseorang dapat mencicipi belahan bumi yang dibutuhkan dengan cara berbobot kosinus, yang mengabaikan bentuk fungsi BSDF dan EM. Akibatnya, itu tidak berfungsi untuk EM dinamis:

masukkan deskripsi gambar di sini

Untuk meningkatkan pengambilan sampel ke tingkat yang dapat digunakan, seseorang dapat mengambil sampel luminance EM di seluruh bola. Ini relatif mudah diimplementasikan dan hasilnya cukup baik. Namun, strategi pengambilan sampel masih mengabaikan informasi visibilitas hemispherical dan faktor cosinus (dan juga BSDF), yang menghasilkan kebisingan tinggi pada permukaan yang tidak secara langsung menyala oleh area intensitas tinggi EM:

masukkan deskripsi gambar di sini

Dokumen

Saya telah menemukan beberapa makalah tentang topik ini, tetapi belum membacanya. Apakah ada di antara ini yang layak dibaca dan diimplementasikan dalam pelacak jalur uni-directional maju, atau ada sesuatu yang lebih baik?

  • Pengambilan Sampel Penting Penting untuk Peta Lingkungan (2003) oleh Agarwal et al.

  • Steerable Importance Sampling (2007) oleh Kartic Subr dan Jim Arvo. Mereka mengklaim menghadirkan “... sebuah algoritma untuk pengambilan sampel penting yang bertingkat secara efisien dari peta lingkungan yang menghasilkan sampel dalam hemisfer positif yang ditentukan oleh orientasi lokal permukaan acak sembari menghitung bobot cosinus. “Makalah“ Importance Sampling Spherical Harmonics ”mengomentarinya:“ Mereka membuat representasi triangulasi dari peta lingkungan dan menyimpan iluminasi yang di-prapultipulasikan oleh masing-masing dari sembilan fungsi dasar harmonik bola pertama di setiap titik. Ini membentuk dasar yang bisa dikendalikan dimana clamped-cosinus dapat diputar secara efisien ke setiap orientasi. ”

  • Sampling Kepentingan Produk Praktis untuk Penerangan Langsung (2008) oleh Petrik Clarberg dan Tomas Akenine-Möller. Algoritma untuk pengambilan sampel produk pencahayaan peta lingkungan dan reflektansi permukaan. Menggunakan sampling penting berbasis wavelet.

  • Importance Sampling Spherical Harmonics (2009) oleh Jarosz, Carr, dan Jensenn. Abstrak mengatakan: "... kami menyajikan metode praktis pertama untuk fungsi pengambilan sampel kepentingan yang direpresentasikan sebagai harmonik bola (SH) ..."

  • Sampling Peta Lingkungan Berbasis Pemetaan Mean-shift (2015) oleh Feng et al. Ini cukup baru dan saya tidak menemukan referensi untuk itu atau kertas itu sendiri.

ivokabel
sumber
Saya mempunyai satu pertanyaan. Apakah gambar kedua dihasilkan hanya dengan mengambil sampel EM? Atau apakah itu MISed versi pengambilan sampel kosinus dan pengambilan sampel EM? Saya benar-benar berharap bahwa ini adalah versi MISed, karena jika demikian, maka saya mungkin memiliki obat untuk kebisingan tinggi di bagian bayangan.
tom
Tidak @tom, hanya menggunakan pengambilan sampel EM sperical, mengabaikan BRDF (Lambert) dan faktor kosinus. 64 sampel digunakan dan tidak ada penyaringan ruang gambar yang diterapkan, hanya rata-rata di atas area piksel. Ketika MIS diterapkan untuk menggabungkan pengambilan sampel EM dengan pengambilan sampel cosinus, kebisingan dalam bayangan berkurang banyak, tetapi sedikit meningkat pada bagian yang diterangi matahari.
ivokabel

Jawaban:

6

Ini bukan jawaban yang lengkap, saya hanya ingin berbagi pengetahuan yang saya peroleh dengan mempelajari dua makalah yang disebutkan dalam pertanyaan: Pengambilan Sampel Kepentingan Steerable dan Pengambilan Kepentingan Produk Praktis untuk Penerangan Langsung .

Pengambilan Sampel Pentingnya Steerable

Dalam makalah ini mereka mengusulkan metode untuk pengambilan sampel produk komponen cosine yang dijepit dan pencahayaan peta lingkungan:

LEM(ωi)(ωin)+

Mereka menggunakan fakta bahwa pendekatan linier sepotong-fungsi fungsi produk dapat diekspresikan relatif baik dan sebagian dihitung menggunakan sembilan basis harmonik bola pertama. Mereka membangun perkiraan ini di atas EM triangulasi yang adaptif dan menggunakannya sebagai fungsi penting untuk pengambilan sampel.

Mereka pra-menghitung dan menyimpan koefisien aproksimasi untuk setiap sudut segitiga dan juga koefisien untuk perhitungan integral aproksimasi atas segitiga untuk setiap segitiga. Koefisien ini disebut bobot titik dan segitiga. Kemudian mereka menggunakan fakta bahwa adalah mungkin untuk dengan mudah menghitung koefisien untuk integral atas seperangkat segitiga hanya dengan menjumlahkan bobot segitiga individu tanpa memasukkan basis harmonik bola tambahan. Hal ini memungkinkan mereka untuk membangun pohon biner seimbang di atas segitiga di mana setiap node berisi koefisien untuk menghitung perkiraan integral atas segitiga sub-pohon node.

Prosedur pengambilan sampel terdiri dari pemilihan segitiga dan pengambilan sampel wilayahnya:

  • Segitiga dipilih dengan menurunkan pohon biner pra-dibangun dengan probabilitas sebanding dengan pendekatan sub-integral. Ini biaya O ( log N ) on-the-fly perhitungan sub-integral, masing-masing terdiri dari satu produk dalam dari koordinat harmonik bola klem-kosinus dengan koefisien yang telah dihitung sebelumnya. O(logN)
  • Permukaan segitiga yang dipilih kemudian disampling dalam waktu secara bi-linear dengan strategi stratified sampling yang diusulkan dalam makalah ini.O(1)

Bagi saya, ini terlihat seperti teknik yang menjanjikan , tetapi pertanyaan klasik dengan makalah adalah bagaimana hal itu akan berperilaku dalam kehidupan nyata. Di satu sisi, mungkin ada kasus patologis ketika EM sulit diperkirakan dengan fungsi linear sepotong-bijaksana, yang dapat menyebabkan sejumlah besar segitiga dan / atau kualitas sampel yang buruk. Di sisi lain, ini dapat secara instan memberikan perkiraan yang relatif baik dari keseluruhan kontribusi EM, yang dapat berguna ketika mengambil sampel beberapa sumber cahaya.

Pengambilan Sampel Penting Produk Praktis untuk Penerangan Langsung

Dalam makalah ini mereka mengusulkan metode untuk pengambilan sampel produk pencahayaan peta lingkungan dan reflektansi permukaan berbobot kosinus:

LEM(ωi)fr(ωi,ωo,n)(ωin)+

Satu-satunya pra-pemrosesan dalam metode ini adalah perhitungan representasi hierarkis dari EM (baik berbasis mipmap atau wavelet). Sisanya dilakukan dengan cepat selama pengambilan sampel.

Prosedur pengambilan sampel:

  • Membangun perkiraan BRDF sambil jalan: Pertama-tama mereka menggambar beberapa sampel penting BRDF dan mengevaluasi . Dari nilai-nilai ini mereka membangun pendekatan konstan sepotong-bijaksana berbasis BRDF, di mana setiap daun pohon mengandung tepat satu sampel.fr(ωi,ωo,n)(ωin)+
  • Menghitung produk perkiraan BRDF dan EM: Perkalian dilakukan di daun quadtree BRDF dan nilai rata-rata disebarkan ke orang tua.
  • Pengambilan sampel produk: sampel seragam diumpankan melalui pohon produk menggunakan warping sampel sederhana.

Prosedur harus menghasilkan sampel yang relatif baik dengan biaya pra-perhitungan yang berat - mereka menunjukkan bahwa sekitar 100-200 sampel BRDF diperlukan untuk perkiraan BRDF untuk mencapai kinerja pengambilan sampel terbaik. Ini mungkin membuatnya cocok untuk perhitungan iluminasi langsung murni, di mana seseorang menghasilkan banyak sampel per titik naungan, tetapi kemungkinan besar terlalu mahal untuk algoritma penerangan global (misalnya pelacak jalur uni atau bi-directional), di mana Anda biasanya hanya menghasilkan sedikit sampel per titik naungan.

ivokabel
sumber
4

Penafian: Saya tidak tahu bagaimana keadaan seni dalam pengambilan sampel peta lingkungan. Faktanya, saya hanya memiliki sedikit pengetahuan tentang topik ini. Jadi ini bukan jawaban yang lengkap tetapi saya akan merumuskan masalah secara matematis dan menganalisisnya. Saya melakukan ini terutama untuk diri saya sendiri, jadi saya membuatnya jelas untuk diri saya sendiri tetapi saya berharap OP dan yang lain akan merasakan manfaatnya.


I=S2f(ωi,ωo,n)L(ωi)(ωin)+dωi
f(ωi,ωo,n)L(ωi)(ωin)++(ωin)+=0(ωin)<0

Nωi1,,ωiNp(ωi)

I1Nk=1Nf(ωik,ωo,n)L(ωik)(ωikn)+p(ωik)

p


Terbaikp

p(ωi)f(ωi,ωo,n)L(ωi)(ωin)+

Metode yang disarankan oleh OP:

p

p(ωi)(ωin)+
p
p(ωi)L(ωi)

Berdasarkan nama-nama makalah yang disebutkan, saya sebagian dapat menebak apa yang mereka lakukan (sayangnya saya tidak punya waktu dan energi untuk membacanya sekarang). Tetapi sebelum membahas apa yang paling mungkin mereka lakukan, mari kita bicara sedikit tentang seri daya: D


f(x)

f(x)=k=0akxk
akfn
f(x)k=0nakxk
n cukup tinggi maka kesalahannya sangat kecil.

f(x,y)

f(x,y)=k=0bk(y)xk
bk(y)y
f(x,y)=k,l=0cklxkyl
ckl

f(ω)

f(ω)=k=0αkSk(ω)
αkSk(ω)f dapat ditulis sebagai jumlah dari beberapa fungsi yang diketahui.

f(ω,ω)

f(ω,ω)=k=0βk(ω)Sk(ω)
f(ω,ω)=k,l=0γklSk(ω)Sl(ω)

Jadi bagaimana ini semua berguna?

Saya mengusulkan

f(ωi,ωo,n)=k,l,m=0αklmSk(ωi)Sl(ωo)Sm(n)L(ωi)=n=0βnSn(ω)(ωin)+=p,q=0γpqSp(ωi)Sq(n)
I=k,l,m,n,p,q=0αklmβnγpqSl(ωo)Sm(n)Sq(n)S2Sk(ωi)Sn(ω)Sp(ωi)dωi

S2Sk(ωi)Sn(ω)Sp(ωi)dωi beforehand and then evaluate the sum(actually approximate the sum, we would sum only first few terms) and we get desired result.

This is all nice but we might not know the expansions of BSDF or environmental map or the expansions converge very slowly therefore we would have to take a lots of terms in the sum to get reasonably accurate answer.


So the idea is not to expand in all arguments. One method which might be worth investigating would be to ignore BSDF and expand only the environmental map i.e.

L(ωi)n=0KβnSn(ωi)
this would lead to pdf:
p(ωi)n=0KβnSn(ωi)(ωn)+

Kita sudah tahu bagaimana melakukan ini K=0, ini tidak lain adalah metode satu . Dugaan saya, ini dilakukan di salah satu surat kabar untuk yang lebih tinggiK.


Ekstensi selanjutnya. Anda dapat memperluas berbagai fungsi dalam berbagai argumen dan melakukan hal serupa seperti di atas. Hal lain adalah, bahwa Anda dapat memperluas basis yang berbeda, yaitu tidak menggunakan harmonik bola tetapi fungsi yang berbeda.

Jadi ini adalah pendapat saya tentang topik ini, saya harap Anda telah menemukannya setidaknya sedikit berguna dan sekarang saya akan pergi ke GoT dan tidur.

tom
sumber
Haha, ketika saya memposting jawabannya, SE bertanya kepada saya apakah saya manusia atau robot, situs itu tidak yakin: DI saya berharap itu bukan karena panjangnya jawaban, itu mendapat sedikit di luar kendali.
tom
Anda ingin membuat otak saya meleleh, bukan? ;-) BTW: Saya sudah berhasil membaca dua makalah / presentasi jadi saya mudah-mudahan akan memperpanjang pertanyaan atau menulis jawaban yang dangkal di akhir minggu ini. Dan sekarang, GoT FTW!
ivokabel
0

Sementara metode pengambilan sampel produk memberikan distribusi yang lebih baik (sempurna) untuk sinar, saya akan mengatakan bahwa menggunakan MIS (multiple importance sampling) adalah metode yang diverifikasi dalam produksi. Karena informasi bayangan adalah pengambilan sampel produk yang tidak diketahui tidak menjadi sempurna pula dan itu cukup sulit untuk diterapkan. Menembak lebih banyak sinar mungkin lebih berharga! Tergantung pada situasi dan anggaran ray Anda tentu saja!

Deskripsi singkat MIS: Intinya Anda melacak sinar BSDF (seperti yang Anda lakukan untuk penerangan tidak langsung) dan sinar eksplisit menuju EM. MIS memberi Anda bobot sehingga Anda dapat menggabungkannya dengan cara yang menghilangkan banyak kebisingan. MIS sangat baik dalam memilih "teknik" (pengambilan sampel implisit atau eksplisit) berdasarkan situasi yang muncul. Ini terjadi secara alami tanpa pengguna harus membuat pilihan sulit berdasarkan kekasaran dll.

Bab 9 dari http://graphics.stanford.edu/papers/veach_thesis/ membahas ini secara rinci. Juga lihat https://www.shadertoy.com/view/4sSXWt untuk demo MIS beraksi dengan lampu area.

anders
sumber
Ya, MIS adalah teknik verifikasi produksi yang penting, yang banyak membantu dan saya menerapkannya dalam solusi saya (saya kira, saya seharusnya menyatakannya dengan lebih jelas dalam pertanyaan). Namun, kinerja keseluruhan dari penduga berbasis MIS tergantung pada kualitas strategi pengambilan sampel parsial. Apa yang saya coba lakukan di sini adalah untuk meningkatkan salah satu sub-strategi untuk meningkatkan kinerja keseluruhan estimator. Dalam pengalaman saya, biasanya lebih efisien untuk menggunakan sampel yang kurang berkualitas daripada yang mungkin lebih mahal untuk dihasilkan daripada yang berkualitas rendah yang lebih mudah dihasilkan.
ivokabel