1.介绍
为了实现保持高频和局部细节的同时还能保持快速和紧凑的表示,计算机图形学中使用MLP网络来表示形状外观。
使用这种表示方法的重要前提是对神经网络的输入进行编码,将输入映射到高维度空间。现有的编码方式是复杂的,因此作者提出了本文。如果输入的两个空间点是位置很接近的,但颜色差却很大,那么网络为了减小损失对于这两个点的预测值很有可能是很相近的,这会导致最终图像上相邻的像素变模糊。但是如果对这两个点做位置编码映射到高维空间中,这两个点就有可能会相距很远,那么最终在网络中输出的预测值就有可能是比较准确的
作者使用多分辨率的哈希编码解决上述的问题,这是自适应且高效的,可以在几秒钟的训练后就产生最先进的质量。论文只需要调两个参数,一个是哈希表大小T,一个是最大分辨率Nmax
产生这种效率和适应性的关键是哈希表的多分辨率结构。
适应性:作者将网络映射到了一个存储特征向量阵列的哈希表中,在粗分辨率中,哈希映射是一比一的关系,在高分辨率中,可能会有哈希冲突,但是不重要,网络会自己调整。
效率:因为哈希表的查找的时间复杂度是o(1),所以是高效的。
作者在四个任务中验证了多分辨率的哈希编码,1 高质量图像 2 SDF预测 3 NRC 4 NeRF
2.背景和相关工作
在神经网络中将输入编码到高维空间是常见且有用的,如NeRF中的位置编码,被他们称为频率编码。
作者在下面讲了一些之前的encodding编码方式,像是one-hot,位置编码等等。还提到哈希表的总参数量虽然变多了,但是要更新的参数量是变少了。
下面讲了,之前的grid的编码方式,是空间浪费的,这里就把每一个分辨率上差值出来的向量拼在一起
3.多分辨率的哈希编码
对于输入坐标的编码过程如下:1 对于输入的坐标x,在L个分辨率级别找到周围的空间点,并通过各自的空间点坐标通过hash函数查找索引 2 通过索引,在哈希表中查找到各自的F维特征向量 3 根据x在各个分辨率L级别中的相对位置进行线性插值 4 把每一集的结果和辅助输入串联起来,生成MLP的输入y 5 最后loss反向传播.
1