jjzjj

【论文笔记】A Survey on 3D Gaussian Splatting

原文链接:https://arxiv.org/abs/2401.038901.引言NeRF在计算效率和可控性上具有局限性,这导致了3D高斯溅射(3DGS)的出现,重新定义了场景表达和渲染。3DGS通过引入新的场景表达技术,用大量的3D高斯表达场景。3DGS使用显式的表达和高度并行化的工作流程,促进高效计算和渲染;其创新在于混合了可微渲染与基于点的渲染技术的优势。3DGS保留了连续体积辐射场的理想特性(有利于高质量图像渲染),同时避免了渲染空空间带来的计算开销。此外,3DGS的显式表达提供了对场景的动态控制能力。2.背景2.1问题定义2.1.1辐射场辐射场是3D空间中光分布的表达,捕捉了环境中光

3DGS 其一:3D Gaussian Splatting for Real-Time Radiance Field Rendering

3DGS其一:3DGaussianSplattingforReal-TimeRadianceFieldRendering1.预备知识1.1球谐函数1.2Splatting1.3α\alphaαblending1.4多维高斯的协方差矩阵1.4.1高斯与椭球体的关系1.4.2世界坐标系下的三维高斯到二维像素平面投影过程2.3DGaussianSplatting2.1特点2.2流程与关键步骤2.2.1场景表达2.2.2整体流程2.3算法伪代码2.3.1整体流程伪代码2.3.2光栅化伪代码Reference:深蓝学院:NeRF基础与常见算法解析GitHub:gaussian-splatting原文官网

3D Gaussian Splatting for Real-Time Radiance Field Rendering 阅读笔记

感谢B站意の茗的讲解。论文地址:https://arxiv.org/abs/2308.04079项目主页:https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/概述从已有点云模型出发(sfm),以每个点为中心建立可学习的3D高斯表达,Splatting方法进行渲染,实现高分辨率实时渲染。(推动NERF加速方向)能用训练好的点云在windows上进行实时渲染。随机初始化点云,不提供初始点云也行,在训练过程中可以对点云进行生长和修剪。(一般NeRF需要从COLMAP计算相机位姿,此时已经得到初始点云。)用instant-NGP的速度,实现

Deblurring 3D Gaussian Splatting

Q:这篇论文试图解决什么问题?A:这篇论文试图解决的问题是:在3D场景重建和新视角合成(NVS)中,如何处理由于镜头失焦、物体运动和相机抖动等因素导致的图像模糊问题。这些模糊效应通常会影响从输入图像中准确重建3D场景,尤其是在使用基于体积渲染的神经辐射场(NeRF)方法时。论文提出了一种名为“Deblurring3DGaussianSplatting”的新实时去模糊框架,它通过使用一个小型的多层感知器(MLP)来操纵每个3D高斯分布的协方差矩阵,以模拟场景的模糊程度。这种方法能够在保持实时渲染的同时,从模糊图像中重建出精细且锐利的细节。Q:有哪些相关研究?A:相关研究包括:NeRF:展示了通过

3D Gaussian Splatting(高斯飞溅3D算法) Windows系统部署(简版) |导入到Unity

目录前言1、安装python(1)下载地址(2)添加环境变量2、安装CUDA        3、安装git(1)下载地址(2)检查是否安装成功4、安装visualstudio5、安装COLMAP(1)下载地址(2)添加环境变量6、安装ffmpeg(1)下载地址(2)添加环境变量(3)检查是否安装成功7、安装pytorch8、安装其他依赖项9、安装viewers(可视化界面)10、设置启动脚本与data文件夹(1)设置5个.bat脚本(2)data文件夹设置11、打开可视化页面12、外接Unity操作(1)Unity下载(2)Unitygaussiansplatting外挂操作(3)Unity中

基于3D Gaussian Splatting与NeRF实现三维重建(使用IPhone创建数据集)

基于SpectacularAI与NeRF实现三维重建-使用IPhone创建数据集前言项目简介创建数据集扫描处理数据集解析数据集Python环境Windowsffmpeg环境搭建数据集处理安装Nerfstudio需要CUDA环境依次安装依赖pipinstallnerfstudioNerfstudio实现效果开始训练参数配置实时训练浏览前言本项目参考YouTube中博主(SpectacularAI)详细可了解:SpectacularAI官网本文项目构建在Windows与Ubuntu中,二者在项目构建中并未有实质性的差距,可相互参考环境与参数的配置,本文即在Windows11(已配置好CUDA)中进

3D Gaussian Splatting文件的压缩【3D高斯泼溅】

在上一篇文章中,我开始研究高斯泼溅(3DGS:3DGaussianSplatting)。它的问题之一是数据集并不小。渲染图看起来不错。但“自行车”、“卡车”、“花园”数据集分别是一个1.42GB、0.59GB、1.35GB的PLY文件。它们几乎按原样加载到GPU内存中作为巨大的结构化缓冲区,因此至少也需要那么多的VRAM,加上更多用于排序,加上在官方查看器实现中,平铺splat光栅化使用了数百MB。我可以告诉你,我可以将数据缩小19倍(分别为78、32、74MB),但看起来并不是那么好。仍然可以识别,但确实不好—但是,这些伪影不是典型的“低LOD多边形网格渲染”,它们更像是“空间中的JPG伪影

3D Guassians Splatting相关解读

从已有的点云模型出发,以每个点为中心,建立可学习的高斯表达,用Splatting即抛雪球的方法进行渲染,实现高分辨率的实时渲染。1、主要思想1.引入了一种各向异性(anisotropic)的3D高斯分布作为高质量、非结构化的辐射场表达;从SFM点云出发,以每个点为中心生成3D高斯分布;各向异性指从各个方向看上去都长得不一样,即把一个点往不同相机位姿上投影的时候会投出不一样的样子。2.实现了使用GPU进行快速可微的渲染,允许各向异性的抛雪球(splatting)和快速反向传播;Splatting:计算机图形学里一个比较经典的用三维点进行渲染的方法,把三维点视作雪球往图像平面上抛,雪球在图像平面上

3D Gaussian Splatting的cuda code总结

总结视频来源:https://www.youtube.com/watch?v=1buFrKUaqwM总结视频来源作者:AI葵3D高斯分布投影到图像上,每个像素投影到该像素上的高斯数不同,因此不能用pytorch并行化处理一、前向传播前向传播计算投影出来圆圈的半径计算圆圈覆盖的像素数(把画面分成了很多个方块,记录圆与哪些方块相连)计算每个高斯的前后顺序(alpha合成)计算每个像素的颜色1.preprocessCUDAdiff-gaussian-rasterization/cuda_rasterizer/forward.cu预处理CUDApreprocessCUDA函数用于解决第一个和第二个问题

3D Gaussian Splatting 应用场景及最新进展【附10篇前沿论文和代码】

CV玩家们,知道3D高斯吗?对,就是计算机视觉最近的新宠,在几个月内席卷三维视觉和SLAM领域的3D高斯。不太了解也没关系,我今天就来和同学们一起聊聊这个话题。3DGaussianSplatting(3DGS)是用于实时辐射场渲染的3D高斯分布描述的一种光栅化技术,具有高质量和实时渲染的能力。如果说NeRF等辐射场方法彻底改变了多张照片或视频主导的场景新视角合成的算法生态,那么3D高斯则是在NeRF的基础上,做到了在保持有竞争力的训练时间的同时实现最先进的视觉质量。不仅如此,我们都知道传统的NeRF渲染过于粗暴,且随机性较大,但基于3DGaussianSplatting的渲染技术则全面展现出了