S3IM:随机结构相似性及其对神经场的不合理有效性

论文:《S3IM: Stochastic Structural SIMilarity and Its Unreasonable Effectiveness for Neural Fields》

链接:arxiv.org/pdf/2308.07...

代码:github.com/Madaoer/S3I...

导读

今天为大家介绍的 S3IM 这个工作背后的想法实际上很简洁,作者从这个 idea 在脑海里形成到最后提交到 ICCV-2023 不过2个月时间。

用一句话来总结这个工作就是------我们提出了一种即插即用的 loss S3IM(随机结构相似性),可以近乎零成本地显著提升现存 NeRF 类方法的性能指标。在几个场景里,我们甚至可以把 TensoRF 和 DVGO 这些经典模型的 Test MSE Loss 下降99%,同时把 NeuS 的几何重建指标(比如Chamfer L1 Distance)改善超过60%。

动机

这里让我们先看几组RGB和几何重建的可视化结果:

不仅如此,还可以提高对图像噪音的鲁棒性。如下图所示,S3IM的渲染结果明显去掉了图像里灰蒙蒙的噪音。

毫无疑问,S3IM极大地增强了现有的NeRF类方法。

S3IM的精髓在于以两个像素集合之间的相似性作为训练损失;像素集合一般包含数千个像素,这些像素一起贡献了互相关联的、全局的结构信息。

而NeRF传统的MSE是一种以两个独立像素之间的point-wise error作为训练损失;所以MSE只包含了像素点孤立的信息、完全没有远距离或者全局的信息。

上面这两段话就是 S3IM 的 motivation。

分析

为什么有结构信息更好?这是一个很好的问题。

但我们先回答另一个相关的问题,为什么NeRF的性能指标要有3个------PSNR、SSIM和LPIPS?

  • PSNR 就是像素之间point-wise的度量。很早大家就发现,PSNR好不代表真的就好。
  • SSIM(结构相似性)作为一种和人类视觉感知相关性更高的度量在2004年图像评估领域应运而生。
  • LPIPS 则是一种通过预训练神经网络提取特征计算特征距离的指标(一般叫做感知指标)。

因此,我们可以看到,SSIM和LPIPS其实都具备衡量两个像素集合之间相似性的能力,而且与人类视觉感知相关性都比PSNR高。熟悉NeRF的读者都知道,传统NeRF训练时是用MSE Loss。而PSNR和MSE其实就是一个简单的对数关系。MSE和PSNR这类point-wise指标都是不够好的。一方面是和人类视觉感知相关性低,另一方面则是无法捕捉多个像素(像素集合)的整体信息。

那么,SSIM和LPIPS可不可以直接作为NeRF的loss训练呢?其实也可以,但仍然不够好。因为SSIM和LPIPS都是基于卷积核的相似性度量,它们只能捕捉相近像素的局部信息,不能捕捉更远的像素包含的结构信息。

我们的ICCV工作就是把SSIM(Structural SIMilarity)这个经典图像质量评估指标升级,变为S3IM(Stochastic Structural SIMilarity)。这个升级方式也很简单。SSIM只能在图像local patch用卷积核对吧。那我们把NeRF训练时每个minibatch的像素随机拼接成一个patch(叫做stochastic patch),然后再用SSIM处理这些stochastic patch就行了。

有时候,真理就是这么朴实无华啊...知名3D几何重建开源框架SDFStudio也已经把S3IM方法合并进去了。

实验

最后再放一个量化的实验结果。表里Multiplex即是我们的S3IM方法。

S3IM这个工作是我们Machine Learning for Fields系列工作的一环。我们在从机器学习的角度考虑场的问题。

无论是神经辐射场还是其他什么场,广义来说都是某个coordinate-wise的物理量。NeRF只是把辐射场的物理先验知识(空间中包含发光气体)嵌入了sampling的部分而已。这对3D场景表示不是完美的,但确实非常有用,也掀起了热潮。

对技术细节感兴趣的读者请直接查看原文和代码。

相关推荐
Logic10114 分钟前
C语言/数据结构组合数学题解:数字好排列计数——质数倍数分类与阶乘取模
c语言·数据结构·算法·组合数学·时间复杂度·排列·取模运算
碧海银沙音频科技研究院34 分钟前
炬芯ATS3089智能手表烧录方法
人工智能·驱动开发·嵌入式硬件·算法
维克兜率天38 分钟前
【维克】统计套利:寻找市场的“定价误差“
人工智能·python·算法
aqiu1111111 小时前
【C++算法打怪专栏】LeetCode 1. 两数之和(哈希表解法总结)
c++·算法·leetcode
楚识科技1 小时前
票据 OCR 识别技术深度解析:从算法原理到企业级落地实现
算法·ocr
longlongzihan1 小时前
LeetCode 25. K 个一组翻转链表 (迭代+分组反转法)
算法·leetcode·链表
xuxigifxfh1 小时前
牛客:BISHI8 大整数哈希
java·算法·哈希算法
涉密IT资质笔记1 小时前
涉密资质投入产出分析模型:时间成本、四块成本构成与 ROI 决策框架
java·开发语言·算法
木井巳1 小时前
【BFS 解决拓扑排序】火星词典
java·算法·leetcode·广度优先·宽度优先·图搜索算法
北风toto1 小时前
KMP 算法详解:从暴力匹配到 O(n+m) 的字符串搜索
java·开发语言·算法