神经辐射场

非显式地将一个复杂的静态场景用神经网络来建模。训练完成后,可以从任意视角渲染出清晰的场景图片。

过程

  1. 大量已知相机参数的图片作为输入
  2. 通过输入训练MLP神经网络,隐式地学习静态3D场景
  3. 利用模型输出任意角度的渲染图像

由上述过程可知,NeRF由一系列2D输入学习3D场景,最后又通过3D模型输出2D图像。那么就有3个核心技术点:

  • a.怎么用神经网络表示3D的?
  • b.怎么再基于3D渲染出2D的?
  • c.这个神经网络的具体训练过程是怎么样的?

a.神经辐射场描述3D场景


NeRF函数:

  • 输入为空间点的3D坐标位置,以及2D观察方向。(为啥不是6D呢?因为这种5D神经辐射场将场景表示为空间任意点的体积密度和定向发射辐射,对于射线5D就可以完全描述
  • 输出为空间点的反射RGB颜色和密度Density
    • RGB预测与3D坐标和2D视角都有关
    • Density预测只与3D坐标有关

b.神经辐射场的体素渲染

NeRF函数得到的是一个3D空间点在对应视角的RGB和Density, 但这个对应视角的RGB还不是相机视角下的RGB

  • 因为相机成像的像素实际上对应的是投影光线上的所有连续空间点

作者使用了经典的体绘制思路渲染穿过场景的任意光线的颜色

  • 为了能够用神经网络来渲染,这个方法必须是可微的

b.1经典的体绘制方法

就是写了一个射线方程(由射线原点和射线朝向描述),通过这个方程可以得到射线上任意点的颜色。

  • 理论上可以得到射线上任意点的颜色,那么我们就可以用积分的方式得到整体的渲染颜色(类似透明度累计的感觉
  • 但实际上,我们不可能遍历计算一个连续的线上的所有点,因此作者采用了数值近似的方法

b.2基于分段随机采样的离散近似volume rendering方式

数值近似的简单思路就是均匀抽样再积分

  • 均匀抽样带来的问题就是把连续的数值离散化了,这样网络很难学习到射线上的连续性信息

所以作者选择先将需要积分的射线线段分为N个线段,然后对每个线段进行随机抽样再积分,以此保证辐射场的连续性

c.NeRF的训练细节

  • 1.位置信息编码,直接输入位姿的时候网络很难学,这里采用了正余弦周期函数的形式,这种position encoding让网络更容易学
  • 2.多层体素采样,考虑到射线上很多地方都是无用的空白或者遮挡区域,为了减少计算量,采用了一种“coarse to fine" 的形式,同时优化coarse 网络和fine 网络,基于得到的概率密度函数来采样更精细的点。

速度问题

  • 1.训练速度,一个场景要用单卡V100 训练1-2天左右
  • 2.渲染速度,一帧一分钟

要是能改进到1s 30帧,那就会对许多领域产生翻天覆地的变化!!!

Reference

[1]百度大佬看NeRF
[2] Mildenhall B, Srinivasan P P, Tancik M, et al. Nerf: Representing scenes as neural radiance fields for view synthesis[C]//European Conference on Computer Vision. Springer, Cham, 2020: 405-421.
[3] Kajiya J T, Von Herzen B P. Ray tracing volume densities[J]. ACM SIGGRAPH computer graphics, 1984, 18(3): 165-174

NeRF拜读:Representing Scenes as Neural Radiance Fields for View Synthesis相关推荐

  1. 读论文12——NeRF:Representing Scenes as Neural Radiance Fields for View Synthesis

    目录 Abstract Introduction Related Work Neural Radiance Field Scene Representation Volume Rendering wi ...

  2. NeRF:Representing Scenes as Neural Radiance Fields for View Synthesis

    目录 简介 Pipeline 细节讲解 结果 简介 什么是NeRF?NeRF翻译为神经辐射场. 下面两句话取自于Neural Fields in Visual Computing and Beyond ...

  3. Nerf(Representing Scenes as Neural Radiance Fields for View Synthesis)代码复现笔记

    前言:本文旨在帮助小白快速了解or学习复现出Nerf的代码,整体结构保持不变,不过会针对部分细节为了更好理解进行了修改. 本文会相应更新讲解视频于B站,id 出门吃三碗饭,有问题到b站评论区留言 同步 ...

  4. [非卷积5D中文翻译及学习笔记] 神经辐射场 NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

    不使用3D建模,使用静态图片进行训练,用(非卷积)深度网络表示场景的5D连续体表示,再通过ray marching进行渲染. 本中文翻译使用"机器学习+人工校准/注解"的方式完成. ...

  5. 【论文笔记 - NeRFs - ECCV2020】NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

    NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis 0背景介绍 用神经辐射场来表征场景,用于新视角图像生成任务 ...

  6. 论文笔记:NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

    目录 文章摘要 1 Neural Radiance Field Scene Representation (基于神经辐射场的场景表示) 2 Volume Rendering with Radiance ...

  7. 文献翻译阅读-NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

    目录 信息 简介 相关工作 神经3D表示 视角合成和基于图像的渲染 方法 体渲染技术(用离散形式表示连续积分) 优化神经场的技术 位置编码 分层体积抽样 实施细节 结果 结论 参考 信息 NeRF,即 ...

  8. 【论文精读】NeRF —— 解读《NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis》

    NeRF的核心点是实现了复杂静态场景的隐式表达,用一个神经网络来建模. Abstract 本文提出了一种新方法,通过使用稀疏的输入视图集优化底层连续的体积场景函数,实现了合成复杂场景的新视图的SOTA ...

  9. 论文笔记NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis

    NeRF使用神经网络来表示场景.给定一个场景,输入该场景一些视角的图片,NeRF可以合成该场景新视角的图片. 神经辐射场 神经辐射场(neural radiance field,NeRF)使用5D的向 ...

最新文章

  1. 我的第一份工作是个小公司
  2. mysql存储过程分析
  3. How does Spring @Transactional Really Work?--转
  4. 23种设计模式C++源码与UML实现--策略模式
  5. 目标检测特殊层:PSROIPooling详解
  6. LVS practice
  7. java输入流读取几行文本_Java基础笔记Day_16
  8. Maven--资源文件resource的问题
  9. WildFly 8.0.0.Alpha1的发布和一些历史
  10. ssh的详细链接过程
  11. python实现rsa数据加密_python实现RSA与AES混合加密
  12. 2017《面向对象程序设计》课程作业五
  13. 安卓期末大作业(AndroidStudio开发),日记本app,代码注释详细,能正常运行
  14. web前端基础教程实践DIV+CSS网页布局入门指南
  15. c语言教材衡军山 答案,c语言
  16. 【解决】Git:hint:Pulling without specifying how to reconclie divergent branches is...
  17. 千兆网线和百兆网线的区别
  18. 发光环绕文字特效怎么做?教程来了
  19. See Conf 悠鹤《蚂蚁庄园背后的技术与思考》笔记
  20. python学习004-----python中%s的各种用法

热门文章

  1. MariaDB允许远程连接
  2. Nokia S60v5 javaME 禁用 softkeypad
  3. matlab中axes显示,【原创】MATLAB中axes函数全功能解析
  4. 华为设备配置ipsec 与mpls用于分支网络连接主网络
  5. 论文笔记:多标签学习综述
  6. 文章评论:“鞋服企业以销定产-零库存不难”
  7. 语音检测心理压力状态
  8. 将Spring Security OAuth2授权服务JWK与Consul 配置中心结合使用
  9. 一款彩虹字体发布,为了纪念创造LGBTQ彩虹旗的人逝世
  10. 自媒体人涨粉攻略:3个免费的有效渠道,快收好