Questions tagged «monte-carlo»


3
俄罗斯轮盘真的是答案吗?
我已经看到,在“路径跟踪”的某些实现中,一种名为“俄罗斯轮盘赌”的方法用于剔除某些路径并在其他路径之间共享它们的作用。 我知道,与其遵循一条路径直到其下降到某个贡献阈值以下,然后放弃它,而是使用一个不同的阈值,并且贡献小于该阈值的路径仅以很小的概率终止。其他路径的贡献增加了相应于共享来自终止路径的损耗能量的量。我不清楚这是否是为了纠正该技术带来的偏差,还是整个技术本身是否需要避免偏差。 俄罗斯轮盘赌给出公正的结果吗? 是否需要俄罗斯轮盘才能获得公正的结果? 也就是说,使用很小的阈值并在路径下降到该阈值以下时立即终止路径会产生更大的偏差还是更少的偏差? 给定任意数量的样本,两种方法都将收敛于无偏的结果图像上吗? 我想了解使用俄罗斯轮盘赌方法的根本原因。速度或质量上有明显差异吗? 我知道能量会在其他射线中重新分配,以保持总能量。但是,如果光线在下降到固定阈值以下时终止,而不是在达到该阈值后具有随机确定的寿命,则是否仍不能进行这种重新分配? 相反,如果最终由于终止光线而不重新分配能量而损失的能量最终仍然丢失了(因为最终将重新分配光线的能量也终止了),这如何改善这种情况?

2
相关样本如何影响Monte Carlo渲染器的行为?
大多数有关蒙特卡洛渲染方法的描述(例如路径跟踪或双向路径跟踪)都假定样本是独立生成的;也就是说,使用标准随机数生成器来生成独立,均匀分布的数字流。 我们知道,在噪声方面,并非独立选择的样本可能会有所帮助。例如,分层采样和低差异序列是相关采样方案的两个示例,它们几乎总是可以改善渲染时间。 但是,在许多情况下,样本相关性的影响并不那么明确。例如,马尔可夫链蒙特卡罗方法(例如Metropolis Light Transport)使用马尔可夫链生成相关样本流。多光方法将一小束光路重用于许多相机路径,从而创建许多相关的阴影连接;甚至光子贴图也可以通过重用许多像素之间的光路来提高效率,同时还可以提高样本相关性(尽管有偏见)。 所有这些渲染方法在某些场景中都可以证明是有益的,但在其他场景中似乎会使情况变得更糟。除了用不同的渲染算法渲染场景并盯着一个外观是否比另一个外观好外,尚不清楚如何量化这些技术引入的错误质量。 所以问题是:样本相关性如何影响Monte Carlo估计量的方差和收敛性?我们能否以数学方式量化哪种样本相关性比其他样本更好?还有其他考虑因素可能会影响样本相关性是有益还是有害(例如,感知错误,动画闪烁)?

2
如何建立合适的镜头/相机物镜模型进行路径追踪?
在对smallpt进行学习和试验之后,我写了一个小路径跟踪器。 我自己没有写(也不理解)的唯一一件事就是如何计算初始光线并从相机发射它们。我的原则是正确的,但是我正在寻找一些资源来描述如何: 计算射线的初始方向 模拟一个真实的镜头(与针孔相机相反),据说可以实现像景深这样的效果? 不需要最先进的数学和物理学,但如果进行了详尽的解释,则可以。

1
在计算间接光的贡献时,余弦加权半球采样是否仍需要NdotL?
从均匀的半球采样转换为余弦加权半球采样时,我在一篇文章中感到困惑。 我目前的间接贡献计算如下: Vec3 RayDir = UniformGenerator.Next() Color3 indirectDiffuse = Normal.dot(RayDir) * castRay(Origin, RayDir) 点积为cos(θ) 但是在这篇有关更好采样的文章(http://www.rorydriscoll.com/2009/01/07/better-sampling/)中,作者建议PDF为(cos(θ)/ pi),并且没有证据表明N点L的计算。 我的问题是-这是否意味着我不再需要执行常规的点rayDirection,因为它已包含在PDF中,还是除pdf之外?

1
完全蒙特卡洛体积散射
我想将完整的蒙特卡罗体积散射添加到我的路径追踪器中,但是我在研究如何做到这一点上很难。让我解释一下我想做的事情: 射线进入材料,然后应用BTDF,然后经过一定距离,发生体积散射事件,此后(在各向同性的情况下),射线沿散射方向向任意方向散射。球。重复此过程,直到射线与另一个BTDF一起离开材料为止。 我的问题如下: 如何选择分散事件之间的距离?直觉告诉我应该有某种散布pdf,它给出一定距离后散布的可能性吗? 这是正确的吗? pdf是各向同性材料的线性函数吗? 此功能是否有名称或我可以使用Google的名称? Beer-Lambert还会在分散事件之间应用吗? 我不会。由于Beer-Lambert是实际散射计算的简化。 再说一次,也许Beer-Lambert是一个微观尺度的计算,而路径追踪则是一个宏观尺度。 相当于BSDF的体积是多少?看起来我可以使用诸如Henyey-Greenstein之类的相位函数来确定新方向,但是如何使用衰减呢? 最后,对于蒙特卡洛体积散射,有哪些更好的Google短语? 搜索体积散射或SSS,最终会给出有关完整蒙特卡罗模拟(偶极子,散射,入散射,出散射,扩散等)的简化的论文,方法和博客文章。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.