无题
-–
title: 读 SPCBPT: Subspace-based Probabilistic Connections for Bidirectional Path Tracing
date: 2023-07-1 23:06:13
tags: [Graphics,Ray Tracing]
categories: [Fundamentals of Computer Graphics]
cover: https://s2.loli.net/2022/01/04/Ob4VMDHtdYALeTc.jpg
-–
SPCBPT: Subspace-based Probabilistic Connections for Bidirectional Path Tracing
题目:对于双向路径追踪这个领域,基于子空间的概率链接。
第一印象:一种对于双向路径追踪的,针对于概率链接的优化,使用了子空间这个方法。
个人还是喜欢这种论文,相对于深度学习based的技术硬核太多了。
[toc]
Abstraction双向路径追踪可以通过选择合适的光线子路径的链接来进行加速优化。然而,现有的算法需要执行频率分布 ...
论文阅读: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,这个计算也 ...
计算机组成 6
Chapter Appendix Storage Networks and other peripheralsintroduction of I/O不容易度量性能并设计
Three Characters of I/O
Behavior
input
output
storage
Partner
Data rate
Throughput and Response time 吞吐量和响应时间
A.2 Disk Storage and Dependabilityfloppy disk
hard disk
platter 盘
track 轨道
sector 扇区,存储数据的最小单位
FlashMeasure Dependability
MTTF Mean time to failure 平均无故障时间
MTTR Mean time to repair 平均修复时间
MTBF=MTTF+MTTR Mean time between failure 平均故障时间间隔
Availability
$Availability=\frac{MTTF}{MTTF+MTTR}$
...
计算机组成 5
Chapter 5 Exploiting Memory Hierarchy
Memory Technologies (介绍存储类型)
Memory Hierarchy Introduction (层次化概念)
The basics of Cache (高速缓存介绍)
Measuring and improving cache performance (高速缓存性能提升)
Dependable Memory Hierarchy ()
Virtual Machines (虚拟机)
Virtual Memory (虚拟内存)
A common Framework for Memory Hierarchy (计算机通常层次化内存结构)
Using FSM to Control a simple Cache (用状态机控制缓存)
1. Memory TechnologiesReview:
SRAM:
use CMOS as a basic element.
N型(没有小圆圈)给1是导通状态
P型(有圆圈)给0是导通状态
vcc 接p,gnd接n,构成一个非门。
两个CMOS反相器构成1b ...