专栏名称: 3D视觉工坊
1、OpenCV的技术传播; 2、3D点云与重建技术; 3、Vslam技术; 4、深度学习; 5、技术干货分享。
目录
相关文章推荐
营养师顾中一  ·  这种让你噗噗噗「姜」,一次别吃太多! ·  10 小时前  
丁香医生  ·  多出汗,身体能排毒吗? ·  昨天  
丁香生活研究所  ·  劝你吃蓝莓的理由,一个就够了! ·  2 天前  
丁香医生  ·  30 个让你睡不好的习惯,测测你有哪些? ·  2 天前  
51好读  ›  专栏  ›  3D视觉工坊

ECCV'24开源 | 2000 FPS!使用2D GS进行图像表示和压缩!

3D视觉工坊  · 公众号  ·  · 2024-07-22 07:00

正文

点击下方 卡片 ,关注 「3D视觉工坊」 公众号
选择 星标 ,干货第一时间送达

来源:3D视觉工坊

添加小助理:dddvision,备注:方向+学校/公司+昵称,拉你入群。文末附3D视觉行业细分群

扫描下方二维码,加入 3D视觉知识星球 ,星球内凝聚了众多3D视觉实战问题,以及各个模块的学习资料: 近20门视频课程(星球成员免费学习) 最新顶会论文 、计算机视觉书籍 优质3D视觉算法源码 等。想要入门3D视觉、做项目、搞科研,欢迎扫码加入!

0. 这篇文章干了啥?

图像表示是信号处理和计算机视觉中的一项基础任务。传统的图像表示方法,包括网格图形、小波变换和离散余弦变换,已被广泛应用于从图像压缩到视觉任务分析的各个领域。然而,当处理大规模数据集并追求高效的存储解决方案时,这些方法会遇到重大障碍。

隐式神经表示(INRs)的出现标志着图像表示技术的一个重大范式转变。通常,INRs使用紧凑的神经网络来推导从输入坐标到对应输出值的隐式连续映射。这使得INRs能够更有效地捕获和保留图像细节,从而为包括图像压缩、去模糊和超分辨率在内的各种应用提供相当大的益处。然而,大多数最先进的INR方法都依赖于大型高维多层感知器(MLP)网络来准确表示高分辨率图像。这种依赖性导致训练时间延长、GPU内存需求增加以及解码速度变慢。虽然最近的创新引入了多分辨率特征网格与紧凑MLP相结合的方法来加速训练和推理,但它们仍然需要足够的GPU内存来支持其快速训练和推理,这在资源有限的情况下难以满足。因此,这些挑战极大地阻碍了INRs在现实场景中的实际部署。

鉴于这些挑战,我们的研究旨在开发一种先进的图像表示技术,以实现高效的训练、友好的GPU内存使用以及快速的解码。为实现这一目标,我们借鉴了最近为3D场景重建而开发的高斯展开(Gaussian Splatting, GS)。通过利用显式的3D高斯表示和可微分的基于瓦片的栅格化,3D GS不仅具有高质量视觉效果和竞争力的训练时间,还实现了实时渲染能力。

然而,直接将3D GS用于高效的单图像表示并非易事。首先,考虑到现有的3D GS方法依赖于不同的相机变换矩阵来从不同角度渲染图像,将其直接应用于单图像的一种简单方法是固定相机变换矩阵以从单一视角渲染图像。然而,不幸的是,每个3D高斯通常包含59个可学习参数,而表示单个图像则需要数千个3D高斯。这种简单的方法会大幅增加存储和通信需求。单个图像的存储占用量从几十千字节激增到几十兆字节,这使得在低内存设备上渲染变得困难。其次,3D GS中的栅格化算法是为α混合近似设计的,需要基于从相机参数获得的深度信息对高斯进行预排序。这对单图像来说是一个挑战,因为自然单张图像中通常不知道详细的相机参数,而非自然图像(包括屏幕截图和AI生成的内容)也不是由相机捕捉的。没有准确的深度信息,高斯排序可能会受到影响,从而降低最终的拟合性能。此外,当前的栅格化过程在累积不透明度超过给定阈值后就会跳过剩余的高斯分布,这导致高斯数据利用不足,因此需要更多高斯分布以实现高质量渲染。

为了解决这些问题,我们提出了一种新的图像表示和压缩范式,即使用二维高斯泼溅(Splatting)的GaussianImage。首先,我们采用二维高斯分布而非三维,以实现紧凑且富有表现力的表示。每个二维高斯分布由四个属性(共九个参数)定义:位置、各向异性协方差、颜色系数和不透明度。这种修改使得在等效高斯点的情况下,二维高斯分布相对于三维高斯分布实现了6.5倍的压缩,从而显著降低了高斯表示的存储需求。

随后,我们提出了一种独特的栅格化算法,该算法用累积求和过程取代了基于深度的高斯排序和α混合。这种新方法直接从覆盖当前像素的所有高斯分布的加权和中计算每个像素的颜色,这不仅充分利用了所有覆盖当前像素的高斯点的信息以提高拟合性能,还避免了累积透明度的繁琐计算,从而加速了训练和推理速度。更重要的是,这种求和机制允许我们将颜色系数和不透明度合并为一组加权颜色系数,将参数数量减少到8个,并进一步将压缩比提高到7.375倍。

最后,我们将二维高斯表示转化为实用的图像编解码器。我们将图像压缩视为高斯属性压缩任务,并采用两步压缩策略:属性量化感知微调(quantization-aware fine-tuning)和编码。通过对位置、协方差参数和加权颜色系数应用16位浮点量化、6位整数量化和残差向量量化(RVQ),我们能够以较低的比特率实现高质量的图像压缩,同时保持图像中的细节和边缘信息。

通过分别对位置、协方差参数和加权颜色系数应用16位浮点量化、6位整数量化和残差向量量化(RVQ),我们成功开发了首个基于二维高斯溅射的图像编解码器。作为初步的概念验证,我们可选地使用部分位返回编码来进一步提升编解码器的压缩性能。

下面一起来阅读一下这项工作~

1. 论文信息

标题:GaussianImage: 1000 FPS Image Representation and Compression by 2D Gaussian Splatting

作者:Xinjie Zhang, Xingtong Ge, Tongda Xu, Dailan He, Yan Wang, Hongwei Qin, Guo Lu, Jing Geng, Jun Zhang

机构:香港科技大学、北京理工大学、SenseTime Research、清华大学AIR、香港中文大学、上海交通大学

原文链接:https://arxiv.org/abs/2403.08551

代码链接:https://github.com/Xinjie-Q/GaussianImage

官方主页:https://xingtongge.github.io/GaussianImage-page/

2. 摘要

隐式神经表示(INRs)最近在图像表示和压缩方面取得了巨大成功,在假设有足够的GPU资源的情况下,它们能够提供高质量的视觉效果和10-1000 FPS的快速渲染速度。然而,这一要求往往阻碍了它们在内存有限的低端设备上的使用。为此,我们提出了一种基于二维高斯溅射(Gaussian Splatting)的图像表示和压缩的新范式,命名为GaussianImage。我们首先引入二维高斯来表示图像,其中每个高斯具有包括位置、协方差和颜色在内的8个参数。随后,我们提出了一种基于累加求和的新型渲染算法。值得注意的是,我们的方法在最小化GPU内存使用(低至3倍)和拟合时间(快至5倍)的同时,不仅在表示性能上与INRs(如WIRE、I-NGP)相媲美,而且在不考虑参数大小的情况下,提供了1500-2000 FPS的更快渲染速度。此外,我们还结合了现有的矢量量化技术来构建图像编解码器。实验结果表明,我们的编解码器在率失真性能上与基于压缩的INRs(如COIN和COIN++)相当,同时实现了大约2000 FPS的解码速度。此外,初步的概念验证显示,在使用部分位返回编码时,我们的编解码器在性能上超越了COIN和COIN++。代码可访问https://github.com/Xinjie-Q/GaussianImage获取。

3. 效果展示

Kodak和DIV2K数据集上不同解码时间的图像表示(左)和压缩(右)结果。每个点的半径表示参数大小(左)或每像素位数(右)。无论参数大小或bpp如何,我们的方法都具有最快的解码速度。

4. 主要贡献

总体而言,我们的贡献有三个方面:

• 我们提出了一种基于二维高斯溅射的图像表示与压缩的开创性范式。通过紧凑的二维高斯表示和新颖的基于累积混合的光栅化方法,我们的方法实现了高表示性能,具有较短的训练时间、极小的GPU内存开销,以及惊人的2000 FPS渲染速度。

• 我们开发了一个低复杂度的神经图像编解码器,采用向量量化。此外,我们还可选地使用部分位返回编码技术来降低比特率。

• 实验结果表明,与现有的隐式神经网络(INR)方法相比,我们的方法在保持相似视觉质量的同时,实现了显著的训练和推理加速,并且减少了GPU内存的使用。当用作高效的图像编解码器时,我们的方法提供了与COIN和COIN++相当的竞争性压缩性能。全面的消融实验和分析证明了每个提出组件的有效性。

5. 基本原理是啥?

图2描述了我们的GaussianImage的整体处理流程。我们的方法首先在图像平面上形成二维高斯分布,这一过程主要计算二维协方差矩阵Σ。之后,我们采用累积混合机制来计算每个像素的值。我们详细介绍如何在图像上构建二维高斯分布,包括如何计算每个高斯分布的均值和协方差矩阵。为了将三维高斯溅射(GS)的栅格化过程适应于二维图像表示的独特特性,并减少二维高斯所需的参数,我们提出了一种新的栅格化方法。这种方法将基于累积混合的策略,以更高效的方式将二维高斯映射到图像像素上。我们将介绍一个两步压缩流水线,用于将我们的GaussianImage转换为神经图像编解码器。这个流水线将包括量化过程(如浮点量化和整数量化)以及可选的位返回编码技术,以进一步降低比特率。最后,我们将说明在图像表示和压缩任务上的训练过程。这包括如何设置训练数据集、优化目标函数以及评估模型性能的指标。通过训练,我们的模型将能够学习到如何有效地表示和压缩图像数据。

在图像过拟合之后,我们提出了一种基于GaussianImage的图像压缩流程。如图3所示,我们的标准压缩流程包括两个步骤:图像过拟合和属性量化感知微调。为了达到最佳的压缩性能,部分位返回编码是一种可选的策略。在此,我们以基于乔列斯基分解(Cholesky factorization)的GaussianImage为例,阐述我们的压缩过程。

6. 实验结果

表1展示了在相同训练步骤下,各种方法在Kodak和DIV2K数据集上的表示性能。尽管基于多层感知机(MLP)的隐式神经表示(INR)方法(如SIREN、WIRE)利用较少的参数来拟合图像,但它们存在训练时间长和渲染速度极慢的问题。最近基于特征网格的INR方法(如I-NGP、NeuRBF)加速了训练和推理过程,但与基于高斯球(GS)的方法相比,它们需要更多的GPU内存。由于原始的三维GS使用三维高斯函数作为表示单元,它面临着参数数量庞大的挑战,这减缓了训练速度并限制了推理速度。通过选择二维高斯函数作为表示单元,我们的方法在训练时间、渲染速度和GPU内存使用方面表现出显著优势,同时在大幅减少存储参数数量的同时保持了相当的拟合质量。

编码性能。图4展示了不同编解码器在Kodak和DIV2K数据集上的率失真(Rate-Distortion, RD)曲线。值得注意的是,我们的方法在峰值信噪比(PSNR)方面与COIN和COIN++的压缩性能相当。借助部分位回编码技术,我们的编解码器性能超过了COIN和COIN++。此外,在采用多尺度结构相似性(MS-SSIM)衡量时,我们的方法大幅超越了COIN。图5对我们的方法、JPEG和COIN进行了定性比较,结果显示我们的方法更有效地恢复了图像细节,并在消耗更低比特率的情况下提供了更优的重构质量。

计算复杂度。表2报告了多个图像编解码器在DIV2K数据集上的计算复杂度,其中基于学习的编解码器在NVIDIA V100 GPU上运行,而传统编解码器则在单核模式下、基础频率为3.50GHz的Intel Core(TM) i9-10920X处理器上运行。令人印象深刻的是,我们的编解码器的解码速度达到了约2000帧每秒(FPS),超过了JPEG等传统编解码器,同时在较低比特率下提供了增强的压缩性能。这标志着神经图像编解码器领域的一大进步。

7. 总结 & 未来工作

在本文中,我们引入了GaussianImage,这是一种创新的图像表示范式,它利用二维高斯溅射(Splatting)技术。这种方法与常用的隐式神经网络显著不同,为图像提供了一种离散且明确的表示方式。与三维高斯溅射相比,采用二维高斯核为图像表示带来了两大显著优势。首先,计算密集型的alpha混合被简化为一种高效且排列不变的累积求和混合。其次,每个高斯所需的参数数量从59个大幅减少到仅8个,极大地降低了复杂度。因此,GaussianImage成为了一种高效且紧凑的图像编码技术。实验结果表明,这种明确的表示策略显著提高了训练和推理效率。此外,在对参数进行矢量量化后,与采用隐式神经表示的方法相比,GaussianImage在率失真性能上也具有竞争力。这些发现为非端到端图像压缩和表示策略提供了进一步探索的有前途的方向。

对更多实验结果和文章细节感兴趣的读者,可以阅读一下论文原文~

本文仅做学术分享,如有侵权,请联系删文。

3D视觉工坊交流群

目前我们已经建立了3D视觉方向多个社群,包括 2D计算机视觉 大模型 工业3D视觉 SLAM 自动驾驶 三维重建 无人机 等方向,细分群包括:

2D计算机视觉: 图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等

大模型: NLP、CV、ASR、生成对抗大模型、强化学习大模型、对话大模型等

工业3D视觉: 相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。

SLAM 视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。

自动驾驶: 深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、Occupancy、目标跟踪等。

三维重建: 3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等

无人机: 四旋翼建模、无人机飞控等

除了这些,还有 求职 硬件选型 视觉产品落地 最新论文 3D视觉最新产品 3D视觉行业新闻 等交流群

添加小助理: dddvision,备注: 研究方向+学校/公司+昵称 (如3D点云+清华+小草莓) , 拉你入群。

▲长按扫码添加助理

3D视觉工坊知识星球

3D视觉从入门到精通知识星球、国内成立最早、6000+成员交流学习。包括: 星球视频课程近20门(价值超6000) 项目对接 3D视觉学习路线总结 最新顶会论文&代码 3D视觉行业最新模组 3D视觉优质源码汇总 书籍推荐 编程基础&学习工具 实战项目 &作业 求职招聘&面经&面试题 等等。欢迎加入3D视觉从入门到精通知识星球,一起学习进步。

▲长按扫码加入星球
3D视觉工坊官网: www.3dcver.com

具身智能、3DGS、NeRF、结构光、相位偏折术、机械臂抓取、点云实战、Open3D、缺陷检测、 BEV感知、Occupancy、Transformer、模型部署、3D目标检测、深度估计、多传感器标定、规划与控制、 无人机仿真、三维视觉C++、三维视觉python、dToF、相机标定、ROS2、机器人控制规划 LeGo-LAOM、多模态融合SLAM、LOAM-SLAM、室内室外SLAM、VINS-Fusion、ORB-SLAM3、 MVSNet三维重建、colmap、线面结构光、硬件结构光扫描仪,无人机等

▲长按扫码学习3D视觉精品课程

3D视觉相关硬件







请到「今天看啥」查看全文