摘要: 几句话总结 static 的用法。 1、静态变量 静态变量统一放在特定内存区域中,在程序的整个生命周期内只有一份 作用之一:保存上一次的调用状态 作用之二:限定访问范围。静态变量只在当前文件有效,即便在其他文件中进行了 extern 声明都无法使用该变量。 静态类对象是在主函数之后被销毁的 2、静态 阅读全文
posted @ 2024-05-31 17:26 7hu95b 阅读(36) 评论(0) 推荐(0)
摘要: Windows 沙盒可以通过conf.wsb文件进行个性化配置,具体配置文件如下。 <Configuration> <vGPU>Enable</vGPU> <VideoInput>Disable</VideoInput> <AudioInput>Disable</AudioInput> <Clipb 阅读全文
posted @ 2024-05-30 09:53 7hu95b 阅读(237) 评论(0) 推荐(0)
摘要: 几句话总结const的用法。 1. const 常量与 #define 宏定义的区别? const 是一种“修饰符”,定义时必须初始化。 安全检查。const 变量需要经过编译器的规则检查。 节约空间。const 只有一份,#define 有若干个拷贝。 2. const 作为局部变量 const 阅读全文
posted @ 2024-05-29 10:53 7hu95b 阅读(26) 评论(0) 推荐(0)
摘要: cuda 没有提供自动求导机制,因此我们需要完成以下两步,实现反向传播。 一、计算所有 trainable 参数的偏微分 判断哪些参数是 trainable 的? 本例中,输入 f 的坐标是固定的,所以 uvw 的值也是固定的,因此只需要求 feats_interp对各个顶点的特征量 \(f_i\) 阅读全文
posted @ 2024-05-28 20:05 7hu95b 阅读(376) 评论(0) 推荐(0)
摘要: 一个简单的CUDA实践。用于实现前向传播。 一、算法设计 (一)问题背景描述和算法设计? 问题描述:计算某个点 f 的特征值的“插值”结果。 以二维为例,为了“插值”得到 f 的特征值,需要用到:各顶点的特征值 \(f_i\) 和 f 距离该顶点对面的两条边的距离的乘积之和。 如果扩展到三维,那么需 阅读全文
posted @ 2024-05-28 20:03 7hu95b 阅读(114) 评论(0) 推荐(0)
摘要: 博主给出的学习小 Tips。 Suggestions 在 Google scholar 中查找 NeRF 中的论文; 使用 enoip、pytorch-lightning 简化代码书写; 专业领域名词 rasterization: 把 3D 物体投影到成像面 阅读全文
posted @ 2024-05-28 19:56 7hu95b 阅读(8) 评论(0) 推荐(0)
摘要: 作者实现的 ngp_pl 代码还存在的两个问题: 收敛后的采样点数比NGP多(这导致计算量变大,渲染帧率下降); 有些场景会失败; 一、数据准备 代码都在 dataset 文件夹下面。 作者支持大部分算法的数据集格式,包括: NSVF:讲解的时候展示了 nsvf.py 这个文件,但是自己没找到它 N 阅读全文
posted @ 2024-05-28 19:55 7hu95b 阅读(82) 评论(0) 推荐(0)
摘要: NGP 改用了 Grid based 的方法。NeRF 采用了一个很大的神经网络(8层、每层256个神经元),直接计算每个采样点的 \(\sigma\) 和 \(c\) 就会很慢;NGP则是先找到所有包含这个点的Voxel,利用Voxel的顶点进行“三维内插”(trilinear)得到"特征值",把 阅读全文
posted @ 2024-05-28 19:53 7hu95b 阅读(265) 评论(0) 推荐(0)
摘要: V. Coordinate MLP Coordinate-MLPs 任务描述:把一张图片 Normalize 它的坐标,然后经过一个多层 MLP 后输出其颜色。 ‍ 阅读全文
posted @ 2024-05-28 19:48 7hu95b 阅读(11) 评论(0) 推荐(0)
摘要: Mip-NeRF算法思想。 Paper explanation Mip-NeRF360 and BlockNeRF 一、NeRF 的缺点 所有采样点都是:光心+像素中心的射线确定的,如果给定的图像分辨率比较低,那么每个像素会很大,中心点是不足以代表整个像素的颜色的;这会导致 NeRF 锯齿化太严重的 阅读全文
posted @ 2024-05-28 19:48 7hu95b 阅读(213) 评论(0) 推荐(0)