抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

记录一些关于Neural Rendering的学习笔记,可能有点乱orz。

Neural Rendering其他参考:

2023.7.26,终于通读了一遍大名鼎鼎的Nerf,然后准备看一看源码。

环境配置:

  • 删除新建的nerf环境:conda remove -n nerf –all
  • 新建nerf环境:conda create -n nerf python=3.7
  • conda install tensorflow-gpu==1.15
  • conda install numpy
  • conda install matplotlib
  • conda install imageio
  • pip install imageio-ffmpeg
  • conda install configargparse

遇到的问题:

  1. vscode不能使用 conda activate:
  1. tensorflow 和 tensorflow-estimator版本不一致
  • conda install tensorflow-estimator==1.15.1
  • 不要uninstall, uninstall会把tensorflow也uninstall
  • conda install tensorboard==1.15.0

其他需要的数据处理

  1. 下载bash中需要的data,并放到对应的文件夹。
  2. logs文件夹下新建summaries文件夹

在NeRF(Neural Radiance Fields)出现之前,辐射度场(Radiance Fields)的概念已经在计算机图形学中被广泛应用。以下是一些主要的方法:

光线追踪(Ray Tracing):这是一种计算机图形学技术,用于生成图像,通过追踪光线从视点出发并穿过每个像素在2D视图平面上的路径来工作。光线追踪可以用于计算光线与物体的交互,包括反射、折射和散射,这使得它能够生成具有复杂光照和阴影的高质量图像。

光线铸造(Ray Casting):这是一种更简单的技术,它只计算光线与物体的第一次交互,而不是追踪光线的完整路径。光线铸造通常用于生成硬阴影和简单的反射,但不能处理更复杂的光照效果。

体渲染(Volume Rendering):这是一种用于渲染3D体数据的技术,例如医学或科学图像。体渲染通过在每个像素上积分一条线(或光线)通过体数据的贡献来工作。这使得它能够生成半透明的效果,例如雾或云。

光场渲染(Light Field Rendering):光场是一个四维函数,描述了一个场景中所有可能的光线。光场渲染使用预先计算的光场数据来生成图像,这使得它能够快速地从任何视点和方向渲染场景。

这些技术都可以被视为辐射度场方法,因为它们都涉及到在3D空间中的某些位置和方向计算光的辐射度。然而,它们通常需要显式的3D模型或大量的预计算数据,而NeRF等新的方法则使用神经网络来隐式地表示辐射度场,从而能够处理更复杂的场景和光照条件。

评论