Yol izleme için iyi bir lens / kamera objektif modeli nasıl oluşturulur?


13

Smallpt üzerinde öğrendikten ve deney yaptıktan sonra küçük bir yol izleyici yazdım .

Kendimi yazmadığım (ve anlamadığım) tek şey, ilk ışınların kameradan nasıl hesaplandığı ve işlendiği. İlkeyi doğru anladım, ancak nasıl yapılacağını açıklayan bazı kaynaklar arıyorum:

  • Işınların başlangıç ​​yönünü hesaplama
  • Alan derinliği gibi efektlere izin veren gerçek bir lensi (iğne deliği kamerasının aksine) modelleyin?

Son teknoloji matematik ve fizik gerekli değildir, ancak iyice açıklanırsa sorun olmaz.

Yanıtlar:


13

Bir iğne deliği kamera modelinden sonraki adım yukarı bir olduğunu ince mercek biz sonsuz ince disk olarak lens modeli modeli. Bu hala gerçek bir kamera modellemekten çok uzak bir idealizasyon, ancak size temel alan efektleri derinliği verecektir.

İnce lens modeli

Yukarıdaki görüntü, panohelp.com'dan , temel fikri göstermektedir. Görüntüdeki her nokta için, 2B lens yüzeyindeki her noktadan o görüntü noktasına gelen birden fazla ışın vardır. Bu nedenle, Monte Carlo kullanarak böyle bir görüntü oluşturmak için, her bir ışın için, hem görüntü düzlemindeki bir 2D örnek noktasının hem de lens yüzeyinde bağımsız bir 2D örnek noktasının toplanması gerekecektir.

Ayarlanacak kullanıcıya bakan parametreler, odak aralığının ne kadar sığ olduğunu (daha büyük lens = sığ odak aralığı) ve nesnelerin içinde olmasını istediğiniz mesafeyi kontrol eden lens yarıçapı (sahne birimlerinde fiziksel bir yarıçap olarak) olacaktır. odaklanır.

Sahneye göz ışınları oluşturmak için lens yüzeyinden çıkan ışınların konumunu ve yönünü hesaplayabilirsiniz; bu modelde, görüntü düzlemini ve merceğin kırılmasını açıkça simüle etmeye gerek yoktur. Temel olarak, lensi kamera konumunda ortalanmış ve kamera yönüne bakacak şekilde düşünün.

Görüntü konumuna göre, iğne deliği modelinde olduğu gibi kamera konumundan (lens merkezi) sahneye bir ışın oluşturun; sonra odak düzlemi ile kesişim noktasını bulun. Bu görüntü konumundan gelen tüm ışınların birleştiği yer. Şimdi ışının başlangıç ​​noktasını mercek üzerinde rastgele seçilen bir noktaya kaydırabilir ve yönünü yakınsama noktasına doğru ayarlayabilirsiniz.

Odak düzleminin bir düzlemden başka bir şey olmasına veya lensin dairesel bir diskten başka bir şey olmasına izin vererek ve aynı işlemi takip ederek bunu biraz genelleştirebilirsiniz. Bu, oldukça fiziksel değilse bile bazı ilginç etkiler üretebilir. Bu basit modelin ötesine, bir kameranın lens elemanlarının fiziksel olarak daha gerçekçi bir simülasyonu ile gitmek de mümkündür - ama bu benim uzmanlığımın ötesinde.


4

Kolb ve diğerleri, Bilgisayar Grafikleri için Gerçekçi Kamera Modeli , SIGGRAPH 95'e bakınız.

Ancak, gerçek dünya kameralarını taklit eden kamera modellerinin, oluşturma aşaması için istediğiniz şey olmadığını unutmayın. Görsel efektler / post prodüksiyon senaryosunda, kamera modelinin tanıttığı daha fazla bulanıklık / vinyet / bozulma, besteci / renk zamanlayıcısı için o kadar kötü olur. Bunu bir post-pass olarak yapmak genellikle daha iyidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.