关于BRDF公式理解的笔记
看视频的时候一直没理解反射方向的光亮度radiance为什么要做微分,看到很多弹幕也有类似的问题,但翻遍论坛没有找到想要的回答。在反复观看闫老师和清华胡事民在这部分的讲解后,有些个人的理解,在此记录下。
问题
按理说我们想知道入射光在某个方向上反射出去的radiance(光亮度),直接用表示即可,为什么要对
做微分呢?
微分后的物理意义是什么呢?
为了解决上面这个问题,我们先看BRDF的分母。我们需要使用的是某个方向上入射进来的irradiance(辉度),所以需要对辉度irradiance做微分,得到的其实就是入射方向上的光亮度radiance(近似,为什么说近似后文会说明,也可以自己比对定义公式找区别)。这部分不难理解。真正渲染时,需要对
做积分,得到半球上所有方向上入射光在特定反射角
上的“反射光强度”之和,作为该
角度上的radiance,即渲染方程里得到的
。
回到问题。所以,的意义,是反射光亮度
,在入射角
上的微分。你可能会问着有什么意义?还是上一段分析的,最终的
是由所有的
分量对应的反射累加(积分)后得到的。入射的每一个
对应一个光照贡献分量
,所以,这个微分的意义就是,特定入射角上的“光照强度”(radiance),对反射光最终输出的贡献分量。
另外,可以从BRDF公式反推上面这个理解。
在BRDF的公式分子分母同时除以,可以发现分母变成了radiance(用
表示),分子就是
,即上文说的,反射radiance对入射角
的微分。
关于BRDF公式理解的笔记相关推荐
- 四足控制中的公式理解
说明:本文章用于记录四足相关论文的公式理解,由于本人能力有限,公式的理解来自对论文内容的研读,网上的相关文章以及个人猜测的结合,不准确之处欢迎各位批评指正,本文也会不断更新.欢迎与我联系:225001 ...
- bilibili深入理解计算机系统笔记(2):第一次代码重构,汇编模拟器,递归,指令周期实现。
文章目录 深入理解计算机系统笔记(2) 第一次代码重构 可变参数输出print函数 bitmap学习 P10 有限自动机 指令周期 递归求和函数c语言和汇编语言 回调函数的实现 call和ret指令的 ...
- bilibili深入理解计算机系统笔记(1):汇编模拟器能跑了
文章目录 深入理解计算机系统笔记 P1笔记 p2笔记 p3笔记 p4笔记 汇编模拟器(p5-7) 封装访存接口 输出计算机状态 实现指令 call指令的实现 bug 积累 include重复包含的bu ...
- 关于栈的理解(读书笔记)
关于栈的理解(读书笔记) 标签: 栈内存布局可执行程序 2013-03-16 02:16 2957人阅读 评论(1) 收藏 举报 分类: [C语言学习](56) 版权声明:本文为博主原创文章,未经博主 ...
- 数学-先验概率和后验概率和一系列概率公式理解
自用. 一. 先验概率和后验概率理解 这两个都是描述某个结论H发生的概率. 假如我当前什么证据都没有,就根据之前的人生经历,思索下说P(H)=0.99,认为结论H发生的可能高达99%,那这时的P(H) ...
- 模型压缩之量化入门笔记||量化基本公式的理解||量化过程可视化||LSQ公式理解
文章目录 公式介绍 量化零点 z z z 在离散化过程中的作用 量化尺度 s s s 在离散化过程中的作用 量化尺度 s s s 和量化零点 z z z 联合作用 公式介绍 本人初入模型量化的坑, ...
- 【NLP】毕设学习笔记(七)前馈神经网络代表者——卷积神经网络无公式理解
含隐藏层的全连接前馈神经网络图: 加入隐藏层而非只有输入层和输出层的原因: 如果不加入隐藏层,则在进行最终的判断时,输入层的每一个数据都和输出结果直接挂钩,但事实上,这样的挂钩是十分不可靠的. 例如, ...
- 100天搞定机器学习|day37 无公式理解反向传播算法之精髓
100天搞定机器学习(Day1-34) 100天搞定机器学习|Day35 深度学习之神经网络的结构 100天搞定机器学习|Day36 深度学习之梯度下降算法 本篇为100天搞定机器学习之第37天,亦 ...
- 深入理解ES6笔记(九)JS的类(class)
主要知识点:类声明.类表达式.类的重要要点以及类继承 <深入理解ES6>笔记 目录 ES5 中的仿类结构 JS 在 ES5 及更早版本中都不存在类.与类最接近的是:创建一个构造器,然后将方 ...
最新文章
- java遍历bean_javaweb利用javabean将数据库中内容遍历在页面输出
- python使用matplotlib可视化线图(line plot)、将可视化图像的图例(legend)放置在图像外部、底部区域
- spring 源码-context
- java方法参数类型不确定_一个Java方法能有多少个参数类型?这个好奇coder做了个实验...
- 手游产品经理初探(三)产品中的玩家行为
- linux的mysql本地yum安装_Linux系统下使用yum安装mysql
- 如何快速处理线上故障【转】
- C# 中的字符串内插
- c语言网格搜索,基于C
- 使得电脑成为通用计算机器,为什么电脑显示器变成通用非即插即用监视器?
- 给初次参加全国大学生智能汽车竞赛的同学们的一些建议(转)
- CMPP网关协议核心代码 java版本
- 《遥感原理与应用》孙家抦版知识点总结(含简答题)——第一章
- IMX6ULL开发板,系统移植——第一步Uboot移植
- 【操作系统】分区分配算法(首次适应算法、最佳适应算法)C语言
- html顺势正旋转360度,庞明:混元太极揉球
- HDU 6078 Wavel Sequence【动态规划】
- 【XSY2753】LCM
- 链接器、链接过程及相关概念解析
- LightOJ-1012-Guilty Prince [DFS]