论文阅读:Optimally Combining Sampling Techniques for Monte Carlo Rendering —— 一文读懂MIS
论文阅读:Optimally Combining Sampling Techniques for Monte Carlo Rendering中文翻译大概叫“对蒙特卡洛渲染中复合采样技术的优化”,从源头说起,一文搞懂mis(multiple importance sampling)多重重要性采样是什么为什么怎么样,以及为什么glsl-pathtracer要对反射方向以及光源都采样一次。
介绍渲染就是积分,积分很多都用MC(蒙特卡罗方法),但是MC的缺点就是因为他是基于概率估计,估计结果会有方差,具体体现在图像上就是噪声。
因为计算机图形学中的积分函数往往是病态的,所以我们经常需要不止一种采样策略来让我们的方差变小。
因此,这里需要解决的问题就是——我有很多种采样方法,如何调整每种采样方法的权重,来使最终的计算方差最小。“我们方法的意义不在于我们可以采用几种糟糕的采样技术并从中炮制出一种好的技术,而是我们可以采用几种可能好的技术并将它们结合起来,以便保留每种技术的优势”
第二部分,我们回顾了用于渲染的 MC 集成的基础知识,并给出了一个例子来激发我们的方差减少框架。
第三部分解释了我们关于 ...
读 BI-DIRECTIONAL PATH TRACING 论文
BI-DIRECTIONAL PATH TRACING 双向路径追踪图形学研究进展需要复现一篇SIGGRAPH,遂找了一篇网上还没代码的论文。这里学习一下其基础:双向路径追踪。
Abstract在本文中,我们提出了一种新的蒙特卡罗渲染算法,该算法无缝集成了拍摄和采集能力,以创建真实感图像。该算法可以被解释为众所周知的路径跟踪算法的推广。测试结果表明,它在间接照明很重要的典型室内场景中表现得更好。
Introduction作者提出了一种新的蒙特卡洛算法来将光源和眼睛顶点放在相同的基础上处理,此之谓双向路径追踪。
后面提到了一篇多pass的渲染论文,问了下chatgpt:
《A progressive multi-pass method for global illumination》是一篇关于全局照明的论文。该论文提出了一种渐进式多通道方法,用于解决全局照明中的光照计算问题。
该方法基于迭代的思想,通过多次迭代来逐步优化全局照明的计算结果。具体来说,该方法分为多个通道,每个通道都对应着一种光照计算模型,例如光线跟踪、辐射度传输、环境光照等。在每个通道中,该方法会使用之前通道的计算结果作 ...
读 Hierarchical Russian Roulette for Vertex Connections 论文
读 Hierarchical Russian Roulette for Vertex Connections 论文Abstract虽然双向路径追踪是一种成熟的光传输算法,但需要许多样本才能获得specular-diffuse-glossy或者glossy-diffuse-glossy的高质量结果,尤其是当它们具有高光泽时。为了提高这种光路配置的效率,我们提出了一种用于顶点连接的分层俄罗斯轮盘赌技术。
我们的技术根据许多缓存的光子路径顶点的眼睛子路径顶点处的近似散射波瓣,加速了大量的俄罗斯轮盘赌操作。我们的方法通过引入以自上而下的方式分配随机数的分层拒绝算法,显着减少了俄罗斯轮盘赌所需的随机数生成次数。为了有效地拒绝每个层次结构中的光顶点,我们还引入了用于俄罗斯轮盘赌概率的各向异性散射波瓣的有效近似。我们的技术很容易集成到一些现有的基于双向路径跟踪的算法中,这些算法缓存光子路径顶点(例如,概率连接、顶点连接和合并)。此外,与现有的多光方法不同,由于俄罗斯轮盘赌的简单性,我们的方法不限制多重重要性采样策略。尽管所提出的技术不支持完美的镜面反射表面,但它显着提高了以无偏差方式在极其光滑的表面 ...
读 On the Spectral Bias of Neural Networks
On the Spectral Bias of Neural Networks 关于神经网络的谱偏差
读 NeRF 论文
读 NeRF 论文摘要:之前是只听说过,然后简单了解了机理,没真正读过NeRF。这次来读一下,就是先翻译,然后记下来。肯定有疏漏,或许有不对的地方,不过对我够用了。我把直接翻译出来的用黑体表示, 把和具体实现相关的用斜体表示,我能看懂的拿我理解的话说出来。
NeRF全程叫 Representing Scences as Neural Radiance Fields for View Synthesis。字面意思大概是:对于视角合成问题,将场景描述为神经辐射场。
就是说,发明了一种方法,具体就是说,用一系列稀疏的视图集合,还原出场景的新视图。(注意到这里说的不是还原出整个场景)。
算法使用全连接(特意强调了一下不用卷积)深度神经网络表达一个场景,输入是五维坐标,输出是“the volume density and view-dependent emitted radiance at that spatial location”,在空间位置的体积密度以及依赖于视角的发射的radiance。
如何用我们的刚才说的算法合成这个场景的新视角视图呢:论文中说的是,沿着相机射线查询5D坐标(相机位置 ...
Physics-Based Ray Tracing
Physics-Based Ray TracingRay-Triangle Intersection有很多关于光线和三角形求交的算法,这里学习一下包含三角形的参数平面重心坐标算法,因为它不包含除了三角形顶点的长期存储。
为了将一个光线和参数平面求交,我们设置了一个笛卡尔坐标方程组:
等号左边是光线经过了多少t和三角形相交,右边是光线和三角形交点坐标在三角形参数平面上的uv坐标。
在参数平面上,所有点都是abc三个点的线性组合,也就是说:
其中beta和gamma需要当且仅当$\beta>0,\ \gamma>0,\ \beta+\gamma<1$时,交点才在三角形上。从上面的方程可以得到关于t,beta,gamma的方程组:
易转换为线性系统:
经典的算法是用克拉默法则(Cramer’s Rule)嗯算。这里貌似也只讲了克拉默法则嗯算,算出t,beta和gamma。
最后程序的结果是这样
不过为啥我看的shader里面的求交算的比这个麻烦很多,因为涉及到很多数值计算上的细节。
读 Relighting Humans 论文
读 Relighting Humans 论文[TOC]
基本思想记下来。不然时间长又忘了。
首先说一下这篇论文想解决的问题:现有relight方法对于阴影遮挡这部分的无力。
之前的方法都是使用球谐函数直接照明而忽略了遮挡问题,导致一些比如说腋窝等部位异常明亮。但实际上这些部位由于大部分被自身遮挡,不应该出现过多的明亮现象。
实际上不是之前的人不想解决这个问题,而是考虑这个问题之后会使计算变得很复杂。回顾 irradiance 的方程:$$E(\textbf{n})=\int_{\Omega(\textbf{n})}L(\omega_i)V(\omega_i)max(\textbf{n}\cdot \omega_i, 0)\mathrm{d}\omega_i$$对于一个shading point,这里面,n是其单位法向量,omega指的是方向角,L就是对应角度传来的radiance,后面的点乘表示的是一个余弦衰减系数。V是visibility项,表示这个方向是否被遮挡。对于每个shading point来讲,如果不考虑V term,计算相对容易。实际上用prt加上V term,这个计算也 ...
GAMES202 10 Real-time Physically-based Materials (surface models)
Lecture 10 Real-time Physically-based Materials (surface models)PBR and PBR Materials 基于物理渲染的材质PBR = Physically-Based Rendering 基于物理的渲染
任何渲染都可以是基于物理
材质、光照、相机、光线传播等等
不只是限制在材质范围内,但是指的往往是材质
在RTR中的PBR材质
RTR中使用的材质要远少于在offline中的材质
RTR中说是基于物理的,但实际上并不是基于物理
分两类,基本上和离线渲染差不多,但是更多着眼于技巧来提升速度
表面材质(微表面模型、迪士尼原则BRDFs Hyperion)
对体积(非表面模型)来说,头发、云、皮肤等,大多都是着眼于快速和近似的方法实现单散射和多次散射
这里复习了一下材质的BRDF,这里面包含:
菲涅尔项
NDF 法线分布函数,有很多类
Beckmann NDF 形式上很像高斯正态分布,各向同性的结果(也能异性),其中 $\alpha$表示粗糙程度,$\theta_h$表示入射与出射角的半矢量h与法线的夹角。
G ...
Fundamentals of Computer Graphics
Fundamentals of Computer Graphics 1Contents 目录
Introduction 简介
Miscellaneous Math 各种数学
Raster Image 光栅图像
Ray Tracing 光线追踪
Surface Shading 表面着色
Linear Algebra 线性代数
Transformation Matrices 矩阵转换
Viewing 视图
The Graphics Pipeline 图形管线
Signal Processing 信号处理
Texture Mapping 纹理映射
Data Structures for Graphics 图形学数据结构
Sampling 采样
Physics-Based Rendering 基于物理的渲染
Curves 曲线
Computer Animation 计算机动画
Using Graphics Hardware 使用图形学硬件
Color 颜色
Visual Perception 视觉感知
Tone Reproduction 色调再现
Implicit Modeling 隐式模型
...
GAMES202 9 Real-time Global Illumination 3 (screen space cont.)
Screen Space Directional Occlusion (SSDO)What is SSDO?
SSAO加强版,考虑了间接光照
Key Idea
和Path Tracing很像
在shading point,随即发射射线,如果没有照射到障碍物,就是直接光照(AO认为是间接光照)
如果照射到障碍物,就是间接光照(AO认为是没有光照)
实际使用:
从shading point出射一个半球,选一系列采样点。
用采样点从camera的可见性来近似为从p的可见性
如果采样点被挡住,就是算间接光照;否则取直接光照
问题:
只能应对小范围的GI,不能得到远距离的间接光照
从screen space研究,肯定会丢失相关信息
Screen Space Reflection (SSR)What is SSR?
实时渲染中的一种引入全局光照的方法
使用了光线追踪
仍在Screen Space中研究问题
怎么做?
Shade Sence + Nromal Vector + Depth -> SSR
先求交点:intersection
使用Linear Ray ...